@arkiv-network/sdk 0.0.36-dev.5 → 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 +6 -5
  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 +7 -20
  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 +6 -5
  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 +7 -20
  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 +7 -20
  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
@@ -8,7 +8,7 @@ import { opsToTxData, sendArkivTransaction } from "../../utils/arkivTransactions
8
8
  * - entityKey: The key of the entity to delete.
9
9
  */
10
10
  export type DeleteEntityParameters = {
11
- entityKey: Hex
11
+ entityKey: Hex
12
12
  }
13
13
 
14
14
  /**
@@ -17,23 +17,23 @@ export type DeleteEntityParameters = {
17
17
  * - txHash: The transaction hash.
18
18
  */
19
19
  export type DeleteEntityReturnType = {
20
- entityKey: Hex
21
- txHash: string
20
+ entityKey: Hex
21
+ txHash: string
22
22
  }
23
23
 
24
24
  export async function deleteEntity(
25
- client: ArkivClient,
26
- data: DeleteEntityParameters,
27
- txParams?: TxParams,
25
+ client: ArkivClient,
26
+ data: DeleteEntityParameters,
27
+ txParams?: TxParams,
28
28
  ): Promise<DeleteEntityReturnType> {
29
- console.debug("deleteEntity", data)
30
- const txData = opsToTxData({ deletes: [data] })
31
- const receipt = await sendArkivTransaction(client, txData, txParams)
29
+ console.debug("deleteEntity", data)
30
+ const txData = opsToTxData({ deletes: [data] })
31
+ const receipt = await sendArkivTransaction(client, txData, txParams)
32
32
 
33
- console.debug("Receipt from deleteEntity", receipt)
33
+ console.debug("Receipt from deleteEntity", receipt)
34
34
 
35
- return {
36
- txHash: receipt.transactionHash,
37
- entityKey: data.entityKey,
38
- }
35
+ return {
36
+ txHash: receipt.transactionHash,
37
+ entityKey: data.entityKey,
38
+ }
39
39
  }
@@ -9,8 +9,8 @@ import { opsToTxData, sendArkivTransaction } from "../../utils/arkivTransactions
9
9
  * - expiresIn: The expires in of the entity in seconds.
10
10
  */
11
11
  export type ExtendEntityParameters = {
12
- entityKey: Hex
13
- expiresIn: number
12
+ entityKey: Hex
13
+ expiresIn: number
14
14
  }
15
15
 
16
16
  /**
@@ -19,23 +19,23 @@ export type ExtendEntityParameters = {
19
19
  * - txHash: The transaction hash.
20
20
  */
21
21
  export type ExtendEntityReturnType = {
22
- entityKey: Hex
23
- txHash: string
22
+ entityKey: Hex
23
+ txHash: string
24
24
  }
25
25
 
26
26
  export async function extendEntity(
27
- client: ArkivClient,
28
- data: ExtendEntityParameters,
29
- txParams?: TxParams,
27
+ client: ArkivClient,
28
+ data: ExtendEntityParameters,
29
+ txParams?: TxParams,
30
30
  ): Promise<ExtendEntityReturnType> {
31
- console.debug("extendEntity", data)
32
- const txData = opsToTxData({ extensions: [data] })
33
- const receipt = await sendArkivTransaction(client, txData, txParams)
31
+ console.debug("extendEntity", data)
32
+ const txData = opsToTxData({ extensions: [data] })
33
+ const receipt = await sendArkivTransaction(client, txData, txParams)
34
34
 
35
- console.debug("Receipt from extendEntity", receipt)
35
+ console.debug("Receipt from extendEntity", receipt)
36
36
 
37
- return {
38
- txHash: receipt.transactionHash,
39
- entityKey: receipt.logs[0].topics[1] as Hex,
40
- }
37
+ return {
38
+ txHash: receipt.transactionHash,
39
+ entityKey: receipt.logs[0].topics[1] as Hex,
40
+ }
41
41
  }
@@ -15,40 +15,40 @@ import type { UpdateEntityParameters } from "./updateEntity"
15
15
  * - extensions: The extensions to perform.
16
16
  */
17
17
  export type MutateEntitiesParameters = {
18
- creates?: CreateEntityParameters[]
19
- updates?: UpdateEntityParameters[]
20
- deletes?: DeleteEntityParameters[]
21
- extensions?: ExtendEntityParameters[]
18
+ creates?: CreateEntityParameters[]
19
+ updates?: UpdateEntityParameters[]
20
+ deletes?: DeleteEntityParameters[]
21
+ extensions?: ExtendEntityParameters[]
22
22
  }
23
23
 
24
24
  function parseReceipt(receipt: TransactionReceipt, params: MutateEntitiesParameters) {
25
- const createdEntities: Hex[] = []
26
- const updatedEntities: Hex[] = []
27
- const deletedEntities: Hex[] = []
28
- const extendedEntities: Hex[] = []
29
- const totalCreates = params.creates?.length ?? 0
30
- const totalUpdates = params.updates?.length ?? 0
31
- const totalDeletes = params.deletes?.length ?? 0
25
+ const createdEntities: Hex[] = []
26
+ const updatedEntities: Hex[] = []
27
+ const deletedEntities: Hex[] = []
28
+ const extendedEntities: Hex[] = []
29
+ const totalCreates = params.creates?.length ?? 0
30
+ const totalUpdates = params.updates?.length ?? 0
31
+ const totalDeletes = params.deletes?.length ?? 0
32
32
 
33
- // iterate over all logs and parse the event
34
- // each odd log is the interested ones, logs goes in order like: creates, deleted, updates, extends
35
- for (let i = 0; i < receipt.logs.length; i++) {
36
- const log = receipt.logs[i]
37
- if (i % 2 === 1) continue
33
+ // iterate over all logs and parse the event
34
+ // each odd log is the interested ones, logs goes in order like: creates, deleted, updates, extends
35
+ for (let i = 0; i < receipt.logs.length; i++) {
36
+ const log = receipt.logs[i]
37
+ if (i % 2 === 1) continue
38
38
 
39
- const index = i / 2
40
- if (index < totalCreates) {
41
- createdEntities.push(log.topics[1] as Hex)
42
- } else if (index < totalCreates + totalDeletes) {
43
- deletedEntities.push(log.topics[1] as Hex)
44
- } else if (index < totalCreates + totalUpdates + totalDeletes) {
45
- updatedEntities.push(log.topics[1] as Hex)
46
- } else {
47
- extendedEntities.push(log.topics[1] as Hex)
48
- }
49
- }
39
+ const index = i / 2
40
+ if (index < totalCreates) {
41
+ createdEntities.push(log.topics[1] as Hex)
42
+ } else if (index < totalCreates + totalDeletes) {
43
+ deletedEntities.push(log.topics[1] as Hex)
44
+ } else if (index < totalCreates + totalUpdates + totalDeletes) {
45
+ updatedEntities.push(log.topics[1] as Hex)
46
+ } else {
47
+ extendedEntities.push(log.topics[1] as Hex)
48
+ }
49
+ }
50
50
 
51
- return { createdEntities, updatedEntities, deletedEntities, extendedEntities }
51
+ return { createdEntities, updatedEntities, deletedEntities, extendedEntities }
52
52
  }
53
53
 
54
54
  /**
@@ -60,41 +60,41 @@ function parseReceipt(receipt: TransactionReceipt, params: MutateEntitiesParamet
60
60
  * - extendedEntities: The keys of the extended entities.
61
61
  */
62
62
  export type MutateEntitiesReturnType = {
63
- txHash: string
64
- createdEntities: Hex[]
65
- updatedEntities: Hex[]
66
- deletedEntities: Hex[]
67
- extendedEntities: Hex[]
63
+ txHash: string
64
+ createdEntities: Hex[]
65
+ updatedEntities: Hex[]
66
+ deletedEntities: Hex[]
67
+ extendedEntities: Hex[]
68
68
  }
69
69
  export async function mutateEntities(
70
- client: ArkivClient,
71
- data: MutateEntitiesParameters,
72
- txParams?: TxParams,
70
+ client: ArkivClient,
71
+ data: MutateEntitiesParameters,
72
+ txParams?: TxParams,
73
73
  ): Promise<MutateEntitiesReturnType> {
74
- if (!data.creates && !data.updates && !data.deletes && !data.extensions) {
75
- throw new Error("No operations to perform")
76
- }
74
+ if (!data.creates && !data.updates && !data.deletes && !data.extensions) {
75
+ throw new Error("No operations to perform")
76
+ }
77
77
 
78
- const txData = opsToTxData({
79
- creates: data.creates ?? [],
80
- updates: data.updates ?? [],
81
- deletes: data.deletes ?? [],
82
- extensions: data.extensions ?? [],
83
- })
78
+ const txData = opsToTxData({
79
+ creates: data.creates ?? [],
80
+ updates: data.updates ?? [],
81
+ deletes: data.deletes ?? [],
82
+ extensions: data.extensions ?? [],
83
+ })
84
84
 
85
- const receipt = await sendArkivTransaction(client, txData, txParams)
85
+ const receipt = await sendArkivTransaction(client, txData, txParams)
86
86
 
87
- console.debug("Receipt from mutateEntities", receipt)
87
+ console.debug("Receipt from mutateEntities", receipt)
88
88
 
89
- const { createdEntities, updatedEntities, deletedEntities, extendedEntities } = parseReceipt(
90
- receipt,
91
- data,
92
- )
93
- return {
94
- txHash: receipt.transactionHash,
95
- createdEntities,
96
- updatedEntities,
97
- deletedEntities,
98
- extendedEntities,
99
- }
89
+ const { createdEntities, updatedEntities, deletedEntities, extendedEntities } = parseReceipt(
90
+ receipt,
91
+ data,
92
+ )
93
+ return {
94
+ txHash: receipt.transactionHash,
95
+ createdEntities,
96
+ updatedEntities,
97
+ deletedEntities,
98
+ extendedEntities,
99
+ }
100
100
  }
@@ -1,20 +1,22 @@
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 updateEntity function.
8
8
  * - entityKey: The key of the entity to update.
9
9
  * - payload: The payload of the entity.
10
- * - annotations: The annotations of the entity.
10
+ * - attributes: The attributes of the entity.
11
+ * - contentType: The content type of the entity.
11
12
  * - expiresIn: The expires in of the entity in seconds.
12
13
  */
13
14
  export type UpdateEntityParameters = {
14
- entityKey: Hex
15
- payload: Uint8Array | string
16
- annotations: Annotation[]
17
- expiresIn: number
15
+ entityKey: Hex
16
+ payload: Uint8Array
17
+ attributes: Attribute[]
18
+ contentType: MimeType
19
+ expiresIn: number
18
20
  }
19
21
 
20
22
  /**
@@ -23,23 +25,23 @@ export type UpdateEntityParameters = {
23
25
  * - txHash: The transaction hash.
24
26
  */
25
27
  export type UpdateEntityReturnType = {
26
- entityKey: Hex
27
- txHash: string
28
+ entityKey: Hex
29
+ txHash: string
28
30
  }
29
31
 
30
32
  export async function updateEntity(
31
- client: ArkivClient,
32
- data: UpdateEntityParameters,
33
- txParams?: TxParams,
33
+ client: ArkivClient,
34
+ data: UpdateEntityParameters,
35
+ txParams?: TxParams,
34
36
  ): Promise<UpdateEntityReturnType> {
35
- console.debug("updateEntity", data)
36
- const txData = opsToTxData({ updates: [data] })
37
- const receipt = await sendArkivTransaction(client, txData, txParams)
37
+ console.debug("updateEntity", data)
38
+ const txData = opsToTxData({ updates: [data] })
39
+ const receipt = await sendArkivTransaction(client, txData, txParams)
38
40
 
39
- console.debug("Receipt from updateEntity", receipt)
41
+ console.debug("Receipt from updateEntity", receipt)
40
42
 
41
- return {
42
- txHash: receipt.transactionHash,
43
- entityKey: receipt.logs[0].topics[1] as Hex,
44
- }
43
+ return {
44
+ txHash: receipt.transactionHash,
45
+ entityKey: receipt.logs[0].topics[1] as Hex,
46
+ }
45
47
  }
@@ -1,26 +1,26 @@
1
1
  import { defineChain } from "viem"
2
2
 
3
3
  export const kaolin = defineChain({
4
- id: 60138453025,
5
- name: "Kaolin",
6
- network: "kaolin",
7
- nativeCurrency: {
8
- name: "Ethereum",
9
- symbol: "ETH",
10
- decimals: 18,
11
- },
12
- rpcUrls: {
13
- default: {
14
- http: ["https://kaolin.hoodi.arkiv.network/rpc"],
15
- webSocket: ["wss://kaolin.hoodi.arkiv.network/rpc/ws"],
16
- },
17
- },
18
- blockExplorers: {
19
- default: {
20
- name: "Kaolin Arkiv Explorer",
21
- url: "https://explorer.kaolin.hoodi.arkiv.network",
22
- apiUrl: "https://explorer.kaolin.hoodi.arkiv.network/api",
23
- },
24
- },
25
- testnet: true,
4
+ id: 60138453025,
5
+ name: "Kaolin",
6
+ network: "kaolin",
7
+ nativeCurrency: {
8
+ name: "Ethereum",
9
+ symbol: "ETH",
10
+ decimals: 18,
11
+ },
12
+ rpcUrls: {
13
+ default: {
14
+ http: ["https://kaolin.hoodi.arkiv.network/rpc"],
15
+ webSocket: ["wss://kaolin.hoodi.arkiv.network/rpc/ws"],
16
+ },
17
+ },
18
+ blockExplorers: {
19
+ default: {
20
+ name: "Kaolin Arkiv Explorer",
21
+ url: "https://explorer.kaolin.hoodi.arkiv.network",
22
+ apiUrl: "https://explorer.kaolin.hoodi.arkiv.network/api",
23
+ },
24
+ },
25
+ testnet: true,
26
26
  })
@@ -1,14 +1,14 @@
1
1
  import { defineChain } from "viem"
2
2
 
3
3
  export const localhost = defineChain({
4
- id: 1337,
5
- name: "Localhost",
6
- nativeCurrency: {
7
- decimals: 18,
8
- name: "Ether",
9
- symbol: "ETH",
10
- },
11
- rpcUrls: {
12
- default: { http: ["http://127.0.0.1:8545"] },
13
- },
4
+ id: 1337,
5
+ name: "Localhost",
6
+ nativeCurrency: {
7
+ decimals: 18,
8
+ name: "Ether",
9
+ symbol: "ETH",
10
+ },
11
+ rpcUrls: {
12
+ default: { http: ["http://127.0.0.1:8545"] },
13
+ },
14
14
  })
@@ -1,26 +1,26 @@
1
1
  import { defineChain } from "viem"
2
2
 
3
3
  export const marketplace = defineChain({
4
- id: 60138453027,
5
- name: "Marketplace",
6
- network: "marketplace",
7
- nativeCurrency: {
8
- name: "Ethereum",
9
- symbol: "ETH",
10
- decimals: 18,
11
- },
12
- rpcUrls: {
13
- default: {
14
- http: ["https://marketplace.hoodi.arkiv.network/rpc"],
15
- webSocket: ["wss://marketplace.hoodi.arkiv.network/rpc/ws"],
16
- },
17
- },
18
- blockExplorers: {
19
- default: {
20
- name: "Marketplace Arkiv Explorer",
21
- url: "https://explorer.marketplace.hoodi.arkiv.network",
22
- apiUrl: "https://explorer.marketplace.hoodi.arkiv.network/api",
23
- },
24
- },
25
- testnet: true,
4
+ id: 60138453027,
5
+ name: "Marketplace",
6
+ network: "marketplace",
7
+ nativeCurrency: {
8
+ name: "Ethereum",
9
+ symbol: "ETH",
10
+ decimals: 18,
11
+ },
12
+ rpcUrls: {
13
+ default: {
14
+ http: ["https://marketplace.hoodi.arkiv.network/rpc"],
15
+ webSocket: ["wss://marketplace.hoodi.arkiv.network/rpc/ws"],
16
+ },
17
+ },
18
+ blockExplorers: {
19
+ default: {
20
+ name: "Marketplace Arkiv Explorer",
21
+ url: "https://explorer.marketplace.hoodi.arkiv.network",
22
+ apiUrl: "https://explorer.marketplace.hoodi.arkiv.network/api",
23
+ },
24
+ },
25
+ testnet: true,
26
26
  })
@@ -2,8 +2,8 @@ import type { Account, Chain, Client, RpcSchema, Transport } from "viem"
2
2
  import type { ArkivRpcSchema } from "../types/rpcSchema"
3
3
 
4
4
  export type ArkivClient<
5
- transport extends Transport = Transport,
6
- chain extends Chain | undefined = Chain | undefined,
7
- accountOrAddress extends Account | undefined = Account | undefined,
8
- rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
5
+ transport extends Transport = Transport,
6
+ chain extends Chain | undefined = Chain | undefined,
7
+ accountOrAddress extends Account | undefined = Account | undefined,
8
+ rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
9
9
  > = Client<transport, chain, accountOrAddress, rpcSchema>
@@ -1,25 +1,25 @@
1
1
  import type {
2
- Account,
3
- Address,
4
- Chain,
5
- Client,
6
- ParseAccount,
7
- Prettify,
8
- PublicClientConfig,
9
- RpcSchema,
10
- Transport,
2
+ Account,
3
+ Address,
4
+ Chain,
5
+ Client,
6
+ ParseAccount,
7
+ Prettify,
8
+ PublicClientConfig,
9
+ RpcSchema,
10
+ Transport,
11
11
  } from "viem"
12
12
  import { createClient, publicActions } from "viem"
13
13
  import type { ArkivRpcSchema } from "../types/rpcSchema"
14
14
  import { type PublicArkivActions, publicArkivActions } from "./decorators/arkivPublic"
15
15
 
16
16
  export type PublicArkivClient<
17
- transport extends Transport = Transport,
18
- chain extends Chain | undefined = Chain | undefined,
19
- accountOrAddress extends Account | undefined = undefined,
20
- rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
17
+ transport extends Transport = Transport,
18
+ chain extends Chain | undefined = Chain | undefined,
19
+ accountOrAddress extends Account | undefined = undefined,
20
+ rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
21
21
  > = Prettify<
22
- Client<transport, chain, accountOrAddress, rpcSchema, PublicArkivActions<transport, chain>>
22
+ Client<transport, chain, accountOrAddress, rpcSchema, PublicArkivActions<transport, chain>>
23
23
  >
24
24
 
25
25
  /**
@@ -42,24 +42,24 @@ export type PublicArkivClient<
42
42
  * })
43
43
  */
44
44
  export function createPublicClient<
45
- transport extends Transport,
46
- chain extends Chain | undefined = undefined,
47
- accountOrAddress extends Account | Address | undefined = undefined,
48
- rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
45
+ transport extends Transport,
46
+ chain extends Chain | undefined = undefined,
47
+ accountOrAddress extends Account | Address | undefined = undefined,
48
+ rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
49
49
  >(
50
- parameters: PublicClientConfig<transport, chain, accountOrAddress, rpcSchema>,
50
+ parameters: PublicClientConfig<transport, chain, accountOrAddress, rpcSchema>,
51
51
  ): PublicArkivClient<transport, chain, ParseAccount<accountOrAddress>, rpcSchema> {
52
- const { key = "public", name = "Public Client" } = parameters
53
- const client = createClient({
54
- ...parameters,
55
- key,
56
- name,
57
- })
52
+ const { key = "public", name = "Public Client" } = parameters
53
+ const client = createClient({
54
+ ...parameters,
55
+ key,
56
+ name,
57
+ })
58
58
 
59
- return client.extend(publicArkivActions).extend(publicActions) as unknown as PublicArkivClient<
60
- transport,
61
- chain,
62
- ParseAccount<accountOrAddress>,
63
- rpcSchema
64
- >
59
+ return client.extend(publicArkivActions).extend(publicActions) as unknown as PublicArkivClient<
60
+ transport,
61
+ chain,
62
+ ParseAccount<accountOrAddress>,
63
+ rpcSchema
64
+ >
65
65
  }
@@ -1,13 +1,13 @@
1
1
  import type {
2
- Account,
3
- Address,
4
- Chain,
5
- Client,
6
- ParseAccount,
7
- Prettify,
8
- RpcSchema,
9
- Transport,
10
- WalletClientConfig,
2
+ Account,
3
+ Address,
4
+ Chain,
5
+ Client,
6
+ ParseAccount,
7
+ Prettify,
8
+ RpcSchema,
9
+ Transport,
10
+ WalletClientConfig,
11
11
  } from "viem"
12
12
  import { createClient, publicActions, walletActions } from "viem"
13
13
  import type { ArkivRpcSchema } from "../types/rpcSchema"
@@ -15,12 +15,12 @@ import { publicArkivActions } from "./decorators/arkivPublic"
15
15
  import { type WalletArkivActions, walletArkivActions } from "./decorators/arkivWallet"
16
16
 
17
17
  export type WalletArkivClient<
18
- transport extends Transport = Transport,
19
- chain extends Chain | undefined = Chain | undefined,
20
- account extends Account | undefined = Account | undefined,
21
- rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
18
+ transport extends Transport = Transport,
19
+ chain extends Chain | undefined = Chain | undefined,
20
+ account extends Account | undefined = Account | undefined,
21
+ rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
22
22
  > = Prettify<
23
- Client<transport, chain, account, rpcSchema, WalletArkivActions<transport, chain, account>>
23
+ Client<transport, chain, account, rpcSchema, WalletArkivActions<transport, chain, account>>
24
24
  >
25
25
 
26
26
  /**
@@ -43,28 +43,28 @@ export type WalletArkivClient<
43
43
  * })
44
44
  */
45
45
  export function createWalletClient<
46
- transport extends Transport,
47
- chain extends Chain | undefined = undefined,
48
- accountOrAddress extends Account | Address | undefined = undefined,
49
- rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
46
+ transport extends Transport,
47
+ chain extends Chain | undefined = undefined,
48
+ accountOrAddress extends Account | Address | undefined = undefined,
49
+ rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
50
50
  >(
51
- parameters: WalletClientConfig<transport, chain, accountOrAddress, rpcSchema>,
51
+ parameters: WalletClientConfig<transport, chain, accountOrAddress, rpcSchema>,
52
52
  ): WalletArkivClient<transport, chain, ParseAccount<accountOrAddress>, rpcSchema> {
53
- const { key = "wallet", name = "Wallet Client" } = parameters
54
- const client = createClient({
55
- ...parameters,
56
- key,
57
- name,
58
- })
53
+ const { key = "wallet", name = "Wallet Client" } = parameters
54
+ const client = createClient({
55
+ ...parameters,
56
+ key,
57
+ name,
58
+ })
59
59
 
60
- return client
61
- .extend(walletActions)
62
- .extend(publicActions)
63
- .extend(walletArkivActions)
64
- .extend(publicArkivActions) as unknown as WalletArkivClient<
65
- transport,
66
- chain,
67
- ParseAccount<accountOrAddress>,
68
- rpcSchema
69
- >
60
+ return client
61
+ .extend(walletActions)
62
+ .extend(publicActions)
63
+ .extend(walletArkivActions)
64
+ .extend(publicArkivActions) as unknown as WalletArkivClient<
65
+ transport,
66
+ chain,
67
+ ParseAccount<accountOrAddress>,
68
+ rpcSchema
69
+ >
70
70
  }