diff --git a/indexer/src/kadena-server/config/graphql-types.ts b/indexer/src/kadena-server/config/graphql-types.ts index c6e95546..798bca21 100644 --- a/indexer/src/kadena-server/config/graphql-types.ts +++ b/indexer/src/kadena-server/config/graphql-types.ts @@ -1434,6 +1434,8 @@ export type Transfer = Node & { receiverAccount: Scalars['String']['output']; requestKey: Scalars['String']['output']; senderAccount: Scalars['String']['output']; + /** The token id if this is a poly-fungible transfer. */ + tokenId?: Maybe; /** The transaction that initiated this transfer. */ transaction?: Maybe; }; @@ -3701,6 +3703,7 @@ export type TransferResolvers< receiverAccount?: Resolver; requestKey?: Resolver; senderAccount?: Resolver; + tokenId?: Resolver, ParentType, ContextType>; transaction?: Resolver, ParentType, ContextType>; __isTypeOf?: IsTypeOfResolverFn; }; diff --git a/indexer/src/kadena-server/config/schema.graphql b/indexer/src/kadena-server/config/schema.graphql index c377f9f9..83063471 100644 --- a/indexer/src/kadena-server/config/schema.graphql +++ b/indexer/src/kadena-server/config/schema.graphql @@ -1056,6 +1056,11 @@ type Transfer implements Node { receiverAccount: String! requestKey: String! senderAccount: String! + + """ + The token id if this is a poly-fungible transfer. + """ + tokenId: String """ The transaction that initiated this transfer. """ diff --git a/indexer/src/kadena-server/repository/infra/repository/transfer-db-repository.ts b/indexer/src/kadena-server/repository/infra/repository/transfer-db-repository.ts index 5e5dbabc..55baa07b 100644 --- a/indexer/src/kadena-server/repository/infra/repository/transfer-db-repository.ts +++ b/indexer/src/kadena-server/repository/infra/repository/transfer-db-repository.ts @@ -85,8 +85,8 @@ export default class TransferDbRepository implements TransferRepository { if (hasTokenId) { queryParams.push('marmalade-v2.ledger'); - queryParams.push('marmalade.ledger'); const op = operator(queryParams.length); + queryParams.push('marmalade.ledger'); conditions += `\n${op} transfers.modulename IN ($${queryParams.length - 1}, $${queryParams.length})`; } @@ -157,7 +157,8 @@ export default class TransferDbRepository implements TransferRepository { transfers.modulehash as "moduleHash", transfers.requestkey as "requestKey", transfers."orderIndex" as "orderIndex", - td.pactid as "pactId" + td.pactid as "pactId", + transfers."tokenId" as "tokenId" from filtered_block b join "Transactions" t on b.id = t."blockId" join "Transfers" transfers on transfers."transactionId" = t.id @@ -192,7 +193,8 @@ export default class TransferDbRepository implements TransferRepository { transfers.modulehash as "moduleHash", transfers.requestkey as "requestKey", transfers."orderIndex" as "orderIndex", - td.pactid as "pactId" + td.pactid as "pactId", + transfers."tokenId" as "tokenId" from filtered_transaction t join "Blocks" b on b.id = t."blockId" join "Transfers" transfers on transfers."transactionId" = t.id @@ -216,7 +218,8 @@ export default class TransferDbRepository implements TransferRepository { transfers.modulehash as "moduleHash", transfers.requestkey as "requestKey", transfers."orderIndex" as "orderIndex", - td.pactid as "pactId" + td.pactid as "pactId", + transfers."tokenId" as "tokenId" from "Transfers" transfers join "Transactions" t on t.id = transfers."transactionId" join "Blocks" b on b."id" = t."blockId" @@ -430,7 +433,8 @@ export default class TransferDbRepository implements TransferRepository { transfers.modulehash as "moduleHash", transfers.requestkey as "requestKey", transfers."orderIndex" as "orderIndex", - td.pactid as "pactId" + td.pactid as "pactId", + transfers."tokenId" as "tokenId" from "Blocks" b join "Transactions" transactions on b.id = transactions."blockId" join "Transfers" transfers on transfers."transactionId" = transactions.id diff --git a/indexer/src/kadena-server/repository/infra/schema-validator/transfer-schema-validator.ts b/indexer/src/kadena-server/repository/infra/schema-validator/transfer-schema-validator.ts index ba6bdb98..3ac08ba9 100644 --- a/indexer/src/kadena-server/repository/infra/schema-validator/transfer-schema-validator.ts +++ b/indexer/src/kadena-server/repository/infra/schema-validator/transfer-schema-validator.ts @@ -36,6 +36,7 @@ const schema = zod.object({ senderAccount: zod.string(), requestKey: zod.string(), pactId: zod.string().nullable(), + tokenId: zod.string().nullable().optional(), }); /** @@ -94,6 +95,7 @@ function validate(row: any): TransferOutput { senderAccount: res.senderAccount, transferId: res.id.toString(), pactId: res.pactId, + tokenId: res.tokenId, }; } diff --git a/indexer/tests/integration/builders/nft-transfers.builder.ts b/indexer/tests/integration/builders/nft-transfers.builder.ts new file mode 100644 index 00000000..4670c7a8 --- /dev/null +++ b/indexer/tests/integration/builders/nft-transfers.builder.ts @@ -0,0 +1,50 @@ +import { gql } from 'graphql-request'; + +export const getNftTransfersQuery = (params: any): string => { + if (Object.keys(params).length === 0) { + throw new Error('No parameters provided to getNftTransfersQuery.'); + } + + const query = Object.entries(params) + .map(([key, value]) => `${key}: ${typeof value === 'string' ? `"${value}"` : value}`) + .join(', '); + + const queryGql = gql` + query { + transfers(${query}) { + pageInfo { + endCursor + hasNextPage + hasPreviousPage + startCursor + } + edges { + cursor + node { + amount + block { + chainId + } + creationTime + crossChainTransfer { + id + } + id + tokenId + moduleHash + moduleName + orderIndex + receiverAccount + requestKey + senderAccount + transaction { + id + } + } + } + } + } + `; + + return queryGql; +}; diff --git a/indexer/tests/integration/fixtures/transfers/transfers.fixture.011.ts b/indexer/tests/integration/fixtures/transfers/transfers.fixture.011.ts index 9adea645..d49dc32d 100644 --- a/indexer/tests/integration/fixtures/transfers/transfers.fixture.011.ts +++ b/indexer/tests/integration/fixtures/transfers/transfers.fixture.011.ts @@ -1,16 +1,15 @@ export const transfersFixture011 = { data: { transfers: { - totalCount: 8, pageInfo: { - endCursor: 'MTczOTA0ODMyNzozNjg1OTY2', - hasNextPage: false, + endCursor: 'MTczNzY1MDg3OTozODM2NDI5ODk=', + hasNextPage: true, hasPreviousPage: true, - startCursor: 'MTczOTA0ODQ0MjozNjg1OTYw', + startCursor: 'MTczOTA0ODQ0MjozODM2Mzg1NDg=', }, edges: [ { - cursor: 'MTczOTA0ODQ0MjozNjg1OTYw', + cursor: 'MTczOTA0ODQ0MjozODM2Mzg1NDg=', node: { amount: '1', block: { @@ -18,10 +17,11 @@ export const transfersFixture011 = { }, creationTime: '2025-02-08T21:00:42.000Z', crossChainTransfer: null, - id: 'VHJhbnNmZXI6WyI0SXQ2cWlkNHpmNFhKWkh3cjlWQzVXbkNFQ0wtY3pUc2V3dGl1U05qTVZvIiwiOCIsIjEiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiTkkxM3FXcGpHM0RIR09kUnhtOC1Ha3Y4d3hSNHFzel9MSUVPNkxOZE9ydyJd', + id: 'VHJhbnNmZXI6WyI0SXQ2cWlkNHpmNFhKWkh3cjlWQzVXbkNFQ0wtY3pUc2V3dGl1U05qTVZvIiwiOCIsIjQiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiTkkxM3FXcGpHM0RIR09kUnhtOC1Ha3Y4d3hSNHFzel9MSUVPNkxOZE9ydyJd', moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:6cXiLT0IbWadop64dsmeyixp5e6NjHwBBJtqgkp2LTQ', moduleName: 'marmalade-v2.ledger', - orderIndex: 1, + orderIndex: 4, receiverAccount: 'k:52ddeef0749b7310162c4d1d688e7c6f1cfffcfb446431e8d512357914404643', requestKey: 'NI13qWpjG3DHGOdRxm8-Gkv8wxR4qsz_LIEO6LNdOrw', senderAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', @@ -31,7 +31,7 @@ export const transfersFixture011 = { }, }, { - cursor: 'MTczOTA0ODQxNjozNjg1OTU3', + cursor: 'MTczOTA0ODQxNjozODM2Mzg1NDc=', node: { amount: '1', block: { @@ -39,10 +39,11 @@ export const transfersFixture011 = { }, creationTime: '2025-02-08T21:00:16.000Z', crossChainTransfer: null, - id: 'VHJhbnNmZXI6WyI0SXQ2cWlkNHpmNFhKWkh3cjlWQzVXbkNFQ0wtY3pUc2V3dGl1U05qTVZvIiwiOCIsIjEiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiQjIxaWdSQnAxZDRzTWhyODduQ3lFN0xBN19YNVF1cTNCa2ZhVkxDbC1UWSJd', + id: 'VHJhbnNmZXI6WyI0SXQ2cWlkNHpmNFhKWkh3cjlWQzVXbkNFQ0wtY3pUc2V3dGl1U05qTVZvIiwiOCIsIjQiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiQjIxaWdSQnAxZDRzTWhyODduQ3lFN0xBN19YNVF1cTNCa2ZhVkxDbC1UWSJd', moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:ObVOm3d6lfrmS5EYbI6DyRpsX3soKAzIkkUpes4jwU4', moduleName: 'marmalade-v2.ledger', - orderIndex: 1, + orderIndex: 4, receiverAccount: 'k:52ddeef0749b7310162c4d1d688e7c6f1cfffcfb446431e8d512357914404643', requestKey: 'B21igRBp1d4sMhr87nCyE7LA7_X5Quq3BkfaVLCl-TY', senderAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', @@ -52,7 +53,7 @@ export const transfersFixture011 = { }, }, { - cursor: 'MTczOTA0ODM1MTozNjg1OTY5', + cursor: 'MTczOTA0ODM1MTozODM2Mzg1NTA=', node: { amount: '1', block: { @@ -60,10 +61,11 @@ export const transfersFixture011 = { }, creationTime: '2025-02-08T20:59:11.000Z', crossChainTransfer: null, - id: 'VHJhbnNmZXI6WyJVYmw0anBna3R6Wkk1MjkxaHNrelVGMHVLZUMyQkt6SVhDRGtXQjVpczFVIiwiOCIsIjEiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiRTlPekVfVmhmaUJtR19QLW9fcGoyQUx2X3oyZmx1ZUxpZTdsM0N5RGQ0SSJd', + id: 'VHJhbnNmZXI6WyJVYmw0anBna3R6Wkk1MjkxaHNrelVGMHVLZUMyQkt6SVhDRGtXQjVpczFVIiwiOCIsIjQiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiRTlPekVfVmhmaUJtR19QLW9fcGoyQUx2X3oyZmx1ZUxpZTdsM0N5RGQ0SSJd', moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:lLC9ryHrZuR3jbyr8u7XE2GiY7g6vBSM0M8ZdHabrK4', moduleName: 'marmalade-v2.ledger', - orderIndex: 1, + orderIndex: 4, receiverAccount: 'k:52ddeef0749b7310162c4d1d688e7c6f1cfffcfb446431e8d512357914404643', requestKey: 'E9OzE_VhfiBmG_P-o_pj2ALv_z2flueLie7l3CyDd4I', senderAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', @@ -73,7 +75,7 @@ export const transfersFixture011 = { }, }, { - cursor: 'MTczOTA0ODMyNzozNjg1OTY2', + cursor: 'MTczOTA0ODMyNzozODM2Mzg1NDk=', node: { amount: '1', block: { @@ -81,10 +83,11 @@ export const transfersFixture011 = { }, creationTime: '2025-02-08T20:58:47.000Z', crossChainTransfer: null, - id: 'VHJhbnNmZXI6WyJVYmw0anBna3R6Wkk1MjkxaHNrelVGMHVLZUMyQkt6SVhDRGtXQjVpczFVIiwiOCIsIjEiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiSl9zODVQaWJYTHFCUHdTVlBCMEZTd2RkTU5Bb1lUOHRNWllnekVaVnQwWSJd', + id: 'VHJhbnNmZXI6WyJVYmw0anBna3R6Wkk1MjkxaHNrelVGMHVLZUMyQkt6SVhDRGtXQjVpczFVIiwiOCIsIjQiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiSl9zODVQaWJYTHFCUHdTVlBCMEZTd2RkTU5Bb1lUOHRNWllnekVaVnQwWSJd', moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:bzj6v-ANl9pWKm5Rr-6bs8haVPJYyLUEx0GRIyNurQw', moduleName: 'marmalade-v2.ledger', - orderIndex: 1, + orderIndex: 4, receiverAccount: 'k:52ddeef0749b7310162c4d1d688e7c6f1cfffcfb446431e8d512357914404643', requestKey: 'J_s85PibXLqBPwSVPB0FSwddMNAoYT8tMZYgzEZVt0Y', senderAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', @@ -93,6 +96,468 @@ export const transfersFixture011 = { }, }, }, + { + cursor: 'MTczNzY1MDkwNjozODM2NDMwMDA=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:26.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiOCIsIjMiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiVE9LV0NtSzFScHJhOFg4NXM1T2x1Tk5meUpYLW0tSHprblBfV1FZN2o0USJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:rv9-K047gX0D9LkcOpMMQ2_imxF94VSOjtKgpSrFYOc', + moduleName: 'marmalade-v2.ledger', + orderIndex: 3, + receiverAccount: '', + requestKey: 'TOKWCmK1Rpra8X85s5OluNNfyJX-m-HzknP_WQY7j4Q', + senderAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiVE9LV0NtSzFScHJhOFg4NXM1T2x1Tk5meUpYLW0tSHprblBfV1FZN2o0USJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDkwNjozODM2NDI5OTg=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:26.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwianpCOWdDSlVsWW52aDgxc013QzhfTlRVZDRTUlhjNmlva21uUEpOQktmTSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:OXvjmxxZ0NzL7qCSV7i66Ch5OumFxLl_K139DGMgEvw', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'jzB9gCJUlYnvh81sMwC8_NTUd4SRXc6iokmnPJNBKfM', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwianpCOWdDSlVsWW52aDgxc013QzhfTlRVZDRTUlhjNmlva21uUEpOQktmTSJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDkwNTozODM2NDMwMDE=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:25.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiWWwzRGQ1bUxrTUlvZWx6amVUN3MyazIxV2lTSlpHVFNlbkxuN1ZJRE43dyJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:Ka1ZeqTeSrZwpv_M14PQV9Sw_JTsv4laSMeSPfyttAM', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'Yl3Dd5mLkMIoelzjeT7s2k21WiSJZGTSenLn7VIDN7w', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiWWwzRGQ1bUxrTUlvZWx6amVUN3MyazIxV2lTSlpHVFNlbkxuN1ZJRE43dyJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDkwNTozODM2NDI5OTc=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:25.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiazJMeVhzTUFXLTVBOTFCeHNGSmtEbUZZNUtaTTFtOHhDMW1oN1ZQam1RQSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:Hdl48tbEj-pxBvwkpChThIxIbYT2i6xROGU-zeRWG1A', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'k2LyXsMAW-5A91BxsFJkDmFY5KZM1m8xC1mh7VPjmQA', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiazJMeVhzTUFXLTVBOTFCeHNGSmtEbUZZNUtaTTFtOHhDMW1oN1ZQam1RQSJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDkwNTozODM2NDI5OTM=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:25.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiaWZESnREODhNSW5CVHduTnRYLTc2NU81OVVZZ1FJMHlERUEyYmxqMEFBcyJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:8iPkNIqaSZIu4AdWdEpypMzRgo0GbTqYS31HPL9OM7Q', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'ifDJtD88MInBTwnNtX-765O59UYgQI0yDEA2blj0AAs', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiaWZESnREODhNSW5CVHduTnRYLTc2NU81OVVZZ1FJMHlERUEyYmxqMEFBcyJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDkwNTozODM2NDI5OTE=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:25.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJPQ25CLUJBenNJUDdxRjA1NEpTbF9MMWdiTktEVFJET09ubzhJNExqT3lJIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwia0ZpX09kQW84cWRlUm1MWFgtLVdoN211U0RjM3FrWmlPYUdsQ0d4ZjFKQSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:bzj6v-ANl9pWKm5Rr-6bs8haVPJYyLUEx0GRIyNurQw', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'kFi_OdAo8qdeRmLXX--Wh7muSDc3qkZiOaGlCGxf1JA', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJPQ25CLUJBenNJUDdxRjA1NEpTbF9MMWdiTktEVFJET09ubzhJNExqT3lJIiwia0ZpX09kQW84cWRlUm1MWFgtLVdoN211U0RjM3FrWmlPYUdsQ0d4ZjFKQSJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg5NzozODM2NDMwMDc=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:17.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJuWmF1anF6MWplaWYySU5IaHBfbGVmN3pieXBKN1lYNDhYU2RQY3VnVFhNIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiVXRuODRocC1DM01VcUFkWlA2MjZoSGN0bndaZUp5R2Y5TnRfY0ZpazNjMCJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:OOc3mPdcYYTaHZbawTEAReXlfeBYHFvLSiu1F6-rGxs', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'Utn84hp-C3MUqAdZP626hHctnwZeJyGf9Nt_cFik3c0', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJuWmF1anF6MWplaWYySU5IaHBfbGVmN3pieXBKN1lYNDhYU2RQY3VnVFhNIiwiVXRuODRocC1DM01VcUFkWlA2MjZoSGN0bndaZUp5R2Y5TnRfY0ZpazNjMCJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg5NzozODM2NDI5OTU=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:17.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiZGQ1bWZaMS11eVhKczRJVnJaekI5NWZoV3Myd2Njb0RGdktYYmlITVhuSSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:aebHhn61O_lLy6gdLEyyjTMNY5bh_Meii0V_W9kRJ5A', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'dd5mfZ1-uyXJs4IVrZzB95fhWs2wccoDFvKXbiHMXnI', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiZGQ1bWZaMS11eVhKczRJVnJaekI5NWZoV3Myd2Njb0RGdktYYmlITVhuSSJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg5NzozODM2NDI5OTQ=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:17.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwibE1rNl9pQ0xTcGlobTBMdlczeWVnYmVhZWt1ZFZodG83X24yS3lIVElLWSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:U__CQT1fbJVKQDOtSgsHfdddHt76YB-kJ4Oh3yETpEk', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'lMk6_iCLSpihm0LvW3yegbeaekudVhto7_n2KyHTIKY', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwibE1rNl9pQ0xTcGlobTBMdlczeWVnYmVhZWt1ZFZodG83X24yS3lIVElLWSJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg5NzozODM2NDI5ODc=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:17.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJPQ25CLUJBenNJUDdxRjA1NEpTbF9MMWdiTktEVFJET09ubzhJNExqT3lJIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiQlJKcXY1X3RmdnRNV09sNXNoNGZQV2FaQm43UUwwX1hXMDNyZDhmN3I5dyJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:0Pf7Ig6ipF3MiHooIfa9mm58dN5o751hUd5bvCQisJE', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'BRJqv5_tfvtMWOl5sh4fPWaZBn7QL0_XW03rd8f7r9w', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJPQ25CLUJBenNJUDdxRjA1NEpTbF9MMWdiTktEVFJET09ubzhJNExqT3lJIiwiQlJKcXY1X3RmdnRNV09sNXNoNGZQV2FaQm43UUwwX1hXMDNyZDhmN3I5dyJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg5NjozODM2NDI5OTY=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:16.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiZmd1NTREZG1NMXloeXptRUNxMjlQamlDSmFqeUxmSUlhZllQbXhzbGN5TSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:lLC9ryHrZuR3jbyr8u7XE2GiY7g6vBSM0M8ZdHabrK4', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'fgu54DdmM1yhyzmECq29PjiCJajyLfIIafYPmxslcyM', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiZmd1NTREZG1NMXloeXptRUNxMjlQamlDSmFqeUxmSUlhZllQbXhzbGN5TSJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg4ODozODM2NDMwMDQ=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:08.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJuWmF1anF6MWplaWYySU5IaHBfbGVmN3pieXBKN1lYNDhYU2RQY3VnVFhNIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiRE9qTy10azhrenlXaEU0SHRqRVV0dmtqZVpKSnc4Rk8xLXRBczZ1SkFqRSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:ObVOm3d6lfrmS5EYbI6DyRpsX3soKAzIkkUpes4jwU4', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'DOjO-tk8kzyWhE4HtjEUtvkjeZJJw8FO1-tAs6uJAjE', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJuWmF1anF6MWplaWYySU5IaHBfbGVmN3pieXBKN1lYNDhYU2RQY3VnVFhNIiwiRE9qTy10azhrenlXaEU0SHRqRVV0dmtqZVpKSnc4Rk8xLXRBczZ1SkFqRSJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg4ODozODM2NDMwMDI=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:08.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJuWmF1anF6MWplaWYySU5IaHBfbGVmN3pieXBKN1lYNDhYU2RQY3VnVFhNIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiT3JTeGVWM3BTd0xEd1hxZnlFYjhOeVR0OVZzcWFMSlF2TW9ScUR5QXotSSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:Gj6lkQ_4A-1NhphVIYolp4mimTvPmodaF4ikbNTUwmw', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'OrSxeV3pSwLDwXqfyEb8NyTt9VsqaLJQvMoRqDyAz-I', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJuWmF1anF6MWplaWYySU5IaHBfbGVmN3pieXBKN1lYNDhYU2RQY3VnVFhNIiwiT3JTeGVWM3BTd0xEd1hxZnlFYjhOeVR0OVZzcWFMSlF2TW9ScUR5QXotSSJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg4ODozODM2NDI5OTA=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:08.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJPQ25CLUJBenNJUDdxRjA1NEpTbF9MMWdiTktEVFJET09ubzhJNExqT3lJIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiQVZwOUhjZGczZHJSekRWek8zY2VNMEJ2U2dVMnZkVTVaWDZRZTJmZzhfZyJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:OW_tvT1d9QCsOvMt80ImL3m3qDAuOI_B35pEozX5WHI', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'AVp9Hcdg3drRzDVzO3ceM0BvSgU2vdU5ZX6Qe2fg8_g', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJPQ25CLUJBenNJUDdxRjA1NEpTbF9MMWdiTktEVFJET09ubzhJNExqT3lJIiwiQVZwOUhjZGczZHJSekRWek8zY2VNMEJ2U2dVMnZkVTVaWDZRZTJmZzhfZyJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg4NzozODM2NDI5OTk=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:07.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiQ3pyaDBqbHJMRlRpTVJWR19tUHJtVUNaZW0wU281ZXcxQlJPWjFINFJESSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:lOl6Xsohac1xZfmpsA2UJ0yicQSNX5hI9OP3FSS45fo', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'Czrh0jlrLFTiMRVG_mPrmUCZem0So5ew1BROZ1H4RDI', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJfWUlJQm9kWGhleThZVnlwYktaQ1dObHlfRVpwZHZUOVhMY2tBNFpNODVRIiwiQ3pyaDBqbHJMRlRpTVJWR19tUHJtVUNaZW0wU281ZXcxQlJPWjFINFJESSJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg4NzozODM2NDI5OTI=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:07.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJPQ25CLUJBenNJUDdxRjA1NEpTbF9MMWdiTktEVFJET09ubzhJNExqT3lJIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiUU4xTW9lV3Ryckk5WV9lNC1IMkdYT0R6dFhkaWREMkp6Nnc0N3hBWXBmUSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:eKRHOvknAiRjemZMEQkMWjdPloZbvU68Uk4zM_vuVgM', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'QN1MoeWtrrI9Y_e4-H2GXODztXdidD2Jz6w47xAYpfQ', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJPQ25CLUJBenNJUDdxRjA1NEpTbF9MMWdiTktEVFJET09ubzhJNExqT3lJIiwiUU4xTW9lV3Ryckk5WV9lNC1IMkdYT0R6dFhkaWREMkp6Nnc0N3hBWXBmUSJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg4MDozODM2NDMwMDg=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:00.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJuWmF1anF6MWplaWYySU5IaHBfbGVmN3pieXBKN1lYNDhYU2RQY3VnVFhNIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiUi1RdUJla0hhVVBvTXhaNUlhTGc3VjNJQTFJYnNjTXp0M2trcWlpc2tjOCJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:hyw70SHVldeUNd0mMlT1xvRfke_o2ae2scvnnS7OzME', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'R-QuBekHaUPoMxZ5IaLg7V3IA1IbscMzt3kkqiiskc8', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJuWmF1anF6MWplaWYySU5IaHBfbGVmN3pieXBKN1lYNDhYU2RQY3VnVFhNIiwiUi1RdUJla0hhVVBvTXhaNUlhTGc3VjNJQTFJYnNjTXp0M2trcWlpc2tjOCJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg4MDozODM2NDI5ODg=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:48:00.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJPQ25CLUJBenNJUDdxRjA1NEpTbF9MMWdiTktEVFJET09ubzhJNExqT3lJIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiVXBjQXRVazVwVm5wcjZFQ0xSRHVwU1p2dExHaWpzRl90dzkxbk9SdElkMCJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:fkP8rDOss2Vuwx3ZpWVJhiPPbzeD7L9V_Y8rBJxKATM', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'UpcAtUk5pVnpr6ECLRDupSZvtLGijsF_tw91nORtId0', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJPQ25CLUJBenNJUDdxRjA1NEpTbF9MMWdiTktEVFJET09ubzhJNExqT3lJIiwiVXBjQXRVazVwVm5wcjZFQ0xSRHVwU1p2dExHaWpzRl90dzkxbk9SdElkMCJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg3OTozODM2NDMwMDY=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:47:59.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJuWmF1anF6MWplaWYySU5IaHBfbGVmN3pieXBKN1lYNDhYU2RQY3VnVFhNIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiMzBVMHJPX3hsZWdhdjhfdWZKUU9Pa2Zub01taElMSzBuMC1wWHlEcGp1TSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:_50Eb08XjQQIwuBsZlBbogDoqwxNPRV7zdE-kGahVz4', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: '30U0rO_xlegav8_ufJQOOkfnoMmhILK0n0-pXyDpjuM', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJuWmF1anF6MWplaWYySU5IaHBfbGVmN3pieXBKN1lYNDhYU2RQY3VnVFhNIiwiMzBVMHJPX3hsZWdhdjhfdWZKUU9Pa2Zub01taElMSzBuMC1wWHlEcGp1TSJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg3OTozODM2NDMwMDU=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:47:59.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJuWmF1anF6MWplaWYySU5IaHBfbGVmN3pieXBKN1lYNDhYU2RQY3VnVFhNIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwielpTT3dlMndCT0RiTjZ0VkJteWF1amZvaG1ydUtPektiWnBjRWVvcS1JUSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:6cXiLT0IbWadop64dsmeyixp5e6NjHwBBJtqgkp2LTQ', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'zZSOwe2wBODbN6tVBmyaujfohmruKOzKbZpcEeoq-IQ', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJuWmF1anF6MWplaWYySU5IaHBfbGVmN3pieXBKN1lYNDhYU2RQY3VnVFhNIiwielpTT3dlMndCT0RiTjZ0VkJteWF1amZvaG1ydUtPektiWnBjRWVvcS1JUSJd', + }, + }, + }, + { + cursor: 'MTczNzY1MDg3OTozODM2NDI5ODk=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-01-23T16:47:59.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJPQ25CLUJBenNJUDdxRjA1NEpTbF9MMWdiTktEVFJET09ubzhJNExqT3lJIiwiOCIsIjgiLCJEbVB1TzgxNFp3MEM2Ukw5dWJYVEdleU5sMEkyLXN2VkhnWnAtWHFSc09zIiwiYjEzTXlDa29rVFY1cHFKbzA5WnNNekhSejZRY3AwUVUwSnY1djRkTnRyTSJd', + moduleHash: 'DmPuO814Zw0C6RL9ubXTGeyNl0I2-svVHgZp-XqRsOs', + tokenId: 't:3UufrrjqBziAAeMvvipqRPiKZfbO9rC6gDiEet0UJsE', + moduleName: 'marmalade-v2.ledger', + orderIndex: 8, + receiverAccount: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', + requestKey: 'b13MyCkokTV5pqJo09ZsMzHRz6Qcp0QU0Jv5v4dNtrM', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJPQ25CLUJBenNJUDdxRjA1NEpTbF9MMWdiTktEVFJET09ubzhJNExqT3lJIiwiYjEzTXlDa29rVFY1cHFKbzA5WnNNekhSejZRY3AwUVUwSnY1djRkTnRyTSJd', + }, + }, + }, ], }, }, diff --git a/indexer/tests/integration/fixtures/transfers/transfers.fixture.012.ts b/indexer/tests/integration/fixtures/transfers/transfers.fixture.012.ts new file mode 100644 index 00000000..b49e99b6 --- /dev/null +++ b/indexer/tests/integration/fixtures/transfers/transfers.fixture.012.ts @@ -0,0 +1,564 @@ +export const transfersFixture012 = { + data: { + transfers: { + pageInfo: { + endCursor: 'MTc1NTAwODE1MzozODM3NTkxMjM=', + hasNextPage: true, + hasPreviousPage: true, + startCursor: 'MTc1NTQ0NDc2MTozODM3NTkxNDk=', + }, + edges: [ + { + cursor: 'MTc1NTQ0NDc2MTozODM3NTkxNDk=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-17T15:32:41.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJuT01KTWM4NWgtYjZLZWZBaHNCR2pUaHd5S0xuRzVlaDlZZnNHS3F5MG84IiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiN0JTNU9fTHZQS1VGSEJILXhLWlhSQ215bDk1NmhVcks3TkFFQzR2SjVpQSJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:ht0zztuRZfLLV7MTjo9WRf6u_XGx4vdUdeo6VF3nD-c', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e221f943211185766ad28feccadf424f7107326d0cab1f24c9b10ff86f43fe85', + requestKey: '7BS5O_LvPKUFHBH-xKZXRCmyl956hUrK7NAEC4vJ5iA', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJuT01KTWM4NWgtYjZLZWZBaHNCR2pUaHd5S0xuRzVlaDlZZnNHS3F5MG84IiwiN0JTNU9fTHZQS1VGSEJILXhLWlhSQ215bDk1NmhVcks3TkFFQzR2SjVpQSJd', + }, + }, + }, + { + cursor: 'MTc1NTQ0NDc2MTozODM3NTkxNDY=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-17T15:32:41.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJuT01KTWM4NWgtYjZLZWZBaHNCR2pUaHd5S0xuRzVlaDlZZnNHS3F5MG84IiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiSnV4anNyUnRncEQ0anFadVlXaGdJUnJJMGl6dktERmpJcUdfUmtmcW5ucyJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:2w769Zwl1QY7BqqZ3kJv0uDMAghefOdIkDAnlKSpa-c', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e221f943211185766ad28feccadf424f7107326d0cab1f24c9b10ff86f43fe85', + requestKey: 'JuxjsrRtgpD4jqZuYWhgIRrI0izvKDFjIqG_Rkfqnns', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJuT01KTWM4NWgtYjZLZWZBaHNCR2pUaHd5S0xuRzVlaDlZZnNHS3F5MG84IiwiSnV4anNyUnRncEQ0anFadVlXaGdJUnJJMGl6dktERmpJcUdfUmtmcW5ucyJd', + }, + }, + }, + { + cursor: 'MTc1NTQ0NDc2MTozODM3NTkxNDU=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-17T15:32:41.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJuT01KTWM4NWgtYjZLZWZBaHNCR2pUaHd5S0xuRzVlaDlZZnNHS3F5MG84IiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiQmhpdVZTWTRhb0FZNmVacm96VWhLWGE2TkplcFRIMXFVR0RpTmhldERhZyJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:ot7TqNPn-0_jnei_WojKahlvkxzDOsp19hzrO8Ug0yc', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e221f943211185766ad28feccadf424f7107326d0cab1f24c9b10ff86f43fe85', + requestKey: 'BhiuVSY4aoAY6eZrozUhKXa6NJepTH1qUGDiNhetDag', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJuT01KTWM4NWgtYjZLZWZBaHNCR2pUaHd5S0xuRzVlaDlZZnNHS3F5MG84IiwiQmhpdVZTWTRhb0FZNmVacm96VWhLWGE2TkplcFRIMXFVR0RpTmhldERhZyJd', + }, + }, + }, + { + cursor: 'MTc1NTQ0NDc2MDozODM3NTkxNDg=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-17T15:32:40.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJuT01KTWM4NWgtYjZLZWZBaHNCR2pUaHd5S0xuRzVlaDlZZnNHS3F5MG84IiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiYTZtZGJsemJKMzBueHFNV2lUemZDc0xXdEZCeFpVbWZhQkQ0RXIzUlR4ayJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:vfGjkFqKuQZkFDLHus9_izVEAVu6WxpTHO3a6W3_FiQ', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e221f943211185766ad28feccadf424f7107326d0cab1f24c9b10ff86f43fe85', + requestKey: 'a6mdblzbJ30nxqMWiTzfCsLWtFBxZUmfaBD4Er3RTxk', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJuT01KTWM4NWgtYjZLZWZBaHNCR2pUaHd5S0xuRzVlaDlZZnNHS3F5MG84IiwiYTZtZGJsemJKMzBueHFNV2lUemZDc0xXdEZCeFpVbWZhQkQ0RXIzUlR4ayJd', + }, + }, + }, + { + cursor: 'MTc1NTQ0NDU5MjozODM3NTkxNDQ=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-17T15:29:52.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJVVkNNSGNoYVBBT2xuM2psZmdvdTBDcDFiMjNoT2JqRXB4bGhEZVBRdC1VIiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiNC1aWWpRRWtqMnZGSTJDdWlGaVFoTmVROG5iVUlmV19KQ05Db1gwVVRlQSJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:PENUpbjGVsixvsFPLCi6Z4AE8d-MfxrZJJUa9OZiA2M', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e221f943211185766ad28feccadf424f7107326d0cab1f24c9b10ff86f43fe85', + requestKey: '4-ZYjQEkj2vFI2CuiFiQhNeQ8nbUIfW_JCNCoX0UTeA', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJVVkNNSGNoYVBBT2xuM2psZmdvdTBDcDFiMjNoT2JqRXB4bGhEZVBRdC1VIiwiNC1aWWpRRWtqMnZGSTJDdWlGaVFoTmVROG5iVUlmV19KQ05Db1gwVVRlQSJd', + }, + }, + }, + { + cursor: 'MTc1NTQ0NDU2NjozODM3NTkxNDM=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-17T15:29:26.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyI5RG05ZnoxdHAzMDdPQjhYOTc5UEUzSzM0dW9pRDRETW5SRDY3Z3JEMlhBIiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiZk9RSm5EaERzNGdCTE5UdlkyS0xOdi0zM0V4dGxkdWxjaHJid1pkaHQ2MCJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:hZtkvOGjZjQrO0UzWBsZX3ZDw8Oev33GamJkIwXpm6I', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e221f943211185766ad28feccadf424f7107326d0cab1f24c9b10ff86f43fe85', + requestKey: 'fOQJnDhDs4gBLNTvY2KLNv-33ExtldulchrbwZdht60', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyI5RG05ZnoxdHAzMDdPQjhYOTc5UEUzSzM0dW9pRDRETW5SRDY3Z3JEMlhBIiwiZk9RSm5EaERzNGdCTE5UdlkyS0xOdi0zM0V4dGxkdWxjaHJid1pkaHQ2MCJd', + }, + }, + }, + { + cursor: 'MTc1NTQ0NDUzNTozODM3NTkxNDI=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-17T15:28:55.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJUNXItUW5rTGpYajVsNGFSdXVZd2ZDOWprUFlUZ295cktGVHJXVDhSRmZZIiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiUXhud1MwWGhlMEl2N3kzeHR4UUFVSjh6U0J6anJzZWVnZTh3dFNIQVpGdyJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:_uzWVH-NZ16c7NPf1AoVFZb2Z7iShCj3oo4tNgtZytg', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e221f943211185766ad28feccadf424f7107326d0cab1f24c9b10ff86f43fe85', + requestKey: 'QxnwS0Xhe0Iv7y3xtxQAUJ8zSBzjrseege8wtSHAZFw', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJUNXItUW5rTGpYajVsNGFSdXVZd2ZDOWprUFlUZ295cktGVHJXVDhSRmZZIiwiUXhud1MwWGhlMEl2N3kzeHR4UUFVSjh6U0J6anJzZWVnZTh3dFNIQVpGdyJd', + }, + }, + }, + { + cursor: 'MTc1NTQ0NDQ1MDozODM3NTkxNDE=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-17T15:27:30.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyI1WFdvaGNEMnBGUGF6MS1HZXJEUlB5RDl5U0NkNHk4eGlYaWlQR3NEYXRrIiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiU1RtcVgzNGJWSzdJMHE0akxMUXlyZFZrcFBTUzJmOWllZnBoRzNZTHZnbyJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:LylD_I-_FLV2RswOcd9Cnb4WigQvXNGFtHdVyAPojyc', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e221f943211185766ad28feccadf424f7107326d0cab1f24c9b10ff86f43fe85', + requestKey: 'STmqX34bVK7I0q4jLLQyrdVkpPSS2f9iefphG3YLvgo', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyI1WFdvaGNEMnBGUGF6MS1HZXJEUlB5RDl5U0NkNHk4eGlYaWlQR3NEYXRrIiwiU1RtcVgzNGJWSzdJMHE0akxMUXlyZFZrcFBTUzJmOWllZnBoRzNZTHZnbyJd', + }, + }, + }, + { + cursor: 'MTc1NTQ0NDQzNTozODM3NTkxMzk=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-17T15:27:15.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJQdDNWQWJpNzhwTllZMmZBUkdYdEJJMmUwazhHaDRuOW1vdFV4RERfOEtjIiwiOCIsIjIiLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiaFJJcDRlWkVuWFlKaHAtUnByUWlLYTZQczBUelRwYlAtT1paOW1GU25IbyJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:Wg09bhFUJr6HTw-RK0sr7u8fC4yrkVNNVvLKMEBfC74', + moduleName: 'marmalade-v2.ledger', + orderIndex: 2, + receiverAccount: '', + requestKey: 'hRIp4eZEnXYJhp-RprQiKa6Ps0TzTpbP-OZZ9mFSnHo', + senderAccount: 'k:e221f943211185766ad28feccadf424f7107326d0cab1f24c9b10ff86f43fe85', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJQdDNWQWJpNzhwTllZMmZBUkdYdEJJMmUwazhHaDRuOW1vdFV4RERfOEtjIiwiaFJJcDRlWkVuWFlKaHAtUnByUWlLYTZQczBUelRwYlAtT1paOW1GU25IbyJd', + }, + }, + }, + { + cursor: 'MTc1NTQ0NDQzNDozODM3NTkxNDA=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-17T15:27:14.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJQdDNWQWJpNzhwTllZMmZBUkdYdEJJMmUwazhHaDRuOW1vdFV4RERfOEtjIiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiMVdVbTgtSHJqWl9seDhZN0N4ZVpYdVVsUU1qLUtSck42MTZGa0hiR1Q0VSJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:uruKT0ktXclpqD3rQ05BlJEggEahT_FYIrXfcu0Cf-0', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e221f943211185766ad28feccadf424f7107326d0cab1f24c9b10ff86f43fe85', + requestKey: '1WUm8-HrjZ_lx8Y7CxeZXuUlQMj-KRrN616FkHbGT4U', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJQdDNWQWJpNzhwTllZMmZBUkdYdEJJMmUwazhHaDRuOW1vdFV4RERfOEtjIiwiMVdVbTgtSHJqWl9seDhZN0N4ZVpYdVVsUU1qLUtSck42MTZGa0hiR1Q0VSJd', + }, + }, + }, + { + cursor: 'MTc1NTI2NDk0NTozODM3NTkxMzg=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-15T13:35:45.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJBa1p5SnFVZ1d5TkhZV002eUxhYmV5cDZNVF9xMW9idWcxMGJQU2s4a1pFIiwiOCIsIjciLCJqZlZyck1zUnktdGRua2hWMUZ0QkdSSFVRcGRITXBFVzk4SHZ6ZXRUYkRvIiwiR3Naa1h1STloYU9DWFdGMEZhTjBqMmxZbERjRXprUlpwTW10cDhSX2VOWSJd', + moduleHash: 'jfVrrMsRy-tdnkhV1FtBGRHUQpdHMpEW98HvzetTbDo', + tokenId: 't:1S6YWrs1zbKk37sXkBFe_ZSGZpvrfgPCOWznCuKK1Vc', + moduleName: 'marmalade.ledger', + orderIndex: 7, + receiverAccount: 'k:b30bd13dfb0be66383cad32b6762588081729e2511af60ca9f8bb328b75ce801', + requestKey: 'GsZkXuI9haOCXWF0FaN0j2lYlDcEzkRZpMmtp8R_eNY', + senderAccount: 'kmc-marmalade-bank', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJBa1p5SnFVZ1d5TkhZV002eUxhYmV5cDZNVF9xMW9idWcxMGJQU2s4a1pFIiwiR3Naa1h1STloYU9DWFdGMEZhTjBqMmxZbERjRXprUlpwTW10cDhSX2VOWSJd', + }, + }, + }, + { + cursor: 'MTc1NTA2OTgzMTozODM3NTkxMzc=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-13T07:23:51.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJZSXRIOGFycDVnOVVPT0JhUmhnMGQtQWZ6ZG9KR0N0TEdUNDA3MUJtdzlnIiwiOCIsIjMiLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiSGtnSnFtZ2lJNzJ1cWlBSFppSm9Sa0xYbDF4VG9fcnhreXN2c1FVNUJiTSJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:LMh569P5t1ItN_4b1o3XK_to4IagVgJm89RZ559-sjw', + moduleName: 'marmalade-v2.ledger', + orderIndex: 3, + receiverAccount: 'r:n_7d5f3c7285db4a08a4e4e2ecdc63840022425689.kadena', + requestKey: 'HkgJqmgiI72uqiAHZiJoRkLXl1xTo_rxkysvsQU5BbM', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJZSXRIOGFycDVnOVVPT0JhUmhnMGQtQWZ6ZG9KR0N0TEdUNDA3MUJtdzlnIiwiSGtnSnFtZ2lJNzJ1cWlBSFppSm9Sa0xYbDF4VG9fcnhreXN2c1FVNUJiTSJd', + }, + }, + }, + { + cursor: 'MTc1NTA1ODI1NTozODM3NTkxMzY=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-13T04:10:55.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJtQnJCaVJmNWdSSm52bXZZR2VReFY5Mk1BR1dTVUpDWFNxZ0xXV3o3NUtVIiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3Iiwia21VcTBycDRIX3pqSmRKVUwxaG9iNzV5X3VCam1uOG1nUTVqSlRuWTNjOCJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:XFnpXyZBqoQCXmPlb6uSMDbKiKJH5iW2pZKbaP-DTUA', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:5756935698261053f552da0a2a85ff72df74c5e3b99d938cf296f29c1ca1e144', + requestKey: 'kmUq0rp4H_zjJdJUL1hob75y_uBjmn8mgQ5jJTnY3c8', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJtQnJCaVJmNWdSSm52bXZZR2VReFY5Mk1BR1dTVUpDWFNxZ0xXV3o3NUtVIiwia21VcTBycDRIX3pqSmRKVUwxaG9iNzV5X3VCam1uOG1nUTVqSlRuWTNjOCJd', + }, + }, + }, + { + cursor: 'MTc1NTA1ODIyNDozODM3NTkxMzU=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-13T04:10:24.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJxRWZ2QWx4VTd2NXNWQk5vdkdjX2kweklzVXAyY1FrSWJlSWlfMkxhYi1VIiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiZVJLNG85ZndIU3RfMTFEazhuek1GQ0tsLVdsSkVmSy1MZUNsazlEOGRFbyJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:eEAyf2SO8ylNaNYhuPiY4Xa7nDy3Fdwb692Zcwgs_-0', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:5756935698261053f552da0a2a85ff72df74c5e3b99d938cf296f29c1ca1e144', + requestKey: 'eRK4o9fwHSt_11Dk8nzMFCKl-WlJEfK-LeClk9D8dEo', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJxRWZ2QWx4VTd2NXNWQk5vdkdjX2kweklzVXAyY1FrSWJlSWlfMkxhYi1VIiwiZVJLNG85ZndIU3RfMTFEazhuek1GQ0tsLVdsSkVmSy1MZUNsazlEOGRFbyJd', + }, + }, + }, + { + cursor: 'MTc1NTA1NjMyNzozODM3NTkxMzQ=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-13T03:38:47.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJWN1lsN3c2NXAyeFlIc1NxanBnU2ZSTF9KZnQ2V251dHJpQnI5LUtMQVBFIiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiU0JXNnVReVVJbjhid1dtYm5qdlNoeVA3Ykdhdk5UeFRjSU4zSmZURU5WOCJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:9RGFNBW0z4QUdL6d48p-2uCIYDBfckRYXxBDwy1CEyk', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:5756935698261053f552da0a2a85ff72df74c5e3b99d938cf296f29c1ca1e144', + requestKey: 'SBW6uQyUIn8bwWmbnjvShyP7bGavNTxTcIN3JfTENV8', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJWN1lsN3c2NXAyeFlIc1NxanBnU2ZSTF9KZnQ2V251dHJpQnI5LUtMQVBFIiwiU0JXNnVReVVJbjhid1dtYm5qdlNoeVA3Ykdhdk5UeFRjSU4zSmZURU5WOCJd', + }, + }, + }, + { + cursor: 'MTc1NTA1NjMwMjozODM3NTkxMzM=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-13T03:38:22.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyItdVVJRG5SOU5FcmdtNC1UWjRoYmZ3c2U0UlBsMEdwbWMyU05LbUpjR3c4IiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiVk9CeF9WbHBBQm1qSGNmX3Fnc09yT09lSzN0X1p0SC1qM0hPSzVsUWJaUSJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:QV_gH7K7XOmEHA-2WFEEo_TY9tUlNL0jRWvG4arCdu8', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:5756935698261053f552da0a2a85ff72df74c5e3b99d938cf296f29c1ca1e144', + requestKey: 'VOBx_VlpABmjHcf_qgsOrOOeK3t_ZtH-j3HOK5lQbZQ', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyItdVVJRG5SOU5FcmdtNC1UWjRoYmZ3c2U0UlBsMEdwbWMyU05LbUpjR3c4IiwiVk9CeF9WbHBBQm1qSGNmX3Fnc09yT09lSzN0X1p0SC1qM0hPSzVsUWJaUSJd', + }, + }, + }, + { + cursor: 'MTc1NTAwODI3MDozODM3NTkxMzA=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-12T14:17:50.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJ1THBuaF9QaVlKUWd5Um1rOFJzZ25NdVpvM3Y4Y1BDenVVX2RBSG9IOHFBIiwiOCIsIjIiLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3Iiwicm5aYTZhQUlrYWJMNUJiVExiUko4czJmLVpyWmltaXBHQzdBWXBUZU5UdyJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:lnG3OftGDUjY594jK6GWiabeAcdKuFFjH28sRPUAAJU', + moduleName: 'marmalade-v2.ledger', + orderIndex: 2, + receiverAccount: '', + requestKey: 'rnZa6aAIkabL5BbTLbRJ8s2f-ZrZimipGC7AYpTeNTw', + senderAccount: 'k:e1f3003f55fde873d95d59c0ce3bda409870b3ea86b8185458919b67b47ea32d', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJ1THBuaF9QaVlKUWd5Um1rOFJzZ25NdVpvM3Y4Y1BDenVVX2RBSG9IOHFBIiwicm5aYTZhQUlrYWJMNUJiVExiUko4czJmLVpyWmltaXBHQzdBWXBUZU5UdyJd', + }, + }, + }, + { + cursor: 'MTc1NTAwODI2OTozODM3NTkxMzI=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-12T14:17:49.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJ1THBuaF9QaVlKUWd5Um1rOFJzZ25NdVpvM3Y4Y1BDenVVX2RBSG9IOHFBIiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiR01tTFdnUHNyeHZtdGxBLXRmYjJUTmJYcWNibV9QSjByX2U5OU42V0UwRSJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:o9IkHXwPoXllNktiV0aN7AETNNUkuMwOn6z49vG2dW0', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e1f3003f55fde873d95d59c0ce3bda409870b3ea86b8185458919b67b47ea32d', + requestKey: 'GMmLWgPsrxvmtlA-tfb2TNbXqcbm_PJ0r_e99N6WE0E', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJ1THBuaF9QaVlKUWd5Um1rOFJzZ25NdVpvM3Y4Y1BDenVVX2RBSG9IOHFBIiwiR01tTFdnUHNyeHZtdGxBLXRmYjJUTmJYcWNibV9QSjByX2U5OU42V0UwRSJd', + }, + }, + }, + { + cursor: 'MTc1NTAwODI2OTozODM3NTkxMzE=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-12T14:17:49.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJ1THBuaF9QaVlKUWd5Um1rOFJzZ25NdVpvM3Y4Y1BDenVVX2RBSG9IOHFBIiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiSkJBdU5zS050dFJ0UWZRTzZVVzJNM3ppeS1NMURUaUFQdnZFbDVGTzZ3NCJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:cfvfYD7pOUv62WlEvIA3xcJlPGxlj3mcHImnhtPSrC8', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e1f3003f55fde873d95d59c0ce3bda409870b3ea86b8185458919b67b47ea32d', + requestKey: 'JBAuNsKNttRtQfQO6UW2M3ziy-M1DTiAPvvEl5FO6w4', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJ1THBuaF9QaVlKUWd5Um1rOFJzZ25NdVpvM3Y4Y1BDenVVX2RBSG9IOHFBIiwiSkJBdU5zS050dFJ0UWZRTzZVVzJNM3ppeS1NMURUaUFQdnZFbDVGTzZ3NCJd', + }, + }, + }, + { + cursor: 'MTc1NTAwODI1MjozODM3NTkxMjk=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-12T14:17:32.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJXaF9ZZXB2OWk0b09jckNfNFc1cWxvZzNRVE1DeGhzSkRPMTZMWXVaVjVVIiwiOCIsIjIiLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiaW9vV0hLUk9PZHppRFRjSXU2cjBpUVZfNkdLZngzZmd3b0ItelBMR3l4NCJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:l9BLrVJUs0Vkmh9Ei2ovECoPxINBMqpogs-aoli2owQ', + moduleName: 'marmalade-v2.ledger', + orderIndex: 2, + receiverAccount: '', + requestKey: 'iooWHKROOdziDTcIu6r0iQV_6GKfx3fgwoB-zPLGyx4', + senderAccount: 'k:e1f3003f55fde873d95d59c0ce3bda409870b3ea86b8185458919b67b47ea32d', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJXaF9ZZXB2OWk0b09jckNfNFc1cWxvZzNRVE1DeGhzSkRPMTZMWXVaVjVVIiwiaW9vV0hLUk9PZHppRFRjSXU2cjBpUVZfNkdLZngzZmd3b0ItelBMR3l4NCJd', + }, + }, + }, + { + cursor: 'MTc1NTAwODIzNzozODM3NTkxMjg=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-12T14:17:17.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJ0Ul9xcjA4ak9TRGxwcXhGVi1yaEdNbnRGRkdiY05Bc3JPb3NqZkoyUDFFIiwiOCIsIjIiLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiWEh5YmYwMTNoazd5SUIxX1IzbHJ0WHNkUVpFa09Nai14WXBnZ2ZOTG8wRSJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:CbOhe4UDPKuDtbxTGAdlJa4Q9jjLHIZIWL2qSLG0caM', + moduleName: 'marmalade-v2.ledger', + orderIndex: 2, + receiverAccount: '', + requestKey: 'XHybf013hk7yIB1_R3lrtXsdQZEkOMj-xYpggfNLo0E', + senderAccount: 'k:e1f3003f55fde873d95d59c0ce3bda409870b3ea86b8185458919b67b47ea32d', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJ0Ul9xcjA4ak9TRGxwcXhGVi1yaEdNbnRGRkdiY05Bc3JPb3NqZkoyUDFFIiwiWEh5YmYwMTNoazd5SUIxX1IzbHJ0WHNkUVpFa09Nai14WXBnZ2ZOTG8wRSJd', + }, + }, + }, + { + cursor: 'MTc1NTAwODIxMzozODM3NTkxMjc=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-12T14:16:53.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJ0Ul9xcjA4ak9TRGxwcXhGVi1yaEdNbnRGRkdiY05Bc3JPb3NqZkoyUDFFIiwiOCIsIjIiLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiMTJtRk15Qkx2ZFBabTlZLXp2U2FVRkxYaTJObkJubzZINXZuTzBLZ2l4USJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:4ar3zAgaKV8RVFQjtYryu5pllyPQzwAVl8G69mwxMEA', + moduleName: 'marmalade-v2.ledger', + orderIndex: 2, + receiverAccount: '', + requestKey: '12mFMyBLvdPZm9Y-zvSaUFLXi2NnBno6H5vnO0KgixQ', + senderAccount: 'k:e1f3003f55fde873d95d59c0ce3bda409870b3ea86b8185458919b67b47ea32d', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJ0Ul9xcjA4ak9TRGxwcXhGVi1yaEdNbnRGRkdiY05Bc3JPb3NqZkoyUDFFIiwiMTJtRk15Qkx2ZFBabTlZLXp2U2FVRkxYaTJObkJubzZINXZuTzBLZ2l4USJd', + }, + }, + }, + { + cursor: 'MTc1NTAwODE1MzozODM3NTkxMjY=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-12T14:15:53.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJIdFMtMVRQRGJHY0o1M1IzUVA0eEZ1T1AtMnFqdXk3NUU1anJsMGFtd3E0IiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiUXBOWENXQ0R1anlMTktXV1NMZzIyeF93c0tyQzhCcWpuRGtoUWJlX1lFMCJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:NS5r806Ln-7_E7ZXX6zrXhoJjd7iJx6El7kFvgrChaM', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e1f3003f55fde873d95d59c0ce3bda409870b3ea86b8185458919b67b47ea32d', + requestKey: 'QpNXCWCDujyLNKWWSLg22x_wsKrC8BqjnDkhQbe_YE0', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJIdFMtMVRQRGJHY0o1M1IzUVA0eEZ1T1AtMnFqdXk3NUU1anJsMGFtd3E0IiwiUXBOWENXQ0R1anlMTktXV1NMZzIyeF93c0tyQzhCcWpuRGtoUWJlX1lFMCJd', + }, + }, + }, + { + cursor: 'MTc1NTAwODE1MzozODM3NTkxMjQ=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-12T14:15:53.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJIdFMtMVRQRGJHY0o1M1IzUVA0eEZ1T1AtMnFqdXk3NUU1anJsMGFtd3E0IiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiTE9JekZQUFZTNUx2dU1LMjhVV3lPQThmZ1FSeldhdUhoVXdudWs3VGVxNCJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:C1XMVo52PM7ckOhFDmWqx1_0HVQiNstwMeiie9x0-p4', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e1f3003f55fde873d95d59c0ce3bda409870b3ea86b8185458919b67b47ea32d', + requestKey: 'LOIzFPPVS5LvuMK28UWyOA8fgQRzWauHhUwnuk7Teq4', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJIdFMtMVRQRGJHY0o1M1IzUVA0eEZ1T1AtMnFqdXk3NUU1anJsMGFtd3E0IiwiTE9JekZQUFZTNUx2dU1LMjhVV3lPQThmZ1FSeldhdUhoVXdudWs3VGVxNCJd', + }, + }, + }, + { + cursor: 'MTc1NTAwODE1MzozODM3NTkxMjM=', + node: { + amount: '1', + block: { + chainId: 8, + }, + creationTime: '2025-08-12T14:15:53.000Z', + crossChainTransfer: null, + id: 'VHJhbnNmZXI6WyJIdFMtMVRQRGJHY0o1M1IzUVA0eEZ1T1AtMnFqdXk3NUU1anJsMGFtd3E0IiwiOCIsIjciLCJ6a3FaVzFLXzhjbFVZUGg2QzdqTmk4SFVoQm13ZmFTaERDQ1dMVUZKWlR3IiwiVGdHeUZNWEctX2pGRWxuRmd1cHZfT1pwWFMzX1hram5QSEJpZTNPUFp6RSJd', + moduleHash: 'zkqZW1K_8clUYPh6C7jNi8HUhBmwfaShDCCWLUFJZTw', + tokenId: 't:EMqhIZn42PWeqaVznz7BZA5gb-7hCKRrvCO-mto1bjs', + moduleName: 'marmalade-v2.ledger', + orderIndex: 7, + receiverAccount: 'k:e1f3003f55fde873d95d59c0ce3bda409870b3ea86b8185458919b67b47ea32d', + requestKey: 'TgGyFMXG-_jFElnFgupv_OZpXS3_XkjnPHBie3OPZzE', + senderAccount: '', + transaction: { + id: 'VHJhbnNhY3Rpb246WyJIdFMtMVRQRGJHY0o1M1IzUVA0eEZ1T1AtMnFqdXk3NUU1anJsMGFtd3E0IiwiVGdHeUZNWEctX2pGRWxuRmd1cHZfT1pwWFMzX1hram5QSEJpZTNPUFp6RSJd', + }, + }, + }, + ], + }, + }, +}; diff --git a/indexer/tests/integration/queries/transfers.query.test.ts b/indexer/tests/integration/queries/transfers.query.test.ts index 6da95c22..c493072b 100644 --- a/indexer/tests/integration/queries/transfers.query.test.ts +++ b/indexer/tests/integration/queries/transfers.query.test.ts @@ -1,5 +1,6 @@ import { GraphQLClient } from 'graphql-request'; import { getTransfersQuery, getTransfersQueryTwo } from '../builders/transfers.builder'; +import { getNftTransfersQuery } from '../builders/nft-transfers.builder'; import { transfersFixture001 } from '../fixtures/transfers/transfers.fixture.001'; import { transfersFixture002 } from '../fixtures/transfers/transfers.fixture.002'; import { transfersFixture003 } from '../fixtures/transfers/transfers.fixture.003'; @@ -11,6 +12,7 @@ import { transfersFixture008 } from '../fixtures/transfers/transfers.fixture.008 import { transfersFixture009 } from '../fixtures/transfers/transfers.fixture.009'; import { transfersFixture010 } from '../fixtures/transfers/transfers.fixture.010'; import { transfersFixture011 } from '../fixtures/transfers/transfers.fixture.011'; +import { transfersFixture012 } from '../fixtures/transfers/transfers.fixture.012'; const client = new GraphQLClient(process.env.API_URL ?? 'http://localhost:3001/graphql'); @@ -130,19 +132,30 @@ describe('Transfers', () => { }); it('#011 - accountName + isNFT + after + first', async () => { - const query = getTransfersQueryTwo({ + const query = getNftTransfersQuery({ accountName: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', isNFT: true, - after: 'MTczOTA0ODQ0MjozNjg1OTYw', - first: 5, + after: 'MTczOTA0ODQ0MjozODM2Mzg1NDg=', + first: 25, }); const data = await client.request(query); expect(transfersFixture011.data).toMatchObject(data); }); - it('#012 - isNFT + fungibleName', async () => { - const query = getTransfersQueryTwo({ + it('#012 - isNFT + after + first', async () => { + const query = getNftTransfersQuery({ + isNFT: true, + after: 'MTc1NTQ0NDc2MTozODM3NTkxNDk=', + first: 25, + }); + + const data = await client.request(query); + expect(transfersFixture012.data).toMatchObject(data); + }); + + it('#013 - isNFT + fungibleName', async () => { + const query = getNftTransfersQuery({ isNFT: true, fungibleName: 'k:ef4a368a2d66e50ae885e981cd6e139a0bcb8b469e5ad18ebc55a477dbdefdec', });