@arkiv-network/sdk 0.1.0 → 0.1.2-dev.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -10
- package/dist/accounts/index.cjs +9 -0
- package/dist/accounts/index.d.cts +1 -0
- package/dist/accounts/index.d.ts +1 -0
- package/dist/accounts/index.js +1 -0
- package/dist/chains/index.cjs +65 -0
- package/dist/chains/index.d.cts +136 -0
- package/dist/chains/index.d.cts.map +1 -0
- package/dist/chains/index.d.ts +136 -0
- package/dist/chains/index.d.ts.map +1 -0
- package/dist/chains/index.js +63 -0
- package/dist/chains/index.js.map +1 -0
- package/dist/consts-BV9DVKgE.cjs +18 -0
- package/dist/consts-CHtLBwGd.js +7 -0
- package/dist/consts-CHtLBwGd.js.map +1 -0
- package/dist/entity-CMRcjXBK.d.ts +41 -0
- package/dist/entity-CMRcjXBK.d.ts.map +1 -0
- package/dist/entity-Dgf1SSpi.d.cts +41 -0
- package/dist/entity-Dgf1SSpi.d.cts.map +1 -0
- package/dist/index.cjs +468 -0
- package/dist/index.d.cts +498 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.ts +498 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +420 -0
- package/dist/index.js.map +1 -0
- package/dist/query/index.cjs +172 -0
- package/dist/query/index.d.cts +19 -0
- package/dist/query/index.d.cts.map +1 -0
- package/dist/query/index.d.ts +19 -0
- package/dist/query/index.d.ts.map +1 -0
- package/dist/query/index.js +159 -0
- package/dist/query/index.js.map +1 -0
- package/dist/queryBuilder-BueP5de6.js +341 -0
- package/dist/queryBuilder-BueP5de6.js.map +1 -0
- package/dist/queryBuilder-D38MYG7o.d.ts +320 -0
- package/dist/queryBuilder-D38MYG7o.d.ts.map +1 -0
- package/dist/queryBuilder-DU4RQa7H.d.cts +320 -0
- package/dist/queryBuilder-DU4RQa7H.d.cts.map +1 -0
- package/dist/queryBuilder-okYHE7jd.cjs +382 -0
- package/dist/types/index.cjs +0 -0
- package/dist/types/index.d.cts +2 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.js +0 -0
- package/dist/utils/index.cjs +37 -0
- package/dist/utils/index.d.cts +21 -0
- package/dist/utils/index.d.cts.map +1 -0
- package/dist/utils/index.d.ts +21 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +30 -0
- package/dist/utils/index.js.map +1 -0
- package/package.json +41 -43
- package/src/clients/createPublicClient.test.ts +22 -0
- package/src/clients/createWalletClient.test.ts +23 -0
- package/src/query/engine.test.ts +288 -0
- package/src/query/predicate.test.ts +418 -0
- package/src/query/queryBuilder.test.ts +537 -0
- package/src/query/queryResult.test.ts +270 -0
- package/src/utils/compression.test.ts +32 -0
- package/src/utils/compression.ts +40 -13
- package/dist/_cjs/accounts/index.d.ts +0 -2
- package/dist/_cjs/accounts/index.d.ts.map +0 -1
- package/dist/_cjs/accounts/index.js +0 -18
- package/dist/_cjs/accounts/index.js.map +0 -1
- package/dist/_cjs/actions/public/buildQuery.d.ts +0 -4
- package/dist/_cjs/actions/public/buildQuery.d.ts.map +0 -1
- package/dist/_cjs/actions/public/buildQuery.js +0 -8
- package/dist/_cjs/actions/public/buildQuery.js.map +0 -1
- package/dist/_cjs/actions/public/getBlockTiming.d.ts +0 -12
- package/dist/_cjs/actions/public/getBlockTiming.d.ts.map +0 -1
- package/dist/_cjs/actions/public/getBlockTiming.js +0 -16
- package/dist/_cjs/actions/public/getBlockTiming.js.map +0 -1
- package/dist/_cjs/actions/public/getEntity.d.ts +0 -4
- package/dist/_cjs/actions/public/getEntity.d.ts.map +0 -1
- package/dist/_cjs/actions/public/getEntity.js +0 -17
- package/dist/_cjs/actions/public/getEntity.js.map +0 -1
- package/dist/_cjs/actions/public/getEntityCount.d.ts +0 -3
- package/dist/_cjs/actions/public/getEntityCount.d.ts.map +0 -1
- package/dist/_cjs/actions/public/getEntityCount.js +0 -11
- package/dist/_cjs/actions/public/getEntityCount.js.map +0 -1
- package/dist/_cjs/actions/public/query.d.ts +0 -3
- package/dist/_cjs/actions/public/query.d.ts.map +0 -1
- package/dist/_cjs/actions/public/query.js +0 -13
- package/dist/_cjs/actions/public/query.js.map +0 -1
- package/dist/_cjs/actions/public/subscribeEntityEvents.d.ts +0 -96
- package/dist/_cjs/actions/public/subscribeEntityEvents.d.ts.map +0 -1
- package/dist/_cjs/actions/public/subscribeEntityEvents.js +0 -79
- package/dist/_cjs/actions/public/subscribeEntityEvents.js.map +0 -1
- package/dist/_cjs/actions/wallet/changeOwnership.d.ts +0 -22
- package/dist/_cjs/actions/wallet/changeOwnership.d.ts.map +0 -1
- package/dist/_cjs/actions/wallet/changeOwnership.js +0 -15
- package/dist/_cjs/actions/wallet/changeOwnership.js.map +0 -1
- package/dist/_cjs/actions/wallet/createEntity.d.ts +0 -27
- package/dist/_cjs/actions/wallet/createEntity.d.ts.map +0 -1
- package/dist/_cjs/actions/wallet/createEntity.js +0 -15
- package/dist/_cjs/actions/wallet/createEntity.js.map +0 -1
- package/dist/_cjs/actions/wallet/deleteEntity.d.ts +0 -21
- package/dist/_cjs/actions/wallet/deleteEntity.d.ts.map +0 -1
- package/dist/_cjs/actions/wallet/deleteEntity.js +0 -15
- package/dist/_cjs/actions/wallet/deleteEntity.js.map +0 -1
- package/dist/_cjs/actions/wallet/extendEntity.d.ts +0 -23
- package/dist/_cjs/actions/wallet/extendEntity.d.ts.map +0 -1
- package/dist/_cjs/actions/wallet/extendEntity.js +0 -15
- package/dist/_cjs/actions/wallet/extendEntity.js.map +0 -1
- package/dist/_cjs/actions/wallet/mutateEntities.d.ts +0 -37
- package/dist/_cjs/actions/wallet/mutateEntities.d.ts.map +0 -1
- package/dist/_cjs/actions/wallet/mutateEntities.js +0 -56
- package/dist/_cjs/actions/wallet/mutateEntities.js.map +0 -1
- package/dist/_cjs/actions/wallet/updateEntity.d.ts +0 -29
- package/dist/_cjs/actions/wallet/updateEntity.d.ts.map +0 -1
- package/dist/_cjs/actions/wallet/updateEntity.js +0 -15
- package/dist/_cjs/actions/wallet/updateEntity.js.map +0 -1
- package/dist/_cjs/chains/index.d.ts +0 -4
- package/dist/_cjs/chains/index.d.ts.map +0 -1
- package/dist/_cjs/chains/index.js +0 -10
- package/dist/_cjs/chains/index.js.map +0 -1
- package/dist/_cjs/chains/kaolin.d.ts +0 -42
- package/dist/_cjs/chains/kaolin.d.ts.map +0 -1
- package/dist/_cjs/chains/kaolin.js +0 -29
- package/dist/_cjs/chains/kaolin.js.map +0 -1
- package/dist/_cjs/chains/localhost.d.ts +0 -45
- package/dist/_cjs/chains/localhost.d.ts.map +0 -1
- package/dist/_cjs/chains/localhost.js +0 -17
- package/dist/_cjs/chains/localhost.js.map +0 -1
- package/dist/_cjs/chains/marketplace.d.ts +0 -42
- package/dist/_cjs/chains/marketplace.d.ts.map +0 -1
- package/dist/_cjs/chains/marketplace.js +0 -29
- package/dist/_cjs/chains/marketplace.js.map +0 -1
- package/dist/_cjs/clients/baseClient.d.ts +0 -4
- package/dist/_cjs/clients/baseClient.d.ts.map +0 -1
- package/dist/_cjs/clients/baseClient.js +0 -3
- package/dist/_cjs/clients/baseClient.js.map +0 -1
- package/dist/_cjs/clients/createPublicClient.d.ts +0 -25
- package/dist/_cjs/clients/createPublicClient.d.ts.map +0 -1
- package/dist/_cjs/clients/createPublicClient.js +0 -34
- package/dist/_cjs/clients/createPublicClient.js.map +0 -1
- package/dist/_cjs/clients/createWalletClient.d.ts +0 -25
- package/dist/_cjs/clients/createWalletClient.d.ts.map +0 -1
- package/dist/_cjs/clients/createWalletClient.js +0 -39
- package/dist/_cjs/clients/createWalletClient.js.map +0 -1
- package/dist/_cjs/clients/decorators/arkivPublic.d.ts +0 -134
- package/dist/_cjs/clients/decorators/arkivPublic.d.ts.map +0 -1
- package/dist/_cjs/clients/decorators/arkivPublic.js +0 -27
- package/dist/_cjs/clients/decorators/arkivPublic.js.map +0 -1
- package/dist/_cjs/clients/decorators/arkivWallet.d.ts +0 -177
- package/dist/_cjs/clients/decorators/arkivWallet.d.ts.map +0 -1
- package/dist/_cjs/clients/decorators/arkivWallet.js +0 -20
- package/dist/_cjs/clients/decorators/arkivWallet.js.map +0 -1
- package/dist/_cjs/consts.d.ts +0 -3
- package/dist/_cjs/consts.d.ts.map +0 -1
- package/dist/_cjs/consts.js +0 -6
- package/dist/_cjs/consts.js.map +0 -1
- package/dist/_cjs/index.d.ts +0 -11
- package/dist/_cjs/index.d.ts.map +0 -1
- package/dist/_cjs/index.js +0 -16
- package/dist/_cjs/index.js.map +0 -1
- package/dist/_cjs/query/engine.d.ts +0 -18
- package/dist/_cjs/query/engine.d.ts.map +0 -1
- package/dist/_cjs/query/engine.js +0 -77
- package/dist/_cjs/query/engine.js.map +0 -1
- package/dist/_cjs/query/errors.d.ts +0 -13
- package/dist/_cjs/query/errors.d.ts.map +0 -1
- package/dist/_cjs/query/errors.js +0 -28
- package/dist/_cjs/query/errors.js.map +0 -1
- package/dist/_cjs/query/index.d.ts +0 -5
- package/dist/_cjs/query/index.d.ts.map +0 -1
- package/dist/_cjs/query/index.js +0 -21
- package/dist/_cjs/query/index.js.map +0 -1
- package/dist/_cjs/query/predicate.d.ts +0 -111
- package/dist/_cjs/query/predicate.d.ts.map +0 -1
- package/dist/_cjs/query/predicate.js +0 -130
- package/dist/_cjs/query/predicate.js.map +0 -1
- package/dist/_cjs/query/queryBuilder.d.ts +0 -132
- package/dist/_cjs/query/queryBuilder.d.ts.map +0 -1
- package/dist/_cjs/query/queryBuilder.js +0 -194
- package/dist/_cjs/query/queryBuilder.js.map +0 -1
- package/dist/_cjs/query/queryResult.d.ts +0 -16
- package/dist/_cjs/query/queryResult.d.ts.map +0 -1
- package/dist/_cjs/query/queryResult.js +0 -51
- package/dist/_cjs/query/queryResult.js.map +0 -1
- package/dist/_cjs/types/attributes.d.ts +0 -5
- package/dist/_cjs/types/attributes.d.ts.map +0 -1
- package/dist/_cjs/types/attributes.js +0 -3
- package/dist/_cjs/types/attributes.js.map +0 -1
- package/dist/_cjs/types/entity.d.ts +0 -15
- package/dist/_cjs/types/entity.d.ts.map +0 -1
- package/dist/_cjs/types/entity.js +0 -28
- package/dist/_cjs/types/entity.js.map +0 -1
- package/dist/_cjs/types/events.d.ts +0 -30
- package/dist/_cjs/types/events.d.ts.map +0 -1
- package/dist/_cjs/types/events.js +0 -3
- package/dist/_cjs/types/events.js.map +0 -1
- package/dist/_cjs/types/index.d.ts +0 -5
- package/dist/_cjs/types/index.d.ts.map +0 -1
- package/dist/_cjs/types/index.js +0 -3
- package/dist/_cjs/types/index.js.map +0 -1
- package/dist/_cjs/types/mimeTypes.d.ts +0 -2
- package/dist/_cjs/types/mimeTypes.d.ts.map +0 -1
- package/dist/_cjs/types/mimeTypes.js +0 -3
- package/dist/_cjs/types/mimeTypes.js.map +0 -1
- package/dist/_cjs/types/rpcSchema.d.ts +0 -63
- package/dist/_cjs/types/rpcSchema.d.ts.map +0 -1
- package/dist/_cjs/types/rpcSchema.js +0 -3
- package/dist/_cjs/types/rpcSchema.js.map +0 -1
- package/dist/_cjs/types/txParams.d.ts +0 -14
- package/dist/_cjs/types/txParams.d.ts.map +0 -1
- package/dist/_cjs/types/txParams.js +0 -3
- package/dist/_cjs/types/txParams.js.map +0 -1
- package/dist/_cjs/utils/arkivTransactions.d.ts +0 -17
- package/dist/_cjs/utils/arkivTransactions.d.ts.map +0 -1
- package/dist/_cjs/utils/arkivTransactions.js +0 -73
- package/dist/_cjs/utils/arkivTransactions.js.map +0 -1
- package/dist/_cjs/utils/compression.d.ts +0 -3
- package/dist/_cjs/utils/compression.d.ts.map +0 -1
- package/dist/_cjs/utils/compression.js +0 -24
- package/dist/_cjs/utils/compression.js.map +0 -1
- package/dist/_cjs/utils/entities.d.ts +0 -4
- package/dist/_cjs/utils/entities.d.ts.map +0 -1
- package/dist/_cjs/utils/entities.js +0 -18
- package/dist/_cjs/utils/entities.js.map +0 -1
- package/dist/_cjs/utils/expirationTime.d.ts +0 -12
- package/dist/_cjs/utils/expirationTime.d.ts.map +0 -1
- package/dist/_cjs/utils/expirationTime.js +0 -16
- package/dist/_cjs/utils/expirationTime.js.map +0 -1
- package/dist/_cjs/utils/index.d.ts +0 -4
- package/dist/_cjs/utils/index.d.ts.map +0 -1
- package/dist/_cjs/utils/index.js +0 -20
- package/dist/_cjs/utils/index.js.map +0 -1
- package/dist/_cjs/utils/payload.d.ts +0 -3
- package/dist/_cjs/utils/payload.d.ts.map +0 -1
- package/dist/_cjs/utils/payload.js +0 -12
- package/dist/_cjs/utils/payload.js.map +0 -1
- package/dist/_esm/accounts/index.d.ts +0 -2
- package/dist/_esm/accounts/index.d.ts.map +0 -1
- package/dist/_esm/accounts/index.js +0 -2
- package/dist/_esm/accounts/index.js.map +0 -1
- package/dist/_esm/actions/public/buildQuery.d.ts +0 -4
- package/dist/_esm/actions/public/buildQuery.d.ts.map +0 -1
- package/dist/_esm/actions/public/buildQuery.js +0 -5
- package/dist/_esm/actions/public/buildQuery.js.map +0 -1
- package/dist/_esm/actions/public/getBlockTiming.d.ts +0 -12
- package/dist/_esm/actions/public/getBlockTiming.d.ts.map +0 -1
- package/dist/_esm/actions/public/getBlockTiming.js +0 -13
- package/dist/_esm/actions/public/getBlockTiming.js.map +0 -1
- package/dist/_esm/actions/public/getEntity.d.ts +0 -4
- package/dist/_esm/actions/public/getEntity.d.ts.map +0 -1
- package/dist/_esm/actions/public/getEntity.js +0 -14
- package/dist/_esm/actions/public/getEntity.js.map +0 -1
- package/dist/_esm/actions/public/getEntityCount.d.ts +0 -3
- package/dist/_esm/actions/public/getEntityCount.d.ts.map +0 -1
- package/dist/_esm/actions/public/getEntityCount.js +0 -8
- package/dist/_esm/actions/public/getEntityCount.js.map +0 -1
- package/dist/_esm/actions/public/query.d.ts +0 -3
- package/dist/_esm/actions/public/query.d.ts.map +0 -1
- package/dist/_esm/actions/public/query.js +0 -10
- package/dist/_esm/actions/public/query.js.map +0 -1
- package/dist/_esm/actions/public/subscribeEntityEvents.d.ts +0 -96
- package/dist/_esm/actions/public/subscribeEntityEvents.d.ts.map +0 -1
- package/dist/_esm/actions/public/subscribeEntityEvents.js +0 -75
- package/dist/_esm/actions/public/subscribeEntityEvents.js.map +0 -1
- package/dist/_esm/actions/wallet/changeOwnership.d.ts +0 -22
- package/dist/_esm/actions/wallet/changeOwnership.d.ts.map +0 -1
- package/dist/_esm/actions/wallet/changeOwnership.js +0 -12
- package/dist/_esm/actions/wallet/changeOwnership.js.map +0 -1
- package/dist/_esm/actions/wallet/createEntity.d.ts +0 -27
- package/dist/_esm/actions/wallet/createEntity.d.ts.map +0 -1
- package/dist/_esm/actions/wallet/createEntity.js +0 -12
- package/dist/_esm/actions/wallet/createEntity.js.map +0 -1
- package/dist/_esm/actions/wallet/deleteEntity.d.ts +0 -21
- package/dist/_esm/actions/wallet/deleteEntity.d.ts.map +0 -1
- package/dist/_esm/actions/wallet/deleteEntity.js +0 -12
- package/dist/_esm/actions/wallet/deleteEntity.js.map +0 -1
- package/dist/_esm/actions/wallet/extendEntity.d.ts +0 -23
- package/dist/_esm/actions/wallet/extendEntity.d.ts.map +0 -1
- package/dist/_esm/actions/wallet/extendEntity.js +0 -12
- package/dist/_esm/actions/wallet/extendEntity.js.map +0 -1
- package/dist/_esm/actions/wallet/mutateEntities.d.ts +0 -37
- package/dist/_esm/actions/wallet/mutateEntities.d.ts.map +0 -1
- package/dist/_esm/actions/wallet/mutateEntities.js +0 -53
- package/dist/_esm/actions/wallet/mutateEntities.js.map +0 -1
- package/dist/_esm/actions/wallet/updateEntity.d.ts +0 -29
- package/dist/_esm/actions/wallet/updateEntity.d.ts.map +0 -1
- package/dist/_esm/actions/wallet/updateEntity.js +0 -12
- package/dist/_esm/actions/wallet/updateEntity.js.map +0 -1
- package/dist/_esm/chains/index.d.ts +0 -4
- package/dist/_esm/chains/index.d.ts.map +0 -1
- package/dist/_esm/chains/index.js +0 -4
- package/dist/_esm/chains/index.js.map +0 -1
- package/dist/_esm/chains/kaolin.d.ts +0 -42
- package/dist/_esm/chains/kaolin.d.ts.map +0 -1
- package/dist/_esm/chains/kaolin.js +0 -26
- package/dist/_esm/chains/kaolin.js.map +0 -1
- package/dist/_esm/chains/localhost.d.ts +0 -45
- package/dist/_esm/chains/localhost.d.ts.map +0 -1
- package/dist/_esm/chains/localhost.js +0 -14
- package/dist/_esm/chains/localhost.js.map +0 -1
- package/dist/_esm/chains/marketplace.d.ts +0 -42
- package/dist/_esm/chains/marketplace.d.ts.map +0 -1
- package/dist/_esm/chains/marketplace.js +0 -26
- package/dist/_esm/chains/marketplace.js.map +0 -1
- package/dist/_esm/clients/baseClient.d.ts +0 -4
- package/dist/_esm/clients/baseClient.d.ts.map +0 -1
- package/dist/_esm/clients/baseClient.js +0 -2
- package/dist/_esm/clients/baseClient.js.map +0 -1
- package/dist/_esm/clients/createPublicClient.d.ts +0 -25
- package/dist/_esm/clients/createPublicClient.d.ts.map +0 -1
- package/dist/_esm/clients/createPublicClient.js +0 -31
- package/dist/_esm/clients/createPublicClient.js.map +0 -1
- package/dist/_esm/clients/createWalletClient.d.ts +0 -25
- package/dist/_esm/clients/createWalletClient.d.ts.map +0 -1
- package/dist/_esm/clients/createWalletClient.js +0 -36
- package/dist/_esm/clients/createWalletClient.js.map +0 -1
- package/dist/_esm/clients/decorators/arkivPublic.d.ts +0 -134
- package/dist/_esm/clients/decorators/arkivPublic.d.ts.map +0 -1
- package/dist/_esm/clients/decorators/arkivPublic.js +0 -24
- package/dist/_esm/clients/decorators/arkivPublic.js.map +0 -1
- package/dist/_esm/clients/decorators/arkivWallet.d.ts +0 -177
- package/dist/_esm/clients/decorators/arkivWallet.d.ts.map +0 -1
- package/dist/_esm/clients/decorators/arkivWallet.js +0 -17
- package/dist/_esm/clients/decorators/arkivWallet.js.map +0 -1
- package/dist/_esm/consts.d.ts +0 -3
- package/dist/_esm/consts.d.ts.map +0 -1
- package/dist/_esm/consts.js +0 -3
- package/dist/_esm/consts.js.map +0 -1
- package/dist/_esm/index.d.ts +0 -11
- package/dist/_esm/index.d.ts.map +0 -1
- package/dist/_esm/index.js +0 -6
- package/dist/_esm/index.js.map +0 -1
- package/dist/_esm/query/engine.d.ts +0 -18
- package/dist/_esm/query/engine.d.ts.map +0 -1
- package/dist/_esm/query/engine.js +0 -74
- package/dist/_esm/query/engine.js.map +0 -1
- package/dist/_esm/query/errors.d.ts +0 -13
- package/dist/_esm/query/errors.d.ts.map +0 -1
- package/dist/_esm/query/errors.js +0 -21
- package/dist/_esm/query/errors.js.map +0 -1
- package/dist/_esm/query/index.d.ts +0 -5
- package/dist/_esm/query/index.d.ts.map +0 -1
- package/dist/_esm/query/index.js +0 -5
- package/dist/_esm/query/index.js.map +0 -1
- package/dist/_esm/query/predicate.d.ts +0 -111
- package/dist/_esm/query/predicate.d.ts.map +0 -1
- package/dist/_esm/query/predicate.js +0 -119
- package/dist/_esm/query/predicate.js.map +0 -1
- package/dist/_esm/query/queryBuilder.d.ts +0 -132
- package/dist/_esm/query/queryBuilder.d.ts.map +0 -1
- package/dist/_esm/query/queryBuilder.js +0 -190
- package/dist/_esm/query/queryBuilder.js.map +0 -1
- package/dist/_esm/query/queryResult.d.ts +0 -16
- package/dist/_esm/query/queryResult.d.ts.map +0 -1
- package/dist/_esm/query/queryResult.js +0 -47
- package/dist/_esm/query/queryResult.js.map +0 -1
- package/dist/_esm/types/attributes.d.ts +0 -5
- package/dist/_esm/types/attributes.d.ts.map +0 -1
- package/dist/_esm/types/attributes.js +0 -2
- package/dist/_esm/types/attributes.js.map +0 -1
- package/dist/_esm/types/entity.d.ts +0 -15
- package/dist/_esm/types/entity.d.ts.map +0 -1
- package/dist/_esm/types/entity.js +0 -24
- package/dist/_esm/types/entity.js.map +0 -1
- package/dist/_esm/types/events.d.ts +0 -30
- package/dist/_esm/types/events.d.ts.map +0 -1
- package/dist/_esm/types/events.js +0 -2
- package/dist/_esm/types/events.js.map +0 -1
- package/dist/_esm/types/index.d.ts +0 -5
- package/dist/_esm/types/index.d.ts.map +0 -1
- package/dist/_esm/types/index.js +0 -2
- package/dist/_esm/types/index.js.map +0 -1
- package/dist/_esm/types/mimeTypes.d.ts +0 -2
- package/dist/_esm/types/mimeTypes.d.ts.map +0 -1
- package/dist/_esm/types/mimeTypes.js +0 -2
- package/dist/_esm/types/mimeTypes.js.map +0 -1
- package/dist/_esm/types/rpcSchema.d.ts +0 -63
- package/dist/_esm/types/rpcSchema.d.ts.map +0 -1
- package/dist/_esm/types/rpcSchema.js +0 -2
- package/dist/_esm/types/rpcSchema.js.map +0 -1
- package/dist/_esm/types/txParams.d.ts +0 -14
- package/dist/_esm/types/txParams.d.ts.map +0 -1
- package/dist/_esm/types/txParams.js +0 -2
- package/dist/_esm/types/txParams.js.map +0 -1
- package/dist/_esm/utils/arkivTransactions.d.ts +0 -17
- package/dist/_esm/utils/arkivTransactions.d.ts.map +0 -1
- package/dist/_esm/utils/arkivTransactions.js +0 -69
- package/dist/_esm/utils/arkivTransactions.js.map +0 -1
- package/dist/_esm/utils/compression.d.ts +0 -3
- package/dist/_esm/utils/compression.d.ts.map +0 -1
- package/dist/_esm/utils/compression.js +0 -20
- package/dist/_esm/utils/compression.js.map +0 -1
- package/dist/_esm/utils/entities.d.ts +0 -4
- package/dist/_esm/utils/entities.d.ts.map +0 -1
- package/dist/_esm/utils/entities.js +0 -15
- package/dist/_esm/utils/entities.js.map +0 -1
- package/dist/_esm/utils/expirationTime.d.ts +0 -12
- package/dist/_esm/utils/expirationTime.d.ts.map +0 -1
- package/dist/_esm/utils/expirationTime.js +0 -13
- package/dist/_esm/utils/expirationTime.js.map +0 -1
- package/dist/_esm/utils/index.d.ts +0 -4
- package/dist/_esm/utils/index.d.ts.map +0 -1
- package/dist/_esm/utils/index.js +0 -4
- package/dist/_esm/utils/index.js.map +0 -1
- package/dist/_esm/utils/payload.d.ts +0 -3
- package/dist/_esm/utils/payload.d.ts.map +0 -1
- package/dist/_esm/utils/payload.js +0 -8
- package/dist/_esm/utils/payload.js.map +0 -1
- package/dist/_types/accounts/index.d.ts +0 -2
- package/dist/_types/accounts/index.d.ts.map +0 -1
- package/dist/_types/actions/public/buildQuery.d.ts +0 -4
- package/dist/_types/actions/public/buildQuery.d.ts.map +0 -1
- package/dist/_types/actions/public/getBlockTiming.d.ts +0 -12
- package/dist/_types/actions/public/getBlockTiming.d.ts.map +0 -1
- package/dist/_types/actions/public/getEntity.d.ts +0 -4
- package/dist/_types/actions/public/getEntity.d.ts.map +0 -1
- package/dist/_types/actions/public/getEntityCount.d.ts +0 -3
- package/dist/_types/actions/public/getEntityCount.d.ts.map +0 -1
- package/dist/_types/actions/public/query.d.ts +0 -3
- package/dist/_types/actions/public/query.d.ts.map +0 -1
- package/dist/_types/actions/public/subscribeEntityEvents.d.ts +0 -96
- package/dist/_types/actions/public/subscribeEntityEvents.d.ts.map +0 -1
- package/dist/_types/actions/wallet/changeOwnership.d.ts +0 -22
- package/dist/_types/actions/wallet/changeOwnership.d.ts.map +0 -1
- package/dist/_types/actions/wallet/createEntity.d.ts +0 -27
- package/dist/_types/actions/wallet/createEntity.d.ts.map +0 -1
- package/dist/_types/actions/wallet/deleteEntity.d.ts +0 -21
- package/dist/_types/actions/wallet/deleteEntity.d.ts.map +0 -1
- package/dist/_types/actions/wallet/extendEntity.d.ts +0 -23
- package/dist/_types/actions/wallet/extendEntity.d.ts.map +0 -1
- package/dist/_types/actions/wallet/mutateEntities.d.ts +0 -37
- package/dist/_types/actions/wallet/mutateEntities.d.ts.map +0 -1
- package/dist/_types/actions/wallet/updateEntity.d.ts +0 -29
- package/dist/_types/actions/wallet/updateEntity.d.ts.map +0 -1
- package/dist/_types/chains/index.d.ts +0 -4
- package/dist/_types/chains/index.d.ts.map +0 -1
- package/dist/_types/chains/kaolin.d.ts +0 -42
- package/dist/_types/chains/kaolin.d.ts.map +0 -1
- package/dist/_types/chains/localhost.d.ts +0 -45
- package/dist/_types/chains/localhost.d.ts.map +0 -1
- package/dist/_types/chains/marketplace.d.ts +0 -42
- package/dist/_types/chains/marketplace.d.ts.map +0 -1
- package/dist/_types/clients/baseClient.d.ts +0 -4
- package/dist/_types/clients/baseClient.d.ts.map +0 -1
- package/dist/_types/clients/createPublicClient.d.ts +0 -25
- package/dist/_types/clients/createPublicClient.d.ts.map +0 -1
- package/dist/_types/clients/createWalletClient.d.ts +0 -25
- package/dist/_types/clients/createWalletClient.d.ts.map +0 -1
- package/dist/_types/clients/decorators/arkivPublic.d.ts +0 -134
- package/dist/_types/clients/decorators/arkivPublic.d.ts.map +0 -1
- package/dist/_types/clients/decorators/arkivWallet.d.ts +0 -177
- package/dist/_types/clients/decorators/arkivWallet.d.ts.map +0 -1
- package/dist/_types/consts.d.ts +0 -3
- package/dist/_types/consts.d.ts.map +0 -1
- package/dist/_types/index.d.ts +0 -11
- package/dist/_types/index.d.ts.map +0 -1
- package/dist/_types/query/engine.d.ts +0 -18
- package/dist/_types/query/engine.d.ts.map +0 -1
- package/dist/_types/query/errors.d.ts +0 -13
- package/dist/_types/query/errors.d.ts.map +0 -1
- package/dist/_types/query/index.d.ts +0 -5
- package/dist/_types/query/index.d.ts.map +0 -1
- package/dist/_types/query/predicate.d.ts +0 -111
- package/dist/_types/query/predicate.d.ts.map +0 -1
- package/dist/_types/query/queryBuilder.d.ts +0 -132
- package/dist/_types/query/queryBuilder.d.ts.map +0 -1
- package/dist/_types/query/queryResult.d.ts +0 -16
- package/dist/_types/query/queryResult.d.ts.map +0 -1
- package/dist/_types/types/attributes.d.ts +0 -5
- package/dist/_types/types/attributes.d.ts.map +0 -1
- package/dist/_types/types/entity.d.ts +0 -15
- package/dist/_types/types/entity.d.ts.map +0 -1
- package/dist/_types/types/events.d.ts +0 -30
- package/dist/_types/types/events.d.ts.map +0 -1
- package/dist/_types/types/index.d.ts +0 -5
- package/dist/_types/types/index.d.ts.map +0 -1
- package/dist/_types/types/mimeTypes.d.ts +0 -2
- package/dist/_types/types/mimeTypes.d.ts.map +0 -1
- package/dist/_types/types/rpcSchema.d.ts +0 -63
- package/dist/_types/types/rpcSchema.d.ts.map +0 -1
- package/dist/_types/types/txParams.d.ts +0 -14
- package/dist/_types/types/txParams.d.ts.map +0 -1
- package/dist/_types/utils/arkivTransactions.d.ts +0 -17
- package/dist/_types/utils/arkivTransactions.d.ts.map +0 -1
- package/dist/_types/utils/compression.d.ts +0 -3
- package/dist/_types/utils/compression.d.ts.map +0 -1
- package/dist/_types/utils/entities.d.ts +0 -4
- package/dist/_types/utils/entities.d.ts.map +0 -1
- package/dist/_types/utils/expirationTime.d.ts +0 -12
- package/dist/_types/utils/expirationTime.d.ts.map +0 -1
- package/dist/_types/utils/index.d.ts +0 -4
- package/dist/_types/utils/index.d.ts.map +0 -1
- package/dist/_types/utils/payload.d.ts +0 -3
- package/dist/_types/utils/payload.d.ts.map +0 -1
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
import { beforeEach, describe, expect, jest, test } from "bun:test"
|
|
2
|
+
import { Entity } from "../types/entity"
|
|
3
|
+
import { NoCursorOrLimitError, NoMoreResultsError } from "./errors"
|
|
4
|
+
import type { QueryBuilder } from "./queryBuilder"
|
|
5
|
+
import { QueryResult } from "./queryResult"
|
|
6
|
+
|
|
7
|
+
describe("QueryResult", () => {
|
|
8
|
+
let mockQueryBuilder: QueryBuilder
|
|
9
|
+
let mockEntities: Entity[]
|
|
10
|
+
|
|
11
|
+
beforeEach(() => {
|
|
12
|
+
// Create mock entities
|
|
13
|
+
mockEntities = [
|
|
14
|
+
new Entity("0x1" as const, "0xowner1" as const, 1000n, new Uint8Array([1]), []),
|
|
15
|
+
new Entity("0x2" as const, "0xowner2" as const, 2000n, new Uint8Array([2]), []),
|
|
16
|
+
new Entity("0x3" as const, "0xowner3" as const, 3000n, new Uint8Array([3]), []),
|
|
17
|
+
]
|
|
18
|
+
|
|
19
|
+
// Create mock query builder
|
|
20
|
+
mockQueryBuilder = {
|
|
21
|
+
cursor: jest.fn().mockReturnThis(),
|
|
22
|
+
fetch: jest.fn(),
|
|
23
|
+
} as unknown as QueryBuilder
|
|
24
|
+
})
|
|
25
|
+
|
|
26
|
+
describe("constructor", () => {
|
|
27
|
+
test("creates QueryResult with entities and query builder", () => {
|
|
28
|
+
const result = new QueryResult(
|
|
29
|
+
mockEntities,
|
|
30
|
+
mockQueryBuilder,
|
|
31
|
+
undefined,
|
|
32
|
+
undefined,
|
|
33
|
+
undefined,
|
|
34
|
+
)
|
|
35
|
+
|
|
36
|
+
expect(result.entities).toEqual(mockEntities)
|
|
37
|
+
expect(result.entities).toHaveLength(3)
|
|
38
|
+
})
|
|
39
|
+
|
|
40
|
+
test("creates QueryResult with limit and cursor", () => {
|
|
41
|
+
const result = new QueryResult(mockEntities, mockQueryBuilder, "0xABC123", 10, undefined)
|
|
42
|
+
|
|
43
|
+
expect(result.entities).toEqual(mockEntities)
|
|
44
|
+
})
|
|
45
|
+
|
|
46
|
+
test("creates QueryResult with undefined limit and cursor", () => {
|
|
47
|
+
const result = new QueryResult(
|
|
48
|
+
mockEntities,
|
|
49
|
+
mockQueryBuilder,
|
|
50
|
+
undefined,
|
|
51
|
+
undefined,
|
|
52
|
+
undefined,
|
|
53
|
+
)
|
|
54
|
+
|
|
55
|
+
expect(result.entities).toEqual(mockEntities)
|
|
56
|
+
})
|
|
57
|
+
|
|
58
|
+
test("creates QueryResult with empty entities array", () => {
|
|
59
|
+
const result = new QueryResult([], mockQueryBuilder, "0xABC123", 10, undefined)
|
|
60
|
+
|
|
61
|
+
expect(result.entities).toEqual([])
|
|
62
|
+
expect(result.entities).toHaveLength(0)
|
|
63
|
+
})
|
|
64
|
+
})
|
|
65
|
+
|
|
66
|
+
describe("next()", () => {
|
|
67
|
+
test("throws NoCursorOrLimitError when cursor is undefined", async () => {
|
|
68
|
+
const result = new QueryResult(mockEntities, mockQueryBuilder, undefined, 10, undefined)
|
|
69
|
+
|
|
70
|
+
await expect(result.next()).rejects.toThrow(NoCursorOrLimitError)
|
|
71
|
+
await expect(result.next()).rejects.toThrow("Cursor and limit must be defined to fetch next")
|
|
72
|
+
})
|
|
73
|
+
|
|
74
|
+
test("throws NoCursorOrLimitError when limit is undefined", async () => {
|
|
75
|
+
const result = new QueryResult(
|
|
76
|
+
mockEntities,
|
|
77
|
+
mockQueryBuilder,
|
|
78
|
+
"0xABC123",
|
|
79
|
+
undefined,
|
|
80
|
+
undefined,
|
|
81
|
+
)
|
|
82
|
+
|
|
83
|
+
await expect(result.next()).rejects.toThrow(NoCursorOrLimitError)
|
|
84
|
+
await expect(result.next()).rejects.toThrow("Cursor and limit must be defined to fetch next")
|
|
85
|
+
})
|
|
86
|
+
|
|
87
|
+
test("throws NoCursorOrLimitError when both cursor and limit are undefined", async () => {
|
|
88
|
+
const result = new QueryResult(
|
|
89
|
+
mockEntities,
|
|
90
|
+
mockQueryBuilder,
|
|
91
|
+
undefined,
|
|
92
|
+
undefined,
|
|
93
|
+
undefined,
|
|
94
|
+
)
|
|
95
|
+
|
|
96
|
+
await expect(result.next()).rejects.toThrow(NoCursorOrLimitError)
|
|
97
|
+
})
|
|
98
|
+
|
|
99
|
+
test("throws NoMoreResultsError when limit > entities.length", async () => {
|
|
100
|
+
// limit is 4 but we have 3 entities, so limit > entities.length triggers error
|
|
101
|
+
const result = new QueryResult(mockEntities, mockQueryBuilder, "0xABC123", 4, 123n)
|
|
102
|
+
|
|
103
|
+
await expect(result.next()).rejects.toThrow(NoMoreResultsError)
|
|
104
|
+
})
|
|
105
|
+
|
|
106
|
+
test("fetches next page when limit equals entities length", async () => {
|
|
107
|
+
const newEntities = [
|
|
108
|
+
new Entity("0x4" as const, "0xowner4" as const, 4000n, new Uint8Array([4]), []),
|
|
109
|
+
new Entity("0x5" as const, "0xowner5" as const, 5000n, new Uint8Array([5]), []),
|
|
110
|
+
new Entity("0x6" as const, "0xowner6" as const, 6000n, new Uint8Array([6]), []),
|
|
111
|
+
]
|
|
112
|
+
|
|
113
|
+
const mockFetch = jest.fn().mockResolvedValue({
|
|
114
|
+
entities: newEntities,
|
|
115
|
+
})
|
|
116
|
+
|
|
117
|
+
mockQueryBuilder.fetch = mockFetch
|
|
118
|
+
mockQueryBuilder.cursor = jest.fn().mockReturnValue(mockQueryBuilder)
|
|
119
|
+
|
|
120
|
+
// limit is 3 and we have 3 entities, so there might be more
|
|
121
|
+
const result = new QueryResult(mockEntities, mockQueryBuilder, "0xABC123", 3, undefined)
|
|
122
|
+
|
|
123
|
+
await result.next()
|
|
124
|
+
|
|
125
|
+
expect(mockQueryBuilder.cursor).toHaveBeenCalledWith("0xABC123")
|
|
126
|
+
expect(mockFetch).toHaveBeenCalled()
|
|
127
|
+
expect(result.entities).toEqual(newEntities)
|
|
128
|
+
})
|
|
129
|
+
|
|
130
|
+
test("updates offset correctly for multiple next calls", async () => {
|
|
131
|
+
const initialEntities = [
|
|
132
|
+
new Entity("0x1" as const, "0xowner1" as const, 1000n, new Uint8Array([1]), []),
|
|
133
|
+
new Entity("0x2" as const, "0xowner2" as const, 2000n, new Uint8Array([2]), []),
|
|
134
|
+
new Entity("0x3" as const, "0xowner3" as const, 3000n, new Uint8Array([3]), []),
|
|
135
|
+
]
|
|
136
|
+
|
|
137
|
+
const newEntities1 = [
|
|
138
|
+
new Entity("0x4" as const, "0xowner4" as const, 4000n, new Uint8Array([4]), []),
|
|
139
|
+
new Entity("0x5" as const, "0xowner5" as const, 5000n, new Uint8Array([5]), []),
|
|
140
|
+
new Entity("0x6" as const, "0xowner6" as const, 6000n, new Uint8Array([6]), []),
|
|
141
|
+
]
|
|
142
|
+
|
|
143
|
+
const newEntities2 = [
|
|
144
|
+
new Entity("0x7" as const, "0xowner7" as const, 7000n, new Uint8Array([7]), []),
|
|
145
|
+
new Entity("0x8" as const, "0xowner8" as const, 8000n, new Uint8Array([8]), []),
|
|
146
|
+
new Entity("0x9" as const, "0xowner9" as const, 9000n, new Uint8Array([9]), []),
|
|
147
|
+
]
|
|
148
|
+
|
|
149
|
+
const mockCursor = jest.fn().mockReturnValue(mockQueryBuilder)
|
|
150
|
+
const mockFetch = jest
|
|
151
|
+
.fn()
|
|
152
|
+
.mockResolvedValueOnce({
|
|
153
|
+
entities: newEntities1,
|
|
154
|
+
queryBuilder: mockQueryBuilder,
|
|
155
|
+
cursor: "0xABC123",
|
|
156
|
+
})
|
|
157
|
+
.mockResolvedValueOnce({
|
|
158
|
+
entities: newEntities2,
|
|
159
|
+
queryBuilder: mockQueryBuilder,
|
|
160
|
+
cursor: "0xABC123",
|
|
161
|
+
})
|
|
162
|
+
|
|
163
|
+
mockQueryBuilder.cursor = mockCursor
|
|
164
|
+
mockQueryBuilder.fetch = mockFetch
|
|
165
|
+
|
|
166
|
+
// limit = 3, entities.length = 3, so 3 < 3 is false (won't throw)
|
|
167
|
+
const result = new QueryResult(initialEntities, mockQueryBuilder, "0xABC123", 3, undefined)
|
|
168
|
+
|
|
169
|
+
// First next call - offset should be 0 + 3 = 3
|
|
170
|
+
await result.next()
|
|
171
|
+
expect(mockCursor).toHaveBeenCalledWith("0xABC123")
|
|
172
|
+
expect(result.entities).toEqual(newEntities1)
|
|
173
|
+
|
|
174
|
+
// Second next call - offset should be 3 + 3 = 6
|
|
175
|
+
await result.next()
|
|
176
|
+
expect(mockCursor).toHaveBeenCalledWith("0xABC123")
|
|
177
|
+
expect(result.entities).toEqual(newEntities2)
|
|
178
|
+
})
|
|
179
|
+
|
|
180
|
+
test("fetches next page when limit is greater than entities length", async () => {
|
|
181
|
+
// limit is 5 but only 3 entities (5 > 3) so there is no more results
|
|
182
|
+
// so NoMoreResultsError is thrown
|
|
183
|
+
const result = new QueryResult(mockEntities, mockQueryBuilder, "0xABC123", 5, undefined)
|
|
184
|
+
|
|
185
|
+
await expect(result.next()).rejects.toThrow(NoMoreResultsError)
|
|
186
|
+
})
|
|
187
|
+
})
|
|
188
|
+
|
|
189
|
+
describe("pagination flow", () => {
|
|
190
|
+
test("simulates complete pagination: next -> next -> previous -> previous", async () => {
|
|
191
|
+
const page1 = [
|
|
192
|
+
new Entity("0x1" as const, "0xowner1" as const, 1000n, new Uint8Array([1]), []),
|
|
193
|
+
]
|
|
194
|
+
const page2 = [
|
|
195
|
+
new Entity("0x2" as const, "0xowner2" as const, 2000n, new Uint8Array([2]), []),
|
|
196
|
+
]
|
|
197
|
+
const page3 = [
|
|
198
|
+
new Entity("0x3" as const, "0xowner3" as const, 3000n, new Uint8Array([3]), []),
|
|
199
|
+
]
|
|
200
|
+
|
|
201
|
+
const mockCursor = jest.fn().mockReturnValue(mockQueryBuilder)
|
|
202
|
+
const mockFetch = jest
|
|
203
|
+
.fn()
|
|
204
|
+
.mockResolvedValueOnce({
|
|
205
|
+
entities: page2,
|
|
206
|
+
queryBuilder: mockQueryBuilder,
|
|
207
|
+
cursor: "0xABC123",
|
|
208
|
+
}) // first next
|
|
209
|
+
.mockResolvedValueOnce({
|
|
210
|
+
entities: page3,
|
|
211
|
+
queryBuilder: mockQueryBuilder,
|
|
212
|
+
cursor: "0xABC123",
|
|
213
|
+
}) // second next
|
|
214
|
+
.mockResolvedValueOnce({
|
|
215
|
+
entities: page2,
|
|
216
|
+
queryBuilder: mockQueryBuilder,
|
|
217
|
+
cursor: "0xABC123",
|
|
218
|
+
}) // first previous
|
|
219
|
+
.mockResolvedValueOnce({
|
|
220
|
+
entities: page1,
|
|
221
|
+
queryBuilder: mockQueryBuilder,
|
|
222
|
+
cursor: "0xABC123",
|
|
223
|
+
}) // second previous
|
|
224
|
+
|
|
225
|
+
mockQueryBuilder.cursor = mockCursor
|
|
226
|
+
mockQueryBuilder.fetch = mockFetch
|
|
227
|
+
|
|
228
|
+
const result = new QueryResult(page1, mockQueryBuilder, "0xABC123", 1, undefined)
|
|
229
|
+
|
|
230
|
+
// Start at page 1 (offset 0)
|
|
231
|
+
expect(result.entities).toEqual(page1)
|
|
232
|
+
|
|
233
|
+
// Next to page 2 (offset 1)
|
|
234
|
+
await result.next()
|
|
235
|
+
expect(mockCursor).toHaveBeenCalledWith("0xABC123")
|
|
236
|
+
expect(result.entities).toEqual(page2)
|
|
237
|
+
|
|
238
|
+
// Next to page 3 (offset 2)
|
|
239
|
+
await result.next()
|
|
240
|
+
expect(mockCursor).toHaveBeenCalledWith("0xABC123")
|
|
241
|
+
expect(result.entities).toEqual(page3)
|
|
242
|
+
})
|
|
243
|
+
|
|
244
|
+
test("There is another page to fetch when limit < entities.length", async () => {
|
|
245
|
+
// limit is 2 but 3 entities, so 2 < 3 there is another page to fetch
|
|
246
|
+
const mockCursor = jest.fn().mockReturnValue(mockQueryBuilder)
|
|
247
|
+
const mockFetch = jest
|
|
248
|
+
.fn()
|
|
249
|
+
.mockResolvedValueOnce({
|
|
250
|
+
entities: mockEntities,
|
|
251
|
+
queryBuilder: mockQueryBuilder,
|
|
252
|
+
cursor: "0xABC123",
|
|
253
|
+
})
|
|
254
|
+
.mockResolvedValueOnce({
|
|
255
|
+
entities: mockEntities,
|
|
256
|
+
queryBuilder: mockQueryBuilder,
|
|
257
|
+
cursor: "0xABC123",
|
|
258
|
+
})
|
|
259
|
+
|
|
260
|
+
mockQueryBuilder.cursor = mockCursor
|
|
261
|
+
mockQueryBuilder.fetch = mockFetch
|
|
262
|
+
|
|
263
|
+
const result = new QueryResult(mockEntities, mockQueryBuilder, "0xABC123", 2, undefined)
|
|
264
|
+
|
|
265
|
+
await result.next()
|
|
266
|
+
expect(mockCursor).toHaveBeenCalledWith("0xABC123")
|
|
267
|
+
expect(result.entities).toEqual(mockEntities)
|
|
268
|
+
})
|
|
269
|
+
})
|
|
270
|
+
})
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { describe, expect, it } from "bun:test"
|
|
2
|
+
import { compress, decompress } from "./compression"
|
|
3
|
+
|
|
4
|
+
describe("compression", () => {
|
|
5
|
+
it("should compress data", async () => {
|
|
6
|
+
const originalData = new Uint8Array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
|
|
7
|
+
const compressed = await compress(originalData)
|
|
8
|
+
|
|
9
|
+
expect(compressed).toBeInstanceOf(Uint8Array)
|
|
10
|
+
expect(compressed.length).toBeGreaterThan(0)
|
|
11
|
+
// Compressed data should be different from original
|
|
12
|
+
expect(compressed).not.toEqual(originalData)
|
|
13
|
+
})
|
|
14
|
+
|
|
15
|
+
it("should compress data with large payload into smaller size", async () => {
|
|
16
|
+
const originalData = new Uint8Array(1000).fill(1)
|
|
17
|
+
const compressed = await compress(originalData)
|
|
18
|
+
|
|
19
|
+
expect(compressed).toBeInstanceOf(Uint8Array)
|
|
20
|
+
expect(compressed.length).toBeGreaterThan(0)
|
|
21
|
+
expect(compressed.length).toBeLessThan(originalData.length)
|
|
22
|
+
})
|
|
23
|
+
|
|
24
|
+
it("should decompress data", async () => {
|
|
25
|
+
const originalData = new Uint8Array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
|
|
26
|
+
const compressed = await compress(originalData)
|
|
27
|
+
const decompressed = await decompress(compressed)
|
|
28
|
+
|
|
29
|
+
expect(decompressed).toBeInstanceOf(Uint8Array)
|
|
30
|
+
expect(decompressed).toEqual(originalData)
|
|
31
|
+
})
|
|
32
|
+
})
|
package/src/utils/compression.ts
CHANGED
|
@@ -1,21 +1,48 @@
|
|
|
1
|
-
|
|
1
|
+
// src/utils/compression.ts
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
import type { BrotliWasmType } from "brotli-wasm"
|
|
4
|
+
import brotliPromise from "brotli-wasm"
|
|
5
|
+
|
|
6
|
+
let brotli: BrotliWasmType | null = null
|
|
7
|
+
|
|
8
|
+
async function getBrotli(): Promise<BrotliWasmType | null> {
|
|
9
|
+
if (brotli) return brotli
|
|
10
|
+
|
|
11
|
+
if (!brotliPromise) {
|
|
12
|
+
console.debug("Importing brotli-wasm")
|
|
13
|
+
try {
|
|
14
|
+
console.debug("Importing brotli-wasm as module")
|
|
15
|
+
brotli = await brotliPromise
|
|
16
|
+
console.debug("Imported brotli-wasm as module", brotli)
|
|
17
|
+
} catch (error) {
|
|
18
|
+
console.error("Error importing brotli-wasm", error)
|
|
19
|
+
console.debug("Importing brotli-wasm as require")
|
|
20
|
+
brotli = require("brotli-wasm")
|
|
21
|
+
console.debug("Imported brotli-wasm as require", brotli)
|
|
22
|
+
}
|
|
8
23
|
}
|
|
24
|
+
|
|
25
|
+
brotli = await brotliPromise
|
|
26
|
+
return brotli
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function compress(data: Uint8Array): Promise<Uint8Array> {
|
|
30
|
+
const brotliInstance = await getBrotli()
|
|
9
31
|
console.debug(`Compressing data (size: ${data.length})`)
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
32
|
+
if (!brotliInstance) {
|
|
33
|
+
console.warn("Brotli instance not found, not compressing data")
|
|
34
|
+
return data
|
|
35
|
+
}
|
|
36
|
+
const brotliCompressed = brotliInstance.compress(data)
|
|
37
|
+
console.debug(`Brotli compressed data (size: ${brotliCompressed.length})`)
|
|
38
|
+
return brotliCompressed
|
|
13
39
|
}
|
|
14
40
|
|
|
15
41
|
export async function decompress(data: Uint8Array): Promise<Uint8Array> {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
42
|
+
const brotliInstance = await getBrotli()
|
|
43
|
+
if (!brotliInstance) {
|
|
44
|
+
console.warn("Brotli instance not found, not decompressing data")
|
|
45
|
+
return data
|
|
19
46
|
}
|
|
20
|
-
return
|
|
47
|
+
return brotliInstance.decompress(data)
|
|
21
48
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/accounts/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("viem/accounts"), exports);
|
|
18
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/accounts/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA6B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"buildQuery.d.ts","sourceRoot":"","sources":["../../../../src/actions/public/buildQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEvD,wBAAsB,UAAU,CAAC,MAAM,EAAE,WAAW,yBAEnD"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.buildQuery = buildQuery;
|
|
4
|
-
const queryBuilder_1 = require("../../query/queryBuilder");
|
|
5
|
-
async function buildQuery(client) {
|
|
6
|
-
return new queryBuilder_1.QueryBuilder(client);
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=buildQuery.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"buildQuery.js","sourceRoot":"","sources":["../../../../src/actions/public/buildQuery.ts"],"names":[],"mappings":";;AAGA,gCAEC;AAJD,2DAAuD;AAEhD,KAAK,UAAU,UAAU,CAAC,MAAmB;IAClD,OAAO,IAAI,2BAAY,CAAC,MAAM,CAAC,CAAA;AACjC,CAAC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { ArkivClient } from "../../clients/baseClient";
|
|
2
|
-
export type GetBlockTimingReturnType = {
|
|
3
|
-
currentBlock: bigint;
|
|
4
|
-
currentBlockTime: number;
|
|
5
|
-
blockDuration: number;
|
|
6
|
-
};
|
|
7
|
-
export declare function getBlockTiming(client: ArkivClient): Promise<{
|
|
8
|
-
currentBlock: bigint;
|
|
9
|
-
currentBlockTime: number;
|
|
10
|
-
blockDuration: number;
|
|
11
|
-
}>;
|
|
12
|
-
//# sourceMappingURL=getBlockTiming.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getBlockTiming.d.ts","sourceRoot":"","sources":["../../../../src/actions/public/getBlockTiming.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAE3D,MAAM,MAAM,wBAAwB,GAAG;IACrC,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;IACxB,aAAa,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,WAAW;;;;GAWvD"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getBlockTiming = getBlockTiming;
|
|
4
|
-
async function getBlockTiming(client) {
|
|
5
|
-
const blockTiming = await client.request({
|
|
6
|
-
method: "arkiv_getBlockTiming",
|
|
7
|
-
params: [],
|
|
8
|
-
});
|
|
9
|
-
console.debug("Block timing", blockTiming);
|
|
10
|
-
return {
|
|
11
|
-
currentBlock: blockTiming.current_block,
|
|
12
|
-
currentBlockTime: blockTiming.current_block_time,
|
|
13
|
-
blockDuration: blockTiming.duration,
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=getBlockTiming.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getBlockTiming.js","sourceRoot":"","sources":["../../../../src/actions/public/getBlockTiming.ts"],"names":[],"mappings":";;AAQA,wCAWC;AAXM,KAAK,UAAU,cAAc,CAAC,MAAmB;IACtD,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QACvC,MAAM,EAAE,sBAAsB;QAC9B,MAAM,EAAE,EAAE;KACX,CAAC,CAAA;IACF,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,WAAW,CAAC,CAAA;IAC1C,OAAO;QACL,YAAY,EAAE,WAAW,CAAC,aAAa;QACvC,gBAAgB,EAAE,WAAW,CAAC,kBAAkB;QAChD,aAAa,EAAE,WAAW,CAAC,QAAQ;KACpC,CAAA;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getEntity.d.ts","sourceRoot":"","sources":["../../../../src/actions/public/getEntity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAI3D,wBAAsB,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,mCAY5D"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getEntity = getEntity;
|
|
4
|
-
const errors_1 = require("../../query/errors");
|
|
5
|
-
const entities_1 = require("../../utils/entities");
|
|
6
|
-
async function getEntity(client, key) {
|
|
7
|
-
const result = await client.request({
|
|
8
|
-
method: "arkiv_query",
|
|
9
|
-
params: [`$key = ${key}`],
|
|
10
|
-
});
|
|
11
|
-
console.debug("GetEntity result", result);
|
|
12
|
-
if (!result.data) {
|
|
13
|
-
throw new errors_1.NoEntityFoundError();
|
|
14
|
-
}
|
|
15
|
-
return (0, entities_1.entityFromRpcResult)(result.data[0]);
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=getEntity.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getEntity.js","sourceRoot":"","sources":["../../../../src/actions/public/getEntity.ts"],"names":[],"mappings":";;AAKA,8BAYC;AAfD,+CAAuD;AACvD,mDAA0D;AAEnD,KAAK,UAAU,SAAS,CAAC,MAAmB,EAAE,GAAQ;IAC3D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC;KAC1B,CAAC,CAAA;IACF,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAA;IAEzC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,2BAAkB,EAAE,CAAA;IAChC,CAAC;IAED,OAAO,IAAA,8BAAmB,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;AAC5C,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getEntityCount.d.ts","sourceRoot":"","sources":["../../../../src/actions/public/getEntityCount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAE3D,wBAAsB,cAAc,CAAC,MAAM,EAAE,WAAW,mBAOvD"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getEntityCount = getEntityCount;
|
|
4
|
-
async function getEntityCount(client) {
|
|
5
|
-
const count = await client.request({
|
|
6
|
-
method: "arkiv_getEntityCount",
|
|
7
|
-
params: [],
|
|
8
|
-
});
|
|
9
|
-
return count;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=getEntityCount.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getEntityCount.js","sourceRoot":"","sources":["../../../../src/actions/public/getEntityCount.ts"],"names":[],"mappings":";;AAEA,wCAOC;AAPM,KAAK,UAAU,cAAc,CAAC,MAAmB;IACtD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QACjC,MAAM,EAAE,sBAAsB;QAC9B,MAAM,EAAE,EAAE;KACX,CAAC,CAAA;IAEF,OAAO,KAAK,CAAA;AACd,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../src/actions/public/query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAG3D,wBAAsB,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,qCAS7D"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.query = query;
|
|
4
|
-
const entities_1 = require("../../utils/entities");
|
|
5
|
-
async function query(client, query) {
|
|
6
|
-
const result = await client.request({
|
|
7
|
-
method: "arkiv_query",
|
|
8
|
-
params: [query],
|
|
9
|
-
});
|
|
10
|
-
const entities = await Promise.all(result.data.map((entity) => (0, entities_1.entityFromRpcResult)(entity)));
|
|
11
|
-
return entities;
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=query.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../src/actions/public/query.ts"],"names":[],"mappings":";;AAGA,sBASC;AAXD,mDAA0D;AAEnD,KAAK,UAAU,KAAK,CAAC,MAAmB,EAAE,KAAa;IAC5D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,CAAC,KAAK,CAAC;KAChB,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAA,8BAAmB,EAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAE5F,OAAO,QAAQ,CAAA;AACjB,CAAC"}
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
import type { ArkivClient } from "../../clients/baseClient";
|
|
2
|
-
import type { OnEntityCreatedEvent, OnEntityDeletedEvent, OnEntityExpiredEvent, OnEntityExpiresInExtendedEvent, OnEntityUpdatedEvent } from "../../types/events";
|
|
3
|
-
export declare const arkivABI: readonly [{
|
|
4
|
-
readonly name: "ArkivEntityCreated";
|
|
5
|
-
readonly type: "event";
|
|
6
|
-
readonly inputs: readonly [{
|
|
7
|
-
readonly type: "uint256";
|
|
8
|
-
readonly name: "entityKey";
|
|
9
|
-
readonly indexed: true;
|
|
10
|
-
}, {
|
|
11
|
-
readonly type: "address";
|
|
12
|
-
readonly name: "ownerAddress";
|
|
13
|
-
readonly indexed: true;
|
|
14
|
-
}, {
|
|
15
|
-
readonly type: "uint256";
|
|
16
|
-
readonly name: "expirationBlock";
|
|
17
|
-
}, {
|
|
18
|
-
readonly type: "uint256";
|
|
19
|
-
readonly name: "cost";
|
|
20
|
-
}];
|
|
21
|
-
}, {
|
|
22
|
-
readonly name: "ArkivEntityUpdated";
|
|
23
|
-
readonly type: "event";
|
|
24
|
-
readonly inputs: readonly [{
|
|
25
|
-
readonly type: "uint256";
|
|
26
|
-
readonly name: "entityKey";
|
|
27
|
-
readonly indexed: true;
|
|
28
|
-
}, {
|
|
29
|
-
readonly type: "address";
|
|
30
|
-
readonly name: "ownerAddress";
|
|
31
|
-
readonly indexed: true;
|
|
32
|
-
}, {
|
|
33
|
-
readonly type: "uint256";
|
|
34
|
-
readonly name: "oldExpirationBlock";
|
|
35
|
-
}, {
|
|
36
|
-
readonly type: "uint256";
|
|
37
|
-
readonly name: "newExpirationBlock";
|
|
38
|
-
}, {
|
|
39
|
-
readonly type: "uint256";
|
|
40
|
-
readonly name: "cost";
|
|
41
|
-
}];
|
|
42
|
-
}, {
|
|
43
|
-
readonly name: "ArkivEntityExpired";
|
|
44
|
-
readonly type: "event";
|
|
45
|
-
readonly inputs: readonly [{
|
|
46
|
-
readonly type: "uint256";
|
|
47
|
-
readonly name: "entityKey";
|
|
48
|
-
readonly indexed: true;
|
|
49
|
-
}, {
|
|
50
|
-
readonly type: "address";
|
|
51
|
-
readonly name: "ownerAddress";
|
|
52
|
-
readonly indexed: true;
|
|
53
|
-
}];
|
|
54
|
-
}, {
|
|
55
|
-
readonly name: "ArkivEntityDeleted";
|
|
56
|
-
readonly type: "event";
|
|
57
|
-
readonly inputs: readonly [{
|
|
58
|
-
readonly type: "uint256";
|
|
59
|
-
readonly name: "entityKey";
|
|
60
|
-
readonly indexed: true;
|
|
61
|
-
}, {
|
|
62
|
-
readonly type: "address";
|
|
63
|
-
readonly name: "ownerAddress";
|
|
64
|
-
readonly indexed: true;
|
|
65
|
-
}];
|
|
66
|
-
}, {
|
|
67
|
-
readonly name: "ArkivEntityBTLExtended";
|
|
68
|
-
readonly type: "event";
|
|
69
|
-
readonly inputs: readonly [{
|
|
70
|
-
readonly type: "uint256";
|
|
71
|
-
readonly name: "entityKey";
|
|
72
|
-
readonly indexed: true;
|
|
73
|
-
}, {
|
|
74
|
-
readonly type: "address";
|
|
75
|
-
readonly name: "ownerAddress";
|
|
76
|
-
readonly indexed: true;
|
|
77
|
-
}, {
|
|
78
|
-
readonly type: "uint256";
|
|
79
|
-
readonly name: "oldExpirationBlock";
|
|
80
|
-
}, {
|
|
81
|
-
readonly type: "uint256";
|
|
82
|
-
readonly name: "newExpirationBlock";
|
|
83
|
-
}, {
|
|
84
|
-
readonly type: "uint256";
|
|
85
|
-
readonly name: "cost";
|
|
86
|
-
}];
|
|
87
|
-
}];
|
|
88
|
-
export declare function subscribeEntityEvents(client: ArkivClient, { onError, onEntityCreated, onEntityUpdated, onEntityDeleted, onEntityExpired, onEntityExpiresInExtended, }: {
|
|
89
|
-
onError: ((error: Error) => void) | undefined;
|
|
90
|
-
onEntityCreated?: ((event: OnEntityCreatedEvent) => void) | undefined;
|
|
91
|
-
onEntityUpdated?: ((event: OnEntityUpdatedEvent) => void) | undefined;
|
|
92
|
-
onEntityDeleted?: ((event: OnEntityDeletedEvent) => void) | undefined;
|
|
93
|
-
onEntityExpired?: ((event: OnEntityExpiredEvent) => void) | undefined;
|
|
94
|
-
onEntityExpiresInExtended?: ((event: OnEntityExpiresInExtendedEvent) => void) | undefined;
|
|
95
|
-
}, pollingInterval?: number, fromBlock?: bigint): Promise<() => void>;
|
|
96
|
-
//# sourceMappingURL=subscribeEntityEvents.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"subscribeEntityEvents.d.ts","sourceRoot":"","sources":["../../../../src/actions/public/subscribeEntityEvents.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAE3D,OAAO,KAAK,EACV,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,8BAA8B,EAC9B,oBAAoB,EACrB,MAAM,oBAAoB,CAAA;AAE3B,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMnB,CAAA;AAEF,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,WAAW,EACnB,EACE,OAAO,EACP,eAAe,EACf,eAAe,EACf,eAAe,EACf,eAAe,EACf,yBAAyB,GAC1B,EAAE;IACD,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAC7C,eAAe,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IACrE,eAAe,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IACrE,eAAe,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IACrE,eAAe,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IACrE,yBAAyB,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,8BAA8B,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;CAC1F,EACD,eAAe,CAAC,EAAE,MAAM,EACxB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,IAAI,CAAC,CAkErB"}
|