Skip to content

Commit 7eedf0c

Browse files
committed
feat: update restriction display to show 'Not restricted' for zero address
1 parent aaf197f commit 7eedf0c

File tree

4 files changed

+145
-120
lines changed

4 files changed

+145
-120
lines changed

src/modules/access/access/buildAccessDetails.tsx

Lines changed: 43 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import {
33
PublishedDatasetorder,
44
PublishedWorkerpoolorder,
55
} from 'iexec/IExecOrderbookModule';
6+
import { zeroAddress } from 'viem';
67
import SmartLinkGroup from '@/components/SmartLinkGroup';
78
import {
89
formatDateCompact,
@@ -135,45 +136,57 @@ export function buildAccessDetails({
135136
}),
136137
...('apprestrict' in order &&
137138
order.apprestrict && {
138-
'App Restrict': (
139-
<SmartLinkGroup
140-
type="app"
141-
addressOrId={order.apprestrict.toLowerCase()}
142-
label={appRestrictName}
143-
showAddressOrIdAndLabel={true}
144-
/>
145-
),
139+
'App Restrict':
140+
order.apprestrict === zeroAddress ? (
141+
<span>Not restricted</span>
142+
) : (
143+
<SmartLinkGroup
144+
type="app"
145+
addressOrId={order.apprestrict.toLowerCase()}
146+
label={appRestrictName}
147+
showAddressOrIdAndLabel={true}
148+
/>
149+
),
146150
}),
147151
...(order.requesterrestrict && {
148-
'Requester Restrict': (
149-
<SmartLinkGroup
150-
type="address"
151-
addressOrId={order.requesterrestrict.toLowerCase()}
152-
label={order.requesterrestrict.toLowerCase()}
153-
/>
154-
),
155-
}),
156-
...('datasetrestrict' in order &&
157-
order.datasetrestrict && {
158-
'Dataset Restrict': (
152+
'Requester Restrict':
153+
order.requesterrestrict === zeroAddress ? (
154+
<span>Not restricted</span>
155+
) : (
159156
<SmartLinkGroup
160157
type="address"
161-
addressOrId={order.datasetrestrict.toLowerCase()}
162-
label={datasetRestrictName}
163-
showAddressOrIdAndLabel={true}
158+
addressOrId={order.requesterrestrict.toLowerCase()}
159+
label={order.requesterrestrict.toLowerCase()}
164160
/>
165161
),
162+
}),
163+
...('datasetrestrict' in order &&
164+
order.datasetrestrict && {
165+
'Dataset Restrict':
166+
order.datasetrestrict === zeroAddress ? (
167+
<span>Not restricted</span>
168+
) : (
169+
<SmartLinkGroup
170+
type="address"
171+
addressOrId={order.datasetrestrict.toLowerCase()}
172+
label={datasetRestrictName}
173+
showAddressOrIdAndLabel={true}
174+
/>
175+
),
166176
}),
167177
...('workerpoolrestrict' in order &&
168178
order.workerpoolrestrict && {
169-
'Workerpool Restrict': (
170-
<SmartLinkGroup
171-
type="workerpool"
172-
addressOrId={order.workerpoolrestrict.toLowerCase()}
173-
label={workerpoolRestrictDescription}
174-
showAddressOrIdAndLabel={true}
175-
/>
176-
),
179+
'Workerpool Restrict':
180+
order.workerpoolrestrict === zeroAddress ? (
181+
<span>Not restricted</span>
182+
) : (
183+
<SmartLinkGroup
184+
type="workerpool"
185+
addressOrId={order.workerpoolrestrict.toLowerCase()}
186+
label={workerpoolRestrictDescription}
187+
showAddressOrIdAndLabel={true}
188+
/>
189+
),
177190
}),
178191
...(access.signer && {
179192
Signer: (

src/modules/access/appColumns.tsx

Lines changed: 34 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { ColumnDef } from '@tanstack/react-table';
22
import { PublishedApporder } from 'iexec/IExecOrderbookModule';
3+
import { zeroAddress } from 'viem';
34
import CopyButton from '@/components/CopyButton';
45
import useUserStore from '@/stores/useUser.store';
56
import { getTokenSymbol } from '@/utils/chain.utils';
@@ -20,47 +21,50 @@ export const columns: ColumnDef<PublishedApporder>[] = [
2021
{
2122
accessorKey: 'order.datasetrestrict',
2223
header: 'Dataset Restriction',
23-
cell: ({ row }) => (
24-
<CopyButton
25-
displayText={truncateAddress(
26-
row.original.order.datasetrestrict.toLowerCase(),
27-
{
24+
cell: ({ row }) => {
25+
const value = row.original.order.datasetrestrict.toLowerCase();
26+
if (value === zeroAddress) return <span>Not restricted</span>;
27+
return (
28+
<CopyButton
29+
displayText={truncateAddress(value, {
2830
startLen: 8,
29-
}
30-
)}
31-
textToCopy={row.original.order.datasetrestrict.toLowerCase()}
32-
/>
33-
),
31+
})}
32+
textToCopy={value}
33+
/>
34+
);
35+
},
3436
},
3537
{
3638
accessorKey: 'order.requesterrestrict',
3739
header: 'Requester Restriction',
38-
cell: ({ row }) => (
39-
<CopyButton
40-
displayText={truncateAddress(
41-
row.original.order.requesterrestrict.toLowerCase(),
42-
{
40+
cell: ({ row }) => {
41+
const value = row.original.order.requesterrestrict.toLowerCase();
42+
if (value === zeroAddress) return <span>Not restricted</span>;
43+
return (
44+
<CopyButton
45+
displayText={truncateAddress(value, {
4346
startLen: 8,
44-
}
45-
)}
46-
textToCopy={row.original.order.requesterrestrict.toLowerCase()}
47-
/>
48-
),
47+
})}
48+
textToCopy={value}
49+
/>
50+
);
51+
},
4952
},
5053
{
5154
accessorKey: 'order.workerpoolrestrict',
5255
header: 'Workerpool Restriction',
53-
cell: ({ row }) => (
54-
<CopyButton
55-
displayText={truncateAddress(
56-
row.original.order.workerpoolrestrict.toLowerCase(),
57-
{
56+
cell: ({ row }) => {
57+
const value = row.original.order.workerpoolrestrict.toLowerCase();
58+
if (value === zeroAddress) return <span>Not restricted</span>;
59+
return (
60+
<CopyButton
61+
displayText={truncateAddress(value, {
5862
startLen: 8,
59-
}
60-
)}
61-
textToCopy={row.original.order.workerpoolrestrict.toLowerCase()}
62-
/>
63-
),
63+
})}
64+
textToCopy={value}
65+
/>
66+
);
67+
},
6468
},
6569
{
6670
accessorKey: 'order.volume',

src/modules/access/datasetColumns.tsx

Lines changed: 34 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { ColumnDef } from '@tanstack/react-table';
22
import { PublishedDatasetorder } from 'iexec/IExecOrderbookModule';
3+
import { zeroAddress } from 'viem';
34
import CopyButton from '@/components/CopyButton';
45
import useUserStore from '@/stores/useUser.store';
56
import { getTokenSymbol } from '@/utils/chain.utils';
@@ -20,47 +21,50 @@ export const columns: ColumnDef<PublishedDatasetorder>[] = [
2021
{
2122
accessorKey: 'order.apprestrict',
2223
header: 'App Restriction',
23-
cell: ({ row }) => (
24-
<CopyButton
25-
displayText={truncateAddress(
26-
row.original.order.apprestrict.toLowerCase(),
27-
{
24+
cell: ({ row }) => {
25+
const value = row.original.order.apprestrict.toLowerCase();
26+
if (value === zeroAddress) return <span>Not restricted</span>;
27+
return (
28+
<CopyButton
29+
displayText={truncateAddress(value, {
2830
startLen: 8,
29-
}
30-
)}
31-
textToCopy={row.original.order.apprestrict.toLowerCase()}
32-
/>
33-
),
31+
})}
32+
textToCopy={value}
33+
/>
34+
);
35+
},
3436
},
3537
{
3638
accessorKey: 'order.requesterrestrict',
3739
header: 'Requester Restriction',
38-
cell: ({ row }) => (
39-
<CopyButton
40-
displayText={truncateAddress(
41-
row.original.order.requesterrestrict.toLowerCase(),
42-
{
40+
cell: ({ row }) => {
41+
const value = row.original.order.requesterrestrict.toLowerCase();
42+
if (value === zeroAddress) return <span>Not restricted</span>;
43+
return (
44+
<CopyButton
45+
displayText={truncateAddress(value, {
4346
startLen: 8,
44-
}
45-
)}
46-
textToCopy={row.original.order.requesterrestrict.toLowerCase()}
47-
/>
48-
),
47+
})}
48+
textToCopy={value}
49+
/>
50+
);
51+
},
4952
},
5053
{
5154
accessorKey: 'order.workerpoolrestrict',
5255
header: 'Workerpool Restriction',
53-
cell: ({ row }) => (
54-
<CopyButton
55-
displayText={truncateAddress(
56-
row.original.order.workerpoolrestrict.toLowerCase(),
57-
{
56+
cell: ({ row }) => {
57+
const value = row.original.order.workerpoolrestrict.toLowerCase();
58+
if (value === zeroAddress) return <span>Not restricted</span>;
59+
return (
60+
<CopyButton
61+
displayText={truncateAddress(value, {
5862
startLen: 8,
59-
}
60-
)}
61-
textToCopy={row.original.order.workerpoolrestrict.toLowerCase()}
62-
/>
63-
),
63+
})}
64+
textToCopy={value}
65+
/>
66+
);
67+
},
6468
},
6569
{
6670
accessorKey: 'order.volume',

src/modules/access/workerpoolColumns.tsx

Lines changed: 34 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { ColumnDef } from '@tanstack/react-table';
22
import { PublishedWorkerpoolorder } from 'iexec/IExecOrderbookModule';
3+
import { zeroAddress } from 'viem';
34
import CopyButton from '@/components/CopyButton';
45
import useUserStore from '@/stores/useUser.store';
56
import { getTokenSymbol } from '@/utils/chain.utils';
@@ -20,47 +21,50 @@ export const columns: ColumnDef<PublishedWorkerpoolorder>[] = [
2021
{
2122
accessorKey: 'order.apprestrict',
2223
header: 'App Restriction',
23-
cell: ({ row }) => (
24-
<CopyButton
25-
displayText={truncateAddress(
26-
row.original.order.apprestrict.toLowerCase(),
27-
{
24+
cell: ({ row }) => {
25+
const value = row.original.order.apprestrict.toLowerCase();
26+
if (value === zeroAddress) return <span>Not restricted</span>;
27+
return (
28+
<CopyButton
29+
displayText={truncateAddress(value, {
2830
startLen: 8,
29-
}
30-
)}
31-
textToCopy={row.original.order.apprestrict.toLowerCase()}
32-
/>
33-
),
31+
})}
32+
textToCopy={value}
33+
/>
34+
);
35+
},
3436
},
3537
{
3638
accessorKey: 'order.requesterrestrict',
3739
header: 'Requester Restriction',
38-
cell: ({ row }) => (
39-
<CopyButton
40-
displayText={truncateAddress(
41-
row.original.order.requesterrestrict.toLowerCase(),
42-
{
40+
cell: ({ row }) => {
41+
const value = row.original.order.requesterrestrict.toLowerCase();
42+
if (value === zeroAddress) return <span>Not restricted</span>;
43+
return (
44+
<CopyButton
45+
displayText={truncateAddress(value, {
4346
startLen: 8,
44-
}
45-
)}
46-
textToCopy={row.original.order.requesterrestrict.toLowerCase()}
47-
/>
48-
),
47+
})}
48+
textToCopy={value}
49+
/>
50+
);
51+
},
4952
},
5053
{
5154
accessorKey: 'order.datasetrestrict',
5255
header: 'Dataset Restriction',
53-
cell: ({ row }) => (
54-
<CopyButton
55-
displayText={truncateAddress(
56-
row.original.order.datasetrestrict.toLowerCase(),
57-
{
56+
cell: ({ row }) => {
57+
const value = row.original.order.datasetrestrict.toLowerCase();
58+
if (value === zeroAddress) return <span>Not restricted</span>;
59+
return (
60+
<CopyButton
61+
displayText={truncateAddress(value, {
5862
startLen: 8,
59-
}
60-
)}
61-
textToCopy={row.original.order.datasetrestrict.toLowerCase()}
62-
/>
63-
),
63+
})}
64+
textToCopy={value}
65+
/>
66+
);
67+
},
6468
},
6569
{
6670
accessorKey: 'order.volume',

0 commit comments

Comments
 (0)