@opendatalabs/vana-sdk 0.1.0-alpha.fd33fc9 → 0.1.0-canary.0fb40d1
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 +67 -351
- package/dist/browser.cjs.map +1 -1
- package/dist/browser.d.ts +33 -1
- package/dist/browser.js.map +1 -1
- package/dist/chains/index.cjs.map +1 -1
- package/dist/chains/index.d.ts +30 -1
- package/dist/chains/index.js.map +1 -1
- package/dist/client/__tests__/enhancedResponse.test.d.ts +1 -0
- package/dist/client/enhancedResponse.cjs +164 -0
- package/dist/client/enhancedResponse.cjs.map +1 -0
- package/dist/client/enhancedResponse.d.ts +120 -0
- package/dist/client/enhancedResponse.js +138 -0
- package/dist/client/enhancedResponse.js.map +1 -0
- package/dist/config/chains.cjs.map +1 -1
- package/dist/config/chains.d.ts +99 -0
- package/dist/config/chains.js.map +1 -1
- package/dist/config/contracts.config.cjs +352 -0
- package/dist/config/contracts.config.cjs.map +1 -0
- package/dist/config/contracts.config.d.ts +90 -0
- package/dist/config/contracts.config.js +327 -0
- package/dist/config/contracts.config.js.map +1 -0
- package/dist/config/features.cjs +1 -24
- package/dist/config/features.cjs.map +1 -1
- package/dist/config/features.d.ts +13 -44
- package/dist/config/features.js +1 -24
- package/dist/config/features.js.map +1 -1
- package/dist/contracts/contractController.cjs +1 -1
- package/dist/contracts/contractController.cjs.map +1 -1
- package/dist/contracts/contractController.d.ts +66 -10
- package/dist/contracts/contractController.js +1 -1
- package/dist/contracts/contractController.js.map +1 -1
- 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/base.cjs +33 -0
- package/dist/controllers/base.cjs.map +1 -1
- package/dist/controllers/base.d.ts +10 -0
- package/dist/controllers/base.js +33 -0
- package/dist/controllers/base.js.map +1 -1
- package/dist/controllers/data.cjs +418 -277
- package/dist/controllers/data.cjs.map +1 -1
- package/dist/controllers/data.d.ts +246 -193
- package/dist/controllers/data.js +431 -280
- 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 +691 -210
- package/dist/controllers/permissions.cjs.map +1 -1
- package/dist/controllers/permissions.d.ts +196 -68
- package/dist/controllers/permissions.js +691 -210
- package/dist/controllers/permissions.js.map +1 -1
- package/dist/controllers/protocol.cjs.map +1 -1
- package/dist/controllers/protocol.d.ts +27 -28
- package/dist/controllers/protocol.js.map +1 -1
- package/dist/controllers/schemas.cjs +105 -26
- package/dist/controllers/schemas.cjs.map +1 -1
- package/dist/controllers/schemas.d.ts +88 -40
- package/dist/controllers/schemas.js +105 -26
- package/dist/controllers/schemas.js.map +1 -1
- package/dist/controllers/server.cjs +269 -58
- package/dist/controllers/server.cjs.map +1 -1
- package/dist/controllers/server.d.ts +157 -52
- package/dist/controllers/server.js +269 -58
- 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 +53 -3
- package/dist/core/apiClient.cjs.map +1 -1
- package/dist/core/apiClient.d.ts +132 -7
- package/dist/core/apiClient.js +53 -3
- package/dist/core/apiClient.js.map +1 -1
- package/dist/core/generics.cjs +30 -3
- package/dist/core/generics.cjs.map +1 -1
- package/dist/core/generics.d.ts +95 -6
- package/dist/core/generics.js +30 -3
- 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.cjs +55 -1
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.ts +54 -3
- package/dist/core.js +55 -1
- package/dist/core.js.map +1 -1
- package/dist/crypto/ecies/__tests__/constants.test.d.ts +1 -1
- package/dist/crypto/ecies/__tests__/interface.test.d.ts +1 -0
- package/dist/crypto/ecies/__tests__/serialization.test.d.ts +8 -0
- package/dist/crypto/ecies/__tests__/utils.test.d.ts +1 -0
- package/dist/crypto/ecies/base.cjs +59 -23
- package/dist/crypto/ecies/base.cjs.map +1 -1
- package/dist/crypto/ecies/base.js +59 -23
- package/dist/crypto/ecies/base.js.map +1 -1
- package/dist/crypto/ecies/constants.cjs +2 -10
- package/dist/crypto/ecies/constants.cjs.map +1 -1
- package/dist/crypto/ecies/constants.d.ts +0 -9
- package/dist/crypto/ecies/constants.js +1 -8
- package/dist/crypto/ecies/constants.js.map +1 -1
- package/dist/crypto/ecies/index.cjs.map +1 -1
- package/dist/crypto/ecies/index.d.ts +10 -2
- package/dist/crypto/ecies/index.js.map +1 -1
- package/dist/crypto/ecies/interface.cjs +19 -2
- package/dist/crypto/ecies/interface.cjs.map +1 -1
- package/dist/crypto/ecies/interface.js +19 -2
- package/dist/crypto/ecies/interface.js.map +1 -1
- package/dist/errors.cjs +29 -0
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.d.ts +64 -0
- package/dist/errors.js +28 -0
- package/dist/errors.js.map +1 -1
- package/dist/generated/abi/ComputeEngineImplementation.cjs.map +1 -1
- package/dist/generated/abi/ComputeEngineImplementation.js.map +1 -1
- package/dist/generated/abi/ComputeEngineTreasuryImplementation.cjs +536 -0
- package/dist/generated/abi/ComputeEngineTreasuryImplementation.cjs.map +1 -0
- package/dist/generated/abi/ComputeEngineTreasuryImplementation.d.ts +393 -0
- package/dist/generated/abi/ComputeEngineTreasuryImplementation.js +512 -0
- package/dist/generated/abi/ComputeEngineTreasuryImplementation.js.map +1 -0
- package/dist/generated/abi/ComputeInstructionRegistryImplementation.cjs.map +1 -1
- package/dist/generated/abi/ComputeInstructionRegistryImplementation.js.map +1 -1
- package/dist/generated/abi/DATFactoryImplementation.cjs.map +1 -1
- package/dist/generated/abi/DATFactoryImplementation.js.map +1 -1
- package/dist/generated/abi/DATImplementation.cjs.map +1 -1
- package/dist/generated/abi/DATImplementation.js.map +1 -1
- package/dist/generated/abi/DATPausableImplementation.cjs.map +1 -1
- package/dist/generated/abi/DATPausableImplementation.js.map +1 -1
- package/dist/generated/abi/DATVotesImplementation.cjs.map +1 -1
- package/dist/generated/abi/DATVotesImplementation.js.map +1 -1
- package/dist/generated/abi/DLPPerformanceImplementation.cjs +42 -0
- package/dist/generated/abi/DLPPerformanceImplementation.cjs.map +1 -1
- package/dist/generated/abi/DLPPerformanceImplementation.d.ts +32 -0
- package/dist/generated/abi/DLPPerformanceImplementation.js +42 -0
- package/dist/generated/abi/DLPPerformanceImplementation.js.map +1 -1
- package/dist/generated/abi/DLPRegistryImplementation.cjs +5 -5
- package/dist/generated/abi/DLPRegistryImplementation.cjs.map +1 -1
- package/dist/generated/abi/DLPRegistryImplementation.d.ts +4 -4
- package/dist/generated/abi/DLPRegistryImplementation.js +5 -5
- package/dist/generated/abi/DLPRegistryImplementation.js.map +1 -1
- package/dist/generated/abi/DLPRegistryTreasuryImplementation.cjs.map +1 -1
- package/dist/generated/abi/DLPRegistryTreasuryImplementation.js.map +1 -1
- package/dist/generated/abi/DLPRewardDeployerImplementation.cjs +166 -2
- package/dist/generated/abi/DLPRewardDeployerImplementation.cjs.map +1 -1
- package/dist/generated/abi/DLPRewardDeployerImplementation.d.ts +129 -2
- package/dist/generated/abi/DLPRewardDeployerImplementation.js +166 -2
- package/dist/generated/abi/DLPRewardDeployerImplementation.js.map +1 -1
- package/dist/generated/abi/DLPRewardSwapImplementation.cjs.map +1 -1
- package/dist/generated/abi/DLPRewardSwapImplementation.js.map +1 -1
- package/dist/generated/abi/DataPortabilityGranteesImplementation.cjs +167 -19
- package/dist/generated/abi/DataPortabilityGranteesImplementation.cjs.map +1 -1
- package/dist/generated/abi/DataPortabilityGranteesImplementation.d.ts +127 -14
- package/dist/generated/abi/DataPortabilityGranteesImplementation.js +167 -19
- package/dist/generated/abi/DataPortabilityGranteesImplementation.js.map +1 -1
- package/dist/generated/abi/DataPortabilityPermissionsImplementation.cjs +0 -19
- package/dist/generated/abi/DataPortabilityPermissionsImplementation.cjs.map +1 -1
- package/dist/generated/abi/DataPortabilityPermissionsImplementation.d.ts +0 -14
- package/dist/generated/abi/DataPortabilityPermissionsImplementation.js +0 -19
- package/dist/generated/abi/DataPortabilityPermissionsImplementation.js.map +1 -1
- package/dist/generated/abi/DataPortabilityServersImplementation.cjs +0 -19
- package/dist/generated/abi/DataPortabilityServersImplementation.cjs.map +1 -1
- package/dist/generated/abi/DataPortabilityServersImplementation.d.ts +0 -14
- package/dist/generated/abi/DataPortabilityServersImplementation.js +0 -19
- package/dist/generated/abi/DataPortabilityServersImplementation.js.map +1 -1
- package/dist/generated/abi/DataRefinerRegistryImplementation.cjs.map +1 -1
- package/dist/generated/abi/DataRefinerRegistryImplementation.js.map +1 -1
- package/dist/generated/abi/DataRegistryImplementation.cjs +0 -13
- package/dist/generated/abi/DataRegistryImplementation.cjs.map +1 -1
- package/dist/generated/abi/DataRegistryImplementation.d.ts +0 -10
- package/dist/generated/abi/DataRegistryImplementation.js +0 -13
- package/dist/generated/abi/DataRegistryImplementation.js.map +1 -1
- package/dist/generated/abi/QueryEngineImplementation.cjs.map +1 -1
- package/dist/generated/abi/QueryEngineImplementation.js.map +1 -1
- package/dist/generated/abi/SwapHelperImplementation.cjs +0 -43
- package/dist/generated/abi/SwapHelperImplementation.cjs.map +1 -1
- package/dist/generated/abi/SwapHelperImplementation.d.ts +0 -35
- package/dist/generated/abi/SwapHelperImplementation.js +0 -43
- package/dist/generated/abi/SwapHelperImplementation.js.map +1 -1
- package/dist/generated/abi/TeePoolDedicatedGpuImplementation.cjs.map +1 -1
- package/dist/generated/abi/TeePoolDedicatedGpuImplementation.js.map +1 -1
- package/dist/generated/abi/TeePoolDedicatedStandardImplementation.cjs.map +1 -1
- package/dist/generated/abi/TeePoolDedicatedStandardImplementation.js.map +1 -1
- package/dist/generated/abi/TeePoolEphemeralStandardImplementation.cjs.map +1 -1
- package/dist/generated/abi/TeePoolEphemeralStandardImplementation.js.map +1 -1
- package/dist/generated/abi/TeePoolPersistentGpuImplementation.cjs.map +1 -1
- package/dist/generated/abi/TeePoolPersistentGpuImplementation.js.map +1 -1
- package/dist/generated/abi/TeePoolPersistentStandardImplementation.cjs.map +1 -1
- package/dist/generated/abi/TeePoolPersistentStandardImplementation.js.map +1 -1
- package/dist/generated/abi/TeePoolPhalaImplementation.cjs.map +1 -1
- package/dist/generated/abi/TeePoolPhalaImplementation.js.map +1 -1
- package/dist/generated/abi/UniswapV3QuoterV2Implementation.cjs +297 -0
- package/dist/generated/abi/UniswapV3QuoterV2Implementation.cjs.map +1 -0
- package/dist/generated/abi/UniswapV3QuoterV2Implementation.d.ts +206 -0
- package/dist/generated/abi/UniswapV3QuoterV2Implementation.js +273 -0
- package/dist/generated/abi/UniswapV3QuoterV2Implementation.js.map +1 -0
- package/dist/generated/abi/VanaEpochImplementation.cjs +195 -0
- package/dist/generated/abi/VanaEpochImplementation.cjs.map +1 -1
- package/dist/generated/abi/VanaEpochImplementation.d.ts +151 -0
- package/dist/generated/abi/VanaEpochImplementation.js +195 -0
- package/dist/generated/abi/VanaEpochImplementation.js.map +1 -1
- package/dist/generated/abi/VanaPoolEntityImplementation.cjs +22 -65
- package/dist/generated/abi/VanaPoolEntityImplementation.cjs.map +1 -1
- package/dist/generated/abi/VanaPoolEntityImplementation.d.ts +17 -51
- package/dist/generated/abi/VanaPoolEntityImplementation.js +22 -65
- package/dist/generated/abi/VanaPoolEntityImplementation.js.map +1 -1
- package/dist/generated/abi/VanaPoolStakingImplementation.cjs +113 -1
- package/dist/generated/abi/VanaPoolStakingImplementation.cjs.map +1 -1
- package/dist/generated/abi/VanaPoolStakingImplementation.d.ts +85 -1
- package/dist/generated/abi/VanaPoolStakingImplementation.js +113 -1
- package/dist/generated/abi/VanaPoolStakingImplementation.js.map +1 -1
- package/dist/generated/abi/VanaPoolTreasuryImplementation.cjs.map +1 -1
- package/dist/generated/abi/VanaPoolTreasuryImplementation.js.map +1 -1
- package/dist/generated/abi/VanaTreasuryImplementation.cjs +536 -0
- package/dist/generated/abi/VanaTreasuryImplementation.cjs.map +1 -0
- package/dist/generated/abi/VanaTreasuryImplementation.d.ts +393 -0
- package/dist/generated/abi/VanaTreasuryImplementation.js +512 -0
- package/dist/generated/abi/VanaTreasuryImplementation.js.map +1 -0
- package/dist/generated/abi/WVANAImplementation.cjs +339 -0
- package/dist/generated/abi/WVANAImplementation.cjs.map +1 -0
- package/dist/generated/abi/WVANAImplementation.d.ts +244 -0
- package/dist/generated/abi/WVANAImplementation.js +315 -0
- package/dist/generated/abi/WVANAImplementation.js.map +1 -0
- package/dist/generated/abi/index.cjs +2 -0
- package/dist/generated/abi/index.cjs.map +1 -1
- package/dist/generated/abi/index.d.ts +969 -177
- package/dist/generated/abi/index.js +2 -0
- package/dist/generated/abi/index.js.map +1 -1
- package/dist/{config → generated}/addresses.cjs +126 -69
- package/dist/generated/addresses.cjs.map +1 -0
- package/dist/{config → generated}/addresses.d.ts +127 -160
- package/dist/{config → generated}/addresses.js +126 -69
- package/dist/generated/addresses.js.map +1 -0
- package/dist/generated/event-types.cjs.map +1 -1
- package/dist/generated/event-types.d.ts +352 -397
- package/dist/generated/eventRegistry.cjs +1683 -564
- package/dist/generated/eventRegistry.cjs.map +1 -1
- package/dist/generated/eventRegistry.d.ts +2 -2
- package/dist/generated/eventRegistry.js +1683 -564
- package/dist/generated/eventRegistry.js.map +1 -1
- package/dist/generated/server/server-exports.cjs +22 -0
- package/dist/generated/server/server-exports.cjs.map +1 -1
- package/dist/generated/server/server-exports.d.ts +27 -10
- package/dist/generated/server/server-exports.js +17 -0
- package/dist/generated/server/server-exports.js.map +1 -1
- package/dist/generated/server/server.cjs.map +1 -1
- package/dist/generated/server/server.d.ts +771 -402
- package/dist/generated/subgraph.cjs +797 -32
- package/dist/generated/subgraph.cjs.map +1 -1
- package/dist/generated/subgraph.d.ts +135 -0
- package/dist/generated/subgraph.js +792 -32
- package/dist/generated/subgraph.js.map +1 -1
- package/dist/index.browser.d.ts +5 -1
- package/dist/index.browser.js +22 -1
- package/dist/index.browser.js.map +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.node.cjs +41 -1
- package/dist/index.node.cjs.map +1 -1
- package/dist/index.node.d.ts +53 -6
- package/dist/index.node.js +39 -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 +39 -1
- package/dist/node.js.map +1 -1
- package/dist/platform/browser.cjs +192 -113
- package/dist/platform/browser.cjs.map +1 -1
- package/dist/platform/browser.d.ts +234 -14
- package/dist/platform/browser.js +192 -113
- package/dist/platform/browser.js.map +1 -1
- package/dist/platform/interface.cjs.map +1 -1
- package/dist/platform/interface.d.ts +283 -90
- package/dist/platform/node.cjs +206 -123
- package/dist/platform/node.cjs.map +1 -1
- package/dist/platform/node.d.ts +69 -6
- package/dist/platform/node.js +206 -123
- package/dist/platform/node.js.map +1 -1
- package/dist/server/relayerHandler.cjs +315 -81
- package/dist/server/relayerHandler.cjs.map +1 -1
- package/dist/server/relayerHandler.d.ts +35 -2
- package/dist/server/relayerHandler.js +315 -81
- package/dist/server/relayerHandler.js.map +1 -1
- package/dist/storage/index.cjs +3 -0
- package/dist/storage/index.cjs.map +1 -1
- package/dist/storage/index.d.ts +1 -0
- package/dist/storage/index.js +2 -0
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/manager.cjs +108 -25
- package/dist/storage/manager.cjs.map +1 -1
- package/dist/storage/manager.d.ts +119 -25
- package/dist/storage/manager.js +108 -25
- package/dist/storage/manager.js.map +1 -1
- package/dist/storage/providers/callback-storage.cjs +86 -15
- package/dist/storage/providers/callback-storage.cjs.map +1 -1
- package/dist/storage/providers/callback-storage.d.ts +109 -20
- package/dist/storage/providers/callback-storage.js +86 -15
- package/dist/storage/providers/callback-storage.js.map +1 -1
- package/dist/storage/providers/dropbox.cjs +237 -0
- package/dist/storage/providers/dropbox.cjs.map +1 -0
- package/dist/storage/providers/dropbox.d.ts +39 -0
- package/dist/storage/providers/dropbox.js +215 -0
- package/dist/storage/providers/dropbox.js.map +1 -0
- package/dist/storage/providers/dropbox.test.d.ts +1 -0
- package/dist/storage/providers/pinata.cjs.map +1 -1
- package/dist/storage/providers/pinata.d.ts +12 -14
- package/dist/storage/providers/pinata.js.map +1 -1
- package/dist/tests/data-upload-owner-validation.test.d.ts +1 -0
- package/dist/tests/permissions-transaction-options.test.d.ts +1 -0
- package/dist/types/atomicStore.cjs +31 -0
- 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.map +1 -1
- package/dist/types/blockchain.d.ts +39 -11
- package/dist/types/chains.cjs.map +1 -1
- package/dist/types/chains.d.ts +74 -7
- package/dist/types/chains.js.map +1 -1
- package/dist/types/config.cjs.map +1 -1
- package/dist/types/config.d.ts +38 -4
- package/dist/types/config.js.map +1 -1
- package/dist/types/contracts.cjs.map +1 -1
- package/dist/types/contracts.d.ts +71 -7
- package/dist/types/controller-context.cjs.map +1 -1
- package/dist/types/controller-context.d.ts +4 -1
- package/dist/types/data.cjs.map +1 -1
- package/dist/types/data.d.ts +11 -10
- package/dist/types/generics.cjs.map +1 -1
- package/dist/types/generics.d.ts +81 -10
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.ts +31 -3
- 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/operations.cjs +3 -15
- package/dist/types/operations.cjs.map +1 -1
- package/dist/types/operations.d.ts +131 -39
- package/dist/types/operations.js +2 -13
- 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/permissions.cjs.map +1 -1
- package/dist/types/permissions.d.ts +19 -20
- package/dist/types/personal.cjs.map +1 -1
- package/dist/types/personal.d.ts +150 -14
- package/dist/types/relayer.cjs.map +1 -1
- package/dist/types/relayer.d.ts +145 -24
- package/dist/types/storage.cjs.map +1 -1
- package/dist/types/storage.d.ts +9 -21
- package/dist/types/storage.js.map +1 -1
- package/dist/types/utils.cjs.map +1 -1
- package/dist/types/utils.d.ts +0 -45
- package/dist/utils/__tests__/chainQuery.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/blockchain/registry.cjs +1 -1
- package/dist/utils/blockchain/registry.cjs.map +1 -1
- package/dist/utils/blockchain/registry.js +1 -1
- package/dist/utils/blockchain/registry.js.map +1 -1
- 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/grantFiles.cjs +4 -1
- package/dist/utils/grantFiles.cjs.map +1 -1
- package/dist/utils/grantFiles.d.ts +10 -20
- package/dist/utils/grantFiles.js +4 -1
- package/dist/utils/grantFiles.js.map +1 -1
- package/dist/utils/grantValidation.cjs.map +1 -1
- package/dist/utils/grantValidation.d.ts +95 -16
- package/dist/utils/grantValidation.js.map +1 -1
- package/dist/utils/grants.cjs.map +1 -1
- package/dist/utils/grants.d.ts +93 -12
- 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 +1 -1
- package/dist/utils/ipfs.js +2 -4
- package/dist/utils/ipfs.js.map +1 -1
- package/dist/utils/lazy-import.cjs.map +1 -1
- package/dist/utils/lazy-import.d.ts +32 -7
- package/dist/utils/lazy-import.js.map +1 -1
- package/dist/utils/multicall.cjs +1 -1
- package/dist/utils/multicall.cjs.map +1 -1
- package/dist/utils/multicall.js +1 -1
- package/dist/utils/multicall.js.map +1 -1
- package/dist/utils/signatureCache.cjs +8 -2
- package/dist/utils/signatureCache.cjs.map +1 -1
- package/dist/utils/signatureCache.d.ts +49 -8
- package/dist/utils/signatureCache.js +8 -2
- package/dist/utils/signatureCache.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/transactionHelpers.cjs.map +1 -1
- package/dist/utils/transactionHelpers.d.ts +12 -12
- package/dist/utils/transactionHelpers.js.map +1 -1
- package/dist/utils/typedDataConverter.cjs.map +1 -1
- package/dist/utils/typedDataConverter.d.ts +39 -3
- package/dist/utils/typedDataConverter.js.map +1 -1
- package/dist/utils/urlResolver.cjs +7 -0
- package/dist/utils/urlResolver.cjs.map +1 -1
- package/dist/utils/urlResolver.d.ts +22 -4
- package/dist/utils/urlResolver.js +7 -0
- package/dist/utils/urlResolver.js.map +1 -1
- package/dist/utils/wallet.cjs.map +1 -1
- package/dist/utils/wallet.d.ts +78 -16
- package/dist/utils/wallet.js.map +1 -1
- package/package.json +5 -3
- package/dist/config/addresses.cjs.map +0 -1
- package/dist/config/addresses.js.map +0 -1
- package/dist/types/eccrypto-js.d.cjs +0 -2
- package/dist/types/eccrypto-js.d.js +0 -1
- /package/dist/types/{eccrypto-js.d.cjs.map → operationStore.js.map} +0 -0
- /package/dist/types/{eccrypto-js.d.js.map → options.js.map} +0 -0
package/README.md
CHANGED
|
@@ -1,426 +1,142 @@
|
|
|
1
1
|
# Vana SDK
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
>
|
|
5
|
-
> This SDK is in early alpha development and is **NOT SUITABLE FOR PRODUCTION USE**.
|
|
6
|
-
> Features may change without notice, and data loss or unexpected behavior may occur.
|
|
7
|
-
> Use at your own risk and avoid using with mainnet assets or critical operations.
|
|
8
|
-
|
|
9
|
-
A TypeScript SDK for building data-driven applications on the Vana Network. Enable users to grant gasless permissions, manage encrypted data, and interact with privacy-preserving infrastructure.
|
|
3
|
+
Build user-owned data applications with gasless permissions, encrypted data management, and privacy-preserving infrastructure.
|
|
10
4
|
|
|
11
5
|
[](https://www.npmjs.com/package/@opendatalabs/vana-sdk)
|
|
12
|
-
[ • [Examples](#examples) • [Configuration](#configuration)
|
|
6
|
+
[](https://www.npmjs.com/package/@opendatalabs/vana-sdk)
|
|
7
|
+
[](https://opensource.org/licenses/ISC)
|
|
16
8
|
|
|
17
|
-
|
|
9
|
+
The SDK is production-ready. APIs may evolve in minor versions as we incorporate feedback and expand functionality.
|
|
18
10
|
|
|
19
|
-
|
|
20
|
-
npm install @opendatalabs/vana-sdk
|
|
21
|
-
```
|
|
11
|
+
## Get Started
|
|
22
12
|
|
|
23
|
-
|
|
13
|
+
### 1. Install
|
|
24
14
|
|
|
25
15
|
```bash
|
|
26
|
-
npm install viem
|
|
16
|
+
npm install @opendatalabs/vana-sdk viem
|
|
27
17
|
```
|
|
28
18
|
|
|
29
|
-
|
|
19
|
+
### 2. Set up your client
|
|
30
20
|
|
|
31
|
-
|
|
21
|
+
Choose the build for your environment:
|
|
32
22
|
|
|
33
|
-
|
|
34
|
-
| -------------- | --------------------------------- | ---------------------------------- | ----------------- |
|
|
35
|
-
| **`/browser`** | Browser apps (React, Vue) | Pure JavaScript (@noble/secp256k1) | **Zero config** ✓ |
|
|
36
|
-
| **`/node`** | Server-side (Node.js, API routes) | Native bindings (secp256k1) | Zero config ✓ |
|
|
37
|
-
|
|
38
|
-
### Browser Applications
|
|
39
|
-
|
|
40
|
-
The browser build uses pure JavaScript cryptography and requires **no special configuration**:
|
|
23
|
+
**Browser:**
|
|
41
24
|
|
|
42
25
|
```typescript
|
|
43
|
-
// Browser build - works out of the box with any bundler
|
|
44
26
|
import { Vana, mokshaTestnet } from "@opendatalabs/vana-sdk/browser";
|
|
45
|
-
import { createWalletClient,
|
|
46
|
-
import { privateKeyToAccount } from "viem/accounts";
|
|
27
|
+
import { createWalletClient, custom } from "viem";
|
|
47
28
|
|
|
48
|
-
// Create wallet client
|
|
49
|
-
const account = privateKeyToAccount("0x...");
|
|
50
29
|
const walletClient = createWalletClient({
|
|
51
|
-
account,
|
|
52
30
|
chain: mokshaTestnet,
|
|
53
|
-
transport:
|
|
31
|
+
transport: custom(window.ethereum),
|
|
54
32
|
});
|
|
55
33
|
|
|
56
|
-
|
|
57
|
-
const vana = Vana({
|
|
58
|
-
walletClient,
|
|
59
|
-
relayerUrl: "https://relayer.moksha.vana.org",
|
|
60
|
-
});
|
|
34
|
+
const vana = Vana({ walletClient });
|
|
61
35
|
```
|
|
62
36
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
The Node.js build uses native secp256k1 bindings for optimal performance:
|
|
37
|
+
**Node.js:**
|
|
66
38
|
|
|
67
39
|
```typescript
|
|
68
|
-
// For server-side applications (Next.js API routes, Express)
|
|
69
40
|
import { Vana, mokshaTestnet } from "@opendatalabs/vana-sdk/node";
|
|
70
41
|
import { createWalletClient, http } from "viem";
|
|
71
42
|
import { privateKeyToAccount } from "viem/accounts";
|
|
72
43
|
|
|
73
|
-
// Create wallet client
|
|
74
44
|
const account = privateKeyToAccount("0x...");
|
|
75
|
-
const walletClient = createWalletClient({
|
|
76
|
-
account,
|
|
77
|
-
chain: mokshaTestnet,
|
|
78
|
-
transport: http("https://rpc.moksha.vana.org"),
|
|
79
|
-
});
|
|
80
|
-
|
|
81
|
-
// Initialize SDK
|
|
82
45
|
const vana = Vana({
|
|
83
|
-
walletClient
|
|
46
|
+
walletClient: createWalletClient({
|
|
47
|
+
account,
|
|
48
|
+
chain: mokshaTestnet,
|
|
49
|
+
transport: http("https://rpc.moksha.vana.org"),
|
|
50
|
+
}),
|
|
84
51
|
relayerUrl: "https://relayer.moksha.vana.org",
|
|
85
52
|
});
|
|
86
|
-
|
|
87
|
-
// Grant gasless permission
|
|
88
|
-
const txHash = await vana.permissions.grant({
|
|
89
|
-
grantee: "0x742d35Cc6558Fd4D9e9E0E888F0462ef6919Bd36",
|
|
90
|
-
operation: "llm_inference",
|
|
91
|
-
parameters: {
|
|
92
|
-
prompt: "Analyze my data for insights",
|
|
93
|
-
maxTokens: 1000,
|
|
94
|
-
},
|
|
95
|
-
expiresAt: Math.floor(Date.now() / 1000) + 86400, // 24 hours
|
|
96
|
-
});
|
|
97
53
|
```
|
|
98
54
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
### Gasless Permissions
|
|
102
|
-
|
|
103
|
-
Users can grant data access permissions without paying gas fees through EIP-712 signatures and relay infrastructure.
|
|
55
|
+
### 3. Use the SDK
|
|
104
56
|
|
|
105
57
|
```typescript
|
|
106
|
-
// Grant
|
|
58
|
+
// Grant gasless data access permission
|
|
107
59
|
await vana.permissions.grant({
|
|
108
|
-
grantee:
|
|
109
|
-
operation: "
|
|
60
|
+
grantee: "0x742d35Cc6558Fd4D9e9E0E888F0462ef6919Bd36",
|
|
61
|
+
operation: "llm_inference",
|
|
110
62
|
parameters: {
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
model: "gpt-4",
|
|
63
|
+
prompt: "Analyze my data for insights",
|
|
64
|
+
maxTokens: 1000,
|
|
114
65
|
},
|
|
115
|
-
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
### Encrypted Data Management
|
|
119
|
-
|
|
120
|
-
Upload, query, and manage encrypted user data files with built-in schema validation.
|
|
121
|
-
|
|
122
|
-
```typescript
|
|
123
|
-
// Query user files
|
|
124
|
-
const files = await vana.data.getUserFiles({
|
|
125
|
-
owner: "0x742d35Cc6558Fd4D9e9E0E888F0462ef6919Bd36",
|
|
66
|
+
expiresAt: Math.floor(Date.now() / 1000) + 86400,
|
|
126
67
|
});
|
|
127
68
|
|
|
128
69
|
// Upload encrypted file with decryption permissions
|
|
129
|
-
|
|
70
|
+
await vana.data.upload({
|
|
130
71
|
content: "Sensitive user data",
|
|
131
|
-
filename: "
|
|
72
|
+
filename: "data.json",
|
|
132
73
|
schemaId: 123,
|
|
133
74
|
permissions: [
|
|
134
75
|
{
|
|
135
|
-
account: "0xServerAddress...",
|
|
136
|
-
publicKey: "0x04ServerKey...",
|
|
76
|
+
account: "0xServerAddress...",
|
|
77
|
+
publicKey: "0x04ServerKey...",
|
|
137
78
|
},
|
|
138
79
|
],
|
|
139
80
|
});
|
|
140
|
-
```
|
|
141
|
-
|
|
142
|
-
### Flexible Storage
|
|
143
81
|
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
import { StorageManager, PinataStorage } from "@opendatalabs/vana-sdk/browser";
|
|
149
|
-
// OR for server-side applications
|
|
150
|
-
// import { StorageManager, PinataStorage } from "@opendatalabs/vana-sdk/node";
|
|
151
|
-
|
|
152
|
-
const storageManager = new StorageManager();
|
|
153
|
-
storageManager.register(
|
|
154
|
-
"ipfs",
|
|
155
|
-
new PinataStorage({
|
|
156
|
-
apiKey: process.env.PINATA_API_KEY,
|
|
157
|
-
secretKey: process.env.PINATA_SECRET_KEY,
|
|
158
|
-
}),
|
|
159
|
-
);
|
|
82
|
+
// Query user files
|
|
83
|
+
const files = await vana.data.getUserFiles({
|
|
84
|
+
owner: "0x742d35Cc6558Fd4D9e9E0E888F0462ef6919Bd36",
|
|
85
|
+
});
|
|
160
86
|
```
|
|
161
87
|
|
|
162
|
-
##
|
|
88
|
+
## Features
|
|
163
89
|
|
|
164
|
-
The SDK provides
|
|
90
|
+
The SDK provides six main controllers:
|
|
165
91
|
|
|
166
|
-
| Controller | Purpose
|
|
167
|
-
| ------------- |
|
|
168
|
-
| `permissions` |
|
|
169
|
-
| `data` |
|
|
170
|
-
| `
|
|
171
|
-
| `
|
|
92
|
+
| Controller | Purpose |
|
|
93
|
+
| ------------- | -------------------------------------------- |
|
|
94
|
+
| `permissions` | Grant and revoke gasless data access |
|
|
95
|
+
| `data` | Upload, query, and decrypt encrypted files |
|
|
96
|
+
| `schemas` | Validate data against schemas |
|
|
97
|
+
| `server` | Interact with trusted servers |
|
|
98
|
+
| `protocol` | Direct smart contract access |
|
|
99
|
+
| `operations` | Track and poll transaction status |
|
|
172
100
|
|
|
173
101
|
## Configuration
|
|
174
102
|
|
|
103
|
+
Configure storage, relay, and subgraph services:
|
|
104
|
+
|
|
175
105
|
```typescript
|
|
106
|
+
import { StorageManager, PinataStorage } from "@opendatalabs/vana-sdk/node";
|
|
107
|
+
|
|
176
108
|
const vana = Vana({
|
|
177
109
|
walletClient,
|
|
178
|
-
|
|
179
|
-
// Gasless transaction relay
|
|
180
110
|
relayerUrl: "https://relayer.moksha.vana.org",
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
// Storage configuration
|
|
190
|
-
storageManager: new StorageManager({
|
|
191
|
-
defaultProvider: "ipfs",
|
|
192
|
-
providers: {
|
|
193
|
-
ipfs: new PinataStorage({ apiKey: "...", secretKey: "..." }),
|
|
194
|
-
},
|
|
195
|
-
}),
|
|
196
|
-
|
|
197
|
-
// Subgraph for efficient queries
|
|
111
|
+
storageManager: new StorageManager().register(
|
|
112
|
+
"ipfs",
|
|
113
|
+
new PinataStorage({
|
|
114
|
+
apiKey: process.env.PINATA_API_KEY,
|
|
115
|
+
secretKey: process.env.PINATA_SECRET_KEY,
|
|
116
|
+
})
|
|
117
|
+
),
|
|
198
118
|
subgraphUrl: "https://api.thegraph.com/subgraphs/name/vana/moksha",
|
|
199
119
|
});
|
|
200
120
|
```
|
|
201
121
|
|
|
202
|
-
##
|
|
203
|
-
|
|
204
|
-
The SDK provides specific error types for different failure scenarios:
|
|
122
|
+
## Networks
|
|
205
123
|
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
SchemaValidationError,
|
|
211
|
-
NetworkError,
|
|
212
|
-
} from "@opendatalabs/vana-sdk/browser";
|
|
213
|
-
// OR for server-side applications
|
|
214
|
-
// } from "@opendatalabs/vana-sdk/node";
|
|
215
|
-
|
|
216
|
-
try {
|
|
217
|
-
await vana.permissions.grant(params);
|
|
218
|
-
} catch (error) {
|
|
219
|
-
if (error instanceof UserRejectedRequestError) {
|
|
220
|
-
// User cancelled transaction
|
|
221
|
-
} else if (error instanceof RelayerError) {
|
|
222
|
-
// Relayer service error
|
|
223
|
-
} else if (error instanceof SchemaValidationError) {
|
|
224
|
-
// Schema validation failed
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
```
|
|
124
|
+
| Network | Chain ID | RPC URL |
|
|
125
|
+
| -------------- | -------- | --------------------------- |
|
|
126
|
+
| Vana Mainnet | 1480 | https://rpc.vana.org |
|
|
127
|
+
| Moksha Testnet | 14800 | https://rpc.moksha.vana.org |
|
|
228
128
|
|
|
229
|
-
##
|
|
129
|
+
## Learn More
|
|
230
130
|
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
## Examples
|
|
237
|
-
|
|
238
|
-
### Complete Data Sharing Flow
|
|
239
|
-
|
|
240
|
-
```typescript
|
|
241
|
-
import { Vana } from "@opendatalabs/vana-sdk/browser";
|
|
242
|
-
// OR for server-side applications
|
|
243
|
-
// } from "@opendatalabs/vana-sdk/node";
|
|
244
|
-
|
|
245
|
-
async function shareDataWithServer() {
|
|
246
|
-
const vana = Vana({ walletClient });
|
|
247
|
-
|
|
248
|
-
// Step 1: Upload encrypted file with decryption permissions
|
|
249
|
-
const uploadResult = await vana.data.upload({
|
|
250
|
-
content: { data: "sensitive medical records" },
|
|
251
|
-
filename: "health-data.json",
|
|
252
|
-
schemaId: 123,
|
|
253
|
-
permissions: [
|
|
254
|
-
{
|
|
255
|
-
// Grant decryption access to the AI server
|
|
256
|
-
account: "0x742d35Cc6558Fd4D9e9E0E888F0462ef6919Bd36",
|
|
257
|
-
publicKey: "0x04abc...", // Server's public key for encryption
|
|
258
|
-
},
|
|
259
|
-
],
|
|
260
|
-
});
|
|
261
|
-
|
|
262
|
-
// Step 2: Grant operation permissions for what the server can do
|
|
263
|
-
const permissionResult = await vana.permissions.grant({
|
|
264
|
-
grantee: "0x742d35Cc6558Fd4D9e9E0E888F0462ef6919Bd36",
|
|
265
|
-
fileIds: [BigInt(uploadResult.fileId)],
|
|
266
|
-
operation: "medical_analysis",
|
|
267
|
-
parameters: {
|
|
268
|
-
model: "medical-ai-v2",
|
|
269
|
-
analysisType: "comprehensive",
|
|
270
|
-
},
|
|
271
|
-
});
|
|
272
|
-
|
|
273
|
-
return { uploadResult, permissionResult };
|
|
274
|
-
}
|
|
275
|
-
```
|
|
276
|
-
|
|
277
|
-
### Schema Validation
|
|
278
|
-
|
|
279
|
-
```typescript
|
|
280
|
-
// Define data schema
|
|
281
|
-
const schema = {
|
|
282
|
-
name: "Social Media Export",
|
|
283
|
-
version: "1.0.0",
|
|
284
|
-
dialect: "json",
|
|
285
|
-
schema: {
|
|
286
|
-
type: "object",
|
|
287
|
-
properties: {
|
|
288
|
-
posts: { type: "array" },
|
|
289
|
-
profile: { type: "object" },
|
|
290
|
-
},
|
|
291
|
-
required: ["profile"],
|
|
292
|
-
},
|
|
293
|
-
};
|
|
294
|
-
|
|
295
|
-
// Validate schema
|
|
296
|
-
vana.data.validateDataSchema(schema);
|
|
297
|
-
|
|
298
|
-
// Validate user data
|
|
299
|
-
const userData = {
|
|
300
|
-
profile: { username: "alice" },
|
|
301
|
-
posts: [],
|
|
302
|
-
};
|
|
303
|
-
vana.data.validateDataAgainstSchema(userData, schema);
|
|
304
|
-
```
|
|
305
|
-
|
|
306
|
-
## API Reference
|
|
307
|
-
|
|
308
|
-
### Permissions
|
|
309
|
-
|
|
310
|
-
```typescript
|
|
311
|
-
// Grant operation permission
|
|
312
|
-
await vana.permissions.grant({
|
|
313
|
-
grantee: Address,
|
|
314
|
-
fileIds: bigint[],
|
|
315
|
-
operation: string,
|
|
316
|
-
parameters: object,
|
|
317
|
-
expiresAt?: number
|
|
318
|
-
}): Promise<PermissionGrantResult>
|
|
319
|
-
|
|
320
|
-
// Revoke permission
|
|
321
|
-
await vana.permissions.revoke({
|
|
322
|
-
grantId: string
|
|
323
|
-
}): Promise<Hash>
|
|
324
|
-
|
|
325
|
-
// Get user permissions
|
|
326
|
-
await vana.permissions.getUserPermissions({
|
|
327
|
-
owner: Address
|
|
328
|
-
}): Promise<GrantedPermission[]>
|
|
329
|
-
```
|
|
330
|
-
|
|
331
|
-
### Data
|
|
332
|
-
|
|
333
|
-
```typescript
|
|
334
|
-
// Get user files
|
|
335
|
-
await vana.data.getUserFiles({
|
|
336
|
-
owner: Address
|
|
337
|
-
}): Promise<UserFile[]>
|
|
338
|
-
|
|
339
|
-
// Upload data with automatic encryption
|
|
340
|
-
await vana.data.upload({
|
|
341
|
-
content: string | Blob | Buffer,
|
|
342
|
-
filename?: string,
|
|
343
|
-
schemaId?: number,
|
|
344
|
-
permissions?: Array<{
|
|
345
|
-
account: Address, // Who can decrypt
|
|
346
|
-
publicKey: string // Their public key
|
|
347
|
-
}>,
|
|
348
|
-
encrypt?: boolean // Default: true
|
|
349
|
-
}): Promise<UploadResult>
|
|
350
|
-
|
|
351
|
-
// Validate schema
|
|
352
|
-
vana.data.validateDataSchema(schema: unknown): void
|
|
353
|
-
|
|
354
|
-
// Validate data against schema
|
|
355
|
-
vana.data.validateDataAgainstSchema(data: unknown, schema: DataSchema): void
|
|
356
|
-
```
|
|
357
|
-
|
|
358
|
-
## Documentation
|
|
359
|
-
|
|
360
|
-
- [API Documentation](https://vana-com.github.io/vana-sdk) - Complete TypeDoc API reference
|
|
361
|
-
- [Getting Started](https://vana-com.github.io/vana-sdk/getting-started) - Step-by-step setup guide
|
|
362
|
-
- [Architecture](https://vana-com.github.io/vana-sdk/architecture) - SDK design and patterns
|
|
363
|
-
- [Configuration](https://vana-com.github.io/vana-sdk/configuration) - All configuration options
|
|
364
|
-
- [Security](https://vana-com.github.io/vana-sdk/security) - Best practices and security
|
|
131
|
+
- [Documentation](https://docs.vana.org/docs/sdk) - Comprehensive guides and tutorials
|
|
132
|
+
- [API Reference](https://vana-com.github.io/vana-sdk) - Complete TypeScript documentation
|
|
133
|
+
- [Examples](https://github.com/vana-com/vana-sdk/tree/main/examples) - Full demo applications
|
|
134
|
+
- [Discord](https://discord.gg/vanabuilders) - Community support
|
|
365
135
|
|
|
366
136
|
## Support
|
|
367
137
|
|
|
368
|
-
|
|
369
|
-
- **Issues**: [GitHub Issues](https://github.com/vana-com/vana-sdk/issues)
|
|
370
|
-
- **Discord**: [Join our community](https://discord.gg/vanabuilders)
|
|
371
|
-
|
|
372
|
-
## Generated Code
|
|
373
|
-
|
|
374
|
-
The SDK includes automatically generated code from various sources to provide type-safe interfaces. All generated files are located in `src/generated/` and should **never be edited manually**.
|
|
375
|
-
|
|
376
|
-
### Code Generation Scripts
|
|
377
|
-
|
|
378
|
-
| Script | Purpose | Generated Files |
|
|
379
|
-
| ---------------------------- | -------------------------------------- | --------------------------- |
|
|
380
|
-
| `npm run fetch-abis` | Smart contract ABIs from blockchain | `src/generated/abi/*.ts` |
|
|
381
|
-
| `npm run fetch-server-types` | Personal server API types from OpenAPI | `src/generated/server/*.ts` |
|
|
382
|
-
| `npm run codegen:subgraph` | GraphQL types from subgraph schema | `src/generated/subgraph.ts` |
|
|
383
|
-
|
|
384
|
-
### Network-Specific Generation
|
|
385
|
-
|
|
386
|
-
Some generation scripts support different networks:
|
|
387
|
-
|
|
388
|
-
```bash
|
|
389
|
-
# Generate subgraph types for different networks
|
|
390
|
-
npm run codegen:subgraph:moksha # Moksha testnet (default)
|
|
391
|
-
npm run codegen:subgraph:mainnet # Vana mainnet
|
|
392
|
-
|
|
393
|
-
# Generate ABIs for different networks
|
|
394
|
-
npm run fetch-abis moksha # Moksha testnet (default)
|
|
395
|
-
npm run fetch-abis mainnet # Vana mainnet
|
|
396
|
-
```
|
|
397
|
-
|
|
398
|
-
### Development Workflow
|
|
399
|
-
|
|
400
|
-
When working with the SDK:
|
|
401
|
-
|
|
402
|
-
1. **Never edit generated files** - They are overwritten on regeneration
|
|
403
|
-
2. **Regenerate after schema changes** - Run generation scripts when external schemas change
|
|
404
|
-
3. **Generated files are committed** - They're included in version control for consistency
|
|
405
|
-
4. **ESLint ignores generated code** - Style rules don't apply to generated files
|
|
406
|
-
|
|
407
|
-
```bash
|
|
408
|
-
# Regenerate all code after schema updates
|
|
409
|
-
npm run fetch-abis
|
|
410
|
-
npm run fetch-server-types
|
|
411
|
-
npm run codegen:subgraph
|
|
412
|
-
```
|
|
413
|
-
|
|
414
|
-
## Development
|
|
415
|
-
|
|
416
|
-
```bash
|
|
417
|
-
git clone https://github.com/vana-com/vana-sdk.git
|
|
418
|
-
cd vana-sdk
|
|
419
|
-
npm install
|
|
420
|
-
npm run build
|
|
421
|
-
npm test
|
|
422
|
-
```
|
|
138
|
+
Report issues on [GitHub Issues](https://github.com/vana-com/vana-sdk/issues).
|
|
423
139
|
|
|
424
140
|
## License
|
|
425
141
|
|
|
426
|
-
[ISC
|
|
142
|
+
[ISC](https://opensource.org/licenses/ISC)
|
package/dist/browser.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/browser.ts"],"sourcesContent":["/**\n *
|
|
1
|
+
{"version":3,"sources":["../src/browser.ts"],"sourcesContent":["/**\n * Browser-specific entry point for the Vana SDK.\n *\n * @remarks\n * This module provides the browser implementation of the Vana SDK,\n * optimized for web applications and browser environments. It includes\n * platform-specific implementations using Web APIs for cryptography,\n * storage, and networking operations.\n *\n * Import this module when building web applications:\n * ```typescript\n * import { BrowserPlatformAdapter } from '@opendatalabs/vana-sdk/browser';\n * ```\n *\n * Features:\n * - Web Crypto API for encryption operations\n * - SessionStorage for caching\n * - Fetch API for HTTP requests\n * - Optimized bundle size for browser deployment\n *\n * @example\n * ```typescript\n * // In a React/Vue/Angular application\n * import { BrowserPlatformAdapter } from '@opendatalabs/vana-sdk/browser';\n * import { Vana } from '@opendatalabs/vana-sdk-experimental';\n *\n * const vana = new Vana({\n * platform: new BrowserPlatformAdapter(),\n * network: 'moksha'\n * });\n * ```\n *\n * @category Browser\n * @module browser\n */\nexport { BrowserPlatformAdapter } from \"./platform/browser\";\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAmCA,qBAAuC;","names":[]}
|
package/dist/browser.d.ts
CHANGED
|
@@ -1,4 +1,36 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Browser-specific entry point for the Vana SDK.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* This module provides the browser implementation of the Vana SDK,
|
|
6
|
+
* optimized for web applications and browser environments. It includes
|
|
7
|
+
* platform-specific implementations using Web APIs for cryptography,
|
|
8
|
+
* storage, and networking operations.
|
|
9
|
+
*
|
|
10
|
+
* Import this module when building web applications:
|
|
11
|
+
* ```typescript
|
|
12
|
+
* import { BrowserPlatformAdapter } from '@opendatalabs/vana-sdk/browser';
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* Features:
|
|
16
|
+
* - Web Crypto API for encryption operations
|
|
17
|
+
* - SessionStorage for caching
|
|
18
|
+
* - Fetch API for HTTP requests
|
|
19
|
+
* - Optimized bundle size for browser deployment
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```typescript
|
|
23
|
+
* // In a React/Vue/Angular application
|
|
24
|
+
* import { BrowserPlatformAdapter } from '@opendatalabs/vana-sdk/browser';
|
|
25
|
+
* import { Vana } from '@opendatalabs/vana-sdk-experimental';
|
|
26
|
+
*
|
|
27
|
+
* const vana = new Vana({
|
|
28
|
+
* platform: new BrowserPlatformAdapter(),
|
|
29
|
+
* network: 'moksha'
|
|
30
|
+
* });
|
|
31
|
+
* ```
|
|
32
|
+
*
|
|
33
|
+
* @category Browser
|
|
34
|
+
* @module browser
|
|
3
35
|
*/
|
|
4
36
|
export { BrowserPlatformAdapter } from "./platform/browser";
|
package/dist/browser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/browser.ts"],"sourcesContent":["/**\n *
|
|
1
|
+
{"version":3,"sources":["../src/browser.ts"],"sourcesContent":["/**\n * Browser-specific entry point for the Vana SDK.\n *\n * @remarks\n * This module provides the browser implementation of the Vana SDK,\n * optimized for web applications and browser environments. It includes\n * platform-specific implementations using Web APIs for cryptography,\n * storage, and networking operations.\n *\n * Import this module when building web applications:\n * ```typescript\n * import { BrowserPlatformAdapter } from '@opendatalabs/vana-sdk/browser';\n * ```\n *\n * Features:\n * - Web Crypto API for encryption operations\n * - SessionStorage for caching\n * - Fetch API for HTTP requests\n * - Optimized bundle size for browser deployment\n *\n * @example\n * ```typescript\n * // In a React/Vue/Angular application\n * import { BrowserPlatformAdapter } from '@opendatalabs/vana-sdk/browser';\n * import { Vana } from '@opendatalabs/vana-sdk-experimental';\n *\n * const vana = new Vana({\n * platform: new BrowserPlatformAdapter(),\n * network: 'moksha'\n * });\n * ```\n *\n * @category Browser\n * @module browser\n */\nexport { BrowserPlatformAdapter } from \"./platform/browser\";\n"],"mappings":"AAmCA,SAAS,8BAA8B;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/chains/index.ts"],"sourcesContent":["/**\n *
|
|
1
|
+
{"version":3,"sources":["../../src/chains/index.ts"],"sourcesContent":["/**\n * Provides chain configurations for the Vana network ecosystem.\n *\n * @remarks\n * This module exports all chain definitions and utilities needed to connect\n * to Vana networks. It includes configurations for mainnet and testnet\n * environments with their respective RPC endpoints, contract addresses,\n * and network parameters.\n *\n * Available networks:\n * - **Vana Mainnet** (chainId: 1480) - Production network\n * - **Moksha Testnet** (chainId: 14800) - Test network\n *\n * @example\n * ```typescript\n * import { moksha, vanaMainnet, getChainConfig } from '@opendatalabs/vana-sdk/chains';\n * import { createPublicClient, http } from 'viem';\n *\n * // Connect to moksha testnet\n * const client = createPublicClient({\n * chain: moksha,\n * transport: http()\n * });\n *\n * // Get chain config by ID\n * const config = getChainConfig(14800);\n * console.log(config?.name); // \"Moksha Testnet\"\n * ```\n *\n * @category Chains\n * @module chains\n */\n\nexport type { VanaChainConfig } from \"./definitions\";\nexport {\n vanaMainnet,\n moksha,\n mokshaTestnet,\n getChainConfig,\n getAllChains,\n} from \"./definitions\";\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkCA,yBAMO;","names":[]}
|
package/dist/chains/index.d.ts
CHANGED
|
@@ -1,5 +1,34 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Provides chain configurations for the Vana network ecosystem.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* This module exports all chain definitions and utilities needed to connect
|
|
6
|
+
* to Vana networks. It includes configurations for mainnet and testnet
|
|
7
|
+
* environments with their respective RPC endpoints, contract addresses,
|
|
8
|
+
* and network parameters.
|
|
9
|
+
*
|
|
10
|
+
* Available networks:
|
|
11
|
+
* - **Vana Mainnet** (chainId: 1480) - Production network
|
|
12
|
+
* - **Moksha Testnet** (chainId: 14800) - Test network
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* import { moksha, vanaMainnet, getChainConfig } from '@opendatalabs/vana-sdk/chains';
|
|
17
|
+
* import { createPublicClient, http } from 'viem';
|
|
18
|
+
*
|
|
19
|
+
* // Connect to moksha testnet
|
|
20
|
+
* const client = createPublicClient({
|
|
21
|
+
* chain: moksha,
|
|
22
|
+
* transport: http()
|
|
23
|
+
* });
|
|
24
|
+
*
|
|
25
|
+
* // Get chain config by ID
|
|
26
|
+
* const config = getChainConfig(14800);
|
|
27
|
+
* console.log(config?.name); // "Moksha Testnet"
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* @category Chains
|
|
31
|
+
* @module chains
|
|
3
32
|
*/
|
|
4
33
|
export type { VanaChainConfig } from "./definitions";
|
|
5
34
|
export { vanaMainnet, moksha, mokshaTestnet, getChainConfig, getAllChains, } from "./definitions";
|
package/dist/chains/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/chains/index.ts"],"sourcesContent":["/**\n *
|
|
1
|
+
{"version":3,"sources":["../../src/chains/index.ts"],"sourcesContent":["/**\n * Provides chain configurations for the Vana network ecosystem.\n *\n * @remarks\n * This module exports all chain definitions and utilities needed to connect\n * to Vana networks. It includes configurations for mainnet and testnet\n * environments with their respective RPC endpoints, contract addresses,\n * and network parameters.\n *\n * Available networks:\n * - **Vana Mainnet** (chainId: 1480) - Production network\n * - **Moksha Testnet** (chainId: 14800) - Test network\n *\n * @example\n * ```typescript\n * import { moksha, vanaMainnet, getChainConfig } from '@opendatalabs/vana-sdk/chains';\n * import { createPublicClient, http } from 'viem';\n *\n * // Connect to moksha testnet\n * const client = createPublicClient({\n * chain: moksha,\n * transport: http()\n * });\n *\n * // Get chain config by ID\n * const config = getChainConfig(14800);\n * console.log(config?.name); // \"Moksha Testnet\"\n * ```\n *\n * @category Chains\n * @module chains\n */\n\nexport type { VanaChainConfig } from \"./definitions\";\nexport {\n vanaMainnet,\n moksha,\n mokshaTestnet,\n getChainConfig,\n getAllChains,\n} from \"./definitions\";\n"],"mappings":"AAkCA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|