@arkiv-network/sdk 0.0.36-dev.6 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (269) hide show
  1. package/README.md +96 -16
  2. package/dist/_cjs/actions/public/buildQuery.js.map +1 -1
  3. package/dist/_cjs/actions/public/getBlockTiming.d.ts.map +1 -1
  4. package/dist/_cjs/actions/public/getBlockTiming.js.map +1 -1
  5. package/dist/_cjs/actions/public/getEntity.js.map +1 -1
  6. package/dist/_cjs/actions/public/getEntityCount.js.map +1 -1
  7. package/dist/_cjs/actions/public/query.js.map +1 -1
  8. package/dist/_cjs/actions/public/subscribeEntityEvents.d.ts.map +1 -1
  9. package/dist/_cjs/actions/public/subscribeEntityEvents.js.map +1 -1
  10. package/dist/_cjs/actions/wallet/changeOwnership.d.ts +22 -0
  11. package/dist/_cjs/actions/wallet/changeOwnership.d.ts.map +1 -0
  12. package/dist/_cjs/actions/wallet/changeOwnership.js +15 -0
  13. package/dist/_cjs/actions/wallet/changeOwnership.js.map +1 -0
  14. package/dist/_cjs/actions/wallet/createEntity.d.ts +5 -3
  15. package/dist/_cjs/actions/wallet/createEntity.d.ts.map +1 -1
  16. package/dist/_cjs/actions/wallet/createEntity.js.map +1 -1
  17. package/dist/_cjs/actions/wallet/deleteEntity.d.ts.map +1 -1
  18. package/dist/_cjs/actions/wallet/deleteEntity.js.map +1 -1
  19. package/dist/_cjs/actions/wallet/extendEntity.d.ts.map +1 -1
  20. package/dist/_cjs/actions/wallet/extendEntity.js.map +1 -1
  21. package/dist/_cjs/actions/wallet/mutateEntities.d.ts.map +1 -1
  22. package/dist/_cjs/actions/wallet/mutateEntities.js.map +1 -1
  23. package/dist/_cjs/actions/wallet/updateEntity.d.ts +6 -4
  24. package/dist/_cjs/actions/wallet/updateEntity.d.ts.map +1 -1
  25. package/dist/_cjs/actions/wallet/updateEntity.js.map +1 -1
  26. package/dist/_cjs/chains/kaolin.js.map +1 -1
  27. package/dist/_cjs/chains/localhost.js.map +1 -1
  28. package/dist/_cjs/chains/marketplace.js.map +1 -1
  29. package/dist/_cjs/clients/baseClient.d.ts.map +1 -1
  30. package/dist/_cjs/clients/createPublicClient.d.ts.map +1 -1
  31. package/dist/_cjs/clients/createPublicClient.js.map +1 -1
  32. package/dist/_cjs/clients/createWalletClient.d.ts.map +1 -1
  33. package/dist/_cjs/clients/createWalletClient.js.map +1 -1
  34. package/dist/_cjs/clients/decorators/arkivPublic.d.ts +0 -2
  35. package/dist/_cjs/clients/decorators/arkivPublic.d.ts.map +1 -1
  36. package/dist/_cjs/clients/decorators/arkivPublic.js.map +1 -1
  37. package/dist/_cjs/clients/decorators/arkivWallet.d.ts +15 -5
  38. package/dist/_cjs/clients/decorators/arkivWallet.d.ts.map +1 -1
  39. package/dist/_cjs/clients/decorators/arkivWallet.js +2 -0
  40. package/dist/_cjs/clients/decorators/arkivWallet.js.map +1 -1
  41. package/dist/_cjs/consts.js +1 -1
  42. package/dist/_cjs/index.d.ts +1 -1
  43. package/dist/_cjs/index.d.ts.map +1 -1
  44. package/dist/_cjs/query/engine.d.ts +1 -1
  45. package/dist/_cjs/query/engine.d.ts.map +1 -1
  46. package/dist/_cjs/query/engine.js +5 -4
  47. package/dist/_cjs/query/engine.js.map +1 -1
  48. package/dist/_cjs/query/errors.js.map +1 -1
  49. package/dist/_cjs/query/predicate.d.ts.map +1 -1
  50. package/dist/_cjs/query/predicate.js.map +1 -1
  51. package/dist/_cjs/query/queryBuilder.d.ts +5 -5
  52. package/dist/_cjs/query/queryBuilder.d.ts.map +1 -1
  53. package/dist/_cjs/query/queryBuilder.js +8 -8
  54. package/dist/_cjs/query/queryBuilder.js.map +1 -1
  55. package/dist/_cjs/query/queryResult.d.ts.map +1 -1
  56. package/dist/_cjs/query/queryResult.js.map +1 -1
  57. package/dist/_cjs/types/attributes.d.ts +5 -0
  58. package/dist/_cjs/types/attributes.d.ts.map +1 -0
  59. package/dist/_cjs/types/{annotation.js → attributes.js} +1 -1
  60. package/dist/_cjs/types/attributes.js.map +1 -0
  61. package/dist/_cjs/types/entity.d.ts +5 -3
  62. package/dist/_cjs/types/entity.d.ts.map +1 -1
  63. package/dist/_cjs/types/entity.js +5 -3
  64. package/dist/_cjs/types/entity.js.map +1 -1
  65. package/dist/_cjs/types/events.d.ts.map +1 -1
  66. package/dist/_cjs/types/index.d.ts +2 -1
  67. package/dist/_cjs/types/index.d.ts.map +1 -1
  68. package/dist/_cjs/types/mimeTypes.d.ts +2 -0
  69. package/dist/_cjs/types/mimeTypes.d.ts.map +1 -0
  70. package/dist/_cjs/types/mimeTypes.js +3 -0
  71. package/dist/_cjs/types/mimeTypes.js.map +1 -0
  72. package/dist/_cjs/types/rpcSchema.d.ts +6 -19
  73. package/dist/_cjs/types/rpcSchema.d.ts.map +1 -1
  74. package/dist/_cjs/types/txParams.d.ts.map +1 -1
  75. package/dist/_cjs/utils/arkivTransactions.d.ts +3 -1
  76. package/dist/_cjs/utils/arkivTransactions.d.ts.map +1 -1
  77. package/dist/_cjs/utils/arkivTransactions.js +23 -17
  78. package/dist/_cjs/utils/arkivTransactions.js.map +1 -1
  79. package/dist/_cjs/utils/compression.d.ts +3 -0
  80. package/dist/_cjs/utils/compression.d.ts.map +1 -0
  81. package/dist/_cjs/utils/compression.js +24 -0
  82. package/dist/_cjs/utils/compression.js.map +1 -0
  83. package/dist/_cjs/utils/entities.d.ts.map +1 -1
  84. package/dist/_cjs/utils/entities.js +4 -4
  85. package/dist/_cjs/utils/entities.js.map +1 -1
  86. package/dist/_cjs/utils/expirationTime.d.ts.map +1 -1
  87. package/dist/_cjs/utils/expirationTime.js.map +1 -1
  88. package/dist/_cjs/utils/payload.js.map +1 -1
  89. package/dist/_esm/actions/public/buildQuery.js.map +1 -1
  90. package/dist/_esm/actions/public/getBlockTiming.d.ts.map +1 -1
  91. package/dist/_esm/actions/public/getBlockTiming.js.map +1 -1
  92. package/dist/_esm/actions/public/getEntity.js.map +1 -1
  93. package/dist/_esm/actions/public/getEntityCount.js.map +1 -1
  94. package/dist/_esm/actions/public/query.js.map +1 -1
  95. package/dist/_esm/actions/public/subscribeEntityEvents.d.ts.map +1 -1
  96. package/dist/_esm/actions/public/subscribeEntityEvents.js.map +1 -1
  97. package/dist/_esm/actions/wallet/changeOwnership.d.ts +22 -0
  98. package/dist/_esm/actions/wallet/changeOwnership.d.ts.map +1 -0
  99. package/dist/_esm/actions/wallet/changeOwnership.js +12 -0
  100. package/dist/_esm/actions/wallet/changeOwnership.js.map +1 -0
  101. package/dist/_esm/actions/wallet/createEntity.d.ts +5 -3
  102. package/dist/_esm/actions/wallet/createEntity.d.ts.map +1 -1
  103. package/dist/_esm/actions/wallet/createEntity.js.map +1 -1
  104. package/dist/_esm/actions/wallet/deleteEntity.d.ts.map +1 -1
  105. package/dist/_esm/actions/wallet/deleteEntity.js.map +1 -1
  106. package/dist/_esm/actions/wallet/extendEntity.d.ts.map +1 -1
  107. package/dist/_esm/actions/wallet/extendEntity.js.map +1 -1
  108. package/dist/_esm/actions/wallet/mutateEntities.d.ts.map +1 -1
  109. package/dist/_esm/actions/wallet/mutateEntities.js.map +1 -1
  110. package/dist/_esm/actions/wallet/updateEntity.d.ts +6 -4
  111. package/dist/_esm/actions/wallet/updateEntity.d.ts.map +1 -1
  112. package/dist/_esm/actions/wallet/updateEntity.js.map +1 -1
  113. package/dist/_esm/chains/kaolin.js.map +1 -1
  114. package/dist/_esm/chains/localhost.js.map +1 -1
  115. package/dist/_esm/chains/marketplace.js.map +1 -1
  116. package/dist/_esm/clients/baseClient.d.ts.map +1 -1
  117. package/dist/_esm/clients/createPublicClient.d.ts.map +1 -1
  118. package/dist/_esm/clients/createPublicClient.js.map +1 -1
  119. package/dist/_esm/clients/createWalletClient.d.ts.map +1 -1
  120. package/dist/_esm/clients/createWalletClient.js.map +1 -1
  121. package/dist/_esm/clients/decorators/arkivPublic.d.ts +0 -2
  122. package/dist/_esm/clients/decorators/arkivPublic.d.ts.map +1 -1
  123. package/dist/_esm/clients/decorators/arkivPublic.js.map +1 -1
  124. package/dist/_esm/clients/decorators/arkivWallet.d.ts +15 -5
  125. package/dist/_esm/clients/decorators/arkivWallet.d.ts.map +1 -1
  126. package/dist/_esm/clients/decorators/arkivWallet.js +2 -0
  127. package/dist/_esm/clients/decorators/arkivWallet.js.map +1 -1
  128. package/dist/_esm/consts.js +1 -1
  129. package/dist/_esm/index.d.ts +1 -1
  130. package/dist/_esm/index.d.ts.map +1 -1
  131. package/dist/_esm/query/engine.d.ts +1 -1
  132. package/dist/_esm/query/engine.d.ts.map +1 -1
  133. package/dist/_esm/query/engine.js +5 -4
  134. package/dist/_esm/query/engine.js.map +1 -1
  135. package/dist/_esm/query/errors.js.map +1 -1
  136. package/dist/_esm/query/predicate.d.ts.map +1 -1
  137. package/dist/_esm/query/predicate.js.map +1 -1
  138. package/dist/_esm/query/queryBuilder.d.ts +5 -5
  139. package/dist/_esm/query/queryBuilder.d.ts.map +1 -1
  140. package/dist/_esm/query/queryBuilder.js +8 -8
  141. package/dist/_esm/query/queryBuilder.js.map +1 -1
  142. package/dist/_esm/query/queryResult.d.ts.map +1 -1
  143. package/dist/_esm/query/queryResult.js.map +1 -1
  144. package/dist/_esm/types/attributes.d.ts +5 -0
  145. package/dist/_esm/types/attributes.d.ts.map +1 -0
  146. package/dist/_esm/types/attributes.js +2 -0
  147. package/dist/_esm/types/attributes.js.map +1 -0
  148. package/dist/_esm/types/entity.d.ts +5 -3
  149. package/dist/_esm/types/entity.d.ts.map +1 -1
  150. package/dist/_esm/types/entity.js +5 -3
  151. package/dist/_esm/types/entity.js.map +1 -1
  152. package/dist/_esm/types/events.d.ts.map +1 -1
  153. package/dist/_esm/types/index.d.ts +2 -1
  154. package/dist/_esm/types/index.d.ts.map +1 -1
  155. package/dist/_esm/types/mimeTypes.d.ts +2 -0
  156. package/dist/_esm/types/mimeTypes.d.ts.map +1 -0
  157. package/dist/_esm/types/mimeTypes.js +2 -0
  158. package/dist/_esm/types/mimeTypes.js.map +1 -0
  159. package/dist/_esm/types/rpcSchema.d.ts +6 -19
  160. package/dist/_esm/types/rpcSchema.d.ts.map +1 -1
  161. package/dist/_esm/types/txParams.d.ts.map +1 -1
  162. package/dist/_esm/utils/arkivTransactions.d.ts +3 -1
  163. package/dist/_esm/utils/arkivTransactions.d.ts.map +1 -1
  164. package/dist/_esm/utils/arkivTransactions.js +24 -18
  165. package/dist/_esm/utils/arkivTransactions.js.map +1 -1
  166. package/dist/_esm/utils/compression.d.ts +3 -0
  167. package/dist/_esm/utils/compression.d.ts.map +1 -0
  168. package/dist/_esm/utils/compression.js +20 -0
  169. package/dist/_esm/utils/compression.js.map +1 -0
  170. package/dist/_esm/utils/entities.d.ts.map +1 -1
  171. package/dist/_esm/utils/entities.js +4 -4
  172. package/dist/_esm/utils/entities.js.map +1 -1
  173. package/dist/_esm/utils/expirationTime.d.ts.map +1 -1
  174. package/dist/_esm/utils/expirationTime.js.map +1 -1
  175. package/dist/_esm/utils/payload.js.map +1 -1
  176. package/dist/_types/actions/public/getBlockTiming.d.ts.map +1 -1
  177. package/dist/_types/actions/public/subscribeEntityEvents.d.ts.map +1 -1
  178. package/dist/_types/actions/wallet/changeOwnership.d.ts +22 -0
  179. package/dist/_types/actions/wallet/changeOwnership.d.ts.map +1 -0
  180. package/dist/_types/actions/wallet/createEntity.d.ts +5 -3
  181. package/dist/_types/actions/wallet/createEntity.d.ts.map +1 -1
  182. package/dist/_types/actions/wallet/deleteEntity.d.ts.map +1 -1
  183. package/dist/_types/actions/wallet/extendEntity.d.ts.map +1 -1
  184. package/dist/_types/actions/wallet/mutateEntities.d.ts.map +1 -1
  185. package/dist/_types/actions/wallet/updateEntity.d.ts +6 -4
  186. package/dist/_types/actions/wallet/updateEntity.d.ts.map +1 -1
  187. package/dist/_types/clients/baseClient.d.ts.map +1 -1
  188. package/dist/_types/clients/createPublicClient.d.ts.map +1 -1
  189. package/dist/_types/clients/createWalletClient.d.ts.map +1 -1
  190. package/dist/_types/clients/decorators/arkivPublic.d.ts +0 -2
  191. package/dist/_types/clients/decorators/arkivPublic.d.ts.map +1 -1
  192. package/dist/_types/clients/decorators/arkivWallet.d.ts +15 -5
  193. package/dist/_types/clients/decorators/arkivWallet.d.ts.map +1 -1
  194. package/dist/_types/index.d.ts +1 -1
  195. package/dist/_types/index.d.ts.map +1 -1
  196. package/dist/_types/query/engine.d.ts +1 -1
  197. package/dist/_types/query/engine.d.ts.map +1 -1
  198. package/dist/_types/query/predicate.d.ts.map +1 -1
  199. package/dist/_types/query/queryBuilder.d.ts +5 -5
  200. package/dist/_types/query/queryBuilder.d.ts.map +1 -1
  201. package/dist/_types/query/queryResult.d.ts.map +1 -1
  202. package/dist/_types/types/attributes.d.ts +5 -0
  203. package/dist/_types/types/attributes.d.ts.map +1 -0
  204. package/dist/_types/types/entity.d.ts +5 -3
  205. package/dist/_types/types/entity.d.ts.map +1 -1
  206. package/dist/_types/types/events.d.ts.map +1 -1
  207. package/dist/_types/types/index.d.ts +2 -1
  208. package/dist/_types/types/index.d.ts.map +1 -1
  209. package/dist/_types/types/mimeTypes.d.ts +2 -0
  210. package/dist/_types/types/mimeTypes.d.ts.map +1 -0
  211. package/dist/_types/types/rpcSchema.d.ts +6 -19
  212. package/dist/_types/types/rpcSchema.d.ts.map +1 -1
  213. package/dist/_types/types/txParams.d.ts.map +1 -1
  214. package/dist/_types/utils/arkivTransactions.d.ts +3 -1
  215. package/dist/_types/utils/arkivTransactions.d.ts.map +1 -1
  216. package/dist/_types/utils/compression.d.ts +3 -0
  217. package/dist/_types/utils/compression.d.ts.map +1 -0
  218. package/dist/_types/utils/entities.d.ts.map +1 -1
  219. package/dist/_types/utils/expirationTime.d.ts.map +1 -1
  220. package/package.json +118 -116
  221. package/src/actions/public/buildQuery.ts +1 -1
  222. package/src/actions/public/getBlockTiming.ts +13 -13
  223. package/src/actions/public/getEntity.ts +9 -9
  224. package/src/actions/public/getEntityCount.ts +5 -5
  225. package/src/actions/public/query.ts +6 -6
  226. package/src/actions/public/subscribeEntityEvents.ts +92 -92
  227. package/src/actions/wallet/changeOwnership.ts +40 -0
  228. package/src/actions/wallet/createEntity.ts +20 -18
  229. package/src/actions/wallet/deleteEntity.ts +14 -14
  230. package/src/actions/wallet/extendEntity.ts +15 -15
  231. package/src/actions/wallet/mutateEntities.ts +58 -58
  232. package/src/actions/wallet/updateEntity.ts +21 -19
  233. package/src/chains/kaolin.ts +22 -22
  234. package/src/chains/localhost.ts +10 -10
  235. package/src/chains/marketplace.ts +22 -22
  236. package/src/clients/baseClient.ts +4 -4
  237. package/src/clients/createPublicClient.ts +31 -31
  238. package/src/clients/createWalletClient.ts +35 -35
  239. package/src/clients/decorators/arkivPublic.ts +179 -181
  240. package/src/clients/decorators/arkivWallet.ts +222 -204
  241. package/src/consts.ts +1 -1
  242. package/src/index.ts +8 -8
  243. package/src/query/engine.ts +93 -92
  244. package/src/query/errors.ts +12 -12
  245. package/src/query/predicate.ts +18 -18
  246. package/src/query/queryBuilder.ts +194 -194
  247. package/src/query/queryResult.ts +49 -49
  248. package/src/types/attributes.ts +4 -0
  249. package/src/types/entity.ts +29 -25
  250. package/src/types/events.ts +18 -18
  251. package/src/types/index.ts +2 -1
  252. package/src/types/mimeTypes.ts +27 -0
  253. package/src/types/rpcSchema.ts +46 -53
  254. package/src/types/txParams.ts +14 -14
  255. package/src/utils/arkivTransactions.ts +76 -67
  256. package/src/utils/compression.ts +21 -0
  257. package/src/utils/entities.ts +17 -10
  258. package/src/utils/expirationTime.ts +9 -9
  259. package/src/utils/payload.ts +2 -2
  260. package/dist/_cjs/types/annotation.d.ts +0 -5
  261. package/dist/_cjs/types/annotation.d.ts.map +0 -1
  262. package/dist/_cjs/types/annotation.js.map +0 -1
  263. package/dist/_esm/types/annotation.d.ts +0 -5
  264. package/dist/_esm/types/annotation.d.ts.map +0 -1
  265. package/dist/_esm/types/annotation.js +0 -2
  266. package/dist/_esm/types/annotation.js.map +0 -1
  267. package/dist/_types/types/annotation.d.ts +0 -5
  268. package/dist/_types/types/annotation.d.ts.map +0 -1
  269. package/src/types/annotation.ts +0 -4
package/package.json CHANGED
@@ -1,118 +1,120 @@
1
1
  {
2
- "name": "@arkiv-network/sdk",
3
- "version": "0.0.36-dev.6",
4
- "description": "TypeScript-only client library for Arkiv blockchain interactions",
5
- "type": "module",
6
- "main": "./dist/_cjs/index.js",
7
- "module": "./dist/_esm/index.js",
8
- "types": "./dist/_types/index.d.ts",
9
- "typings": "./dist/_types/index.d.ts",
10
- "sideEffects": false,
11
- "exports": {
12
- ".": {
13
- "source": "./src/index.ts",
14
- "types": "./dist/_types/index.d.ts",
15
- "import": "./dist/_esm/index.js",
16
- "default": "./dist/_cjs/index.js"
17
- },
18
- "./chains": {
19
- "source": "./src/chains/index.ts",
20
- "types": "./dist/_types/chains/index.d.ts",
21
- "import": "./dist/_esm/chains/index.js",
22
- "default": "./dist/_cjs/chains/index.js"
23
- },
24
- "./accounts": {
25
- "source": "./src/accounts/index.ts",
26
- "types": "./dist/_types/accounts/index.d.ts",
27
- "import": "./dist/_esm/accounts/index.js",
28
- "default": "./dist/_cjs/accounts/index.js"
29
- },
30
- "./utils": {
31
- "source": "./src/utils/index.ts",
32
- "types": "./dist/_types/utils/index.d.ts",
33
- "import": "./dist/_esm/utils/index.js",
34
- "default": "./dist/_cjs/utils/index.js"
35
- },
36
- "./query": {
37
- "source": "./src/query/index.ts",
38
- "types": "./dist/_types/query/index.d.ts",
39
- "import": "./dist/_esm/query/index.js",
40
- "default": "./dist/_cjs/query/index.js"
41
- },
42
- "./package.json": "./package.json"
43
- },
44
- "typesVersions": {
45
- "*": {
46
- "chains": [
47
- "./dist/_types/chains/index.d.ts"
48
- ],
49
- "accounts": [
50
- "./dist/_types/accounts/index.d.ts"
51
- ],
52
- "utils": [
53
- "./dist/_types/utils/index.d.ts"
54
- ],
55
- "query": [
56
- "./dist/_types/query/index.d.ts"
57
- ]
58
- }
59
- },
60
- "files": [
61
- "dist/**/*.js",
62
- "dist/**/*.js.map",
63
- "dist/**/*.d.ts",
64
- "dist/**/*.d.ts.map",
65
- "src/**/*.ts",
66
- "!src/**/*.test.ts",
67
- "!src/**/*.spec.ts"
68
- ],
69
- "scripts": {
70
- "build": "rimraf dist && bun run build:cjs && bun run build:esm && bun run build:types",
71
- "build:cjs": "tsc --project tsconfig.cjs.json",
72
- "build:esm": "tsc --project tsconfig.esm.json",
73
- "build:types": "tsc --project tsconfig.types.json",
74
- "postbuild": "rimraf *.tsbuildinfo",
75
- "type-check": "tsc --noEmit",
76
- "lint": "biome check src/",
77
- "lint:fix": "biome check --write src/",
78
- "package": "rimraf arkiv-network-sdk-*.tgz && bun run build && bun pm pack --no-cache",
79
- "package:test": "bun run package && mv arkiv-network-sdk-*.tgz arkiv-network-sdk-latest.tgz",
80
- "prepublishOnly": "bun run build && bun run package && mv arkiv-network-sdk-*.tgz arkiv-network-sdk-latest.tgz",
81
- "publish-main": "npm publish ./arkiv-network-sdk-latest.tgz --access public",
82
- "publish-main:dry": "npm publish ./arkiv-network-sdk-latest.tgz --access public --dry-run",
83
- "publish-dev": "npm version prerelease --preid=dev && npm publish ./arkiv-network-sdk-latest.tgz --access public --tag dev",
84
- "publish-dev:dry": "npm version prerelease --preid=dev && npm publish ./arkiv-network-sdk-latest.tgz --access public --tag dev --dry-run"
85
- },
86
- "devDependencies": {
87
- "@biomejs/biome": "2.2.4",
88
- "@types/bun": "latest",
89
- "rimraf": "^6.0.1"
90
- },
91
- "peerDependencies": {
92
- "typescript": "^5.0.0"
93
- },
94
- "peerDependenciesMeta": {
95
- "typescript": {
96
- "optional": false
97
- }
98
- },
99
- "engines": {
100
- "node": ">=18.0.0"
101
- },
102
- "keywords": [
103
- "typescript",
104
- "blockchain",
105
- "golem",
106
- "arkiv",
107
- "golemdb",
108
- "ethereum",
109
- "viem"
110
- ],
111
- "repository": {
112
- "type": "git",
113
- "url": "https://github.com/Arkiv-Network/arkiv-sdk-js.git"
114
- },
115
- "dependencies": {
116
- "viem": "^2.38.2"
117
- }
2
+ "name": "@arkiv-network/sdk",
3
+ "version": "0.1.0",
4
+ "description": "TypeScript-only client library for Arkiv blockchain interactions",
5
+ "type": "module",
6
+ "main": "./dist/_cjs/index.js",
7
+ "module": "./dist/_esm/index.js",
8
+ "types": "./dist/_types/index.d.ts",
9
+ "typings": "./dist/_types/index.d.ts",
10
+ "sideEffects": false,
11
+ "exports": {
12
+ ".": {
13
+ "source": "./src/index.ts",
14
+ "types": "./dist/_types/index.d.ts",
15
+ "import": "./dist/_esm/index.js",
16
+ "default": "./dist/_cjs/index.js"
17
+ },
18
+ "./chains": {
19
+ "source": "./src/chains/index.ts",
20
+ "types": "./dist/_types/chains/index.d.ts",
21
+ "import": "./dist/_esm/chains/index.js",
22
+ "default": "./dist/_cjs/chains/index.js"
23
+ },
24
+ "./accounts": {
25
+ "source": "./src/accounts/index.ts",
26
+ "types": "./dist/_types/accounts/index.d.ts",
27
+ "import": "./dist/_esm/accounts/index.js",
28
+ "default": "./dist/_cjs/accounts/index.js"
29
+ },
30
+ "./utils": {
31
+ "source": "./src/utils/index.ts",
32
+ "types": "./dist/_types/utils/index.d.ts",
33
+ "import": "./dist/_esm/utils/index.js",
34
+ "default": "./dist/_cjs/utils/index.js"
35
+ },
36
+ "./query": {
37
+ "source": "./src/query/index.ts",
38
+ "types": "./dist/_types/query/index.d.ts",
39
+ "import": "./dist/_esm/query/index.js",
40
+ "default": "./dist/_cjs/query/index.js"
41
+ },
42
+ "./package.json": "./package.json"
43
+ },
44
+ "typesVersions": {
45
+ "*": {
46
+ "chains": [
47
+ "./dist/_types/chains/index.d.ts"
48
+ ],
49
+ "accounts": [
50
+ "./dist/_types/accounts/index.d.ts"
51
+ ],
52
+ "utils": [
53
+ "./dist/_types/utils/index.d.ts"
54
+ ],
55
+ "query": [
56
+ "./dist/_types/query/index.d.ts"
57
+ ]
58
+ }
59
+ },
60
+ "files": [
61
+ "dist/**/*.js",
62
+ "dist/**/*.js.map",
63
+ "dist/**/*.d.ts",
64
+ "dist/**/*.d.ts.map",
65
+ "src/**/*.ts",
66
+ "!src/**/*.test.ts",
67
+ "!src/**/*.spec.ts"
68
+ ],
69
+ "scripts": {
70
+ "build": "rimraf dist && bun run build:cjs && bun run build:esm && bun run build:types",
71
+ "build:cjs": "tsc --project tsconfig.cjs.json",
72
+ "build:esm": "tsc --project tsconfig.esm.json",
73
+ "build:types": "tsc --project tsconfig.types.json",
74
+ "postbuild": "rimraf *.tsbuildinfo",
75
+ "type-check": "tsc --noEmit",
76
+ "lint": "biome check src/",
77
+ "lint:fix": "biome check --write src/",
78
+ "package": "rimraf arkiv-network-sdk-*.tgz && bun run build && bun pm pack --no-cache",
79
+ "package:test": "bun run package && mv arkiv-network-sdk-*.tgz arkiv-network-sdk-latest.tgz",
80
+ "prepublishOnly": "bun run build && bun run package && mv arkiv-network-sdk-*.tgz arkiv-network-sdk-latest.tgz",
81
+ "publish-main": "npm publish ./arkiv-network-sdk-latest.tgz --access public",
82
+ "publish-main:dry": "npm publish ./arkiv-network-sdk-latest.tgz --access public --dry-run",
83
+ "publish-dev": "npm version prerelease --preid=dev && npm publish ./arkiv-network-sdk-latest.tgz --access public --tag dev",
84
+ "publish-dev:dry": "npm version prerelease --preid=dev && npm publish ./arkiv-network-sdk-latest.tgz --access public --tag dev --dry-run"
85
+ },
86
+ "devDependencies": {
87
+ "@biomejs/biome": "2.2.4",
88
+ "@types/bun": "latest",
89
+ "rimraf": "^6.0.1"
90
+ },
91
+ "peerDependencies": {
92
+ "typescript": "^5.0.0"
93
+ },
94
+ "peerDependenciesMeta": {
95
+ "typescript": {
96
+ "optional": false
97
+ }
98
+ },
99
+ "engines": {
100
+ "node": ">=18.0.0"
101
+ },
102
+ "keywords": [
103
+ "typescript",
104
+ "blockchain",
105
+ "golem",
106
+ "arkiv",
107
+ "golemdb",
108
+ "ethereum",
109
+ "viem"
110
+ ],
111
+ "repository": {
112
+ "type": "git",
113
+ "url": "https://github.com/Arkiv-Network/arkiv-sdk-js.git"
114
+ },
115
+ "dependencies": {
116
+ "@bokuweb/zstd-wasm": "^0.0.27",
117
+ "@oneidentity/zstd-js": "^1.0.3",
118
+ "viem": "^2.38.2"
119
+ }
118
120
  }
@@ -2,5 +2,5 @@ import type { ArkivClient } from "../../clients/baseClient"
2
2
  import { QueryBuilder } from "../../query/queryBuilder"
3
3
 
4
4
  export async function buildQuery(client: ArkivClient) {
5
- return new QueryBuilder(client)
5
+ return new QueryBuilder(client)
6
6
  }
@@ -1,20 +1,20 @@
1
1
  import type { ArkivClient } from "../../clients/baseClient"
2
2
 
3
3
  export type GetBlockTimingReturnType = {
4
- currentBlock: bigint
5
- currentBlockTime: number
6
- blockDuration: number
4
+ currentBlock: bigint
5
+ currentBlockTime: number
6
+ blockDuration: number
7
7
  }
8
8
 
9
9
  export async function getBlockTiming(client: ArkivClient) {
10
- const blockTiming = await client.request({
11
- method: "arkiv_getBlockTiming",
12
- params: [],
13
- })
14
- console.debug("Block timing", blockTiming)
15
- return {
16
- currentBlock: blockTiming.current_block,
17
- currentBlockTime: blockTiming.current_block_time,
18
- blockDuration: blockTiming.duration,
19
- }
10
+ const blockTiming = await client.request({
11
+ method: "arkiv_getBlockTiming",
12
+ params: [],
13
+ })
14
+ console.debug("Block timing", blockTiming)
15
+ return {
16
+ currentBlock: blockTiming.current_block,
17
+ currentBlockTime: blockTiming.current_block_time,
18
+ blockDuration: blockTiming.duration,
19
+ }
20
20
  }
@@ -4,15 +4,15 @@ import { NoEntityFoundError } from "../../query/errors"
4
4
  import { entityFromRpcResult } from "../../utils/entities"
5
5
 
6
6
  export async function getEntity(client: ArkivClient, key: Hex) {
7
- const result = await client.request({
8
- method: "arkiv_query",
9
- params: [`$key = ${key}`],
10
- })
11
- console.debug("GetEntity result", result)
7
+ const result = await client.request({
8
+ method: "arkiv_query",
9
+ params: [`$key = ${key}`],
10
+ })
11
+ console.debug("GetEntity result", result)
12
12
 
13
- if (!result.data) {
14
- throw new NoEntityFoundError()
15
- }
13
+ if (!result.data) {
14
+ throw new NoEntityFoundError()
15
+ }
16
16
 
17
- return entityFromRpcResult(result.data[0])
17
+ return entityFromRpcResult(result.data[0])
18
18
  }
@@ -1,10 +1,10 @@
1
1
  import type { ArkivClient } from "../../clients/baseClient"
2
2
 
3
3
  export async function getEntityCount(client: ArkivClient) {
4
- const count = await client.request({
5
- method: "arkiv_getEntityCount",
6
- params: [],
7
- })
4
+ const count = await client.request({
5
+ method: "arkiv_getEntityCount",
6
+ params: [],
7
+ })
8
8
 
9
- return count
9
+ return count
10
10
  }
@@ -2,12 +2,12 @@ import type { ArkivClient } from "../../clients/baseClient"
2
2
  import { entityFromRpcResult } from "../../utils/entities"
3
3
 
4
4
  export async function query(client: ArkivClient, query: string) {
5
- const result = await client.request({
6
- method: "arkiv_query",
7
- params: [query],
8
- })
5
+ const result = await client.request({
6
+ method: "arkiv_query",
7
+ params: [query],
8
+ })
9
9
 
10
- const entities = await Promise.all(result.data.map((entity) => entityFromRpcResult(entity)))
10
+ const entities = await Promise.all(result.data.map((entity) => entityFromRpcResult(entity)))
11
11
 
12
- return entities
12
+ return entities
13
13
  }
@@ -2,104 +2,104 @@ import { decodeEventLog, parseAbi, toHex } from "viem"
2
2
  import type { ArkivClient } from "../../clients/baseClient"
3
3
  import type { PublicArkivClient } from "../../clients/createPublicClient"
4
4
  import type {
5
- OnEntityCreatedEvent,
6
- OnEntityDeletedEvent,
7
- OnEntityExpiredEvent,
8
- OnEntityExpiresInExtendedEvent,
9
- OnEntityUpdatedEvent,
5
+ OnEntityCreatedEvent,
6
+ OnEntityDeletedEvent,
7
+ OnEntityExpiredEvent,
8
+ OnEntityExpiresInExtendedEvent,
9
+ OnEntityUpdatedEvent,
10
10
  } from "../../types/events"
11
11
 
12
12
  export const arkivABI = parseAbi([
13
- "event ArkivEntityCreated(uint256 indexed entityKey, address indexed ownerAddress, uint256 expirationBlock, uint256 cost)",
14
- "event ArkivEntityUpdated(uint256 indexed entityKey, address indexed ownerAddress, uint256 oldExpirationBlock, uint256 newExpirationBlock, uint256 cost)",
15
- "event ArkivEntityExpired(uint256 indexed entityKey, address indexed ownerAddress)",
16
- "event ArkivEntityDeleted(uint256 indexed entityKey, address indexed ownerAddress)",
17
- "event ArkivEntityBTLExtended(uint256 indexed entityKey, address indexed ownerAddress, uint256 oldExpirationBlock, uint256 newExpirationBlock, uint256 cost)",
13
+ "event ArkivEntityCreated(uint256 indexed entityKey, address indexed ownerAddress, uint256 expirationBlock, uint256 cost)",
14
+ "event ArkivEntityUpdated(uint256 indexed entityKey, address indexed ownerAddress, uint256 oldExpirationBlock, uint256 newExpirationBlock, uint256 cost)",
15
+ "event ArkivEntityExpired(uint256 indexed entityKey, address indexed ownerAddress)",
16
+ "event ArkivEntityDeleted(uint256 indexed entityKey, address indexed ownerAddress)",
17
+ "event ArkivEntityBTLExtended(uint256 indexed entityKey, address indexed ownerAddress, uint256 oldExpirationBlock, uint256 newExpirationBlock, uint256 cost)",
18
18
  ])
19
19
 
20
20
  export async function subscribeEntityEvents(
21
- client: ArkivClient,
22
- {
23
- onError,
24
- onEntityCreated,
25
- onEntityUpdated,
26
- onEntityDeleted,
27
- onEntityExpired,
28
- onEntityExpiresInExtended,
29
- }: {
30
- onError: ((error: Error) => void) | undefined
31
- onEntityCreated?: ((event: OnEntityCreatedEvent) => void) | undefined
32
- onEntityUpdated?: ((event: OnEntityUpdatedEvent) => void) | undefined
33
- onEntityDeleted?: ((event: OnEntityDeletedEvent) => void) | undefined
34
- onEntityExpired?: ((event: OnEntityExpiredEvent) => void) | undefined
35
- onEntityExpiresInExtended?: ((event: OnEntityExpiresInExtendedEvent) => void) | undefined
36
- },
37
- pollingInterval?: number,
38
- fromBlock?: bigint,
21
+ client: ArkivClient,
22
+ {
23
+ onError,
24
+ onEntityCreated,
25
+ onEntityUpdated,
26
+ onEntityDeleted,
27
+ onEntityExpired,
28
+ onEntityExpiresInExtended,
29
+ }: {
30
+ onError: ((error: Error) => void) | undefined
31
+ onEntityCreated?: ((event: OnEntityCreatedEvent) => void) | undefined
32
+ onEntityUpdated?: ((event: OnEntityUpdatedEvent) => void) | undefined
33
+ onEntityDeleted?: ((event: OnEntityDeletedEvent) => void) | undefined
34
+ onEntityExpired?: ((event: OnEntityExpiredEvent) => void) | undefined
35
+ onEntityExpiresInExtended?: ((event: OnEntityExpiresInExtendedEvent) => void) | undefined
36
+ },
37
+ pollingInterval?: number,
38
+ fromBlock?: bigint,
39
39
  ): Promise<() => void> {
40
- const unsubscribe = (client as PublicArkivClient).watchEvent({
41
- pollingInterval: pollingInterval ?? 1000,
42
- fromBlock: fromBlock ?? 0n,
43
- events: arkivABI,
44
- onLogs: (logs) => {
45
- console.debug("logs from subscribeEntityEvents", logs)
46
- for (const log of logs) {
47
- const event = decodeEventLog({
48
- abi: arkivABI,
49
- topics: log.topics,
50
- data: log.data,
51
- })
52
- console.debug("event from subscribeEntityEvents", event)
53
- switch (event.eventName) {
54
- case "ArkivEntityCreated":
55
- onEntityCreated?.({
56
- entityKey: toHex(event.args.entityKey, { size: 32 }),
57
- owner: event.args.ownerAddress,
58
- expirationBlock: Number(event.args.expirationBlock),
59
- cost: event.args.cost,
60
- })
61
- break
62
- case "ArkivEntityUpdated":
63
- onEntityUpdated?.({
64
- entityKey: toHex(event.args.entityKey, { size: 32 }),
65
- owner: event.args.ownerAddress,
66
- oldExpirationBlock: Number(event.args.oldExpirationBlock),
67
- newExpirationBlock: Number(event.args.newExpirationBlock),
68
- cost: event.args.cost,
69
- })
70
- break
71
- case "ArkivEntityDeleted":
72
- onEntityDeleted?.({
73
- entityKey: toHex(event.args.entityKey, { size: 32 }),
74
- owner: event.args.ownerAddress,
75
- })
76
- break
77
- case "ArkivEntityBTLExtended":
78
- onEntityExpiresInExtended?.({
79
- entityKey: toHex(event.args.entityKey, { size: 32 }),
80
- owner: event.args.ownerAddress,
81
- oldExpirationBlock: Number(event.args.oldExpirationBlock),
82
- newExpirationBlock: Number(event.args.newExpirationBlock),
83
- cost: event.args.cost,
84
- })
85
- break
86
- case "ArkivEntityExpired":
87
- onEntityExpired?.({
88
- entityKey: toHex(event.args.entityKey, { size: 32 }),
89
- owner: event.args.ownerAddress,
90
- })
91
- break
92
- default:
93
- console.warn("unknown event from subscribeEntityEvents", event)
94
- break
95
- }
96
- }
97
- },
98
- onError: (error) => {
99
- console.error("error from subscribeEntityEvents", error)
100
- onError?.(error)
101
- },
102
- })
40
+ const unsubscribe = (client as PublicArkivClient).watchEvent({
41
+ pollingInterval: pollingInterval ?? 1000,
42
+ fromBlock: fromBlock ?? 0n,
43
+ events: arkivABI,
44
+ onLogs: (logs) => {
45
+ console.debug("logs from subscribeEntityEvents", logs)
46
+ for (const log of logs) {
47
+ const event = decodeEventLog({
48
+ abi: arkivABI,
49
+ topics: log.topics,
50
+ data: log.data,
51
+ })
52
+ console.debug("event from subscribeEntityEvents", event)
53
+ switch (event.eventName) {
54
+ case "ArkivEntityCreated":
55
+ onEntityCreated?.({
56
+ entityKey: toHex(event.args.entityKey, { size: 32 }),
57
+ owner: event.args.ownerAddress,
58
+ expirationBlock: Number(event.args.expirationBlock),
59
+ cost: event.args.cost,
60
+ })
61
+ break
62
+ case "ArkivEntityUpdated":
63
+ onEntityUpdated?.({
64
+ entityKey: toHex(event.args.entityKey, { size: 32 }),
65
+ owner: event.args.ownerAddress,
66
+ oldExpirationBlock: Number(event.args.oldExpirationBlock),
67
+ newExpirationBlock: Number(event.args.newExpirationBlock),
68
+ cost: event.args.cost,
69
+ })
70
+ break
71
+ case "ArkivEntityDeleted":
72
+ onEntityDeleted?.({
73
+ entityKey: toHex(event.args.entityKey, { size: 32 }),
74
+ owner: event.args.ownerAddress,
75
+ })
76
+ break
77
+ case "ArkivEntityBTLExtended":
78
+ onEntityExpiresInExtended?.({
79
+ entityKey: toHex(event.args.entityKey, { size: 32 }),
80
+ owner: event.args.ownerAddress,
81
+ oldExpirationBlock: Number(event.args.oldExpirationBlock),
82
+ newExpirationBlock: Number(event.args.newExpirationBlock),
83
+ cost: event.args.cost,
84
+ })
85
+ break
86
+ case "ArkivEntityExpired":
87
+ onEntityExpired?.({
88
+ entityKey: toHex(event.args.entityKey, { size: 32 }),
89
+ owner: event.args.ownerAddress,
90
+ })
91
+ break
92
+ default:
93
+ console.warn("unknown event from subscribeEntityEvents", event)
94
+ break
95
+ }
96
+ }
97
+ },
98
+ onError: (error) => {
99
+ console.error("error from subscribeEntityEvents", error)
100
+ onError?.(error)
101
+ },
102
+ })
103
103
 
104
- return unsubscribe
104
+ return unsubscribe
105
105
  }
@@ -0,0 +1,40 @@
1
+ import type { Hex } from "viem"
2
+ import type { ArkivClient } from "../../clients/baseClient"
3
+ import type { TxParams } from "../../types"
4
+ import { opsToTxData, sendArkivTransaction } from "../../utils/arkivTransactions"
5
+
6
+ /**
7
+ * Parameters for the deleteEntity function.
8
+ * - entityKey: The key of the entity to delete.
9
+ */
10
+ export type ChangeOwnershipParameters = {
11
+ entityKey: Hex
12
+ newOwner: Hex
13
+ }
14
+
15
+ /**
16
+ * Return type for the deleteEntity function.
17
+ * - entityKey: The key of the entity.
18
+ * - txHash: The transaction hash.
19
+ */
20
+ export type ChangeOwnershipReturnType = {
21
+ entityKey: Hex
22
+ txHash: string
23
+ }
24
+
25
+ export async function changeOwnership(
26
+ client: ArkivClient,
27
+ data: ChangeOwnershipParameters,
28
+ txParams?: TxParams,
29
+ ): Promise<ChangeOwnershipReturnType> {
30
+ console.debug("changeOwnership", data)
31
+ const txData = opsToTxData({ ownershipChanges: [data] })
32
+ const receipt = await sendArkivTransaction(client, txData, txParams)
33
+
34
+ console.debug("Receipt from changeOwnership", receipt)
35
+
36
+ return {
37
+ txHash: receipt.transactionHash,
38
+ entityKey: data.entityKey,
39
+ }
40
+ }
@@ -1,18 +1,20 @@
1
1
  import type { Hex } from "viem"
2
2
  import type { ArkivClient } from "../../clients/baseClient"
3
- import type { Annotation, TxParams } from "../../types"
3
+ import type { Attribute, MimeType, TxParams } from "../../types"
4
4
  import { opsToTxData, sendArkivTransaction } from "../../utils/arkivTransactions"
5
5
 
6
6
  /**
7
7
  * Parameters for the createEntity function.
8
8
  * - payload: The payload of the entity.
9
- * - annotations: The annotations of the entity.
9
+ * - attributes: The attributes of the entity.
10
+ * - contentType: The content type of the entity.
10
11
  * - expiresIn: The expires in of the entity in seconds.
11
12
  */
12
13
  export type CreateEntityParameters = {
13
- payload: Uint8Array
14
- annotations: Annotation[]
15
- expiresIn: number
14
+ payload: Uint8Array
15
+ attributes: Attribute[]
16
+ contentType: MimeType
17
+ expiresIn: number
16
18
  }
17
19
 
18
20
  /**
@@ -21,23 +23,23 @@ export type CreateEntityParameters = {
21
23
  * - txHash: The transaction hash.
22
24
  */
23
25
  export type CreateEntityReturnType = {
24
- entityKey: Hex
25
- txHash: string
26
+ entityKey: Hex
27
+ txHash: string
26
28
  }
27
29
 
28
30
  export async function createEntity(
29
- client: ArkivClient,
30
- data: CreateEntityParameters,
31
- txParams?: TxParams,
31
+ client: ArkivClient,
32
+ data: CreateEntityParameters,
33
+ txParams?: TxParams,
32
34
  ): Promise<CreateEntityReturnType> {
33
- console.debug("createEntity", data)
34
- const txData = opsToTxData({ creates: [data] })
35
- const receipt = await sendArkivTransaction(client, txData, txParams)
35
+ console.debug("createEntity", data)
36
+ const txData = opsToTxData({ creates: [data] })
37
+ const receipt = await sendArkivTransaction(client, txData, txParams)
36
38
 
37
- console.debug("Receipt from createEntity", receipt)
39
+ console.debug("Receipt from createEntity", receipt)
38
40
 
39
- return {
40
- txHash: receipt.transactionHash,
41
- entityKey: receipt.logs[0].topics[1] as Hex,
42
- }
41
+ return {
42
+ txHash: receipt.transactionHash,
43
+ entityKey: receipt.logs[0].topics[1] as Hex,
44
+ }
43
45
  }