From 90d94b6f53002364be19e4a9641a3211bed79455 Mon Sep 17 00:00:00 2001 From: Zouheir Layine Date: Mon, 2 Mar 2026 11:44:27 +0000 Subject: [PATCH 1/2] fix token owners --- resources/js/components/pages/Tokens.vue | 34 ++++++++++++++++--- .../token/DetailsTokenSlideover.vue | 10 +++--- .../slideovers/token/MintTokenSlideover.vue | 4 +-- resources/js/factory/token.ts | 7 ++-- 4 files changed, 40 insertions(+), 15 deletions(-) diff --git a/resources/js/components/pages/Tokens.vue b/resources/js/components/pages/Tokens.vue index 4a0dca81..878db48f 100644 --- a/resources/js/components/pages/Tokens.vue +++ b/resources/js/components/pages/Tokens.vue @@ -98,6 +98,16 @@ {{ sortOrder === 'asc' ? '↑' : '↓' }} + + Supply + + {{ sortOrder === 'asc' ? '↑' : '↓' }} + + - {{ addressShortHex(token.owner) }} +
+ + {{ addressShortHex(owner) }} + +
{{ token.attributeCount }} + + {{ token.supply == '-1' ? '0' : token.supply }} + @@ -204,8 +223,9 @@ const tokens: Ref<{ collection: { collectionId: string; }; - owner: string; + owners: string[]; attributeCount: number; + supply?: string; isFrozen: boolean; nonFungible: boolean; }[]; @@ -300,9 +320,11 @@ const sortedTokens = computed(() => { : sortKey.value === 'collectionId' ? a.collection.collectionId : sortKey.value === 'owner' - ? a.owner + ? a.owners[0] ?? '' : sortKey.value === 'attributes' ? a.attributeCount + : sortKey.value === 'supply' + ? parseInt(a.supply ?? '-1') : a.isFrozen; const bValue = sortKey.value === 'name' @@ -312,9 +334,11 @@ const sortedTokens = computed(() => { : sortKey.value === 'collectionId' ? b.collection.collectionId : sortKey.value === 'owner' - ? b.owner + ? b.owners[0] ?? '' : sortKey.value === 'attributes' ? b.attributeCount + : sortKey.value === 'supply' + ? parseInt(b.supply ?? '-1') : b.isFrozen; if (sortOrder.value === 'asc') { diff --git a/resources/js/components/slideovers/token/DetailsTokenSlideover.vue b/resources/js/components/slideovers/token/DetailsTokenSlideover.vue index 1ca947f2..6dc1c596 100644 --- a/resources/js/components/slideovers/token/DetailsTokenSlideover.vue +++ b/resources/js/components/slideovers/token/DetailsTokenSlideover.vue @@ -23,9 +23,11 @@ -
-
Owner
-
+
+
+ {{ item.owners.length === 1 ? 'Owner' : 'Owners' }} +
+
@@ -134,7 +136,7 @@ defineProps<{ item?: { tokenId: string; collectionId: string; - owner: string; + owners: string[]; isCurrency: boolean; supply: string; capSupply: string; diff --git a/resources/js/components/slideovers/token/MintTokenSlideover.vue b/resources/js/components/slideovers/token/MintTokenSlideover.vue index bd0d7460..17c04c34 100644 --- a/resources/js/components/slideovers/token/MintTokenSlideover.vue +++ b/resources/js/components/slideovers/token/MintTokenSlideover.vue @@ -110,7 +110,7 @@ const props = withDefaults( item?: { collectionId: number; tokenId: string; - owner: string; + owners: string[]; }; }>(), { @@ -120,7 +120,7 @@ const props = withDefaults( const isLoading = ref(false); const collectionId = ref(props.item?.collectionId); -const recipient = ref(publicKeyToAddress(props.item?.owner!)); +const recipient = ref(publicKeyToAddress(props.item?.owners?.[0] ?? '')); const amount = ref(); const idempotencyKey = ref(''); const skipValidation = ref(false); diff --git a/resources/js/factory/token.ts b/resources/js/factory/token.ts index 599b01ff..6a80133b 100644 --- a/resources/js/factory/token.ts +++ b/resources/js/factory/token.ts @@ -9,10 +9,9 @@ export class DTOTokenFactory { percentage: token.royalty?.percentage, beneficiary: publicKeyToAddress(token.royalty?.beneficiary?.account?.publicKey), }, - owner: - token.accounts.totalCount === 1 - ? publicKeyToAddress(token.accounts.edges[0].node.wallet.account.publicKey) - : null, + owners: token.accounts.edges.map((edge: any) => + publicKeyToAddress(edge.node.wallet.account.publicKey) + ), collectionId: token.collection.collectionId, freezeType: FreezeType.TOKEN, }; From a21cbdd04b0773cafa475ccc57f7f0a1f66c58e2 Mon Sep 17 00:00:00 2001 From: Zouheir Layine Date: Mon, 2 Mar 2026 11:46:37 +0000 Subject: [PATCH 2/2] fix --- resources/js/factory/token.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/resources/js/factory/token.ts b/resources/js/factory/token.ts index 6a80133b..e3ad4b33 100644 --- a/resources/js/factory/token.ts +++ b/resources/js/factory/token.ts @@ -9,9 +9,7 @@ export class DTOTokenFactory { percentage: token.royalty?.percentage, beneficiary: publicKeyToAddress(token.royalty?.beneficiary?.account?.publicKey), }, - owners: token.accounts.edges.map((edge: any) => - publicKeyToAddress(edge.node.wallet.account.publicKey) - ), + owners: token.accounts.edges.map((edge: any) => publicKeyToAddress(edge.node.wallet.account.publicKey)), collectionId: token.collection.collectionId, freezeType: FreezeType.TOKEN, };