@hashgraphonline/standards-sdk 0.1.144 → 0.1.146-chore-jsr-improvements.canary.74bacb9.89

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 (442) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/hcs-10/base-client.d.ts.map +1 -1
  3. package/dist/cjs/hcs-10/sdk.d.ts +8 -0
  4. package/dist/cjs/hcs-10/sdk.d.ts.map +1 -1
  5. package/dist/cjs/hcs-11/client.d.ts +2 -2
  6. package/dist/cjs/hcs-11/client.d.ts.map +1 -1
  7. package/dist/cjs/hcs-11/person-builder.d.ts +1 -0
  8. package/dist/cjs/hcs-11/person-builder.d.ts.map +1 -1
  9. package/dist/cjs/hcs-11/types.d.ts +1 -0
  10. package/dist/cjs/hcs-11/types.d.ts.map +1 -1
  11. package/dist/cjs/hcs-12/rendering/resource-manager.d.ts.map +1 -1
  12. package/dist/cjs/hcs-14/issuers/hiero.d.ts.map +1 -1
  13. package/dist/cjs/hcs-15/browser.d.ts +2 -0
  14. package/dist/cjs/hcs-15/browser.d.ts.map +1 -1
  15. package/dist/cjs/hcs-15/sdk.d.ts +7 -1
  16. package/dist/cjs/hcs-15/sdk.d.ts.map +1 -1
  17. package/dist/cjs/hcs-15/tx.d.ts +4 -0
  18. package/dist/cjs/hcs-15/tx.d.ts.map +1 -1
  19. package/dist/cjs/hcs-15/types.d.ts +16 -1
  20. package/dist/cjs/hcs-15/types.d.ts.map +1 -1
  21. package/dist/cjs/hcs-16/browser.d.ts +11 -2
  22. package/dist/cjs/hcs-16/browser.d.ts.map +1 -1
  23. package/dist/cjs/hcs-16/sdk.d.ts +62 -1
  24. package/dist/cjs/hcs-16/sdk.d.ts.map +1 -1
  25. package/dist/cjs/hcs-16/tx.d.ts +21 -3
  26. package/dist/cjs/hcs-16/tx.d.ts.map +1 -1
  27. package/dist/cjs/hcs-17/base-client.d.ts +1 -0
  28. package/dist/cjs/hcs-17/base-client.d.ts.map +1 -1
  29. package/dist/cjs/hcs-17/sdk.d.ts.map +1 -1
  30. package/dist/cjs/hcs-17/tx.d.ts +2 -0
  31. package/dist/cjs/hcs-17/tx.d.ts.map +1 -1
  32. package/dist/cjs/hcs-17/types.d.ts +4 -0
  33. package/dist/cjs/hcs-17/types.d.ts.map +1 -1
  34. package/dist/cjs/hcs-3/src/types.d.ts +60 -0
  35. package/dist/cjs/hcs-3/src/types.d.ts.map +1 -0
  36. package/dist/cjs/hcs-7/types.d.ts +4 -4
  37. package/dist/cjs/index.d.ts.map +1 -1
  38. package/dist/cjs/inscribe/inscriber.d.ts +89 -0
  39. package/dist/cjs/inscribe/inscriber.d.ts.map +1 -1
  40. package/dist/cjs/jsr-entry.d.ts +16 -0
  41. package/dist/cjs/jsr-entry.d.ts.map +1 -0
  42. package/dist/cjs/services/registry-broker/client/base-client.d.ts +14 -1
  43. package/dist/cjs/services/registry-broker/client/base-client.d.ts.map +1 -1
  44. package/dist/cjs/services/registry-broker/client/feedback.d.ts +2 -0
  45. package/dist/cjs/services/registry-broker/client/feedback.d.ts.map +1 -0
  46. package/dist/cjs/services/registry-broker/hol-chat-ops.d.ts +24 -0
  47. package/dist/cjs/services/registry-broker/hol-chat-ops.d.ts.map +1 -0
  48. package/dist/cjs/services/registry-broker/index.d.ts +1 -0
  49. package/dist/cjs/services/registry-broker/index.d.ts.map +1 -1
  50. package/dist/cjs/services/registry-broker/private-key-signer.d.ts +1 -0
  51. package/dist/cjs/services/registry-broker/private-key-signer.d.ts.map +1 -1
  52. package/dist/cjs/services/registry-broker/schemas.d.ts +1010 -586
  53. package/dist/cjs/services/registry-broker/schemas.d.ts.map +1 -1
  54. package/dist/cjs/services/registry-broker/types.d.ts +20 -1
  55. package/dist/cjs/services/registry-broker/types.d.ts.map +1 -1
  56. package/dist/cjs/standards-sdk.cjs +3 -3
  57. package/dist/cjs/standards-sdk.cjs.map +1 -1
  58. package/dist/cjs/utils/crypto-abstraction.d.ts.map +1 -1
  59. package/dist/cjs/utils/crypto-env.d.ts.map +1 -1
  60. package/dist/cjs/utils/dynamic-import.d.ts +5 -1
  61. package/dist/cjs/utils/dynamic-import.d.ts.map +1 -1
  62. package/dist/cjs/utils/hash-adapter.d.ts.map +1 -1
  63. package/dist/es/hcs-10/base-client.d.ts.map +1 -1
  64. package/dist/es/hcs-10/sdk.d.ts +8 -0
  65. package/dist/es/hcs-10/sdk.d.ts.map +1 -1
  66. package/dist/es/hcs-11/client.d.ts +2 -2
  67. package/dist/es/hcs-11/client.d.ts.map +1 -1
  68. package/dist/es/hcs-11/person-builder.d.ts +1 -0
  69. package/dist/es/hcs-11/person-builder.d.ts.map +1 -1
  70. package/dist/es/hcs-11/types.d.ts +1 -0
  71. package/dist/es/hcs-11/types.d.ts.map +1 -1
  72. package/dist/es/hcs-12/rendering/resource-manager.d.ts.map +1 -1
  73. package/dist/es/hcs-14/issuers/hiero.d.ts.map +1 -1
  74. package/dist/es/hcs-15/browser.d.ts +2 -0
  75. package/dist/es/hcs-15/browser.d.ts.map +1 -1
  76. package/dist/es/hcs-15/sdk.d.ts +7 -1
  77. package/dist/es/hcs-15/sdk.d.ts.map +1 -1
  78. package/dist/es/hcs-15/tx.d.ts +4 -0
  79. package/dist/es/hcs-15/tx.d.ts.map +1 -1
  80. package/dist/es/hcs-15/types.d.ts +16 -1
  81. package/dist/es/hcs-15/types.d.ts.map +1 -1
  82. package/dist/es/hcs-16/browser.d.ts +11 -2
  83. package/dist/es/hcs-16/browser.d.ts.map +1 -1
  84. package/dist/es/hcs-16/sdk.d.ts +62 -1
  85. package/dist/es/hcs-16/sdk.d.ts.map +1 -1
  86. package/dist/es/hcs-16/tx.d.ts +21 -3
  87. package/dist/es/hcs-16/tx.d.ts.map +1 -1
  88. package/dist/es/hcs-17/base-client.d.ts +1 -0
  89. package/dist/es/hcs-17/base-client.d.ts.map +1 -1
  90. package/dist/es/hcs-17/sdk.d.ts.map +1 -1
  91. package/dist/es/hcs-17/tx.d.ts +2 -0
  92. package/dist/es/hcs-17/tx.d.ts.map +1 -1
  93. package/dist/es/hcs-17/types.d.ts +4 -0
  94. package/dist/es/hcs-17/types.d.ts.map +1 -1
  95. package/dist/es/hcs-3/src/types.d.ts +60 -0
  96. package/dist/es/hcs-3/src/types.d.ts.map +1 -0
  97. package/dist/es/hcs-7/types.d.ts +4 -4
  98. package/dist/es/index.d.ts.map +1 -1
  99. package/dist/es/inscribe/inscriber.d.ts +89 -0
  100. package/dist/es/inscribe/inscriber.d.ts.map +1 -1
  101. package/dist/es/jsr-entry.d.ts +16 -0
  102. package/dist/es/jsr-entry.d.ts.map +1 -0
  103. package/dist/es/services/registry-broker/client/base-client.d.ts +14 -1
  104. package/dist/es/services/registry-broker/client/base-client.d.ts.map +1 -1
  105. package/dist/es/services/registry-broker/client/feedback.d.ts +2 -0
  106. package/dist/es/services/registry-broker/client/feedback.d.ts.map +1 -0
  107. package/dist/es/services/registry-broker/hol-chat-ops.d.ts +24 -0
  108. package/dist/es/services/registry-broker/hol-chat-ops.d.ts.map +1 -0
  109. package/dist/es/services/registry-broker/index.d.ts +1 -0
  110. package/dist/es/services/registry-broker/index.d.ts.map +1 -1
  111. package/dist/es/services/registry-broker/private-key-signer.d.ts +1 -0
  112. package/dist/es/services/registry-broker/private-key-signer.d.ts.map +1 -1
  113. package/dist/es/services/registry-broker/schemas.d.ts +1010 -586
  114. package/dist/es/services/registry-broker/schemas.d.ts.map +1 -1
  115. package/dist/es/services/registry-broker/types.d.ts +20 -1
  116. package/dist/es/services/registry-broker/types.d.ts.map +1 -1
  117. package/dist/es/standards-sdk.es.js +146 -131
  118. package/dist/es/standards-sdk.es10.js +70 -90
  119. package/dist/es/standards-sdk.es10.js.map +1 -1
  120. package/dist/es/standards-sdk.es100.js +229 -26
  121. package/dist/es/standards-sdk.es100.js.map +1 -1
  122. package/dist/es/standards-sdk.es101.js +109 -228
  123. package/dist/es/standards-sdk.es101.js.map +1 -1
  124. package/dist/es/standards-sdk.es102.js +15 -94
  125. package/dist/es/standards-sdk.es102.js.map +1 -1
  126. package/dist/es/standards-sdk.es103.js +80 -30
  127. package/dist/es/standards-sdk.es103.js.map +1 -1
  128. package/dist/es/standards-sdk.es104.js +27 -80
  129. package/dist/es/standards-sdk.es104.js.map +1 -1
  130. package/dist/es/standards-sdk.es105.js +136 -25
  131. package/dist/es/standards-sdk.es105.js.map +1 -1
  132. package/dist/es/standards-sdk.es106.js +27 -140
  133. package/dist/es/standards-sdk.es106.js.map +1 -1
  134. package/dist/es/standards-sdk.es107.js +20 -27
  135. package/dist/es/standards-sdk.es107.js.map +1 -1
  136. package/dist/es/standards-sdk.es108.js +156 -18
  137. package/dist/es/standards-sdk.es108.js.map +1 -1
  138. package/dist/es/standards-sdk.es109.js +198 -148
  139. package/dist/es/standards-sdk.es109.js.map +1 -1
  140. package/dist/es/standards-sdk.es11.js +121 -45
  141. package/dist/es/standards-sdk.es11.js.map +1 -1
  142. package/dist/es/standards-sdk.es110.js +747 -166
  143. package/dist/es/standards-sdk.es110.js.map +1 -1
  144. package/dist/es/standards-sdk.es111.js +9 -786
  145. package/dist/es/standards-sdk.es111.js.map +1 -1
  146. package/dist/es/standards-sdk.es112.js +567 -13
  147. package/dist/es/standards-sdk.es112.js.map +1 -1
  148. package/dist/es/standards-sdk.es113.js +576 -541
  149. package/dist/es/standards-sdk.es113.js.map +1 -1
  150. package/dist/es/standards-sdk.es114.js +12 -601
  151. package/dist/es/standards-sdk.es114.js.map +1 -1
  152. package/dist/es/standards-sdk.es115.js +2 -13
  153. package/dist/es/standards-sdk.es115.js.map +1 -1
  154. package/dist/es/standards-sdk.es116.js +87 -2
  155. package/dist/es/standards-sdk.es116.js.map +1 -1
  156. package/dist/es/standards-sdk.es117.js +37 -80
  157. package/dist/es/standards-sdk.es117.js.map +1 -1
  158. package/dist/es/standards-sdk.es118.js +2 -39
  159. package/dist/es/standards-sdk.es118.js.map +1 -1
  160. package/dist/es/standards-sdk.es119.js +231 -2
  161. package/dist/es/standards-sdk.es119.js.map +1 -1
  162. package/dist/es/standards-sdk.es12.js +60 -159
  163. package/dist/es/standards-sdk.es12.js.map +1 -1
  164. package/dist/es/standards-sdk.es120.js +1110 -193
  165. package/dist/es/standards-sdk.es120.js.map +1 -1
  166. package/dist/es/standards-sdk.es121.js +225 -1059
  167. package/dist/es/standards-sdk.es121.js.map +1 -1
  168. package/dist/es/standards-sdk.es122.js +419 -303
  169. package/dist/es/standards-sdk.es122.js.map +1 -1
  170. package/dist/es/standards-sdk.es123.js +351 -418
  171. package/dist/es/standards-sdk.es123.js.map +1 -1
  172. package/dist/es/standards-sdk.es124.js +1109 -347
  173. package/dist/es/standards-sdk.es124.js.map +1 -1
  174. package/dist/es/standards-sdk.es125.js +182 -854
  175. package/dist/es/standards-sdk.es125.js.map +1 -1
  176. package/dist/es/standards-sdk.es126.js +1512 -153
  177. package/dist/es/standards-sdk.es126.js.map +1 -1
  178. package/dist/es/standards-sdk.es127.js +157 -1547
  179. package/dist/es/standards-sdk.es127.js.map +1 -1
  180. package/dist/es/standards-sdk.es128.js +192 -162
  181. package/dist/es/standards-sdk.es128.js.map +1 -1
  182. package/dist/es/standards-sdk.es129.js +61 -164
  183. package/dist/es/standards-sdk.es129.js.map +1 -1
  184. package/dist/es/standards-sdk.es13.js +200 -60
  185. package/dist/es/standards-sdk.es13.js.map +1 -1
  186. package/dist/es/standards-sdk.es130.js +102 -85
  187. package/dist/es/standards-sdk.es130.js.map +1 -1
  188. package/dist/es/standards-sdk.es131.js +222 -96
  189. package/dist/es/standards-sdk.es131.js.map +1 -1
  190. package/dist/es/standards-sdk.es132.js +153 -220
  191. package/dist/es/standards-sdk.es132.js.map +1 -1
  192. package/dist/es/standards-sdk.es133.js +104 -162
  193. package/dist/es/standards-sdk.es133.js.map +1 -1
  194. package/dist/es/standards-sdk.es134.js +296 -92
  195. package/dist/es/standards-sdk.es134.js.map +1 -1
  196. package/dist/es/standards-sdk.es135.js +432 -294
  197. package/dist/es/standards-sdk.es135.js.map +1 -1
  198. package/dist/es/standards-sdk.es136.js +14 -363
  199. package/dist/es/standards-sdk.es136.js.map +1 -1
  200. package/dist/es/standards-sdk.es137.js +79 -15
  201. package/dist/es/standards-sdk.es137.js.map +1 -1
  202. package/dist/es/standards-sdk.es138.js +79 -59
  203. package/dist/es/standards-sdk.es138.js.map +1 -1
  204. package/dist/es/standards-sdk.es139.js +53 -80
  205. package/dist/es/standards-sdk.es139.js.map +1 -1
  206. package/dist/es/standards-sdk.es14.js +149 -178
  207. package/dist/es/standards-sdk.es14.js.map +1 -1
  208. package/dist/es/standards-sdk.es140.js +1 -1
  209. package/dist/es/standards-sdk.es142.js +1 -1
  210. package/dist/es/standards-sdk.es143.js +1 -1
  211. package/dist/es/standards-sdk.es144.js +30 -28
  212. package/dist/es/standards-sdk.es144.js.map +1 -1
  213. package/dist/es/standards-sdk.es145.js +34 -138
  214. package/dist/es/standards-sdk.es145.js.map +1 -1
  215. package/dist/es/standards-sdk.es146.js +28 -42
  216. package/dist/es/standards-sdk.es146.js.map +1 -1
  217. package/dist/es/standards-sdk.es147.js +105 -12256
  218. package/dist/es/standards-sdk.es147.js.map +1 -1
  219. package/dist/es/standards-sdk.es148.js +40 -15
  220. package/dist/es/standards-sdk.es148.js.map +1 -1
  221. package/dist/es/standards-sdk.es149.js +959 -56
  222. package/dist/es/standards-sdk.es149.js.map +1 -1
  223. package/dist/es/standards-sdk.es15.js +152 -151
  224. package/dist/es/standards-sdk.es15.js.map +1 -1
  225. package/dist/es/standards-sdk.es150.js +12264 -57
  226. package/dist/es/standards-sdk.es150.js.map +1 -1
  227. package/dist/es/standards-sdk.es151.js +51 -167
  228. package/dist/es/standards-sdk.es151.js.map +1 -1
  229. package/dist/es/standards-sdk.es152.js +70 -308
  230. package/dist/es/standards-sdk.es152.js.map +1 -1
  231. package/dist/es/standards-sdk.es153.js +13 -342
  232. package/dist/es/standards-sdk.es153.js.map +1 -1
  233. package/dist/es/standards-sdk.es154.js +129 -410
  234. package/dist/es/standards-sdk.es154.js.map +1 -1
  235. package/dist/es/standards-sdk.es155.js +200 -209
  236. package/dist/es/standards-sdk.es155.js.map +1 -1
  237. package/dist/es/standards-sdk.es156.js +334 -64
  238. package/dist/es/standards-sdk.es156.js.map +1 -1
  239. package/dist/es/standards-sdk.es157.js +453 -871
  240. package/dist/es/standards-sdk.es157.js.map +1 -1
  241. package/dist/es/standards-sdk.es158.js +314 -222
  242. package/dist/es/standards-sdk.es158.js.map +1 -1
  243. package/dist/es/standards-sdk.es159.js +60 -228
  244. package/dist/es/standards-sdk.es159.js.map +1 -1
  245. package/dist/es/standards-sdk.es16.js +917 -136
  246. package/dist/es/standards-sdk.es16.js.map +1 -1
  247. package/dist/es/standards-sdk.es160.js +242 -0
  248. package/dist/es/standards-sdk.es160.js.map +1 -0
  249. package/dist/es/standards-sdk.es161.js +247 -0
  250. package/dist/es/standards-sdk.es161.js.map +1 -0
  251. package/dist/es/standards-sdk.es17.js +23 -944
  252. package/dist/es/standards-sdk.es17.js.map +1 -1
  253. package/dist/es/standards-sdk.es18.js +2422 -24
  254. package/dist/es/standards-sdk.es18.js.map +1 -1
  255. package/dist/es/standards-sdk.es19.js +817 -2071
  256. package/dist/es/standards-sdk.es19.js.map +1 -1
  257. package/dist/es/standards-sdk.es2.js +654 -189
  258. package/dist/es/standards-sdk.es2.js.map +1 -1
  259. package/dist/es/standards-sdk.es20.js +205 -1091
  260. package/dist/es/standards-sdk.es20.js.map +1 -1
  261. package/dist/es/standards-sdk.es21.js +858 -221
  262. package/dist/es/standards-sdk.es21.js.map +1 -1
  263. package/dist/es/standards-sdk.es22.js +179 -903
  264. package/dist/es/standards-sdk.es22.js.map +1 -1
  265. package/dist/es/standards-sdk.es23.js +164 -179
  266. package/dist/es/standards-sdk.es23.js.map +1 -1
  267. package/dist/es/standards-sdk.es24.js +62 -118
  268. package/dist/es/standards-sdk.es24.js.map +1 -1
  269. package/dist/es/standards-sdk.es25.js +377 -52
  270. package/dist/es/standards-sdk.es25.js.map +1 -1
  271. package/dist/es/standards-sdk.es26.js +36 -394
  272. package/dist/es/standards-sdk.es26.js.map +1 -1
  273. package/dist/es/standards-sdk.es27.js +901 -50
  274. package/dist/es/standards-sdk.es27.js.map +1 -1
  275. package/dist/es/standards-sdk.es28.js +134 -902
  276. package/dist/es/standards-sdk.es28.js.map +1 -1
  277. package/dist/es/standards-sdk.es29.js +7 -134
  278. package/dist/es/standards-sdk.es29.js.map +1 -1
  279. package/dist/es/standards-sdk.es3.js +63 -680
  280. package/dist/es/standards-sdk.es3.js.map +1 -1
  281. package/dist/es/standards-sdk.es30.js +344 -7
  282. package/dist/es/standards-sdk.es30.js.map +1 -1
  283. package/dist/es/standards-sdk.es31.js +302 -287
  284. package/dist/es/standards-sdk.es31.js.map +1 -1
  285. package/dist/es/standards-sdk.es32.js +94 -322
  286. package/dist/es/standards-sdk.es32.js.map +1 -1
  287. package/dist/es/standards-sdk.es33.js +458 -101
  288. package/dist/es/standards-sdk.es33.js.map +1 -1
  289. package/dist/es/standards-sdk.es34.js +132 -451
  290. package/dist/es/standards-sdk.es34.js.map +1 -1
  291. package/dist/es/standards-sdk.es35.js +216 -130
  292. package/dist/es/standards-sdk.es35.js.map +1 -1
  293. package/dist/es/standards-sdk.es36.js +273 -195
  294. package/dist/es/standards-sdk.es36.js.map +1 -1
  295. package/dist/es/standards-sdk.es37.js +148 -87
  296. package/dist/es/standards-sdk.es37.js.map +1 -1
  297. package/dist/es/standards-sdk.es38.js +183 -320
  298. package/dist/es/standards-sdk.es38.js.map +1 -1
  299. package/dist/es/standards-sdk.es39.js +238 -161
  300. package/dist/es/standards-sdk.es39.js.map +1 -1
  301. package/dist/es/standards-sdk.es4.js +425 -63
  302. package/dist/es/standards-sdk.es4.js.map +1 -1
  303. package/dist/es/standards-sdk.es40.js +136 -254
  304. package/dist/es/standards-sdk.es40.js.map +1 -1
  305. package/dist/es/standards-sdk.es41.js +225 -176
  306. package/dist/es/standards-sdk.es41.js.map +1 -1
  307. package/dist/es/standards-sdk.es42.js +199 -261
  308. package/dist/es/standards-sdk.es42.js.map +1 -1
  309. package/dist/es/standards-sdk.es43.js +237 -199
  310. package/dist/es/standards-sdk.es43.js.map +1 -1
  311. package/dist/es/standards-sdk.es44.js +209 -201
  312. package/dist/es/standards-sdk.es44.js.map +1 -1
  313. package/dist/es/standards-sdk.es45.js +305 -201
  314. package/dist/es/standards-sdk.es45.js.map +1 -1
  315. package/dist/es/standards-sdk.es46.js +371 -261
  316. package/dist/es/standards-sdk.es46.js.map +1 -1
  317. package/dist/es/standards-sdk.es47.js +316 -371
  318. package/dist/es/standards-sdk.es47.js.map +1 -1
  319. package/dist/es/standards-sdk.es48.js +404 -336
  320. package/dist/es/standards-sdk.es48.js.map +1 -1
  321. package/dist/es/standards-sdk.es49.js +83 -449
  322. package/dist/es/standards-sdk.es49.js.map +1 -1
  323. package/dist/es/standards-sdk.es5.js +232 -354
  324. package/dist/es/standards-sdk.es5.js.map +1 -1
  325. package/dist/es/standards-sdk.es50.js +179 -89
  326. package/dist/es/standards-sdk.es50.js.map +1 -1
  327. package/dist/es/standards-sdk.es51.js +231 -165
  328. package/dist/es/standards-sdk.es51.js.map +1 -1
  329. package/dist/es/standards-sdk.es52.js +25 -262
  330. package/dist/es/standards-sdk.es52.js.map +1 -1
  331. package/dist/es/standards-sdk.es53.js +56 -26
  332. package/dist/es/standards-sdk.es53.js.map +1 -1
  333. package/dist/es/standards-sdk.es54.js +12 -57
  334. package/dist/es/standards-sdk.es54.js.map +1 -1
  335. package/dist/es/standards-sdk.es55.js +49 -12
  336. package/dist/es/standards-sdk.es55.js.map +1 -1
  337. package/dist/es/standards-sdk.es56.js +115 -43
  338. package/dist/es/standards-sdk.es56.js.map +1 -1
  339. package/dist/es/standards-sdk.es57.js +42 -115
  340. package/dist/es/standards-sdk.es57.js.map +1 -1
  341. package/dist/es/standards-sdk.es58.js +52 -43
  342. package/dist/es/standards-sdk.es58.js.map +1 -1
  343. package/dist/es/standards-sdk.es59.js +36 -50
  344. package/dist/es/standards-sdk.es59.js.map +1 -1
  345. package/dist/es/standards-sdk.es6.js +125 -246
  346. package/dist/es/standards-sdk.es6.js.map +1 -1
  347. package/dist/es/standards-sdk.es60.js +207 -39
  348. package/dist/es/standards-sdk.es60.js.map +1 -1
  349. package/dist/es/standards-sdk.es61.js +24 -200
  350. package/dist/es/standards-sdk.es61.js.map +1 -1
  351. package/dist/es/standards-sdk.es62.js +87 -25
  352. package/dist/es/standards-sdk.es62.js.map +1 -1
  353. package/dist/es/standards-sdk.es63.js +3 -51
  354. package/dist/es/standards-sdk.es63.js.map +1 -1
  355. package/dist/es/standards-sdk.es64.js +100 -3
  356. package/dist/es/standards-sdk.es64.js.map +1 -1
  357. package/dist/es/standards-sdk.es65.js +61 -62
  358. package/dist/es/standards-sdk.es65.js.map +1 -1
  359. package/dist/es/standards-sdk.es66.js +17 -98
  360. package/dist/es/standards-sdk.es66.js.map +1 -1
  361. package/dist/es/standards-sdk.es67.js +77 -19
  362. package/dist/es/standards-sdk.es67.js.map +1 -1
  363. package/dist/es/standards-sdk.es68.js +458 -77
  364. package/dist/es/standards-sdk.es68.js.map +1 -1
  365. package/dist/es/standards-sdk.es69.js +106 -240
  366. package/dist/es/standards-sdk.es69.js.map +1 -1
  367. package/dist/es/standards-sdk.es7.js +28 -183
  368. package/dist/es/standards-sdk.es7.js.map +1 -1
  369. package/dist/es/standards-sdk.es70.js +170 -286
  370. package/dist/es/standards-sdk.es70.js.map +1 -1
  371. package/dist/es/standards-sdk.es71.js +71 -207
  372. package/dist/es/standards-sdk.es71.js.map +1 -1
  373. package/dist/es/standards-sdk.es72.js +71 -72
  374. package/dist/es/standards-sdk.es72.js.map +1 -1
  375. package/dist/es/standards-sdk.es73.js +143 -71
  376. package/dist/es/standards-sdk.es73.js.map +1 -1
  377. package/dist/es/standards-sdk.es74.js +62 -136
  378. package/dist/es/standards-sdk.es74.js.map +1 -1
  379. package/dist/es/standards-sdk.es75.js +380 -45
  380. package/dist/es/standards-sdk.es75.js.map +1 -1
  381. package/dist/es/standards-sdk.es76.js +222 -130
  382. package/dist/es/standards-sdk.es76.js.map +1 -1
  383. package/dist/es/standards-sdk.es77.js +320 -444
  384. package/dist/es/standards-sdk.es77.js.map +1 -1
  385. package/dist/es/standards-sdk.es78.js +88 -370
  386. package/dist/es/standards-sdk.es78.js.map +1 -1
  387. package/dist/es/standards-sdk.es79.js +125 -89
  388. package/dist/es/standards-sdk.es79.js.map +1 -1
  389. package/dist/es/standards-sdk.es8.js +80 -29
  390. package/dist/es/standards-sdk.es8.js.map +1 -1
  391. package/dist/es/standards-sdk.es80.js +8 -125
  392. package/dist/es/standards-sdk.es80.js.map +1 -1
  393. package/dist/es/standards-sdk.es81.js +45 -6
  394. package/dist/es/standards-sdk.es81.js.map +1 -1
  395. package/dist/es/standards-sdk.es82.js +98 -44
  396. package/dist/es/standards-sdk.es82.js.map +1 -1
  397. package/dist/es/standards-sdk.es83.js +331 -84
  398. package/dist/es/standards-sdk.es83.js.map +1 -1
  399. package/dist/es/standards-sdk.es84.js +93 -160
  400. package/dist/es/standards-sdk.es84.js.map +1 -1
  401. package/dist/es/standards-sdk.es85.js +55 -275
  402. package/dist/es/standards-sdk.es85.js.map +1 -1
  403. package/dist/es/standards-sdk.es86.js +43 -55
  404. package/dist/es/standards-sdk.es86.js.map +1 -1
  405. package/dist/es/standards-sdk.es87.js +145 -22
  406. package/dist/es/standards-sdk.es87.js.map +1 -1
  407. package/dist/es/standards-sdk.es88.js +34 -47
  408. package/dist/es/standards-sdk.es88.js.map +1 -1
  409. package/dist/es/standards-sdk.es89.js +22 -57
  410. package/dist/es/standards-sdk.es89.js.map +1 -1
  411. package/dist/es/standards-sdk.es9.js +104 -80
  412. package/dist/es/standards-sdk.es9.js.map +1 -1
  413. package/dist/es/standards-sdk.es90.js +23 -28
  414. package/dist/es/standards-sdk.es90.js.map +1 -1
  415. package/dist/es/standards-sdk.es91.js +238 -23
  416. package/dist/es/standards-sdk.es91.js.map +1 -1
  417. package/dist/es/standards-sdk.es92.js +265 -152
  418. package/dist/es/standards-sdk.es92.js.map +1 -1
  419. package/dist/es/standards-sdk.es93.js +95 -68
  420. package/dist/es/standards-sdk.es93.js.map +1 -1
  421. package/dist/es/standards-sdk.es94.js +124 -136
  422. package/dist/es/standards-sdk.es94.js.map +1 -1
  423. package/dist/es/standards-sdk.es95.js +42 -138
  424. package/dist/es/standards-sdk.es95.js.map +1 -1
  425. package/dist/es/standards-sdk.es96.js +259 -42
  426. package/dist/es/standards-sdk.es96.js.map +1 -1
  427. package/dist/es/standards-sdk.es97.js +82 -243
  428. package/dist/es/standards-sdk.es97.js.map +1 -1
  429. package/dist/es/standards-sdk.es98.js +48 -47
  430. package/dist/es/standards-sdk.es98.js.map +1 -1
  431. package/dist/es/standards-sdk.es99.js +29 -100
  432. package/dist/es/standards-sdk.es99.js.map +1 -1
  433. package/dist/es/utils/crypto-abstraction.d.ts.map +1 -1
  434. package/dist/es/utils/crypto-env.d.ts.map +1 -1
  435. package/dist/es/utils/dynamic-import.d.ts +5 -1
  436. package/dist/es/utils/dynamic-import.d.ts.map +1 -1
  437. package/dist/es/utils/hash-adapter.d.ts.map +1 -1
  438. package/package.json +36 -13
  439. package/dist/cjs/patches/topic-autorenew-patch.d.ts +0 -2
  440. package/dist/cjs/patches/topic-autorenew-patch.d.ts.map +0 -1
  441. package/dist/es/patches/topic-autorenew-patch.d.ts +0 -2
  442. package/dist/es/patches/topic-autorenew-patch.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es76.js","sources":["../../src/hcs-20/browser.ts"],"sourcesContent":["/**\n * Browser implementation of HCS-20 client using Hashinals WalletConnect\n */\n\nimport {\n TopicId,\n TopicCreateTransaction,\n TopicMessageSubmitTransaction,\n TransactionReceipt,\n Hbar,\n AccountId,\n} from '@hashgraph/sdk';\nimport { HashinalsWalletConnectSDK } from '@hashgraphonline/hashinal-wc';\nimport { HCS20BaseClient } from './base-client';\nimport {\n DeployPointsOptions,\n MintPointsOptions,\n TransferPointsOptions,\n BurnPointsOptions,\n RegisterTopicOptions,\n PointsInfo,\n PointsTransaction,\n HCS20DeployMessage,\n HCS20MintMessage,\n HCS20TransferMessage,\n HCS20BurnMessage,\n HCS20RegisterMessage,\n} from './types';\nimport {\n PointsDeploymentError,\n TopicRegistrationError,\n PointsValidationError,\n} from './errors';\nimport { BrowserHCS2Client } from '../hcs-2/browser';\n\n/**\n * Browser-specific HCS-20 client configuration\n */\nexport interface BrowserHCS20Config {\n network: 'mainnet' | 'testnet';\n hwc: HashinalsWalletConnectSDK;\n mirrorNodeUrl?: string;\n logger?: any;\n registryTopicId?: string;\n publicTopicId?: string;\n feeAmount?: number;\n}\n\n/**\n * Browser HCS-20 client for managing auditable points\n */\nexport class BrowserHCS20Client extends HCS20BaseClient {\n private hwc: HashinalsWalletConnectSDK;\n private feeAmount: number;\n\n constructor(config: BrowserHCS20Config) {\n super({\n network: config.network,\n logger: config.logger,\n mirrorNodeUrl: config.mirrorNodeUrl,\n registryTopicId: config.registryTopicId,\n publicTopicId: config.publicTopicId,\n });\n\n this.hwc = config.hwc;\n this.feeAmount = config.feeAmount || 20;\n }\n\n /**\n * Get operator account ID\n */\n private getOperatorId(): string {\n const accountInfo = this.hwc.getAccountInfo();\n if (!accountInfo?.accountId) {\n throw new Error('Wallet not connected');\n }\n return accountInfo.accountId;\n }\n\n async createRegistryTopic(): Promise<string> {\n const hcs2Client = new BrowserHCS2Client({\n hwc: this.hwc,\n network: this.network,\n });\n\n const topicCreateResponse = await hcs2Client.createRegistry();\n\n if (!topicCreateResponse.success) {\n throw new Error('Failed to create topic');\n }\n\n return topicCreateResponse.topicId;\n }\n\n /**\n * Deploy new points\n */\n async deployPoints(options: DeployPointsOptions): Promise<PointsInfo> {\n const operatorId = this.getOperatorId();\n const { progressCallback } = options;\n\n try {\n progressCallback?.({\n stage: 'creating-topic',\n percentage: 20,\n });\n\n let topicId: string;\n\n if (options.usePrivateTopic) {\n const publicKey = await this.mirrorNode.getPublicKey(operatorId);\n\n const hcs2Client = new BrowserHCS2Client({\n hwc: this.hwc,\n network: this.network,\n });\n\n const topicCreateResponse = await hcs2Client.createRegistry({\n submitKey: publicKey.toString(),\n adminKey: publicKey.toString(),\n });\n\n if (!topicCreateResponse.success) {\n throw new Error('Failed to create topic');\n }\n\n topicId = topicCreateResponse.topicId;\n this.logger.info(`Created private topic: ${topicId}`);\n } else {\n topicId = this.publicTopicId;\n }\n\n progressCallback?.({\n stage: 'submitting-deploy',\n percentage: 50,\n topicId,\n });\n\n const deployMessage: HCS20DeployMessage = {\n p: 'hcs-20',\n op: 'deploy',\n name: options.name,\n tick: this.normalizeTick(options.tick),\n max: options.maxSupply,\n lim: options.limitPerMint,\n metadata: options.metadata,\n m: options.topicMemo,\n };\n\n const validation = this.validateMessage(deployMessage);\n if (!validation.valid) {\n throw new PointsValidationError(\n 'Invalid deploy message',\n validation.errors!,\n );\n }\n\n const deployResult = await this.submitPayload(\n topicId,\n deployMessage,\n options.usePrivateTopic,\n );\n\n const deployTxId =\n (deployResult as any).transactionHash?.toString() || '';\n\n progressCallback?.({\n stage: 'confirming',\n percentage: 80,\n topicId,\n deployTxId,\n });\n\n await new Promise(resolve => setTimeout(resolve, 2000));\n\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n topicId,\n deployTxId,\n });\n\n return {\n name: options.name,\n tick: this.normalizeTick(options.tick),\n maxSupply: options.maxSupply,\n limitPerMint: options.limitPerMint,\n metadata: options.metadata,\n topicId,\n deployerAccountId: operatorId,\n currentSupply: '0',\n deploymentTimestamp: new Date().toISOString(),\n isPrivate: options.usePrivateTopic || false,\n };\n } catch (error) {\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n error: error instanceof Error ? error.message : 'Unknown error',\n });\n throw error;\n }\n }\n\n /**\n * Mint points\n */\n async mintPoints(options: MintPointsOptions): Promise<PointsTransaction> {\n const { progressCallback } = options;\n\n try {\n progressCallback?.({\n stage: 'validating',\n percentage: 20,\n });\n\n progressCallback?.({\n stage: 'submitting',\n percentage: 50,\n });\n\n const mintMessage: HCS20MintMessage = {\n p: 'hcs-20',\n op: 'mint',\n tick: this.normalizeTick(options.tick),\n amt: options.amount,\n to: this.accountToString(options.to),\n m: options.memo,\n };\n\n const topicId = (options as any).topicId || this.publicTopicId;\n const mintResult = await this.submitPayload(topicId, mintMessage, false);\n\n const mintTxId = (mintResult as any).transactionHash?.toString() || '';\n\n progressCallback?.({\n stage: 'confirming',\n percentage: 80,\n mintTxId,\n });\n\n await new Promise(resolve => setTimeout(resolve, 2000));\n\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n mintTxId,\n });\n\n return {\n id: mintTxId,\n operation: 'mint',\n tick: this.normalizeTick(options.tick),\n amount: options.amount,\n to: this.accountToString(options.to),\n timestamp: new Date().toISOString(),\n sequenceNumber: 0,\n topicId,\n transactionId: mintTxId,\n memo: options.memo,\n };\n } catch (error) {\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n error: error instanceof Error ? error.message : 'Unknown error',\n });\n throw error;\n }\n }\n\n /**\n * Transfer points\n */\n async transferPoints(\n options: TransferPointsOptions,\n ): Promise<PointsTransaction> {\n const { progressCallback } = options;\n\n try {\n progressCallback?.({\n stage: 'validating-balance',\n percentage: 20,\n });\n\n progressCallback?.({\n stage: 'submitting',\n percentage: 50,\n });\n\n const transferMessage: HCS20TransferMessage = {\n p: 'hcs-20',\n op: 'transfer',\n tick: this.normalizeTick(options.tick),\n amt: options.amount,\n from: this.accountToString(options.from),\n to: this.accountToString(options.to),\n m: options.memo,\n };\n\n const topicId = (options as any).topicId || this.publicTopicId;\n const transferResult = await this.submitPayload(\n topicId,\n transferMessage,\n false,\n );\n\n const transferTxId =\n (transferResult as any).transactionHash?.toString() || '';\n\n progressCallback?.({\n stage: 'confirming',\n percentage: 80,\n transferTxId,\n });\n\n await new Promise(resolve => setTimeout(resolve, 2000));\n\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n transferTxId,\n });\n\n return {\n id: transferTxId,\n operation: 'transfer',\n tick: this.normalizeTick(options.tick),\n amount: options.amount,\n from: this.accountToString(options.from),\n to: this.accountToString(options.to),\n timestamp: new Date().toISOString(),\n sequenceNumber: 0,\n topicId,\n transactionId: transferTxId,\n memo: options.memo,\n };\n } catch (error) {\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n error: error instanceof Error ? error.message : 'Unknown error',\n });\n throw error;\n }\n }\n\n /**\n * Burn points\n */\n async burnPoints(options: BurnPointsOptions): Promise<PointsTransaction> {\n const { progressCallback } = options;\n\n try {\n progressCallback?.({\n stage: 'validating-balance',\n percentage: 20,\n });\n\n progressCallback?.({\n stage: 'submitting',\n percentage: 50,\n });\n\n const burnMessage: HCS20BurnMessage = {\n p: 'hcs-20',\n op: 'burn',\n tick: this.normalizeTick(options.tick),\n amt: options.amount,\n from: this.accountToString(options.from),\n m: options.memo,\n };\n\n const topicId = (options as any).topicId || this.publicTopicId;\n const burnResult = await this.submitPayload(topicId, burnMessage, false);\n\n const burnTxId = (burnResult as any).transactionHash?.toString() || '';\n\n progressCallback?.({\n stage: 'confirming',\n percentage: 80,\n burnTxId,\n });\n\n await new Promise(resolve => setTimeout(resolve, 2000));\n\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n burnTxId,\n });\n\n return {\n id: burnTxId,\n operation: 'burn',\n tick: this.normalizeTick(options.tick),\n amount: options.amount,\n from: this.accountToString(options.from),\n timestamp: new Date().toISOString(),\n sequenceNumber: 0,\n topicId,\n transactionId: burnTxId,\n memo: options.memo,\n };\n } catch (error) {\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n error: error instanceof Error ? error.message : 'Unknown error',\n });\n throw error;\n }\n }\n\n /**\n * Register a topic in the registry\n */\n async registerTopic(options: RegisterTopicOptions): Promise<void> {\n const { progressCallback } = options;\n\n try {\n progressCallback?.({\n stage: 'validating',\n percentage: 20,\n });\n\n const registerMessage: HCS20RegisterMessage = {\n p: 'hcs-20',\n op: 'register',\n name: options.name,\n metadata: options.metadata,\n private: options.isPrivate,\n t_id: this.topicToString(options.topicId),\n m: options.memo,\n };\n\n const validation = this.validateMessage(registerMessage);\n if (!validation.valid) {\n throw new PointsValidationError(\n 'Invalid register message',\n validation.errors!,\n );\n }\n\n progressCallback?.({\n stage: 'submitting',\n percentage: 50,\n });\n\n const registerResult = await this.submitPayload(\n this.registryTopicId,\n registerMessage,\n false,\n );\n\n const registerTxId =\n (registerResult as any).transactionHash?.toString() || '';\n\n progressCallback?.({\n stage: 'confirming',\n percentage: 80,\n registerTxId,\n });\n\n await new Promise(resolve => setTimeout(resolve, 2000));\n\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n registerTxId,\n });\n } catch (error) {\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n error: error instanceof Error ? error.message : 'Unknown error',\n });\n throw new TopicRegistrationError(\n error instanceof Error ? error.message : 'Unknown error',\n this.topicToString(options.topicId),\n );\n }\n }\n\n /**\n * Submit payload to topic using HWC\n */\n private async submitPayload(\n topicId: string,\n payload: object | string,\n requiresFee?: boolean,\n ): Promise<TransactionReceipt> {\n this.logger.debug(`Submitting payload to topic ${topicId}`);\n\n let message: string;\n if (typeof payload === 'string') {\n message = payload;\n } else {\n message = JSON.stringify(payload);\n }\n\n const transaction = new TopicMessageSubmitTransaction()\n .setTopicId(TopicId.fromString(topicId))\n .setMessage(message);\n\n if (requiresFee) {\n this.logger.info(\n 'Topic requires fee payment, setting max transaction fee',\n );\n transaction.setMaxTransactionFee(new Hbar(this.feeAmount));\n }\n\n const transactionResponse =\n await this.hwc.executeTransactionWithErrorHandling(\n transaction as any,\n false,\n );\n\n if (transactionResponse?.error) {\n this.logger.error(\n `Failed to submit payload: ${transactionResponse.error}`,\n );\n throw new Error(`Failed to submit payload: ${transactionResponse.error}`);\n }\n\n if (!transactionResponse?.result) {\n this.logger.error(\n 'Failed to submit message: receipt is null or undefined',\n );\n throw new Error('Failed to submit message: receipt is null or undefined');\n }\n\n this.logger.debug('Payload submitted successfully via HWC');\n return transactionResponse.result;\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standards-sdk.es76.js","sources":["../../src/hcs-20/sdk.ts"],"sourcesContent":["/**\n * SDK implementation of HCS-20 client for server-side usage\n */\n\nimport {\n AccountId,\n TopicCreateTransaction,\n TopicMessageSubmitTransaction,\n PrivateKey,\n Client,\n TransactionReceipt,\n TransactionResponse,\n Status,\n} from '@hashgraph/sdk';\nimport { HCS20BaseClient } from './base-client';\nimport {\n SDKHCS20ClientConfig,\n DeployPointsOptions,\n MintPointsOptions,\n TransferPointsOptions,\n BurnPointsOptions,\n RegisterTopicOptions,\n PointsInfo,\n PointsTransaction,\n HCS20DeployMessage,\n HCS20RegisterMessage,\n} from './types';\nimport {\n PointsDeploymentError,\n PointsTransferError,\n PointsBurnError,\n PointsValidationError,\n} from './errors';\nimport { sleep } from '../utils/sleep';\nimport {\n createNodeOperatorContext,\n type NodeOperatorContext,\n} from '../common/node-operator-resolver';\nimport { HCS2Client } from '../hcs-2/client';\nimport {\n buildHcs20DeployTx,\n buildHcs20MintTx,\n buildHcs20TransferTx,\n buildHcs20BurnTx,\n buildHcs20RegisterTx,\n} from './tx';\n\n/**\n * SDK-specific HCS-20 client for server-side operations\n */\nexport class HCS20Client extends HCS20BaseClient {\n private client: Client;\n private operatorAccountId: AccountId;\n private operatorId: string;\n private operatorCtx: NodeOperatorContext;\n\n constructor(config: SDKHCS20ClientConfig) {\n super(config);\n\n this.operatorAccountId =\n typeof config.operatorId === 'string'\n ? AccountId.fromString(config.operatorId)\n : config.operatorId;\n this.operatorId = this.operatorAccountId.toString();\n\n const baseClient =\n this.network === 'mainnet' ? Client.forMainnet() : Client.forTestnet();\n\n this.operatorCtx = createNodeOperatorContext({\n network: this.network,\n operatorId: this.operatorId,\n operatorKey: config.operatorKey,\n keyType: config.keyType,\n mirrorNode: this.mirrorNode,\n logger: this.logger,\n client: baseClient,\n });\n\n this.client = this.operatorCtx.client;\n void this.operatorCtx.ensureInitialized();\n }\n\n /**\n * Ensure operator is initialized before operations\n */\n private async ensureInitialized(): Promise<void> {\n await this.operatorCtx.ensureInitialized();\n }\n\n /**\n * Submit a payload to a topic\n */\n private async submitPayload(\n transaction: TopicMessageSubmitTransaction,\n submitKey?: PrivateKey,\n ): Promise<{ receipt: TransactionReceipt; transactionId: string }> {\n let transactionResponse: TransactionResponse;\n if (submitKey) {\n const frozenTransaction = transaction.freezeWith(this.client);\n const signedTransaction = await frozenTransaction.sign(submitKey);\n transactionResponse = await signedTransaction.execute(this.client);\n } else {\n transactionResponse = await transaction.execute(this.client);\n }\n\n const receipt = await transactionResponse.getReceipt(this.client);\n if (!receipt || receipt.status !== Status.Success) {\n throw new Error('Failed to submit message to topic');\n }\n\n return {\n receipt,\n transactionId: transactionResponse.transactionId!.toString(),\n };\n }\n\n /**\n * Create a public topic for HCS-20 (for testnet)\n */\n async createPublicTopic(memo?: string): Promise<string> {\n await this.ensureInitialized();\n\n this.logger.info('Creating public HCS-20 topic...');\n\n const topicCreateTx = await new TopicCreateTransaction()\n .setTopicMemo(memo || 'HCS-20 Public Topic')\n .execute(this.client);\n\n const receipt = await topicCreateTx.getReceipt(this.client);\n if (receipt.status !== Status.Success || !receipt.topicId) {\n throw new Error('Failed to create public topic');\n }\n\n const topicId = receipt.topicId.toString();\n this.logger.info(`Created public topic: ${topicId}`);\n\n this.publicTopicId = topicId;\n\n return topicId;\n }\n\n /**\n * Create a registry topic for HCS-20\n */\n async createRegistryTopic(): Promise<string> {\n await this.ensureInitialized();\n\n this.logger.info('Creating HCS-20 registry topic...');\n\n const hcs2Client = new HCS2Client({\n operatorId: this.operatorId,\n operatorKey: this.operatorCtx.operatorKey,\n network: this.network,\n });\n\n const topicCreateResponse = await hcs2Client.createRegistry({\n submitKey: this.operatorCtx.operatorKey,\n adminKey: this.operatorCtx.operatorKey,\n });\n\n if (!topicCreateResponse.success) {\n throw new Error('Failed to create registry topic');\n }\n\n const topicId = topicCreateResponse.topicId;\n this.logger.info(`Created registry topic: ${topicId}`);\n\n this.registryTopicId = topicId;\n\n return topicId;\n }\n\n /**\n * Deploy new points\n */\n async deployPoints(options: DeployPointsOptions): Promise<PointsInfo> {\n await this.ensureInitialized();\n const { progressCallback } = options;\n\n try {\n progressCallback?.({\n stage: 'creating-topic',\n percentage: 20,\n });\n\n let topicId: string;\n\n const hcs2Client = new HCS2Client({\n operatorId: this.operatorId,\n operatorKey: this.operatorCtx.operatorKey,\n network: this.network,\n });\n\n if (options.usePrivateTopic) {\n const topicCreateResponse = await hcs2Client.createRegistry({\n submitKey: this.operatorCtx.operatorKey,\n adminKey: this.operatorCtx.operatorKey,\n });\n\n if (!topicCreateResponse.success) {\n throw new PointsDeploymentError(\n 'Failed to create topic',\n options.tick,\n );\n }\n\n topicId = topicCreateResponse.topicId;\n this.logger.info(`Created private topic: ${topicId}`);\n } else {\n topicId = this.publicTopicId;\n }\n\n progressCallback?.({\n stage: 'submitting-deploy',\n percentage: 50,\n topicId,\n });\n\n const deployMessage: HCS20DeployMessage = {\n p: 'hcs-20',\n op: 'deploy',\n name: options.name,\n tick: this.normalizeTick(options.tick),\n max: options.maxSupply,\n lim: options.limitPerMint,\n metadata: options.metadata,\n m: options.topicMemo,\n };\n\n const validation = this.validateMessage(deployMessage);\n if (!validation.valid) {\n throw new PointsValidationError(\n 'Invalid deploy message',\n validation.errors!,\n );\n }\n\n const deployTransaction = buildHcs20DeployTx({\n topicId,\n name: options.name,\n tick: options.tick,\n max: options.maxSupply,\n lim: options.limitPerMint,\n metadata: options.metadata,\n memo: options.topicMemo,\n });\n\n const { transactionId: deployTxId } =\n await this.submitPayload(deployTransaction);\n\n progressCallback?.({\n stage: 'confirming',\n percentage: 80,\n topicId,\n deployTxId,\n });\n\n await this.waitForMirrorNodeConfirmation(topicId, deployTxId);\n\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n topicId,\n deployTxId,\n });\n\n const pointsInfo: PointsInfo = {\n name: options.name,\n tick: this.normalizeTick(options.tick),\n maxSupply: options.maxSupply,\n limitPerMint: options.limitPerMint,\n metadata: options.metadata,\n topicId,\n deployerAccountId: this.operatorId,\n currentSupply: '0',\n deploymentTimestamp: new Date().toISOString(),\n isPrivate: options.usePrivateTopic || false,\n };\n\n return pointsInfo;\n } catch (error) {\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n error: error instanceof Error ? error.message : 'Unknown error',\n });\n throw error;\n }\n }\n\n /**\n * Mint points\n */\n async mintPoints(options: MintPointsOptions): Promise<PointsTransaction> {\n await this.ensureInitialized();\n const { progressCallback } = options;\n\n try {\n progressCallback?.({\n stage: 'validating',\n percentage: 20,\n });\n\n const normalizedTick = this.normalizeTick(options.tick);\n\n progressCallback?.({\n stage: 'submitting',\n percentage: 50,\n });\n\n const topicId = options.topicId\n ? this.topicToString(options.topicId)\n : this.publicTopicId;\n const mintTransaction = buildHcs20MintTx({\n topicId,\n tick: options.tick,\n amt: options.amount,\n to: this.accountToString(options.to),\n memo: options.memo,\n });\n\n const { transactionId: mintTxId } =\n await this.submitPayload(mintTransaction);\n\n progressCallback?.({\n stage: 'confirming',\n percentage: 80,\n mintTxId,\n });\n\n if (!options.disableMirrorCheck) {\n await this.waitForMirrorNodeConfirmation(topicId, mintTxId);\n }\n\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n mintTxId,\n });\n\n const transaction: PointsTransaction = {\n id: mintTxId,\n operation: 'mint',\n tick: normalizedTick,\n amount: options.amount,\n to: this.accountToString(options.to),\n timestamp: new Date().toISOString(),\n sequenceNumber: 0,\n topicId,\n transactionId: mintTxId,\n memo: options.memo,\n };\n\n return transaction;\n } catch (error) {\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n error: error instanceof Error ? error.message : 'Unknown error',\n });\n throw error;\n }\n }\n\n /**\n * Transfer points\n */\n async transferPoints(\n options: TransferPointsOptions,\n ): Promise<PointsTransaction> {\n await this.ensureInitialized();\n const { progressCallback } = options;\n\n try {\n progressCallback?.({\n stage: 'validating-balance',\n percentage: 20,\n });\n\n const normalizedTick = this.normalizeTick(options.tick);\n const fromAccount = this.accountToString(options.from);\n const toAccount = this.accountToString(options.to);\n\n if (fromAccount !== this.operatorId) {\n throw new PointsTransferError(\n 'For public topics, transaction payer must match sender',\n options.tick,\n fromAccount,\n toAccount,\n options.amount,\n );\n }\n\n progressCallback?.({\n stage: 'submitting',\n percentage: 50,\n });\n\n const topicId = options.topicId\n ? this.topicToString(options.topicId)\n : this.publicTopicId;\n const transferTransaction = buildHcs20TransferTx({\n topicId,\n tick: options.tick,\n amt: options.amount,\n from: fromAccount,\n to: toAccount,\n memo: options.memo,\n });\n\n const { transactionId: transferTxId } =\n await this.submitPayload(transferTransaction);\n\n progressCallback?.({\n stage: 'confirming',\n percentage: 80,\n transferTxId,\n });\n\n await this.waitForMirrorNodeConfirmation(topicId, transferTxId);\n\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n transferTxId,\n });\n\n const transaction: PointsTransaction = {\n id: transferTxId,\n operation: 'transfer',\n tick: normalizedTick,\n amount: options.amount,\n from: fromAccount,\n to: toAccount,\n timestamp: new Date().toISOString(),\n sequenceNumber: 0,\n topicId,\n transactionId: transferTxId,\n memo: options.memo,\n };\n\n return transaction;\n } catch (error) {\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n error: error instanceof Error ? error.message : 'Unknown error',\n });\n throw error;\n }\n }\n\n /**\n * Burn points\n */\n async burnPoints(options: BurnPointsOptions): Promise<PointsTransaction> {\n await this.ensureInitialized();\n const { progressCallback } = options;\n\n try {\n progressCallback?.({\n stage: 'validating-balance',\n percentage: 20,\n });\n\n const normalizedTick = this.normalizeTick(options.tick);\n const fromAccount = this.accountToString(options.from);\n\n if (fromAccount !== this.operatorId) {\n throw new PointsBurnError(\n 'For public topics, transaction payer must match burner',\n options.tick,\n fromAccount,\n options.amount,\n );\n }\n\n progressCallback?.({\n stage: 'submitting',\n percentage: 50,\n });\n\n const topicId = options.topicId\n ? this.topicToString(options.topicId)\n : this.publicTopicId;\n const burnTransaction = buildHcs20BurnTx({\n topicId,\n tick: options.tick,\n amt: options.amount,\n from: fromAccount,\n memo: options.memo,\n });\n\n const { transactionId: burnTxId } =\n await this.submitPayload(burnTransaction);\n\n progressCallback?.({\n stage: 'confirming',\n percentage: 80,\n burnTxId,\n });\n\n await this.waitForMirrorNodeConfirmation(topicId, burnTxId);\n\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n burnTxId,\n });\n\n const transaction: PointsTransaction = {\n id: burnTxId,\n operation: 'burn',\n tick: normalizedTick,\n amount: options.amount,\n from: fromAccount,\n timestamp: new Date().toISOString(),\n sequenceNumber: 0,\n topicId,\n transactionId: burnTxId,\n memo: options.memo,\n };\n\n return transaction;\n } catch (error) {\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n error: error instanceof Error ? error.message : 'Unknown error',\n });\n throw error;\n }\n }\n\n /**\n * Register a topic in the registry\n */\n async registerTopic(options: RegisterTopicOptions): Promise<void> {\n await this.ensureInitialized();\n const { progressCallback } = options;\n\n try {\n progressCallback?.({\n stage: 'validating',\n percentage: 20,\n });\n\n const registerMessage: HCS20RegisterMessage = {\n p: 'hcs-20',\n op: 'register',\n name: options.name,\n metadata: options.metadata,\n private: options.isPrivate,\n t_id: this.topicToString(options.topicId),\n m: options.memo,\n };\n\n const validation = this.validateMessage(registerMessage);\n if (!validation.valid) {\n throw new PointsValidationError(\n 'Invalid register message',\n validation.errors!,\n );\n }\n\n if (!this.registryTopicId) {\n throw new PointsDeploymentError(\n 'Registry topic not available',\n options.name,\n );\n }\n\n progressCallback?.({\n stage: 'submitting',\n percentage: 50,\n });\n\n const registerTransaction = buildHcs20RegisterTx({\n registryTopicId: this.registryTopicId,\n name: options.name,\n topicId: this.topicToString(options.topicId),\n isPrivate: options.isPrivate,\n metadata: options.metadata,\n memo: options.memo,\n });\n\n const { transactionId: registerTxId } = await this.submitPayload(\n registerTransaction,\n this.operatorCtx.operatorKey,\n );\n\n progressCallback?.({\n stage: 'confirming',\n percentage: 80,\n registerTxId,\n });\n\n await this.waitForMirrorNodeConfirmation(\n this.registryTopicId,\n registerTxId,\n );\n\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n registerTxId,\n });\n\n this.logger.info(`Registered topic ${options.topicId} in registry`);\n } catch (error) {\n progressCallback?.({\n stage: 'complete',\n percentage: 100,\n error: error instanceof Error ? error.message : 'Unknown error',\n });\n throw error;\n }\n }\n\n /**\n * Wait for mirror node to index a message\n */\n private async waitForMirrorNodeConfirmation(\n topicId: string,\n transactionId: string,\n maxRetries = 10,\n ): Promise<void> {\n for (let i = 0; i < maxRetries; i++) {\n try {\n const messages = await this.mirrorNode.getTopicMessages(topicId, {\n limit: 10,\n order: 'desc',\n });\n\n const found = messages.some(message => {\n if (typeof message !== 'object' || message === null) {\n return false;\n }\n const candidate = message as { consensus_timestamp?: unknown };\n return typeof candidate.consensus_timestamp === 'string';\n });\n\n if (found) {\n this.logger.debug(\n `Transaction ${transactionId} confirmed on mirror node`,\n );\n return;\n }\n } catch (error) {\n this.logger.debug(`Mirror node check attempt ${i + 1} failed:`, error);\n }\n\n await sleep(2000);\n }\n\n this.logger.warn(\n `Transaction ${transactionId} not found on mirror node after ${maxRetries} attempts`,\n );\n }\n}\n"],"names":[],"mappings":"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"}