@opendatalabs/vana-sdk 2.3.0 → 3.0.1

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.
Files changed (623) hide show
  1. package/README.md +76 -92
  2. package/dist/auth/errors.cjs +54 -0
  3. package/dist/auth/errors.cjs.map +1 -0
  4. package/dist/auth/errors.d.ts +26 -0
  5. package/dist/auth/errors.js +28 -0
  6. package/dist/auth/errors.js.map +1 -0
  7. package/dist/auth/pkce.cjs +100 -0
  8. package/dist/auth/pkce.cjs.map +1 -0
  9. package/dist/auth/pkce.d.ts +55 -0
  10. package/dist/auth/pkce.js +71 -0
  11. package/dist/auth/pkce.js.map +1 -0
  12. package/dist/auth/token-store.cjs +59 -0
  13. package/dist/auth/token-store.cjs.map +1 -0
  14. package/dist/auth/token-store.d.ts +61 -0
  15. package/dist/auth/token-store.js +35 -0
  16. package/dist/auth/token-store.js.map +1 -0
  17. package/dist/auth/web3-signed-builder.cjs +70 -0
  18. package/dist/auth/web3-signed-builder.cjs.map +1 -0
  19. package/dist/auth/web3-signed-builder.d.ts +47 -0
  20. package/dist/auth/web3-signed-builder.js +45 -0
  21. package/dist/auth/web3-signed-builder.js.map +1 -0
  22. package/dist/auth/web3-signed.cjs +150 -0
  23. package/dist/auth/web3-signed.cjs.map +1 -0
  24. package/dist/auth/web3-signed.d.ts +59 -0
  25. package/dist/auth/web3-signed.js +129 -0
  26. package/dist/auth/web3-signed.js.map +1 -0
  27. package/dist/chains/definitions.cjs +2 -6
  28. package/dist/chains/definitions.cjs.map +1 -1
  29. package/dist/chains/definitions.d.ts +1 -7
  30. package/dist/chains/definitions.js +2 -6
  31. package/dist/chains/definitions.js.map +1 -1
  32. package/dist/config/chains.d.ts +18 -0
  33. package/dist/config/contracts.config.cjs +7 -95
  34. package/dist/config/contracts.config.cjs.map +1 -1
  35. package/dist/config/contracts.config.d.ts +0 -54
  36. package/dist/config/contracts.config.js +6 -93
  37. package/dist/config/contracts.config.js.map +1 -1
  38. package/dist/config/default-services.cjs +0 -10
  39. package/dist/config/default-services.cjs.map +1 -1
  40. package/dist/config/default-services.d.ts +1 -20
  41. package/dist/config/default-services.js +0 -9
  42. package/dist/config/default-services.js.map +1 -1
  43. package/dist/crypto/ecies/interface.cjs +2 -0
  44. package/dist/crypto/ecies/interface.cjs.map +1 -1
  45. package/dist/crypto/ecies/interface.js +2 -0
  46. package/dist/crypto/ecies/interface.js.map +1 -1
  47. package/dist/crypto/envelope/openpgp.cjs +59 -0
  48. package/dist/crypto/envelope/openpgp.cjs.map +1 -0
  49. package/dist/crypto/envelope/openpgp.d.ts +28 -0
  50. package/dist/crypto/envelope/openpgp.js +24 -0
  51. package/dist/crypto/envelope/openpgp.js.map +1 -0
  52. package/dist/crypto/keys/derive.cjs +65 -0
  53. package/dist/crypto/keys/derive.cjs.map +1 -0
  54. package/dist/crypto/keys/derive.d.ts +45 -0
  55. package/dist/crypto/keys/derive.js +38 -0
  56. package/dist/crypto/keys/derive.js.map +1 -0
  57. package/dist/errors.cjs +10 -0
  58. package/dist/errors.cjs.map +1 -1
  59. package/dist/errors.js +10 -0
  60. package/dist/errors.js.map +1 -1
  61. package/dist/generated/abi/index.cjs +2 -37
  62. package/dist/generated/abi/index.cjs.map +1 -1
  63. package/dist/generated/abi/index.d.ts +2683 -9296
  64. package/dist/generated/abi/index.js +2 -29
  65. package/dist/generated/abi/index.js.map +1 -1
  66. package/dist/generated/addresses.cjs +5 -107
  67. package/dist/generated/addresses.cjs.map +1 -1
  68. package/dist/generated/addresses.d.ts +5 -99
  69. package/dist/generated/addresses.js +5 -105
  70. package/dist/generated/addresses.js.map +1 -1
  71. package/dist/index.browser.d.ts +24 -140
  72. package/dist/index.browser.js +32258 -114
  73. package/dist/index.browser.js.map +7 -1
  74. package/dist/index.node.cjs +32980 -160
  75. package/dist/index.node.cjs.map +7 -1
  76. package/dist/index.node.d.ts +23 -210
  77. package/dist/index.node.js +32884 -133
  78. package/dist/index.node.js.map +7 -1
  79. package/dist/protocol/data-file.cjs +56 -0
  80. package/dist/protocol/data-file.cjs.map +1 -0
  81. package/dist/protocol/data-file.d.ts +20 -0
  82. package/dist/protocol/data-file.js +30 -0
  83. package/dist/protocol/data-file.js.map +1 -0
  84. package/dist/protocol/eip712.cjs +123 -0
  85. package/dist/protocol/eip712.cjs.map +1 -0
  86. package/dist/protocol/eip712.d.ts +117 -0
  87. package/dist/protocol/eip712.js +90 -0
  88. package/dist/protocol/eip712.js.map +1 -0
  89. package/dist/protocol/gateway.cjs +226 -0
  90. package/dist/protocol/gateway.cjs.map +1 -0
  91. package/dist/protocol/gateway.d.ts +120 -0
  92. package/dist/protocol/gateway.js +202 -0
  93. package/dist/protocol/gateway.js.map +1 -0
  94. package/dist/protocol/grants.cjs +146 -0
  95. package/dist/protocol/grants.cjs.map +1 -0
  96. package/dist/protocol/grants.d.ts +31 -0
  97. package/dist/protocol/grants.js +123 -0
  98. package/dist/protocol/grants.js.map +1 -0
  99. package/dist/protocol/scopes.cjs +78 -0
  100. package/dist/protocol/scopes.cjs.map +1 -0
  101. package/dist/protocol/scopes.d.ts +13 -0
  102. package/dist/protocol/scopes.js +50 -0
  103. package/dist/protocol/scopes.js.map +1 -0
  104. package/dist/{types/atomicStore.cjs → storage/default.cjs} +9 -8
  105. package/dist/storage/default.cjs.map +1 -0
  106. package/dist/storage/default.d.ts +4 -0
  107. package/dist/storage/default.js +8 -0
  108. package/dist/storage/default.js.map +1 -0
  109. package/dist/storage/index.cjs +11 -2
  110. package/dist/storage/index.cjs.map +1 -1
  111. package/dist/storage/index.d.ts +9 -0
  112. package/dist/storage/index.js +7 -1
  113. package/dist/storage/index.js.map +1 -1
  114. package/dist/storage/providers/callback-storage.cjs +1 -0
  115. package/dist/storage/providers/callback-storage.cjs.map +1 -1
  116. package/dist/storage/providers/callback-storage.js +1 -0
  117. package/dist/storage/providers/callback-storage.js.map +1 -1
  118. package/dist/storage/providers/dropbox.cjs +1 -0
  119. package/dist/storage/providers/dropbox.cjs.map +1 -1
  120. package/dist/storage/providers/dropbox.js +1 -0
  121. package/dist/storage/providers/dropbox.js.map +1 -1
  122. package/dist/storage/providers/google-drive.cjs +1 -0
  123. package/dist/storage/providers/google-drive.cjs.map +1 -1
  124. package/dist/storage/providers/google-drive.js +1 -0
  125. package/dist/storage/providers/google-drive.js.map +1 -1
  126. package/dist/storage/providers/ipfs.cjs +1 -0
  127. package/dist/storage/providers/ipfs.cjs.map +1 -1
  128. package/dist/storage/providers/ipfs.js +1 -0
  129. package/dist/storage/providers/ipfs.js.map +1 -1
  130. package/dist/storage/providers/pinata.cjs +1 -0
  131. package/dist/storage/providers/pinata.cjs.map +1 -1
  132. package/dist/storage/providers/pinata.js +1 -0
  133. package/dist/storage/providers/pinata.js.map +1 -1
  134. package/dist/storage/providers/r2.cjs +376 -0
  135. package/dist/storage/providers/r2.cjs.map +1 -0
  136. package/dist/storage/providers/r2.d.ts +91 -0
  137. package/dist/storage/providers/r2.js +354 -0
  138. package/dist/storage/providers/r2.js.map +1 -0
  139. package/dist/storage/providers/vana-storage.cjs +251 -0
  140. package/dist/storage/providers/vana-storage.cjs.map +1 -0
  141. package/dist/storage/providers/vana-storage.d.ts +100 -0
  142. package/dist/storage/providers/vana-storage.js +231 -0
  143. package/dist/storage/providers/vana-storage.js.map +1 -0
  144. package/dist/types/config.cjs +0 -34
  145. package/dist/types/config.cjs.map +1 -1
  146. package/dist/types/config.d.ts +1 -607
  147. package/dist/types/config.js +0 -22
  148. package/dist/types/config.js.map +1 -1
  149. package/dist/types/contracts.cjs.map +1 -1
  150. package/dist/types/contracts.d.ts +1 -1
  151. package/dist/types/index.cjs +2 -33
  152. package/dist/types/index.cjs.map +1 -1
  153. package/dist/types/index.d.ts +2 -33
  154. package/dist/types/index.js +1 -35
  155. package/dist/types/index.js.map +1 -1
  156. package/dist/types/ps-errors.cjs +91 -0
  157. package/dist/types/ps-errors.cjs.map +1 -0
  158. package/dist/types/ps-errors.d.ts +26 -0
  159. package/dist/types/ps-errors.js +66 -0
  160. package/dist/types/ps-errors.js.map +1 -0
  161. package/dist/types.cjs.map +1 -1
  162. package/dist/types.d.ts +0 -29
  163. package/dist/types.js.map +1 -1
  164. package/package.json +7 -25
  165. package/dist/client/enhancedResponse.cjs +0 -164
  166. package/dist/client/enhancedResponse.cjs.map +0 -1
  167. package/dist/client/enhancedResponse.d.ts +0 -120
  168. package/dist/client/enhancedResponse.js +0 -138
  169. package/dist/client/enhancedResponse.js.map +0 -1
  170. package/dist/controllers/__tests__/data-consistency-integration.test.d.ts +0 -7
  171. package/dist/controllers/base.cjs +0 -116
  172. package/dist/controllers/base.cjs.map +0 -1
  173. package/dist/controllers/base.d.ts +0 -94
  174. package/dist/controllers/base.js +0 -92
  175. package/dist/controllers/base.js.map +0 -1
  176. package/dist/controllers/data.cjs +0 -2633
  177. package/dist/controllers/data.cjs.map +0 -1
  178. package/dist/controllers/data.d.ts +0 -1067
  179. package/dist/controllers/data.js +0 -2626
  180. package/dist/controllers/data.js.map +0 -1
  181. package/dist/controllers/operations.cjs +0 -430
  182. package/dist/controllers/operations.cjs.map +0 -1
  183. package/dist/controllers/operations.d.ts +0 -229
  184. package/dist/controllers/operations.js +0 -406
  185. package/dist/controllers/operations.js.map +0 -1
  186. package/dist/controllers/permissions.cjs +0 -4368
  187. package/dist/controllers/permissions.cjs.map +0 -1
  188. package/dist/controllers/permissions.d.ts +0 -1411
  189. package/dist/controllers/permissions.js +0 -4344
  190. package/dist/controllers/permissions.js.map +0 -1
  191. package/dist/controllers/protocol.cjs +0 -183
  192. package/dist/controllers/protocol.cjs.map +0 -1
  193. package/dist/controllers/protocol.d.ts +0 -138
  194. package/dist/controllers/protocol.js +0 -163
  195. package/dist/controllers/protocol.js.map +0 -1
  196. package/dist/controllers/schemas.cjs +0 -678
  197. package/dist/controllers/schemas.cjs.map +0 -1
  198. package/dist/controllers/schemas.d.ts +0 -293
  199. package/dist/controllers/schemas.js +0 -654
  200. package/dist/controllers/schemas.js.map +0 -1
  201. package/dist/controllers/server.cjs +0 -643
  202. package/dist/controllers/server.cjs.map +0 -1
  203. package/dist/controllers/server.d.ts +0 -322
  204. package/dist/controllers/server.js +0 -624
  205. package/dist/controllers/server.js.map +0 -1
  206. package/dist/controllers/staking.cjs +0 -626
  207. package/dist/controllers/staking.cjs.map +0 -1
  208. package/dist/controllers/staking.d.ts +0 -457
  209. package/dist/controllers/staking.js +0 -602
  210. package/dist/controllers/staking.js.map +0 -1
  211. package/dist/core/__tests__/pollingManager.test.d.ts +0 -4
  212. package/dist/core/apiClient.cjs +0 -378
  213. package/dist/core/apiClient.cjs.map +0 -1
  214. package/dist/core/apiClient.d.ts +0 -286
  215. package/dist/core/apiClient.js +0 -359
  216. package/dist/core/apiClient.js.map +0 -1
  217. package/dist/core/generics.cjs +0 -417
  218. package/dist/core/generics.cjs.map +0 -1
  219. package/dist/core/generics.d.ts +0 -205
  220. package/dist/core/generics.js +0 -386
  221. package/dist/core/generics.js.map +0 -1
  222. package/dist/core/health.cjs +0 -289
  223. package/dist/core/health.cjs.map +0 -1
  224. package/dist/core/health.d.ts +0 -143
  225. package/dist/core/health.js +0 -265
  226. package/dist/core/health.js.map +0 -1
  227. package/dist/core/inMemoryNonceManager.cjs +0 -138
  228. package/dist/core/inMemoryNonceManager.cjs.map +0 -1
  229. package/dist/core/inMemoryNonceManager.d.ts +0 -69
  230. package/dist/core/inMemoryNonceManager.js +0 -114
  231. package/dist/core/inMemoryNonceManager.js.map +0 -1
  232. package/dist/core/nonceManager.cjs +0 -304
  233. package/dist/core/nonceManager.cjs.map +0 -1
  234. package/dist/core/nonceManager.d.ts +0 -116
  235. package/dist/core/nonceManager.js +0 -280
  236. package/dist/core/nonceManager.js.map +0 -1
  237. package/dist/core/pollingManager.cjs +0 -292
  238. package/dist/core/pollingManager.cjs.map +0 -1
  239. package/dist/core/pollingManager.d.ts +0 -120
  240. package/dist/core/pollingManager.js +0 -268
  241. package/dist/core/pollingManager.js.map +0 -1
  242. package/dist/core.cjs +0 -781
  243. package/dist/core.cjs.map +0 -1
  244. package/dist/core.d.ts +0 -496
  245. package/dist/core.js +0 -756
  246. package/dist/core.js.map +0 -1
  247. package/dist/diagnostics.cjs +0 -37
  248. package/dist/diagnostics.cjs.map +0 -1
  249. package/dist/diagnostics.d.ts +0 -24
  250. package/dist/diagnostics.js +0 -13
  251. package/dist/diagnostics.js.map +0 -1
  252. package/dist/generated/abi/DLPPerformanceImplementation.cjs +0 -1202
  253. package/dist/generated/abi/DLPPerformanceImplementation.cjs.map +0 -1
  254. package/dist/generated/abi/DLPPerformanceImplementation.d.ts +0 -914
  255. package/dist/generated/abi/DLPPerformanceImplementation.js +0 -1178
  256. package/dist/generated/abi/DLPPerformanceImplementation.js.map +0 -1
  257. package/dist/generated/abi/DLPRewardDeployerImplementation.cjs +0 -1112
  258. package/dist/generated/abi/DLPRewardDeployerImplementation.cjs.map +0 -1
  259. package/dist/generated/abi/DLPRewardDeployerImplementation.d.ts +0 -840
  260. package/dist/generated/abi/DLPRewardDeployerImplementation.js +0 -1088
  261. package/dist/generated/abi/DLPRewardDeployerImplementation.js.map +0 -1
  262. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.cjs +0 -612
  263. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.cjs.map +0 -1
  264. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.d.ts +0 -451
  265. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.js +0 -588
  266. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.js.map +0 -1
  267. package/dist/generated/abi/DLPRewardSwapImplementation.cjs +0 -939
  268. package/dist/generated/abi/DLPRewardSwapImplementation.cjs.map +0 -1
  269. package/dist/generated/abi/DLPRewardSwapImplementation.d.ts +0 -705
  270. package/dist/generated/abi/DLPRewardSwapImplementation.js +0 -915
  271. package/dist/generated/abi/DLPRewardSwapImplementation.js.map +0 -1
  272. package/dist/generated/abi/DLPRootImplementation.cjs +0 -1644
  273. package/dist/generated/abi/DLPRootImplementation.cjs.map +0 -1
  274. package/dist/generated/abi/DLPRootImplementation.d.ts +0 -1246
  275. package/dist/generated/abi/DLPRootImplementation.js +0 -1620
  276. package/dist/generated/abi/DLPRootImplementation.js.map +0 -1
  277. package/dist/generated/abi/DataLiquidityPoolImplementation.cjs +0 -985
  278. package/dist/generated/abi/DataLiquidityPoolImplementation.cjs.map +0 -1
  279. package/dist/generated/abi/DataLiquidityPoolImplementation.d.ts +0 -735
  280. package/dist/generated/abi/DataLiquidityPoolImplementation.js +0 -961
  281. package/dist/generated/abi/DataLiquidityPoolImplementation.js.map +0 -1
  282. package/dist/generated/abi/SwapHelperImplementation.cjs +0 -976
  283. package/dist/generated/abi/SwapHelperImplementation.cjs.map +0 -1
  284. package/dist/generated/abi/SwapHelperImplementation.d.ts +0 -728
  285. package/dist/generated/abi/SwapHelperImplementation.js +0 -952
  286. package/dist/generated/abi/SwapHelperImplementation.js.map +0 -1
  287. package/dist/generated/abi/TeePoolImplementation.cjs +0 -1313
  288. package/dist/generated/abi/TeePoolImplementation.cjs.map +0 -1
  289. package/dist/generated/abi/TeePoolImplementation.d.ts +0 -992
  290. package/dist/generated/abi/TeePoolImplementation.js +0 -1289
  291. package/dist/generated/abi/TeePoolImplementation.js.map +0 -1
  292. package/dist/generated/event-types.cjs +0 -17
  293. package/dist/generated/event-types.cjs.map +0 -1
  294. package/dist/generated/event-types.d.ts +0 -816
  295. package/dist/generated/event-types.js +0 -1
  296. package/dist/generated/event-types.js.map +0 -1
  297. package/dist/generated/eventRegistry.cjs +0 -4512
  298. package/dist/generated/eventRegistry.cjs.map +0 -1
  299. package/dist/generated/eventRegistry.d.ts +0 -14
  300. package/dist/generated/eventRegistry.js +0 -4487
  301. package/dist/generated/eventRegistry.js.map +0 -1
  302. package/dist/generated/server/server-exports.cjs +0 -45
  303. package/dist/generated/server/server-exports.cjs.map +0 -1
  304. package/dist/generated/server/server-exports.d.ts +0 -36
  305. package/dist/generated/server/server-exports.js +0 -19
  306. package/dist/generated/server/server-exports.js.map +0 -1
  307. package/dist/generated/server/server.cjs +0 -17
  308. package/dist/generated/server/server.cjs.map +0 -1
  309. package/dist/generated/server/server.d.ts +0 -907
  310. package/dist/generated/server/server.js +0 -1
  311. package/dist/generated/server/server.js.map +0 -1
  312. package/dist/generated/subgraph.cjs +0 -1440
  313. package/dist/generated/subgraph.cjs.map +0 -1
  314. package/dist/generated/subgraph.d.ts +0 -6113
  315. package/dist/generated/subgraph.js +0 -1404
  316. package/dist/generated/subgraph.js.map +0 -1
  317. package/dist/lib/__tests__/redisAtomicStore.test.d.ts +0 -1
  318. package/dist/lib/redisAtomicStore.cjs +0 -201
  319. package/dist/lib/redisAtomicStore.cjs.map +0 -1
  320. package/dist/lib/redisAtomicStore.d.ts +0 -120
  321. package/dist/lib/redisAtomicStore.js +0 -177
  322. package/dist/lib/redisAtomicStore.js.map +0 -1
  323. package/dist/server/relayerHandler.cjs +0 -452
  324. package/dist/server/relayerHandler.cjs.map +0 -1
  325. package/dist/server/relayerHandler.d.ts +0 -69
  326. package/dist/server/relayerHandler.js +0 -428
  327. package/dist/server/relayerHandler.js.map +0 -1
  328. package/dist/tests/abi.test.d.ts +0 -1
  329. package/dist/tests/chains-definitions.test.d.ts +0 -1
  330. package/dist/tests/core-encryption.test.d.ts +0 -1
  331. package/dist/tests/core-extended.test.d.ts +0 -1
  332. package/dist/tests/core-generics-coverage.test.d.ts +0 -1
  333. package/dist/tests/coverage-boost.test.d.ts +0 -1
  334. package/dist/tests/crypto-cross-platform-compatibility.test.d.ts +0 -1
  335. package/dist/tests/data-addfile-permissions-schema.test.d.ts +0 -1
  336. package/dist/tests/data-additional-methods.test.d.ts +0 -1
  337. package/dist/tests/data-controller-edge-cases.test.d.ts +0 -1
  338. package/dist/tests/data-ipfs-gateways.test.d.ts +0 -1
  339. package/dist/tests/data-relayer.test.d.ts +0 -1
  340. package/dist/tests/data-schema-validation.test.d.ts +0 -1
  341. package/dist/tests/data-simple-methods.test.d.ts +0 -1
  342. package/dist/tests/data-upload-owner-validation.test.d.ts +0 -1
  343. package/dist/tests/data.test.d.ts +0 -1
  344. package/dist/tests/demo-integration.test.d.ts +0 -1
  345. package/dist/tests/demo-trusted-server-integration.test.d.ts +0 -1
  346. package/dist/tests/download-relayer.test.d.ts +0 -1
  347. package/dist/tests/dual-mode-permissions.test.d.ts +0 -1
  348. package/dist/tests/dual-mode-trusted-servers.test.d.ts +0 -1
  349. package/dist/tests/encryption-correct-implementation.test.d.ts +0 -1
  350. package/dist/tests/encryption-coverage.test.d.ts +0 -1
  351. package/dist/tests/encryption-edge-cases.test.d.ts +0 -1
  352. package/dist/tests/encryption-utils-updated.test.d.ts +0 -1
  353. package/dist/tests/errors-coverage.test.d.ts +0 -1
  354. package/dist/tests/factories/mockFactory.d.ts +0 -316
  355. package/dist/tests/fakes/FakeStorageManager.d.ts +0 -200
  356. package/dist/tests/fakes/FakeStorageManager.test.d.ts +0 -1
  357. package/dist/tests/fakes/FakeWaitForTransactionEvents.d.ts +0 -170
  358. package/dist/tests/fakes/FakeWaitForTransactionEvents.test.d.ts +0 -1
  359. package/dist/tests/fakes/fake-pgp-port.d.ts +0 -13
  360. package/dist/tests/grantValidation-edge-cases.test.d.ts +0 -1
  361. package/dist/tests/grantValidation-unreachable-branch.test.d.ts +0 -1
  362. package/dist/tests/helper-methods.test.d.ts +0 -1
  363. package/dist/tests/helpers/typedMocks.d.ts +0 -64
  364. package/dist/tests/index-browser.test.d.ts +0 -1
  365. package/dist/tests/index-node.test.d.ts +0 -1
  366. package/dist/tests/index.test.d.ts +0 -1
  367. package/dist/tests/mocks/platformAdapter.d.ts +0 -12
  368. package/dist/tests/new-permissions-methods.test.d.ts +0 -1
  369. package/dist/tests/no-buffer-browser.test.d.ts +0 -1
  370. package/dist/tests/permissions-grantee.test.d.ts +0 -1
  371. package/dist/tests/permissions-revoke-relayer.test.d.ts +0 -1
  372. package/dist/tests/permissions-schema-validation.test.d.ts +0 -1
  373. package/dist/tests/permissions-server-files.test.d.ts +0 -1
  374. package/dist/tests/permissions-transaction-options.test.d.ts +0 -1
  375. package/dist/tests/permissions-trust-servers.test.d.ts +0 -1
  376. package/dist/tests/permissions.test.d.ts +0 -1
  377. package/dist/tests/personal.test.d.ts +0 -1
  378. package/dist/tests/platform-browser.test.d.ts +0 -1
  379. package/dist/tests/platform-crypto-expanded.test.d.ts +0 -1
  380. package/dist/tests/platform-crypto.test.d.ts +0 -1
  381. package/dist/tests/platform-index.test.d.ts +0 -1
  382. package/dist/tests/platform-node.test.d.ts +0 -1
  383. package/dist/tests/platform-shared-utils.test.d.ts +0 -1
  384. package/dist/tests/platform-updated.test.d.ts +0 -1
  385. package/dist/tests/protocol-additional-methods.test.d.ts +0 -1
  386. package/dist/tests/protocol.test.d.ts +0 -1
  387. package/dist/tests/read-only-mode.test.d.ts +0 -1
  388. package/dist/tests/relayer-integration.test.d.ts +0 -1
  389. package/dist/tests/relayer-unified.test.d.ts +0 -1
  390. package/dist/tests/schemas.test.d.ts +0 -1
  391. package/dist/tests/server-relayer-handler.test.d.ts +0 -1
  392. package/dist/tests/signatureFormatter.test.d.ts +0 -1
  393. package/dist/tests/staking.test.d.ts +0 -1
  394. package/dist/tests/trusted-server-queries.test.d.ts +0 -1
  395. package/dist/tests/typedDataConverter.test.d.ts +0 -1
  396. package/dist/tests/types-contracts.test.d.ts +0 -1
  397. package/dist/tests/types-data.test.d.ts +0 -1
  398. package/dist/tests/types-external-apis.test.d.ts +0 -1
  399. package/dist/tests/types-generics.test.d.ts +0 -1
  400. package/dist/tests/types-permissions.test.d.ts +0 -1
  401. package/dist/tests/types-upload-params.test.d.ts +0 -1
  402. package/dist/tests/types.test.d.ts +0 -1
  403. package/dist/tests/utils-formatters.test.d.ts +0 -1
  404. package/dist/tests/utils-grantFiles-edge-cases.test.d.ts +0 -1
  405. package/dist/tests/utils-grantFiles-validation.test.d.ts +0 -1
  406. package/dist/tests/utils-grantFiles.test.d.ts +0 -1
  407. package/dist/tests/utils-grantValidation-consolidated.test.d.ts +0 -1
  408. package/dist/tests/utils-grants.test.d.ts +0 -1
  409. package/dist/tests/utils-ipfs-additional.test.d.ts +0 -1
  410. package/dist/tests/utils-ipfs.test.d.ts +0 -4
  411. package/dist/tests/utils-schemaValidation.test.d.ts +0 -1
  412. package/dist/tests/vana.test.d.ts +0 -1
  413. package/dist/tests/wallet-crypto-compatibility.test.d.ts +0 -1
  414. package/dist/types/atomicStore.cjs.map +0 -1
  415. package/dist/types/atomicStore.d.ts +0 -236
  416. package/dist/types/atomicStore.js +0 -7
  417. package/dist/types/atomicStore.js.map +0 -1
  418. package/dist/types/blockchain.cjs +0 -17
  419. package/dist/types/blockchain.cjs.map +0 -1
  420. package/dist/types/blockchain.d.ts +0 -85
  421. package/dist/types/blockchain.js +0 -1
  422. package/dist/types/blockchain.js.map +0 -1
  423. package/dist/types/controller-context.cjs +0 -17
  424. package/dist/types/controller-context.cjs.map +0 -1
  425. package/dist/types/controller-context.d.ts +0 -68
  426. package/dist/types/controller-context.js +0 -1
  427. package/dist/types/controller-context.js.map +0 -1
  428. package/dist/types/data.cjs +0 -17
  429. package/dist/types/data.cjs.map +0 -1
  430. package/dist/types/data.d.ts +0 -763
  431. package/dist/types/data.js +0 -1
  432. package/dist/types/data.js.map +0 -1
  433. package/dist/types/external-apis.cjs +0 -61
  434. package/dist/types/external-apis.cjs.map +0 -1
  435. package/dist/types/external-apis.d.ts +0 -184
  436. package/dist/types/external-apis.js +0 -34
  437. package/dist/types/external-apis.js.map +0 -1
  438. package/dist/types/generics.cjs +0 -17
  439. package/dist/types/generics.cjs.map +0 -1
  440. package/dist/types/generics.d.ts +0 -518
  441. package/dist/types/generics.js +0 -1
  442. package/dist/types/generics.js.map +0 -1
  443. package/dist/types/operationStore.cjs +0 -17
  444. package/dist/types/operationStore.cjs.map +0 -1
  445. package/dist/types/operationStore.d.ts +0 -171
  446. package/dist/types/operationStore.js +0 -1
  447. package/dist/types/operationStore.js.map +0 -1
  448. package/dist/types/operations.cjs +0 -53
  449. package/dist/types/operations.cjs.map +0 -1
  450. package/dist/types/operations.d.ts +0 -204
  451. package/dist/types/operations.js +0 -26
  452. package/dist/types/operations.js.map +0 -1
  453. package/dist/types/options.cjs +0 -17
  454. package/dist/types/options.cjs.map +0 -1
  455. package/dist/types/options.d.ts +0 -308
  456. package/dist/types/options.js +0 -1
  457. package/dist/types/options.js.map +0 -1
  458. package/dist/types/permissions.cjs +0 -17
  459. package/dist/types/permissions.cjs.map +0 -1
  460. package/dist/types/permissions.d.ts +0 -955
  461. package/dist/types/permissions.js +0 -1
  462. package/dist/types/permissions.js.map +0 -1
  463. package/dist/types/personal.cjs +0 -17
  464. package/dist/types/personal.cjs.map +0 -1
  465. package/dist/types/personal.d.ts +0 -174
  466. package/dist/types/personal.js +0 -1
  467. package/dist/types/personal.js.map +0 -1
  468. package/dist/types/relayer.cjs +0 -17
  469. package/dist/types/relayer.cjs.map +0 -1
  470. package/dist/types/relayer.d.ts +0 -552
  471. package/dist/types/relayer.js +0 -1
  472. package/dist/types/relayer.js.map +0 -1
  473. package/dist/types/transactionResults.cjs +0 -17
  474. package/dist/types/transactionResults.cjs.map +0 -1
  475. package/dist/types/transactionResults.d.ts +0 -193
  476. package/dist/types/transactionResults.js +0 -1
  477. package/dist/types/transactionResults.js.map +0 -1
  478. package/dist/types/utils.cjs +0 -17
  479. package/dist/types/utils.cjs.map +0 -1
  480. package/dist/types/utils.d.ts +0 -771
  481. package/dist/types/utils.js +0 -1
  482. package/dist/types/utils.js.map +0 -1
  483. package/dist/utils/__tests__/chainQuery.test.d.ts +0 -1
  484. package/dist/utils/__tests__/parseTransaction.test.d.ts +0 -1
  485. package/dist/utils/__tests__/pojo-serialization.test.d.ts +0 -1
  486. package/dist/utils/__tests__/signatureCache.test.d.ts +0 -1
  487. package/dist/utils/__tests__/subgraphConsistency.test.d.ts +0 -4
  488. package/dist/utils/__tests__/subgraphPagination.test.d.ts +0 -4
  489. package/dist/utils/__tests__/transaction-edge-cases.test.d.ts +0 -1
  490. package/dist/utils/__tests__/transactionHelpers.test.d.ts +0 -1
  491. package/dist/utils/__tests__/urlResolver.test.d.ts +0 -4
  492. package/dist/utils/blockchain/registry.cjs +0 -81
  493. package/dist/utils/blockchain/registry.cjs.map +0 -1
  494. package/dist/utils/blockchain/registry.d.ts +0 -32
  495. package/dist/utils/blockchain/registry.js +0 -56
  496. package/dist/utils/blockchain/registry.js.map +0 -1
  497. package/dist/utils/blockchain/registry.test.d.ts +0 -1
  498. package/dist/utils/chainQuery.cjs +0 -107
  499. package/dist/utils/chainQuery.cjs.map +0 -1
  500. package/dist/utils/chainQuery.d.ts +0 -31
  501. package/dist/utils/chainQuery.js +0 -82
  502. package/dist/utils/chainQuery.js.map +0 -1
  503. package/dist/utils/download.cjs +0 -69
  504. package/dist/utils/download.cjs.map +0 -1
  505. package/dist/utils/download.d.ts +0 -40
  506. package/dist/utils/download.js +0 -45
  507. package/dist/utils/download.js.map +0 -1
  508. package/dist/utils/encryption.cjs +0 -176
  509. package/dist/utils/encryption.cjs.map +0 -1
  510. package/dist/utils/encryption.d.ts +0 -271
  511. package/dist/utils/encryption.js +0 -142
  512. package/dist/utils/encryption.js.map +0 -1
  513. package/dist/utils/formatters.cjs +0 -55
  514. package/dist/utils/formatters.cjs.map +0 -1
  515. package/dist/utils/formatters.d.ts +0 -118
  516. package/dist/utils/formatters.js +0 -28
  517. package/dist/utils/formatters.js.map +0 -1
  518. package/dist/utils/grantFiles.cjs +0 -181
  519. package/dist/utils/grantFiles.cjs.map +0 -1
  520. package/dist/utils/grantFiles.d.ts +0 -172
  521. package/dist/utils/grantFiles.js +0 -143
  522. package/dist/utils/grantFiles.js.map +0 -1
  523. package/dist/utils/grantValidation.cjs +0 -243
  524. package/dist/utils/grantValidation.cjs.map +0 -1
  525. package/dist/utils/grantValidation.d.ts +0 -226
  526. package/dist/utils/grantValidation.js +0 -201
  527. package/dist/utils/grantValidation.js.map +0 -1
  528. package/dist/utils/grants.cjs +0 -108
  529. package/dist/utils/grants.cjs.map +0 -1
  530. package/dist/utils/grants.d.ts +0 -148
  531. package/dist/utils/grants.js +0 -82
  532. package/dist/utils/grants.js.map +0 -1
  533. package/dist/utils/ipfs.cjs +0 -128
  534. package/dist/utils/ipfs.cjs.map +0 -1
  535. package/dist/utils/ipfs.d.ts +0 -88
  536. package/dist/utils/ipfs.js +0 -97
  537. package/dist/utils/ipfs.js.map +0 -1
  538. package/dist/utils/multicall.cjs +0 -233
  539. package/dist/utils/multicall.cjs.map +0 -1
  540. package/dist/utils/multicall.d.ts +0 -126
  541. package/dist/utils/multicall.js +0 -208
  542. package/dist/utils/multicall.js.map +0 -1
  543. package/dist/utils/parseTransactionPojo.cjs +0 -87
  544. package/dist/utils/parseTransactionPojo.cjs.map +0 -1
  545. package/dist/utils/parseTransactionPojo.d.ts +0 -31
  546. package/dist/utils/parseTransactionPojo.js +0 -63
  547. package/dist/utils/parseTransactionPojo.js.map +0 -1
  548. package/dist/utils/schemaValidation.cjs +0 -258
  549. package/dist/utils/schemaValidation.cjs.map +0 -1
  550. package/dist/utils/schemaValidation.d.ts +0 -168
  551. package/dist/utils/schemaValidation.js +0 -219
  552. package/dist/utils/schemaValidation.js.map +0 -1
  553. package/dist/utils/signatureCache.cjs +0 -192
  554. package/dist/utils/signatureCache.cjs.map +0 -1
  555. package/dist/utils/signatureCache.d.ts +0 -172
  556. package/dist/utils/signatureCache.js +0 -167
  557. package/dist/utils/signatureCache.js.map +0 -1
  558. package/dist/utils/signatureFormatter.cjs +0 -42
  559. package/dist/utils/signatureFormatter.cjs.map +0 -1
  560. package/dist/utils/signatureFormatter.d.ts +0 -36
  561. package/dist/utils/signatureFormatter.js +0 -18
  562. package/dist/utils/signatureFormatter.js.map +0 -1
  563. package/dist/utils/subgraphConsistency.cjs +0 -184
  564. package/dist/utils/subgraphConsistency.cjs.map +0 -1
  565. package/dist/utils/subgraphConsistency.d.ts +0 -65
  566. package/dist/utils/subgraphConsistency.js +0 -155
  567. package/dist/utils/subgraphConsistency.js.map +0 -1
  568. package/dist/utils/subgraphMetaCache.cjs +0 -101
  569. package/dist/utils/subgraphMetaCache.cjs.map +0 -1
  570. package/dist/utils/subgraphMetaCache.d.ts +0 -56
  571. package/dist/utils/subgraphMetaCache.js +0 -76
  572. package/dist/utils/subgraphMetaCache.js.map +0 -1
  573. package/dist/utils/subgraphPagination.cjs +0 -104
  574. package/dist/utils/subgraphPagination.cjs.map +0 -1
  575. package/dist/utils/subgraphPagination.d.ts +0 -78
  576. package/dist/utils/subgraphPagination.js +0 -78
  577. package/dist/utils/subgraphPagination.js.map +0 -1
  578. package/dist/utils/tests/multicall.test.d.ts +0 -1
  579. package/dist/utils/transactionHelpers.cjs +0 -54
  580. package/dist/utils/transactionHelpers.cjs.map +0 -1
  581. package/dist/utils/transactionHelpers.d.ts +0 -80
  582. package/dist/utils/transactionHelpers.js +0 -29
  583. package/dist/utils/transactionHelpers.js.map +0 -1
  584. package/dist/utils/typeGuards.cjs +0 -109
  585. package/dist/utils/typeGuards.cjs.map +0 -1
  586. package/dist/utils/typeGuards.d.ts +0 -138
  587. package/dist/utils/typeGuards.js +0 -74
  588. package/dist/utils/typeGuards.js.map +0 -1
  589. package/dist/utils/typedDataConverter.cjs +0 -43
  590. package/dist/utils/typedDataConverter.cjs.map +0 -1
  591. package/dist/utils/typedDataConverter.d.ts +0 -46
  592. package/dist/utils/typedDataConverter.js +0 -19
  593. package/dist/utils/typedDataConverter.js.map +0 -1
  594. package/dist/utils/urlResolver.cjs +0 -62
  595. package/dist/utils/urlResolver.cjs.map +0 -1
  596. package/dist/utils/urlResolver.d.ts +0 -56
  597. package/dist/utils/urlResolver.js +0 -37
  598. package/dist/utils/urlResolver.js.map +0 -1
  599. package/dist/utils/wallet.cjs +0 -63
  600. package/dist/utils/wallet.cjs.map +0 -1
  601. package/dist/utils/wallet.d.ts +0 -94
  602. package/dist/utils/wallet.js +0 -37
  603. package/dist/utils/wallet.js.map +0 -1
  604. package/dist/utils/withEvents.cjs +0 -44
  605. package/dist/utils/withEvents.cjs.map +0 -1
  606. package/dist/utils/withEvents.d.ts +0 -56
  607. package/dist/utils/withEvents.js +0 -18
  608. package/dist/utils/withEvents.js.map +0 -1
  609. /package/dist/{__tests__/waitForTransactionEvents.test.d.ts → auth/pkce.test.d.ts} +0 -0
  610. /package/dist/{client/__tests__/enhancedResponse.test.d.ts → auth/token-store.test.d.ts} +0 -0
  611. /package/dist/{controllers/__tests__/operations.processQueue.test.d.ts → auth/web3-signed.test.d.ts} +0 -0
  612. /package/dist/{controllers/__tests__/schemas-edge-cases.test.d.ts → crypto/envelope/openpgp.test.d.ts} +0 -0
  613. /package/dist/{controllers/data-error-handling.test.d.ts → crypto/keys/derive.test.d.ts} +0 -0
  614. /package/dist/{tests/errors.test.d.ts → errors.test.d.ts} +0 -0
  615. /package/dist/{controllers/server-additional.test.d.ts → protocol/data-file.test.d.ts} +0 -0
  616. /package/dist/{core/__tests__/health.test.d.ts → protocol/eip712.test.d.ts} +0 -0
  617. /package/dist/{core/__tests__/inMemoryNonceManager.test.d.ts → protocol/gateway.test.d.ts} +0 -0
  618. /package/dist/{core/__tests__/nonceManager.test.d.ts → protocol/grants.test.d.ts} +0 -0
  619. /package/dist/{core/core.test.d.ts → protocol/scopes.test.d.ts} +0 -0
  620. /package/dist/{core/tests/apiClient.test.d.ts → storage/tests/defaultStorage.test.d.ts} +0 -0
  621. /package/dist/{core/tests/client.test.d.ts → storage/tests/r2Storage.test.d.ts} +0 -0
  622. /package/dist/{core/tests/generics.test.d.ts → storage/tests/vanaStorage.test.d.ts} +0 -0
  623. /package/dist/{diagnostics.test.d.ts → types/ps-errors.test.d.ts} +0 -0
@@ -1 +0,0 @@
1
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,4 +0,0 @@
1
- /**
2
- * @file Tests for subgraph consistency utilities
3
- */
4
- export {};
@@ -1,4 +0,0 @@
1
- /**
2
- * @file Tests for subgraph pagination utilities
3
- */
4
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,4 +0,0 @@
1
- /**
2
- * Tests for URL resolver utilities
3
- */
4
- export {};
@@ -1,81 +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 registry_exports = {};
20
- __export(registry_exports, {
21
- fetchSchemaCountFromChain: () => fetchSchemaCountFromChain,
22
- fetchSchemaFromChain: () => fetchSchemaFromChain
23
- });
24
- module.exports = __toCommonJS(registry_exports);
25
- var import_viem = require("viem");
26
- var import_addresses = require("../../generated/addresses");
27
- var import_abi = require("../../generated/abi");
28
- async function fetchSchemaFromChain(context, schemaId) {
29
- const chainId = context.walletClient?.chain?.id ?? context.publicClient.chain?.id;
30
- if (!chainId) {
31
- throw new Error("Chain ID not available");
32
- }
33
- const dataRefinerRegistryAddress = (0, import_addresses.getContractAddress)(
34
- chainId,
35
- "DataRefinerRegistry"
36
- );
37
- const dataRefinerRegistryAbi = (0, import_abi.getAbi)("DataRefinerRegistry");
38
- const dataRefinerRegistry = (0, import_viem.getContract)({
39
- address: dataRefinerRegistryAddress,
40
- abi: dataRefinerRegistryAbi,
41
- client: context.publicClient
42
- });
43
- const schemaData = await dataRefinerRegistry.read.schemas([BigInt(schemaId)]);
44
- if (!schemaData) {
45
- throw new Error(`Schema with ID ${schemaId} not found`);
46
- }
47
- const schemaObj = schemaData;
48
- if (!schemaObj.name || !schemaObj.dialect || !schemaObj.definitionUrl) {
49
- throw new Error("Incomplete schema data");
50
- }
51
- return {
52
- id: schemaId,
53
- name: schemaObj.name,
54
- dialect: schemaObj.dialect,
55
- definitionUrl: schemaObj.definitionUrl
56
- };
57
- }
58
- async function fetchSchemaCountFromChain(context) {
59
- const chainId = context.walletClient?.chain?.id ?? context.publicClient.chain?.id;
60
- if (!chainId) {
61
- throw new Error("Chain ID not available");
62
- }
63
- const dataRefinerRegistryAddress = (0, import_addresses.getContractAddress)(
64
- chainId,
65
- "DataRefinerRegistry"
66
- );
67
- const dataRefinerRegistryAbi = (0, import_abi.getAbi)("DataRefinerRegistry");
68
- const dataRefinerRegistry = (0, import_viem.getContract)({
69
- address: dataRefinerRegistryAddress,
70
- abi: dataRefinerRegistryAbi,
71
- client: context.publicClient
72
- });
73
- const count = await dataRefinerRegistry.read.schemasCount();
74
- return Number(count);
75
- }
76
- // Annotate the CommonJS export names for ESM import in node:
77
- 0 && (module.exports = {
78
- fetchSchemaCountFromChain,
79
- fetchSchemaFromChain
80
- });
81
- //# sourceMappingURL=registry.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/utils/blockchain/registry.ts"],"sourcesContent":["import { getContract } from \"viem\";\nimport type { PublicClient, WalletClient } from \"viem\";\nimport { getContractAddress } from \"../../generated/addresses\";\nimport { getAbi } from \"../../generated/abi\";\nimport type { SchemaMetadata } from \"../../types/index\";\n\n/**\n * Shared context for blockchain operations.\n * Only includes the minimal required fields to avoid coupling.\n */\ninterface BlockchainContext {\n walletClient?: WalletClient;\n publicClient: PublicClient;\n}\n\n/**\n * Contract data structure returned by the blockchain.\n *\n * @internal\n */\ninterface SchemaContractData {\n name: string;\n dialect: string;\n definitionUrl: string;\n}\n\n/**\n * Fetches schema metadata from the blockchain by its ID.\n *\n * @param context - The blockchain context containing wallet and public clients\n * @param schemaId - The ID of the schema to fetch\n * @returns The schema metadata with id, name, dialect, and definitionUrl\n * @throws Error if chain ID is not available, schema not found, or data is incomplete\n *\n * @internal\n */\nexport async function fetchSchemaFromChain(\n context: BlockchainContext,\n schemaId: number,\n): Promise<SchemaMetadata> {\n const chainId =\n context.walletClient?.chain?.id ?? context.publicClient.chain?.id;\n if (!chainId) {\n throw new Error(\"Chain ID not available\");\n }\n\n const dataRefinerRegistryAddress = getContractAddress(\n chainId,\n \"DataRefinerRegistry\",\n );\n const dataRefinerRegistryAbi = getAbi(\"DataRefinerRegistry\");\n\n const dataRefinerRegistry = getContract({\n address: dataRefinerRegistryAddress,\n abi: dataRefinerRegistryAbi,\n client: context.publicClient,\n });\n\n const schemaData = await dataRefinerRegistry.read.schemas([BigInt(schemaId)]);\n\n if (!schemaData) {\n throw new Error(`Schema with ID ${schemaId} not found`);\n }\n\n // TODO(TYPES): Contract read returns unknown type from viem library.\n // Future improvement: Create typed contract interface when viem adds support\n // or implement a contract type generator from ABI definitions.\n const schemaObj = schemaData as unknown as SchemaContractData;\n\n if (!schemaObj.name || !schemaObj.dialect || !schemaObj.definitionUrl) {\n throw new Error(\"Incomplete schema data\");\n }\n\n return {\n id: schemaId,\n name: schemaObj.name,\n dialect: schemaObj.dialect as \"json\" | \"sqlite\",\n definitionUrl: schemaObj.definitionUrl,\n };\n}\n\n/**\n * Fetches the total count of schemas from the blockchain.\n *\n * @param context - The blockchain context containing wallet and public clients\n * @returns The total number of schemas\n * @throws Error if chain ID is not available or operation fails\n *\n * @internal\n */\nexport async function fetchSchemaCountFromChain(\n context: BlockchainContext,\n): Promise<number> {\n const chainId =\n context.walletClient?.chain?.id ?? context.publicClient.chain?.id;\n if (!chainId) {\n throw new Error(\"Chain ID not available\");\n }\n\n const dataRefinerRegistryAddress = getContractAddress(\n chainId,\n \"DataRefinerRegistry\",\n );\n const dataRefinerRegistryAbi = getAbi(\"DataRefinerRegistry\");\n\n const dataRefinerRegistry = getContract({\n address: dataRefinerRegistryAddress,\n abi: dataRefinerRegistryAbi,\n client: context.publicClient,\n });\n\n const count = await dataRefinerRegistry.read.schemasCount();\n return Number(count);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA4B;AAE5B,uBAAmC;AACnC,iBAAuB;AAiCvB,eAAsB,qBACpB,SACA,UACyB;AACzB,QAAM,UACJ,QAAQ,cAAc,OAAO,MAAM,QAAQ,aAAa,OAAO;AACjE,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,QAAM,iCAA6B;AAAA,IACjC;AAAA,IACA;AAAA,EACF;AACA,QAAM,6BAAyB,mBAAO,qBAAqB;AAE3D,QAAM,0BAAsB,yBAAY;AAAA,IACtC,SAAS;AAAA,IACT,KAAK;AAAA,IACL,QAAQ,QAAQ;AAAA,EAClB,CAAC;AAED,QAAM,aAAa,MAAM,oBAAoB,KAAK,QAAQ,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE5E,MAAI,CAAC,YAAY;AACf,UAAM,IAAI,MAAM,kBAAkB,QAAQ,YAAY;AAAA,EACxD;AAKA,QAAM,YAAY;AAElB,MAAI,CAAC,UAAU,QAAQ,CAAC,UAAU,WAAW,CAAC,UAAU,eAAe;AACrE,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,SAAO;AAAA,IACL,IAAI;AAAA,IACJ,MAAM,UAAU;AAAA,IAChB,SAAS,UAAU;AAAA,IACnB,eAAe,UAAU;AAAA,EAC3B;AACF;AAWA,eAAsB,0BACpB,SACiB;AACjB,QAAM,UACJ,QAAQ,cAAc,OAAO,MAAM,QAAQ,aAAa,OAAO;AACjE,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,QAAM,iCAA6B;AAAA,IACjC;AAAA,IACA;AAAA,EACF;AACA,QAAM,6BAAyB,mBAAO,qBAAqB;AAE3D,QAAM,0BAAsB,yBAAY;AAAA,IACtC,SAAS;AAAA,IACT,KAAK;AAAA,IACL,QAAQ,QAAQ;AAAA,EAClB,CAAC;AAED,QAAM,QAAQ,MAAM,oBAAoB,KAAK,aAAa;AAC1D,SAAO,OAAO,KAAK;AACrB;","names":[]}
@@ -1,32 +0,0 @@
1
- import type { PublicClient, WalletClient } from "viem";
2
- import type { SchemaMetadata } from "../../types/index";
3
- /**
4
- * Shared context for blockchain operations.
5
- * Only includes the minimal required fields to avoid coupling.
6
- */
7
- interface BlockchainContext {
8
- walletClient?: WalletClient;
9
- publicClient: PublicClient;
10
- }
11
- /**
12
- * Fetches schema metadata from the blockchain by its ID.
13
- *
14
- * @param context - The blockchain context containing wallet and public clients
15
- * @param schemaId - The ID of the schema to fetch
16
- * @returns The schema metadata with id, name, dialect, and definitionUrl
17
- * @throws Error if chain ID is not available, schema not found, or data is incomplete
18
- *
19
- * @internal
20
- */
21
- export declare function fetchSchemaFromChain(context: BlockchainContext, schemaId: number): Promise<SchemaMetadata>;
22
- /**
23
- * Fetches the total count of schemas from the blockchain.
24
- *
25
- * @param context - The blockchain context containing wallet and public clients
26
- * @returns The total number of schemas
27
- * @throws Error if chain ID is not available or operation fails
28
- *
29
- * @internal
30
- */
31
- export declare function fetchSchemaCountFromChain(context: BlockchainContext): Promise<number>;
32
- export {};
@@ -1,56 +0,0 @@
1
- import { getContract } from "viem";
2
- import { getContractAddress } from "../../generated/addresses";
3
- import { getAbi } from "../../generated/abi";
4
- async function fetchSchemaFromChain(context, schemaId) {
5
- const chainId = context.walletClient?.chain?.id ?? context.publicClient.chain?.id;
6
- if (!chainId) {
7
- throw new Error("Chain ID not available");
8
- }
9
- const dataRefinerRegistryAddress = getContractAddress(
10
- chainId,
11
- "DataRefinerRegistry"
12
- );
13
- const dataRefinerRegistryAbi = getAbi("DataRefinerRegistry");
14
- const dataRefinerRegistry = getContract({
15
- address: dataRefinerRegistryAddress,
16
- abi: dataRefinerRegistryAbi,
17
- client: context.publicClient
18
- });
19
- const schemaData = await dataRefinerRegistry.read.schemas([BigInt(schemaId)]);
20
- if (!schemaData) {
21
- throw new Error(`Schema with ID ${schemaId} not found`);
22
- }
23
- const schemaObj = schemaData;
24
- if (!schemaObj.name || !schemaObj.dialect || !schemaObj.definitionUrl) {
25
- throw new Error("Incomplete schema data");
26
- }
27
- return {
28
- id: schemaId,
29
- name: schemaObj.name,
30
- dialect: schemaObj.dialect,
31
- definitionUrl: schemaObj.definitionUrl
32
- };
33
- }
34
- async function fetchSchemaCountFromChain(context) {
35
- const chainId = context.walletClient?.chain?.id ?? context.publicClient.chain?.id;
36
- if (!chainId) {
37
- throw new Error("Chain ID not available");
38
- }
39
- const dataRefinerRegistryAddress = getContractAddress(
40
- chainId,
41
- "DataRefinerRegistry"
42
- );
43
- const dataRefinerRegistryAbi = getAbi("DataRefinerRegistry");
44
- const dataRefinerRegistry = getContract({
45
- address: dataRefinerRegistryAddress,
46
- abi: dataRefinerRegistryAbi,
47
- client: context.publicClient
48
- });
49
- const count = await dataRefinerRegistry.read.schemasCount();
50
- return Number(count);
51
- }
52
- export {
53
- fetchSchemaCountFromChain,
54
- fetchSchemaFromChain
55
- };
56
- //# sourceMappingURL=registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/utils/blockchain/registry.ts"],"sourcesContent":["import { getContract } from \"viem\";\nimport type { PublicClient, WalletClient } from \"viem\";\nimport { getContractAddress } from \"../../generated/addresses\";\nimport { getAbi } from \"../../generated/abi\";\nimport type { SchemaMetadata } from \"../../types/index\";\n\n/**\n * Shared context for blockchain operations.\n * Only includes the minimal required fields to avoid coupling.\n */\ninterface BlockchainContext {\n walletClient?: WalletClient;\n publicClient: PublicClient;\n}\n\n/**\n * Contract data structure returned by the blockchain.\n *\n * @internal\n */\ninterface SchemaContractData {\n name: string;\n dialect: string;\n definitionUrl: string;\n}\n\n/**\n * Fetches schema metadata from the blockchain by its ID.\n *\n * @param context - The blockchain context containing wallet and public clients\n * @param schemaId - The ID of the schema to fetch\n * @returns The schema metadata with id, name, dialect, and definitionUrl\n * @throws Error if chain ID is not available, schema not found, or data is incomplete\n *\n * @internal\n */\nexport async function fetchSchemaFromChain(\n context: BlockchainContext,\n schemaId: number,\n): Promise<SchemaMetadata> {\n const chainId =\n context.walletClient?.chain?.id ?? context.publicClient.chain?.id;\n if (!chainId) {\n throw new Error(\"Chain ID not available\");\n }\n\n const dataRefinerRegistryAddress = getContractAddress(\n chainId,\n \"DataRefinerRegistry\",\n );\n const dataRefinerRegistryAbi = getAbi(\"DataRefinerRegistry\");\n\n const dataRefinerRegistry = getContract({\n address: dataRefinerRegistryAddress,\n abi: dataRefinerRegistryAbi,\n client: context.publicClient,\n });\n\n const schemaData = await dataRefinerRegistry.read.schemas([BigInt(schemaId)]);\n\n if (!schemaData) {\n throw new Error(`Schema with ID ${schemaId} not found`);\n }\n\n // TODO(TYPES): Contract read returns unknown type from viem library.\n // Future improvement: Create typed contract interface when viem adds support\n // or implement a contract type generator from ABI definitions.\n const schemaObj = schemaData as unknown as SchemaContractData;\n\n if (!schemaObj.name || !schemaObj.dialect || !schemaObj.definitionUrl) {\n throw new Error(\"Incomplete schema data\");\n }\n\n return {\n id: schemaId,\n name: schemaObj.name,\n dialect: schemaObj.dialect as \"json\" | \"sqlite\",\n definitionUrl: schemaObj.definitionUrl,\n };\n}\n\n/**\n * Fetches the total count of schemas from the blockchain.\n *\n * @param context - The blockchain context containing wallet and public clients\n * @returns The total number of schemas\n * @throws Error if chain ID is not available or operation fails\n *\n * @internal\n */\nexport async function fetchSchemaCountFromChain(\n context: BlockchainContext,\n): Promise<number> {\n const chainId =\n context.walletClient?.chain?.id ?? context.publicClient.chain?.id;\n if (!chainId) {\n throw new Error(\"Chain ID not available\");\n }\n\n const dataRefinerRegistryAddress = getContractAddress(\n chainId,\n \"DataRefinerRegistry\",\n );\n const dataRefinerRegistryAbi = getAbi(\"DataRefinerRegistry\");\n\n const dataRefinerRegistry = getContract({\n address: dataRefinerRegistryAddress,\n abi: dataRefinerRegistryAbi,\n client: context.publicClient,\n });\n\n const count = await dataRefinerRegistry.read.schemasCount();\n return Number(count);\n}\n"],"mappings":"AAAA,SAAS,mBAAmB;AAE5B,SAAS,0BAA0B;AACnC,SAAS,cAAc;AAiCvB,eAAsB,qBACpB,SACA,UACyB;AACzB,QAAM,UACJ,QAAQ,cAAc,OAAO,MAAM,QAAQ,aAAa,OAAO;AACjE,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,QAAM,6BAA6B;AAAA,IACjC;AAAA,IACA;AAAA,EACF;AACA,QAAM,yBAAyB,OAAO,qBAAqB;AAE3D,QAAM,sBAAsB,YAAY;AAAA,IACtC,SAAS;AAAA,IACT,KAAK;AAAA,IACL,QAAQ,QAAQ;AAAA,EAClB,CAAC;AAED,QAAM,aAAa,MAAM,oBAAoB,KAAK,QAAQ,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE5E,MAAI,CAAC,YAAY;AACf,UAAM,IAAI,MAAM,kBAAkB,QAAQ,YAAY;AAAA,EACxD;AAKA,QAAM,YAAY;AAElB,MAAI,CAAC,UAAU,QAAQ,CAAC,UAAU,WAAW,CAAC,UAAU,eAAe;AACrE,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,SAAO;AAAA,IACL,IAAI;AAAA,IACJ,MAAM,UAAU;AAAA,IAChB,SAAS,UAAU;AAAA,IACnB,eAAe,UAAU;AAAA,EAC3B;AACF;AAWA,eAAsB,0BACpB,SACiB;AACjB,QAAM,UACJ,QAAQ,cAAc,OAAO,MAAM,QAAQ,aAAa,OAAO;AACjE,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,QAAM,6BAA6B;AAAA,IACjC;AAAA,IACA;AAAA,EACF;AACA,QAAM,yBAAyB,OAAO,qBAAqB;AAE3D,QAAM,sBAAsB,YAAY;AAAA,IACtC,SAAS;AAAA,IACT,KAAK;AAAA,IACL,QAAQ,QAAQ;AAAA,EAClB,CAAC;AAED,QAAM,QAAQ,MAAM,oBAAoB,KAAK,aAAa;AAC1D,SAAO,OAAO,KAAK;AACrB;","names":[]}
@@ -1 +0,0 @@
1
- export {};
@@ -1,107 +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 chainQuery_exports = {};
20
- __export(chainQuery_exports, {
21
- determineDataSource: () => determineDataSource,
22
- getUserFilesFromChain: () => getUserFilesFromChain
23
- });
24
- module.exports = __toCommonJS(chainQuery_exports);
25
- var import_viem = require("viem");
26
- async function getUserFilesFromChain(publicClient, contractAddress, owner, fromBlock, toBlock) {
27
- const fileAddedV2Events = await publicClient.getLogs({
28
- address: contractAddress,
29
- event: (0, import_viem.parseAbiItem)(
30
- "event FileAddedV2(uint256 indexed fileId, address indexed ownerAddress, string url, uint256 schemaId)"
31
- ),
32
- args: {
33
- ownerAddress: owner
34
- },
35
- fromBlock: fromBlock ?? "earliest",
36
- toBlock: toBlock ?? "latest"
37
- });
38
- const fileAddedEvents = await publicClient.getLogs({
39
- address: contractAddress,
40
- event: (0, import_viem.parseAbiItem)(
41
- "event FileAdded(uint256 indexed fileId, address indexed ownerAddress, string url)"
42
- ),
43
- args: {
44
- ownerAddress: owner
45
- },
46
- fromBlock: fromBlock ?? "earliest",
47
- toBlock: toBlock ?? "latest"
48
- });
49
- const filesFromV2 = fileAddedV2Events.map((event) => ({
50
- id: Number(event.args.fileId),
51
- url: event.args.url,
52
- ownerAddress: event.args.ownerAddress,
53
- schemaId: Number(event.args.schemaId),
54
- addedAtBlock: event.blockNumber,
55
- addedAtTimestamp: BigInt(0),
56
- // Would need to fetch block for timestamp
57
- transactionHash: event.transactionHash
58
- }));
59
- const filesFromV1 = fileAddedEvents.map((event) => ({
60
- id: Number(event.args.fileId),
61
- url: event.args.url,
62
- ownerAddress: event.args.ownerAddress,
63
- schemaId: 0,
64
- // No schema in V1
65
- addedAtBlock: event.blockNumber,
66
- addedAtTimestamp: BigInt(0),
67
- // Would need to fetch block for timestamp
68
- transactionHash: event.transactionHash
69
- }));
70
- const allFiles = [...filesFromV2];
71
- const v2FileIds = new Set(filesFromV2.map((f) => f.id));
72
- for (const v1File of filesFromV1) {
73
- if (!v2FileIds.has(v1File.id)) {
74
- allFiles.push(v1File);
75
- }
76
- }
77
- allFiles.sort((a, b) => {
78
- if (a.addedAtBlock > b.addedAtBlock) return -1;
79
- if (a.addedAtBlock < b.addedAtBlock) return 1;
80
- return 0;
81
- });
82
- return allFiles;
83
- }
84
- function determineDataSource(source, minBlock, currentBlock, subgraphBlock) {
85
- if (source === "subgraph" || source === "chain") {
86
- return source;
87
- }
88
- if (source === "auto" || source === void 0) {
89
- if (!minBlock) {
90
- return "subgraph";
91
- }
92
- if (!subgraphBlock || subgraphBlock < minBlock) {
93
- const staleness = Number(currentBlock) - (subgraphBlock ?? 0);
94
- if (staleness > 100) {
95
- return "chain";
96
- }
97
- }
98
- return "subgraph";
99
- }
100
- return "subgraph";
101
- }
102
- // Annotate the CommonJS export names for ESM import in node:
103
- 0 && (module.exports = {
104
- determineDataSource,
105
- getUserFilesFromChain
106
- });
107
- //# sourceMappingURL=chainQuery.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/chainQuery.ts"],"sourcesContent":["/**\n * @file Utilities for querying data directly from the blockchain\n * @module vana-sdk/utils/chainQuery\n */\n\nimport type { Address, PublicClient } from \"viem\";\nimport { parseAbiItem } from \"viem\";\nimport type { UserFile } from \"../types\";\n\n/**\n * Query user files directly from the blockchain using events\n *\n * @remarks\n * This bypasses the subgraph entirely and queries events directly from the chain.\n * Slower than subgraph but guarantees real-time consistency.\n *\n * @param publicClient - Viem public client for chain interaction\n * @param contractAddress - DataRegistry contract address\n * @param owner - Owner address to query files for\n * @param fromBlock - Starting block number (optional)\n * @param toBlock - Ending block number (optional)\n * @returns Array of UserFile objects\n */\nexport async function getUserFilesFromChain(\n publicClient: PublicClient,\n contractAddress: Address,\n owner: Address,\n fromBlock?: bigint,\n toBlock?: bigint,\n): Promise<UserFile[]> {\n // Query FileAddedV2 events (has schema support)\n const fileAddedV2Events = await publicClient.getLogs({\n address: contractAddress,\n event: parseAbiItem(\n \"event FileAddedV2(uint256 indexed fileId, address indexed ownerAddress, string url, uint256 schemaId)\",\n ),\n args: {\n ownerAddress: owner,\n },\n fromBlock: fromBlock ?? \"earliest\",\n toBlock: toBlock ?? \"latest\",\n });\n\n // Also query older FileAdded events (no schema)\n const fileAddedEvents = await publicClient.getLogs({\n address: contractAddress,\n event: parseAbiItem(\n \"event FileAdded(uint256 indexed fileId, address indexed ownerAddress, string url)\",\n ),\n args: {\n ownerAddress: owner,\n },\n fromBlock: fromBlock ?? \"earliest\",\n toBlock: toBlock ?? \"latest\",\n });\n\n // Convert events to UserFile objects\n const filesFromV2 = fileAddedV2Events.map((event) => ({\n id: Number(event.args.fileId),\n url: event.args.url as string,\n ownerAddress: event.args.ownerAddress as Address,\n schemaId: Number(event.args.schemaId),\n addedAtBlock: event.blockNumber,\n addedAtTimestamp: BigInt(0), // Would need to fetch block for timestamp\n transactionHash: event.transactionHash,\n }));\n\n const filesFromV1 = fileAddedEvents.map((event) => ({\n id: Number(event.args.fileId),\n url: event.args.url as string,\n ownerAddress: event.args.ownerAddress as Address,\n schemaId: 0, // No schema in V1\n addedAtBlock: event.blockNumber,\n addedAtTimestamp: BigInt(0), // Would need to fetch block for timestamp\n transactionHash: event.transactionHash,\n }));\n\n // Combine and deduplicate (V2 takes precedence)\n const allFiles = [...filesFromV2];\n const v2FileIds = new Set(filesFromV2.map((f) => f.id));\n\n for (const v1File of filesFromV1) {\n if (!v2FileIds.has(v1File.id)) {\n allFiles.push(v1File);\n }\n }\n\n // Sort by block number descending (most recent first)\n allFiles.sort((a, b) => {\n if (a.addedAtBlock > b.addedAtBlock) return -1;\n if (a.addedAtBlock < b.addedAtBlock) return 1;\n return 0;\n });\n\n return allFiles;\n}\n\n/**\n * Determine optimal data source based on requirements\n *\n * @param source - Explicitly requested source\n * @param minBlock - Minimum required block\n * @param currentBlock - Current chain block\n * @param subgraphBlock - Current subgraph block\n * @returns The data source to use\n */\nexport function determineDataSource(\n source: \"subgraph\" | \"chain\" | \"auto\" | undefined,\n minBlock: number | undefined,\n currentBlock: bigint,\n subgraphBlock: number | undefined,\n): \"subgraph\" | \"chain\" {\n // If explicitly specified, use that\n if (source === \"subgraph\" || source === \"chain\") {\n return source;\n }\n\n // Auto mode or unspecified\n if (source === \"auto\" || source === undefined) {\n // If no consistency requirement, use subgraph (faster)\n if (!minBlock) {\n return \"subgraph\";\n }\n\n // If subgraph is unknown or too far behind, use chain\n if (!subgraphBlock || subgraphBlock < minBlock) {\n // Calculate staleness\n const staleness = Number(currentBlock) - (subgraphBlock ?? 0);\n\n // If more than 100 blocks behind, use chain\n if (staleness > 100) {\n return \"chain\";\n }\n }\n\n // Default to subgraph\n return \"subgraph\";\n }\n\n // Default fallback\n return \"subgraph\";\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,kBAA6B;AAiB7B,eAAsB,sBACpB,cACA,iBACA,OACA,WACA,SACqB;AAErB,QAAM,oBAAoB,MAAM,aAAa,QAAQ;AAAA,IACnD,SAAS;AAAA,IACT,WAAO;AAAA,MACL;AAAA,IACF;AAAA,IACA,MAAM;AAAA,MACJ,cAAc;AAAA,IAChB;AAAA,IACA,WAAW,aAAa;AAAA,IACxB,SAAS,WAAW;AAAA,EACtB,CAAC;AAGD,QAAM,kBAAkB,MAAM,aAAa,QAAQ;AAAA,IACjD,SAAS;AAAA,IACT,WAAO;AAAA,MACL;AAAA,IACF;AAAA,IACA,MAAM;AAAA,MACJ,cAAc;AAAA,IAChB;AAAA,IACA,WAAW,aAAa;AAAA,IACxB,SAAS,WAAW;AAAA,EACtB,CAAC;AAGD,QAAM,cAAc,kBAAkB,IAAI,CAAC,WAAW;AAAA,IACpD,IAAI,OAAO,MAAM,KAAK,MAAM;AAAA,IAC5B,KAAK,MAAM,KAAK;AAAA,IAChB,cAAc,MAAM,KAAK;AAAA,IACzB,UAAU,OAAO,MAAM,KAAK,QAAQ;AAAA,IACpC,cAAc,MAAM;AAAA,IACpB,kBAAkB,OAAO,CAAC;AAAA;AAAA,IAC1B,iBAAiB,MAAM;AAAA,EACzB,EAAE;AAEF,QAAM,cAAc,gBAAgB,IAAI,CAAC,WAAW;AAAA,IAClD,IAAI,OAAO,MAAM,KAAK,MAAM;AAAA,IAC5B,KAAK,MAAM,KAAK;AAAA,IAChB,cAAc,MAAM,KAAK;AAAA,IACzB,UAAU;AAAA;AAAA,IACV,cAAc,MAAM;AAAA,IACpB,kBAAkB,OAAO,CAAC;AAAA;AAAA,IAC1B,iBAAiB,MAAM;AAAA,EACzB,EAAE;AAGF,QAAM,WAAW,CAAC,GAAG,WAAW;AAChC,QAAM,YAAY,IAAI,IAAI,YAAY,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;AAEtD,aAAW,UAAU,aAAa;AAChC,QAAI,CAAC,UAAU,IAAI,OAAO,EAAE,GAAG;AAC7B,eAAS,KAAK,MAAM;AAAA,IACtB;AAAA,EACF;AAGA,WAAS,KAAK,CAAC,GAAG,MAAM;AACtB,QAAI,EAAE,eAAe,EAAE,aAAc,QAAO;AAC5C,QAAI,EAAE,eAAe,EAAE,aAAc,QAAO;AAC5C,WAAO;AAAA,EACT,CAAC;AAED,SAAO;AACT;AAWO,SAAS,oBACd,QACA,UACA,cACA,eACsB;AAEtB,MAAI,WAAW,cAAc,WAAW,SAAS;AAC/C,WAAO;AAAA,EACT;AAGA,MAAI,WAAW,UAAU,WAAW,QAAW;AAE7C,QAAI,CAAC,UAAU;AACb,aAAO;AAAA,IACT;AAGA,QAAI,CAAC,iBAAiB,gBAAgB,UAAU;AAE9C,YAAM,YAAY,OAAO,YAAY,KAAK,iBAAiB;AAG3D,UAAI,YAAY,KAAK;AACnB,eAAO;AAAA,MACT;AAAA,IACF;AAGA,WAAO;AAAA,EACT;AAGA,SAAO;AACT;","names":[]}
@@ -1,31 +0,0 @@
1
- /**
2
- * @file Utilities for querying data directly from the blockchain
3
- * @module vana-sdk/utils/chainQuery
4
- */
5
- import type { Address, PublicClient } from "viem";
6
- import type { UserFile } from "../types";
7
- /**
8
- * Query user files directly from the blockchain using events
9
- *
10
- * @remarks
11
- * This bypasses the subgraph entirely and queries events directly from the chain.
12
- * Slower than subgraph but guarantees real-time consistency.
13
- *
14
- * @param publicClient - Viem public client for chain interaction
15
- * @param contractAddress - DataRegistry contract address
16
- * @param owner - Owner address to query files for
17
- * @param fromBlock - Starting block number (optional)
18
- * @param toBlock - Ending block number (optional)
19
- * @returns Array of UserFile objects
20
- */
21
- export declare function getUserFilesFromChain(publicClient: PublicClient, contractAddress: Address, owner: Address, fromBlock?: bigint, toBlock?: bigint): Promise<UserFile[]>;
22
- /**
23
- * Determine optimal data source based on requirements
24
- *
25
- * @param source - Explicitly requested source
26
- * @param minBlock - Minimum required block
27
- * @param currentBlock - Current chain block
28
- * @param subgraphBlock - Current subgraph block
29
- * @returns The data source to use
30
- */
31
- export declare function determineDataSource(source: "subgraph" | "chain" | "auto" | undefined, minBlock: number | undefined, currentBlock: bigint, subgraphBlock: number | undefined): "subgraph" | "chain";
@@ -1,82 +0,0 @@
1
- import { parseAbiItem } from "viem";
2
- async function getUserFilesFromChain(publicClient, contractAddress, owner, fromBlock, toBlock) {
3
- const fileAddedV2Events = await publicClient.getLogs({
4
- address: contractAddress,
5
- event: parseAbiItem(
6
- "event FileAddedV2(uint256 indexed fileId, address indexed ownerAddress, string url, uint256 schemaId)"
7
- ),
8
- args: {
9
- ownerAddress: owner
10
- },
11
- fromBlock: fromBlock ?? "earliest",
12
- toBlock: toBlock ?? "latest"
13
- });
14
- const fileAddedEvents = await publicClient.getLogs({
15
- address: contractAddress,
16
- event: parseAbiItem(
17
- "event FileAdded(uint256 indexed fileId, address indexed ownerAddress, string url)"
18
- ),
19
- args: {
20
- ownerAddress: owner
21
- },
22
- fromBlock: fromBlock ?? "earliest",
23
- toBlock: toBlock ?? "latest"
24
- });
25
- const filesFromV2 = fileAddedV2Events.map((event) => ({
26
- id: Number(event.args.fileId),
27
- url: event.args.url,
28
- ownerAddress: event.args.ownerAddress,
29
- schemaId: Number(event.args.schemaId),
30
- addedAtBlock: event.blockNumber,
31
- addedAtTimestamp: BigInt(0),
32
- // Would need to fetch block for timestamp
33
- transactionHash: event.transactionHash
34
- }));
35
- const filesFromV1 = fileAddedEvents.map((event) => ({
36
- id: Number(event.args.fileId),
37
- url: event.args.url,
38
- ownerAddress: event.args.ownerAddress,
39
- schemaId: 0,
40
- // No schema in V1
41
- addedAtBlock: event.blockNumber,
42
- addedAtTimestamp: BigInt(0),
43
- // Would need to fetch block for timestamp
44
- transactionHash: event.transactionHash
45
- }));
46
- const allFiles = [...filesFromV2];
47
- const v2FileIds = new Set(filesFromV2.map((f) => f.id));
48
- for (const v1File of filesFromV1) {
49
- if (!v2FileIds.has(v1File.id)) {
50
- allFiles.push(v1File);
51
- }
52
- }
53
- allFiles.sort((a, b) => {
54
- if (a.addedAtBlock > b.addedAtBlock) return -1;
55
- if (a.addedAtBlock < b.addedAtBlock) return 1;
56
- return 0;
57
- });
58
- return allFiles;
59
- }
60
- function determineDataSource(source, minBlock, currentBlock, subgraphBlock) {
61
- if (source === "subgraph" || source === "chain") {
62
- return source;
63
- }
64
- if (source === "auto" || source === void 0) {
65
- if (!minBlock) {
66
- return "subgraph";
67
- }
68
- if (!subgraphBlock || subgraphBlock < minBlock) {
69
- const staleness = Number(currentBlock) - (subgraphBlock ?? 0);
70
- if (staleness > 100) {
71
- return "chain";
72
- }
73
- }
74
- return "subgraph";
75
- }
76
- return "subgraph";
77
- }
78
- export {
79
- determineDataSource,
80
- getUserFilesFromChain
81
- };
82
- //# sourceMappingURL=chainQuery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/chainQuery.ts"],"sourcesContent":["/**\n * @file Utilities for querying data directly from the blockchain\n * @module vana-sdk/utils/chainQuery\n */\n\nimport type { Address, PublicClient } from \"viem\";\nimport { parseAbiItem } from \"viem\";\nimport type { UserFile } from \"../types\";\n\n/**\n * Query user files directly from the blockchain using events\n *\n * @remarks\n * This bypasses the subgraph entirely and queries events directly from the chain.\n * Slower than subgraph but guarantees real-time consistency.\n *\n * @param publicClient - Viem public client for chain interaction\n * @param contractAddress - DataRegistry contract address\n * @param owner - Owner address to query files for\n * @param fromBlock - Starting block number (optional)\n * @param toBlock - Ending block number (optional)\n * @returns Array of UserFile objects\n */\nexport async function getUserFilesFromChain(\n publicClient: PublicClient,\n contractAddress: Address,\n owner: Address,\n fromBlock?: bigint,\n toBlock?: bigint,\n): Promise<UserFile[]> {\n // Query FileAddedV2 events (has schema support)\n const fileAddedV2Events = await publicClient.getLogs({\n address: contractAddress,\n event: parseAbiItem(\n \"event FileAddedV2(uint256 indexed fileId, address indexed ownerAddress, string url, uint256 schemaId)\",\n ),\n args: {\n ownerAddress: owner,\n },\n fromBlock: fromBlock ?? \"earliest\",\n toBlock: toBlock ?? \"latest\",\n });\n\n // Also query older FileAdded events (no schema)\n const fileAddedEvents = await publicClient.getLogs({\n address: contractAddress,\n event: parseAbiItem(\n \"event FileAdded(uint256 indexed fileId, address indexed ownerAddress, string url)\",\n ),\n args: {\n ownerAddress: owner,\n },\n fromBlock: fromBlock ?? \"earliest\",\n toBlock: toBlock ?? \"latest\",\n });\n\n // Convert events to UserFile objects\n const filesFromV2 = fileAddedV2Events.map((event) => ({\n id: Number(event.args.fileId),\n url: event.args.url as string,\n ownerAddress: event.args.ownerAddress as Address,\n schemaId: Number(event.args.schemaId),\n addedAtBlock: event.blockNumber,\n addedAtTimestamp: BigInt(0), // Would need to fetch block for timestamp\n transactionHash: event.transactionHash,\n }));\n\n const filesFromV1 = fileAddedEvents.map((event) => ({\n id: Number(event.args.fileId),\n url: event.args.url as string,\n ownerAddress: event.args.ownerAddress as Address,\n schemaId: 0, // No schema in V1\n addedAtBlock: event.blockNumber,\n addedAtTimestamp: BigInt(0), // Would need to fetch block for timestamp\n transactionHash: event.transactionHash,\n }));\n\n // Combine and deduplicate (V2 takes precedence)\n const allFiles = [...filesFromV2];\n const v2FileIds = new Set(filesFromV2.map((f) => f.id));\n\n for (const v1File of filesFromV1) {\n if (!v2FileIds.has(v1File.id)) {\n allFiles.push(v1File);\n }\n }\n\n // Sort by block number descending (most recent first)\n allFiles.sort((a, b) => {\n if (a.addedAtBlock > b.addedAtBlock) return -1;\n if (a.addedAtBlock < b.addedAtBlock) return 1;\n return 0;\n });\n\n return allFiles;\n}\n\n/**\n * Determine optimal data source based on requirements\n *\n * @param source - Explicitly requested source\n * @param minBlock - Minimum required block\n * @param currentBlock - Current chain block\n * @param subgraphBlock - Current subgraph block\n * @returns The data source to use\n */\nexport function determineDataSource(\n source: \"subgraph\" | \"chain\" | \"auto\" | undefined,\n minBlock: number | undefined,\n currentBlock: bigint,\n subgraphBlock: number | undefined,\n): \"subgraph\" | \"chain\" {\n // If explicitly specified, use that\n if (source === \"subgraph\" || source === \"chain\") {\n return source;\n }\n\n // Auto mode or unspecified\n if (source === \"auto\" || source === undefined) {\n // If no consistency requirement, use subgraph (faster)\n if (!minBlock) {\n return \"subgraph\";\n }\n\n // If subgraph is unknown or too far behind, use chain\n if (!subgraphBlock || subgraphBlock < minBlock) {\n // Calculate staleness\n const staleness = Number(currentBlock) - (subgraphBlock ?? 0);\n\n // If more than 100 blocks behind, use chain\n if (staleness > 100) {\n return \"chain\";\n }\n }\n\n // Default to subgraph\n return \"subgraph\";\n }\n\n // Default fallback\n return \"subgraph\";\n}\n"],"mappings":"AAMA,SAAS,oBAAoB;AAiB7B,eAAsB,sBACpB,cACA,iBACA,OACA,WACA,SACqB;AAErB,QAAM,oBAAoB,MAAM,aAAa,QAAQ;AAAA,IACnD,SAAS;AAAA,IACT,OAAO;AAAA,MACL;AAAA,IACF;AAAA,IACA,MAAM;AAAA,MACJ,cAAc;AAAA,IAChB;AAAA,IACA,WAAW,aAAa;AAAA,IACxB,SAAS,WAAW;AAAA,EACtB,CAAC;AAGD,QAAM,kBAAkB,MAAM,aAAa,QAAQ;AAAA,IACjD,SAAS;AAAA,IACT,OAAO;AAAA,MACL;AAAA,IACF;AAAA,IACA,MAAM;AAAA,MACJ,cAAc;AAAA,IAChB;AAAA,IACA,WAAW,aAAa;AAAA,IACxB,SAAS,WAAW;AAAA,EACtB,CAAC;AAGD,QAAM,cAAc,kBAAkB,IAAI,CAAC,WAAW;AAAA,IACpD,IAAI,OAAO,MAAM,KAAK,MAAM;AAAA,IAC5B,KAAK,MAAM,KAAK;AAAA,IAChB,cAAc,MAAM,KAAK;AAAA,IACzB,UAAU,OAAO,MAAM,KAAK,QAAQ;AAAA,IACpC,cAAc,MAAM;AAAA,IACpB,kBAAkB,OAAO,CAAC;AAAA;AAAA,IAC1B,iBAAiB,MAAM;AAAA,EACzB,EAAE;AAEF,QAAM,cAAc,gBAAgB,IAAI,CAAC,WAAW;AAAA,IAClD,IAAI,OAAO,MAAM,KAAK,MAAM;AAAA,IAC5B,KAAK,MAAM,KAAK;AAAA,IAChB,cAAc,MAAM,KAAK;AAAA,IACzB,UAAU;AAAA;AAAA,IACV,cAAc,MAAM;AAAA,IACpB,kBAAkB,OAAO,CAAC;AAAA;AAAA,IAC1B,iBAAiB,MAAM;AAAA,EACzB,EAAE;AAGF,QAAM,WAAW,CAAC,GAAG,WAAW;AAChC,QAAM,YAAY,IAAI,IAAI,YAAY,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;AAEtD,aAAW,UAAU,aAAa;AAChC,QAAI,CAAC,UAAU,IAAI,OAAO,EAAE,GAAG;AAC7B,eAAS,KAAK,MAAM;AAAA,IACtB;AAAA,EACF;AAGA,WAAS,KAAK,CAAC,GAAG,MAAM;AACtB,QAAI,EAAE,eAAe,EAAE,aAAc,QAAO;AAC5C,QAAI,EAAE,eAAe,EAAE,aAAc,QAAO;AAC5C,WAAO;AAAA,EACT,CAAC;AAED,SAAO;AACT;AAWO,SAAS,oBACd,QACA,UACA,cACA,eACsB;AAEtB,MAAI,WAAW,cAAc,WAAW,SAAS;AAC/C,WAAO;AAAA,EACT;AAGA,MAAI,WAAW,UAAU,WAAW,QAAW;AAE7C,QAAI,CAAC,UAAU;AACb,aAAO;AAAA,IACT;AAGA,QAAI,CAAC,iBAAiB,gBAAgB,UAAU;AAE9C,YAAM,YAAY,OAAO,YAAY,KAAK,iBAAiB;AAG3D,UAAI,YAAY,KAAK;AACnB,eAAO;AAAA,MACT;AAAA,IACF;AAGA,WAAO;AAAA,EACT;AAGA,SAAO;AACT;","names":[]}
@@ -1,69 +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 download_exports = {};
20
- __export(download_exports, {
21
- universalFetch: () => universalFetch
22
- });
23
- module.exports = __toCommonJS(download_exports);
24
- var import_ipfs = require("./ipfs");
25
- async function universalFetch(url, downloadRelayer) {
26
- let processedUrl = url;
27
- if (url.startsWith("ar://")) {
28
- const txId = url.replace("ar://", "");
29
- processedUrl = `https://arweave.net/${txId}`;
30
- }
31
- const ipfsHash = (0, import_ipfs.extractIpfsHash)(processedUrl);
32
- if (ipfsHash) {
33
- try {
34
- return await (0, import_ipfs.fetchWithFallbacks)(url);
35
- } catch (ipfsError) {
36
- if (downloadRelayer) {
37
- try {
38
- const gatewayUrl = `https://gateway.pinata.cloud/ipfs/${ipfsHash}`;
39
- const blob = await downloadRelayer.proxyDownload(gatewayUrl);
40
- return new Response(blob);
41
- } catch {
42
- throw ipfsError;
43
- }
44
- }
45
- throw ipfsError;
46
- }
47
- }
48
- try {
49
- const response = await fetch(processedUrl);
50
- return response;
51
- } catch (error) {
52
- if (downloadRelayer) {
53
- try {
54
- const blob = await downloadRelayer.proxyDownload(processedUrl);
55
- return new Response(blob);
56
- } catch {
57
- throw error;
58
- }
59
- }
60
- throw new Error(
61
- `Failed to fetch from ${processedUrl}: ${error instanceof Error ? error.message : "Unknown error"}`
62
- );
63
- }
64
- }
65
- // Annotate the CommonJS export names for ESM import in node:
66
- 0 && (module.exports = {
67
- universalFetch
68
- });
69
- //# sourceMappingURL=download.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/download.ts"],"sourcesContent":["/**\n * Universal download utility with CORS bypass and IPFS gateway fallbacks\n *\n * @category Utilities\n */\n\nimport { fetchWithFallbacks, extractIpfsHash } from \"./ipfs\";\n\n/**\n * Universal fetch with protocol support and automatic fallbacks\n *\n * @remarks\n * This utility provides a robust download mechanism that handles:\n * 1. IPFS URLs with automatic gateway fallbacks (5 different gateways)\n * 2. Arweave URLs with ar:// protocol conversion\n * 3. Regular HTTP/HTTPS URLs with optional CORS bypass via relayer\n * 4. Automatic fallback strategies for resilient downloads\n *\n * The function automatically determines the best strategy based on the URL\n * and available configuration, providing transparent fallback behavior.\n *\n * @param url - The URL to fetch (HTTP, HTTPS, IPFS, or Arweave)\n * @param downloadRelayer - Optional download relayer for CORS bypass\n * @param downloadRelayer.proxyDownload - Function to proxy downloads through application server\n * @returns Promise resolving to Response object\n * @throws Error if all download attempts fail\n * @example\n * ```typescript\n * // IPFS URL - automatically uses gateway fallbacks\n * const ipfsResponse = await universalFetch('ipfs://QmHash123');\n * const content = await ipfsResponse.text();\n *\n * // With optional download relayer for CORS bypass\n * const response = await universalFetch(\n * 'https://drive.google.com/file.json',\n * vana.downloadRelayer\n * );\n * const data = await response.json();\n * ```\n */\nexport async function universalFetch(\n url: string,\n downloadRelayer?: { proxyDownload: (url: string) => Promise<Blob> },\n): Promise<Response> {\n // Handle Arweave URLs\n let processedUrl = url;\n if (url.startsWith(\"ar://\")) {\n const txId = url.replace(\"ar://\", \"\");\n processedUrl = `https://arweave.net/${txId}`;\n }\n\n // For IPFS URLs, use the IPFS fallback mechanism\n const ipfsHash = extractIpfsHash(processedUrl);\n if (ipfsHash) {\n try {\n return await fetchWithFallbacks(url);\n } catch (ipfsError) {\n // If all IPFS gateways fail and we have a relayer, try it as last resort\n if (downloadRelayer) {\n try {\n // Try with the first gateway URL format\n const gatewayUrl = `https://gateway.pinata.cloud/ipfs/${ipfsHash}`;\n const blob = await downloadRelayer.proxyDownload(gatewayUrl);\n return new Response(blob);\n } catch {\n // Re-throw original IPFS error\n throw ipfsError;\n }\n }\n throw ipfsError;\n }\n }\n\n // For non-IPFS URLs, try direct then relayer\n try {\n const response = await fetch(processedUrl);\n return response;\n } catch (error) {\n // Try download relayer if configured\n if (downloadRelayer) {\n try {\n const blob = await downloadRelayer.proxyDownload(processedUrl);\n return new Response(blob);\n } catch {\n // Re-throw original error\n throw error;\n }\n }\n throw new Error(\n `Failed to fetch from ${processedUrl}: ${error instanceof Error ? error.message : \"Unknown error\"}`,\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,kBAAoD;AAkCpD,eAAsB,eACpB,KACA,iBACmB;AAEnB,MAAI,eAAe;AACnB,MAAI,IAAI,WAAW,OAAO,GAAG;AAC3B,UAAM,OAAO,IAAI,QAAQ,SAAS,EAAE;AACpC,mBAAe,uBAAuB,IAAI;AAAA,EAC5C;AAGA,QAAM,eAAW,6BAAgB,YAAY;AAC7C,MAAI,UAAU;AACZ,QAAI;AACF,aAAO,UAAM,gCAAmB,GAAG;AAAA,IACrC,SAAS,WAAW;AAElB,UAAI,iBAAiB;AACnB,YAAI;AAEF,gBAAM,aAAa,qCAAqC,QAAQ;AAChE,gBAAM,OAAO,MAAM,gBAAgB,cAAc,UAAU;AAC3D,iBAAO,IAAI,SAAS,IAAI;AAAA,QAC1B,QAAQ;AAEN,gBAAM;AAAA,QACR;AAAA,MACF;AACA,YAAM;AAAA,IACR;AAAA,EACF;AAGA,MAAI;AACF,UAAM,WAAW,MAAM,MAAM,YAAY;AACzC,WAAO;AAAA,EACT,SAAS,OAAO;AAEd,QAAI,iBAAiB;AACnB,UAAI;AACF,cAAM,OAAO,MAAM,gBAAgB,cAAc,YAAY;AAC7D,eAAO,IAAI,SAAS,IAAI;AAAA,MAC1B,QAAQ;AAEN,cAAM;AAAA,MACR;AAAA,IACF;AACA,UAAM,IAAI;AAAA,MACR,wBAAwB,YAAY,KAAK,iBAAiB,QAAQ,MAAM,UAAU,eAAe;AAAA,IACnG;AAAA,EACF;AACF;","names":[]}
@@ -1,40 +0,0 @@
1
- /**
2
- * Universal download utility with CORS bypass and IPFS gateway fallbacks
3
- *
4
- * @category Utilities
5
- */
6
- /**
7
- * Universal fetch with protocol support and automatic fallbacks
8
- *
9
- * @remarks
10
- * This utility provides a robust download mechanism that handles:
11
- * 1. IPFS URLs with automatic gateway fallbacks (5 different gateways)
12
- * 2. Arweave URLs with ar:// protocol conversion
13
- * 3. Regular HTTP/HTTPS URLs with optional CORS bypass via relayer
14
- * 4. Automatic fallback strategies for resilient downloads
15
- *
16
- * The function automatically determines the best strategy based on the URL
17
- * and available configuration, providing transparent fallback behavior.
18
- *
19
- * @param url - The URL to fetch (HTTP, HTTPS, IPFS, or Arweave)
20
- * @param downloadRelayer - Optional download relayer for CORS bypass
21
- * @param downloadRelayer.proxyDownload - Function to proxy downloads through application server
22
- * @returns Promise resolving to Response object
23
- * @throws Error if all download attempts fail
24
- * @example
25
- * ```typescript
26
- * // IPFS URL - automatically uses gateway fallbacks
27
- * const ipfsResponse = await universalFetch('ipfs://QmHash123');
28
- * const content = await ipfsResponse.text();
29
- *
30
- * // With optional download relayer for CORS bypass
31
- * const response = await universalFetch(
32
- * 'https://drive.google.com/file.json',
33
- * vana.downloadRelayer
34
- * );
35
- * const data = await response.json();
36
- * ```
37
- */
38
- export declare function universalFetch(url: string, downloadRelayer?: {
39
- proxyDownload: (url: string) => Promise<Blob>;
40
- }): Promise<Response>;