@hashgraphonline/standards-sdk 0.1.167 → 0.1.169

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 (385) hide show
  1. package/README.md +21 -7
  2. package/dist/browser/hcs-10/sdk.d.ts.map +1 -1
  3. package/dist/browser/hcs-10/types.d.ts +3 -1
  4. package/dist/browser/hcs-10/types.d.ts.map +1 -1
  5. package/dist/browser/hcs-11/client.d.ts.map +1 -1
  6. package/dist/browser/hcs-11/types.d.ts +2 -1
  7. package/dist/browser/hcs-11/types.d.ts.map +1 -1
  8. package/dist/browser/hcs-12/sdk.d.ts +2 -0
  9. package/dist/browser/hcs-12/sdk.d.ts.map +1 -1
  10. package/dist/browser/hcs-15/sdk.d.ts.map +1 -1
  11. package/dist/browser/hcs-15/types.d.ts +2 -1
  12. package/dist/browser/hcs-15/types.d.ts.map +1 -1
  13. package/dist/browser/hcs-16/sdk.d.ts +2 -1
  14. package/dist/browser/hcs-16/sdk.d.ts.map +1 -1
  15. package/dist/browser/hcs-17/sdk.d.ts.map +1 -1
  16. package/dist/browser/hcs-17/types.d.ts +2 -1
  17. package/dist/browser/hcs-17/types.d.ts.map +1 -1
  18. package/dist/browser/hcs-18/sdk.d.ts +2 -1
  19. package/dist/browser/hcs-18/sdk.d.ts.map +1 -1
  20. package/dist/browser/hcs-2/client.d.ts +2 -1
  21. package/dist/browser/hcs-2/client.d.ts.map +1 -1
  22. package/dist/browser/hcs-20/sdk.d.ts.map +1 -1
  23. package/dist/browser/hcs-20/types.d.ts +2 -1
  24. package/dist/browser/hcs-20/types.d.ts.map +1 -1
  25. package/dist/browser/hcs-21/sdk.d.ts +2 -1
  26. package/dist/browser/hcs-21/sdk.d.ts.map +1 -1
  27. package/dist/browser/hcs-27/base-client.d.ts +41 -0
  28. package/dist/browser/hcs-27/base-client.d.ts.map +1 -0
  29. package/dist/browser/hcs-27/index.d.ts +6 -0
  30. package/dist/browser/hcs-27/index.d.ts.map +1 -0
  31. package/dist/browser/hcs-27/memos.d.ts +5 -0
  32. package/dist/browser/hcs-27/memos.d.ts.map +1 -0
  33. package/dist/browser/hcs-27/merkle.d.ts +23 -0
  34. package/dist/browser/hcs-27/merkle.d.ts.map +1 -0
  35. package/dist/browser/hcs-27/sdk.d.ts +23 -0
  36. package/dist/browser/hcs-27/sdk.d.ts.map +1 -0
  37. package/dist/browser/hcs-27/types.d.ts +1611 -0
  38. package/dist/browser/hcs-27/types.d.ts.map +1 -0
  39. package/dist/browser/hcs-5/sdk.d.ts.map +1 -1
  40. package/dist/browser/hcs-5/types.d.ts +2 -1
  41. package/dist/browser/hcs-5/types.d.ts.map +1 -1
  42. package/dist/browser/hcs-6/sdk.d.ts +2 -1
  43. package/dist/browser/hcs-6/sdk.d.ts.map +1 -1
  44. package/dist/browser/hcs-7/sdk.d.ts.map +1 -1
  45. package/dist/browser/hcs-7/types.d.ts +2 -1
  46. package/dist/browser/hcs-7/types.d.ts.map +1 -1
  47. package/dist/browser/index.d.ts +1 -0
  48. package/dist/browser/index.d.ts.map +1 -1
  49. package/dist/browser/standards-sdk.browser.js +33 -8
  50. package/dist/browser/standards-sdk.browser.js.map +1 -1
  51. package/dist/browser/utils/key-type-detector.d.ts.map +1 -1
  52. package/dist/cjs/hcs-10/sdk.d.ts.map +1 -1
  53. package/dist/cjs/hcs-10/types.d.ts +3 -1
  54. package/dist/cjs/hcs-10/types.d.ts.map +1 -1
  55. package/dist/cjs/hcs-11/client.d.ts.map +1 -1
  56. package/dist/cjs/hcs-11/types.d.ts +2 -1
  57. package/dist/cjs/hcs-11/types.d.ts.map +1 -1
  58. package/dist/cjs/hcs-12/sdk.d.ts +2 -0
  59. package/dist/cjs/hcs-12/sdk.d.ts.map +1 -1
  60. package/dist/cjs/hcs-15/sdk.d.ts.map +1 -1
  61. package/dist/cjs/hcs-15/types.d.ts +2 -1
  62. package/dist/cjs/hcs-15/types.d.ts.map +1 -1
  63. package/dist/cjs/hcs-16/sdk.d.ts +2 -1
  64. package/dist/cjs/hcs-16/sdk.d.ts.map +1 -1
  65. package/dist/cjs/hcs-17/sdk.d.ts.map +1 -1
  66. package/dist/cjs/hcs-17/types.d.ts +2 -1
  67. package/dist/cjs/hcs-17/types.d.ts.map +1 -1
  68. package/dist/cjs/hcs-18/sdk.d.ts +2 -1
  69. package/dist/cjs/hcs-18/sdk.d.ts.map +1 -1
  70. package/dist/cjs/hcs-2/client.d.ts +2 -1
  71. package/dist/cjs/hcs-2/client.d.ts.map +1 -1
  72. package/dist/cjs/hcs-20/sdk.d.ts.map +1 -1
  73. package/dist/cjs/hcs-20/types.d.ts +2 -1
  74. package/dist/cjs/hcs-20/types.d.ts.map +1 -1
  75. package/dist/cjs/hcs-21/sdk.d.ts +2 -1
  76. package/dist/cjs/hcs-21/sdk.d.ts.map +1 -1
  77. package/dist/cjs/hcs-27/base-client.d.ts +41 -0
  78. package/dist/cjs/hcs-27/base-client.d.ts.map +1 -0
  79. package/dist/cjs/hcs-27/index.d.ts +6 -0
  80. package/dist/cjs/hcs-27/index.d.ts.map +1 -0
  81. package/dist/cjs/hcs-27/memos.d.ts +5 -0
  82. package/dist/cjs/hcs-27/memos.d.ts.map +1 -0
  83. package/dist/cjs/hcs-27/merkle.d.ts +23 -0
  84. package/dist/cjs/hcs-27/merkle.d.ts.map +1 -0
  85. package/dist/cjs/hcs-27/sdk.d.ts +23 -0
  86. package/dist/cjs/hcs-27/sdk.d.ts.map +1 -0
  87. package/dist/cjs/hcs-27/types.d.ts +1611 -0
  88. package/dist/cjs/hcs-27/types.d.ts.map +1 -0
  89. package/dist/cjs/hcs-5/sdk.d.ts.map +1 -1
  90. package/dist/cjs/hcs-5/types.d.ts +2 -1
  91. package/dist/cjs/hcs-5/types.d.ts.map +1 -1
  92. package/dist/cjs/hcs-6/sdk.d.ts +2 -1
  93. package/dist/cjs/hcs-6/sdk.d.ts.map +1 -1
  94. package/dist/cjs/hcs-7/sdk.d.ts.map +1 -1
  95. package/dist/cjs/hcs-7/types.d.ts +2 -1
  96. package/dist/cjs/hcs-7/types.d.ts.map +1 -1
  97. package/dist/cjs/index.d.ts +1 -0
  98. package/dist/cjs/index.d.ts.map +1 -1
  99. package/dist/cjs/standards-sdk.cjs +2 -2
  100. package/dist/cjs/standards-sdk.cjs.map +1 -1
  101. package/dist/cjs/utils/key-type-detector.d.ts.map +1 -1
  102. package/dist/es/hcs-10/sdk.d.ts.map +1 -1
  103. package/dist/es/hcs-10/types.d.ts +3 -1
  104. package/dist/es/hcs-10/types.d.ts.map +1 -1
  105. package/dist/es/hcs-11/client.d.ts.map +1 -1
  106. package/dist/es/hcs-11/types.d.ts +2 -1
  107. package/dist/es/hcs-11/types.d.ts.map +1 -1
  108. package/dist/es/hcs-12/sdk.d.ts +2 -0
  109. package/dist/es/hcs-12/sdk.d.ts.map +1 -1
  110. package/dist/es/hcs-15/sdk.d.ts.map +1 -1
  111. package/dist/es/hcs-15/types.d.ts +2 -1
  112. package/dist/es/hcs-15/types.d.ts.map +1 -1
  113. package/dist/es/hcs-16/sdk.d.ts +2 -1
  114. package/dist/es/hcs-16/sdk.d.ts.map +1 -1
  115. package/dist/es/hcs-17/sdk.d.ts.map +1 -1
  116. package/dist/es/hcs-17/types.d.ts +2 -1
  117. package/dist/es/hcs-17/types.d.ts.map +1 -1
  118. package/dist/es/hcs-18/sdk.d.ts +2 -1
  119. package/dist/es/hcs-18/sdk.d.ts.map +1 -1
  120. package/dist/es/hcs-2/client.d.ts +2 -1
  121. package/dist/es/hcs-2/client.d.ts.map +1 -1
  122. package/dist/es/hcs-20/sdk.d.ts.map +1 -1
  123. package/dist/es/hcs-20/types.d.ts +2 -1
  124. package/dist/es/hcs-20/types.d.ts.map +1 -1
  125. package/dist/es/hcs-21/sdk.d.ts +2 -1
  126. package/dist/es/hcs-21/sdk.d.ts.map +1 -1
  127. package/dist/es/hcs-27/base-client.d.ts +41 -0
  128. package/dist/es/hcs-27/base-client.d.ts.map +1 -0
  129. package/dist/es/hcs-27/index.d.ts +6 -0
  130. package/dist/es/hcs-27/index.d.ts.map +1 -0
  131. package/dist/es/hcs-27/memos.d.ts +5 -0
  132. package/dist/es/hcs-27/memos.d.ts.map +1 -0
  133. package/dist/es/hcs-27/merkle.d.ts +23 -0
  134. package/dist/es/hcs-27/merkle.d.ts.map +1 -0
  135. package/dist/es/hcs-27/sdk.d.ts +23 -0
  136. package/dist/es/hcs-27/sdk.d.ts.map +1 -0
  137. package/dist/es/hcs-27/types.d.ts +1611 -0
  138. package/dist/es/hcs-27/types.d.ts.map +1 -0
  139. package/dist/es/hcs-5/sdk.d.ts.map +1 -1
  140. package/dist/es/hcs-5/types.d.ts +2 -1
  141. package/dist/es/hcs-5/types.d.ts.map +1 -1
  142. package/dist/es/hcs-6/sdk.d.ts +2 -1
  143. package/dist/es/hcs-6/sdk.d.ts.map +1 -1
  144. package/dist/es/hcs-7/sdk.d.ts.map +1 -1
  145. package/dist/es/hcs-7/types.d.ts +2 -1
  146. package/dist/es/hcs-7/types.d.ts.map +1 -1
  147. package/dist/es/index.d.ts +1 -0
  148. package/dist/es/index.d.ts.map +1 -1
  149. package/dist/es/standards-sdk.es.js +67 -38
  150. package/dist/es/standards-sdk.es.js.map +1 -1
  151. package/dist/es/standards-sdk.es101.js +2 -2
  152. package/dist/es/standards-sdk.es102.js.map +1 -1
  153. package/dist/es/standards-sdk.es103.js +2 -2
  154. package/dist/es/standards-sdk.es104.js +2 -2
  155. package/dist/es/standards-sdk.es104.js.map +1 -1
  156. package/dist/es/standards-sdk.es106.js +1 -1
  157. package/dist/es/standards-sdk.es108.js +3 -3
  158. package/dist/es/standards-sdk.es108.js.map +1 -1
  159. package/dist/es/standards-sdk.es11.js +3 -2
  160. package/dist/es/standards-sdk.es11.js.map +1 -1
  161. package/dist/es/standards-sdk.es110.js +1 -1
  162. package/dist/es/standards-sdk.es111.js +2 -2
  163. package/dist/es/standards-sdk.es112.js +151 -234
  164. package/dist/es/standards-sdk.es112.js.map +1 -1
  165. package/dist/es/standards-sdk.es113.js +20 -471
  166. package/dist/es/standards-sdk.es113.js.map +1 -1
  167. package/dist/es/standards-sdk.es114.js +263 -104
  168. package/dist/es/standards-sdk.es114.js.map +1 -1
  169. package/dist/es/standards-sdk.es115.js +167 -138
  170. package/dist/es/standards-sdk.es115.js.map +1 -1
  171. package/dist/es/standards-sdk.es116.js +315 -29
  172. package/dist/es/standards-sdk.es116.js.map +1 -1
  173. package/dist/es/standards-sdk.es117.js +250 -10
  174. package/dist/es/standards-sdk.es117.js.map +1 -1
  175. package/dist/es/standards-sdk.es118.js +448 -152
  176. package/dist/es/standards-sdk.es118.js.map +1 -1
  177. package/dist/es/standards-sdk.es119.js +101 -25
  178. package/dist/es/standards-sdk.es119.js.map +1 -1
  179. package/dist/es/standards-sdk.es12.js +1 -1
  180. package/dist/es/standards-sdk.es120.js +155 -17
  181. package/dist/es/standards-sdk.es120.js.map +1 -1
  182. package/dist/es/standards-sdk.es121.js +29 -155
  183. package/dist/es/standards-sdk.es121.js.map +1 -1
  184. package/dist/es/standards-sdk.es122.js +9 -200
  185. package/dist/es/standards-sdk.es122.js.map +1 -1
  186. package/dist/es/standards-sdk.es123.js +146 -754
  187. package/dist/es/standards-sdk.es123.js.map +1 -1
  188. package/dist/es/standards-sdk.es124.js +27 -11
  189. package/dist/es/standards-sdk.es124.js.map +1 -1
  190. package/dist/es/standards-sdk.es125.js +19 -564
  191. package/dist/es/standards-sdk.es125.js.map +1 -1
  192. package/dist/es/standards-sdk.es126.js +140 -582
  193. package/dist/es/standards-sdk.es126.js.map +1 -1
  194. package/dist/es/standards-sdk.es127.js +202 -12
  195. package/dist/es/standards-sdk.es127.js.map +1 -1
  196. package/dist/es/standards-sdk.es128.js +790 -2
  197. package/dist/es/standards-sdk.es128.js.map +1 -1
  198. package/dist/es/standards-sdk.es129.js +10 -84
  199. package/dist/es/standards-sdk.es129.js.map +1 -1
  200. package/dist/es/standards-sdk.es13.js +1 -1
  201. package/dist/es/standards-sdk.es130.js +567 -40
  202. package/dist/es/standards-sdk.es130.js.map +1 -1
  203. package/dist/es/standards-sdk.es131.js +626 -2
  204. package/dist/es/standards-sdk.es131.js.map +1 -1
  205. package/dist/es/standards-sdk.es132.js +12 -234
  206. package/dist/es/standards-sdk.es132.js.map +1 -1
  207. package/dist/es/standards-sdk.es133.js +2 -1140
  208. package/dist/es/standards-sdk.es133.js.map +1 -1
  209. package/dist/es/standards-sdk.es134.js +73 -292
  210. package/dist/es/standards-sdk.es134.js.map +1 -1
  211. package/dist/es/standards-sdk.es135.js +36 -418
  212. package/dist/es/standards-sdk.es135.js.map +1 -1
  213. package/dist/es/standards-sdk.es136.js +2 -355
  214. package/dist/es/standards-sdk.es136.js.map +1 -1
  215. package/dist/es/standards-sdk.es137.js +198 -1079
  216. package/dist/es/standards-sdk.es137.js.map +1 -1
  217. package/dist/es/standards-sdk.es138.js +1107 -175
  218. package/dist/es/standards-sdk.es138.js.map +1 -1
  219. package/dist/es/standards-sdk.es139.js +218 -1479
  220. package/dist/es/standards-sdk.es139.js.map +1 -1
  221. package/dist/es/standards-sdk.es14.js +1 -1
  222. package/dist/es/standards-sdk.es140.js +422 -1500
  223. package/dist/es/standards-sdk.es140.js.map +1 -1
  224. package/dist/es/standards-sdk.es141.js +351 -13
  225. package/dist/es/standards-sdk.es141.js.map +1 -1
  226. package/dist/es/standards-sdk.es142.js +1102 -73
  227. package/dist/es/standards-sdk.es142.js.map +1 -1
  228. package/dist/es/standards-sdk.es143.js +203 -76
  229. package/dist/es/standards-sdk.es143.js.map +1 -1
  230. package/dist/es/standards-sdk.es144.js +1459 -830
  231. package/dist/es/standards-sdk.es144.js.map +1 -1
  232. package/dist/es/standards-sdk.es145.js +1499 -59
  233. package/dist/es/standards-sdk.es145.js.map +1 -1
  234. package/dist/es/standards-sdk.es146.js +14 -156
  235. package/dist/es/standards-sdk.es146.js.map +1 -1
  236. package/dist/es/standards-sdk.es147.js +87 -7
  237. package/dist/es/standards-sdk.es147.js.map +1 -1
  238. package/dist/es/standards-sdk.es148.js +74 -79
  239. package/dist/es/standards-sdk.es148.js.map +1 -1
  240. package/dist/es/standards-sdk.es149.js +934 -61
  241. package/dist/es/standards-sdk.es149.js.map +1 -1
  242. package/dist/es/standards-sdk.es15.js +1 -1
  243. package/dist/es/standards-sdk.es150.js +60 -30
  244. package/dist/es/standards-sdk.es150.js.map +1 -1
  245. package/dist/es/standards-sdk.es151.js +159 -34
  246. package/dist/es/standards-sdk.es151.js.map +1 -1
  247. package/dist/es/standards-sdk.es152.js +7 -48
  248. package/dist/es/standards-sdk.es152.js.map +1 -1
  249. package/dist/es/standards-sdk.es153.js +70 -122
  250. package/dist/es/standards-sdk.es153.js.map +1 -1
  251. package/dist/es/standards-sdk.es154.js +58 -35
  252. package/dist/es/standards-sdk.es154.js.map +1 -1
  253. package/dist/es/standards-sdk.es155.js +30 -12482
  254. package/dist/es/standards-sdk.es155.js.map +1 -1
  255. package/dist/es/standards-sdk.es156.js +34 -56
  256. package/dist/es/standards-sdk.es156.js.map +1 -1
  257. package/dist/es/standards-sdk.es157.js +48 -84
  258. package/dist/es/standards-sdk.es157.js.map +1 -1
  259. package/dist/es/standards-sdk.es158.js +128 -71
  260. package/dist/es/standards-sdk.es158.js.map +1 -1
  261. package/dist/es/standards-sdk.es159.js +33 -191
  262. package/dist/es/standards-sdk.es159.js.map +1 -1
  263. package/dist/es/standards-sdk.es16.js +5 -5
  264. package/dist/es/standards-sdk.es160.js +12477 -12
  265. package/dist/es/standards-sdk.es160.js.map +1 -1
  266. package/dist/es/standards-sdk.es161.js +15 -548
  267. package/dist/es/standards-sdk.es161.js.map +1 -1
  268. package/dist/es/standards-sdk.es162.js +51 -167
  269. package/dist/es/standards-sdk.es162.js.map +1 -1
  270. package/dist/es/standards-sdk.es163.js +70 -308
  271. package/dist/es/standards-sdk.es163.js.map +1 -1
  272. package/dist/es/standards-sdk.es164.js +71 -336
  273. package/dist/es/standards-sdk.es164.js.map +1 -1
  274. package/dist/es/standards-sdk.es165.js +186 -439
  275. package/dist/es/standards-sdk.es165.js.map +1 -1
  276. package/dist/es/standards-sdk.es166.js +537 -318
  277. package/dist/es/standards-sdk.es166.js.map +1 -1
  278. package/dist/es/standards-sdk.es167.js +63 -66
  279. package/dist/es/standards-sdk.es167.js.map +1 -1
  280. package/dist/es/standards-sdk.es168.js +165 -66
  281. package/dist/es/standards-sdk.es168.js.map +1 -1
  282. package/dist/es/standards-sdk.es169.js +310 -160
  283. package/dist/es/standards-sdk.es169.js.map +1 -1
  284. package/dist/es/standards-sdk.es170.js +336 -212
  285. package/dist/es/standards-sdk.es170.js.map +1 -1
  286. package/dist/es/standards-sdk.es171.js +437 -223
  287. package/dist/es/standards-sdk.es171.js.map +1 -1
  288. package/dist/es/standards-sdk.es172.js +324 -112
  289. package/dist/es/standards-sdk.es172.js.map +1 -1
  290. package/dist/es/standards-sdk.es173.js +65 -115
  291. package/dist/es/standards-sdk.es173.js.map +1 -1
  292. package/dist/es/standards-sdk.es174.js +151 -140
  293. package/dist/es/standards-sdk.es174.js.map +1 -1
  294. package/dist/es/standards-sdk.es175.js +193 -156
  295. package/dist/es/standards-sdk.es175.js.map +1 -1
  296. package/dist/es/standards-sdk.es176.js +221 -121
  297. package/dist/es/standards-sdk.es176.js.map +1 -1
  298. package/dist/es/standards-sdk.es177.js +81 -293
  299. package/dist/es/standards-sdk.es177.js.map +1 -1
  300. package/dist/es/standards-sdk.es178.js +114 -247
  301. package/dist/es/standards-sdk.es178.js.map +1 -1
  302. package/dist/es/standards-sdk.es179.js +119 -110
  303. package/dist/es/standards-sdk.es179.js.map +1 -1
  304. package/dist/es/standards-sdk.es18.js +15 -14
  305. package/dist/es/standards-sdk.es18.js.map +1 -1
  306. package/dist/es/standards-sdk.es180.js +188 -0
  307. package/dist/es/standards-sdk.es180.js.map +1 -0
  308. package/dist/es/standards-sdk.es181.js +142 -0
  309. package/dist/es/standards-sdk.es181.js.map +1 -0
  310. package/dist/es/standards-sdk.es182.js +334 -0
  311. package/dist/es/standards-sdk.es182.js.map +1 -0
  312. package/dist/es/standards-sdk.es183.js +262 -0
  313. package/dist/es/standards-sdk.es183.js.map +1 -0
  314. package/dist/es/standards-sdk.es184.js +155 -0
  315. package/dist/es/standards-sdk.es184.js.map +1 -0
  316. package/dist/es/standards-sdk.es19.js +9 -9
  317. package/dist/es/standards-sdk.es2.js +2 -2
  318. package/dist/es/standards-sdk.es20.js +1 -1
  319. package/dist/es/standards-sdk.es21.js +1 -1
  320. package/dist/es/standards-sdk.es22.js +1 -1
  321. package/dist/es/standards-sdk.es23.js +1 -1
  322. package/dist/es/standards-sdk.es24.js +1 -1
  323. package/dist/es/standards-sdk.es25.js +1 -1
  324. package/dist/es/standards-sdk.es26.js +1 -1
  325. package/dist/es/standards-sdk.es27.js +13 -13
  326. package/dist/es/standards-sdk.es27.js.map +1 -1
  327. package/dist/es/standards-sdk.es28.js.map +1 -1
  328. package/dist/es/standards-sdk.es30.js +2 -2
  329. package/dist/es/standards-sdk.es31.js +4 -4
  330. package/dist/es/standards-sdk.es32.js +1 -1
  331. package/dist/es/standards-sdk.es35.js +6 -6
  332. package/dist/es/standards-sdk.es36.js +5 -5
  333. package/dist/es/standards-sdk.es36.js.map +1 -1
  334. package/dist/es/standards-sdk.es37.js +2 -2
  335. package/dist/es/standards-sdk.es38.js +2 -2
  336. package/dist/es/standards-sdk.es39.js +1 -1
  337. package/dist/es/standards-sdk.es4.js +3 -3
  338. package/dist/es/standards-sdk.es4.js.map +1 -1
  339. package/dist/es/standards-sdk.es40.js +1 -1
  340. package/dist/es/standards-sdk.es41.js +2 -2
  341. package/dist/es/standards-sdk.es46.js +1 -1
  342. package/dist/es/standards-sdk.es5.js +2 -2
  343. package/dist/es/standards-sdk.es51.js +1 -1
  344. package/dist/es/standards-sdk.es53.js +1 -1
  345. package/dist/es/standards-sdk.es56.js +2 -2
  346. package/dist/es/standards-sdk.es59.js +1 -1
  347. package/dist/es/standards-sdk.es6.js +2 -2
  348. package/dist/es/standards-sdk.es60.js +1 -1
  349. package/dist/es/standards-sdk.es62.js +1 -1
  350. package/dist/es/standards-sdk.es63.js +2 -2
  351. package/dist/es/standards-sdk.es64.js +1 -1
  352. package/dist/es/standards-sdk.es65.js +1 -1
  353. package/dist/es/standards-sdk.es66.js +1 -1
  354. package/dist/es/standards-sdk.es67.js +7 -7
  355. package/dist/es/standards-sdk.es69.js +1 -1
  356. package/dist/es/standards-sdk.es7.js +1 -1
  357. package/dist/es/standards-sdk.es70.js.map +1 -1
  358. package/dist/es/standards-sdk.es71.js +2 -2
  359. package/dist/es/standards-sdk.es72.js +5 -4
  360. package/dist/es/standards-sdk.es72.js.map +1 -1
  361. package/dist/es/standards-sdk.es75.js +6 -6
  362. package/dist/es/standards-sdk.es75.js.map +1 -1
  363. package/dist/es/standards-sdk.es76.js +3 -3
  364. package/dist/es/standards-sdk.es77.js +2 -2
  365. package/dist/es/standards-sdk.es78.js +1 -1
  366. package/dist/es/standards-sdk.es79.js.map +1 -1
  367. package/dist/es/standards-sdk.es8.js.map +1 -1
  368. package/dist/es/standards-sdk.es81.js +2 -2
  369. package/dist/es/standards-sdk.es83.js +7 -5
  370. package/dist/es/standards-sdk.es83.js.map +1 -1
  371. package/dist/es/standards-sdk.es84.js +4 -4
  372. package/dist/es/standards-sdk.es85.js +1 -1
  373. package/dist/es/standards-sdk.es88.js +1 -1
  374. package/dist/es/standards-sdk.es89.js +2 -2
  375. package/dist/es/standards-sdk.es9.js +2 -2
  376. package/dist/es/standards-sdk.es90.js +5 -5
  377. package/dist/es/standards-sdk.es90.js.map +1 -1
  378. package/dist/es/standards-sdk.es94.js +4 -4
  379. package/dist/es/standards-sdk.es94.js.map +1 -1
  380. package/dist/es/standards-sdk.es96.js +2 -2
  381. package/dist/es/standards-sdk.es98.js +1 -1
  382. package/dist/es/standards-sdk.es99.js +4 -4
  383. package/dist/es/standards-sdk.es99.js.map +1 -1
  384. package/dist/es/utils/key-type-detector.d.ts.map +1 -1
  385. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { buildTopicCreateTx, buildMessageTx } from "./standards-sdk.es154.js";
1
+ import { buildTopicCreateTx, buildMessageTx } from "./standards-sdk.es159.js";
2
2
  import { HCS21_SAFE_MESSAGE_BYTES, HCS21_MAX_MESSAGE_BYTES, HCS21TopicType, HCS21MetadataPointerPattern } from "./standards-sdk.es86.js";
3
3
  import { HCS21ValidationError } from "./standards-sdk.es87.js";
4
4
  function buildHcs21RegistryMemo(params) {
@@ -1,5 +1,5 @@
1
- import { HederaMirrorNode } from "./standards-sdk.es139.js";
2
- import { Logger } from "./standards-sdk.es118.js";
1
+ import { HederaMirrorNode } from "./standards-sdk.es144.js";
2
+ import { Logger } from "./standards-sdk.es123.js";
3
3
  import { HCS21ValidationError } from "./standards-sdk.es87.js";
4
4
  import { HCS21_PROTOCOL, adapterDeclarationSchema, HCS21_SAFE_MESSAGE_BYTES, HCS21_MAX_MESSAGE_BYTES } from "./standards-sdk.es86.js";
5
5
  class HCS21BaseClient {
@@ -1,5 +1,5 @@
1
- import { Logger } from "./standards-sdk.es118.js";
2
- import { HederaMirrorNode } from "./standards-sdk.es139.js";
1
+ import { Logger } from "./standards-sdk.es123.js";
2
+ import { HederaMirrorNode } from "./standards-sdk.es144.js";
3
3
  import { HCS7ConfigType, HCS7Operation, hcs7MessageSchema } from "./standards-sdk.es8.js";
4
4
  class HCS7BaseClient {
5
5
  constructor(config) {
@@ -1,14 +1,14 @@
1
1
  import { Client, Status } from "@hashgraph/sdk";
2
- import { createNodeOperatorContext } from "./standards-sdk.es153.js";
3
- import { Logger } from "./standards-sdk.es118.js";
2
+ import { createNodeOperatorContext } from "./standards-sdk.es158.js";
3
+ import { Logger } from "./standards-sdk.es123.js";
4
4
  import { HCS21BaseClient } from "./standards-sdk.es89.js";
5
5
  import { metadataDocumentSchema, HCS21TopicType, HCS21ManifestPointerPattern } from "./standards-sdk.es86.js";
6
6
  import { buildHcs21CreateRegistryTx, buildHcs21MessageTx } from "./standards-sdk.es88.js";
7
7
  import { buildHcs2CreateRegistryTx, buildHcs2RegisterTx } from "./standards-sdk.es78.js";
8
8
  import { HCS2RegistryType } from "./standards-sdk.es74.js";
9
9
  import { HCS21ValidationError } from "./standards-sdk.es87.js";
10
- import { inscribe } from "./standards-sdk.es137.js";
11
- import { getTopicId } from "./standards-sdk.es127.js";
10
+ import { inscribe } from "./standards-sdk.es142.js";
11
+ import { getTopicId } from "./standards-sdk.es132.js";
12
12
  class HCS21Client extends HCS21BaseClient {
13
13
  constructor(config) {
14
14
  const logger = config.logger || new Logger({ level: config.logLevel || "info", module: "HCS-21" });
@@ -17,7 +17,7 @@ class HCS21Client extends HCS21BaseClient {
17
17
  logger,
18
18
  mirrorNodeUrl: config.mirrorNodeUrl
19
19
  });
20
- const baseClient = config.network === "mainnet" ? Client.forMainnet() : Client.forTestnet();
20
+ const baseClient = config.client ?? (config.network === "mainnet" ? Client.forMainnet() : Client.forTestnet());
21
21
  this.operatorCtx = createNodeOperatorContext({
22
22
  network: config.network,
23
23
  operatorId: config.operatorId,
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es90.js","sources":["../../src/hcs-21/sdk.ts"],"sourcesContent":["import {\n Client,\n PrivateKey,\n Status,\n TopicCreateTransaction,\n} from '@hashgraph/sdk';\nimport {\n createNodeOperatorContext,\n NodeOperatorContext,\n} from '../common/node-operator-resolver';\nimport { Logger, ILogger, LogLevel } from '../utils/logger';\nimport { NetworkType } from '../utils/types';\nimport { HCS21BaseClient, BuildDeclarationParams } from './base-client';\nimport {\n AdapterDeclaration,\n HCS21ManifestPointerPattern,\n HCS21MetadataDocument,\n HCS21TopicType,\n ManifestPointer,\n metadataDocumentSchema,\n} from './types';\nimport { buildHcs21CreateRegistryTx, buildHcs21MessageTx } from './tx';\nimport { buildHcs2CreateRegistryTx, buildHcs2RegisterTx } from '../hcs-2/tx';\nimport { HCS2RegistryType } from '../hcs-2/types';\nimport { HCS21ValidationError } from './errors';\nimport { MaybeKey } from '../common/tx/tx-utils';\nimport { inscribe } from '../inscribe/inscriber';\nimport type { InscriptionOptions } from '../inscribe/types';\nimport { getTopicId } from '../utils/topic-id-utils';\n\nexport interface HCS21ClientConfig {\n network: NetworkType;\n operatorId: string;\n operatorKey: string | PrivateKey;\n keyType?: 'ed25519' | 'ecdsa';\n logLevel?: LogLevel;\n logger?: ILogger;\n mirrorNodeUrl?: string;\n}\n\nexport interface CreateRegistryTopicParams {\n ttl: number;\n indexed?: 0 | 1;\n type?: HCS21TopicType;\n metaTopicId?: string;\n adminKey?: MaybeKey;\n submitKey?: MaybeKey;\n transactionMemo?: string;\n}\n\nexport interface PublishDeclarationResult {\n sequenceNumber?: number;\n transactionId: string;\n}\n\nexport interface PublishDeclarationParams {\n topicId: string;\n declaration: AdapterDeclaration | BuildDeclarationParams;\n transactionMemo?: string;\n}\n\nexport interface InscribeMetadataParams {\n document: HCS21MetadataDocument;\n fileName?: string;\n inscriptionOptions?: InscriptionOptions;\n}\n\nexport interface CreateAdapterVersionPointerTopicParams {\n ttl: number;\n adminKey?: MaybeKey;\n submitKey?: MaybeKey;\n transactionMemo?: string;\n memoOverride?: string;\n}\n\nexport interface CreateRegistryDiscoveryTopicParams {\n ttl: number;\n adminKey?: MaybeKey;\n submitKey?: MaybeKey;\n transactionMemo?: string;\n memoOverride?: string;\n}\n\nexport interface CreateAdapterCategoryTopicParams {\n ttl: number;\n indexed?: 0 | 1;\n metaTopicId?: string;\n adminKey?: MaybeKey;\n submitKey?: MaybeKey;\n transactionMemo?: string;\n}\n\nexport interface PublishVersionPointerParams {\n versionTopicId: string;\n declarationTopicId: string;\n memo?: string;\n transactionMemo?: string;\n}\n\nexport interface RegisterCategoryTopicParams {\n discoveryTopicId: string;\n categoryTopicId: string;\n metadata?: string;\n memo?: string;\n transactionMemo?: string;\n}\n\nexport interface PublishCategoryEntryParams {\n categoryTopicId: string;\n adapterId: string;\n versionTopicId: string;\n metadata?: string;\n memo?: string;\n transactionMemo?: string;\n}\n\nexport interface VersionPointerResolution {\n versionTopicId: string;\n declarationTopicId: string;\n sequenceNumber: number;\n payer?: string;\n memo?: string;\n op?: string;\n}\n\nexport class HCS21Client extends HCS21BaseClient {\n private readonly client: Client;\n private readonly operatorCtx: NodeOperatorContext;\n\n constructor(config: HCS21ClientConfig) {\n const logger =\n config.logger ||\n new Logger({ level: config.logLevel || 'info', module: 'HCS-21' });\n super({\n network: config.network,\n logger,\n mirrorNodeUrl: config.mirrorNodeUrl,\n });\n\n const baseClient =\n config.network === 'mainnet' ? Client.forMainnet() : Client.forTestnet();\n\n this.operatorCtx = createNodeOperatorContext({\n network: config.network,\n operatorId: config.operatorId,\n operatorKey: config.operatorKey,\n keyType: config.keyType,\n mirrorNode: this.mirrorNode,\n logger: this.logger,\n client: baseClient,\n });\n\n void this.operatorCtx.ensureInitialized();\n this.client = this.operatorCtx.client;\n }\n\n async inscribeMetadata(\n params: InscribeMetadataParams,\n ): Promise<ManifestPointer> {\n await this.operatorCtx.ensureInitialized();\n\n const metadataPayload = metadataDocumentSchema.parse(params.document);\n const metadataJson = JSON.stringify(metadataPayload, null, 2);\n const buffer = Buffer.from(metadataJson, 'utf8');\n const connectionMode =\n params.inscriptionOptions?.connectionMode ??\n (params.inscriptionOptions?.websocket === false ? 'http' : 'auto');\n const inscriptionOptions: InscriptionOptions = {\n waitForConfirmation: true,\n connectionMode,\n websocket: params.inscriptionOptions?.websocket ?? false,\n ...(params.inscriptionOptions || {}),\n metadata: {\n ...(params.inscriptionOptions?.metadata || {}),\n ...metadataPayload,\n },\n };\n\n const inscription = await inscribe(\n {\n type: 'buffer',\n buffer,\n fileName:\n params.fileName || `hcs21-adapter-manifest-${Date.now()}.json`,\n mimeType: 'application/json',\n },\n {\n accountId: this.operatorCtx.operatorId.toString(),\n privateKey: this.operatorCtx.operatorKey,\n network: this.network,\n },\n inscriptionOptions,\n );\n\n if (!inscription.confirmed || !inscription.inscription) {\n throw new HCS21ValidationError(\n 'Failed to inscribe HCS-21 metadata',\n 'invalid_payload',\n );\n }\n\n const topicId =\n (inscription.inscription as { jsonTopicId?: string }).jsonTopicId ||\n (inscription.inscription as { topic_id?: string }).topic_id ||\n getTopicId(inscription.inscription);\n\n if (!topicId) {\n throw new HCS21ValidationError(\n 'Metadata inscription did not return a topic ID',\n 'invalid_payload',\n );\n }\n\n const rawSequence =\n (inscription.inscription as { sequence_number?: number })\n .sequence_number ??\n (inscription.inscription as { sequenceNumber?: number }).sequenceNumber;\n\n const pointerResult = await this.resolveManifestPointer(\n topicId,\n rawSequence,\n );\n\n const declarationManifestSequence = (\n inscription.result as { manifest_sequence?: number }\n )?.manifest_sequence;\n\n const resultDetails =\n inscription.result && 'jobId' in inscription.result\n ? {\n jobId: inscription.result.jobId,\n transactionId: inscription.result.transactionId,\n totalCostHbar: inscription.costSummary?.totalCostHbar,\n costBreakdown: inscription.costSummary?.breakdown,\n }\n : {};\n\n return {\n pointer: pointerResult.pointer,\n topicId,\n sequenceNumber: pointerResult.sequenceNumber,\n manifestSequence:\n declarationManifestSequence || pointerResult.sequenceNumber,\n ...resultDetails,\n };\n }\n\n async createRegistryTopic(\n params: CreateRegistryTopicParams,\n ): Promise<string> {\n await this.operatorCtx.ensureInitialized();\n\n const tx: TopicCreateTransaction = buildHcs21CreateRegistryTx({\n ttl: params.ttl,\n indexed: params.indexed,\n type: params.type,\n metaTopicId: params.metaTopicId,\n adminKey: params.adminKey,\n submitKey: params.submitKey,\n operatorPublicKey: this.operatorCtx.operatorKey.publicKey,\n });\n\n if (params.transactionMemo) {\n tx.setTransactionMemo(params.transactionMemo);\n }\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success || !receipt.topicId) {\n throw new HCS21ValidationError(\n 'Failed to create HCS-21 registry topic',\n 'invalid_payload',\n );\n }\n\n return receipt.topicId.toString();\n }\n\n async createAdapterVersionPointerTopic(\n params: CreateAdapterVersionPointerTopicParams,\n ): Promise<string> {\n await this.operatorCtx.ensureInitialized();\n\n const tx = buildHcs2CreateRegistryTx({\n registryType: HCS2RegistryType.NON_INDEXED,\n ttl: params.ttl,\n adminKey: params.adminKey,\n submitKey: params.submitKey,\n memoOverride: params.memoOverride,\n operatorPublicKey: this.operatorCtx.operatorKey.publicKey,\n });\n\n if (params.transactionMemo) {\n tx.setTransactionMemo(params.transactionMemo);\n }\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success || !receipt.topicId) {\n throw new HCS21ValidationError(\n 'Failed to create HCS-2 registry version topic',\n 'invalid_payload',\n );\n }\n\n return receipt.topicId.toString();\n }\n\n async createRegistryDiscoveryTopic(\n params: CreateRegistryDiscoveryTopicParams,\n ): Promise<string> {\n await this.operatorCtx.ensureInitialized();\n\n const tx = buildHcs2CreateRegistryTx({\n registryType: HCS2RegistryType.INDEXED,\n ttl: params.ttl,\n adminKey: params.adminKey,\n submitKey: params.submitKey,\n memoOverride: params.memoOverride,\n operatorPublicKey: this.operatorCtx.operatorKey.publicKey,\n });\n\n if (params.transactionMemo) {\n tx.setTransactionMemo(params.transactionMemo);\n }\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success || !receipt.topicId) {\n throw new HCS21ValidationError(\n 'Failed to create registry-of-registries topic',\n 'invalid_payload',\n );\n }\n\n return receipt.topicId.toString();\n }\n\n async createAdapterCategoryTopic(\n params: CreateAdapterCategoryTopicParams,\n ): Promise<string> {\n await this.operatorCtx.ensureInitialized();\n\n const tx: TopicCreateTransaction = buildHcs21CreateRegistryTx({\n ttl: params.ttl,\n indexed: params.indexed ?? 0,\n type: HCS21TopicType.ADAPTER_CATEGORY,\n metaTopicId: params.metaTopicId,\n adminKey: params.adminKey,\n submitKey: params.submitKey,\n operatorPublicKey: this.operatorCtx.operatorKey.publicKey,\n });\n\n if (params.transactionMemo) {\n tx.setTransactionMemo(params.transactionMemo);\n }\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success || !receipt.topicId) {\n throw new HCS21ValidationError(\n 'Failed to create adapter category topic',\n 'invalid_payload',\n );\n }\n\n return receipt.topicId.toString();\n }\n\n /**\n * Publish a pointer from a version topic to the active declaration topic.\n * Version pointer messages carry no metadata.\n */\n async publishVersionPointer(\n params: PublishVersionPointerParams,\n ): Promise<PublishDeclarationResult> {\n await this.operatorCtx.ensureInitialized();\n\n const tx = buildHcs2RegisterTx({\n registryTopicId: params.versionTopicId,\n targetTopicId: params.declarationTopicId,\n memo: params.memo,\n analyticsMemo: params.transactionMemo,\n });\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success) {\n throw new HCS21ValidationError(\n 'Failed to publish registry version pointer',\n 'invalid_payload',\n );\n }\n\n return {\n sequenceNumber: receipt.topicSequenceNumber?.toNumber(),\n transactionId: response.transactionId.toString(),\n };\n }\n\n async resolveVersionPointer(\n versionTopicId: string,\n ): Promise<VersionPointerResolution> {\n const [latest] = await this.mirrorNode.getTopicMessages(versionTopicId, {\n limit: 1,\n order: 'desc',\n });\n\n if (!latest) {\n throw new HCS21ValidationError(\n 'Version pointer topic has no messages',\n 'invalid_payload',\n );\n }\n\n const declarationTopicId = (latest as { t_id?: unknown }).t_id;\n\n if (\n typeof declarationTopicId !== 'string' ||\n declarationTopicId.length === 0\n ) {\n throw new HCS21ValidationError(\n 'Version pointer topic does not include a declaration topic ID (`t_id`)',\n 'invalid_payload',\n );\n }\n\n const rawSequence =\n typeof latest.sequence_number === 'number'\n ? latest.sequence_number\n : Number(latest.sequence_number);\n const sequenceNumber = Number.isFinite(rawSequence) ? rawSequence : 0;\n\n return {\n versionTopicId,\n declarationTopicId,\n sequenceNumber,\n payer: (latest as { payer?: string }).payer,\n memo: (latest as { m?: string }).m,\n op: (latest as { op?: string }).op,\n };\n }\n\n async registerCategoryTopic(\n params: RegisterCategoryTopicParams,\n ): Promise<PublishDeclarationResult> {\n await this.operatorCtx.ensureInitialized();\n\n const tx = buildHcs2RegisterTx({\n registryTopicId: params.discoveryTopicId,\n targetTopicId: params.categoryTopicId,\n metadata: params.metadata,\n memo: params.memo,\n analyticsMemo: params.transactionMemo,\n });\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success) {\n throw new HCS21ValidationError(\n 'Failed to register adapter category topic',\n 'invalid_payload',\n );\n }\n\n return {\n sequenceNumber: receipt.topicSequenceNumber?.toNumber(),\n transactionId: response.transactionId.toString(),\n };\n }\n\n async publishCategoryEntry(\n params: PublishCategoryEntryParams,\n ): Promise<PublishDeclarationResult> {\n await this.operatorCtx.ensureInitialized();\n\n const memo = params.memo ?? `adapter:${params.adapterId}`;\n const tx = buildHcs2RegisterTx({\n registryTopicId: params.categoryTopicId,\n targetTopicId: params.versionTopicId,\n metadata: params.metadata,\n memo,\n analyticsMemo: params.transactionMemo,\n });\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success) {\n throw new HCS21ValidationError(\n 'Failed to publish adapter category entry',\n 'invalid_payload',\n );\n }\n\n return {\n sequenceNumber: receipt.topicSequenceNumber?.toNumber(),\n transactionId: response.transactionId.toString(),\n };\n }\n\n async publishDeclaration(\n params: PublishDeclarationParams,\n ): Promise<PublishDeclarationResult> {\n await this.operatorCtx.ensureInitialized();\n\n const declaration = this.normalizeDeclarationInput(params.declaration);\n const tx = buildHcs21MessageTx({\n topicId: params.topicId,\n declaration,\n transactionMemo: params.transactionMemo,\n });\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success) {\n throw new HCS21ValidationError(\n 'Failed to submit HCS-21 declaration',\n 'invalid_payload',\n );\n }\n\n return {\n sequenceNumber: receipt.topicSequenceNumber?.toNumber(),\n transactionId: response.transactionId.toString(),\n };\n }\n\n private normalizeDeclarationInput(\n declaration: AdapterDeclaration | BuildDeclarationParams,\n ): AdapterDeclaration {\n if ('p' in declaration) {\n return this.validateDeclaration(declaration);\n }\n return this.buildDeclaration(declaration);\n }\n\n private async resolveManifestPointer(\n topicId: string,\n sequence?: number,\n ): Promise<{ pointer: string; sequenceNumber: number }> {\n const numericSequence =\n typeof sequence === 'string' ? Number(sequence) : sequence;\n let resolvedSequence =\n typeof numericSequence === 'number' && Number.isFinite(numericSequence)\n ? numericSequence\n : undefined;\n\n if (!resolvedSequence) {\n const [latest] = await this.mirrorNode.getTopicMessages(topicId, {\n limit: 1,\n order: 'desc',\n });\n\n if (!latest || !latest.sequence_number) {\n throw new HCS21ValidationError(\n 'Unable to resolve manifest sequence number',\n 'invalid_payload',\n );\n }\n\n resolvedSequence = Number(latest.sequence_number);\n }\n\n if (!Number.isFinite(resolvedSequence)) {\n throw new HCS21ValidationError(\n 'Invalid manifest sequence number',\n 'invalid_payload',\n );\n }\n\n const pointer = `hcs://1/${topicId}`;\n\n if (!HCS21ManifestPointerPattern.test(pointer)) {\n throw new HCS21ValidationError(\n 'Manifest pointer format is invalid',\n 'invalid_payload',\n );\n }\n\n return { pointer, sequenceNumber: resolvedSequence };\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standards-sdk.es90.js","sources":["../../src/hcs-21/sdk.ts"],"sourcesContent":["import {\n Client,\n PrivateKey,\n Status,\n TopicCreateTransaction,\n} from '@hashgraph/sdk';\nimport {\n createNodeOperatorContext,\n NodeOperatorContext,\n} from '../common/node-operator-resolver';\nimport { Logger, ILogger, LogLevel } from '../utils/logger';\nimport { NetworkType } from '../utils/types';\nimport { HCS21BaseClient, BuildDeclarationParams } from './base-client';\nimport {\n AdapterDeclaration,\n HCS21ManifestPointerPattern,\n HCS21MetadataDocument,\n HCS21TopicType,\n ManifestPointer,\n metadataDocumentSchema,\n} from './types';\nimport { buildHcs21CreateRegistryTx, buildHcs21MessageTx } from './tx';\nimport { buildHcs2CreateRegistryTx, buildHcs2RegisterTx } from '../hcs-2/tx';\nimport { HCS2RegistryType } from '../hcs-2/types';\nimport { HCS21ValidationError } from './errors';\nimport { MaybeKey } from '../common/tx/tx-utils';\nimport { inscribe } from '../inscribe/inscriber';\nimport type { InscriptionOptions } from '../inscribe/types';\nimport { getTopicId } from '../utils/topic-id-utils';\n\nexport interface HCS21ClientConfig {\n network: NetworkType;\n operatorId: string;\n operatorKey: string | PrivateKey;\n keyType?: 'ed25519' | 'ecdsa';\n logLevel?: LogLevel;\n logger?: ILogger;\n mirrorNodeUrl?: string;\n client?: Client;\n}\n\nexport interface CreateRegistryTopicParams {\n ttl: number;\n indexed?: 0 | 1;\n type?: HCS21TopicType;\n metaTopicId?: string;\n adminKey?: MaybeKey;\n submitKey?: MaybeKey;\n transactionMemo?: string;\n}\n\nexport interface PublishDeclarationResult {\n sequenceNumber?: number;\n transactionId: string;\n}\n\nexport interface PublishDeclarationParams {\n topicId: string;\n declaration: AdapterDeclaration | BuildDeclarationParams;\n transactionMemo?: string;\n}\n\nexport interface InscribeMetadataParams {\n document: HCS21MetadataDocument;\n fileName?: string;\n inscriptionOptions?: InscriptionOptions;\n}\n\nexport interface CreateAdapterVersionPointerTopicParams {\n ttl: number;\n adminKey?: MaybeKey;\n submitKey?: MaybeKey;\n transactionMemo?: string;\n memoOverride?: string;\n}\n\nexport interface CreateRegistryDiscoveryTopicParams {\n ttl: number;\n adminKey?: MaybeKey;\n submitKey?: MaybeKey;\n transactionMemo?: string;\n memoOverride?: string;\n}\n\nexport interface CreateAdapterCategoryTopicParams {\n ttl: number;\n indexed?: 0 | 1;\n metaTopicId?: string;\n adminKey?: MaybeKey;\n submitKey?: MaybeKey;\n transactionMemo?: string;\n}\n\nexport interface PublishVersionPointerParams {\n versionTopicId: string;\n declarationTopicId: string;\n memo?: string;\n transactionMemo?: string;\n}\n\nexport interface RegisterCategoryTopicParams {\n discoveryTopicId: string;\n categoryTopicId: string;\n metadata?: string;\n memo?: string;\n transactionMemo?: string;\n}\n\nexport interface PublishCategoryEntryParams {\n categoryTopicId: string;\n adapterId: string;\n versionTopicId: string;\n metadata?: string;\n memo?: string;\n transactionMemo?: string;\n}\n\nexport interface VersionPointerResolution {\n versionTopicId: string;\n declarationTopicId: string;\n sequenceNumber: number;\n payer?: string;\n memo?: string;\n op?: string;\n}\n\nexport class HCS21Client extends HCS21BaseClient {\n private readonly client: Client;\n private readonly operatorCtx: NodeOperatorContext;\n\n constructor(config: HCS21ClientConfig) {\n const logger =\n config.logger ||\n new Logger({ level: config.logLevel || 'info', module: 'HCS-21' });\n super({\n network: config.network,\n logger,\n mirrorNodeUrl: config.mirrorNodeUrl,\n });\n\n const baseClient =\n config.client ??\n (config.network === 'mainnet'\n ? Client.forMainnet()\n : Client.forTestnet());\n\n this.operatorCtx = createNodeOperatorContext({\n network: config.network,\n operatorId: config.operatorId,\n operatorKey: config.operatorKey,\n keyType: config.keyType,\n mirrorNode: this.mirrorNode,\n logger: this.logger,\n client: baseClient,\n });\n\n void this.operatorCtx.ensureInitialized();\n this.client = this.operatorCtx.client;\n }\n\n async inscribeMetadata(\n params: InscribeMetadataParams,\n ): Promise<ManifestPointer> {\n await this.operatorCtx.ensureInitialized();\n\n const metadataPayload = metadataDocumentSchema.parse(params.document);\n const metadataJson = JSON.stringify(metadataPayload, null, 2);\n const buffer = Buffer.from(metadataJson, 'utf8');\n const connectionMode =\n params.inscriptionOptions?.connectionMode ??\n (params.inscriptionOptions?.websocket === false ? 'http' : 'auto');\n const inscriptionOptions: InscriptionOptions = {\n waitForConfirmation: true,\n connectionMode,\n websocket: params.inscriptionOptions?.websocket ?? false,\n ...(params.inscriptionOptions || {}),\n metadata: {\n ...(params.inscriptionOptions?.metadata || {}),\n ...metadataPayload,\n },\n };\n\n const inscription = await inscribe(\n {\n type: 'buffer',\n buffer,\n fileName:\n params.fileName || `hcs21-adapter-manifest-${Date.now()}.json`,\n mimeType: 'application/json',\n },\n {\n accountId: this.operatorCtx.operatorId.toString(),\n privateKey: this.operatorCtx.operatorKey,\n network: this.network,\n },\n inscriptionOptions,\n );\n\n if (!inscription.confirmed || !inscription.inscription) {\n throw new HCS21ValidationError(\n 'Failed to inscribe HCS-21 metadata',\n 'invalid_payload',\n );\n }\n\n const topicId =\n (inscription.inscription as { jsonTopicId?: string }).jsonTopicId ||\n (inscription.inscription as { topic_id?: string }).topic_id ||\n getTopicId(inscription.inscription);\n\n if (!topicId) {\n throw new HCS21ValidationError(\n 'Metadata inscription did not return a topic ID',\n 'invalid_payload',\n );\n }\n\n const rawSequence =\n (inscription.inscription as { sequence_number?: number })\n .sequence_number ??\n (inscription.inscription as { sequenceNumber?: number }).sequenceNumber;\n\n const pointerResult = await this.resolveManifestPointer(\n topicId,\n rawSequence,\n );\n\n const declarationManifestSequence = (\n inscription.result as { manifest_sequence?: number }\n )?.manifest_sequence;\n\n const resultDetails =\n inscription.result && 'jobId' in inscription.result\n ? {\n jobId: inscription.result.jobId,\n transactionId: inscription.result.transactionId,\n totalCostHbar: inscription.costSummary?.totalCostHbar,\n costBreakdown: inscription.costSummary?.breakdown,\n }\n : {};\n\n return {\n pointer: pointerResult.pointer,\n topicId,\n sequenceNumber: pointerResult.sequenceNumber,\n manifestSequence:\n declarationManifestSequence || pointerResult.sequenceNumber,\n ...resultDetails,\n };\n }\n\n async createRegistryTopic(\n params: CreateRegistryTopicParams,\n ): Promise<string> {\n await this.operatorCtx.ensureInitialized();\n\n const tx: TopicCreateTransaction = buildHcs21CreateRegistryTx({\n ttl: params.ttl,\n indexed: params.indexed,\n type: params.type,\n metaTopicId: params.metaTopicId,\n adminKey: params.adminKey,\n submitKey: params.submitKey,\n operatorPublicKey: this.operatorCtx.operatorKey.publicKey,\n });\n\n if (params.transactionMemo) {\n tx.setTransactionMemo(params.transactionMemo);\n }\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success || !receipt.topicId) {\n throw new HCS21ValidationError(\n 'Failed to create HCS-21 registry topic',\n 'invalid_payload',\n );\n }\n\n return receipt.topicId.toString();\n }\n\n async createAdapterVersionPointerTopic(\n params: CreateAdapterVersionPointerTopicParams,\n ): Promise<string> {\n await this.operatorCtx.ensureInitialized();\n\n const tx = buildHcs2CreateRegistryTx({\n registryType: HCS2RegistryType.NON_INDEXED,\n ttl: params.ttl,\n adminKey: params.adminKey,\n submitKey: params.submitKey,\n memoOverride: params.memoOverride,\n operatorPublicKey: this.operatorCtx.operatorKey.publicKey,\n });\n\n if (params.transactionMemo) {\n tx.setTransactionMemo(params.transactionMemo);\n }\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success || !receipt.topicId) {\n throw new HCS21ValidationError(\n 'Failed to create HCS-2 registry version topic',\n 'invalid_payload',\n );\n }\n\n return receipt.topicId.toString();\n }\n\n async createRegistryDiscoveryTopic(\n params: CreateRegistryDiscoveryTopicParams,\n ): Promise<string> {\n await this.operatorCtx.ensureInitialized();\n\n const tx = buildHcs2CreateRegistryTx({\n registryType: HCS2RegistryType.INDEXED,\n ttl: params.ttl,\n adminKey: params.adminKey,\n submitKey: params.submitKey,\n memoOverride: params.memoOverride,\n operatorPublicKey: this.operatorCtx.operatorKey.publicKey,\n });\n\n if (params.transactionMemo) {\n tx.setTransactionMemo(params.transactionMemo);\n }\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success || !receipt.topicId) {\n throw new HCS21ValidationError(\n 'Failed to create registry-of-registries topic',\n 'invalid_payload',\n );\n }\n\n return receipt.topicId.toString();\n }\n\n async createAdapterCategoryTopic(\n params: CreateAdapterCategoryTopicParams,\n ): Promise<string> {\n await this.operatorCtx.ensureInitialized();\n\n const tx: TopicCreateTransaction = buildHcs21CreateRegistryTx({\n ttl: params.ttl,\n indexed: params.indexed ?? 0,\n type: HCS21TopicType.ADAPTER_CATEGORY,\n metaTopicId: params.metaTopicId,\n adminKey: params.adminKey,\n submitKey: params.submitKey,\n operatorPublicKey: this.operatorCtx.operatorKey.publicKey,\n });\n\n if (params.transactionMemo) {\n tx.setTransactionMemo(params.transactionMemo);\n }\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success || !receipt.topicId) {\n throw new HCS21ValidationError(\n 'Failed to create adapter category topic',\n 'invalid_payload',\n );\n }\n\n return receipt.topicId.toString();\n }\n\n /**\n * Publish a pointer from a version topic to the active declaration topic.\n * Version pointer messages carry no metadata.\n */\n async publishVersionPointer(\n params: PublishVersionPointerParams,\n ): Promise<PublishDeclarationResult> {\n await this.operatorCtx.ensureInitialized();\n\n const tx = buildHcs2RegisterTx({\n registryTopicId: params.versionTopicId,\n targetTopicId: params.declarationTopicId,\n memo: params.memo,\n analyticsMemo: params.transactionMemo,\n });\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success) {\n throw new HCS21ValidationError(\n 'Failed to publish registry version pointer',\n 'invalid_payload',\n );\n }\n\n return {\n sequenceNumber: receipt.topicSequenceNumber?.toNumber(),\n transactionId: response.transactionId.toString(),\n };\n }\n\n async resolveVersionPointer(\n versionTopicId: string,\n ): Promise<VersionPointerResolution> {\n const [latest] = await this.mirrorNode.getTopicMessages(versionTopicId, {\n limit: 1,\n order: 'desc',\n });\n\n if (!latest) {\n throw new HCS21ValidationError(\n 'Version pointer topic has no messages',\n 'invalid_payload',\n );\n }\n\n const declarationTopicId = (latest as { t_id?: unknown }).t_id;\n\n if (\n typeof declarationTopicId !== 'string' ||\n declarationTopicId.length === 0\n ) {\n throw new HCS21ValidationError(\n 'Version pointer topic does not include a declaration topic ID (`t_id`)',\n 'invalid_payload',\n );\n }\n\n const rawSequence =\n typeof latest.sequence_number === 'number'\n ? latest.sequence_number\n : Number(latest.sequence_number);\n const sequenceNumber = Number.isFinite(rawSequence) ? rawSequence : 0;\n\n return {\n versionTopicId,\n declarationTopicId,\n sequenceNumber,\n payer: (latest as { payer?: string }).payer,\n memo: (latest as { m?: string }).m,\n op: (latest as { op?: string }).op,\n };\n }\n\n async registerCategoryTopic(\n params: RegisterCategoryTopicParams,\n ): Promise<PublishDeclarationResult> {\n await this.operatorCtx.ensureInitialized();\n\n const tx = buildHcs2RegisterTx({\n registryTopicId: params.discoveryTopicId,\n targetTopicId: params.categoryTopicId,\n metadata: params.metadata,\n memo: params.memo,\n analyticsMemo: params.transactionMemo,\n });\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success) {\n throw new HCS21ValidationError(\n 'Failed to register adapter category topic',\n 'invalid_payload',\n );\n }\n\n return {\n sequenceNumber: receipt.topicSequenceNumber?.toNumber(),\n transactionId: response.transactionId.toString(),\n };\n }\n\n async publishCategoryEntry(\n params: PublishCategoryEntryParams,\n ): Promise<PublishDeclarationResult> {\n await this.operatorCtx.ensureInitialized();\n\n const memo = params.memo ?? `adapter:${params.adapterId}`;\n const tx = buildHcs2RegisterTx({\n registryTopicId: params.categoryTopicId,\n targetTopicId: params.versionTopicId,\n metadata: params.metadata,\n memo,\n analyticsMemo: params.transactionMemo,\n });\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success) {\n throw new HCS21ValidationError(\n 'Failed to publish adapter category entry',\n 'invalid_payload',\n );\n }\n\n return {\n sequenceNumber: receipt.topicSequenceNumber?.toNumber(),\n transactionId: response.transactionId.toString(),\n };\n }\n\n async publishDeclaration(\n params: PublishDeclarationParams,\n ): Promise<PublishDeclarationResult> {\n await this.operatorCtx.ensureInitialized();\n\n const declaration = this.normalizeDeclarationInput(params.declaration);\n const tx = buildHcs21MessageTx({\n topicId: params.topicId,\n declaration,\n transactionMemo: params.transactionMemo,\n });\n\n const response = await tx.execute(this.client);\n const receipt = await response.getReceipt(this.client);\n\n if (receipt.status !== Status.Success) {\n throw new HCS21ValidationError(\n 'Failed to submit HCS-21 declaration',\n 'invalid_payload',\n );\n }\n\n return {\n sequenceNumber: receipt.topicSequenceNumber?.toNumber(),\n transactionId: response.transactionId.toString(),\n };\n }\n\n private normalizeDeclarationInput(\n declaration: AdapterDeclaration | BuildDeclarationParams,\n ): AdapterDeclaration {\n if ('p' in declaration) {\n return this.validateDeclaration(declaration);\n }\n return this.buildDeclaration(declaration);\n }\n\n private async resolveManifestPointer(\n topicId: string,\n sequence?: number,\n ): Promise<{ pointer: string; sequenceNumber: number }> {\n const numericSequence =\n typeof sequence === 'string' ? Number(sequence) : sequence;\n let resolvedSequence =\n typeof numericSequence === 'number' && Number.isFinite(numericSequence)\n ? numericSequence\n : undefined;\n\n if (!resolvedSequence) {\n const [latest] = await this.mirrorNode.getTopicMessages(topicId, {\n limit: 1,\n order: 'desc',\n });\n\n if (!latest || !latest.sequence_number) {\n throw new HCS21ValidationError(\n 'Unable to resolve manifest sequence number',\n 'invalid_payload',\n );\n }\n\n resolvedSequence = Number(latest.sequence_number);\n }\n\n if (!Number.isFinite(resolvedSequence)) {\n throw new HCS21ValidationError(\n 'Invalid manifest sequence number',\n 'invalid_payload',\n );\n }\n\n const pointer = `hcs://1/${topicId}`;\n\n if (!HCS21ManifestPointerPattern.test(pointer)) {\n throw new HCS21ValidationError(\n 'Manifest pointer format is invalid',\n 'invalid_payload',\n );\n }\n\n return { pointer, sequenceNumber: resolvedSequence };\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { AccountId, Client, PrivateKey, Hbar } from "@hashgraph/sdk";
2
- import { createNodeOperatorContext } from "./standards-sdk.es153.js";
2
+ import { createNodeOperatorContext } from "./standards-sdk.es158.js";
3
3
  import { buildHcs15BaseAccountCreateTx, buildHcs15PetalAccountCreateTx } from "./standards-sdk.es93.js";
4
4
  import { HCS15BaseClient } from "./standards-sdk.es96.js";
5
5
  class HCS15Client extends HCS15BaseClient {
@@ -13,7 +13,7 @@ class HCS15Client extends HCS15BaseClient {
13
13
  keyType: config.keyType,
14
14
  mirrorNode: this.mirrorNode,
15
15
  logger: this.logger,
16
- client: this.network === "mainnet" ? Client.forMainnet() : Client.forTestnet()
16
+ client: config.client ?? (this.network === "mainnet" ? Client.forMainnet() : Client.forTestnet())
17
17
  });
18
18
  this.client = this.operatorCtx.client;
19
19
  }
@@ -92,8 +92,8 @@ class HCS15Client extends HCS15BaseClient {
92
92
  return { accountId, receipt, profile };
93
93
  }
94
94
  async createPetalProfile(params) {
95
- const { HCS10Client } = await import("./standards-sdk.es150.js");
96
- const { PersonBuilder } = await import("./standards-sdk.es151.js");
95
+ const { HCS10Client } = await import("./standards-sdk.es155.js");
96
+ const { PersonBuilder } = await import("./standards-sdk.es156.js");
97
97
  const hcs10 = new HCS10Client({
98
98
  network: this.network,
99
99
  operatorId: params.accountId,
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es94.js","sources":["../../src/hcs-15/sdk.ts"],"sourcesContent":["import {\n AccountId,\n Client,\n Hbar,\n PrivateKey,\n PublicKey,\n TransactionReceipt,\n} from '@hashgraph/sdk';\nimport { NetworkType } from '../utils/types';\nimport {\n createNodeOperatorContext,\n type NodeOperatorContext,\n} from '../common/node-operator-resolver';\nimport {\n buildHcs15BaseAccountCreateTx,\n buildHcs15PetalAccountCreateTx,\n} from './tx';\nimport type {\n PetalProfileOptions,\n PetalProfileResult,\n SDKHCS15ClientConfig,\n} from './types';\nimport { HCS15BaseClient } from './base-client';\n\nexport class HCS15Client extends HCS15BaseClient {\n private readonly operatorCtx: NodeOperatorContext;\n private readonly client: Client;\n private readonly operatorId: AccountId;\n\n constructor(config: SDKHCS15ClientConfig) {\n super(config);\n this.operatorId = AccountId.fromString(config.operatorId);\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:\n this.network === 'mainnet' ? Client.forMainnet() : Client.forTestnet(),\n });\n this.client = this.operatorCtx.client;\n }\n\n public getKeyType(): 'ed25519' | 'ecdsa' {\n return this.operatorCtx.keyType;\n }\n\n public async close(): Promise<void> {\n try {\n this.client.close();\n } catch {}\n }\n\n private async ensureOperatorReady(): Promise<void> {\n await this.operatorCtx.ensureInitialized();\n }\n\n /**\n * Create a new base account with a newly generated ECDSA key and EVM alias.\n */\n async createBaseAccount(options?: {\n initialBalance?: number;\n maxAutomaticTokenAssociations?: number;\n accountMemo?: string;\n transactionMemo?: string;\n }): Promise<{\n accountId: string;\n privateKey: PrivateKey;\n privateKeyHex: string;\n publicKey: PublicKey;\n evmAddress: string;\n receipt: TransactionReceipt;\n }> {\n await this.ensureOperatorReady();\n const priv = PrivateKey.generateECDSA();\n const pub = priv.publicKey;\n const tx = buildHcs15BaseAccountCreateTx({\n publicKey: pub,\n initialBalance: new Hbar(options?.initialBalance ?? 10),\n maxAutomaticTokenAssociations: options?.maxAutomaticTokenAssociations,\n accountMemo: options?.accountMemo,\n transactionMemo: options?.transactionMemo,\n });\n const resp = await tx.execute(this.client);\n const receipt = await resp.getReceipt(this.client);\n if (!receipt.accountId) {\n throw new Error('HCS-15 BASE_ACCOUNT_CREATE_FAILED');\n }\n const accountId = receipt.accountId.toString();\n const evmAddress = `0x${pub.toEvmAddress()}`;\n this.logger.info('Created HCS-15 base account', { accountId, evmAddress });\n return {\n accountId,\n privateKey: priv,\n privateKeyHex: priv.toStringRaw(),\n publicKey: pub,\n evmAddress,\n receipt,\n };\n }\n\n /**\n * Create a Petal account that reuses the base account ECDSA key (no alias).\n */\n async createPetalAccount(params: {\n basePrivateKey: string | PrivateKey;\n initialBalance?: number;\n maxAutomaticTokenAssociations?: number;\n accountMemo?: string;\n transactionMemo?: string;\n profile?: PetalProfileOptions;\n }): Promise<{\n accountId: string;\n receipt: TransactionReceipt;\n profile?: PetalProfileResult;\n }> {\n await this.ensureOperatorReady();\n const baseKey =\n typeof params.basePrivateKey === 'string'\n ? PrivateKey.fromStringECDSA(params.basePrivateKey)\n : params.basePrivateKey;\n const pub = baseKey.publicKey;\n const tx = buildHcs15PetalAccountCreateTx({\n publicKey: pub,\n initialBalance: new Hbar(params.initialBalance ?? 1),\n maxAutomaticTokenAssociations: params.maxAutomaticTokenAssociations,\n accountMemo: params.accountMemo,\n transactionMemo: params.transactionMemo,\n });\n const resp = await tx.execute(this.client);\n const receipt = await resp.getReceipt(this.client);\n if (!receipt.accountId) {\n throw new Error('HCS-15 PETAL_ACCOUNT_CREATE_FAILED');\n }\n const accountId = receipt.accountId.toString();\n this.logger.info('Created HCS-15 petal account', { accountId });\n let profile: PetalProfileResult | undefined;\n if (params.profile) {\n profile = await this.createPetalProfile({\n accountId,\n basePrivateKey: baseKey,\n profile: params.profile,\n });\n }\n return { accountId, receipt, profile };\n }\n\n private async createPetalProfile(params: {\n accountId: string;\n basePrivateKey: PrivateKey;\n profile: PetalProfileOptions;\n }): Promise<PetalProfileResult> {\n const { HCS10Client } = await import('../hcs-10');\n const { PersonBuilder } = await import('../hcs-11');\n const hcs10 = new HCS10Client({\n network: this.network,\n operatorId: params.accountId,\n operatorPrivateKey: params.basePrivateKey.toString(),\n logLevel: this.logger.getLevel(),\n });\n\n try {\n const builder = new PersonBuilder()\n .setName(params.profile.displayName)\n .setBaseAccount(params.profile.baseAccountId);\n\n if (params.profile.alias) {\n builder.setAlias(params.profile.alias);\n }\n\n if (params.profile.bio) {\n builder.setBio(params.profile.bio);\n }\n\n if (params.profile.profileImage) {\n builder.setProfileImage(params.profile.profileImage);\n }\n\n if (params.profile.socials) {\n for (const social of params.profile.socials) {\n builder.addSocial(social.platform, social.handle);\n }\n }\n\n if (params.profile.properties) {\n for (const [key, value] of Object.entries(params.profile.properties)) {\n builder.addProperty(key, value);\n }\n }\n\n const result = await hcs10.create(builder, {\n ttl: params.profile.ttl ?? 300,\n updateAccountMemo: true,\n });\n\n if ('success' in result && result.success === false) {\n throw new Error(result.error ?? 'Failed to create petal profile');\n }\n\n const inboundTopicId =\n 'inboundTopicId' in result ? result.inboundTopicId : '';\n const outboundTopicId =\n 'outboundTopicId' in result ? result.outboundTopicId : '';\n const profileTopicId =\n 'profileTopicId' in result ? result.profileTopicId : '';\n\n if (!profileTopicId) {\n throw new Error('Failed to resolve petal profile topic ID');\n }\n\n return {\n profileTopicId,\n inboundTopicId,\n outboundTopicId,\n };\n } finally {\n try {\n hcs10.getClient().close();\n } catch {}\n }\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standards-sdk.es94.js","sources":["../../src/hcs-15/sdk.ts"],"sourcesContent":["import {\n AccountId,\n Client,\n Hbar,\n PrivateKey,\n PublicKey,\n TransactionReceipt,\n} from '@hashgraph/sdk';\nimport { NetworkType } from '../utils/types';\nimport {\n createNodeOperatorContext,\n type NodeOperatorContext,\n} from '../common/node-operator-resolver';\nimport {\n buildHcs15BaseAccountCreateTx,\n buildHcs15PetalAccountCreateTx,\n} from './tx';\nimport type {\n PetalProfileOptions,\n PetalProfileResult,\n SDKHCS15ClientConfig,\n} from './types';\nimport { HCS15BaseClient } from './base-client';\n\nexport class HCS15Client extends HCS15BaseClient {\n private readonly operatorCtx: NodeOperatorContext;\n private readonly client: Client;\n private readonly operatorId: AccountId;\n\n constructor(config: SDKHCS15ClientConfig) {\n super(config);\n this.operatorId = AccountId.fromString(config.operatorId);\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:\n config.client ??\n (this.network === 'mainnet'\n ? Client.forMainnet()\n : Client.forTestnet()),\n });\n this.client = this.operatorCtx.client;\n }\n\n public getKeyType(): 'ed25519' | 'ecdsa' {\n return this.operatorCtx.keyType;\n }\n\n public async close(): Promise<void> {\n try {\n this.client.close();\n } catch {}\n }\n\n private async ensureOperatorReady(): Promise<void> {\n await this.operatorCtx.ensureInitialized();\n }\n\n /**\n * Create a new base account with a newly generated ECDSA key and EVM alias.\n */\n async createBaseAccount(options?: {\n initialBalance?: number;\n maxAutomaticTokenAssociations?: number;\n accountMemo?: string;\n transactionMemo?: string;\n }): Promise<{\n accountId: string;\n privateKey: PrivateKey;\n privateKeyHex: string;\n publicKey: PublicKey;\n evmAddress: string;\n receipt: TransactionReceipt;\n }> {\n await this.ensureOperatorReady();\n const priv = PrivateKey.generateECDSA();\n const pub = priv.publicKey;\n const tx = buildHcs15BaseAccountCreateTx({\n publicKey: pub,\n initialBalance: new Hbar(options?.initialBalance ?? 10),\n maxAutomaticTokenAssociations: options?.maxAutomaticTokenAssociations,\n accountMemo: options?.accountMemo,\n transactionMemo: options?.transactionMemo,\n });\n const resp = await tx.execute(this.client);\n const receipt = await resp.getReceipt(this.client);\n if (!receipt.accountId) {\n throw new Error('HCS-15 BASE_ACCOUNT_CREATE_FAILED');\n }\n const accountId = receipt.accountId.toString();\n const evmAddress = `0x${pub.toEvmAddress()}`;\n this.logger.info('Created HCS-15 base account', { accountId, evmAddress });\n return {\n accountId,\n privateKey: priv,\n privateKeyHex: priv.toStringRaw(),\n publicKey: pub,\n evmAddress,\n receipt,\n };\n }\n\n /**\n * Create a Petal account that reuses the base account ECDSA key (no alias).\n */\n async createPetalAccount(params: {\n basePrivateKey: string | PrivateKey;\n initialBalance?: number;\n maxAutomaticTokenAssociations?: number;\n accountMemo?: string;\n transactionMemo?: string;\n profile?: PetalProfileOptions;\n }): Promise<{\n accountId: string;\n receipt: TransactionReceipt;\n profile?: PetalProfileResult;\n }> {\n await this.ensureOperatorReady();\n const baseKey =\n typeof params.basePrivateKey === 'string'\n ? PrivateKey.fromStringECDSA(params.basePrivateKey)\n : params.basePrivateKey;\n const pub = baseKey.publicKey;\n const tx = buildHcs15PetalAccountCreateTx({\n publicKey: pub,\n initialBalance: new Hbar(params.initialBalance ?? 1),\n maxAutomaticTokenAssociations: params.maxAutomaticTokenAssociations,\n accountMemo: params.accountMemo,\n transactionMemo: params.transactionMemo,\n });\n const resp = await tx.execute(this.client);\n const receipt = await resp.getReceipt(this.client);\n if (!receipt.accountId) {\n throw new Error('HCS-15 PETAL_ACCOUNT_CREATE_FAILED');\n }\n const accountId = receipt.accountId.toString();\n this.logger.info('Created HCS-15 petal account', { accountId });\n let profile: PetalProfileResult | undefined;\n if (params.profile) {\n profile = await this.createPetalProfile({\n accountId,\n basePrivateKey: baseKey,\n profile: params.profile,\n });\n }\n return { accountId, receipt, profile };\n }\n\n private async createPetalProfile(params: {\n accountId: string;\n basePrivateKey: PrivateKey;\n profile: PetalProfileOptions;\n }): Promise<PetalProfileResult> {\n const { HCS10Client } = await import('../hcs-10');\n const { PersonBuilder } = await import('../hcs-11');\n const hcs10 = new HCS10Client({\n network: this.network,\n operatorId: params.accountId,\n operatorPrivateKey: params.basePrivateKey.toString(),\n logLevel: this.logger.getLevel(),\n });\n\n try {\n const builder = new PersonBuilder()\n .setName(params.profile.displayName)\n .setBaseAccount(params.profile.baseAccountId);\n\n if (params.profile.alias) {\n builder.setAlias(params.profile.alias);\n }\n\n if (params.profile.bio) {\n builder.setBio(params.profile.bio);\n }\n\n if (params.profile.profileImage) {\n builder.setProfileImage(params.profile.profileImage);\n }\n\n if (params.profile.socials) {\n for (const social of params.profile.socials) {\n builder.addSocial(social.platform, social.handle);\n }\n }\n\n if (params.profile.properties) {\n for (const [key, value] of Object.entries(params.profile.properties)) {\n builder.addProperty(key, value);\n }\n }\n\n const result = await hcs10.create(builder, {\n ttl: params.profile.ttl ?? 300,\n updateAccountMemo: true,\n });\n\n if ('success' in result && result.success === false) {\n throw new Error(result.error ?? 'Failed to create petal profile');\n }\n\n const inboundTopicId =\n 'inboundTopicId' in result ? result.inboundTopicId : '';\n const outboundTopicId =\n 'outboundTopicId' in result ? result.outboundTopicId : '';\n const profileTopicId =\n 'profileTopicId' in result ? result.profileTopicId : '';\n\n if (!profileTopicId) {\n throw new Error('Failed to resolve petal profile topic ID');\n }\n\n return {\n profileTopicId,\n inboundTopicId,\n outboundTopicId,\n };\n } finally {\n try {\n hcs10.getClient().close();\n } catch {}\n }\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { HederaMirrorNode } from "./standards-sdk.es139.js";
2
- import { Logger } from "./standards-sdk.es118.js";
1
+ import { HederaMirrorNode } from "./standards-sdk.es144.js";
2
+ import { Logger } from "./standards-sdk.es123.js";
3
3
  class HCS15BaseClient {
4
4
  constructor(config) {
5
5
  this.network = config.network;
@@ -1,5 +1,5 @@
1
1
  import { AccountCreateTransaction, Hbar, AccountId, TopicCreateTransaction, CustomFixedFee, TokenId, AccountUpdateTransaction, ScheduleCreateTransaction, TopicUpdateTransaction } from "@hashgraph/sdk";
2
- import { buildTopicCreateTx, buildMessageTx } from "./standards-sdk.es154.js";
2
+ import { buildTopicCreateTx, buildMessageTx } from "./standards-sdk.es159.js";
3
3
  import { FloraOperation, FloraTopicType } from "./standards-sdk.es97.js";
4
4
  const HCS16_FLORA_ACCOUNT_CREATE_TRANSACTION_MEMO = "hcs-16:op:0:0";
5
5
  const HCS17_STATE_HASH_TRANSACTION_MEMO = "hcs-17:op:6:2";
@@ -1,8 +1,8 @@
1
1
  import { AccountId, Client, ScheduleSignTransaction } from "@hashgraph/sdk";
2
- import "./standards-sdk.es118.js";
2
+ import "./standards-sdk.es123.js";
3
3
  import { HCS11Client } from "./standards-sdk.es27.js";
4
- import { createNodeOperatorContext } from "./standards-sdk.es153.js";
5
- import { HederaMirrorNode } from "./standards-sdk.es139.js";
4
+ import { createNodeOperatorContext } from "./standards-sdk.es158.js";
5
+ import { HederaMirrorNode } from "./standards-sdk.es144.js";
6
6
  import { HCS16BaseClient } from "./standards-sdk.es101.js";
7
7
  import { buildHcs16CreateFloraTopicTx, buildHcs16CreateAccountTx, buildHcs16FloraCreatedTx, buildHcs16TransactionTx, buildHcs16StateUpdateTx, buildHcs16FloraJoinRequestTx, buildHcs16FloraJoinVoteTx, buildHcs16FloraJoinAcceptedTx } from "./standards-sdk.es98.js";
8
8
  class HCS16Client extends HCS16BaseClient {
@@ -17,7 +17,7 @@ class HCS16Client extends HCS16BaseClient {
17
17
  keyType: config.keyType,
18
18
  mirrorNode: mirror,
19
19
  logger: this.logger,
20
- client: config.network === "mainnet" ? Client.forMainnet() : Client.forTestnet()
20
+ client: config.client ?? (config.network === "mainnet" ? Client.forMainnet() : Client.forTestnet())
21
21
  });
22
22
  this.client = this.operatorCtx.client;
23
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es99.js","sources":["../../src/hcs-16/sdk.ts"],"sourcesContent":["import {\n Client,\n AccountId,\n PublicKey,\n KeyList,\n TransactionReceipt,\n Hbar,\n ScheduleSignTransaction,\n PrivateKey,\n} from '@hashgraph/sdk';\nimport type { NetworkType } from '../utils/types';\nimport type { Logger } from '../utils/logger';\nimport { HCS11Client } from '../hcs-11';\nimport {\n createNodeOperatorContext,\n type NodeOperatorContext,\n} from '../common/node-operator-resolver';\nimport { HederaMirrorNode } from '../services/mirror-node';\nimport { HCS16BaseClient } from './base-client';\nimport {\n buildHcs16CreateFloraTopicTx,\n buildHcs16FloraCreatedTx,\n buildHcs16TransactionTx,\n buildHcs16StateUpdateTx,\n} from './tx';\nimport { FloraTopicType, type FloraMember, type FloraProfile } from './types';\nimport {\n buildHcs16FloraJoinRequestTx,\n buildHcs16FloraJoinVoteTx,\n buildHcs16FloraJoinAcceptedTx,\n buildHcs16CreateAccountTx,\n} from './tx';\n\nexport interface HCS16ClientConfig {\n network: NetworkType;\n operatorId: string;\n operatorKey: string;\n keyType?: 'ecdsa' | 'ed25519';\n logger?: Logger;\n}\n\nexport interface FloraProfileOptions {\n floraAccountId: string;\n displayName: string;\n members: FloraMember[];\n threshold: number;\n topics: { communication: string; transaction: string; state: string };\n inboundTopicId?: string;\n outboundTopicId?: string;\n bio?: string;\n metadata?: Record<string, unknown>;\n policies?: Record<string, string>;\n signerKeys: PrivateKey[];\n}\n\n/**\n * Node SDK client for HCS‑16 Flora operations.\n */\nexport class HCS16Client extends HCS16BaseClient {\n private readonly client: Client;\n private readonly operatorId: AccountId;\n private readonly operatorCtx: NodeOperatorContext;\n\n constructor(config: HCS16ClientConfig) {\n super({ network: config.network, logger: config.logger });\n this.operatorId = AccountId.fromString(config.operatorId);\n const mirror = new HederaMirrorNode(config.network, this.logger);\n this.operatorCtx = createNodeOperatorContext({\n network: config.network,\n operatorId: this.operatorId,\n operatorKey: config.operatorKey,\n keyType: config.keyType,\n mirrorNode: mirror,\n logger: this.logger,\n client:\n config.network === 'mainnet'\n ? Client.forMainnet()\n : Client.forTestnet(),\n });\n this.client = this.operatorCtx.client;\n }\n\n private async ensureOperatorReady(): Promise<void> {\n await this.operatorCtx.ensureInitialized();\n }\n\n /**\n * Create a Flora topic with memo `hcs-16:<floraAccountId>:<topicType>`.\n */\n async createFloraTopic(params: {\n floraAccountId: string;\n topicType: FloraTopicType;\n adminKey?: PublicKey | KeyList;\n submitKey?: PublicKey | KeyList;\n autoRenewAccountId?: string;\n signerKeys?: PrivateKey[];\n }): Promise<string> {\n await this.ensureOperatorReady();\n const tx = buildHcs16CreateFloraTopicTx({\n floraAccountId: params.floraAccountId,\n topicType: params.topicType,\n adminKey: params.adminKey,\n submitKey: params.submitKey,\n operatorPublicKey: this.client.operatorPublicKey || undefined,\n autoRenewAccountId: params.autoRenewAccountId,\n });\n const signerKeys = params.signerKeys ?? [];\n if (signerKeys.length > 0) {\n const frozen = await tx.freezeWith(this.client);\n let signed = frozen;\n for (const key of signerKeys) {\n signed = await signed.sign(key);\n }\n const resp = await signed.execute(this.client);\n const receipt = await resp.getReceipt(this.client);\n if (!receipt.topicId) {\n throw new Error('Failed to create Flora topic');\n }\n return receipt.topicId.toString();\n }\n const resp = await tx.execute(this.client);\n const receipt = await resp.getReceipt(this.client);\n if (!receipt.topicId) {\n throw new Error('Failed to create Flora topic');\n }\n return receipt.topicId.toString();\n }\n\n async createFloraAccount(params: {\n keyList: KeyList;\n initialBalanceHbar?: number;\n maxAutomaticTokenAssociations?: number;\n }): Promise<{ accountId: string; receipt: TransactionReceipt }> {\n await this.ensureOperatorReady();\n const tx = buildHcs16CreateAccountTx({\n keyList: params.keyList,\n initialBalanceHbar: params.initialBalanceHbar,\n maxAutomaticTokenAssociations: params.maxAutomaticTokenAssociations,\n });\n const resp = await tx.execute(this.client);\n const receipt = await resp.getReceipt(this.client);\n if (!receipt.accountId) {\n throw new Error('Failed to create Flora account');\n }\n return { accountId: receipt.accountId.toString(), receipt };\n }\n\n async sendFloraCreated(params: {\n topicId: string;\n operatorId: string;\n floraAccountId: string;\n topics: { communication: string; transaction: string; state: string };\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16FloraCreatedTx(params);\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n /**\n * Send HCS-16 transaction (preferred). scheduleId is the ScheduleId entity (e.g., 0.0.12345).\n */\n async sendTransaction(params: {\n topicId: string;\n operatorId: string;\n scheduleId: string;\n data?: string;\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16TransactionTx(params);\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n /**\n * Sign a scheduled transaction by ScheduleId entity using provided signer key (PrivateKey).\n * The signer must be a valid member key for the scheduled transaction to count toward threshold.\n */\n async signSchedule(params: {\n scheduleId: string;\n signerKey: PrivateKey;\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = await new ScheduleSignTransaction()\n .setScheduleId(params.scheduleId)\n .freezeWith(this.client);\n const signed = await tx.sign(params.signerKey);\n const resp = await signed.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n async sendStateUpdate(params: {\n topicId: string;\n operatorId: string;\n hash: string;\n epoch?: number;\n accountId?: string;\n topics?: string[];\n memo?: string;\n transactionMemo?: string;\n signerKeys?: PrivateKey[];\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16StateUpdateTx({\n topicId: params.topicId,\n operatorId: params.operatorId,\n hash: params.hash,\n epoch: params.epoch,\n accountId: params.accountId,\n topics: params.topics,\n memo: params.memo,\n transactionMemo: params.transactionMemo,\n });\n if (params.signerKeys && params.signerKeys.length > 0) {\n const frozen = await tx.freezeWith(this.client);\n let signed = frozen;\n for (const key of params.signerKeys) {\n signed = await signed.sign(key);\n }\n const resp = await signed.execute(this.client);\n return resp.getReceipt(this.client);\n }\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n async sendFloraJoinRequest(params: {\n topicId: string;\n operatorId: string;\n accountId: string;\n connectionRequestId: number;\n connectionTopicId: string;\n connectionSeq: number;\n signerKey?: PrivateKey;\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16FloraJoinRequestTx(params);\n if (params.signerKey) {\n const frozen = await tx.freezeWith(this.client);\n const signed = await frozen.sign(params.signerKey);\n const resp = await signed.execute(this.client);\n return resp.getReceipt(this.client);\n }\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n async sendFloraJoinVote(params: {\n topicId: string;\n operatorId: string;\n accountId: string;\n approve: boolean;\n connectionRequestId: number;\n connectionSeq: number;\n signerKey?: PrivateKey;\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16FloraJoinVoteTx(params);\n if (params.signerKey) {\n const frozen = await tx.freezeWith(this.client);\n const signed = await frozen.sign(params.signerKey);\n const resp = await signed.execute(this.client);\n return resp.getReceipt(this.client);\n }\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n async sendFloraJoinAccepted(params: {\n topicId: string;\n operatorId: string;\n members: string[];\n epoch?: number;\n signerKeys?: PrivateKey[];\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16FloraJoinAcceptedTx(params);\n if (params.signerKeys && params.signerKeys.length > 0) {\n const frozen = await tx.freezeWith(this.client);\n let signed = frozen;\n for (const key of params.signerKeys) {\n signed = await signed.sign(key);\n }\n const resp = await signed.execute(this.client);\n return resp.getReceipt(this.client);\n }\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n /**\n * Resolve member public keys from Mirror Node and build a KeyList with the given threshold.\n */\n async assembleKeyList(params: {\n members: string[];\n threshold: number;\n }): Promise<KeyList> {\n return super.assembleKeyList(params);\n }\n\n /**\n * Create a Flora account with a threshold KeyList, then create the three Flora topics.\n * Returns the Flora account ID and the topic IDs.\n */\n async createFloraAccountWithTopics(params: {\n members: string[];\n threshold: number;\n initialBalanceHbar?: number;\n autoRenewAccountId?: string;\n }): Promise<{\n floraAccountId: string;\n topics: { communication: string; transaction: string; state: string };\n }> {\n await this.ensureOperatorReady();\n const keyList = await this.assembleKeyList({\n members: params.members,\n threshold: params.threshold,\n });\n const submitList = await this.assembleSubmitKeyList(params.members);\n\n const createAcc = buildHcs16CreateAccountTx({\n keyList,\n initialBalanceHbar:\n typeof params.initialBalanceHbar === 'number'\n ? params.initialBalanceHbar\n : 5,\n maxAutomaticTokenAssociations: -1,\n });\n const accResp = await createAcc.execute(this.client);\n const accReceipt = await accResp.getReceipt(this.client);\n if (!accReceipt.accountId) {\n throw new Error('Failed to create Flora account');\n }\n const floraAccountId = accReceipt.accountId.toString();\n\n const {\n communication: commTx,\n transaction: trnTx,\n state: stateTx,\n } = this.buildFloraTopicCreateTxs({\n floraAccountId,\n keyList,\n submitList,\n autoRenewAccountId: params.autoRenewAccountId,\n });\n\n const commR = await commTx\n .execute(this.client)\n .then(r => r.getReceipt(this.client));\n const trnR = await trnTx\n .execute(this.client)\n .then(r => r.getReceipt(this.client));\n const stateR = await stateTx\n .execute(this.client)\n .then(r => r.getReceipt(this.client));\n const topics = {\n communication: commR.topicId!.toString(),\n transaction: trnR.topicId!.toString(),\n state: stateR.topicId!.toString(),\n };\n return { floraAccountId, topics };\n }\n\n async createFloraProfile(params: FloraProfileOptions): Promise<{\n profileTopicId: string;\n transactionId: string;\n }> {\n await this.ensureOperatorReady();\n if (params.signerKeys.length === 0) {\n throw new Error('Flora profile creation requires signer keys');\n }\n\n const profile: FloraProfile = {\n version: '1.0',\n type: 3,\n display_name: params.displayName,\n members: params.members,\n threshold: params.threshold,\n topics: params.topics,\n inboundTopicId: params.inboundTopicId ?? params.topics.communication,\n outboundTopicId: params.outboundTopicId ?? params.topics.transaction,\n bio: params.bio,\n metadata: params.metadata,\n policies: params.policies,\n };\n\n const hcs11 = new HCS11Client({\n network: this.network,\n auth: {\n operatorId: this.operatorId.toString(),\n privateKey: this.operatorCtx.operatorKey.toString(),\n },\n logLevel: this.logger.getLevel(),\n });\n\n try {\n await hcs11.initializeOperator();\n const profileResult = await hcs11.inscribeProfile(profile);\n if (!profileResult.success) {\n throw new Error(\n profileResult.error ?? 'Failed to inscribe Flora profile',\n );\n }\n\n const memoResult = await hcs11.updateAccountMemoWithProfile(\n params.floraAccountId,\n profileResult.profileTopicId,\n params.signerKeys,\n );\n\n if (!memoResult.success) {\n throw new Error(\n memoResult.error ?? 'Failed to update Flora account memo',\n );\n }\n\n return {\n profileTopicId: profileResult.profileTopicId,\n transactionId: profileResult.transactionId,\n };\n } finally {\n try {\n hcs11.getClient().close();\n } catch {}\n }\n }\n\n /**\n * Convenience: publish flora_created on the communication topic.\n */\n async publishFloraCreated(params: {\n communicationTopicId: string;\n operatorId: string;\n floraAccountId: string;\n topics: { communication: string; transaction: string; state: string };\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16FloraCreatedTx({\n topicId: params.communicationTopicId,\n operatorId: params.operatorId,\n floraAccountId: params.floraAccountId,\n topics: params.topics,\n });\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n}\n"],"names":["resp","receipt"],"mappings":"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"}
1
+ {"version":3,"file":"standards-sdk.es99.js","sources":["../../src/hcs-16/sdk.ts"],"sourcesContent":["import {\n Client,\n AccountId,\n PublicKey,\n KeyList,\n TransactionReceipt,\n Hbar,\n ScheduleSignTransaction,\n PrivateKey,\n} from '@hashgraph/sdk';\nimport type { NetworkType } from '../utils/types';\nimport type { Logger } from '../utils/logger';\nimport { HCS11Client } from '../hcs-11';\nimport {\n createNodeOperatorContext,\n type NodeOperatorContext,\n} from '../common/node-operator-resolver';\nimport { HederaMirrorNode } from '../services/mirror-node';\nimport { HCS16BaseClient } from './base-client';\nimport {\n buildHcs16CreateFloraTopicTx,\n buildHcs16FloraCreatedTx,\n buildHcs16TransactionTx,\n buildHcs16StateUpdateTx,\n} from './tx';\nimport { FloraTopicType, type FloraMember, type FloraProfile } from './types';\nimport {\n buildHcs16FloraJoinRequestTx,\n buildHcs16FloraJoinVoteTx,\n buildHcs16FloraJoinAcceptedTx,\n buildHcs16CreateAccountTx,\n} from './tx';\n\nexport interface HCS16ClientConfig {\n network: NetworkType;\n operatorId: string;\n operatorKey: string;\n keyType?: 'ecdsa' | 'ed25519';\n logger?: Logger;\n client?: Client;\n}\n\nexport interface FloraProfileOptions {\n floraAccountId: string;\n displayName: string;\n members: FloraMember[];\n threshold: number;\n topics: { communication: string; transaction: string; state: string };\n inboundTopicId?: string;\n outboundTopicId?: string;\n bio?: string;\n metadata?: Record<string, unknown>;\n policies?: Record<string, string>;\n signerKeys: PrivateKey[];\n}\n\n/**\n * Node SDK client for HCS‑16 Flora operations.\n */\nexport class HCS16Client extends HCS16BaseClient {\n private readonly client: Client;\n private readonly operatorId: AccountId;\n private readonly operatorCtx: NodeOperatorContext;\n\n constructor(config: HCS16ClientConfig) {\n super({ network: config.network, logger: config.logger });\n this.operatorId = AccountId.fromString(config.operatorId);\n const mirror = new HederaMirrorNode(config.network, this.logger);\n this.operatorCtx = createNodeOperatorContext({\n network: config.network,\n operatorId: this.operatorId,\n operatorKey: config.operatorKey,\n keyType: config.keyType,\n mirrorNode: mirror,\n logger: this.logger,\n client:\n config.client ??\n (config.network === 'mainnet'\n ? Client.forMainnet()\n : Client.forTestnet()),\n });\n this.client = this.operatorCtx.client;\n }\n\n private async ensureOperatorReady(): Promise<void> {\n await this.operatorCtx.ensureInitialized();\n }\n\n /**\n * Create a Flora topic with memo `hcs-16:<floraAccountId>:<topicType>`.\n */\n async createFloraTopic(params: {\n floraAccountId: string;\n topicType: FloraTopicType;\n adminKey?: PublicKey | KeyList;\n submitKey?: PublicKey | KeyList;\n autoRenewAccountId?: string;\n signerKeys?: PrivateKey[];\n }): Promise<string> {\n await this.ensureOperatorReady();\n const tx = buildHcs16CreateFloraTopicTx({\n floraAccountId: params.floraAccountId,\n topicType: params.topicType,\n adminKey: params.adminKey,\n submitKey: params.submitKey,\n operatorPublicKey: this.client.operatorPublicKey || undefined,\n autoRenewAccountId: params.autoRenewAccountId,\n });\n const signerKeys = params.signerKeys ?? [];\n if (signerKeys.length > 0) {\n const frozen = await tx.freezeWith(this.client);\n let signed = frozen;\n for (const key of signerKeys) {\n signed = await signed.sign(key);\n }\n const resp = await signed.execute(this.client);\n const receipt = await resp.getReceipt(this.client);\n if (!receipt.topicId) {\n throw new Error('Failed to create Flora topic');\n }\n return receipt.topicId.toString();\n }\n const resp = await tx.execute(this.client);\n const receipt = await resp.getReceipt(this.client);\n if (!receipt.topicId) {\n throw new Error('Failed to create Flora topic');\n }\n return receipt.topicId.toString();\n }\n\n async createFloraAccount(params: {\n keyList: KeyList;\n initialBalanceHbar?: number;\n maxAutomaticTokenAssociations?: number;\n }): Promise<{ accountId: string; receipt: TransactionReceipt }> {\n await this.ensureOperatorReady();\n const tx = buildHcs16CreateAccountTx({\n keyList: params.keyList,\n initialBalanceHbar: params.initialBalanceHbar,\n maxAutomaticTokenAssociations: params.maxAutomaticTokenAssociations,\n });\n const resp = await tx.execute(this.client);\n const receipt = await resp.getReceipt(this.client);\n if (!receipt.accountId) {\n throw new Error('Failed to create Flora account');\n }\n return { accountId: receipt.accountId.toString(), receipt };\n }\n\n async sendFloraCreated(params: {\n topicId: string;\n operatorId: string;\n floraAccountId: string;\n topics: { communication: string; transaction: string; state: string };\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16FloraCreatedTx(params);\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n /**\n * Send HCS-16 transaction (preferred). scheduleId is the ScheduleId entity (e.g., 0.0.12345).\n */\n async sendTransaction(params: {\n topicId: string;\n operatorId: string;\n scheduleId: string;\n data?: string;\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16TransactionTx(params);\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n /**\n * Sign a scheduled transaction by ScheduleId entity using provided signer key (PrivateKey).\n * The signer must be a valid member key for the scheduled transaction to count toward threshold.\n */\n async signSchedule(params: {\n scheduleId: string;\n signerKey: PrivateKey;\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = await new ScheduleSignTransaction()\n .setScheduleId(params.scheduleId)\n .freezeWith(this.client);\n const signed = await tx.sign(params.signerKey);\n const resp = await signed.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n async sendStateUpdate(params: {\n topicId: string;\n operatorId: string;\n hash: string;\n epoch?: number;\n accountId?: string;\n topics?: string[];\n memo?: string;\n transactionMemo?: string;\n signerKeys?: PrivateKey[];\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16StateUpdateTx({\n topicId: params.topicId,\n operatorId: params.operatorId,\n hash: params.hash,\n epoch: params.epoch,\n accountId: params.accountId,\n topics: params.topics,\n memo: params.memo,\n transactionMemo: params.transactionMemo,\n });\n if (params.signerKeys && params.signerKeys.length > 0) {\n const frozen = await tx.freezeWith(this.client);\n let signed = frozen;\n for (const key of params.signerKeys) {\n signed = await signed.sign(key);\n }\n const resp = await signed.execute(this.client);\n return resp.getReceipt(this.client);\n }\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n async sendFloraJoinRequest(params: {\n topicId: string;\n operatorId: string;\n accountId: string;\n connectionRequestId: number;\n connectionTopicId: string;\n connectionSeq: number;\n signerKey?: PrivateKey;\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16FloraJoinRequestTx(params);\n if (params.signerKey) {\n const frozen = await tx.freezeWith(this.client);\n const signed = await frozen.sign(params.signerKey);\n const resp = await signed.execute(this.client);\n return resp.getReceipt(this.client);\n }\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n async sendFloraJoinVote(params: {\n topicId: string;\n operatorId: string;\n accountId: string;\n approve: boolean;\n connectionRequestId: number;\n connectionSeq: number;\n signerKey?: PrivateKey;\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16FloraJoinVoteTx(params);\n if (params.signerKey) {\n const frozen = await tx.freezeWith(this.client);\n const signed = await frozen.sign(params.signerKey);\n const resp = await signed.execute(this.client);\n return resp.getReceipt(this.client);\n }\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n async sendFloraJoinAccepted(params: {\n topicId: string;\n operatorId: string;\n members: string[];\n epoch?: number;\n signerKeys?: PrivateKey[];\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16FloraJoinAcceptedTx(params);\n if (params.signerKeys && params.signerKeys.length > 0) {\n const frozen = await tx.freezeWith(this.client);\n let signed = frozen;\n for (const key of params.signerKeys) {\n signed = await signed.sign(key);\n }\n const resp = await signed.execute(this.client);\n return resp.getReceipt(this.client);\n }\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n\n /**\n * Resolve member public keys from Mirror Node and build a KeyList with the given threshold.\n */\n async assembleKeyList(params: {\n members: string[];\n threshold: number;\n }): Promise<KeyList> {\n return super.assembleKeyList(params);\n }\n\n /**\n * Create a Flora account with a threshold KeyList, then create the three Flora topics.\n * Returns the Flora account ID and the topic IDs.\n */\n async createFloraAccountWithTopics(params: {\n members: string[];\n threshold: number;\n initialBalanceHbar?: number;\n autoRenewAccountId?: string;\n }): Promise<{\n floraAccountId: string;\n topics: { communication: string; transaction: string; state: string };\n }> {\n await this.ensureOperatorReady();\n const keyList = await this.assembleKeyList({\n members: params.members,\n threshold: params.threshold,\n });\n const submitList = await this.assembleSubmitKeyList(params.members);\n\n const createAcc = buildHcs16CreateAccountTx({\n keyList,\n initialBalanceHbar:\n typeof params.initialBalanceHbar === 'number'\n ? params.initialBalanceHbar\n : 5,\n maxAutomaticTokenAssociations: -1,\n });\n const accResp = await createAcc.execute(this.client);\n const accReceipt = await accResp.getReceipt(this.client);\n if (!accReceipt.accountId) {\n throw new Error('Failed to create Flora account');\n }\n const floraAccountId = accReceipt.accountId.toString();\n\n const {\n communication: commTx,\n transaction: trnTx,\n state: stateTx,\n } = this.buildFloraTopicCreateTxs({\n floraAccountId,\n keyList,\n submitList,\n autoRenewAccountId: params.autoRenewAccountId,\n });\n\n const commR = await commTx\n .execute(this.client)\n .then(r => r.getReceipt(this.client));\n const trnR = await trnTx\n .execute(this.client)\n .then(r => r.getReceipt(this.client));\n const stateR = await stateTx\n .execute(this.client)\n .then(r => r.getReceipt(this.client));\n const topics = {\n communication: commR.topicId!.toString(),\n transaction: trnR.topicId!.toString(),\n state: stateR.topicId!.toString(),\n };\n return { floraAccountId, topics };\n }\n\n async createFloraProfile(params: FloraProfileOptions): Promise<{\n profileTopicId: string;\n transactionId: string;\n }> {\n await this.ensureOperatorReady();\n if (params.signerKeys.length === 0) {\n throw new Error('Flora profile creation requires signer keys');\n }\n\n const profile: FloraProfile = {\n version: '1.0',\n type: 3,\n display_name: params.displayName,\n members: params.members,\n threshold: params.threshold,\n topics: params.topics,\n inboundTopicId: params.inboundTopicId ?? params.topics.communication,\n outboundTopicId: params.outboundTopicId ?? params.topics.transaction,\n bio: params.bio,\n metadata: params.metadata,\n policies: params.policies,\n };\n\n const hcs11 = new HCS11Client({\n network: this.network,\n auth: {\n operatorId: this.operatorId.toString(),\n privateKey: this.operatorCtx.operatorKey.toString(),\n },\n logLevel: this.logger.getLevel(),\n });\n\n try {\n await hcs11.initializeOperator();\n const profileResult = await hcs11.inscribeProfile(profile);\n if (!profileResult.success) {\n throw new Error(\n profileResult.error ?? 'Failed to inscribe Flora profile',\n );\n }\n\n const memoResult = await hcs11.updateAccountMemoWithProfile(\n params.floraAccountId,\n profileResult.profileTopicId,\n params.signerKeys,\n );\n\n if (!memoResult.success) {\n throw new Error(\n memoResult.error ?? 'Failed to update Flora account memo',\n );\n }\n\n return {\n profileTopicId: profileResult.profileTopicId,\n transactionId: profileResult.transactionId,\n };\n } finally {\n try {\n hcs11.getClient().close();\n } catch {}\n }\n }\n\n /**\n * Convenience: publish flora_created on the communication topic.\n */\n async publishFloraCreated(params: {\n communicationTopicId: string;\n operatorId: string;\n floraAccountId: string;\n topics: { communication: string; transaction: string; state: string };\n }): Promise<TransactionReceipt> {\n await this.ensureOperatorReady();\n const tx = buildHcs16FloraCreatedTx({\n topicId: params.communicationTopicId,\n operatorId: params.operatorId,\n floraAccountId: params.floraAccountId,\n topics: params.topics,\n });\n const resp = await tx.execute(this.client);\n return resp.getReceipt(this.client);\n }\n}\n"],"names":["resp","receipt"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"key-type-detector.d.ts","sourceRoot":"","sources":["../../../src/utils/key-type-detector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C;;GAEG;AACH,oBAAY,OAAO;IACjB,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,OAAO,YAAY;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,qDAAqD;IACrD,IAAI,EAAE,OAAO,CAAC;IACd,iCAAiC;IACjC,MAAM,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;IACtC,uCAAuC;IACvC,YAAY,EAAE,OAAO,CAAC;IACtB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,wCAAwC;IACxC,UAAU,EAAE,SAAS,GAAG,WAAW,CAAC;IACpC,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,YAAY,EAAE,SAAS,GAAG,OAAO,CAAC;IAClC,yBAAyB;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAM;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mCAAmC,CAAM;IAEjE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAE9C;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAG/C;IAEH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iCAAiC,CAGtD;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kCAAkC,CAEvD;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,wCAAwC,CAI3D;IAEL,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uCAAuC,CAE7D;IAEF;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,OAAO;IA+C9D;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IA0H9B;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IA4D5B;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IA2C3B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAoGhC;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAIzB;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ;IAQvB;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAQzB;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;IAQxB;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,8BAA8B;IAiB7C;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,sBAAsB;CAQtC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CACrC,gBAAgB,EAAE,MAAM,GACvB,kBAAkB,CA8CpB"}
1
+ {"version":3,"file":"key-type-detector.d.ts","sourceRoot":"","sources":["../../../src/utils/key-type-detector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C;;GAEG;AACH,oBAAY,OAAO;IACjB,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,OAAO,YAAY;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,qDAAqD;IACrD,IAAI,EAAE,OAAO,CAAC;IACd,iCAAiC;IACjC,MAAM,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;IACtC,uCAAuC;IACvC,YAAY,EAAE,OAAO,CAAC;IACtB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,wCAAwC;IACxC,UAAU,EAAE,SAAS,GAAG,WAAW,CAAC;IACpC,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,YAAY,EAAE,SAAS,GAAG,OAAO,CAAC;IAClC,yBAAyB;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAM;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mCAAmC,CAAM;IAEjE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAE9C;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAG/C;IAEH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iCAAiC,CAGtD;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kCAAkC,CAEvD;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,wCAAwC,CAI3D;IAEL,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uCAAuC,CAE7D;IAEF;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,OAAO;IA+C9D;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IA0H9B;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IAyF5B;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IA2C3B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAoGhC;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAIzB;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ;IAQvB;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAQzB;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;IAQxB;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,8BAA8B;IAiB7C;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,sBAAsB;CAQtC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CACrC,gBAAgB,EAAE,MAAM,GACvB,kBAAkB,CA8CpB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hashgraphonline/standards-sdk",
3
- "version": "0.1.167",
3
+ "version": "0.1.169",
4
4
  "description": "The Hashgraph Online Standards SDK provides a complete implementation of the Hiero Consensus Standards (HCS), giving developers all the tools needed to build wonderful decentralized applications on the Hashgraph network. https://hol.org",
5
5
  "type": "module",
6
6
  "files": [