@opendatalabs/vana-sdk 0.1.0-alpha.d7fc764 → 0.1.0-alpha.dba79a3
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/dist/__tests__/waitForTransactionEvents.test.d.ts +1 -0
- package/dist/browser.cjs.map +1 -1
- package/dist/browser.d.ts +36 -2
- package/dist/browser.js.map +1 -1
- package/dist/chains/definitions.cjs +9 -6
- package/dist/chains/definitions.cjs.map +1 -1
- package/dist/chains/definitions.d.ts +9 -11
- package/dist/chains/definitions.js +9 -6
- package/dist/chains/definitions.js.map +1 -1
- package/dist/chains/index.cjs.map +1 -1
- package/dist/chains/index.d.ts +34 -2
- package/dist/chains/index.js.map +1 -1
- package/dist/chains.browser.d.ts +8 -2
- package/dist/chains.d.ts +8 -2
- package/dist/chains.node.d.ts +8 -2
- package/dist/config/addresses.d.ts +8 -24
- package/dist/config/chains.cjs.map +1 -1
- package/dist/config/chains.d.ts +108 -13
- package/dist/config/chains.js.map +1 -1
- package/dist/config/default-services.cjs +60 -0
- package/dist/config/default-services.cjs.map +1 -0
- package/dist/config/default-services.d.ts +46 -0
- package/dist/config/default-services.js +33 -0
- package/dist/config/default-services.js.map +1 -0
- package/dist/config/default-services.test.d.ts +1 -0
- package/dist/config/features.d.ts +1 -3
- package/dist/config/tests/addresses.test.d.ts +1 -0
- package/dist/contracts/contractController.cjs +3 -3
- package/dist/contracts/contractController.cjs.map +1 -1
- package/dist/contracts/contractController.d.ts +77 -38
- package/dist/contracts/contractController.js +4 -7
- package/dist/contracts/contractController.js.map +1 -1
- package/dist/contracts/tests/contractController.test.d.ts +1 -0
- package/dist/controllers/__tests__/data-consistency-integration.test.d.ts +7 -0
- package/dist/controllers/__tests__/operations.processQueue.test.d.ts +1 -0
- package/dist/controllers/__tests__/schemas-edge-cases.test.d.ts +1 -0
- package/dist/controllers/base.cjs +116 -0
- package/dist/controllers/base.cjs.map +1 -0
- package/dist/controllers/base.d.ts +94 -0
- package/dist/controllers/base.js +92 -0
- package/dist/controllers/base.js.map +1 -0
- package/dist/controllers/data-error-handling.test.d.ts +1 -0
- package/dist/controllers/data.cjs +827 -439
- package/dist/controllers/data.cjs.map +1 -1
- package/dist/controllers/data.d.ts +373 -254
- package/dist/controllers/data.js +840 -442
- package/dist/controllers/data.js.map +1 -1
- package/dist/controllers/operations.cjs +430 -0
- package/dist/controllers/operations.cjs.map +1 -0
- package/dist/controllers/operations.d.ts +229 -0
- package/dist/controllers/operations.js +406 -0
- package/dist/controllers/operations.js.map +1 -0
- package/dist/controllers/permissions.cjs +929 -483
- package/dist/controllers/permissions.cjs.map +1 -1
- package/dist/controllers/permissions.d.ts +1318 -25
- package/dist/controllers/permissions.js +929 -483
- package/dist/controllers/permissions.js.map +1 -1
- package/dist/controllers/protocol.cjs +15 -11
- package/dist/controllers/protocol.cjs.map +1 -1
- package/dist/controllers/protocol.d.ts +34 -63
- package/dist/controllers/protocol.js +15 -14
- package/dist/controllers/protocol.js.map +1 -1
- package/dist/controllers/schemas.cjs +100 -75
- package/dist/controllers/schemas.cjs.map +1 -1
- package/dist/controllers/schemas.d.ts +56 -74
- package/dist/controllers/schemas.js +100 -75
- package/dist/controllers/schemas.js.map +1 -1
- package/dist/controllers/server-additional.test.d.ts +1 -0
- package/dist/controllers/server.cjs +32 -25
- package/dist/controllers/server.cjs.map +1 -1
- package/dist/controllers/server.d.ts +53 -71
- package/dist/controllers/server.js +32 -25
- package/dist/controllers/server.js.map +1 -1
- package/dist/core/__tests__/health.test.d.ts +1 -0
- package/dist/core/__tests__/inMemoryNonceManager.test.d.ts +1 -0
- package/dist/core/__tests__/nonceManager.test.d.ts +1 -0
- package/dist/core/__tests__/pollingManager.test.d.ts +4 -0
- package/dist/core/apiClient.cjs +68 -15
- package/dist/core/apiClient.cjs.map +1 -1
- package/dist/core/apiClient.d.ts +137 -16
- package/dist/core/apiClient.js +72 -22
- package/dist/core/apiClient.js.map +1 -1
- package/dist/core/client.cjs +7 -7
- package/dist/core/client.cjs.map +1 -1
- package/dist/core/client.d.ts +6 -9
- package/dist/core/client.js +7 -7
- package/dist/core/client.js.map +1 -1
- package/dist/core/core.test.d.ts +1 -0
- package/dist/core/generics.cjs +41 -12
- package/dist/core/generics.cjs.map +1 -1
- package/dist/core/generics.d.ts +104 -19
- package/dist/core/generics.js +52 -32
- package/dist/core/generics.js.map +1 -1
- package/dist/core/health.cjs +289 -0
- package/dist/core/health.cjs.map +1 -0
- package/dist/core/health.d.ts +143 -0
- package/dist/core/health.js +265 -0
- package/dist/core/health.js.map +1 -0
- package/dist/core/inMemoryNonceManager.cjs +138 -0
- package/dist/core/inMemoryNonceManager.cjs.map +1 -0
- package/dist/core/inMemoryNonceManager.d.ts +69 -0
- package/dist/core/inMemoryNonceManager.js +114 -0
- package/dist/core/inMemoryNonceManager.js.map +1 -0
- package/dist/core/nonceManager.cjs +304 -0
- package/dist/core/nonceManager.cjs.map +1 -0
- package/dist/core/nonceManager.d.ts +116 -0
- package/dist/core/nonceManager.js +280 -0
- package/dist/core/nonceManager.js.map +1 -0
- package/dist/core/pollingManager.cjs +292 -0
- package/dist/core/pollingManager.cjs.map +1 -0
- package/dist/core/pollingManager.d.ts +120 -0
- package/dist/core/pollingManager.js +268 -0
- package/dist/core/pollingManager.js.map +1 -0
- package/dist/core/tests/apiClient.test.d.ts +1 -0
- package/dist/core/tests/client.test.d.ts +1 -0
- package/dist/core/tests/generics.test.d.ts +1 -0
- package/dist/core.cjs +152 -61
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.ts +50 -67
- package/dist/core.js +164 -86
- package/dist/core.js.map +1 -1
- package/dist/crypto/ecies/__tests__/base.test.d.ts +4 -0
- package/dist/crypto/ecies/__tests__/compatibility.test.d.ts +8 -0
- package/dist/crypto/ecies/__tests__/constants.test.d.ts +4 -0
- package/dist/crypto/ecies/__tests__/native-parity.test.d.ts +7 -0
- package/dist/crypto/ecies/__tests__/normalization.test.d.ts +1 -0
- package/dist/crypto/ecies/__tests__/test-vectors.d.ts +2 -4
- package/dist/crypto/ecies/base.cjs +20 -6
- package/dist/crypto/ecies/base.cjs.map +1 -1
- package/dist/crypto/ecies/base.d.ts +2 -5
- package/dist/crypto/ecies/base.js +28 -18
- package/dist/crypto/ecies/base.js.map +1 -1
- package/dist/crypto/ecies/browser.cjs +2 -1
- package/dist/crypto/ecies/browser.cjs.map +1 -1
- package/dist/crypto/ecies/browser.d.ts +2 -7
- package/dist/crypto/ecies/browser.js +2 -1
- package/dist/crypto/ecies/browser.js.map +1 -1
- package/dist/crypto/ecies/constants.d.ts +7 -9
- package/dist/crypto/ecies/index.d.ts +8 -1
- package/dist/crypto/ecies/interface.cjs +4 -5
- package/dist/crypto/ecies/interface.cjs.map +1 -1
- package/dist/crypto/ecies/interface.d.ts +9 -11
- package/dist/crypto/ecies/interface.js +4 -5
- package/dist/crypto/ecies/interface.js.map +1 -1
- package/dist/crypto/ecies/node.cjs +3 -2
- package/dist/crypto/ecies/node.cjs.map +1 -1
- package/dist/crypto/ecies/node.d.ts +2 -7
- package/dist/crypto/ecies/node.js +11 -16
- package/dist/crypto/ecies/node.js.map +1 -1
- package/dist/crypto/ecies/test-vectors/eccrypto-vectors.json +72 -0
- package/dist/crypto/ecies/utils.cjs +2 -41
- package/dist/crypto/ecies/utils.cjs.map +1 -1
- package/dist/crypto/ecies/utils.d.ts +3 -40
- package/dist/crypto/ecies/utils.js +1 -35
- package/dist/crypto/ecies/utils.js.map +1 -1
- package/dist/crypto/services/WalletKeyEncryptionService.cjs +2 -2
- package/dist/crypto/services/WalletKeyEncryptionService.cjs.map +1 -1
- package/dist/crypto/services/WalletKeyEncryptionService.d.ts +3 -7
- package/dist/crypto/services/WalletKeyEncryptionService.js +5 -9
- package/dist/crypto/services/WalletKeyEncryptionService.js.map +1 -1
- package/dist/crypto/services/WalletKeyEncryptionService.test.d.ts +1 -0
- package/dist/diagnostics.d.ts +1 -3
- package/dist/diagnostics.test.d.ts +1 -0
- package/dist/errors.cjs +45 -0
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.d.ts +117 -15
- package/dist/errors.js +46 -6
- package/dist/errors.js.map +1 -1
- package/dist/generated/abi/ComputeEngineImplementation.d.ts +2 -3
- package/dist/generated/abi/ComputeInstructionRegistryImplementation.d.ts +2 -3
- package/dist/generated/abi/DATFactoryImplementation.d.ts +2 -3
- package/dist/generated/abi/DATImplementation.d.ts +2 -3
- package/dist/generated/abi/DATPausableImplementation.d.ts +2 -3
- package/dist/generated/abi/DATVotesImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPPerformanceImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPRegistryImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPRegistryTreasuryImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPRewardDeployerImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPRewardSwapImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPRootImplementation.d.ts +1 -3
- package/dist/generated/abi/DLPTreasuryImplementation.d.ts +2 -3
- package/dist/generated/abi/DataLiquidityPoolImplementation.d.ts +1 -3
- package/dist/generated/abi/DataPortabilityGranteesImplementation.d.ts +2 -3
- package/dist/generated/abi/DataPortabilityPermissionsImplementation.d.ts +2 -3
- package/dist/generated/abi/DataPortabilityServersImplementation.d.ts +2 -3
- package/dist/generated/abi/DataRefinerRegistryImplementation.d.ts +2 -3
- package/dist/generated/abi/DataRegistryImplementation.cjs +13 -0
- package/dist/generated/abi/DataRegistryImplementation.cjs.map +1 -1
- package/dist/generated/abi/DataRegistryImplementation.d.ts +12 -3
- package/dist/generated/abi/DataRegistryImplementation.js +13 -0
- package/dist/generated/abi/DataRegistryImplementation.js.map +1 -1
- package/dist/generated/abi/QueryEngineImplementation.d.ts +2 -3
- package/dist/generated/abi/SwapHelperImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolDedicatedGpuImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolDedicatedStandardImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolEphemeralStandardImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolPersistentGpuImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolPersistentStandardImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolPhalaImplementation.d.ts +2 -3
- package/dist/generated/abi/VanaEpochImplementation.d.ts +2 -3
- package/dist/generated/abi/VanaPoolEntityImplementation.d.ts +2 -3
- package/dist/generated/abi/VanaPoolStakingImplementation.d.ts +2 -3
- package/dist/generated/abi/VanaPoolTreasuryImplementation.d.ts +2 -3
- package/dist/generated/abi/index.cjs +42 -0
- package/dist/generated/abi/index.cjs.map +1 -1
- package/dist/generated/abi/index.d.ts +47 -18
- package/dist/generated/abi/index.js +21 -0
- package/dist/generated/abi/index.js.map +1 -1
- package/dist/generated/event-types.cjs +17 -0
- package/dist/generated/event-types.cjs.map +1 -0
- package/dist/generated/event-types.d.ts +854 -0
- package/dist/generated/event-types.js +1 -0
- package/dist/generated/event-types.js.map +1 -0
- package/dist/generated/eventRegistry.cjs +3351 -0
- package/dist/generated/eventRegistry.cjs.map +1 -0
- package/dist/generated/eventRegistry.d.ts +14 -0
- package/dist/generated/eventRegistry.js +3326 -0
- package/dist/generated/eventRegistry.js.map +1 -0
- package/dist/generated/server/server-exports.d.ts +19 -21
- package/dist/generated/server/server.cjs.map +1 -1
- package/dist/generated/server/server.d.ts +113 -87
- package/dist/generated/subgraph.cjs +797 -32
- package/dist/generated/subgraph.cjs.map +1 -1
- package/dist/generated/subgraph.d.ts +464 -332
- package/dist/generated/subgraph.js +792 -32
- package/dist/generated/subgraph.js.map +1 -1
- package/dist/index.browser.d.ts +49 -73
- package/dist/index.browser.js +14 -0
- package/dist/index.browser.js.map +1 -1
- package/dist/index.cjs +3 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/index.node.cjs +31 -3
- package/dist/index.node.cjs.map +1 -1
- package/dist/index.node.d.ts +223 -64
- package/dist/index.node.js +28 -2
- package/dist/index.node.js.map +1 -1
- package/dist/lib/__tests__/redisAtomicStore.test.d.ts +1 -0
- package/dist/lib/redisAtomicStore.cjs +201 -0
- package/dist/lib/redisAtomicStore.cjs.map +1 -0
- package/dist/lib/redisAtomicStore.d.ts +120 -0
- package/dist/lib/redisAtomicStore.js +177 -0
- package/dist/lib/redisAtomicStore.js.map +1 -0
- package/dist/node.cjs.map +1 -1
- package/dist/node.d.ts +42 -2
- package/dist/node.js.map +1 -1
- package/dist/platform/browser-only.d.ts +5 -8
- package/dist/platform/browser-only.test.d.ts +1 -0
- package/dist/platform/browser-safe.d.ts +6 -9
- package/dist/platform/browser-safe.test.d.ts +1 -0
- package/dist/platform/browser.cjs +167 -8
- package/dist/platform/browser.cjs.map +1 -1
- package/dist/platform/browser.d.ts +235 -18
- package/dist/platform/browser.js +179 -29
- package/dist/platform/browser.js.map +1 -1
- package/dist/platform/browser.test.d.ts +1 -0
- package/dist/platform/index.d.ts +11 -5
- package/dist/platform/interface.cjs.map +1 -1
- package/dist/platform/interface.d.ts +289 -98
- package/dist/platform/node.cjs +163 -2
- package/dist/platform/node.cjs.map +1 -1
- package/dist/platform/node.d.ts +72 -13
- package/dist/platform/node.js +175 -21
- package/dist/platform/node.js.map +1 -1
- package/dist/platform/ports/openpgp-port.cjs +74 -0
- package/dist/platform/ports/openpgp-port.cjs.map +1 -0
- package/dist/platform/ports/openpgp-port.d.ts +13 -0
- package/dist/platform/ports/openpgp-port.js +59 -0
- package/dist/platform/ports/openpgp-port.js.map +1 -0
- package/dist/platform/ports/pgp-port.cjs +17 -0
- package/dist/platform/ports/pgp-port.cjs.map +1 -0
- package/dist/platform/ports/pgp-port.d.ts +35 -0
- package/dist/platform/ports/pgp-port.js +1 -0
- package/dist/platform/ports/pgp-port.js.map +1 -0
- package/dist/platform/shared/error-utils.d.ts +2 -4
- package/dist/platform/shared/pgp-utils.cjs +2 -2
- package/dist/platform/shared/pgp-utils.cjs.map +1 -1
- package/dist/platform/shared/pgp-utils.d.ts +3 -5
- package/dist/platform/shared/pgp-utils.js +2 -2
- package/dist/platform/shared/pgp-utils.js.map +1 -1
- package/dist/platform/shared/stream-utils.d.ts +1 -3
- package/dist/platform/utils.d.ts +6 -10
- package/dist/platform/utils.test.d.ts +1 -0
- package/dist/platform.browser.d.ts +9 -4
- package/dist/platform.d.ts +11 -5
- package/dist/platform.node.d.ts +10 -5
- package/dist/schemas/dataSchema.schema.json +53 -0
- package/dist/schemas/grantFile.schema.json +43 -0
- package/dist/server/relayerHandler.cjs +420 -0
- package/dist/server/relayerHandler.cjs.map +1 -0
- package/dist/server/relayerHandler.d.ts +69 -0
- package/dist/server/relayerHandler.js +396 -0
- package/dist/server/relayerHandler.js.map +1 -0
- package/dist/storage/index.d.ts +56 -10
- package/dist/storage/manager.cjs +114 -31
- package/dist/storage/manager.cjs.map +1 -1
- package/dist/storage/manager.d.ts +121 -30
- package/dist/storage/manager.js +113 -37
- package/dist/storage/manager.js.map +1 -1
- package/dist/storage/providers/callback-storage.cjs +89 -18
- package/dist/storage/providers/callback-storage.cjs.map +1 -1
- package/dist/storage/providers/callback-storage.d.ts +111 -28
- package/dist/storage/providers/callback-storage.js +89 -18
- package/dist/storage/providers/callback-storage.js.map +1 -1
- package/dist/storage/providers/google-drive.cjs +2 -2
- package/dist/storage/providers/google-drive.cjs.map +1 -1
- package/dist/storage/providers/google-drive.d.ts +3 -7
- package/dist/storage/providers/google-drive.js +4 -7
- package/dist/storage/providers/google-drive.js.map +1 -1
- package/dist/storage/providers/google-drive.test.d.ts +1 -0
- package/dist/storage/providers/ipfs.cjs +5 -5
- package/dist/storage/providers/ipfs.cjs.map +1 -1
- package/dist/storage/providers/ipfs.d.ts +3 -6
- package/dist/storage/providers/ipfs.js +7 -10
- package/dist/storage/providers/ipfs.js.map +1 -1
- package/dist/storage/providers/pinata.cjs +6 -6
- package/dist/storage/providers/pinata.cjs.map +1 -1
- package/dist/storage/providers/pinata.d.ts +17 -22
- package/dist/storage/providers/pinata.js +8 -11
- package/dist/storage/providers/pinata.js.map +1 -1
- package/dist/storage/tests/callbackStorage.test.d.ts +1 -0
- package/dist/storage/tests/googleDriveStorage.test.d.ts +1 -0
- package/dist/storage/tests/ipfsStorage.test.d.ts +1 -0
- package/dist/storage/tests/pinataStorage.test.d.ts +1 -0
- package/dist/storage/tests/storageManager.test.d.ts +1 -0
- package/dist/tests/abi.test.d.ts +1 -0
- package/dist/tests/chains-definitions.test.d.ts +1 -0
- package/dist/tests/core-encryption.test.d.ts +1 -0
- package/dist/tests/core-extended.test.d.ts +1 -0
- package/dist/tests/core-generics-coverage.test.d.ts +1 -0
- package/dist/tests/coverage-boost.test.d.ts +1 -0
- package/dist/tests/crypto-cross-platform-compatibility.test.d.ts +1 -0
- package/dist/tests/data-addfile-permissions-schema.test.d.ts +1 -0
- package/dist/tests/data-additional-methods.test.d.ts +1 -0
- package/dist/tests/data-controller-edge-cases.test.d.ts +1 -0
- package/dist/tests/data-ipfs-gateways.test.d.ts +1 -0
- package/dist/tests/data-relayer.test.d.ts +1 -0
- package/dist/tests/data-schema-validation.test.d.ts +1 -0
- package/dist/tests/data-simple-methods.test.d.ts +1 -0
- package/dist/tests/data.test.d.ts +1 -0
- package/dist/tests/demo-integration.test.d.ts +1 -0
- package/dist/tests/demo-trusted-server-integration.test.d.ts +1 -0
- package/dist/tests/download-relayer.test.d.ts +1 -0
- package/dist/tests/dual-mode-permissions.test.d.ts +1 -0
- package/dist/tests/dual-mode-trusted-servers.test.d.ts +1 -0
- package/dist/tests/encryption-correct-implementation.test.d.ts +1 -0
- package/dist/tests/encryption-coverage.test.d.ts +1 -0
- package/dist/tests/encryption-edge-cases.test.d.ts +1 -0
- package/dist/tests/encryption-utils-updated.test.d.ts +1 -0
- package/dist/tests/errors-coverage.test.d.ts +1 -0
- package/dist/tests/errors.test.d.ts +1 -0
- package/dist/tests/factories/mockFactory.d.ts +316 -0
- package/dist/tests/fakes/FakeStorageManager.d.ts +200 -0
- package/dist/tests/fakes/FakeStorageManager.test.d.ts +1 -0
- package/dist/tests/fakes/FakeWaitForTransactionEvents.d.ts +170 -0
- package/dist/tests/fakes/FakeWaitForTransactionEvents.test.d.ts +1 -0
- package/dist/tests/fakes/fake-pgp-port.d.ts +13 -0
- package/dist/tests/grantValidation-edge-cases.test.d.ts +1 -0
- package/dist/tests/grantValidation-unreachable-branch.test.d.ts +1 -0
- package/dist/tests/helper-methods.test.d.ts +1 -0
- package/dist/tests/helpers/platformTestHelpers.d.ts +106 -0
- package/dist/tests/helpers/typedMocks.d.ts +64 -0
- package/dist/tests/index-browser.test.d.ts +1 -0
- package/dist/tests/index-node.test.d.ts +1 -0
- package/dist/tests/index.test.d.ts +1 -0
- package/dist/tests/mocks/platformAdapter.d.ts +12 -0
- package/dist/tests/new-permissions-methods.test.d.ts +1 -0
- package/dist/tests/no-buffer-browser.test.d.ts +1 -0
- package/dist/tests/permissions-grantee.test.d.ts +1 -0
- package/dist/tests/permissions-revoke-relayer.test.d.ts +1 -0
- package/dist/tests/permissions-schema-validation.test.d.ts +1 -0
- package/dist/tests/permissions-server-files.test.d.ts +1 -0
- package/dist/tests/permissions-transaction-options.test.d.ts +1 -0
- package/dist/tests/permissions-trust-servers.test.d.ts +1 -0
- package/dist/tests/permissions.test.d.ts +1 -0
- package/dist/tests/personal.test.d.ts +1 -0
- package/dist/tests/platform-browser.test.d.ts +1 -0
- package/dist/tests/platform-crypto-expanded.test.d.ts +1 -0
- package/dist/tests/platform-crypto.test.d.ts +1 -0
- package/dist/tests/platform-index.test.d.ts +1 -0
- package/dist/tests/platform-node.test.d.ts +1 -0
- package/dist/tests/platform-shared-utils.test.d.ts +1 -0
- package/dist/tests/platform-updated.test.d.ts +1 -0
- package/dist/tests/protocol-additional-methods.test.d.ts +1 -0
- package/dist/tests/protocol.test.d.ts +1 -0
- package/dist/tests/read-only-mode.test.d.ts +1 -0
- package/dist/tests/relayer-integration.test.d.ts +1 -0
- package/dist/tests/relayer-unified.test.d.ts +1 -0
- package/dist/tests/schemas.test.d.ts +1 -0
- package/dist/tests/server-relayer-handler.test.d.ts +1 -0
- package/dist/tests/setup.d.ts +7 -0
- package/dist/tests/signatureFormatter.test.d.ts +1 -0
- package/dist/tests/trusted-server-queries.test.d.ts +1 -0
- package/dist/tests/typedDataConverter.test.d.ts +1 -0
- package/dist/tests/types-contracts.test.d.ts +1 -0
- package/dist/tests/types-data.test.d.ts +1 -0
- package/dist/tests/types-external-apis.test.d.ts +1 -0
- package/dist/tests/types-generics.test.d.ts +1 -0
- package/dist/tests/types-permissions.test.d.ts +1 -0
- package/dist/tests/types-upload-params.test.d.ts +1 -0
- package/dist/tests/types.test.d.ts +1 -0
- package/dist/tests/utils-formatters.test.d.ts +1 -0
- package/dist/tests/utils-grantFiles-edge-cases.test.d.ts +1 -0
- package/dist/tests/utils-grantFiles-validation.test.d.ts +1 -0
- package/dist/tests/utils-grantFiles.test.d.ts +1 -0
- package/dist/tests/utils-grantValidation-consolidated.test.d.ts +1 -0
- package/dist/tests/utils-grants.test.d.ts +1 -0
- package/dist/tests/utils-ipfs-additional.test.d.ts +1 -0
- package/dist/tests/utils-ipfs.test.d.ts +4 -0
- package/dist/tests/utils-schemaValidation.test.d.ts +1 -0
- package/dist/tests/vana.test.d.ts +1 -0
- package/dist/tests/wallet-crypto-compatibility.test.d.ts +1 -0
- package/dist/{chains.browser.cjs → types/atomicStore.cjs} +9 -15
- package/dist/types/atomicStore.cjs.map +1 -0
- package/dist/types/atomicStore.d.ts +236 -0
- package/dist/types/atomicStore.js +7 -0
- package/dist/types/atomicStore.js.map +1 -0
- package/dist/types/blockchain.cjs +17 -0
- package/dist/types/blockchain.cjs.map +1 -0
- package/dist/types/blockchain.d.ts +85 -0
- package/dist/types/blockchain.js +1 -0
- package/dist/types/blockchain.js.map +1 -0
- package/dist/types/chains-additional.test.d.ts +1 -0
- package/dist/types/chains.cjs.map +1 -1
- package/dist/types/chains.d.ts +80 -16
- package/dist/types/chains.js.map +1 -1
- package/dist/types/config.cjs +10 -0
- package/dist/types/config.cjs.map +1 -1
- package/dist/types/config.d.ts +236 -242
- package/dist/types/config.js +8 -0
- package/dist/types/config.js.map +1 -1
- package/dist/types/contracts.cjs.map +1 -1
- package/dist/types/contracts.d.ts +79 -18
- package/dist/types/controller-context.cjs +17 -0
- package/dist/types/controller-context.cjs.map +1 -0
- package/dist/types/controller-context.d.ts +68 -0
- package/dist/types/controller-context.js +1 -0
- package/dist/types/controller-context.js.map +1 -0
- package/dist/types/data.cjs.map +1 -1
- package/dist/types/data.d.ts +118 -49
- package/dist/types/external-apis.d.ts +10 -12
- package/dist/types/generics.cjs.map +1 -1
- package/dist/types/generics.d.ts +116 -48
- package/dist/types/index.cjs +5 -4
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.ts +48 -34
- package/dist/types/index.js +9 -2
- package/dist/types/index.js.map +1 -1
- package/dist/types/operationStore.cjs +17 -0
- package/dist/types/operationStore.cjs.map +1 -0
- package/dist/types/operationStore.d.ts +171 -0
- package/dist/types/operationStore.js +1 -0
- package/dist/types/operationStore.js.map +1 -0
- package/dist/types/operations.cjs +2 -2
- package/dist/types/operations.cjs.map +1 -1
- package/dist/types/operations.d.ts +164 -42
- package/dist/types/operations.js +2 -2
- package/dist/types/operations.js.map +1 -1
- package/dist/types/options.cjs +17 -0
- package/dist/types/options.cjs.map +1 -0
- package/dist/types/options.d.ts +308 -0
- package/dist/types/options.js +1 -0
- package/dist/types/options.js.map +1 -0
- package/dist/types/permissions.cjs.map +1 -1
- package/dist/types/permissions.d.ts +72 -78
- package/dist/types/personal.cjs.map +1 -1
- package/dist/types/personal.d.ts +137 -22
- package/dist/types/relayer.cjs.map +1 -1
- package/dist/types/relayer.d.ts +293 -50
- package/dist/types/storage.cjs.map +1 -1
- package/dist/types/storage.d.ts +15 -29
- package/dist/types/storage.js +2 -5
- package/dist/types/storage.js.map +1 -1
- package/dist/types/transactionResults.cjs.map +1 -1
- package/dist/types/transactionResults.d.ts +193 -25
- package/dist/types/utils.cjs.map +1 -1
- package/dist/types/utils.d.ts +20 -68
- package/dist/types.d.ts +4 -40
- package/dist/utils/__tests__/parseTransaction.test.d.ts +1 -0
- package/dist/utils/__tests__/pojo-serialization.test.d.ts +1 -0
- package/dist/utils/__tests__/signatureCache.test.d.ts +1 -0
- package/dist/utils/__tests__/subgraphConsistency.test.d.ts +4 -0
- package/dist/utils/__tests__/subgraphPagination.test.d.ts +4 -0
- package/dist/utils/__tests__/transaction-edge-cases.test.d.ts +1 -0
- package/dist/utils/__tests__/transactionHelpers.test.d.ts +1 -0
- package/dist/utils/__tests__/urlResolver.test.d.ts +4 -0
- package/dist/utils/blockchain/registry.cjs +2 -2
- package/dist/utils/blockchain/registry.cjs.map +1 -1
- package/dist/utils/blockchain/registry.d.ts +6 -8
- package/dist/utils/blockchain/registry.js +2 -2
- package/dist/utils/blockchain/registry.js.map +1 -1
- package/dist/utils/blockchain/registry.test.d.ts +1 -0
- package/dist/utils/chainQuery.cjs +107 -0
- package/dist/utils/chainQuery.cjs.map +1 -0
- package/dist/utils/chainQuery.d.ts +31 -0
- package/dist/utils/chainQuery.js +82 -0
- package/dist/utils/chainQuery.js.map +1 -0
- package/dist/utils/crypto-utils.cjs +0 -12
- package/dist/utils/crypto-utils.cjs.map +1 -1
- package/dist/utils/crypto-utils.d.ts +9 -27
- package/dist/utils/crypto-utils.js +0 -11
- package/dist/utils/crypto-utils.js.map +1 -1
- package/dist/utils/crypto-utils.test.d.ts +1 -0
- package/dist/utils/download.cjs +3 -3
- package/dist/utils/download.cjs.map +1 -1
- package/dist/utils/download.d.ts +13 -14
- package/dist/utils/download.js +2 -2
- package/dist/utils/download.js.map +1 -1
- package/dist/utils/encoding.cjs +1 -1
- package/dist/utils/encoding.cjs.map +1 -1
- package/dist/utils/encoding.d.ts +4 -6
- package/dist/utils/encoding.js +1 -1
- package/dist/utils/encoding.js.map +1 -1
- package/dist/utils/encoding.test.d.ts +1 -0
- package/dist/utils/encryption.cjs +16 -10
- package/dist/utils/encryption.cjs.map +1 -1
- package/dist/utils/encryption.d.ts +13 -17
- package/dist/utils/encryption.js +16 -10
- package/dist/utils/encryption.js.map +1 -1
- package/dist/utils/formatters.cjs +4 -2
- package/dist/utils/formatters.cjs.map +1 -1
- package/dist/utils/formatters.d.ts +4 -6
- package/dist/utils/formatters.js +4 -2
- package/dist/utils/formatters.js.map +1 -1
- package/dist/utils/grantFiles.cjs +7 -4
- package/dist/utils/grantFiles.cjs.map +1 -1
- package/dist/utils/grantFiles.d.ts +16 -30
- package/dist/utils/grantFiles.js +7 -4
- package/dist/utils/grantFiles.js.map +1 -1
- package/dist/utils/grantValidation.cjs +1 -1
- package/dist/utils/grantValidation.cjs.map +1 -1
- package/dist/utils/grantValidation.d.ts +109 -33
- package/dist/utils/grantValidation.js +1 -1
- package/dist/utils/grantValidation.js.map +1 -1
- package/dist/utils/grants.cjs +1 -1
- package/dist/utils/grants.cjs.map +1 -1
- package/dist/utils/grants.d.ts +101 -23
- package/dist/utils/grants.js +1 -1
- package/dist/utils/grants.js.map +1 -1
- package/dist/utils/ipfs.cjs +2 -4
- package/dist/utils/ipfs.cjs.map +1 -1
- package/dist/utils/ipfs.d.ts +8 -10
- package/dist/utils/ipfs.js +2 -4
- package/dist/utils/ipfs.js.map +1 -1
- package/dist/utils/lazy-import.cjs +4 -6
- package/dist/utils/lazy-import.cjs.map +1 -1
- package/dist/utils/lazy-import.d.ts +33 -10
- package/dist/utils/lazy-import.js +4 -6
- package/dist/utils/lazy-import.js.map +1 -1
- package/dist/utils/multicall.cjs +4 -2
- package/dist/utils/multicall.cjs.map +1 -1
- package/dist/utils/multicall.d.ts +5 -8
- package/dist/utils/multicall.js +4 -2
- package/dist/utils/multicall.js.map +1 -1
- package/dist/utils/parseTransactionPojo.cjs +87 -0
- package/dist/utils/parseTransactionPojo.cjs.map +1 -0
- package/dist/utils/parseTransactionPojo.d.ts +31 -0
- package/dist/utils/parseTransactionPojo.js +63 -0
- package/dist/utils/parseTransactionPojo.js.map +1 -0
- package/dist/utils/schemaValidation.cjs +5 -5
- package/dist/utils/schemaValidation.cjs.map +1 -1
- package/dist/utils/schemaValidation.d.ts +8 -12
- package/dist/utils/schemaValidation.js +7 -10
- package/dist/utils/schemaValidation.js.map +1 -1
- package/dist/utils/signatureCache.cjs +9 -4
- package/dist/utils/signatureCache.cjs.map +1 -1
- package/dist/utils/signatureCache.d.ts +53 -15
- package/dist/utils/signatureCache.js +12 -10
- package/dist/utils/signatureCache.js.map +1 -1
- package/dist/utils/signatureFormatter.cjs +6 -9
- package/dist/utils/signatureFormatter.cjs.map +1 -1
- package/dist/utils/signatureFormatter.d.ts +2 -5
- package/dist/utils/signatureFormatter.js +6 -9
- package/dist/utils/signatureFormatter.js.map +1 -1
- package/dist/utils/subgraphConsistency.cjs +184 -0
- package/dist/utils/subgraphConsistency.cjs.map +1 -0
- package/dist/utils/subgraphConsistency.d.ts +65 -0
- package/dist/utils/subgraphConsistency.js +155 -0
- package/dist/utils/subgraphConsistency.js.map +1 -0
- package/dist/utils/subgraphMetaCache.cjs +101 -0
- package/dist/utils/subgraphMetaCache.cjs.map +1 -0
- package/dist/utils/subgraphMetaCache.d.ts +56 -0
- package/dist/utils/subgraphMetaCache.js +76 -0
- package/dist/utils/subgraphMetaCache.js.map +1 -0
- package/dist/utils/subgraphPagination.cjs +104 -0
- package/dist/utils/subgraphPagination.cjs.map +1 -0
- package/dist/utils/subgraphPagination.d.ts +78 -0
- package/dist/utils/subgraphPagination.js +78 -0
- package/dist/utils/subgraphPagination.js.map +1 -0
- package/dist/utils/tests/multicall.test.d.ts +1 -0
- package/dist/utils/transactionHelpers.cjs +54 -0
- package/dist/utils/transactionHelpers.cjs.map +1 -0
- package/dist/utils/transactionHelpers.d.ts +80 -0
- package/dist/utils/transactionHelpers.js +29 -0
- package/dist/utils/transactionHelpers.js.map +1 -0
- package/dist/utils/typeGuards.cjs +109 -0
- package/dist/utils/typeGuards.cjs.map +1 -0
- package/dist/utils/typeGuards.d.ts +138 -0
- package/dist/utils/typeGuards.js +74 -0
- package/dist/utils/typeGuards.js.map +1 -0
- package/dist/utils/typedDataConverter.cjs.map +1 -1
- package/dist/utils/typedDataConverter.d.ts +42 -9
- package/dist/utils/typedDataConverter.js.map +1 -1
- package/dist/utils/urlResolver.cjs +8 -1
- package/dist/utils/urlResolver.cjs.map +1 -1
- package/dist/utils/urlResolver.d.ts +24 -8
- package/dist/utils/urlResolver.js +9 -2
- package/dist/utils/urlResolver.js.map +1 -1
- package/dist/utils/wallet.cjs +63 -0
- package/dist/utils/wallet.cjs.map +1 -0
- package/dist/utils/wallet.d.ts +94 -0
- package/dist/utils/wallet.js +37 -0
- package/dist/utils/wallet.js.map +1 -0
- package/dist/utils/withEvents.cjs +44 -0
- package/dist/utils/withEvents.cjs.map +1 -0
- package/dist/utils/withEvents.d.ts +56 -0
- package/dist/utils/withEvents.js +18 -0
- package/dist/utils/withEvents.js.map +1 -0
- package/package.json +25 -13
- package/dist/browser.d.cts +0 -2
- package/dist/chains/definitions.d.cts +0 -53
- package/dist/chains/index.d.cts +0 -2
- package/dist/chains.browser.cjs.map +0 -1
- package/dist/chains.browser.d.cts +0 -2
- package/dist/chains.d.cts +0 -2
- package/dist/chains.node.d.cts +0 -2
- package/dist/config/addresses.d.cts +0 -380
- package/dist/config/chains.d.cts +0 -85
- package/dist/config/eventMappings.cjs +0 -114
- package/dist/config/eventMappings.cjs.map +0 -1
- package/dist/config/eventMappings.d.cts +0 -108
- package/dist/config/eventMappings.d.ts +0 -108
- package/dist/config/eventMappings.js +0 -90
- package/dist/config/eventMappings.js.map +0 -1
- package/dist/config/features.d.cts +0 -64
- package/dist/contracts/contractController.d.cts +0 -96
- package/dist/controllers/data.d.cts +0 -941
- package/dist/controllers/permissions.d.cts +0 -25
- package/dist/controllers/protocol.d.cts +0 -167
- package/dist/controllers/schemas.d.cts +0 -272
- package/dist/controllers/server.d.cts +0 -243
- package/dist/core/apiClient.d.cts +0 -165
- package/dist/core/client.d.cts +0 -92
- package/dist/core/generics.d.cts +0 -120
- package/dist/core.d.cts +0 -466
- package/dist/crypto/ecies/__tests__/test-vectors.d.cts +0 -40
- package/dist/crypto/ecies/base.d.cts +0 -143
- package/dist/crypto/ecies/browser.d.cts +0 -48
- package/dist/crypto/ecies/constants.d.cts +0 -122
- package/dist/crypto/ecies/index.d.cts +0 -1
- package/dist/crypto/ecies/interface.d.cts +0 -176
- package/dist/crypto/ecies/node.d.cts +0 -50
- package/dist/crypto/ecies/utils.d.cts +0 -67
- package/dist/crypto/services/WalletKeyEncryptionService.d.cts +0 -92
- package/dist/diagnostics.d.cts +0 -26
- package/dist/errors.d.cts +0 -350
- package/dist/generated/abi/ComputeEngineImplementation.d.cts +0 -996
- package/dist/generated/abi/ComputeInstructionRegistryImplementation.d.cts +0 -545
- package/dist/generated/abi/DATFactoryImplementation.d.cts +0 -661
- package/dist/generated/abi/DATImplementation.d.cts +0 -693
- package/dist/generated/abi/DATPausableImplementation.d.cts +0 -1145
- package/dist/generated/abi/DATVotesImplementation.d.cts +0 -1095
- package/dist/generated/abi/DLPPerformanceImplementation.d.cts +0 -883
- package/dist/generated/abi/DLPRegistryImplementation.d.cts +0 -1123
- package/dist/generated/abi/DLPRegistryTreasuryImplementation.d.cts +0 -452
- package/dist/generated/abi/DLPRewardDeployerImplementation.d.cts +0 -714
- package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.d.cts +0 -452
- package/dist/generated/abi/DLPRewardSwapImplementation.d.cts +0 -706
- package/dist/generated/abi/DLPRootImplementation.d.cts +0 -1248
- package/dist/generated/abi/DLPTreasuryImplementation.d.cts +0 -452
- package/dist/generated/abi/DataLiquidityPoolImplementation.d.cts +0 -737
- package/dist/generated/abi/DataPortabilityGranteesImplementation.d.cts +0 -661
- package/dist/generated/abi/DataPortabilityPermissionsImplementation.d.cts +0 -989
- package/dist/generated/abi/DataPortabilityServersImplementation.d.cts +0 -1086
- package/dist/generated/abi/DataRefinerRegistryImplementation.d.cts +0 -737
- package/dist/generated/abi/DataRegistryImplementation.d.cts +0 -1004
- package/dist/generated/abi/QueryEngineImplementation.d.cts +0 -1001
- package/dist/generated/abi/SwapHelperImplementation.d.cts +0 -764
- package/dist/generated/abi/TeePoolDedicatedGpuImplementation.d.cts +0 -701
- package/dist/generated/abi/TeePoolDedicatedStandardImplementation.d.cts +0 -701
- package/dist/generated/abi/TeePoolEphemeralStandardImplementation.d.cts +0 -701
- package/dist/generated/abi/TeePoolImplementation.d.cts +0 -993
- package/dist/generated/abi/TeePoolPersistentGpuImplementation.d.cts +0 -701
- package/dist/generated/abi/TeePoolPersistentStandardImplementation.d.cts +0 -701
- package/dist/generated/abi/TeePoolPhalaImplementation.d.cts +0 -993
- package/dist/generated/abi/VanaEpochImplementation.d.cts +0 -900
- package/dist/generated/abi/VanaPoolEntityImplementation.d.cts +0 -934
- package/dist/generated/abi/VanaPoolStakingImplementation.d.cts +0 -693
- package/dist/generated/abi/VanaPoolTreasuryImplementation.d.cts +0 -394
- package/dist/generated/abi/index.d.cts +0 -26516
- package/dist/generated/server/server-exports.d.cts +0 -21
- package/dist/generated/server/server.d.cts +0 -512
- package/dist/generated/subgraph.d.cts +0 -5981
- package/dist/index.browser.cjs +0 -151
- package/dist/index.browser.cjs.map +0 -1
- package/dist/index.browser.d.cts +0 -177
- package/dist/index.d.cts +0 -2
- package/dist/index.node.d.cts +0 -64
- package/dist/node.d.cts +0 -2
- package/dist/permissions-DNKPu_G0.d.cts +0 -1666
- package/dist/permissions-eo8YeLGf.d.ts +0 -1666
- package/dist/platform/browser-only.d.cts +0 -25
- package/dist/platform/browser-safe.d.cts +0 -32
- package/dist/platform/browser.d.cts +0 -74
- package/dist/platform/index.d.cts +0 -5
- package/dist/platform/interface.d.cts +0 -218
- package/dist/platform/node.d.cts +0 -27
- package/dist/platform/shared/error-utils.d.cts +0 -25
- package/dist/platform/shared/pgp-utils.d.cts +0 -61
- package/dist/platform/shared/stream-utils.d.cts +0 -16
- package/dist/platform/utils.d.cts +0 -53
- package/dist/platform.browser.cjs +0 -41
- package/dist/platform.browser.cjs.map +0 -1
- package/dist/platform.browser.d.cts +0 -4
- package/dist/platform.d.cts +0 -5
- package/dist/platform.node.d.cts +0 -5
- package/dist/server/handler.cjs +0 -101
- package/dist/server/handler.cjs.map +0 -1
- package/dist/server/handler.d.cts +0 -282
- package/dist/server/handler.d.ts +0 -282
- package/dist/server/handler.js +0 -77
- package/dist/server/handler.js.map +0 -1
- package/dist/storage/index.d.cts +0 -10
- package/dist/storage/manager.d.cts +0 -150
- package/dist/storage/providers/callback-storage.d.cts +0 -100
- package/dist/storage/providers/google-drive.d.cts +0 -156
- package/dist/storage/providers/ipfs.d.cts +0 -163
- package/dist/storage/providers/pinata.d.cts +0 -173
- package/dist/types/chains.d.cts +0 -34
- package/dist/types/config.d.cts +0 -726
- package/dist/types/contracts.d.cts +0 -68
- package/dist/types/data.d.cts +0 -694
- package/dist/types/eccrypto-js.d.d.cts +0 -13
- package/dist/types/eccrypto-js.d.d.ts +0 -13
- package/dist/types/external-apis.d.cts +0 -186
- package/dist/types/generics.d.cts +0 -450
- package/dist/types/index.d.cts +0 -34
- package/dist/types/operations.d.cts +0 -108
- package/dist/types/permissions.d.cts +0 -957
- package/dist/types/personal.d.cts +0 -40
- package/dist/types/relayer.d.cts +0 -284
- package/dist/types/storage.d.cts +0 -131
- package/dist/types/transactionResults.d.cts +0 -25
- package/dist/types/utils.d.cts +0 -819
- package/dist/types.d.cts +0 -66
- package/dist/utils/blockchain/registry.d.cts +0 -34
- package/dist/utils/crypto-utils.d.cts +0 -118
- package/dist/utils/download.d.cts +0 -41
- package/dist/utils/encoding.d.cts +0 -54
- package/dist/utils/encryption.d.cts +0 -275
- package/dist/utils/eventParsing.cjs +0 -111
- package/dist/utils/eventParsing.cjs.map +0 -1
- package/dist/utils/eventParsing.d.cts +0 -60
- package/dist/utils/eventParsing.d.ts +0 -60
- package/dist/utils/eventParsing.js +0 -86
- package/dist/utils/eventParsing.js.map +0 -1
- package/dist/utils/formatters.d.cts +0 -120
- package/dist/utils/grantFiles.d.cts +0 -186
- package/dist/utils/grantValidation.d.cts +0 -150
- package/dist/utils/grants.d.cts +0 -70
- package/dist/utils/ipfs.d.cts +0 -90
- package/dist/utils/lazy-import.d.cts +0 -20
- package/dist/utils/multicall.d.cts +0 -129
- package/dist/utils/schemaValidation.d.cts +0 -172
- package/dist/utils/signatureCache.d.cts +0 -134
- package/dist/utils/signatureFormatter.d.cts +0 -39
- package/dist/utils/transactionParsing.cjs +0 -84
- package/dist/utils/transactionParsing.cjs.map +0 -1
- package/dist/utils/transactionParsing.d.cts +0 -25
- package/dist/utils/transactionParsing.d.ts +0 -25
- package/dist/utils/transactionParsing.js +0 -62
- package/dist/utils/transactionParsing.js.map +0 -1
- package/dist/utils/typedDataConverter.d.cts +0 -13
- package/dist/utils/urlResolver.d.cts +0 -40
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
import { Hash } from 'viem';
|
|
2
|
-
import { VanaCacheAdapter } from '../platform/interface.cjs';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Simple signature cache using platform cache adapter to avoid repeated signing of identical messages.
|
|
6
|
-
*
|
|
7
|
-
* @remarks
|
|
8
|
-
* This cache significantly improves UX by avoiding repeated wallet signature prompts
|
|
9
|
-
* for identical operations. It's particularly useful for operations that may be
|
|
10
|
-
* retried or called multiple times with the same parameters.
|
|
11
|
-
*
|
|
12
|
-
* Features:
|
|
13
|
-
* - Platform-appropriate storage (sessionStorage in browser, memory in Node.js)
|
|
14
|
-
* - Configurable TTL (default 2 hours)
|
|
15
|
-
* - Automatic cleanup of expired entries
|
|
16
|
-
* - Cache keys based on wallet address + message hash
|
|
17
|
-
*
|
|
18
|
-
* @example
|
|
19
|
-
* ```typescript
|
|
20
|
-
* // Check cache before requesting signature
|
|
21
|
-
* const cached = SignatureCache.get(cache, walletAddress, messageHash);
|
|
22
|
-
* if (cached) {
|
|
23
|
-
* return cached;
|
|
24
|
-
* }
|
|
25
|
-
*
|
|
26
|
-
* // Request signature and cache it
|
|
27
|
-
* const signature = await wallet.signTypedData(typedData);
|
|
28
|
-
* SignatureCache.set(cache, walletAddress, messageHash, signature);
|
|
29
|
-
* ```
|
|
30
|
-
* @category Utilities
|
|
31
|
-
*/
|
|
32
|
-
declare class SignatureCache {
|
|
33
|
-
private static readonly PREFIX;
|
|
34
|
-
private static readonly DEFAULT_TTL_HOURS;
|
|
35
|
-
/**
|
|
36
|
-
* Get a cached signature if it exists and hasn't expired
|
|
37
|
-
*
|
|
38
|
-
* @param cache - Platform cache adapter instance
|
|
39
|
-
* @param walletAddress - Wallet address that created the signature
|
|
40
|
-
* @param messageHash - Hash of the message that was signed
|
|
41
|
-
* @returns The cached signature if valid, null if expired or not found
|
|
42
|
-
* @example
|
|
43
|
-
* ```typescript
|
|
44
|
-
* const messageHash = SignatureCache.hashMessage(typedData);
|
|
45
|
-
* const cached = SignatureCache.get(cache, '0x123...', messageHash);
|
|
46
|
-
* if (cached) {
|
|
47
|
-
* console.log('Using cached signature:', cached);
|
|
48
|
-
* }
|
|
49
|
-
* ```
|
|
50
|
-
*/
|
|
51
|
-
static get(cache: VanaCacheAdapter, walletAddress: string, messageHash: string): Hash | null;
|
|
52
|
-
/**
|
|
53
|
-
* Store a signature in the cache with configurable TTL
|
|
54
|
-
*
|
|
55
|
-
* @param cache - Platform cache adapter instance
|
|
56
|
-
* @param walletAddress - Wallet address that created the signature
|
|
57
|
-
* @param messageHash - Hash of the message that was signed
|
|
58
|
-
* @param signature - The signature to cache
|
|
59
|
-
* @param ttlHours - Time to live in hours (default: 2)
|
|
60
|
-
* @example
|
|
61
|
-
* ```typescript
|
|
62
|
-
* const signature = await wallet.signTypedData(typedData);
|
|
63
|
-
* const messageHash = SignatureCache.hashMessage(typedData);
|
|
64
|
-
*
|
|
65
|
-
* // Cache for default 2 hours
|
|
66
|
-
* SignatureCache.set(cache, walletAddress, messageHash, signature);
|
|
67
|
-
*
|
|
68
|
-
* // Cache for 24 hours
|
|
69
|
-
* SignatureCache.set(cache, walletAddress, messageHash, signature, 24);
|
|
70
|
-
* ```
|
|
71
|
-
*/
|
|
72
|
-
static set(cache: VanaCacheAdapter, walletAddress: string, messageHash: string, signature: Hash, ttlHours?: number): void;
|
|
73
|
-
/**
|
|
74
|
-
* Clear all cached signatures (useful for testing or explicit cleanup)
|
|
75
|
-
*
|
|
76
|
-
* @param cache - Platform cache adapter instance
|
|
77
|
-
* @example
|
|
78
|
-
* ```typescript
|
|
79
|
-
* // Clear all signatures when user logs out
|
|
80
|
-
* SignatureCache.clear(cache);
|
|
81
|
-
*
|
|
82
|
-
* // Clear before running tests
|
|
83
|
-
* beforeEach(() => {
|
|
84
|
-
* SignatureCache.clear(cache);
|
|
85
|
-
* });
|
|
86
|
-
* ```
|
|
87
|
-
*/
|
|
88
|
-
static clear(cache: VanaCacheAdapter): void;
|
|
89
|
-
private static getCacheKey;
|
|
90
|
-
/**
|
|
91
|
-
* Generate a deterministic hash of a message object for cache key generation
|
|
92
|
-
*
|
|
93
|
-
* @remarks
|
|
94
|
-
* Creates a cryptographically secure hash from complex objects including EIP-712 typed data.
|
|
95
|
-
* Uses SHA-256 for collision resistance and deterministic key generation.
|
|
96
|
-
* Handles BigInt serialization and sorts object keys for consistency.
|
|
97
|
-
*
|
|
98
|
-
* @param message - The message object to hash (typically EIP-712 typed data)
|
|
99
|
-
* @returns A hex string hash (SHA-256) suitable for cache keys
|
|
100
|
-
* @example
|
|
101
|
-
* ```typescript
|
|
102
|
-
* const typedData = {
|
|
103
|
-
* domain: { name: 'Vana', version: '1' },
|
|
104
|
-
* message: { nonce: 123n, grant: '...' }
|
|
105
|
-
* };
|
|
106
|
-
*
|
|
107
|
-
* const hash = SignatureCache.hashMessage(typedData);
|
|
108
|
-
* // Returns SHA-256 hash like: "a1b2c3d4e5f6..."
|
|
109
|
-
* ```
|
|
110
|
-
*/
|
|
111
|
-
static hashMessage(message: object): string;
|
|
112
|
-
/**
|
|
113
|
-
* Deterministic JSON replacer that handles BigInt values and sorts object keys
|
|
114
|
-
* This ensures consistent cache key generation for EIP-712 typed data
|
|
115
|
-
*
|
|
116
|
-
* @param _key - The object key being serialized (unused)
|
|
117
|
-
* @param value - The value to serialize
|
|
118
|
-
* @returns The serialized value with sorted keys for objects
|
|
119
|
-
*/
|
|
120
|
-
private static deterministicReplacer;
|
|
121
|
-
}
|
|
122
|
-
/**
|
|
123
|
-
* Wrapper function to cache signature operations
|
|
124
|
-
*
|
|
125
|
-
* @param cache - The cache adapter to use for storage
|
|
126
|
-
* @param walletAddress - The wallet address signing the message
|
|
127
|
-
* @param typedData - The EIP-712 typed data being signed
|
|
128
|
-
* @param signFn - Function that performs the actual signing
|
|
129
|
-
* @param ttlHours - Cache TTL in hours (default 2)
|
|
130
|
-
* @returns The signature (cached or newly generated)
|
|
131
|
-
*/
|
|
132
|
-
declare function withSignatureCache(cache: VanaCacheAdapter, walletAddress: string, typedData: Record<string, unknown>, signFn: () => Promise<Hash>, ttlHours?: number): Promise<Hash>;
|
|
133
|
-
|
|
134
|
-
export { SignatureCache, withSignatureCache };
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { Hash } from 'viem';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Formats a signature for Ethereum smart contract compatibility by adjusting the v-value.
|
|
5
|
-
*
|
|
6
|
-
* @remarks
|
|
7
|
-
* This function ensures signature compatibility with Ethereum smart contracts by adjusting
|
|
8
|
-
* the v-value component of ECDSA signatures. Some wallet implementations and signing methods
|
|
9
|
-
* produce signatures with v-values in the range [0, 1], while Ethereum smart contracts
|
|
10
|
-
* expect v-values in the range [27, 28] for proper signature verification.
|
|
11
|
-
*
|
|
12
|
-
* The function automatically detects signatures with low v-values and applies the standard
|
|
13
|
-
* Ethereum offset (+27) to ensure compatibility. This is particularly important for gasless
|
|
14
|
-
* transactions and EIP-712 signature verification in smart contracts.
|
|
15
|
-
*
|
|
16
|
-
* **Technical Details:**
|
|
17
|
-
* - Ethereum signatures consist of r (32 bytes) + s (32 bytes) + v (1 byte) = 65 bytes total
|
|
18
|
-
* - Valid v-values for Ethereum are 27 or 28 (or 0/1 + chain-specific offset for EIP-155)
|
|
19
|
-
* - This function handles the common case where v ∈ [0, 1] needs adjustment to [27, 28]
|
|
20
|
-
*
|
|
21
|
-
* @param signature - The ECDSA signature hash to format (65 bytes as hex string)
|
|
22
|
-
* @returns The formatted signature with correct v-value for Ethereum contract verification
|
|
23
|
-
* @example
|
|
24
|
-
* ```typescript
|
|
25
|
-
* // Signature with v-value that needs adjustment
|
|
26
|
-
* const rawSignature = "0x1234...5600"; // v = 0 (last byte)
|
|
27
|
-
* const formatted = formatSignatureForContract(rawSignature);
|
|
28
|
-
* // Result: "0x1234...561b" // v = 27 (0x1b)
|
|
29
|
-
*
|
|
30
|
-
* // Already properly formatted signature remains unchanged
|
|
31
|
-
* const goodSignature = "0x1234...561b"; // v = 27
|
|
32
|
-
* const unchanged = formatSignatureForContract(goodSignature);
|
|
33
|
-
* // Result: "0x1234...561b" (no change needed)
|
|
34
|
-
* ```
|
|
35
|
-
* @category Cryptography
|
|
36
|
-
*/
|
|
37
|
-
declare function formatSignatureForContract(signature: Hash): Hash;
|
|
38
|
-
|
|
39
|
-
export { formatSignatureForContract };
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var transactionParsing_exports = {};
|
|
20
|
-
__export(transactionParsing_exports, {
|
|
21
|
-
parseTransactionResult: () => parseTransactionResult
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(transactionParsing_exports);
|
|
24
|
-
var import_viem = require("viem");
|
|
25
|
-
var import_eventMappings = require("../config/eventMappings");
|
|
26
|
-
var import_abi = require("../generated/abi");
|
|
27
|
-
var import_errors = require("../errors");
|
|
28
|
-
async function parseTransactionResult(context, hash, operation) {
|
|
29
|
-
const mapping = import_eventMappings.EVENT_MAPPINGS[operation];
|
|
30
|
-
try {
|
|
31
|
-
console.debug(`\u{1F50D} Parsing ${operation} transaction: ${hash}`);
|
|
32
|
-
const receipt = await context.publicClient.waitForTransactionReceipt({
|
|
33
|
-
hash,
|
|
34
|
-
timeout: 3e4
|
|
35
|
-
// 30 second timeout
|
|
36
|
-
});
|
|
37
|
-
console.debug(`\u2705 Transaction confirmed in block ${receipt.blockNumber}`);
|
|
38
|
-
const abi = (0, import_abi.getAbi)(mapping.contract);
|
|
39
|
-
const events = (0, import_viem.parseEventLogs)({
|
|
40
|
-
logs: receipt.logs,
|
|
41
|
-
abi,
|
|
42
|
-
eventName: mapping.event,
|
|
43
|
-
strict: true
|
|
44
|
-
// Only return logs that conform to the ABI
|
|
45
|
-
});
|
|
46
|
-
if (events.length === 0) {
|
|
47
|
-
throw new import_errors.BlockchainError(
|
|
48
|
-
`No ${mapping.event} event found in transaction ${hash}. Transaction may have failed or reverted.`
|
|
49
|
-
);
|
|
50
|
-
}
|
|
51
|
-
if (events.length > 1) {
|
|
52
|
-
console.warn(
|
|
53
|
-
`\u26A0\uFE0F Multiple ${mapping.event} events found in transaction ${hash}. Using the first one.`
|
|
54
|
-
);
|
|
55
|
-
}
|
|
56
|
-
const event = events[0];
|
|
57
|
-
console.debug(`\u{1F389} Found ${mapping.event} event with args:`, event.args);
|
|
58
|
-
return {
|
|
59
|
-
...event.args,
|
|
60
|
-
transactionHash: hash,
|
|
61
|
-
blockNumber: receipt.blockNumber,
|
|
62
|
-
gasUsed: receipt.gasUsed
|
|
63
|
-
};
|
|
64
|
-
} catch (error) {
|
|
65
|
-
if (error instanceof import_errors.BlockchainError || error instanceof import_errors.NetworkError) {
|
|
66
|
-
throw error;
|
|
67
|
-
}
|
|
68
|
-
if (error instanceof Error && error.message.includes("timeout")) {
|
|
69
|
-
throw new import_errors.NetworkError(
|
|
70
|
-
`Transaction ${hash} confirmation timeout after 30 seconds. The transaction may still be pending.`,
|
|
71
|
-
error
|
|
72
|
-
);
|
|
73
|
-
}
|
|
74
|
-
throw new import_errors.BlockchainError(
|
|
75
|
-
`Failed to parse ${operation} transaction ${hash}: ${error instanceof Error ? error.message : "Unknown error"}`,
|
|
76
|
-
error
|
|
77
|
-
);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
81
|
-
0 && (module.exports = {
|
|
82
|
-
parseTransactionResult
|
|
83
|
-
});
|
|
84
|
-
//# sourceMappingURL=transactionParsing.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/transactionParsing.ts"],"sourcesContent":["import { parseEventLogs } from \"viem\";\nimport type { Hash } from \"viem\";\nimport {\n EVENT_MAPPINGS,\n type TransactionOperation,\n} from \"../config/eventMappings\";\nimport { getAbi } from \"../generated/abi\";\nimport type { ControllerContext } from \"../controllers/permissions\";\nimport { BlockchainError, NetworkError } from \"../errors\";\nimport type { TransactionResultMap } from \"../types/transactionResults\";\n\n/**\n * Base interface for all transaction results.\n * Contains the event data plus transaction metadata.\n */\nexport interface BaseTransactionResult {\n transactionHash: Hash;\n blockNumber: bigint;\n gasUsed: bigint;\n}\n\n/**\n * Generic transaction result parser that extracts event data from transaction receipts.\n *\n * This utility provides a consistent way to parse blockchain events from completed\n * transactions across all SDK controllers. It handles receipt fetching, event parsing,\n * error handling, and result formatting automatically.\n *\n * @param context - Controller context containing blockchain clients\n * @param hash - Transaction hash to parse\n * @param operation - SDK operation name (maps to contract/event via EVENT_MAPPINGS)\n * @returns Promise resolving to event args plus transaction metadata\n * @throws {NetworkError} When transaction receipt cannot be fetched\n * @throws {BlockchainError} When expected event is not found in transaction\n *\n * @example\n * ```typescript\n * // Parse a permission grant transaction\n * const result = await parseTransactionResult(context, txHash, 'grant');\n * console.log(`Permission ${result.permissionId} granted to ${result.user}`);\n *\n * // Parse a file addition transaction\n * const result = await parseTransactionResult(context, txHash, 'addFile');\n * console.log(`File ${result.fileId} added at ${result.url}`);\n * ```\n */\nexport async function parseTransactionResult<K extends TransactionOperation>(\n context: ControllerContext,\n hash: Hash,\n operation: K,\n): Promise<TransactionResultMap[K]> {\n const mapping = EVENT_MAPPINGS[operation];\n\n try {\n // Wait for transaction confirmation\n console.debug(`🔍 Parsing ${operation} transaction: ${hash}`);\n\n const receipt = await context.publicClient.waitForTransactionReceipt({\n hash,\n timeout: 30_000, // 30 second timeout\n });\n\n console.debug(`✅ Transaction confirmed in block ${receipt.blockNumber}`);\n\n // Get contract ABI for event parsing\n const abi = getAbi(mapping.contract);\n\n // Parse events using viem's parseEventLogs\n const events = parseEventLogs({\n logs: receipt.logs,\n abi,\n eventName: mapping.event,\n strict: true, // Only return logs that conform to the ABI\n });\n\n // Validate we found the expected event\n if (events.length === 0) {\n throw new BlockchainError(\n `No ${mapping.event} event found in transaction ${hash}. ` +\n `Transaction may have failed or reverted.`,\n );\n }\n\n if (events.length > 1) {\n console.warn(\n `⚠️ Multiple ${mapping.event} events found in transaction ${hash}. Using the first one.`,\n );\n }\n\n const event = events[0];\n console.debug(`🎉 Found ${mapping.event} event with args:`, event.args);\n\n // Return event args plus transaction metadata\n return {\n ...event.args,\n transactionHash: hash,\n blockNumber: receipt.blockNumber,\n gasUsed: receipt.gasUsed,\n } as TransactionResultMap[K];\n } catch (error) {\n // Re-throw known Vana errors directly\n if (error instanceof BlockchainError || error instanceof NetworkError) {\n throw error;\n }\n\n // Handle timeout errors specifically\n if (error instanceof Error && error.message.includes(\"timeout\")) {\n throw new NetworkError(\n `Transaction ${hash} confirmation timeout after 30 seconds. ` +\n `The transaction may still be pending.`,\n error,\n );\n }\n\n // Wrap unknown errors\n throw new BlockchainError(\n `Failed to parse ${operation} transaction ${hash}: ${error instanceof Error ? error.message : \"Unknown error\"}`,\n error as Error,\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA+B;AAE/B,2BAGO;AACP,iBAAuB;AAEvB,oBAA8C;AAsC9C,eAAsB,uBACpB,SACA,MACA,WACkC;AAClC,QAAM,UAAU,oCAAe,SAAS;AAExC,MAAI;AAEF,YAAQ,MAAM,qBAAc,SAAS,iBAAiB,IAAI,EAAE;AAE5D,UAAM,UAAU,MAAM,QAAQ,aAAa,0BAA0B;AAAA,MACnE;AAAA,MACA,SAAS;AAAA;AAAA,IACX,CAAC;AAED,YAAQ,MAAM,yCAAoC,QAAQ,WAAW,EAAE;AAGvE,UAAM,UAAM,mBAAO,QAAQ,QAAQ;AAGnC,UAAM,aAAS,4BAAe;AAAA,MAC5B,MAAM,QAAQ;AAAA,MACd;AAAA,MACA,WAAW,QAAQ;AAAA,MACnB,QAAQ;AAAA;AAAA,IACV,CAAC;AAGD,QAAI,OAAO,WAAW,GAAG;AACvB,YAAM,IAAI;AAAA,QACR,MAAM,QAAQ,KAAK,+BAA+B,IAAI;AAAA,MAExD;AAAA,IACF;AAEA,QAAI,OAAO,SAAS,GAAG;AACrB,cAAQ;AAAA,QACN,0BAAgB,QAAQ,KAAK,gCAAgC,IAAI;AAAA,MACnE;AAAA,IACF;AAEA,UAAM,QAAQ,OAAO,CAAC;AACtB,YAAQ,MAAM,mBAAY,QAAQ,KAAK,qBAAqB,MAAM,IAAI;AAGtE,WAAO;AAAA,MACL,GAAG,MAAM;AAAA,MACT,iBAAiB;AAAA,MACjB,aAAa,QAAQ;AAAA,MACrB,SAAS,QAAQ;AAAA,IACnB;AAAA,EACF,SAAS,OAAO;AAEd,QAAI,iBAAiB,iCAAmB,iBAAiB,4BAAc;AACrE,YAAM;AAAA,IACR;AAGA,QAAI,iBAAiB,SAAS,MAAM,QAAQ,SAAS,SAAS,GAAG;AAC/D,YAAM,IAAI;AAAA,QACR,eAAe,IAAI;AAAA,QAEnB;AAAA,MACF;AAAA,IACF;AAGA,UAAM,IAAI;AAAA,MACR,mBAAmB,SAAS,gBAAgB,IAAI,KAAK,iBAAiB,QAAQ,MAAM,UAAU,eAAe;AAAA,MAC7G;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import 'viem';
|
|
2
|
-
import '../config/eventMappings.cjs';
|
|
3
|
-
export { B as BaseTransactionResult, p as parseTransactionResult } from '../permissions-DNKPu_G0.cjs';
|
|
4
|
-
import '../generated/abi/index.cjs';
|
|
5
|
-
import '../generated/abi/DataPortabilityPermissionsImplementation.cjs';
|
|
6
|
-
import '../generated/abi/DataPortabilityServersImplementation.cjs';
|
|
7
|
-
import '../generated/abi/DataPortabilityGranteesImplementation.cjs';
|
|
8
|
-
import '../generated/abi/VanaEpochImplementation.cjs';
|
|
9
|
-
import '../generated/abi/DLPRegistryImplementation.cjs';
|
|
10
|
-
import '../generated/abi/DLPTreasuryImplementation.cjs';
|
|
11
|
-
import '../generated/abi/DLPRewardDeployerTreasuryImplementation.cjs';
|
|
12
|
-
import '../generated/abi/DLPPerformanceImplementation.cjs';
|
|
13
|
-
import '../generated/abi/DLPRewardDeployerImplementation.cjs';
|
|
14
|
-
import '../generated/abi/DLPRootImplementation.cjs';
|
|
15
|
-
import '../generated/abi/DataLiquidityPoolImplementation.cjs';
|
|
16
|
-
import '../generated/abi/DLPRegistryTreasuryImplementation.cjs';
|
|
17
|
-
import '../types/operations.cjs';
|
|
18
|
-
import '../generated/server/server-exports.cjs';
|
|
19
|
-
import '../generated/server/server.cjs';
|
|
20
|
-
import '../types/config.cjs';
|
|
21
|
-
import '../types/chains.cjs';
|
|
22
|
-
import '../types/storage.cjs';
|
|
23
|
-
import '../types/permissions.cjs';
|
|
24
|
-
import '../storage/manager.cjs';
|
|
25
|
-
import '../platform/interface.cjs';
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import 'viem';
|
|
2
|
-
import '../config/eventMappings.js';
|
|
3
|
-
export { B as BaseTransactionResult, p as parseTransactionResult } from '../permissions-eo8YeLGf.js';
|
|
4
|
-
import '../generated/abi/index.js';
|
|
5
|
-
import '../generated/abi/DataPortabilityPermissionsImplementation.js';
|
|
6
|
-
import '../generated/abi/DataPortabilityServersImplementation.js';
|
|
7
|
-
import '../generated/abi/DataPortabilityGranteesImplementation.js';
|
|
8
|
-
import '../generated/abi/VanaEpochImplementation.js';
|
|
9
|
-
import '../generated/abi/DLPRegistryImplementation.js';
|
|
10
|
-
import '../generated/abi/DLPTreasuryImplementation.js';
|
|
11
|
-
import '../generated/abi/DLPRewardDeployerTreasuryImplementation.js';
|
|
12
|
-
import '../generated/abi/DLPPerformanceImplementation.js';
|
|
13
|
-
import '../generated/abi/DLPRewardDeployerImplementation.js';
|
|
14
|
-
import '../generated/abi/DLPRootImplementation.js';
|
|
15
|
-
import '../generated/abi/DataLiquidityPoolImplementation.js';
|
|
16
|
-
import '../generated/abi/DLPRegistryTreasuryImplementation.js';
|
|
17
|
-
import '../types/operations.js';
|
|
18
|
-
import '../generated/server/server-exports.js';
|
|
19
|
-
import '../generated/server/server.js';
|
|
20
|
-
import '../types/config.js';
|
|
21
|
-
import '../types/chains.js';
|
|
22
|
-
import '../types/storage.js';
|
|
23
|
-
import '../types/permissions.js';
|
|
24
|
-
import '../storage/manager.js';
|
|
25
|
-
import '../platform/interface.js';
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { parseEventLogs } from "viem";
|
|
2
|
-
import {
|
|
3
|
-
EVENT_MAPPINGS
|
|
4
|
-
} from "../config/eventMappings";
|
|
5
|
-
import { getAbi } from "../generated/abi";
|
|
6
|
-
import { BlockchainError, NetworkError } from "../errors";
|
|
7
|
-
async function parseTransactionResult(context, hash, operation) {
|
|
8
|
-
const mapping = EVENT_MAPPINGS[operation];
|
|
9
|
-
try {
|
|
10
|
-
console.debug(`\u{1F50D} Parsing ${operation} transaction: ${hash}`);
|
|
11
|
-
const receipt = await context.publicClient.waitForTransactionReceipt({
|
|
12
|
-
hash,
|
|
13
|
-
timeout: 3e4
|
|
14
|
-
// 30 second timeout
|
|
15
|
-
});
|
|
16
|
-
console.debug(`\u2705 Transaction confirmed in block ${receipt.blockNumber}`);
|
|
17
|
-
const abi = getAbi(mapping.contract);
|
|
18
|
-
const events = parseEventLogs({
|
|
19
|
-
logs: receipt.logs,
|
|
20
|
-
abi,
|
|
21
|
-
eventName: mapping.event,
|
|
22
|
-
strict: true
|
|
23
|
-
// Only return logs that conform to the ABI
|
|
24
|
-
});
|
|
25
|
-
if (events.length === 0) {
|
|
26
|
-
throw new BlockchainError(
|
|
27
|
-
`No ${mapping.event} event found in transaction ${hash}. Transaction may have failed or reverted.`
|
|
28
|
-
);
|
|
29
|
-
}
|
|
30
|
-
if (events.length > 1) {
|
|
31
|
-
console.warn(
|
|
32
|
-
`\u26A0\uFE0F Multiple ${mapping.event} events found in transaction ${hash}. Using the first one.`
|
|
33
|
-
);
|
|
34
|
-
}
|
|
35
|
-
const event = events[0];
|
|
36
|
-
console.debug(`\u{1F389} Found ${mapping.event} event with args:`, event.args);
|
|
37
|
-
return {
|
|
38
|
-
...event.args,
|
|
39
|
-
transactionHash: hash,
|
|
40
|
-
blockNumber: receipt.blockNumber,
|
|
41
|
-
gasUsed: receipt.gasUsed
|
|
42
|
-
};
|
|
43
|
-
} catch (error) {
|
|
44
|
-
if (error instanceof BlockchainError || error instanceof NetworkError) {
|
|
45
|
-
throw error;
|
|
46
|
-
}
|
|
47
|
-
if (error instanceof Error && error.message.includes("timeout")) {
|
|
48
|
-
throw new NetworkError(
|
|
49
|
-
`Transaction ${hash} confirmation timeout after 30 seconds. The transaction may still be pending.`,
|
|
50
|
-
error
|
|
51
|
-
);
|
|
52
|
-
}
|
|
53
|
-
throw new BlockchainError(
|
|
54
|
-
`Failed to parse ${operation} transaction ${hash}: ${error instanceof Error ? error.message : "Unknown error"}`,
|
|
55
|
-
error
|
|
56
|
-
);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
export {
|
|
60
|
-
parseTransactionResult
|
|
61
|
-
};
|
|
62
|
-
//# sourceMappingURL=transactionParsing.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/transactionParsing.ts"],"sourcesContent":["import { parseEventLogs } from \"viem\";\nimport type { Hash } from \"viem\";\nimport {\n EVENT_MAPPINGS,\n type TransactionOperation,\n} from \"../config/eventMappings\";\nimport { getAbi } from \"../generated/abi\";\nimport type { ControllerContext } from \"../controllers/permissions\";\nimport { BlockchainError, NetworkError } from \"../errors\";\nimport type { TransactionResultMap } from \"../types/transactionResults\";\n\n/**\n * Base interface for all transaction results.\n * Contains the event data plus transaction metadata.\n */\nexport interface BaseTransactionResult {\n transactionHash: Hash;\n blockNumber: bigint;\n gasUsed: bigint;\n}\n\n/**\n * Generic transaction result parser that extracts event data from transaction receipts.\n *\n * This utility provides a consistent way to parse blockchain events from completed\n * transactions across all SDK controllers. It handles receipt fetching, event parsing,\n * error handling, and result formatting automatically.\n *\n * @param context - Controller context containing blockchain clients\n * @param hash - Transaction hash to parse\n * @param operation - SDK operation name (maps to contract/event via EVENT_MAPPINGS)\n * @returns Promise resolving to event args plus transaction metadata\n * @throws {NetworkError} When transaction receipt cannot be fetched\n * @throws {BlockchainError} When expected event is not found in transaction\n *\n * @example\n * ```typescript\n * // Parse a permission grant transaction\n * const result = await parseTransactionResult(context, txHash, 'grant');\n * console.log(`Permission ${result.permissionId} granted to ${result.user}`);\n *\n * // Parse a file addition transaction\n * const result = await parseTransactionResult(context, txHash, 'addFile');\n * console.log(`File ${result.fileId} added at ${result.url}`);\n * ```\n */\nexport async function parseTransactionResult<K extends TransactionOperation>(\n context: ControllerContext,\n hash: Hash,\n operation: K,\n): Promise<TransactionResultMap[K]> {\n const mapping = EVENT_MAPPINGS[operation];\n\n try {\n // Wait for transaction confirmation\n console.debug(`🔍 Parsing ${operation} transaction: ${hash}`);\n\n const receipt = await context.publicClient.waitForTransactionReceipt({\n hash,\n timeout: 30_000, // 30 second timeout\n });\n\n console.debug(`✅ Transaction confirmed in block ${receipt.blockNumber}`);\n\n // Get contract ABI for event parsing\n const abi = getAbi(mapping.contract);\n\n // Parse events using viem's parseEventLogs\n const events = parseEventLogs({\n logs: receipt.logs,\n abi,\n eventName: mapping.event,\n strict: true, // Only return logs that conform to the ABI\n });\n\n // Validate we found the expected event\n if (events.length === 0) {\n throw new BlockchainError(\n `No ${mapping.event} event found in transaction ${hash}. ` +\n `Transaction may have failed or reverted.`,\n );\n }\n\n if (events.length > 1) {\n console.warn(\n `⚠️ Multiple ${mapping.event} events found in transaction ${hash}. Using the first one.`,\n );\n }\n\n const event = events[0];\n console.debug(`🎉 Found ${mapping.event} event with args:`, event.args);\n\n // Return event args plus transaction metadata\n return {\n ...event.args,\n transactionHash: hash,\n blockNumber: receipt.blockNumber,\n gasUsed: receipt.gasUsed,\n } as TransactionResultMap[K];\n } catch (error) {\n // Re-throw known Vana errors directly\n if (error instanceof BlockchainError || error instanceof NetworkError) {\n throw error;\n }\n\n // Handle timeout errors specifically\n if (error instanceof Error && error.message.includes(\"timeout\")) {\n throw new NetworkError(\n `Transaction ${hash} confirmation timeout after 30 seconds. ` +\n `The transaction may still be pending.`,\n error,\n );\n }\n\n // Wrap unknown errors\n throw new BlockchainError(\n `Failed to parse ${operation} transaction ${hash}: ${error instanceof Error ? error.message : \"Unknown error\"}`,\n error as Error,\n );\n }\n}\n"],"mappings":"AAAA,SAAS,sBAAsB;AAE/B;AAAA,EACE;AAAA,OAEK;AACP,SAAS,cAAc;AAEvB,SAAS,iBAAiB,oBAAoB;AAsC9C,eAAsB,uBACpB,SACA,MACA,WACkC;AAClC,QAAM,UAAU,eAAe,SAAS;AAExC,MAAI;AAEF,YAAQ,MAAM,qBAAc,SAAS,iBAAiB,IAAI,EAAE;AAE5D,UAAM,UAAU,MAAM,QAAQ,aAAa,0BAA0B;AAAA,MACnE;AAAA,MACA,SAAS;AAAA;AAAA,IACX,CAAC;AAED,YAAQ,MAAM,yCAAoC,QAAQ,WAAW,EAAE;AAGvE,UAAM,MAAM,OAAO,QAAQ,QAAQ;AAGnC,UAAM,SAAS,eAAe;AAAA,MAC5B,MAAM,QAAQ;AAAA,MACd;AAAA,MACA,WAAW,QAAQ;AAAA,MACnB,QAAQ;AAAA;AAAA,IACV,CAAC;AAGD,QAAI,OAAO,WAAW,GAAG;AACvB,YAAM,IAAI;AAAA,QACR,MAAM,QAAQ,KAAK,+BAA+B,IAAI;AAAA,MAExD;AAAA,IACF;AAEA,QAAI,OAAO,SAAS,GAAG;AACrB,cAAQ;AAAA,QACN,0BAAgB,QAAQ,KAAK,gCAAgC,IAAI;AAAA,MACnE;AAAA,IACF;AAEA,UAAM,QAAQ,OAAO,CAAC;AACtB,YAAQ,MAAM,mBAAY,QAAQ,KAAK,qBAAqB,MAAM,IAAI;AAGtE,WAAO;AAAA,MACL,GAAG,MAAM;AAAA,MACT,iBAAiB;AAAA,MACjB,aAAa,QAAQ;AAAA,MACrB,SAAS,QAAQ;AAAA,IACnB;AAAA,EACF,SAAS,OAAO;AAEd,QAAI,iBAAiB,mBAAmB,iBAAiB,cAAc;AACrE,YAAM;AAAA,IACR;AAGA,QAAI,iBAAiB,SAAS,MAAM,QAAQ,SAAS,SAAS,GAAG;AAC/D,YAAM,IAAI;AAAA,QACR,eAAe,IAAI;AAAA,QAEnB;AAAA,MACF;AAAA,IACF;AAGA,UAAM,IAAI;AAAA,MACR,mBAAmB,SAAS,gBAAgB,IAAI,KAAK,iBAAiB,QAAQ,MAAM,UAAU,eAAe;AAAA,MAC7G;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { TypedDataDefinition } from 'viem';
|
|
2
|
-
import { GenericTypedData } from '../types/permissions.cjs';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Converts a GenericTypedData object to a Viem-compatible TypedDataDefinition.
|
|
6
|
-
* This function ensures type safety when passing typed data to viem's signTypedData method.
|
|
7
|
-
*
|
|
8
|
-
* @param typedData - The typed data object to convert
|
|
9
|
-
* @returns A properly typed TypedDataDefinition for use with viem
|
|
10
|
-
*/
|
|
11
|
-
declare function toViemTypedDataDefinition(typedData: GenericTypedData): TypedDataDefinition;
|
|
12
|
-
|
|
13
|
-
export { toViemTypedDataDefinition };
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Universal URL resolver for the Vana SDK
|
|
3
|
-
*
|
|
4
|
-
* Handles fetching data from various protocols (IPFS, HTTP, Arweave, etc.)
|
|
5
|
-
* in a consistent, reliable way.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Error thrown when URL resolution fails
|
|
9
|
-
*/
|
|
10
|
-
declare class UrlResolutionError extends Error {
|
|
11
|
-
readonly url: string;
|
|
12
|
-
readonly cause?: Error | undefined;
|
|
13
|
-
constructor(message: string, url: string, cause?: Error | undefined);
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Fetches and parses JSON data from any supported URL protocol
|
|
17
|
-
*
|
|
18
|
-
* @param url - The URL to fetch from (supports ipfs://, https://, http://, ar://)
|
|
19
|
-
* @param downloadRelayer - Optional download relayer for CORS bypass
|
|
20
|
-
* @param downloadRelayer.proxyDownload - Function to proxy downloads through application server
|
|
21
|
-
* @returns Promise resolving to the parsed JSON data
|
|
22
|
-
* @throws {UrlResolutionError} When the URL cannot be resolved or parsed
|
|
23
|
-
*
|
|
24
|
-
* @example
|
|
25
|
-
* ```typescript
|
|
26
|
-
* // Fetch from IPFS
|
|
27
|
-
* const data = await fetchFromUrl("ipfs://QmXxx...");
|
|
28
|
-
*
|
|
29
|
-
* // Fetch from HTTPS
|
|
30
|
-
* const data = await fetchFromUrl("https://example.com/data.json");
|
|
31
|
-
*
|
|
32
|
-
* // Handles protocol conversion internally
|
|
33
|
-
* const schema = await fetchFromUrl(schemaDefinitionUrl);
|
|
34
|
-
* ```
|
|
35
|
-
*/
|
|
36
|
-
declare function fetchFromUrl(url: string, downloadRelayer?: {
|
|
37
|
-
proxyDownload: (url: string) => Promise<Blob>;
|
|
38
|
-
}): Promise<unknown>;
|
|
39
|
-
|
|
40
|
-
export { UrlResolutionError, fetchFromUrl };
|