@hashgraphonline/standards-sdk 0.1.144 → 0.1.145

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 (423) hide show
  1. package/dist/cjs/hcs-10/base-client.d.ts.map +1 -1
  2. package/dist/cjs/hcs-10/sdk.d.ts +8 -0
  3. package/dist/cjs/hcs-10/sdk.d.ts.map +1 -1
  4. package/dist/cjs/hcs-11/client.d.ts +2 -2
  5. package/dist/cjs/hcs-11/client.d.ts.map +1 -1
  6. package/dist/cjs/hcs-11/person-builder.d.ts +1 -0
  7. package/dist/cjs/hcs-11/person-builder.d.ts.map +1 -1
  8. package/dist/cjs/hcs-11/types.d.ts +1 -0
  9. package/dist/cjs/hcs-11/types.d.ts.map +1 -1
  10. package/dist/cjs/hcs-12/rendering/resource-manager.d.ts.map +1 -1
  11. package/dist/cjs/hcs-14/issuers/hiero.d.ts.map +1 -1
  12. package/dist/cjs/hcs-15/browser.d.ts +2 -0
  13. package/dist/cjs/hcs-15/browser.d.ts.map +1 -1
  14. package/dist/cjs/hcs-15/sdk.d.ts +7 -1
  15. package/dist/cjs/hcs-15/sdk.d.ts.map +1 -1
  16. package/dist/cjs/hcs-15/tx.d.ts +4 -0
  17. package/dist/cjs/hcs-15/tx.d.ts.map +1 -1
  18. package/dist/cjs/hcs-15/types.d.ts +16 -1
  19. package/dist/cjs/hcs-15/types.d.ts.map +1 -1
  20. package/dist/cjs/hcs-16/browser.d.ts +11 -2
  21. package/dist/cjs/hcs-16/browser.d.ts.map +1 -1
  22. package/dist/cjs/hcs-16/sdk.d.ts +62 -1
  23. package/dist/cjs/hcs-16/sdk.d.ts.map +1 -1
  24. package/dist/cjs/hcs-16/tx.d.ts +21 -3
  25. package/dist/cjs/hcs-16/tx.d.ts.map +1 -1
  26. package/dist/cjs/hcs-17/base-client.d.ts +1 -0
  27. package/dist/cjs/hcs-17/base-client.d.ts.map +1 -1
  28. package/dist/cjs/hcs-17/sdk.d.ts.map +1 -1
  29. package/dist/cjs/hcs-17/tx.d.ts +2 -0
  30. package/dist/cjs/hcs-17/tx.d.ts.map +1 -1
  31. package/dist/cjs/hcs-17/types.d.ts +4 -0
  32. package/dist/cjs/hcs-17/types.d.ts.map +1 -1
  33. package/dist/cjs/index.d.ts.map +1 -1
  34. package/dist/cjs/services/registry-broker/client/base-client.d.ts +14 -1
  35. package/dist/cjs/services/registry-broker/client/base-client.d.ts.map +1 -1
  36. package/dist/cjs/services/registry-broker/client/feedback.d.ts +2 -0
  37. package/dist/cjs/services/registry-broker/client/feedback.d.ts.map +1 -0
  38. package/dist/cjs/services/registry-broker/private-key-signer.d.ts +1 -0
  39. package/dist/cjs/services/registry-broker/private-key-signer.d.ts.map +1 -1
  40. package/dist/cjs/services/registry-broker/schemas.d.ts +998 -577
  41. package/dist/cjs/services/registry-broker/schemas.d.ts.map +1 -1
  42. package/dist/cjs/services/registry-broker/types.d.ts +20 -1
  43. package/dist/cjs/services/registry-broker/types.d.ts.map +1 -1
  44. package/dist/cjs/standards-sdk.cjs +2 -2
  45. package/dist/cjs/standards-sdk.cjs.map +1 -1
  46. package/dist/cjs/utils/crypto-abstraction.d.ts.map +1 -1
  47. package/dist/cjs/utils/crypto-env.d.ts.map +1 -1
  48. package/dist/cjs/utils/dynamic-import.d.ts +5 -1
  49. package/dist/cjs/utils/dynamic-import.d.ts.map +1 -1
  50. package/dist/cjs/utils/hash-adapter.d.ts.map +1 -1
  51. package/dist/es/hcs-10/base-client.d.ts.map +1 -1
  52. package/dist/es/hcs-10/sdk.d.ts +8 -0
  53. package/dist/es/hcs-10/sdk.d.ts.map +1 -1
  54. package/dist/es/hcs-11/client.d.ts +2 -2
  55. package/dist/es/hcs-11/client.d.ts.map +1 -1
  56. package/dist/es/hcs-11/person-builder.d.ts +1 -0
  57. package/dist/es/hcs-11/person-builder.d.ts.map +1 -1
  58. package/dist/es/hcs-11/types.d.ts +1 -0
  59. package/dist/es/hcs-11/types.d.ts.map +1 -1
  60. package/dist/es/hcs-12/rendering/resource-manager.d.ts.map +1 -1
  61. package/dist/es/hcs-14/issuers/hiero.d.ts.map +1 -1
  62. package/dist/es/hcs-15/browser.d.ts +2 -0
  63. package/dist/es/hcs-15/browser.d.ts.map +1 -1
  64. package/dist/es/hcs-15/sdk.d.ts +7 -1
  65. package/dist/es/hcs-15/sdk.d.ts.map +1 -1
  66. package/dist/es/hcs-15/tx.d.ts +4 -0
  67. package/dist/es/hcs-15/tx.d.ts.map +1 -1
  68. package/dist/es/hcs-15/types.d.ts +16 -1
  69. package/dist/es/hcs-15/types.d.ts.map +1 -1
  70. package/dist/es/hcs-16/browser.d.ts +11 -2
  71. package/dist/es/hcs-16/browser.d.ts.map +1 -1
  72. package/dist/es/hcs-16/sdk.d.ts +62 -1
  73. package/dist/es/hcs-16/sdk.d.ts.map +1 -1
  74. package/dist/es/hcs-16/tx.d.ts +21 -3
  75. package/dist/es/hcs-16/tx.d.ts.map +1 -1
  76. package/dist/es/hcs-17/base-client.d.ts +1 -0
  77. package/dist/es/hcs-17/base-client.d.ts.map +1 -1
  78. package/dist/es/hcs-17/sdk.d.ts.map +1 -1
  79. package/dist/es/hcs-17/tx.d.ts +2 -0
  80. package/dist/es/hcs-17/tx.d.ts.map +1 -1
  81. package/dist/es/hcs-17/types.d.ts +4 -0
  82. package/dist/es/hcs-17/types.d.ts.map +1 -1
  83. package/dist/es/index.d.ts.map +1 -1
  84. package/dist/es/services/registry-broker/client/base-client.d.ts +14 -1
  85. package/dist/es/services/registry-broker/client/base-client.d.ts.map +1 -1
  86. package/dist/es/services/registry-broker/client/feedback.d.ts +2 -0
  87. package/dist/es/services/registry-broker/client/feedback.d.ts.map +1 -0
  88. package/dist/es/services/registry-broker/private-key-signer.d.ts +1 -0
  89. package/dist/es/services/registry-broker/private-key-signer.d.ts.map +1 -1
  90. package/dist/es/services/registry-broker/schemas.d.ts +998 -577
  91. package/dist/es/services/registry-broker/schemas.d.ts.map +1 -1
  92. package/dist/es/services/registry-broker/types.d.ts +20 -1
  93. package/dist/es/services/registry-broker/types.d.ts.map +1 -1
  94. package/dist/es/standards-sdk.es.js +141 -135
  95. package/dist/es/standards-sdk.es.js.map +1 -1
  96. package/dist/es/standards-sdk.es10.js +70 -90
  97. package/dist/es/standards-sdk.es10.js.map +1 -1
  98. package/dist/es/standards-sdk.es100.js +229 -26
  99. package/dist/es/standards-sdk.es100.js.map +1 -1
  100. package/dist/es/standards-sdk.es101.js +109 -228
  101. package/dist/es/standards-sdk.es101.js.map +1 -1
  102. package/dist/es/standards-sdk.es102.js +15 -94
  103. package/dist/es/standards-sdk.es102.js.map +1 -1
  104. package/dist/es/standards-sdk.es103.js +80 -30
  105. package/dist/es/standards-sdk.es103.js.map +1 -1
  106. package/dist/es/standards-sdk.es104.js +27 -80
  107. package/dist/es/standards-sdk.es104.js.map +1 -1
  108. package/dist/es/standards-sdk.es105.js +136 -25
  109. package/dist/es/standards-sdk.es105.js.map +1 -1
  110. package/dist/es/standards-sdk.es106.js +27 -140
  111. package/dist/es/standards-sdk.es106.js.map +1 -1
  112. package/dist/es/standards-sdk.es107.js +20 -27
  113. package/dist/es/standards-sdk.es107.js.map +1 -1
  114. package/dist/es/standards-sdk.es108.js +156 -18
  115. package/dist/es/standards-sdk.es108.js.map +1 -1
  116. package/dist/es/standards-sdk.es109.js +198 -148
  117. package/dist/es/standards-sdk.es109.js.map +1 -1
  118. package/dist/es/standards-sdk.es11.js +121 -45
  119. package/dist/es/standards-sdk.es11.js.map +1 -1
  120. package/dist/es/standards-sdk.es110.js +747 -166
  121. package/dist/es/standards-sdk.es110.js.map +1 -1
  122. package/dist/es/standards-sdk.es111.js +9 -786
  123. package/dist/es/standards-sdk.es111.js.map +1 -1
  124. package/dist/es/standards-sdk.es112.js +567 -13
  125. package/dist/es/standards-sdk.es112.js.map +1 -1
  126. package/dist/es/standards-sdk.es113.js +576 -541
  127. package/dist/es/standards-sdk.es113.js.map +1 -1
  128. package/dist/es/standards-sdk.es114.js +12 -601
  129. package/dist/es/standards-sdk.es114.js.map +1 -1
  130. package/dist/es/standards-sdk.es115.js +2 -13
  131. package/dist/es/standards-sdk.es115.js.map +1 -1
  132. package/dist/es/standards-sdk.es116.js +87 -2
  133. package/dist/es/standards-sdk.es116.js.map +1 -1
  134. package/dist/es/standards-sdk.es117.js +37 -80
  135. package/dist/es/standards-sdk.es117.js.map +1 -1
  136. package/dist/es/standards-sdk.es118.js +2 -39
  137. package/dist/es/standards-sdk.es118.js.map +1 -1
  138. package/dist/es/standards-sdk.es119.js +231 -2
  139. package/dist/es/standards-sdk.es119.js.map +1 -1
  140. package/dist/es/standards-sdk.es12.js +60 -159
  141. package/dist/es/standards-sdk.es12.js.map +1 -1
  142. package/dist/es/standards-sdk.es120.js +1110 -193
  143. package/dist/es/standards-sdk.es120.js.map +1 -1
  144. package/dist/es/standards-sdk.es121.js +225 -1059
  145. package/dist/es/standards-sdk.es121.js.map +1 -1
  146. package/dist/es/standards-sdk.es122.js +419 -303
  147. package/dist/es/standards-sdk.es122.js.map +1 -1
  148. package/dist/es/standards-sdk.es123.js +351 -418
  149. package/dist/es/standards-sdk.es123.js.map +1 -1
  150. package/dist/es/standards-sdk.es124.js +872 -347
  151. package/dist/es/standards-sdk.es124.js.map +1 -1
  152. package/dist/es/standards-sdk.es125.js +182 -854
  153. package/dist/es/standards-sdk.es125.js.map +1 -1
  154. package/dist/es/standards-sdk.es126.js +1512 -153
  155. package/dist/es/standards-sdk.es126.js.map +1 -1
  156. package/dist/es/standards-sdk.es127.js +157 -1547
  157. package/dist/es/standards-sdk.es127.js.map +1 -1
  158. package/dist/es/standards-sdk.es128.js +192 -162
  159. package/dist/es/standards-sdk.es128.js.map +1 -1
  160. package/dist/es/standards-sdk.es129.js +61 -164
  161. package/dist/es/standards-sdk.es129.js.map +1 -1
  162. package/dist/es/standards-sdk.es13.js +200 -60
  163. package/dist/es/standards-sdk.es13.js.map +1 -1
  164. package/dist/es/standards-sdk.es130.js +102 -85
  165. package/dist/es/standards-sdk.es130.js.map +1 -1
  166. package/dist/es/standards-sdk.es131.js +222 -96
  167. package/dist/es/standards-sdk.es131.js.map +1 -1
  168. package/dist/es/standards-sdk.es132.js +153 -220
  169. package/dist/es/standards-sdk.es132.js.map +1 -1
  170. package/dist/es/standards-sdk.es133.js +104 -162
  171. package/dist/es/standards-sdk.es133.js.map +1 -1
  172. package/dist/es/standards-sdk.es134.js +296 -92
  173. package/dist/es/standards-sdk.es134.js.map +1 -1
  174. package/dist/es/standards-sdk.es135.js +432 -294
  175. package/dist/es/standards-sdk.es135.js.map +1 -1
  176. package/dist/es/standards-sdk.es136.js +14 -363
  177. package/dist/es/standards-sdk.es136.js.map +1 -1
  178. package/dist/es/standards-sdk.es137.js +79 -15
  179. package/dist/es/standards-sdk.es137.js.map +1 -1
  180. package/dist/es/standards-sdk.es138.js +79 -59
  181. package/dist/es/standards-sdk.es138.js.map +1 -1
  182. package/dist/es/standards-sdk.es139.js +152 -80
  183. package/dist/es/standards-sdk.es139.js.map +1 -1
  184. package/dist/es/standards-sdk.es14.js +149 -178
  185. package/dist/es/standards-sdk.es14.js.map +1 -1
  186. package/dist/es/standards-sdk.es140.js +7 -159
  187. package/dist/es/standards-sdk.es140.js.map +1 -1
  188. package/dist/es/standards-sdk.es141.js +86 -7
  189. package/dist/es/standards-sdk.es141.js.map +1 -1
  190. package/dist/es/standards-sdk.es142.js +44 -65
  191. package/dist/es/standards-sdk.es142.js.map +1 -1
  192. package/dist/es/standards-sdk.es143.js +30 -65
  193. package/dist/es/standards-sdk.es143.js.map +1 -1
  194. package/dist/es/standards-sdk.es144.js +34 -28
  195. package/dist/es/standards-sdk.es144.js.map +1 -1
  196. package/dist/es/standards-sdk.es145.js +28 -138
  197. package/dist/es/standards-sdk.es145.js.map +1 -1
  198. package/dist/es/standards-sdk.es146.js +133 -37
  199. package/dist/es/standards-sdk.es146.js.map +1 -1
  200. package/dist/es/standards-sdk.es147.js +34 -12281
  201. package/dist/es/standards-sdk.es147.js.map +1 -1
  202. package/dist/es/standards-sdk.es148.js +12284 -12
  203. package/dist/es/standards-sdk.es148.js.map +1 -1
  204. package/dist/es/standards-sdk.es149.js +958 -56
  205. package/dist/es/standards-sdk.es149.js.map +1 -1
  206. package/dist/es/standards-sdk.es15.js +152 -151
  207. package/dist/es/standards-sdk.es15.js.map +1 -1
  208. package/dist/es/standards-sdk.es150.js +48 -74
  209. package/dist/es/standards-sdk.es150.js.map +1 -1
  210. package/dist/es/standards-sdk.es151.js +72 -160
  211. package/dist/es/standards-sdk.es151.js.map +1 -1
  212. package/dist/es/standards-sdk.es152.js +13 -318
  213. package/dist/es/standards-sdk.es152.js.map +1 -1
  214. package/dist/es/standards-sdk.es153.js +120 -294
  215. package/dist/es/standards-sdk.es153.js.map +1 -1
  216. package/dist/es/standards-sdk.es154.js +191 -322
  217. package/dist/es/standards-sdk.es154.js.map +1 -1
  218. package/dist/es/standards-sdk.es155.js +294 -279
  219. package/dist/es/standards-sdk.es155.js.map +1 -1
  220. package/dist/es/standards-sdk.es156.js +440 -63
  221. package/dist/es/standards-sdk.es156.js.map +1 -1
  222. package/dist/es/standards-sdk.es157.js +331 -871
  223. package/dist/es/standards-sdk.es157.js.map +1 -1
  224. package/dist/es/standards-sdk.es158.js +68 -231
  225. package/dist/es/standards-sdk.es158.js.map +1 -1
  226. package/dist/es/standards-sdk.es159.js +218 -223
  227. package/dist/es/standards-sdk.es159.js.map +1 -1
  228. package/dist/es/standards-sdk.es16.js +917 -136
  229. package/dist/es/standards-sdk.es16.js.map +1 -1
  230. package/dist/es/standards-sdk.es160.js +247 -0
  231. package/dist/es/standards-sdk.es160.js.map +1 -0
  232. package/dist/es/standards-sdk.es17.js +23 -944
  233. package/dist/es/standards-sdk.es17.js.map +1 -1
  234. package/dist/es/standards-sdk.es18.js +2422 -24
  235. package/dist/es/standards-sdk.es18.js.map +1 -1
  236. package/dist/es/standards-sdk.es19.js +817 -2071
  237. package/dist/es/standards-sdk.es19.js.map +1 -1
  238. package/dist/es/standards-sdk.es2.js +654 -189
  239. package/dist/es/standards-sdk.es2.js.map +1 -1
  240. package/dist/es/standards-sdk.es20.js +205 -1091
  241. package/dist/es/standards-sdk.es20.js.map +1 -1
  242. package/dist/es/standards-sdk.es21.js +858 -221
  243. package/dist/es/standards-sdk.es21.js.map +1 -1
  244. package/dist/es/standards-sdk.es22.js +179 -903
  245. package/dist/es/standards-sdk.es22.js.map +1 -1
  246. package/dist/es/standards-sdk.es23.js +164 -179
  247. package/dist/es/standards-sdk.es23.js.map +1 -1
  248. package/dist/es/standards-sdk.es24.js +62 -118
  249. package/dist/es/standards-sdk.es24.js.map +1 -1
  250. package/dist/es/standards-sdk.es25.js +377 -52
  251. package/dist/es/standards-sdk.es25.js.map +1 -1
  252. package/dist/es/standards-sdk.es26.js +36 -394
  253. package/dist/es/standards-sdk.es26.js.map +1 -1
  254. package/dist/es/standards-sdk.es27.js +901 -50
  255. package/dist/es/standards-sdk.es27.js.map +1 -1
  256. package/dist/es/standards-sdk.es28.js +134 -902
  257. package/dist/es/standards-sdk.es28.js.map +1 -1
  258. package/dist/es/standards-sdk.es29.js +7 -134
  259. package/dist/es/standards-sdk.es29.js.map +1 -1
  260. package/dist/es/standards-sdk.es3.js +63 -680
  261. package/dist/es/standards-sdk.es3.js.map +1 -1
  262. package/dist/es/standards-sdk.es30.js +344 -7
  263. package/dist/es/standards-sdk.es30.js.map +1 -1
  264. package/dist/es/standards-sdk.es31.js +302 -287
  265. package/dist/es/standards-sdk.es31.js.map +1 -1
  266. package/dist/es/standards-sdk.es32.js +94 -322
  267. package/dist/es/standards-sdk.es32.js.map +1 -1
  268. package/dist/es/standards-sdk.es33.js +458 -101
  269. package/dist/es/standards-sdk.es33.js.map +1 -1
  270. package/dist/es/standards-sdk.es34.js +132 -451
  271. package/dist/es/standards-sdk.es34.js.map +1 -1
  272. package/dist/es/standards-sdk.es35.js +216 -130
  273. package/dist/es/standards-sdk.es35.js.map +1 -1
  274. package/dist/es/standards-sdk.es36.js +273 -195
  275. package/dist/es/standards-sdk.es36.js.map +1 -1
  276. package/dist/es/standards-sdk.es37.js +148 -87
  277. package/dist/es/standards-sdk.es37.js.map +1 -1
  278. package/dist/es/standards-sdk.es38.js +183 -320
  279. package/dist/es/standards-sdk.es38.js.map +1 -1
  280. package/dist/es/standards-sdk.es39.js +238 -161
  281. package/dist/es/standards-sdk.es39.js.map +1 -1
  282. package/dist/es/standards-sdk.es4.js +425 -63
  283. package/dist/es/standards-sdk.es4.js.map +1 -1
  284. package/dist/es/standards-sdk.es40.js +136 -254
  285. package/dist/es/standards-sdk.es40.js.map +1 -1
  286. package/dist/es/standards-sdk.es41.js +225 -176
  287. package/dist/es/standards-sdk.es41.js.map +1 -1
  288. package/dist/es/standards-sdk.es42.js +199 -261
  289. package/dist/es/standards-sdk.es42.js.map +1 -1
  290. package/dist/es/standards-sdk.es43.js +237 -199
  291. package/dist/es/standards-sdk.es43.js.map +1 -1
  292. package/dist/es/standards-sdk.es44.js +209 -201
  293. package/dist/es/standards-sdk.es44.js.map +1 -1
  294. package/dist/es/standards-sdk.es45.js +305 -201
  295. package/dist/es/standards-sdk.es45.js.map +1 -1
  296. package/dist/es/standards-sdk.es46.js +371 -261
  297. package/dist/es/standards-sdk.es46.js.map +1 -1
  298. package/dist/es/standards-sdk.es47.js +316 -371
  299. package/dist/es/standards-sdk.es47.js.map +1 -1
  300. package/dist/es/standards-sdk.es48.js +404 -336
  301. package/dist/es/standards-sdk.es48.js.map +1 -1
  302. package/dist/es/standards-sdk.es49.js +83 -449
  303. package/dist/es/standards-sdk.es49.js.map +1 -1
  304. package/dist/es/standards-sdk.es5.js +232 -354
  305. package/dist/es/standards-sdk.es5.js.map +1 -1
  306. package/dist/es/standards-sdk.es50.js +179 -89
  307. package/dist/es/standards-sdk.es50.js.map +1 -1
  308. package/dist/es/standards-sdk.es51.js +231 -165
  309. package/dist/es/standards-sdk.es51.js.map +1 -1
  310. package/dist/es/standards-sdk.es52.js +25 -262
  311. package/dist/es/standards-sdk.es52.js.map +1 -1
  312. package/dist/es/standards-sdk.es53.js +56 -26
  313. package/dist/es/standards-sdk.es53.js.map +1 -1
  314. package/dist/es/standards-sdk.es54.js +12 -57
  315. package/dist/es/standards-sdk.es54.js.map +1 -1
  316. package/dist/es/standards-sdk.es55.js +49 -12
  317. package/dist/es/standards-sdk.es55.js.map +1 -1
  318. package/dist/es/standards-sdk.es56.js +115 -43
  319. package/dist/es/standards-sdk.es56.js.map +1 -1
  320. package/dist/es/standards-sdk.es57.js +42 -115
  321. package/dist/es/standards-sdk.es57.js.map +1 -1
  322. package/dist/es/standards-sdk.es58.js +52 -43
  323. package/dist/es/standards-sdk.es58.js.map +1 -1
  324. package/dist/es/standards-sdk.es59.js +36 -50
  325. package/dist/es/standards-sdk.es59.js.map +1 -1
  326. package/dist/es/standards-sdk.es6.js +125 -246
  327. package/dist/es/standards-sdk.es6.js.map +1 -1
  328. package/dist/es/standards-sdk.es60.js +207 -39
  329. package/dist/es/standards-sdk.es60.js.map +1 -1
  330. package/dist/es/standards-sdk.es61.js +24 -200
  331. package/dist/es/standards-sdk.es61.js.map +1 -1
  332. package/dist/es/standards-sdk.es62.js +87 -25
  333. package/dist/es/standards-sdk.es62.js.map +1 -1
  334. package/dist/es/standards-sdk.es63.js +3 -51
  335. package/dist/es/standards-sdk.es63.js.map +1 -1
  336. package/dist/es/standards-sdk.es64.js +100 -3
  337. package/dist/es/standards-sdk.es64.js.map +1 -1
  338. package/dist/es/standards-sdk.es65.js +61 -62
  339. package/dist/es/standards-sdk.es65.js.map +1 -1
  340. package/dist/es/standards-sdk.es66.js +17 -98
  341. package/dist/es/standards-sdk.es66.js.map +1 -1
  342. package/dist/es/standards-sdk.es67.js +77 -19
  343. package/dist/es/standards-sdk.es67.js.map +1 -1
  344. package/dist/es/standards-sdk.es68.js +458 -77
  345. package/dist/es/standards-sdk.es68.js.map +1 -1
  346. package/dist/es/standards-sdk.es69.js +106 -240
  347. package/dist/es/standards-sdk.es69.js.map +1 -1
  348. package/dist/es/standards-sdk.es7.js +28 -183
  349. package/dist/es/standards-sdk.es7.js.map +1 -1
  350. package/dist/es/standards-sdk.es70.js +170 -286
  351. package/dist/es/standards-sdk.es70.js.map +1 -1
  352. package/dist/es/standards-sdk.es71.js +71 -207
  353. package/dist/es/standards-sdk.es71.js.map +1 -1
  354. package/dist/es/standards-sdk.es72.js +71 -72
  355. package/dist/es/standards-sdk.es72.js.map +1 -1
  356. package/dist/es/standards-sdk.es73.js +143 -71
  357. package/dist/es/standards-sdk.es73.js.map +1 -1
  358. package/dist/es/standards-sdk.es74.js +62 -136
  359. package/dist/es/standards-sdk.es74.js.map +1 -1
  360. package/dist/es/standards-sdk.es75.js +380 -45
  361. package/dist/es/standards-sdk.es75.js.map +1 -1
  362. package/dist/es/standards-sdk.es76.js +222 -130
  363. package/dist/es/standards-sdk.es76.js.map +1 -1
  364. package/dist/es/standards-sdk.es77.js +320 -444
  365. package/dist/es/standards-sdk.es77.js.map +1 -1
  366. package/dist/es/standards-sdk.es78.js +88 -370
  367. package/dist/es/standards-sdk.es78.js.map +1 -1
  368. package/dist/es/standards-sdk.es79.js +125 -89
  369. package/dist/es/standards-sdk.es79.js.map +1 -1
  370. package/dist/es/standards-sdk.es8.js +80 -29
  371. package/dist/es/standards-sdk.es8.js.map +1 -1
  372. package/dist/es/standards-sdk.es80.js +8 -125
  373. package/dist/es/standards-sdk.es80.js.map +1 -1
  374. package/dist/es/standards-sdk.es81.js +45 -6
  375. package/dist/es/standards-sdk.es81.js.map +1 -1
  376. package/dist/es/standards-sdk.es82.js +98 -44
  377. package/dist/es/standards-sdk.es82.js.map +1 -1
  378. package/dist/es/standards-sdk.es83.js +331 -84
  379. package/dist/es/standards-sdk.es83.js.map +1 -1
  380. package/dist/es/standards-sdk.es84.js +93 -160
  381. package/dist/es/standards-sdk.es84.js.map +1 -1
  382. package/dist/es/standards-sdk.es85.js +55 -275
  383. package/dist/es/standards-sdk.es85.js.map +1 -1
  384. package/dist/es/standards-sdk.es86.js +43 -55
  385. package/dist/es/standards-sdk.es86.js.map +1 -1
  386. package/dist/es/standards-sdk.es87.js +145 -22
  387. package/dist/es/standards-sdk.es87.js.map +1 -1
  388. package/dist/es/standards-sdk.es88.js +34 -47
  389. package/dist/es/standards-sdk.es88.js.map +1 -1
  390. package/dist/es/standards-sdk.es89.js +22 -57
  391. package/dist/es/standards-sdk.es89.js.map +1 -1
  392. package/dist/es/standards-sdk.es9.js +104 -80
  393. package/dist/es/standards-sdk.es9.js.map +1 -1
  394. package/dist/es/standards-sdk.es90.js +23 -28
  395. package/dist/es/standards-sdk.es90.js.map +1 -1
  396. package/dist/es/standards-sdk.es91.js +238 -23
  397. package/dist/es/standards-sdk.es91.js.map +1 -1
  398. package/dist/es/standards-sdk.es92.js +265 -152
  399. package/dist/es/standards-sdk.es92.js.map +1 -1
  400. package/dist/es/standards-sdk.es93.js +95 -68
  401. package/dist/es/standards-sdk.es93.js.map +1 -1
  402. package/dist/es/standards-sdk.es94.js +124 -136
  403. package/dist/es/standards-sdk.es94.js.map +1 -1
  404. package/dist/es/standards-sdk.es95.js +42 -138
  405. package/dist/es/standards-sdk.es95.js.map +1 -1
  406. package/dist/es/standards-sdk.es96.js +259 -42
  407. package/dist/es/standards-sdk.es96.js.map +1 -1
  408. package/dist/es/standards-sdk.es97.js +82 -243
  409. package/dist/es/standards-sdk.es97.js.map +1 -1
  410. package/dist/es/standards-sdk.es98.js +48 -47
  411. package/dist/es/standards-sdk.es98.js.map +1 -1
  412. package/dist/es/standards-sdk.es99.js +29 -100
  413. package/dist/es/standards-sdk.es99.js.map +1 -1
  414. package/dist/es/utils/crypto-abstraction.d.ts.map +1 -1
  415. package/dist/es/utils/crypto-env.d.ts.map +1 -1
  416. package/dist/es/utils/dynamic-import.d.ts +5 -1
  417. package/dist/es/utils/dynamic-import.d.ts.map +1 -1
  418. package/dist/es/utils/hash-adapter.d.ts.map +1 -1
  419. package/package.json +8 -7
  420. package/dist/cjs/patches/topic-autorenew-patch.d.ts +0 -2
  421. package/dist/cjs/patches/topic-autorenew-patch.d.ts.map +0 -1
  422. package/dist/es/patches/topic-autorenew-patch.d.ts +0 -2
  423. package/dist/es/patches/topic-autorenew-patch.d.ts.map +0 -1
@@ -1,499 +1,375 @@
1
- import { AccountId, Client, Status, TopicCreateTransaction } from "@hashgraph/sdk";
2
- import { HCS20BaseClient } from "./standards-sdk.es75.js";
3
- import { PointsDeploymentError, PointsValidationError, PointsTransferError, PointsBurnError } from "./standards-sdk.es74.js";
4
- import { sleep } from "./standards-sdk.es116.js";
5
- import { createNodeOperatorContext } from "./standards-sdk.es145.js";
6
- import { HCS2Client } from "./standards-sdk.es69.js";
7
- import { buildHcs20DeployTx, buildHcs20MintTx, buildHcs20TransferTx, buildHcs20BurnTx, buildHcs20RegisterTx } from "./standards-sdk.es79.js";
8
- class HCS20Client extends HCS20BaseClient {
9
- constructor(config) {
10
- super(config);
11
- this.operatorAccountId = typeof config.operatorId === "string" ? AccountId.fromString(config.operatorId) : config.operatorId;
12
- this.operatorId = this.operatorAccountId.toString();
13
- const baseClient = this.network === "mainnet" ? Client.forMainnet() : Client.forTestnet();
14
- this.operatorCtx = createNodeOperatorContext({
15
- network: this.network,
16
- operatorId: this.operatorId,
17
- operatorKey: config.operatorKey,
18
- keyType: config.keyType,
19
- mirrorNode: this.mirrorNode,
20
- logger: this.logger,
21
- client: baseClient
1
+ import { Logger } from "./standards-sdk.es105.js";
2
+ import { HederaMirrorNode } from "./standards-sdk.es126.js";
3
+ import "./standards-sdk.es127.js";
4
+ import "./standards-sdk.es128.js";
5
+ import "./standards-sdk.es129.js";
6
+ import "./standards-sdk.es130.js";
7
+ import "./standards-sdk.es131.js";
8
+ import "./standards-sdk.es132.js";
9
+ import "./standards-sdk.es133.js";
10
+ import "./standards-sdk.es134.js";
11
+ import "buffer";
12
+ import "crypto";
13
+ import "@noble/curves/secp256k1.js";
14
+ import "zod";
15
+ import "./standards-sdk.es149.js";
16
+ import "./standards-sdk.es138.js";
17
+ import { HCS20_CONSTANTS, HCS20MessageSchema } from "./standards-sdk.es72.js";
18
+ class HCS20PointsIndexer {
19
+ constructor(network, logger, mirrorNodeUrl) {
20
+ this.isProcessing = false;
21
+ this.lastIndexedSequence = /* @__PURE__ */ new Map();
22
+ this.logger = logger || new Logger({
23
+ level: "info",
24
+ module: "HCS20PointsIndexer"
22
25
  });
23
- this.client = this.operatorCtx.client;
24
- void this.operatorCtx.ensureInitialized();
26
+ this.mirrorNode = new HederaMirrorNode(network, this.logger, {
27
+ customUrl: mirrorNodeUrl
28
+ });
29
+ this.state = this.initializeState();
25
30
  }
26
31
  /**
27
- * Ensure operator is initialized before operations
32
+ * Initialize empty state
28
33
  */
29
- async ensureInitialized() {
30
- await this.operatorCtx.ensureInitialized();
34
+ initializeState() {
35
+ return {
36
+ deployedPoints: /* @__PURE__ */ new Map(),
37
+ balances: /* @__PURE__ */ new Map(),
38
+ transactions: [],
39
+ lastProcessedSequence: 0,
40
+ lastProcessedTimestamp: (/* @__PURE__ */ new Date()).toISOString()
41
+ };
31
42
  }
32
43
  /**
33
- * Submit a payload to a topic
44
+ * Get current state snapshot
34
45
  */
35
- async submitPayload(transaction, submitKey) {
36
- let transactionResponse;
37
- if (submitKey) {
38
- const frozenTransaction = transaction.freezeWith(this.client);
39
- const signedTransaction = await frozenTransaction.sign(submitKey);
40
- transactionResponse = await signedTransaction.execute(this.client);
41
- } else {
42
- transactionResponse = await transaction.execute(this.client);
43
- }
44
- const receipt = await transactionResponse.getReceipt(this.client);
45
- if (!receipt || receipt.status !== Status.Success) {
46
- throw new Error("Failed to submit message to topic");
47
- }
46
+ getState() {
48
47
  return {
49
- receipt,
50
- transactionId: transactionResponse.transactionId.toString()
48
+ ...this.state,
49
+ deployedPoints: new Map(this.state.deployedPoints),
50
+ balances: new Map(this.state.balances),
51
+ transactions: [...this.state.transactions]
51
52
  };
52
53
  }
53
54
  /**
54
- * Create a public topic for HCS-20 (for testnet)
55
+ * Get points info for a specific tick
55
56
  */
56
- async createPublicTopic(memo) {
57
- await this.ensureInitialized();
58
- this.logger.info("Creating public HCS-20 topic...");
59
- const topicCreateTx = await new TopicCreateTransaction().setTopicMemo(memo || "HCS-20 Public Topic").execute(this.client);
60
- const receipt = await topicCreateTx.getReceipt(this.client);
61
- if (receipt.status !== Status.Success || !receipt.topicId) {
62
- throw new Error("Failed to create public topic");
63
- }
64
- const topicId = receipt.topicId.toString();
65
- this.logger.info(`Created public topic: ${topicId}`);
66
- this.publicTopicId = topicId;
67
- return topicId;
57
+ getPointsInfo(tick) {
58
+ return this.state.deployedPoints.get(this.normalizeTick(tick));
68
59
  }
69
60
  /**
70
- * Create a registry topic for HCS-20
61
+ * Get balance for an account and tick
71
62
  */
72
- async createRegistryTopic() {
73
- await this.ensureInitialized();
74
- this.logger.info("Creating HCS-20 registry topic...");
75
- const hcs2Client = new HCS2Client({
76
- operatorId: this.operatorId,
77
- operatorKey: this.operatorCtx.operatorKey,
78
- network: this.network
79
- });
80
- const topicCreateResponse = await hcs2Client.createRegistry({
81
- submitKey: this.operatorCtx.operatorKey,
82
- adminKey: this.operatorCtx.operatorKey
83
- });
84
- if (!topicCreateResponse.success) {
85
- throw new Error("Failed to create registry topic");
86
- }
87
- const topicId = topicCreateResponse.topicId;
88
- this.logger.info(`Created registry topic: ${topicId}`);
89
- this.registryTopicId = topicId;
90
- return topicId;
63
+ getBalance(tick, accountId) {
64
+ const normalizedTick = this.normalizeTick(tick);
65
+ const tickBalances = this.state.balances.get(normalizedTick);
66
+ if (!tickBalances) return "0";
67
+ const balance = tickBalances.get(accountId);
68
+ return balance?.balance || "0";
91
69
  }
92
70
  /**
93
- * Deploy new points
71
+ * Start indexing process
94
72
  */
95
- async deployPoints(options) {
96
- await this.ensureInitialized();
97
- const { progressCallback } = options;
98
- try {
99
- progressCallback?.({
100
- stage: "creating-topic",
101
- percentage: 20
102
- });
103
- let topicId;
104
- const hcs2Client = new HCS2Client({
105
- operatorId: this.operatorId,
106
- operatorKey: this.operatorCtx.operatorKey,
107
- network: this.network
108
- });
109
- if (options.usePrivateTopic) {
110
- const topicCreateResponse = await hcs2Client.createRegistry({
111
- submitKey: this.operatorCtx.operatorKey,
112
- adminKey: this.operatorCtx.operatorKey
113
- });
114
- if (!topicCreateResponse.success) {
115
- throw new PointsDeploymentError(
116
- "Failed to create topic",
117
- options.tick
118
- );
119
- }
120
- topicId = topicCreateResponse.topicId;
121
- this.logger.info(`Created private topic: ${topicId}`);
122
- } else {
123
- topicId = this.publicTopicId;
124
- }
125
- progressCallback?.({
126
- stage: "submitting-deploy",
127
- percentage: 50,
128
- topicId
129
- });
130
- const deployMessage = {
131
- p: "hcs-20",
132
- op: "deploy",
133
- name: options.name,
134
- tick: this.normalizeTick(options.tick),
135
- max: options.maxSupply,
136
- lim: options.limitPerMint,
137
- metadata: options.metadata,
138
- m: options.topicMemo
139
- };
140
- const validation = this.validateMessage(deployMessage);
141
- if (!validation.valid) {
142
- throw new PointsValidationError(
143
- "Invalid deploy message",
144
- validation.errors
73
+ async startIndexing(options) {
74
+ if (this.isProcessing) {
75
+ this.logger.warn("Indexing already in progress");
76
+ return;
77
+ }
78
+ this.isProcessing = true;
79
+ const includePublicTopic = options?.includePublicTopic !== false;
80
+ const includeRegistryTopic = options?.includeRegistryTopic !== false;
81
+ const publicTopicId = includePublicTopic ? options?.publicTopicId || HCS20_CONSTANTS.PUBLIC_TOPIC_ID : null;
82
+ const registryTopicId = includeRegistryTopic ? options?.registryTopicId || HCS20_CONSTANTS.REGISTRY_TOPIC_ID : null;
83
+ const pollInterval = options?.pollInterval || 3e4;
84
+ await this.indexTopics(
85
+ publicTopicId,
86
+ registryTopicId,
87
+ options?.privateTopics
88
+ );
89
+ const pollTopics = async () => {
90
+ if (!this.isProcessing) return;
91
+ try {
92
+ await this.indexTopics(
93
+ publicTopicId,
94
+ registryTopicId,
95
+ options?.privateTopics
145
96
  );
97
+ } catch (error) {
98
+ this.logger.error("Polling error:", error);
146
99
  }
147
- const deployTransaction = buildHcs20DeployTx({
148
- topicId,
149
- name: options.name,
150
- tick: options.tick,
151
- max: options.maxSupply,
152
- lim: options.limitPerMint,
153
- metadata: options.metadata,
154
- memo: options.topicMemo
155
- });
156
- const { transactionId: deployTxId } = await this.submitPayload(deployTransaction);
157
- progressCallback?.({
158
- stage: "confirming",
159
- percentage: 80,
160
- topicId,
161
- deployTxId
162
- });
163
- await this.waitForMirrorNodeConfirmation(topicId, deployTxId);
164
- progressCallback?.({
165
- stage: "complete",
166
- percentage: 100,
167
- topicId,
168
- deployTxId
169
- });
170
- const pointsInfo = {
171
- name: options.name,
172
- tick: this.normalizeTick(options.tick),
173
- maxSupply: options.maxSupply,
174
- limitPerMint: options.limitPerMint,
175
- metadata: options.metadata,
176
- topicId,
177
- deployerAccountId: this.operatorId,
178
- currentSupply: "0",
179
- deploymentTimestamp: (/* @__PURE__ */ new Date()).toISOString(),
180
- isPrivate: options.usePrivateTopic || false
181
- };
182
- return pointsInfo;
183
- } catch (error) {
184
- progressCallback?.({
185
- stage: "complete",
186
- percentage: 100,
187
- error: error instanceof Error ? error.message : "Unknown error"
188
- });
189
- throw error;
100
+ if (this.isProcessing) {
101
+ setTimeout(pollTopics, pollInterval);
102
+ }
103
+ };
104
+ setTimeout(pollTopics, pollInterval);
105
+ }
106
+ /**
107
+ * Index topics once and wait for completion
108
+ */
109
+ async indexOnce(options) {
110
+ const includePublicTopic = options?.includePublicTopic !== false;
111
+ const includeRegistryTopic = options?.includeRegistryTopic !== false;
112
+ const publicTopicId = includePublicTopic ? options?.publicTopicId || HCS20_CONSTANTS.PUBLIC_TOPIC_ID : null;
113
+ const registryTopicId = includeRegistryTopic ? options?.registryTopicId || HCS20_CONSTANTS.REGISTRY_TOPIC_ID : null;
114
+ await this.indexTopics(
115
+ publicTopicId,
116
+ registryTopicId,
117
+ options?.privateTopics
118
+ );
119
+ }
120
+ /**
121
+ * Stop indexing process
122
+ */
123
+ stopIndexing() {
124
+ this.isProcessing = false;
125
+ this.logger.info("Indexing stopped");
126
+ }
127
+ /**
128
+ * Index topics and update state
129
+ */
130
+ async indexTopics(publicTopicId, registryTopicId, privateTopics) {
131
+ this.logger.debug("Starting indexing cycle");
132
+ if (publicTopicId) {
133
+ await this.indexTopic(publicTopicId, false);
134
+ }
135
+ const registeredTopics = registryTopicId ? await this.getRegisteredTopics(registryTopicId) : [];
136
+ const topicsToIndex = [...registeredTopics, ...privateTopics || []];
137
+ for (const topicId of topicsToIndex) {
138
+ await this.indexTopic(topicId, true);
190
139
  }
140
+ this.logger.debug("Indexing cycle complete");
191
141
  }
192
142
  /**
193
- * Mint points
143
+ * Get registered topics from registry
194
144
  */
195
- async mintPoints(options) {
196
- await this.ensureInitialized();
197
- const { progressCallback } = options;
145
+ async getRegisteredTopics(registryTopicId) {
146
+ const topics = [];
198
147
  try {
199
- progressCallback?.({
200
- stage: "validating",
201
- percentage: 20
202
- });
203
- const normalizedTick = this.normalizeTick(options.tick);
204
- progressCallback?.({
205
- stage: "submitting",
206
- percentage: 50
148
+ const messages = await this.mirrorNode.getTopicMessages(registryTopicId, {
149
+ limit: 100,
150
+ order: "asc"
207
151
  });
208
- const topicId = options.topicId ? this.topicToString(options.topicId) : this.publicTopicId;
209
- const mintTransaction = buildHcs20MintTx({
210
- topicId,
211
- tick: options.tick,
212
- amt: options.amount,
213
- to: this.accountToString(options.to),
214
- memo: options.memo
152
+ messages.filter(
153
+ (message) => message.p === "hcs-20" && message.op === "register" && typeof message.t_id === "string"
154
+ ).forEach((message) => {
155
+ topics.push(message.t_id);
215
156
  });
216
- const { transactionId: mintTxId } = await this.submitPayload(mintTransaction);
217
- progressCallback?.({
218
- stage: "confirming",
219
- percentage: 80,
220
- mintTxId
221
- });
222
- if (!options.disableMirrorCheck) {
223
- await this.waitForMirrorNodeConfirmation(topicId, mintTxId);
224
- }
225
- progressCallback?.({
226
- stage: "complete",
227
- percentage: 100,
228
- mintTxId
229
- });
230
- const transaction = {
231
- id: mintTxId,
232
- operation: "mint",
233
- tick: normalizedTick,
234
- amount: options.amount,
235
- to: this.accountToString(options.to),
236
- timestamp: (/* @__PURE__ */ new Date()).toISOString(),
237
- sequenceNumber: 0,
238
- topicId,
239
- transactionId: mintTxId,
240
- memo: options.memo
241
- };
242
- return transaction;
243
157
  } catch (error) {
244
- progressCallback?.({
245
- stage: "complete",
246
- percentage: 100,
247
- error: error instanceof Error ? error.message : "Unknown error"
248
- });
249
- throw error;
158
+ this.logger.error("Failed to fetch registry messages:", error);
250
159
  }
160
+ return topics;
251
161
  }
252
162
  /**
253
- * Transfer points
163
+ * Index a single topic
254
164
  */
255
- async transferPoints(options) {
256
- await this.ensureInitialized();
257
- const { progressCallback } = options;
165
+ async indexTopic(topicId, isPrivate) {
258
166
  try {
259
- progressCallback?.({
260
- stage: "validating-balance",
261
- percentage: 20
167
+ const lastSequence = this.lastIndexedSequence.get(topicId);
168
+ this.logger.debug(
169
+ `Indexing topic ${topicId}, starting from sequence ${lastSequence || 0}`
170
+ );
171
+ const messages = await this.mirrorNode.getTopicMessages(topicId, {
172
+ sequenceNumber: lastSequence ? lastSequence + 1 : void 0,
173
+ limit: 1e3,
174
+ order: "asc"
262
175
  });
263
- const normalizedTick = this.normalizeTick(options.tick);
264
- const fromAccount = this.accountToString(options.from);
265
- const toAccount = this.accountToString(options.to);
266
- if (fromAccount !== this.operatorId) {
267
- throw new PointsTransferError(
268
- "For public topics, transaction payer must match sender",
269
- options.tick,
270
- fromAccount,
271
- toAccount,
272
- options.amount
176
+ this.logger.debug(
177
+ `Fetched ${messages.length} messages from topic ${topicId}`
178
+ );
179
+ let maxSequence = lastSequence || 0;
180
+ for (const message of messages) {
181
+ if (message.p !== "hcs-20") {
182
+ continue;
183
+ }
184
+ const parseResult = HCS20MessageSchema.safeParse(message);
185
+ if (!parseResult.success) {
186
+ this.logger.debug("Skipping message due to schema mismatch");
187
+ continue;
188
+ }
189
+ const parsedMsg = parseResult.data;
190
+ const sequenceNumber = message.sequence_number ?? 0;
191
+ this.logger.debug(
192
+ `Found HCS-20 message: op=${parsedMsg.op}, sequence=${sequenceNumber}`
273
193
  );
194
+ if (sequenceNumber > maxSequence) {
195
+ maxSequence = sequenceNumber;
196
+ }
197
+ const topicMessage = {
198
+ consensus_timestamp: message.consensus_timestamp ?? "",
199
+ sequence_number: sequenceNumber,
200
+ payer_account_id: message.payer_account_id ?? message.payer ?? "",
201
+ transaction_id: message.transaction_id ?? ""
202
+ };
203
+ this.processMessage(parsedMsg, topicMessage, topicId, isPrivate);
204
+ this.state.lastProcessedSequence++;
205
+ this.state.lastProcessedTimestamp = message.consensus_timestamp || "";
206
+ }
207
+ if (maxSequence > (lastSequence || 0)) {
208
+ this.lastIndexedSequence.set(topicId, maxSequence);
274
209
  }
275
- progressCallback?.({
276
- stage: "submitting",
277
- percentage: 50
278
- });
279
- const topicId = options.topicId ? this.topicToString(options.topicId) : this.publicTopicId;
280
- const transferTransaction = buildHcs20TransferTx({
281
- topicId,
282
- tick: options.tick,
283
- amt: options.amount,
284
- from: fromAccount,
285
- to: toAccount,
286
- memo: options.memo
287
- });
288
- const { transactionId: transferTxId } = await this.submitPayload(transferTransaction);
289
- progressCallback?.({
290
- stage: "confirming",
291
- percentage: 80,
292
- transferTxId
293
- });
294
- await this.waitForMirrorNodeConfirmation(topicId, transferTxId);
295
- progressCallback?.({
296
- stage: "complete",
297
- percentage: 100,
298
- transferTxId
299
- });
300
- const transaction = {
301
- id: transferTxId,
302
- operation: "transfer",
303
- tick: normalizedTick,
304
- amount: options.amount,
305
- from: fromAccount,
306
- to: toAccount,
307
- timestamp: (/* @__PURE__ */ new Date()).toISOString(),
308
- sequenceNumber: 0,
309
- topicId,
310
- transactionId: transferTxId,
311
- memo: options.memo
312
- };
313
- return transaction;
314
210
  } catch (error) {
315
- progressCallback?.({
316
- stage: "complete",
317
- percentage: 100,
318
- error: error instanceof Error ? error.message : "Unknown error"
319
- });
320
- throw error;
211
+ this.logger.error(`Failed to index topic ${topicId}:`, error);
321
212
  }
322
213
  }
323
214
  /**
324
- * Burn points
215
+ * Process a single message
325
216
  */
326
- async burnPoints(options) {
327
- await this.ensureInitialized();
328
- const { progressCallback } = options;
329
- try {
330
- progressCallback?.({
331
- stage: "validating-balance",
332
- percentage: 20
333
- });
334
- const normalizedTick = this.normalizeTick(options.tick);
335
- const fromAccount = this.accountToString(options.from);
336
- if (fromAccount !== this.operatorId) {
337
- throw new PointsBurnError(
338
- "For public topics, transaction payer must match burner",
339
- options.tick,
340
- fromAccount,
341
- options.amount
342
- );
343
- }
344
- progressCallback?.({
345
- stage: "submitting",
346
- percentage: 50
347
- });
348
- const topicId = options.topicId ? this.topicToString(options.topicId) : this.publicTopicId;
349
- const burnTransaction = buildHcs20BurnTx({
350
- topicId,
351
- tick: options.tick,
352
- amt: options.amount,
353
- from: fromAccount,
354
- memo: options.memo
355
- });
356
- const { transactionId: burnTxId } = await this.submitPayload(burnTransaction);
357
- progressCallback?.({
358
- stage: "confirming",
359
- percentage: 80,
360
- burnTxId
361
- });
362
- await this.waitForMirrorNodeConfirmation(topicId, burnTxId);
363
- progressCallback?.({
364
- stage: "complete",
365
- percentage: 100,
366
- burnTxId
367
- });
368
- const transaction = {
369
- id: burnTxId,
370
- operation: "burn",
371
- tick: normalizedTick,
372
- amount: options.amount,
373
- from: fromAccount,
374
- timestamp: (/* @__PURE__ */ new Date()).toISOString(),
375
- sequenceNumber: 0,
376
- topicId,
377
- transactionId: burnTxId,
378
- memo: options.memo
379
- };
380
- return transaction;
381
- } catch (error) {
382
- progressCallback?.({
383
- stage: "complete",
384
- percentage: 100,
385
- error: error instanceof Error ? error.message : "Unknown error"
386
- });
387
- throw error;
217
+ processMessage(msg, hcsMsg, topicId, isPrivate) {
218
+ switch (msg.op) {
219
+ case "deploy":
220
+ this.processDeployMessage(msg, hcsMsg, topicId, isPrivate);
221
+ break;
222
+ case "mint":
223
+ this.processMintMessage(msg, hcsMsg, topicId, isPrivate);
224
+ break;
225
+ case "transfer":
226
+ this.processTransferMessage(msg, hcsMsg, topicId, isPrivate);
227
+ break;
228
+ case "burn":
229
+ this.processBurnMessage(msg, hcsMsg, topicId, isPrivate);
230
+ break;
388
231
  }
389
232
  }
390
233
  /**
391
- * Register a topic in the registry
234
+ * Process deploy message
392
235
  */
393
- async registerTopic(options) {
394
- await this.ensureInitialized();
395
- const { progressCallback } = options;
396
- try {
397
- progressCallback?.({
398
- stage: "validating",
399
- percentage: 20
400
- });
401
- const registerMessage = {
402
- p: "hcs-20",
403
- op: "register",
404
- name: options.name,
405
- metadata: options.metadata,
406
- private: options.isPrivate,
407
- t_id: this.topicToString(options.topicId),
408
- m: options.memo
409
- };
410
- const validation = this.validateMessage(registerMessage);
411
- if (!validation.valid) {
412
- throw new PointsValidationError(
413
- "Invalid register message",
414
- validation.errors
415
- );
416
- }
417
- if (!this.registryTopicId) {
418
- throw new PointsDeploymentError(
419
- "Registry topic not available",
420
- options.name
421
- );
422
- }
423
- progressCallback?.({
424
- stage: "submitting",
425
- percentage: 50
426
- });
427
- const registerTransaction = buildHcs20RegisterTx({
428
- registryTopicId: this.registryTopicId,
429
- name: options.name,
430
- topicId: this.topicToString(options.topicId),
431
- isPrivate: options.isPrivate,
432
- metadata: options.metadata,
433
- memo: options.memo
434
- });
435
- const { transactionId: registerTxId } = await this.submitPayload(
436
- registerTransaction,
437
- this.operatorCtx.operatorKey
438
- );
439
- progressCallback?.({
440
- stage: "confirming",
441
- percentage: 80,
442
- registerTxId
443
- });
444
- await this.waitForMirrorNodeConfirmation(
445
- this.registryTopicId,
446
- registerTxId
447
- );
448
- progressCallback?.({
449
- stage: "complete",
450
- percentage: 100,
451
- registerTxId
452
- });
453
- this.logger.info(`Registered topic ${options.topicId} in registry`);
454
- } catch (error) {
455
- progressCallback?.({
456
- stage: "complete",
457
- percentage: 100,
458
- error: error instanceof Error ? error.message : "Unknown error"
459
- });
460
- throw error;
236
+ processDeployMessage(msg, hcsMsg, topicId, isPrivate) {
237
+ const normalizedTick = this.normalizeTick(msg.tick);
238
+ if (this.state.deployedPoints.has(normalizedTick)) {
239
+ return;
461
240
  }
241
+ const pointsInfo = {
242
+ name: msg.name,
243
+ tick: normalizedTick,
244
+ maxSupply: msg.max,
245
+ limitPerMint: msg.lim,
246
+ metadata: msg.metadata,
247
+ topicId,
248
+ deployerAccountId: hcsMsg.payer_account_id,
249
+ currentSupply: "0",
250
+ deploymentTimestamp: hcsMsg.consensus_timestamp,
251
+ isPrivate
252
+ };
253
+ this.state.deployedPoints.set(normalizedTick, pointsInfo);
254
+ this.logger.info(`Deployed points: ${normalizedTick}`);
462
255
  }
463
256
  /**
464
- * Wait for mirror node to index a message
257
+ * Process mint message
465
258
  */
466
- async waitForMirrorNodeConfirmation(topicId, transactionId, maxRetries = 10) {
467
- for (let i = 0; i < maxRetries; i++) {
468
- try {
469
- const messages = await this.mirrorNode.getTopicMessages(topicId, {
470
- limit: 10,
471
- order: "desc"
472
- });
473
- const found = messages.some((message) => {
474
- if (typeof message !== "object" || message === null) {
475
- return false;
476
- }
477
- const candidate = message;
478
- return typeof candidate.consensus_timestamp === "string";
479
- });
480
- if (found) {
481
- this.logger.debug(
482
- `Transaction ${transactionId} confirmed on mirror node`
483
- );
484
- return;
485
- }
486
- } catch (error) {
487
- this.logger.debug(`Mirror node check attempt ${i + 1} failed:`, error);
488
- }
489
- await sleep(2e3);
259
+ processMintMessage(msg, hcsMsg, topicId, isPrivate) {
260
+ const normalizedTick = this.normalizeTick(msg.tick);
261
+ const pointsInfo = this.state.deployedPoints.get(normalizedTick);
262
+ if (!pointsInfo) return;
263
+ const mintAmount = BigInt(msg.amt);
264
+ const currentSupply = BigInt(pointsInfo.currentSupply);
265
+ const maxSupply = BigInt(pointsInfo.maxSupply);
266
+ if (currentSupply + mintAmount > maxSupply) return;
267
+ if (pointsInfo.limitPerMint && mintAmount > BigInt(pointsInfo.limitPerMint))
268
+ return;
269
+ pointsInfo.currentSupply = (currentSupply + mintAmount).toString();
270
+ let tickBalances = this.state.balances.get(normalizedTick);
271
+ if (!tickBalances) {
272
+ tickBalances = /* @__PURE__ */ new Map();
273
+ this.state.balances.set(normalizedTick, tickBalances);
490
274
  }
491
- this.logger.warn(
492
- `Transaction ${transactionId} not found on mirror node after ${maxRetries} attempts`
493
- );
275
+ const currentBalance = tickBalances.get(msg.to);
276
+ const newBalance = currentBalance ? (BigInt(currentBalance.balance) + mintAmount).toString() : msg.amt;
277
+ tickBalances.set(msg.to, {
278
+ tick: normalizedTick,
279
+ accountId: msg.to,
280
+ balance: newBalance,
281
+ lastUpdated: hcsMsg.consensus_timestamp
282
+ });
283
+ this.state.transactions.push({
284
+ id: hcsMsg.transaction_id || `${topicId}-${hcsMsg.sequence_number}`,
285
+ operation: "mint",
286
+ tick: normalizedTick,
287
+ amount: msg.amt,
288
+ to: msg.to,
289
+ timestamp: hcsMsg.consensus_timestamp,
290
+ sequenceNumber: hcsMsg.sequence_number,
291
+ topicId,
292
+ transactionId: hcsMsg.transaction_id || "",
293
+ memo: msg.m
294
+ });
295
+ }
296
+ /**
297
+ * Process transfer message
298
+ */
299
+ processTransferMessage(msg, hcsMsg, topicId, isPrivate) {
300
+ const normalizedTick = this.normalizeTick(msg.tick);
301
+ const tickBalances = this.state.balances.get(normalizedTick);
302
+ if (!tickBalances) return;
303
+ if (!isPrivate && hcsMsg.payer_account_id !== msg.from) return;
304
+ const senderBalance = tickBalances.get(msg.from);
305
+ if (!senderBalance || BigInt(senderBalance.balance) < BigInt(msg.amt))
306
+ return;
307
+ const transferAmount = BigInt(msg.amt);
308
+ senderBalance.balance = (BigInt(senderBalance.balance) - transferAmount).toString();
309
+ senderBalance.lastUpdated = hcsMsg.consensus_timestamp;
310
+ const receiverBalance = tickBalances.get(msg.to);
311
+ if (receiverBalance) {
312
+ receiverBalance.balance = (BigInt(receiverBalance.balance) + transferAmount).toString();
313
+ receiverBalance.lastUpdated = hcsMsg.consensus_timestamp;
314
+ } else {
315
+ tickBalances.set(msg.to, {
316
+ tick: normalizedTick,
317
+ accountId: msg.to,
318
+ balance: msg.amt,
319
+ lastUpdated: hcsMsg.consensus_timestamp
320
+ });
321
+ }
322
+ this.state.transactions.push({
323
+ id: hcsMsg.transaction_id || `${topicId}-${hcsMsg.sequence_number}`,
324
+ operation: "transfer",
325
+ tick: normalizedTick,
326
+ amount: msg.amt,
327
+ from: msg.from,
328
+ to: msg.to,
329
+ timestamp: hcsMsg.consensus_timestamp,
330
+ sequenceNumber: hcsMsg.sequence_number,
331
+ topicId,
332
+ transactionId: hcsMsg.transaction_id || "",
333
+ memo: msg.m
334
+ });
335
+ }
336
+ /**
337
+ * Process burn message
338
+ */
339
+ processBurnMessage(msg, hcsMsg, topicId, isPrivate) {
340
+ const normalizedTick = this.normalizeTick(msg.tick);
341
+ const pointsInfo = this.state.deployedPoints.get(normalizedTick);
342
+ const tickBalances = this.state.balances.get(normalizedTick);
343
+ if (!pointsInfo || !tickBalances) return;
344
+ if (!isPrivate && hcsMsg.payer_account_id !== msg.from) return;
345
+ const accountBalance = tickBalances.get(msg.from);
346
+ if (!accountBalance || BigInt(accountBalance.balance) < BigInt(msg.amt))
347
+ return;
348
+ const burnAmount = BigInt(msg.amt);
349
+ accountBalance.balance = (BigInt(accountBalance.balance) - burnAmount).toString();
350
+ accountBalance.lastUpdated = hcsMsg.consensus_timestamp;
351
+ pointsInfo.currentSupply = (BigInt(pointsInfo.currentSupply) - burnAmount).toString();
352
+ this.state.transactions.push({
353
+ id: hcsMsg.transaction_id || `${topicId}-${hcsMsg.sequence_number}`,
354
+ operation: "burn",
355
+ tick: normalizedTick,
356
+ amount: msg.amt,
357
+ from: msg.from,
358
+ timestamp: hcsMsg.consensus_timestamp,
359
+ sequenceNumber: hcsMsg.sequence_number,
360
+ topicId,
361
+ transactionId: hcsMsg.transaction_id || "",
362
+ memo: msg.m
363
+ });
364
+ }
365
+ /**
366
+ * Normalize tick to lowercase and trim
367
+ */
368
+ normalizeTick(tick) {
369
+ return tick.toLowerCase().trim();
494
370
  }
495
371
  }
496
372
  export {
497
- HCS20Client
373
+ HCS20PointsIndexer
498
374
  };
499
375
  //# sourceMappingURL=standards-sdk.es77.js.map