@hashgraphonline/standards-sdk 0.1.143-feat-solana-register.canary.1c6f446.78 → 0.1.144-feat-solana-register.canary.d5edcec.80

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 (340) hide show
  1. package/dist/cjs/hcs-10/sdk.d.ts.map +1 -1
  2. package/dist/cjs/hcs-14/issuers/hiero.d.ts.map +1 -1
  3. package/dist/cjs/index.d.ts.map +1 -1
  4. package/dist/cjs/services/registry-broker/schemas.d.ts +153 -153
  5. package/dist/cjs/standards-sdk.cjs +2 -2
  6. package/dist/cjs/standards-sdk.cjs.map +1 -1
  7. package/dist/cjs/utils/dynamic-import.d.ts +5 -1
  8. package/dist/cjs/utils/dynamic-import.d.ts.map +1 -1
  9. package/dist/es/hcs-10/sdk.d.ts.map +1 -1
  10. package/dist/es/hcs-14/issuers/hiero.d.ts.map +1 -1
  11. package/dist/es/index.d.ts.map +1 -1
  12. package/dist/es/services/registry-broker/schemas.d.ts +153 -153
  13. package/dist/es/standards-sdk.es.js +134 -135
  14. package/dist/es/standards-sdk.es.js.map +1 -1
  15. package/dist/es/standards-sdk.es10.js +70 -90
  16. package/dist/es/standards-sdk.es10.js.map +1 -1
  17. package/dist/es/standards-sdk.es100.js +229 -27
  18. package/dist/es/standards-sdk.es100.js.map +1 -1
  19. package/dist/es/standards-sdk.es101.js +109 -228
  20. package/dist/es/standards-sdk.es101.js.map +1 -1
  21. package/dist/es/standards-sdk.es102.js +15 -94
  22. package/dist/es/standards-sdk.es102.js.map +1 -1
  23. package/dist/es/standards-sdk.es103.js +80 -30
  24. package/dist/es/standards-sdk.es103.js.map +1 -1
  25. package/dist/es/standards-sdk.es104.js +27 -80
  26. package/dist/es/standards-sdk.es104.js.map +1 -1
  27. package/dist/es/standards-sdk.es105.js +136 -25
  28. package/dist/es/standards-sdk.es105.js.map +1 -1
  29. package/dist/es/standards-sdk.es106.js +27 -140
  30. package/dist/es/standards-sdk.es106.js.map +1 -1
  31. package/dist/es/standards-sdk.es107.js +20 -27
  32. package/dist/es/standards-sdk.es107.js.map +1 -1
  33. package/dist/es/standards-sdk.es108.js +156 -18
  34. package/dist/es/standards-sdk.es108.js.map +1 -1
  35. package/dist/es/standards-sdk.es109.js +198 -148
  36. package/dist/es/standards-sdk.es109.js.map +1 -1
  37. package/dist/es/standards-sdk.es11.js +121 -45
  38. package/dist/es/standards-sdk.es11.js.map +1 -1
  39. package/dist/es/standards-sdk.es110.js +747 -167
  40. package/dist/es/standards-sdk.es110.js.map +1 -1
  41. package/dist/es/standards-sdk.es111.js +9 -786
  42. package/dist/es/standards-sdk.es111.js.map +1 -1
  43. package/dist/es/standards-sdk.es112.js +567 -13
  44. package/dist/es/standards-sdk.es112.js.map +1 -1
  45. package/dist/es/standards-sdk.es113.js +576 -541
  46. package/dist/es/standards-sdk.es113.js.map +1 -1
  47. package/dist/es/standards-sdk.es114.js +12 -601
  48. package/dist/es/standards-sdk.es114.js.map +1 -1
  49. package/dist/es/standards-sdk.es115.js +2 -13
  50. package/dist/es/standards-sdk.es115.js.map +1 -1
  51. package/dist/es/standards-sdk.es116.js +87 -2
  52. package/dist/es/standards-sdk.es116.js.map +1 -1
  53. package/dist/es/standards-sdk.es117.js +37 -84
  54. package/dist/es/standards-sdk.es117.js.map +1 -1
  55. package/dist/es/standards-sdk.es118.js +2 -40
  56. package/dist/es/standards-sdk.es118.js.map +1 -1
  57. package/dist/es/standards-sdk.es119.js +231 -2
  58. package/dist/es/standards-sdk.es119.js.map +1 -1
  59. package/dist/es/standards-sdk.es12.js +60 -159
  60. package/dist/es/standards-sdk.es12.js.map +1 -1
  61. package/dist/es/standards-sdk.es120.js +1110 -201
  62. package/dist/es/standards-sdk.es120.js.map +1 -1
  63. package/dist/es/standards-sdk.es121.js +225 -1059
  64. package/dist/es/standards-sdk.es121.js.map +1 -1
  65. package/dist/es/standards-sdk.es122.js +419 -303
  66. package/dist/es/standards-sdk.es122.js.map +1 -1
  67. package/dist/es/standards-sdk.es123.js +351 -418
  68. package/dist/es/standards-sdk.es123.js.map +1 -1
  69. package/dist/es/standards-sdk.es124.js +872 -347
  70. package/dist/es/standards-sdk.es124.js.map +1 -1
  71. package/dist/es/standards-sdk.es125.js +182 -854
  72. package/dist/es/standards-sdk.es125.js.map +1 -1
  73. package/dist/es/standards-sdk.es126.js +1512 -153
  74. package/dist/es/standards-sdk.es126.js.map +1 -1
  75. package/dist/es/standards-sdk.es127.js +157 -1547
  76. package/dist/es/standards-sdk.es127.js.map +1 -1
  77. package/dist/es/standards-sdk.es128.js +192 -162
  78. package/dist/es/standards-sdk.es128.js.map +1 -1
  79. package/dist/es/standards-sdk.es129.js +61 -164
  80. package/dist/es/standards-sdk.es129.js.map +1 -1
  81. package/dist/es/standards-sdk.es13.js +200 -60
  82. package/dist/es/standards-sdk.es13.js.map +1 -1
  83. package/dist/es/standards-sdk.es130.js +102 -85
  84. package/dist/es/standards-sdk.es130.js.map +1 -1
  85. package/dist/es/standards-sdk.es131.js +222 -96
  86. package/dist/es/standards-sdk.es131.js.map +1 -1
  87. package/dist/es/standards-sdk.es132.js +153 -220
  88. package/dist/es/standards-sdk.es132.js.map +1 -1
  89. package/dist/es/standards-sdk.es133.js +104 -162
  90. package/dist/es/standards-sdk.es133.js.map +1 -1
  91. package/dist/es/standards-sdk.es134.js +296 -92
  92. package/dist/es/standards-sdk.es134.js.map +1 -1
  93. package/dist/es/standards-sdk.es135.js +432 -294
  94. package/dist/es/standards-sdk.es135.js.map +1 -1
  95. package/dist/es/standards-sdk.es136.js +14 -461
  96. package/dist/es/standards-sdk.es136.js.map +1 -1
  97. package/dist/es/standards-sdk.es137.js +79 -15
  98. package/dist/es/standards-sdk.es137.js.map +1 -1
  99. package/dist/es/standards-sdk.es138.js +77 -71
  100. package/dist/es/standards-sdk.es138.js.map +1 -1
  101. package/dist/es/standards-sdk.es139.js +152 -80
  102. package/dist/es/standards-sdk.es139.js.map +1 -1
  103. package/dist/es/standards-sdk.es14.js +149 -178
  104. package/dist/es/standards-sdk.es14.js.map +1 -1
  105. package/dist/es/standards-sdk.es140.js +7 -159
  106. package/dist/es/standards-sdk.es140.js.map +1 -1
  107. package/dist/es/standards-sdk.es141.js +86 -7
  108. package/dist/es/standards-sdk.es141.js.map +1 -1
  109. package/dist/es/standards-sdk.es142.js +44 -65
  110. package/dist/es/standards-sdk.es142.js.map +1 -1
  111. package/dist/es/standards-sdk.es143.js +30 -65
  112. package/dist/es/standards-sdk.es143.js.map +1 -1
  113. package/dist/es/standards-sdk.es144.js +34 -30
  114. package/dist/es/standards-sdk.es144.js.map +1 -1
  115. package/dist/es/standards-sdk.es145.js +28 -34
  116. package/dist/es/standards-sdk.es145.js.map +1 -1
  117. package/dist/es/standards-sdk.es146.js +138 -28
  118. package/dist/es/standards-sdk.es146.js.map +1 -1
  119. package/dist/es/standards-sdk.es147.js +37 -133
  120. package/dist/es/standards-sdk.es147.js.map +1 -1
  121. package/dist/es/standards-sdk.es148.js +12280 -33
  122. package/dist/es/standards-sdk.es148.js.map +1 -1
  123. package/dist/es/standards-sdk.es149.js +1 -1
  124. package/dist/es/standards-sdk.es15.js +152 -151
  125. package/dist/es/standards-sdk.es15.js.map +1 -1
  126. package/dist/es/standards-sdk.es150.js +12 -12284
  127. package/dist/es/standards-sdk.es150.js.map +1 -1
  128. package/dist/es/standards-sdk.es151.js +54 -15
  129. package/dist/es/standards-sdk.es151.js.map +1 -1
  130. package/dist/es/standards-sdk.es152.js +72 -160
  131. package/dist/es/standards-sdk.es152.js.map +1 -1
  132. package/dist/es/standards-sdk.es153.js +139 -289
  133. package/dist/es/standards-sdk.es153.js.map +1 -1
  134. package/dist/es/standards-sdk.es154.js +274 -298
  135. package/dist/es/standards-sdk.es154.js.map +1 -1
  136. package/dist/es/standards-sdk.es155.js +262 -369
  137. package/dist/es/standards-sdk.es155.js.map +1 -1
  138. package/dist/es/standards-sdk.es156.js +316 -194
  139. package/dist/es/standards-sdk.es156.js.map +1 -1
  140. package/dist/es/standards-sdk.es157.js +319 -64
  141. package/dist/es/standards-sdk.es157.js.map +1 -1
  142. package/dist/es/standards-sdk.es158.js +69 -49
  143. package/dist/es/standards-sdk.es158.js.map +1 -1
  144. package/dist/es/standards-sdk.es159.js +222 -65
  145. package/dist/es/standards-sdk.es159.js.map +1 -1
  146. package/dist/es/standards-sdk.es16.js +917 -136
  147. package/dist/es/standards-sdk.es16.js.map +1 -1
  148. package/dist/es/standards-sdk.es160.js +223 -218
  149. package/dist/es/standards-sdk.es160.js.map +1 -1
  150. package/dist/es/standards-sdk.es17.js +23 -948
  151. package/dist/es/standards-sdk.es17.js.map +1 -1
  152. package/dist/es/standards-sdk.es18.js +2422 -24
  153. package/dist/es/standards-sdk.es18.js.map +1 -1
  154. package/dist/es/standards-sdk.es19.js +818 -2092
  155. package/dist/es/standards-sdk.es19.js.map +1 -1
  156. package/dist/es/standards-sdk.es2.js +654 -189
  157. package/dist/es/standards-sdk.es2.js.map +1 -1
  158. package/dist/es/standards-sdk.es20.js +205 -1092
  159. package/dist/es/standards-sdk.es20.js.map +1 -1
  160. package/dist/es/standards-sdk.es21.js +858 -221
  161. package/dist/es/standards-sdk.es21.js.map +1 -1
  162. package/dist/es/standards-sdk.es22.js +179 -903
  163. package/dist/es/standards-sdk.es22.js.map +1 -1
  164. package/dist/es/standards-sdk.es23.js +164 -179
  165. package/dist/es/standards-sdk.es23.js.map +1 -1
  166. package/dist/es/standards-sdk.es24.js +62 -118
  167. package/dist/es/standards-sdk.es24.js.map +1 -1
  168. package/dist/es/standards-sdk.es25.js +377 -57
  169. package/dist/es/standards-sdk.es25.js.map +1 -1
  170. package/dist/es/standards-sdk.es26.js +36 -394
  171. package/dist/es/standards-sdk.es26.js.map +1 -1
  172. package/dist/es/standards-sdk.es27.js +901 -50
  173. package/dist/es/standards-sdk.es27.js.map +1 -1
  174. package/dist/es/standards-sdk.es28.js +134 -922
  175. package/dist/es/standards-sdk.es28.js.map +1 -1
  176. package/dist/es/standards-sdk.es29.js +7 -134
  177. package/dist/es/standards-sdk.es29.js.map +1 -1
  178. package/dist/es/standards-sdk.es3.js +63 -680
  179. package/dist/es/standards-sdk.es3.js.map +1 -1
  180. package/dist/es/standards-sdk.es30.js +344 -7
  181. package/dist/es/standards-sdk.es30.js.map +1 -1
  182. package/dist/es/standards-sdk.es31.js +302 -287
  183. package/dist/es/standards-sdk.es31.js.map +1 -1
  184. package/dist/es/standards-sdk.es32.js +94 -322
  185. package/dist/es/standards-sdk.es32.js.map +1 -1
  186. package/dist/es/standards-sdk.es33.js +458 -101
  187. package/dist/es/standards-sdk.es33.js.map +1 -1
  188. package/dist/es/standards-sdk.es34.js +132 -451
  189. package/dist/es/standards-sdk.es34.js.map +1 -1
  190. package/dist/es/standards-sdk.es35.js +216 -130
  191. package/dist/es/standards-sdk.es35.js.map +1 -1
  192. package/dist/es/standards-sdk.es36.js +273 -196
  193. package/dist/es/standards-sdk.es36.js.map +1 -1
  194. package/dist/es/standards-sdk.es37.js +148 -87
  195. package/dist/es/standards-sdk.es37.js.map +1 -1
  196. package/dist/es/standards-sdk.es38.js +183 -320
  197. package/dist/es/standards-sdk.es38.js.map +1 -1
  198. package/dist/es/standards-sdk.es39.js +238 -161
  199. package/dist/es/standards-sdk.es39.js.map +1 -1
  200. package/dist/es/standards-sdk.es4.js +425 -63
  201. package/dist/es/standards-sdk.es4.js.map +1 -1
  202. package/dist/es/standards-sdk.es40.js +136 -254
  203. package/dist/es/standards-sdk.es40.js.map +1 -1
  204. package/dist/es/standards-sdk.es41.js +225 -176
  205. package/dist/es/standards-sdk.es41.js.map +1 -1
  206. package/dist/es/standards-sdk.es42.js +199 -261
  207. package/dist/es/standards-sdk.es42.js.map +1 -1
  208. package/dist/es/standards-sdk.es43.js +237 -199
  209. package/dist/es/standards-sdk.es43.js.map +1 -1
  210. package/dist/es/standards-sdk.es44.js +209 -201
  211. package/dist/es/standards-sdk.es44.js.map +1 -1
  212. package/dist/es/standards-sdk.es45.js +305 -201
  213. package/dist/es/standards-sdk.es45.js.map +1 -1
  214. package/dist/es/standards-sdk.es46.js +371 -261
  215. package/dist/es/standards-sdk.es46.js.map +1 -1
  216. package/dist/es/standards-sdk.es47.js +316 -372
  217. package/dist/es/standards-sdk.es47.js.map +1 -1
  218. package/dist/es/standards-sdk.es48.js +404 -336
  219. package/dist/es/standards-sdk.es48.js.map +1 -1
  220. package/dist/es/standards-sdk.es49.js +83 -449
  221. package/dist/es/standards-sdk.es49.js.map +1 -1
  222. package/dist/es/standards-sdk.es5.js +232 -354
  223. package/dist/es/standards-sdk.es5.js.map +1 -1
  224. package/dist/es/standards-sdk.es50.js +179 -89
  225. package/dist/es/standards-sdk.es50.js.map +1 -1
  226. package/dist/es/standards-sdk.es51.js +231 -165
  227. package/dist/es/standards-sdk.es51.js.map +1 -1
  228. package/dist/es/standards-sdk.es52.js +25 -262
  229. package/dist/es/standards-sdk.es52.js.map +1 -1
  230. package/dist/es/standards-sdk.es53.js +56 -26
  231. package/dist/es/standards-sdk.es53.js.map +1 -1
  232. package/dist/es/standards-sdk.es54.js +12 -57
  233. package/dist/es/standards-sdk.es54.js.map +1 -1
  234. package/dist/es/standards-sdk.es55.js +49 -12
  235. package/dist/es/standards-sdk.es55.js.map +1 -1
  236. package/dist/es/standards-sdk.es56.js +115 -43
  237. package/dist/es/standards-sdk.es56.js.map +1 -1
  238. package/dist/es/standards-sdk.es57.js +42 -115
  239. package/dist/es/standards-sdk.es57.js.map +1 -1
  240. package/dist/es/standards-sdk.es58.js +52 -43
  241. package/dist/es/standards-sdk.es58.js.map +1 -1
  242. package/dist/es/standards-sdk.es59.js +36 -50
  243. package/dist/es/standards-sdk.es59.js.map +1 -1
  244. package/dist/es/standards-sdk.es6.js +125 -246
  245. package/dist/es/standards-sdk.es6.js.map +1 -1
  246. package/dist/es/standards-sdk.es60.js +207 -39
  247. package/dist/es/standards-sdk.es60.js.map +1 -1
  248. package/dist/es/standards-sdk.es61.js +24 -201
  249. package/dist/es/standards-sdk.es61.js.map +1 -1
  250. package/dist/es/standards-sdk.es62.js +87 -25
  251. package/dist/es/standards-sdk.es62.js.map +1 -1
  252. package/dist/es/standards-sdk.es63.js +3 -51
  253. package/dist/es/standards-sdk.es63.js.map +1 -1
  254. package/dist/es/standards-sdk.es64.js +100 -3
  255. package/dist/es/standards-sdk.es64.js.map +1 -1
  256. package/dist/es/standards-sdk.es65.js +61 -62
  257. package/dist/es/standards-sdk.es65.js.map +1 -1
  258. package/dist/es/standards-sdk.es66.js +17 -98
  259. package/dist/es/standards-sdk.es66.js.map +1 -1
  260. package/dist/es/standards-sdk.es67.js +77 -19
  261. package/dist/es/standards-sdk.es67.js.map +1 -1
  262. package/dist/es/standards-sdk.es68.js +458 -77
  263. package/dist/es/standards-sdk.es68.js.map +1 -1
  264. package/dist/es/standards-sdk.es69.js +106 -240
  265. package/dist/es/standards-sdk.es69.js.map +1 -1
  266. package/dist/es/standards-sdk.es7.js +28 -183
  267. package/dist/es/standards-sdk.es7.js.map +1 -1
  268. package/dist/es/standards-sdk.es70.js +170 -286
  269. package/dist/es/standards-sdk.es70.js.map +1 -1
  270. package/dist/es/standards-sdk.es71.js +71 -207
  271. package/dist/es/standards-sdk.es71.js.map +1 -1
  272. package/dist/es/standards-sdk.es72.js +71 -72
  273. package/dist/es/standards-sdk.es72.js.map +1 -1
  274. package/dist/es/standards-sdk.es73.js +143 -71
  275. package/dist/es/standards-sdk.es73.js.map +1 -1
  276. package/dist/es/standards-sdk.es74.js +62 -136
  277. package/dist/es/standards-sdk.es74.js.map +1 -1
  278. package/dist/es/standards-sdk.es75.js +380 -45
  279. package/dist/es/standards-sdk.es75.js.map +1 -1
  280. package/dist/es/standards-sdk.es76.js +222 -130
  281. package/dist/es/standards-sdk.es76.js.map +1 -1
  282. package/dist/es/standards-sdk.es77.js +320 -444
  283. package/dist/es/standards-sdk.es77.js.map +1 -1
  284. package/dist/es/standards-sdk.es78.js +88 -371
  285. package/dist/es/standards-sdk.es78.js.map +1 -1
  286. package/dist/es/standards-sdk.es79.js +125 -89
  287. package/dist/es/standards-sdk.es79.js.map +1 -1
  288. package/dist/es/standards-sdk.es8.js +80 -29
  289. package/dist/es/standards-sdk.es8.js.map +1 -1
  290. package/dist/es/standards-sdk.es80.js +8 -125
  291. package/dist/es/standards-sdk.es80.js.map +1 -1
  292. package/dist/es/standards-sdk.es81.js +45 -6
  293. package/dist/es/standards-sdk.es81.js.map +1 -1
  294. package/dist/es/standards-sdk.es82.js +98 -44
  295. package/dist/es/standards-sdk.es82.js.map +1 -1
  296. package/dist/es/standards-sdk.es83.js +331 -84
  297. package/dist/es/standards-sdk.es83.js.map +1 -1
  298. package/dist/es/standards-sdk.es84.js +93 -160
  299. package/dist/es/standards-sdk.es84.js.map +1 -1
  300. package/dist/es/standards-sdk.es85.js +55 -275
  301. package/dist/es/standards-sdk.es85.js.map +1 -1
  302. package/dist/es/standards-sdk.es86.js +43 -55
  303. package/dist/es/standards-sdk.es86.js.map +1 -1
  304. package/dist/es/standards-sdk.es87.js +145 -44
  305. package/dist/es/standards-sdk.es87.js.map +1 -1
  306. package/dist/es/standards-sdk.es88.js +30 -113
  307. package/dist/es/standards-sdk.es88.js.map +1 -1
  308. package/dist/es/standards-sdk.es89.js +22 -59
  309. package/dist/es/standards-sdk.es89.js.map +1 -1
  310. package/dist/es/standards-sdk.es9.js +104 -80
  311. package/dist/es/standards-sdk.es9.js.map +1 -1
  312. package/dist/es/standards-sdk.es90.js +23 -28
  313. package/dist/es/standards-sdk.es90.js.map +1 -1
  314. package/dist/es/standards-sdk.es91.js +238 -23
  315. package/dist/es/standards-sdk.es91.js.map +1 -1
  316. package/dist/es/standards-sdk.es92.js +267 -225
  317. package/dist/es/standards-sdk.es92.js.map +1 -1
  318. package/dist/es/standards-sdk.es93.js +95 -220
  319. package/dist/es/standards-sdk.es93.js.map +1 -1
  320. package/dist/es/standards-sdk.es94.js +124 -136
  321. package/dist/es/standards-sdk.es94.js.map +1 -1
  322. package/dist/es/standards-sdk.es95.js +42 -138
  323. package/dist/es/standards-sdk.es95.js.map +1 -1
  324. package/dist/es/standards-sdk.es96.js +259 -43
  325. package/dist/es/standards-sdk.es96.js.map +1 -1
  326. package/dist/es/standards-sdk.es97.js +82 -245
  327. package/dist/es/standards-sdk.es97.js.map +1 -1
  328. package/dist/es/standards-sdk.es98.js +49 -50
  329. package/dist/es/standards-sdk.es98.js.map +1 -1
  330. package/dist/es/standards-sdk.es99.js +29 -100
  331. package/dist/es/standards-sdk.es99.js.map +1 -1
  332. package/dist/es/utils/dynamic-import.d.ts +5 -1
  333. package/dist/es/utils/dynamic-import.d.ts.map +1 -1
  334. package/package.json +4 -4
  335. package/dist/cjs/patches/topic-autorenew-patch.d.ts +0 -2
  336. package/dist/cjs/patches/topic-autorenew-patch.d.ts.map +0 -1
  337. package/dist/es/patches/topic-autorenew-patch.d.ts +0 -2
  338. package/dist/es/patches/topic-autorenew-patch.d.ts.map +0 -1
  339. package/dist/es/standards-sdk.es161.js +0 -247
  340. package/dist/es/standards-sdk.es161.js.map +0 -1
@@ -1,87 +1,163 @@
1
- import { HCS7BaseClient } from "./standards-sdk.es10.js";
2
- function getSequenceNumber(receipt) {
3
- const seq = receipt.topicSequenceNumber;
4
- if (typeof seq === "number") {
5
- return seq;
1
+ import { PublicKey, PrivateKey } from "@hashgraph/sdk";
2
+ import { HCS7BaseClient } from "./standards-sdk.es9.js";
3
+ import { createNodeOperatorContext } from "./standards-sdk.es146.js";
4
+ import { buildHcs7CreateRegistryTx, buildHcs7SubmitMessageTx } from "./standards-sdk.es12.js";
5
+ class HCS7Client extends HCS7BaseClient {
6
+ constructor(config) {
7
+ super(config);
8
+ this.closed = false;
9
+ this.operatorCtx = createNodeOperatorContext({
10
+ network: this.network,
11
+ operatorId: config.operatorId,
12
+ operatorKey: config.operatorKey,
13
+ keyType: config.keyType,
14
+ mirrorNode: this.mirrorNode,
15
+ logger: this.logger
16
+ });
17
+ this.client = this.operatorCtx.client;
6
18
  }
7
- if (typeof seq?.toNumber === "function") {
8
- return seq.toNumber();
19
+ close() {
20
+ if (this.closed) {
21
+ return;
22
+ }
23
+ this.closed = true;
24
+ this.logger.info("HCS-7 client closed");
9
25
  }
10
- if (typeof seq?.low === "number") {
11
- return seq.low;
26
+ getKeyType() {
27
+ return this.operatorCtx.keyType;
12
28
  }
13
- return void 0;
14
- }
15
- class HCS7BrowserClient extends HCS7BaseClient {
16
- constructor(config) {
17
- super(config);
18
- this.hwc = config.hwc;
29
+ async ensureInitialized() {
30
+ await this.operatorCtx.ensureInitialized();
19
31
  }
20
- ensureConnected() {
21
- const info = this.hwc.getAccountInfo();
22
- if (!info?.accountId) {
23
- throw new Error("No active wallet connection");
32
+ resolvePublicKey(key) {
33
+ if (!key) {
34
+ return void 0;
35
+ }
36
+ if (typeof key === "boolean") {
37
+ return key ? this.operatorCtx.operatorKey.publicKey : void 0;
38
+ }
39
+ if (typeof key === "string") {
40
+ try {
41
+ return PublicKey.fromString(key);
42
+ } catch {
43
+ return void 0;
44
+ }
45
+ }
46
+ return key.publicKey;
47
+ }
48
+ coercePrivateKey(key) {
49
+ if (key instanceof PrivateKey) {
50
+ return key;
51
+ }
52
+ try {
53
+ return PrivateKey.fromStringED25519(key);
54
+ } catch {
55
+ return PrivateKey.fromStringECDSA(key);
24
56
  }
25
57
  }
26
58
  async createRegistry(options = {}) {
59
+ const ttl = options.ttl ?? 86400;
60
+ if (ttl < 3600) {
61
+ return {
62
+ success: false,
63
+ error: "TTL must be at least 3600 seconds"
64
+ };
65
+ }
27
66
  try {
28
- this.ensureConnected();
29
- const ttl = options.ttl ?? 86400;
30
- if (ttl < 3600) {
31
- throw new Error("TTL must be at least 3600 seconds");
67
+ await this.ensureInitialized();
68
+ const submitKey = this.resolvePublicKey(options.submitKey);
69
+ const adminKey = this.resolvePublicKey(options.adminKey);
70
+ let transaction = buildHcs7CreateRegistryTx({
71
+ ttl,
72
+ submitKey,
73
+ adminKey,
74
+ operatorPublicKey: this.operatorCtx.operatorKey.publicKey
75
+ });
76
+ transaction = await transaction.freezeWith(this.client);
77
+ const response = await transaction.execute(this.client);
78
+ const receipt = await response.getReceipt(this.client);
79
+ const topicId = receipt.topicId?.toString();
80
+ if (!topicId) {
81
+ return {
82
+ success: false,
83
+ error: "Topic creation receipt did not include a topic ID"
84
+ };
32
85
  }
33
- const memo = this.generateRegistryMemo(ttl);
34
- const topicId = await this.hwc.createTopic(memo);
35
- this.logger.info(`Created HCS-7 registry topic ${topicId}`);
36
- return { success: true, topicId };
86
+ return {
87
+ success: true,
88
+ topicId,
89
+ transactionId: response.transactionId?.toString()
90
+ };
37
91
  } catch (error) {
38
- this.logger.error("Failed to create HCS-7 registry in browser", error);
92
+ this.logger.error("Failed to create HCS-7 registry topic", error);
39
93
  return { success: false, error: String(error) };
40
94
  }
41
95
  }
42
96
  async registerConfig(options) {
97
+ await this.ensureInitialized();
43
98
  const message = this.createConfigMessage({
44
99
  config: options.config,
45
100
  memo: options.memo
46
101
  });
47
- return this.submitWithWallet({
102
+ return this.submitMessage({
48
103
  topicId: options.registryTopicId,
49
- message
104
+ message,
105
+ submitKey: options.submitKey,
106
+ transactionMemo: options.transactionMemo
50
107
  });
51
108
  }
52
109
  async registerMetadata(options) {
110
+ await this.ensureInitialized();
53
111
  const message = this.createMetadataMessage(options);
54
- return this.submitWithWallet({
112
+ return this.submitMessage({
55
113
  topicId: options.registryTopicId,
56
- message
114
+ message,
115
+ submitKey: options.submitKey,
116
+ transactionMemo: options.transactionMemo
57
117
  });
58
118
  }
59
- async submitWithWallet(params) {
119
+ async submitMessage(params) {
120
+ const { valid, errors } = this.validateMessage(params.message);
121
+ if (!valid) {
122
+ return {
123
+ success: false,
124
+ error: `Invalid HCS-7 payload: ${errors.join(", ")}`
125
+ };
126
+ }
60
127
  try {
61
- this.ensureConnected();
62
- const { valid, errors } = this.validateMessage(params.message);
63
- if (!valid) {
128
+ let tx = buildHcs7SubmitMessageTx({
129
+ topicId: params.topicId,
130
+ message: params.message,
131
+ transactionMemo: params.transactionMemo
132
+ });
133
+ if (params.submitKey) {
134
+ const submitKey = this.coercePrivateKey(params.submitKey);
135
+ tx = await tx.freezeWith(this.client);
136
+ await tx.sign(submitKey);
137
+ const response2 = await tx.execute(this.client);
138
+ const receipt2 = await response2.getReceipt(this.client);
64
139
  return {
65
- success: false,
66
- error: `Invalid HCS-7 payload: ${errors.join(", ")}`
140
+ success: true,
141
+ receipt: receipt2,
142
+ sequenceNumber: receipt2.topicSequenceNumber?.toNumber(),
143
+ transactionId: response2.transactionId?.toString()
67
144
  };
68
145
  }
69
- const receipt = await this.hwc.submitMessageToTopic(
70
- params.topicId,
71
- JSON.stringify(params.message)
72
- );
146
+ const response = await tx.execute(this.client);
147
+ const receipt = await response.getReceipt(this.client);
73
148
  return {
74
149
  success: true,
75
150
  receipt,
76
- sequenceNumber: getSequenceNumber(receipt)
151
+ sequenceNumber: receipt.topicSequenceNumber?.toNumber(),
152
+ transactionId: response.transactionId?.toString()
77
153
  };
78
154
  } catch (error) {
79
- this.logger.error("Failed to submit HCS-7 browser message", error);
155
+ this.logger.error("Failed to submit HCS-7 message", error);
80
156
  return { success: false, error: String(error) };
81
157
  }
82
158
  }
83
159
  }
84
160
  export {
85
- HCS7BrowserClient
161
+ HCS7Client
86
162
  };
87
163
  //# sourceMappingURL=standards-sdk.es11.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es11.js","sources":["../../src/hcs-7/browser.ts"],"sourcesContent":["import { TransactionReceipt } from '@hashgraph/sdk';\nimport { HashinalsWalletConnectSDK } from '@hashgraphonline/hashinal-wc';\nimport { HCS7BaseClient } from './base-client';\nimport {\n type HCS7ClientConfig,\n type HCS7CreateRegistryOptions,\n type HCS7TopicRegistrationResponse,\n type HCS7RegisterConfigOptions,\n type HCS7RegisterMetadataOptions,\n type HCS7RegistryOperationResponse,\n type HCS7Message,\n} from './types';\n\nexport interface BrowserHCS7ClientConfig extends HCS7ClientConfig {\n hwc: HashinalsWalletConnectSDK;\n}\n\nfunction getSequenceNumber(receipt: TransactionReceipt): number | undefined {\n const seq = receipt.topicSequenceNumber as\n | number\n | { toNumber?: () => number; low?: number }\n | undefined;\n if (typeof seq === 'number') {\n return seq;\n }\n if (typeof seq?.toNumber === 'function') {\n return seq.toNumber();\n }\n if (typeof seq?.low === 'number') {\n return seq.low;\n }\n return undefined;\n}\n\nexport class HCS7BrowserClient extends HCS7BaseClient {\n private readonly hwc: HashinalsWalletConnectSDK;\n\n constructor(config: BrowserHCS7ClientConfig) {\n super(config);\n this.hwc = config.hwc;\n }\n\n private ensureConnected(): void {\n const info = this.hwc.getAccountInfo();\n if (!info?.accountId) {\n throw new Error('No active wallet connection');\n }\n }\n\n async createRegistry(\n options: HCS7CreateRegistryOptions = {},\n ): Promise<HCS7TopicRegistrationResponse> {\n try {\n this.ensureConnected();\n const ttl = options.ttl ?? 86_400;\n if (ttl < 3600) {\n throw new Error('TTL must be at least 3600 seconds');\n }\n const memo = this.generateRegistryMemo(ttl);\n const topicId = await this.hwc.createTopic(memo);\n this.logger.info(`Created HCS-7 registry topic ${topicId}`);\n return { success: true, topicId };\n } catch (error) {\n this.logger.error('Failed to create HCS-7 registry in browser', error);\n return { success: false, error: String(error) };\n }\n }\n\n async registerConfig(\n options: HCS7RegisterConfigOptions,\n ): Promise<HCS7RegistryOperationResponse> {\n const message = this.createConfigMessage({\n config: options.config,\n memo: options.memo,\n });\n return this.submitWithWallet({\n topicId: options.registryTopicId,\n message,\n });\n }\n\n async registerMetadata(\n options: HCS7RegisterMetadataOptions,\n ): Promise<HCS7RegistryOperationResponse> {\n const message = this.createMetadataMessage(options);\n return this.submitWithWallet({\n topicId: options.registryTopicId,\n message,\n });\n }\n\n private async submitWithWallet(params: {\n topicId: string;\n message: HCS7Message;\n }): Promise<HCS7RegistryOperationResponse> {\n try {\n this.ensureConnected();\n const { valid, errors } = this.validateMessage(params.message);\n if (!valid) {\n return {\n success: false,\n error: `Invalid HCS-7 payload: ${errors.join(', ')}`,\n };\n }\n const receipt = await this.hwc.submitMessageToTopic(\n params.topicId,\n JSON.stringify(params.message),\n );\n return {\n success: true,\n receipt,\n sequenceNumber: getSequenceNumber(receipt),\n };\n } catch (error) {\n this.logger.error('Failed to submit HCS-7 browser message', error);\n return { success: false, error: String(error) };\n }\n }\n}\n"],"names":[],"mappings":";AAiBA,SAAS,kBAAkB,SAAiD;AAC1E,QAAM,MAAM,QAAQ;AAIpB,MAAI,OAAO,QAAQ,UAAU;AAC3B,WAAO;AAAA,EACT;AACA,MAAI,OAAO,KAAK,aAAa,YAAY;AACvC,WAAO,IAAI,SAAA;AAAA,EACb;AACA,MAAI,OAAO,KAAK,QAAQ,UAAU;AAChC,WAAO,IAAI;AAAA,EACb;AACA,SAAO;AACT;AAEO,MAAM,0BAA0B,eAAe;AAAA,EAGpD,YAAY,QAAiC;AAC3C,UAAM,MAAM;AACZ,SAAK,MAAM,OAAO;AAAA,EACpB;AAAA,EAEQ,kBAAwB;AAC9B,UAAM,OAAO,KAAK,IAAI,eAAA;AACtB,QAAI,CAAC,MAAM,WAAW;AACpB,YAAM,IAAI,MAAM,6BAA6B;AAAA,IAC/C;AAAA,EACF;AAAA,EAEA,MAAM,eACJ,UAAqC,IACG;AACxC,QAAI;AACF,WAAK,gBAAA;AACL,YAAM,MAAM,QAAQ,OAAO;AAC3B,UAAI,MAAM,MAAM;AACd,cAAM,IAAI,MAAM,mCAAmC;AAAA,MACrD;AACA,YAAM,OAAO,KAAK,qBAAqB,GAAG;AAC1C,YAAM,UAAU,MAAM,KAAK,IAAI,YAAY,IAAI;AAC/C,WAAK,OAAO,KAAK,gCAAgC,OAAO,EAAE;AAC1D,aAAO,EAAE,SAAS,MAAM,QAAA;AAAA,IAC1B,SAAS,OAAO;AACd,WAAK,OAAO,MAAM,8CAA8C,KAAK;AACrE,aAAO,EAAE,SAAS,OAAO,OAAO,OAAO,KAAK,EAAA;AAAA,IAC9C;AAAA,EACF;AAAA,EAEA,MAAM,eACJ,SACwC;AACxC,UAAM,UAAU,KAAK,oBAAoB;AAAA,MACvC,QAAQ,QAAQ;AAAA,MAChB,MAAM,QAAQ;AAAA,IAAA,CACf;AACD,WAAO,KAAK,iBAAiB;AAAA,MAC3B,SAAS,QAAQ;AAAA,MACjB;AAAA,IAAA,CACD;AAAA,EACH;AAAA,EAEA,MAAM,iBACJ,SACwC;AACxC,UAAM,UAAU,KAAK,sBAAsB,OAAO;AAClD,WAAO,KAAK,iBAAiB;AAAA,MAC3B,SAAS,QAAQ;AAAA,MACjB;AAAA,IAAA,CACD;AAAA,EACH;AAAA,EAEA,MAAc,iBAAiB,QAGY;AACzC,QAAI;AACF,WAAK,gBAAA;AACL,YAAM,EAAE,OAAO,OAAA,IAAW,KAAK,gBAAgB,OAAO,OAAO;AAC7D,UAAI,CAAC,OAAO;AACV,eAAO;AAAA,UACL,SAAS;AAAA,UACT,OAAO,0BAA0B,OAAO,KAAK,IAAI,CAAC;AAAA,QAAA;AAAA,MAEtD;AACA,YAAM,UAAU,MAAM,KAAK,IAAI;AAAA,QAC7B,OAAO;AAAA,QACP,KAAK,UAAU,OAAO,OAAO;AAAA,MAAA;AAE/B,aAAO;AAAA,QACL,SAAS;AAAA,QACT;AAAA,QACA,gBAAgB,kBAAkB,OAAO;AAAA,MAAA;AAAA,IAE7C,SAAS,OAAO;AACd,WAAK,OAAO,MAAM,0CAA0C,KAAK;AACjE,aAAO,EAAE,SAAS,OAAO,OAAO,OAAO,KAAK,EAAA;AAAA,IAC9C;AAAA,EACF;AACF;"}
1
+ {"version":3,"file":"standards-sdk.es11.js","sources":["../../src/hcs-7/sdk.ts"],"sourcesContent":["import { Client, PrivateKey, PublicKey } from '@hashgraph/sdk';\nimport { HCS7BaseClient } from './base-client';\nimport {\n SDKHCS7ClientConfig,\n HCS7CreateRegistryOptions,\n HCS7TopicRegistrationResponse,\n HCS7RegisterConfigOptions,\n HCS7RegistryOperationResponse,\n HCS7RegisterMetadataOptions,\n HCS7Message,\n} from './types';\nimport {\n NodeOperatorContext,\n createNodeOperatorContext,\n} from '../common/node-operator-resolver';\nimport { buildHcs7CreateRegistryTx, buildHcs7SubmitMessageTx } from './tx';\n\nexport class HCS7Client extends HCS7BaseClient {\n private readonly operatorCtx: NodeOperatorContext;\n private readonly client: Client;\n private closed = false;\n\n constructor(config: SDKHCS7ClientConfig) {\n super(config);\n this.operatorCtx = createNodeOperatorContext({\n network: this.network,\n operatorId: config.operatorId,\n operatorKey: config.operatorKey,\n keyType: config.keyType,\n mirrorNode: this.mirrorNode,\n logger: this.logger,\n });\n this.client = this.operatorCtx.client;\n }\n\n public close(): void {\n if (this.closed) {\n return;\n }\n this.closed = true;\n this.logger.info('HCS-7 client closed');\n }\n\n public getKeyType(): 'ed25519' | 'ecdsa' {\n return this.operatorCtx.keyType;\n }\n\n private async ensureInitialized(): Promise<void> {\n await this.operatorCtx.ensureInitialized();\n }\n\n private resolvePublicKey(\n key?: string | boolean | PrivateKey,\n ): PublicKey | string | undefined {\n if (!key) {\n return undefined;\n }\n if (typeof key === 'boolean') {\n return key ? this.operatorCtx.operatorKey.publicKey : undefined;\n }\n if (typeof key === 'string') {\n try {\n return PublicKey.fromString(key);\n } catch {\n return undefined;\n }\n }\n return key.publicKey;\n }\n\n private coercePrivateKey(key: string | PrivateKey): PrivateKey {\n if (key instanceof PrivateKey) {\n return key;\n }\n try {\n return PrivateKey.fromStringED25519(key);\n } catch {\n return PrivateKey.fromStringECDSA(key);\n }\n }\n\n public async createRegistry(\n options: HCS7CreateRegistryOptions = {},\n ): Promise<HCS7TopicRegistrationResponse> {\n const ttl = options.ttl ?? 86_400;\n if (ttl < 3600) {\n return {\n success: false,\n error: 'TTL must be at least 3600 seconds',\n };\n }\n try {\n await this.ensureInitialized();\n const submitKey = this.resolvePublicKey(options.submitKey);\n const adminKey = this.resolvePublicKey(options.adminKey);\n let transaction = buildHcs7CreateRegistryTx({\n ttl,\n submitKey,\n adminKey,\n operatorPublicKey: this.operatorCtx.operatorKey.publicKey,\n });\n transaction = await transaction.freezeWith(this.client);\n const response = await transaction.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n const topicId = receipt.topicId?.toString();\n if (!topicId) {\n return {\n success: false,\n error: 'Topic creation receipt did not include a topic ID',\n };\n }\n return {\n success: true,\n topicId,\n transactionId: response.transactionId?.toString(),\n };\n } catch (error) {\n this.logger.error('Failed to create HCS-7 registry topic', error);\n return { success: false, error: String(error) };\n }\n }\n\n public async registerConfig(\n options: HCS7RegisterConfigOptions,\n ): Promise<HCS7RegistryOperationResponse> {\n await this.ensureInitialized();\n const message = this.createConfigMessage({\n config: options.config,\n memo: options.memo,\n });\n return this.submitMessage({\n topicId: options.registryTopicId,\n message,\n submitKey: options.submitKey,\n transactionMemo: options.transactionMemo,\n });\n }\n\n public async registerMetadata(\n options: HCS7RegisterMetadataOptions,\n ): Promise<HCS7RegistryOperationResponse> {\n await this.ensureInitialized();\n const message = this.createMetadataMessage(options);\n return this.submitMessage({\n topicId: options.registryTopicId,\n message,\n submitKey: options.submitKey,\n transactionMemo: options.transactionMemo,\n });\n }\n\n private async submitMessage(params: {\n topicId: string;\n message: HCS7Message;\n submitKey?: string | PrivateKey;\n transactionMemo?: string;\n }): Promise<HCS7RegistryOperationResponse> {\n const { valid, errors } = this.validateMessage(params.message);\n if (!valid) {\n return {\n success: false,\n error: `Invalid HCS-7 payload: ${errors.join(', ')}`,\n };\n }\n try {\n let tx = buildHcs7SubmitMessageTx({\n topicId: params.topicId,\n message: params.message,\n transactionMemo: params.transactionMemo,\n });\n if (params.submitKey) {\n const submitKey = this.coercePrivateKey(params.submitKey);\n tx = await tx.freezeWith(this.client);\n await tx.sign(submitKey);\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n return {\n success: true,\n receipt,\n sequenceNumber: receipt.topicSequenceNumber?.toNumber(),\n transactionId: response.transactionId?.toString(),\n };\n }\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n return {\n success: true,\n receipt,\n sequenceNumber: receipt.topicSequenceNumber?.toNumber(),\n transactionId: response.transactionId?.toString(),\n };\n } catch (error) {\n this.logger.error('Failed to submit HCS-7 message', error);\n return { success: false, error: String(error) };\n }\n }\n}\n"],"names":["response","receipt"],"mappings":"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"}