@hashgraphonline/standards-sdk 0.1.160 → 0.1.161

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 (293) hide show
  1. package/dist/cjs/hcs-14/resolvers/registry.d.ts +18 -1
  2. package/dist/cjs/hcs-14/resolvers/registry.d.ts.map +1 -1
  3. package/dist/cjs/hcs-14/resolvers/types.d.ts +17 -0
  4. package/dist/cjs/hcs-14/resolvers/types.d.ts.map +1 -1
  5. package/dist/cjs/hcs-14/sdk.d.ts +24 -13
  6. package/dist/cjs/hcs-14/sdk.d.ts.map +1 -1
  7. package/dist/cjs/standards-sdk.cjs +3 -3
  8. package/dist/cjs/standards-sdk.cjs.map +1 -1
  9. package/dist/es/hcs-14/resolvers/registry.d.ts +18 -1
  10. package/dist/es/hcs-14/resolvers/registry.d.ts.map +1 -1
  11. package/dist/es/hcs-14/resolvers/types.d.ts +17 -0
  12. package/dist/es/hcs-14/resolvers/types.d.ts.map +1 -1
  13. package/dist/es/hcs-14/sdk.d.ts +24 -13
  14. package/dist/es/hcs-14/sdk.d.ts.map +1 -1
  15. package/dist/es/standards-sdk.es.js +94 -90
  16. package/dist/es/standards-sdk.es.js.map +1 -1
  17. package/dist/es/standards-sdk.es100.js +138 -42
  18. package/dist/es/standards-sdk.es100.js.map +1 -1
  19. package/dist/es/standards-sdk.es101.js +43 -259
  20. package/dist/es/standards-sdk.es101.js.map +1 -1
  21. package/dist/es/standards-sdk.es102.js +245 -82
  22. package/dist/es/standards-sdk.es102.js.map +1 -1
  23. package/dist/es/standards-sdk.es103.js +50 -49
  24. package/dist/es/standards-sdk.es103.js.map +1 -1
  25. package/dist/es/standards-sdk.es104.js +100 -29
  26. package/dist/es/standards-sdk.es104.js.map +1 -1
  27. package/dist/es/standards-sdk.es105.js +27 -229
  28. package/dist/es/standards-sdk.es105.js.map +1 -1
  29. package/dist/es/standards-sdk.es106.js +228 -109
  30. package/dist/es/standards-sdk.es106.js.map +1 -1
  31. package/dist/es/standards-sdk.es107.js +94 -15
  32. package/dist/es/standards-sdk.es107.js.map +1 -1
  33. package/dist/es/standards-sdk.es108.js +30 -80
  34. package/dist/es/standards-sdk.es108.js.map +1 -1
  35. package/dist/es/standards-sdk.es109.js +80 -27
  36. package/dist/es/standards-sdk.es109.js.map +1 -1
  37. package/dist/es/standards-sdk.es11.js +1 -1
  38. package/dist/es/standards-sdk.es110.js +27 -248
  39. package/dist/es/standards-sdk.es110.js.map +1 -1
  40. package/dist/es/standards-sdk.es111.js +246 -472
  41. package/dist/es/standards-sdk.es111.js.map +1 -1
  42. package/dist/es/standards-sdk.es112.js +458 -85
  43. package/dist/es/standards-sdk.es112.js.map +1 -1
  44. package/dist/es/standards-sdk.es113.js +96 -151
  45. package/dist/es/standards-sdk.es113.js.map +1 -1
  46. package/dist/es/standards-sdk.es114.js +155 -29
  47. package/dist/es/standards-sdk.es114.js.map +1 -1
  48. package/dist/es/standards-sdk.es115.js +26 -4
  49. package/dist/es/standards-sdk.es115.js.map +1 -1
  50. package/dist/es/standards-sdk.es116.js +10 -140
  51. package/dist/es/standards-sdk.es116.js.map +1 -1
  52. package/dist/es/standards-sdk.es117.js +140 -27
  53. package/dist/es/standards-sdk.es117.js.map +1 -1
  54. package/dist/es/standards-sdk.es118.js +27 -20
  55. package/dist/es/standards-sdk.es118.js.map +1 -1
  56. package/dist/es/standards-sdk.es119.js +18 -156
  57. package/dist/es/standards-sdk.es119.js.map +1 -1
  58. package/dist/es/standards-sdk.es12.js +1 -1
  59. package/dist/es/standards-sdk.es120.js +148 -191
  60. package/dist/es/standards-sdk.es120.js.map +1 -1
  61. package/dist/es/standards-sdk.es121.js +160 -747
  62. package/dist/es/standards-sdk.es121.js.map +1 -1
  63. package/dist/es/standards-sdk.es122.js +786 -9
  64. package/dist/es/standards-sdk.es122.js.map +1 -1
  65. package/dist/es/standards-sdk.es123.js +13 -567
  66. package/dist/es/standards-sdk.es123.js.map +1 -1
  67. package/dist/es/standards-sdk.es124.js +541 -576
  68. package/dist/es/standards-sdk.es124.js.map +1 -1
  69. package/dist/es/standards-sdk.es125.js +601 -12
  70. package/dist/es/standards-sdk.es125.js.map +1 -1
  71. package/dist/es/standards-sdk.es126.js +13 -2
  72. package/dist/es/standards-sdk.es126.js.map +1 -1
  73. package/dist/es/standards-sdk.es127.js +2 -87
  74. package/dist/es/standards-sdk.es127.js.map +1 -1
  75. package/dist/es/standards-sdk.es128.js +84 -37
  76. package/dist/es/standards-sdk.es128.js.map +1 -1
  77. package/dist/es/standards-sdk.es129.js +40 -2
  78. package/dist/es/standards-sdk.es129.js.map +1 -1
  79. package/dist/es/standards-sdk.es13.js +1 -1
  80. package/dist/es/standards-sdk.es130.js +2 -235
  81. package/dist/es/standards-sdk.es130.js.map +1 -1
  82. package/dist/es/standards-sdk.es131.js +204 -1109
  83. package/dist/es/standards-sdk.es131.js.map +1 -1
  84. package/dist/es/standards-sdk.es132.js +1059 -225
  85. package/dist/es/standards-sdk.es132.js.map +1 -1
  86. package/dist/es/standards-sdk.es133.js +303 -419
  87. package/dist/es/standards-sdk.es133.js.map +1 -1
  88. package/dist/es/standards-sdk.es134.js +418 -351
  89. package/dist/es/standards-sdk.es134.js.map +1 -1
  90. package/dist/es/standards-sdk.es135.js +347 -1108
  91. package/dist/es/standards-sdk.es135.js.map +1 -1
  92. package/dist/es/standards-sdk.es136.js +1088 -180
  93. package/dist/es/standards-sdk.es136.js.map +1 -1
  94. package/dist/es/standards-sdk.es137.js +153 -1512
  95. package/dist/es/standards-sdk.es137.js.map +1 -1
  96. package/dist/es/standards-sdk.es138.js +1567 -1255
  97. package/dist/es/standards-sdk.es138.js.map +1 -1
  98. package/dist/es/standards-sdk.es139.js +1255 -17
  99. package/dist/es/standards-sdk.es139.js.map +1 -1
  100. package/dist/es/standards-sdk.es14.js +1 -1
  101. package/dist/es/standards-sdk.es140.js +15 -85
  102. package/dist/es/standards-sdk.es140.js.map +1 -1
  103. package/dist/es/standards-sdk.es141.js +77 -71
  104. package/dist/es/standards-sdk.es141.js.map +1 -1
  105. package/dist/es/standards-sdk.es142.js +79 -891
  106. package/dist/es/standards-sdk.es142.js.map +1 -1
  107. package/dist/es/standards-sdk.es143.js +886 -53
  108. package/dist/es/standards-sdk.es143.js.map +1 -1
  109. package/dist/es/standards-sdk.es144.js +53 -152
  110. package/dist/es/standards-sdk.es144.js.map +1 -1
  111. package/dist/es/standards-sdk.es145.js +159 -7
  112. package/dist/es/standards-sdk.es145.js.map +1 -1
  113. package/dist/es/standards-sdk.es146.js +7 -86
  114. package/dist/es/standards-sdk.es146.js.map +1 -1
  115. package/dist/es/standards-sdk.es147.js +65 -44
  116. package/dist/es/standards-sdk.es147.js.map +1 -1
  117. package/dist/es/standards-sdk.es148.js +65 -30
  118. package/dist/es/standards-sdk.es148.js.map +1 -1
  119. package/dist/es/standards-sdk.es149.js +30 -34
  120. package/dist/es/standards-sdk.es149.js.map +1 -1
  121. package/dist/es/standards-sdk.es15.js +1 -1
  122. package/dist/es/standards-sdk.es150.js +34 -41
  123. package/dist/es/standards-sdk.es150.js.map +1 -1
  124. package/dist/es/standards-sdk.es151.js +45 -138
  125. package/dist/es/standards-sdk.es151.js.map +1 -1
  126. package/dist/es/standards-sdk.es152.js +133 -37
  127. package/dist/es/standards-sdk.es152.js.map +1 -1
  128. package/dist/es/standards-sdk.es153.js +34 -12474
  129. package/dist/es/standards-sdk.es153.js.map +1 -1
  130. package/dist/es/standards-sdk.es154.js +12444 -134
  131. package/dist/es/standards-sdk.es154.js.map +1 -1
  132. package/dist/es/standards-sdk.es155.js +13 -318
  133. package/dist/es/standards-sdk.es155.js.map +1 -1
  134. package/dist/es/standards-sdk.es156.js +55 -345
  135. package/dist/es/standards-sdk.es156.js.map +1 -1
  136. package/dist/es/standards-sdk.es157.js +68 -437
  137. package/dist/es/standards-sdk.es157.js.map +1 -1
  138. package/dist/es/standards-sdk.es158.js +71 -321
  139. package/dist/es/standards-sdk.es158.js.map +1 -1
  140. package/dist/es/standards-sdk.es159.js +63 -66
  141. package/dist/es/standards-sdk.es159.js.map +1 -1
  142. package/dist/es/standards-sdk.es16.js +5 -5
  143. package/dist/es/standards-sdk.es160.js +168 -13
  144. package/dist/es/standards-sdk.es160.js.map +1 -1
  145. package/dist/es/standards-sdk.es161.js +312 -232
  146. package/dist/es/standards-sdk.es161.js.map +1 -1
  147. package/dist/es/standards-sdk.es162.js +345 -55
  148. package/dist/es/standards-sdk.es162.js.map +1 -1
  149. package/dist/es/standards-sdk.es163.js +437 -68
  150. package/dist/es/standards-sdk.es163.js.map +1 -1
  151. package/dist/es/standards-sdk.es164.js +321 -71
  152. package/dist/es/standards-sdk.es164.js.map +1 -1
  153. package/dist/es/standards-sdk.es165.js +66 -63
  154. package/dist/es/standards-sdk.es165.js.map +1 -1
  155. package/dist/es/standards-sdk.es166.js +220 -150
  156. package/dist/es/standards-sdk.es166.js.map +1 -1
  157. package/dist/es/standards-sdk.es167.js +152 -202
  158. package/dist/es/standards-sdk.es167.js.map +1 -1
  159. package/dist/es/standards-sdk.es168.js +206 -223
  160. package/dist/es/standards-sdk.es168.js.map +1 -1
  161. package/dist/es/standards-sdk.es169.js +227 -107
  162. package/dist/es/standards-sdk.es169.js.map +1 -1
  163. package/dist/es/standards-sdk.es170.js +98 -105
  164. package/dist/es/standards-sdk.es170.js.map +1 -1
  165. package/dist/es/standards-sdk.es171.js +105 -140
  166. package/dist/es/standards-sdk.es171.js.map +1 -1
  167. package/dist/es/standards-sdk.es172.js +140 -164
  168. package/dist/es/standards-sdk.es172.js.map +1 -1
  169. package/dist/es/standards-sdk.es173.js +165 -119
  170. package/dist/es/standards-sdk.es173.js.map +1 -1
  171. package/dist/es/standards-sdk.es174.js +111 -303
  172. package/dist/es/standards-sdk.es174.js.map +1 -1
  173. package/dist/es/standards-sdk.es175.js +297 -225
  174. package/dist/es/standards-sdk.es175.js.map +1 -1
  175. package/dist/es/standards-sdk.es176.js +253 -110
  176. package/dist/es/standards-sdk.es176.js.map +1 -1
  177. package/dist/es/standards-sdk.es177.js +119 -0
  178. package/dist/es/standards-sdk.es177.js.map +1 -0
  179. package/dist/es/standards-sdk.es18.js +12 -12
  180. package/dist/es/standards-sdk.es19.js +9 -9
  181. package/dist/es/standards-sdk.es2.js +2 -2
  182. package/dist/es/standards-sdk.es20.js +1 -1
  183. package/dist/es/standards-sdk.es21.js +1 -1
  184. package/dist/es/standards-sdk.es22.js +1 -1
  185. package/dist/es/standards-sdk.es23.js +1 -1
  186. package/dist/es/standards-sdk.es24.js +1 -1
  187. package/dist/es/standards-sdk.es25.js +1 -1
  188. package/dist/es/standards-sdk.es26.js +1 -1
  189. package/dist/es/standards-sdk.es27.js +12 -12
  190. package/dist/es/standards-sdk.es30.js +2 -2
  191. package/dist/es/standards-sdk.es31.js +4 -4
  192. package/dist/es/standards-sdk.es32.js +1 -1
  193. package/dist/es/standards-sdk.es35.js +6 -6
  194. package/dist/es/standards-sdk.es36.js +4 -4
  195. package/dist/es/standards-sdk.es37.js +2 -2
  196. package/dist/es/standards-sdk.es38.js +2 -2
  197. package/dist/es/standards-sdk.es39.js +1 -1
  198. package/dist/es/standards-sdk.es4.js +2 -2
  199. package/dist/es/standards-sdk.es40.js +1 -1
  200. package/dist/es/standards-sdk.es41.js +2 -2
  201. package/dist/es/standards-sdk.es46.js +1 -1
  202. package/dist/es/standards-sdk.es5.js +2 -2
  203. package/dist/es/standards-sdk.es51.js +1 -1
  204. package/dist/es/standards-sdk.es53.js +1 -1
  205. package/dist/es/standards-sdk.es56.js +2 -2
  206. package/dist/es/standards-sdk.es58.js +11 -236
  207. package/dist/es/standards-sdk.es58.js.map +1 -1
  208. package/dist/es/standards-sdk.es59.js +321 -35
  209. package/dist/es/standards-sdk.es59.js.map +1 -1
  210. package/dist/es/standards-sdk.es6.js +2 -2
  211. package/dist/es/standards-sdk.es60.js +32 -101
  212. package/dist/es/standards-sdk.es60.js.map +1 -1
  213. package/dist/es/standards-sdk.es61.js +86 -156
  214. package/dist/es/standards-sdk.es61.js.map +1 -1
  215. package/dist/es/standards-sdk.es62.js +112 -153
  216. package/dist/es/standards-sdk.es62.js.map +1 -1
  217. package/dist/es/standards-sdk.es63.js +179 -87
  218. package/dist/es/standards-sdk.es63.js.map +1 -1
  219. package/dist/es/standards-sdk.es64.js +124 -40
  220. package/dist/es/standards-sdk.es64.js.map +1 -1
  221. package/dist/es/standards-sdk.es65.js +41 -251
  222. package/dist/es/standards-sdk.es65.js.map +1 -1
  223. package/dist/es/standards-sdk.es66.js +257 -24
  224. package/dist/es/standards-sdk.es66.js.map +1 -1
  225. package/dist/es/standards-sdk.es67.js +25 -87
  226. package/dist/es/standards-sdk.es67.js.map +1 -1
  227. package/dist/es/standards-sdk.es68.js +95 -3
  228. package/dist/es/standards-sdk.es68.js.map +1 -1
  229. package/dist/es/standards-sdk.es69.js +3 -100
  230. package/dist/es/standards-sdk.es69.js.map +1 -1
  231. package/dist/es/standards-sdk.es7.js +1 -1
  232. package/dist/es/standards-sdk.es70.js +62 -61
  233. package/dist/es/standards-sdk.es70.js.map +1 -1
  234. package/dist/es/standards-sdk.es71.js +98 -17
  235. package/dist/es/standards-sdk.es71.js.map +1 -1
  236. package/dist/es/standards-sdk.es72.js +19 -77
  237. package/dist/es/standards-sdk.es72.js.map +1 -1
  238. package/dist/es/standards-sdk.es73.js +77 -458
  239. package/dist/es/standards-sdk.es73.js.map +1 -1
  240. package/dist/es/standards-sdk.es74.js +240 -106
  241. package/dist/es/standards-sdk.es74.js.map +1 -1
  242. package/dist/es/standards-sdk.es75.js +286 -170
  243. package/dist/es/standards-sdk.es75.js.map +1 -1
  244. package/dist/es/standards-sdk.es76.js +207 -71
  245. package/dist/es/standards-sdk.es76.js.map +1 -1
  246. package/dist/es/standards-sdk.es77.js +72 -71
  247. package/dist/es/standards-sdk.es77.js.map +1 -1
  248. package/dist/es/standards-sdk.es78.js +71 -143
  249. package/dist/es/standards-sdk.es78.js.map +1 -1
  250. package/dist/es/standards-sdk.es79.js +136 -62
  251. package/dist/es/standards-sdk.es79.js.map +1 -1
  252. package/dist/es/standards-sdk.es80.js +45 -380
  253. package/dist/es/standards-sdk.es80.js.map +1 -1
  254. package/dist/es/standards-sdk.es81.js +130 -222
  255. package/dist/es/standards-sdk.es81.js.map +1 -1
  256. package/dist/es/standards-sdk.es82.js +444 -313
  257. package/dist/es/standards-sdk.es82.js.map +1 -1
  258. package/dist/es/standards-sdk.es83.js +364 -88
  259. package/dist/es/standards-sdk.es83.js.map +1 -1
  260. package/dist/es/standards-sdk.es84.js +89 -125
  261. package/dist/es/standards-sdk.es84.js.map +1 -1
  262. package/dist/es/standards-sdk.es85.js +125 -8
  263. package/dist/es/standards-sdk.es85.js.map +1 -1
  264. package/dist/es/standards-sdk.es86.js +6 -45
  265. package/dist/es/standards-sdk.es86.js.map +1 -1
  266. package/dist/es/standards-sdk.es87.js +44 -98
  267. package/dist/es/standards-sdk.es87.js.map +1 -1
  268. package/dist/es/standards-sdk.es88.js +84 -331
  269. package/dist/es/standards-sdk.es88.js.map +1 -1
  270. package/dist/es/standards-sdk.es89.js +160 -93
  271. package/dist/es/standards-sdk.es89.js.map +1 -1
  272. package/dist/es/standards-sdk.es9.js +2 -2
  273. package/dist/es/standards-sdk.es90.js +275 -55
  274. package/dist/es/standards-sdk.es90.js.map +1 -1
  275. package/dist/es/standards-sdk.es91.js +55 -43
  276. package/dist/es/standards-sdk.es91.js.map +1 -1
  277. package/dist/es/standards-sdk.es92.js +44 -145
  278. package/dist/es/standards-sdk.es92.js.map +1 -1
  279. package/dist/es/standards-sdk.es93.js +113 -30
  280. package/dist/es/standards-sdk.es93.js.map +1 -1
  281. package/dist/es/standards-sdk.es94.js +59 -22
  282. package/dist/es/standards-sdk.es94.js.map +1 -1
  283. package/dist/es/standards-sdk.es95.js +28 -23
  284. package/dist/es/standards-sdk.es95.js.map +1 -1
  285. package/dist/es/standards-sdk.es96.js +23 -238
  286. package/dist/es/standards-sdk.es96.js.map +1 -1
  287. package/dist/es/standards-sdk.es97.js +225 -267
  288. package/dist/es/standards-sdk.es97.js.map +1 -1
  289. package/dist/es/standards-sdk.es98.js +220 -95
  290. package/dist/es/standards-sdk.es98.js.map +1 -1
  291. package/dist/es/standards-sdk.es99.js +136 -124
  292. package/dist/es/standards-sdk.es99.js.map +1 -1
  293. package/package.json +4 -1
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es66.js","sources":["../../src/hcs-14/issuers/registry.ts"],"sourcesContent":["/**\n * Issuer registry for HCS-14 DID adapters.\n */\n\nimport { DidIssueRequest, DidIssuer, IssuerRegistryApi } from './types';\n\nexport class IssuerRegistry implements IssuerRegistryApi {\n private issuers: DidIssuer[] = [];\n\n register(issuer: DidIssuer): void {\n this.issuers.push(issuer);\n }\n\n list(): DidIssuer[] {\n return [...this.issuers];\n }\n\n /** Return issuers that support a given DID method. */\n filterByDidMethod(method: string): DidIssuer[] {\n return this.issuers.filter(i => i.meta.didMethods.includes(method));\n }\n\n /** Return issuers that advertise a specific CAIP-2 network. */\n filterByCaip2(network: string): DidIssuer[] {\n return this.issuers.filter(i => i.meta.caip2Networks?.includes(network));\n }\n\n /** Generic predicate-based filter. */\n filter(predicate: (issuer: DidIssuer) => boolean): DidIssuer[] {\n return this.issuers.filter(predicate);\n }\n\n async issue(request: DidIssueRequest): Promise<string> {\n for (const issuer of this.issuers) {\n if (issuer.supports(request.method)) {\n return issuer.issue(request);\n }\n }\n throw new Error(`No issuer registered for method: ${request.method}`);\n }\n}\n\nexport const defaultIssuerRegistry = new IssuerRegistry();\n"],"names":[],"mappings":"AAMO,MAAM,eAA4C;AAAA,EAAlD,cAAA;AACL,SAAQ,UAAuB,CAAA;AAAA,EAAC;AAAA,EAEhC,SAAS,QAAyB;AAChC,SAAK,QAAQ,KAAK,MAAM;AAAA,EAC1B;AAAA,EAEA,OAAoB;AAClB,WAAO,CAAC,GAAG,KAAK,OAAO;AAAA,EACzB;AAAA;AAAA,EAGA,kBAAkB,QAA6B;AAC7C,WAAO,KAAK,QAAQ,OAAO,CAAA,MAAK,EAAE,KAAK,WAAW,SAAS,MAAM,CAAC;AAAA,EACpE;AAAA;AAAA,EAGA,cAAc,SAA8B;AAC1C,WAAO,KAAK,QAAQ,OAAO,CAAA,MAAK,EAAE,KAAK,eAAe,SAAS,OAAO,CAAC;AAAA,EACzE;AAAA;AAAA,EAGA,OAAO,WAAwD;AAC7D,WAAO,KAAK,QAAQ,OAAO,SAAS;AAAA,EACtC;AAAA,EAEA,MAAM,MAAM,SAA2C;AACrD,eAAW,UAAU,KAAK,SAAS;AACjC,UAAI,OAAO,SAAS,QAAQ,MAAM,GAAG;AACnC,eAAO,OAAO,MAAM,OAAO;AAAA,MAC7B;AAAA,IACF;AACA,UAAM,IAAI,MAAM,oCAAoC,QAAQ,MAAM,EAAE;AAAA,EACtE;AACF;AAEO,MAAM,wBAAwB,IAAI,eAAA;"}
1
+ {"version":3,"file":"standards-sdk.es66.js","sources":["../../src/hcs-14/sdk.ts"],"sourcesContent":["import {\n CanonicalizationResult,\n CanonicalAgentData,\n DidRoutingParams,\n ParsedHcs14Did,\n} from './types';\nimport { canonicalizeAgentData } from './canonical';\nimport { createUaid as createUaidFn, parseHcs14Did } from './did';\nimport {\n isHederaNetwork,\n isHederaCaip10,\n toHederaCaip10,\n parseHederaCaip10,\n isEip155Caip10,\n toEip155Caip10,\n} from './caip';\nimport {\n ResolverRegistry,\n type ResolveUaidProfileOptions,\n} from './resolvers/registry';\nimport type {\n DidProfileResolver,\n DidResolutionProfile,\n DidResolver,\n ResolverAdapter,\n ResolverAdapterFilterOptions,\n ResolverAdapterRecord,\n UaidProfileResolver,\n} from './resolvers/types';\nimport { HieroDidResolver } from './resolvers/hiero';\nimport { HCS11ProfileResolver } from './resolvers/hcs-11-profile';\nimport {\n AidDnsWebProfileResolver,\n type AidDnsWebResolverOptions,\n} from './resolvers/aid-dns-web-profile';\nimport {\n UaidDnsWebProfileResolver,\n type UaidDnsWebResolverOptions,\n} from './resolvers/uaid-dns-web-profile';\nimport { UaidDidResolutionProfileResolver } from './resolvers/uaid-did-resolution-profile';\nimport { IssuerRegistry } from './issuers/registry';\nimport { HederaHieroIssuer } from './issuers/hiero';\nimport type { DidIssueRequest } from './issuers/types';\nimport { Client } from '@hashgraph/sdk';\nimport { HCS11Client } from '../hcs-11/client';\nimport { NetworkType, Logger, type ILogger } from '../utils';\nimport { HederaMirrorNode } from '../services';\nimport {\n createNodeOperatorContext,\n type NodeOperatorContext,\n} from '../common/node-operator-resolver';\nimport { HCS10Client } from '../hcs-10/sdk';\n\n/**\n * HCS-14 SDK client - lightweight facade around AID/UAID helpers and resolver registry.\n */\nexport interface HCS14ClientOptions {\n client?: Client;\n network?: NetworkType;\n operatorId?: string;\n privateKey?: string;\n registry?: ResolverRegistry;\n hcs10Client?: HCS10Client;\n}\n\nexport class HCS14Client {\n private readonly registry: ResolverRegistry;\n private client?: Client;\n private network?: NetworkType;\n private operatorId?: string;\n private operatorPrivateKey?: string;\n private hcs10Client?: HCS10Client;\n private issuers: IssuerRegistry;\n private operatorCtx?: NodeOperatorContext;\n private logger: ILogger;\n\n constructor(options?: HCS14ClientOptions) {\n this.registry = options?.registry ?? new ResolverRegistry();\n this.issuers = new IssuerRegistry();\n this.registerHederaIssuer();\n this.registerHederaResolver();\n this.registerUaidDnsWebProfileResolver();\n this.registerAidDnsWebProfileResolver();\n this.registerUaidDidResolutionProfileResolver();\n this.registerHcs11ProfileResolver();\n this.logger = Logger.getInstance({ module: 'HCS-14' });\n this.client = options?.client;\n this.network = options?.network;\n this.operatorId = options?.operatorId;\n if (\n !this.client &&\n options?.network &&\n options?.operatorId &&\n options?.privateKey\n ) {\n this.configureHederaClient(\n options.network,\n options.operatorId,\n options.privateKey,\n );\n }\n if (options?.privateKey) {\n this.operatorPrivateKey = options.privateKey;\n }\n if (options?.hcs10Client) {\n this.hcs10Client = options.hcs10Client;\n }\n }\n\n configureHederaClient(\n network: NetworkType,\n operatorId: string,\n privateKey: string,\n ): void {\n const ctx = createNodeOperatorContext({\n network,\n operatorId,\n operatorKey: privateKey,\n mirrorNode: new HederaMirrorNode(network),\n logger: this.logger,\n client: Client.forName(network),\n });\n this.operatorCtx = ctx;\n this.client = ctx.client;\n this.network = network;\n this.operatorId = operatorId;\n this.operatorPrivateKey = privateKey;\n }\n\n private async ensureInitializedHedera(): Promise<void> {\n if (!this.operatorCtx) {\n return;\n }\n await this.operatorCtx.ensureInitialized();\n if (!this.operatorId) {\n this.operatorId = this.operatorCtx.operatorId.toString();\n }\n if (!this.operatorPrivateKey) {\n this.operatorPrivateKey = this.operatorCtx.operatorKey.toString();\n }\n if (!this.client) {\n this.client = this.operatorCtx.client;\n }\n }\n\n /**\n * DID issuance adapters\n */\n getIssuerRegistry(): IssuerRegistry {\n return this.issuers;\n }\n\n /** Convenience: list registered issuers with metadata. */\n listIssuers(): ReadonlyArray<import('./issuers/types').DidIssuer> {\n return this.issuers.list();\n }\n\n registerAdapter(adapter: ResolverAdapter): void {\n this.registry.registerAdapter(adapter);\n }\n\n listAdapters(): ReadonlyArray<ResolverAdapterRecord> {\n return this.registry.listAdapters();\n }\n\n filterAdapters(\n options: ResolverAdapterFilterOptions = {},\n ): ReadonlyArray<ResolverAdapterRecord> {\n return this.registry.filterAdapters(options);\n }\n\n /** @deprecated Use listAdapters()/filterAdapters() instead. */\n listResolvers(): ReadonlyArray<DidResolver> {\n return this.registry.list();\n }\n\n /** @deprecated Use listAdapters()/filterAdapters() instead. */\n listProfileResolvers(): ReadonlyArray<DidProfileResolver> {\n return this.registry.listProfileResolvers();\n }\n\n /** @deprecated Use listAdapters()/filterAdapters() instead. */\n listUaidProfileResolvers(): ReadonlyArray<UaidProfileResolver> {\n return this.registry.listUaidProfileResolvers();\n }\n\n /** Convenience: filter issuers by DID method. */\n filterIssuersByMethod(method: string) {\n return this.issuers.filterByDidMethod(method);\n }\n\n /** @deprecated Use filterAdapters({ capability: 'did-resolver', didMethod }) instead. */\n filterResolversByMethod(method: string) {\n return this.registry.filterByDidMethod(method);\n }\n\n /** @deprecated Use filterAdapters({ capability: 'did-profile-resolver', didMethod }) instead. */\n filterProfileResolversByMethod(method: string) {\n return this.registry.filterProfileResolversByDidMethod(method);\n }\n\n /** @deprecated Use filterAdapters({ capability: 'uaid-profile-resolver', didMethod }) instead. */\n filterUaidProfileResolversByMethod(method: string) {\n return this.registry.filterUaidProfileResolversByDidMethod(method);\n }\n\n /** @deprecated Use filterAdapters({ capability: 'uaid-profile-resolver', profileId }) instead. */\n filterUaidProfileResolversByProfileId(profileId: string) {\n return this.registry.filterUaidProfileResolversByProfileId(profileId);\n }\n\n registerHederaIssuer(): void {\n this.issuers.register(new HederaHieroIssuer());\n }\n\n async createDid(request: DidIssueRequest): Promise<string> {\n return this.issuers.issue(request);\n }\n\n canonicalizeAgentData(input: unknown): CanonicalizationResult {\n return canonicalizeAgentData(input);\n }\n\n createUaid(existingDid: string, params?: DidRoutingParams): string;\n createUaid(\n input: CanonicalAgentData | string,\n params?: DidRoutingParams,\n options?: { includeParams?: boolean },\n ): Promise<string> | string {\n if (typeof input === 'string') {\n return createUaidFn(input, params);\n }\n return createUaidFn(input, params, options);\n }\n\n parseHcs14Did(did: string): ParsedHcs14Did {\n return parseHcs14Did(did);\n }\n\n isHederaNetwork(value: string): boolean {\n return isHederaNetwork(value);\n }\n isHederaCaip10(value: string): boolean {\n return isHederaCaip10(value);\n }\n toHederaCaip10(\n network: Parameters<typeof toHederaCaip10>[0],\n accountId: string,\n ): string {\n return toHederaCaip10(network, accountId);\n }\n parseHederaCaip10(value: string): {\n network: Parameters<typeof toHederaCaip10>[0];\n accountId: string;\n } {\n return parseHederaCaip10(value);\n }\n isEip155Caip10(value: string): boolean {\n return isEip155Caip10(value);\n }\n toEip155Caip10(chainId: number | string, address: string): string {\n return toEip155Caip10(chainId, address);\n }\n\n getResolverRegistry(): ResolverRegistry {\n return this.registry;\n }\n\n /** @deprecated Use registerAdapter() instead. */\n registerProfileResolver(resolver: DidProfileResolver): void {\n this.registry.registerProfileResolver(resolver);\n }\n\n /** @deprecated Use registerAdapter() instead. */\n registerUaidProfileResolver(resolver: UaidProfileResolver): void {\n this.registry.registerUaidProfileResolver(resolver);\n }\n\n registerHederaResolver(): void {\n this.registry.registerAdapter(new HieroDidResolver());\n }\n\n registerHcs11ProfileResolver(): void {\n this.registry.registerAdapter(new HCS11ProfileResolver());\n }\n\n registerUaidDidResolutionProfileResolver(): void {\n this.registry.registerAdapter(new UaidDidResolutionProfileResolver());\n }\n\n registerAidDnsWebProfileResolver(options?: AidDnsWebResolverOptions): void {\n this.registry.registerAdapter(new AidDnsWebProfileResolver(options));\n }\n\n registerUaidDnsWebProfileResolver(options?: UaidDnsWebResolverOptions): void {\n this.registry.registerAdapter(new UaidDnsWebProfileResolver(options));\n }\n\n async resolveDidProfile(did: string): Promise<DidResolutionProfile> {\n return this.registry.resolveDidProfile(did);\n }\n\n async resolveUaidProfile(\n uaid: string,\n options?: ResolveUaidProfileOptions,\n ): Promise<DidResolutionProfile | null> {\n return this.registry.resolveUaidProfile(uaid, options);\n }\n\n /**\n * Issue a DID via adapters and immediately wrap as UAID with routing params.\n * For Hedera + proto=hcs-10, nativeId and uid are derived when possible.\n */\n async createDidWithUaid(options: {\n issue: DidIssueRequest;\n uid?: string;\n proto?: string;\n nativeId?: string;\n }): Promise<{ did: string; uaid: string; parsed: ParsedHcs14Did }> {\n const did = await this.createDid(options.issue);\n let uid = options.uid;\n const proto = options.proto;\n let nativeId = options.nativeId;\n\n const isHedera = options.issue.method === 'hedera';\n if (isHedera) {\n await this.ensureInitializedHedera();\n if (!nativeId) {\n if (!this.network || !this.operatorId) {\n throw new Error(\n 'nativeId not provided and network/operatorId are not configured',\n );\n }\n nativeId = toHederaCaip10(this.network, this.operatorId);\n }\n if (!uid && proto === 'hcs-10' && this.network && this.operatorId) {\n try {\n if (!this.hcs10Client && this.operatorPrivateKey) {\n this.hcs10Client = new HCS10Client({\n network: this.network,\n operatorId: this.operatorId,\n operatorPrivateKey: this.operatorPrivateKey,\n silent: true,\n });\n }\n if (this.hcs10Client) {\n uid = await this.hcs10Client.getOperatorId();\n } else {\n const h11 = new HCS11Client({\n network: this.network,\n auth: { operatorId: this.operatorId },\n silent: true,\n });\n const fetched = await h11.fetchProfileByAccountId(\n this.operatorId,\n this.network,\n );\n const inbound = fetched?.topicInfo?.inboundTopic;\n uid = inbound ? `${inbound}@${this.operatorId}` : this.operatorId;\n }\n } catch {\n uid = this.operatorId;\n }\n }\n }\n\n uid = uid ?? '0';\n const uaid = this.createUaid(did, {\n uid,\n proto,\n nativeId,\n });\n const parsed = parseHcs14Did(uaid);\n return { did, uaid, parsed };\n }\n}\n\nexport type {\n CanonicalizationResult,\n CanonicalAgentData,\n DidRoutingParams,\n ParsedHcs14Did,\n};\n"],"names":["createUaidFn"],"mappings":"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"}
@@ -1,99 +1,37 @@
1
- import { optionalImport } from "./standards-sdk.es163.js";
2
- const hieroRegistrarModuleId = ["@hiero-did-sdk", "registrar"].join("/");
3
- let registrarPromise = null;
4
- function toAccountIdString(value) {
5
- if (typeof value === "string" && value.trim()) {
6
- return value;
1
+ class IssuerRegistry {
2
+ constructor() {
3
+ this.issuers = [];
7
4
  }
8
- if (value && typeof value.toString === "function") {
9
- const result = value.toString();
10
- return typeof result === "string" && result.trim() ? result : null;
5
+ register(issuer) {
6
+ this.issuers.push(issuer);
11
7
  }
12
- return null;
13
- }
14
- function createHieroPublisher(client) {
15
- return {
16
- network: () => {
17
- const ledgerId = client.ledgerId;
18
- if (!ledgerId) {
19
- throw new Error("Hedera SDK Client must be configured with a network");
20
- }
21
- if (ledgerId.isMainnet()) return "mainnet";
22
- if (ledgerId.isTestnet()) return "testnet";
23
- if (ledgerId.isPreviewnet()) return "previewnet";
24
- if (ledgerId.isLocalNode()) return "local-node";
25
- throw new Error(`Unknown network, ledger ID: ${ledgerId.toString()}`);
26
- },
27
- publicKey: () => {
28
- if (!client.operatorPublicKey) {
29
- throw new Error(
30
- "Hedera SDK Client must be configured with an operator account"
31
- );
32
- }
33
- return client.operatorPublicKey;
34
- },
35
- publish: async (transaction) => {
36
- const current = typeof transaction.getAutoRenewAccountId === "function" ? transaction.getAutoRenewAccountId() : null;
37
- const autoRenewAccountId = toAccountIdString(client.operatorAccountId);
38
- if (!current && autoRenewAccountId && typeof transaction.setAutoRenewAccountId === "function") {
39
- transaction.setAutoRenewAccountId(autoRenewAccountId);
40
- }
41
- const response = await transaction.freezeWith(client).execute(client);
42
- return response.getReceipt(client);
43
- }
44
- };
45
- }
46
- async function loadCreateDID() {
47
- if (!registrarPromise) {
48
- registrarPromise = optionalImport(
49
- hieroRegistrarModuleId,
50
- { preferImport: true }
51
- ).then((mod) => mod?.createDID ?? null);
8
+ list() {
9
+ return [...this.issuers];
52
10
  }
53
- return registrarPromise;
54
- }
55
- class HederaHieroIssuer {
56
- constructor() {
57
- this.meta = {
58
- id: "hedera/hiero",
59
- didMethods: ["hedera"],
60
- caip2Networks: [
61
- "hedera:mainnet",
62
- "hedera:testnet",
63
- "hedera:previewnet",
64
- "hedera:devnet"
65
- ],
66
- caip10Namespaces: ["hedera"],
67
- displayName: "Hedera (Hiero Registrar)",
68
- description: "Issues did:hedera identifiers using the Hiero DID registrar.",
69
- homepage: "https://github.com/hiero-ledger/hiero-did-sdk-js"
70
- };
11
+ /** Return issuers that support a given DID method. */
12
+ filterByDidMethod(method) {
13
+ return this.issuers.filter((i) => i.meta.didMethods.includes(method));
14
+ }
15
+ /** Return issuers that advertise a specific CAIP-2 network. */
16
+ filterByCaip2(network) {
17
+ return this.issuers.filter((i) => i.meta.caip2Networks?.includes(network));
71
18
  }
72
- supports(method) {
73
- return method === "hedera";
19
+ /** Generic predicate-based filter. */
20
+ filter(predicate) {
21
+ return this.issuers.filter(predicate);
74
22
  }
75
23
  async issue(request) {
76
- if (request.method !== "hedera") {
77
- throw new Error('HederaHieroIssuer only handles method "hedera"');
78
- }
79
- if (!("client" in request)) {
80
- throw new Error("Hedera client is required to issue did:hedera");
81
- }
82
- const createDID = await loadCreateDID();
83
- if (!createDID) {
84
- throw new Error(
85
- "Hiero registrar unavailable. Ensure @hiero-did-sdk/registrar is installed."
86
- );
24
+ for (const issuer of this.issuers) {
25
+ if (issuer.supports(request.method)) {
26
+ return issuer.issue(request);
27
+ }
87
28
  }
88
- const client = request.client;
89
- const did = await createDID(
90
- {},
91
- { publisher: createHieroPublisher(client) }
92
- );
93
- return did.did;
29
+ throw new Error(`No issuer registered for method: ${request.method}`);
94
30
  }
95
31
  }
32
+ const defaultIssuerRegistry = new IssuerRegistry();
96
33
  export {
97
- HederaHieroIssuer
34
+ IssuerRegistry,
35
+ defaultIssuerRegistry
98
36
  };
99
37
  //# sourceMappingURL=standards-sdk.es67.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es67.js","sources":["../../src/hcs-14/issuers/hiero.ts"],"sourcesContent":["import { DidIssueRequest, DidIssueRequestHedera, DidIssuer } from './types';\nimport type { AdapterMeta } from '../adapters/types';\nimport { optionalImport } from '../../utils/dynamic-import';\nimport type { PublicKey, TransactionReceipt } from '@hashgraph/sdk';\n\ntype CreateDID = typeof import('@hiero-did-sdk/registrar').createDID;\ntype HieroRegistrarModule = typeof import('@hiero-did-sdk/registrar');\n\nconst hieroRegistrarModuleId = ['@hiero-did-sdk', 'registrar'].join('/');\n\nlet registrarPromise: Promise<CreateDID | null> | null = null;\n\ntype PublisherClientLike = {\n ledgerId?: {\n isMainnet: () => boolean;\n isTestnet: () => boolean;\n isPreviewnet: () => boolean;\n isLocalNode: () => boolean;\n toString: () => string;\n };\n operatorPublicKey?: PublicKey;\n operatorAccountId?: { toString: () => string };\n};\n\ntype AutoRenewTransactionLike = {\n getAutoRenewAccountId?: () => unknown;\n setAutoRenewAccountId?: (value: string) => void;\n freezeWith: (client: PublisherClientLike) => {\n execute: (client: PublisherClientLike) => Promise<{\n getReceipt: (client: PublisherClientLike) => Promise<TransactionReceipt>;\n }>;\n };\n};\n\nfunction toAccountIdString(value: unknown): string | null {\n if (typeof value === 'string' && value.trim()) {\n return value;\n }\n\n if (\n value &&\n typeof (value as { toString?: () => string }).toString === 'function'\n ) {\n const result = (value as { toString: () => string }).toString();\n return typeof result === 'string' && result.trim() ? result : null;\n }\n\n return null;\n}\n\nfunction createHieroPublisher(client: PublisherClientLike) {\n return {\n network: () => {\n const ledgerId = client.ledgerId;\n if (!ledgerId) {\n throw new Error('Hedera SDK Client must be configured with a network');\n }\n if (ledgerId.isMainnet()) return 'mainnet';\n if (ledgerId.isTestnet()) return 'testnet';\n if (ledgerId.isPreviewnet()) return 'previewnet';\n if (ledgerId.isLocalNode()) return 'local-node';\n throw new Error(`Unknown network, ledger ID: ${ledgerId.toString()}`);\n },\n publicKey: () => {\n if (!client.operatorPublicKey) {\n throw new Error(\n 'Hedera SDK Client must be configured with an operator account',\n );\n }\n return client.operatorPublicKey;\n },\n publish: async (transaction: AutoRenewTransactionLike) => {\n const current =\n typeof transaction.getAutoRenewAccountId === 'function'\n ? transaction.getAutoRenewAccountId()\n : null;\n const autoRenewAccountId = toAccountIdString(client.operatorAccountId);\n\n if (\n !current &&\n autoRenewAccountId &&\n typeof transaction.setAutoRenewAccountId === 'function'\n ) {\n transaction.setAutoRenewAccountId(autoRenewAccountId);\n }\n\n const response = await transaction.freezeWith(client).execute(client);\n return response.getReceipt(client);\n },\n };\n}\n\nasync function loadCreateDID(): Promise<CreateDID | null> {\n if (!registrarPromise) {\n // Prefer ESM to keep @hashgraph/sdk classes consistent across caller + registrar.\n registrarPromise = optionalImport<HieroRegistrarModule>(\n hieroRegistrarModuleId,\n { preferImport: true },\n ).then(mod => mod?.createDID ?? null);\n }\n return registrarPromise;\n}\n\nexport class HederaHieroIssuer implements DidIssuer {\n readonly meta: AdapterMeta = {\n id: 'hedera/hiero',\n didMethods: ['hedera'],\n caip2Networks: [\n 'hedera:mainnet',\n 'hedera:testnet',\n 'hedera:previewnet',\n 'hedera:devnet',\n ],\n caip10Namespaces: ['hedera'],\n displayName: 'Hedera (Hiero Registrar)',\n description: 'Issues did:hedera identifiers using the Hiero DID registrar.',\n homepage: 'https://github.com/hiero-ledger/hiero-did-sdk-js',\n };\n\n supports(method: string): boolean {\n return method === 'hedera';\n }\n\n async issue(request: DidIssueRequest): Promise<string> {\n if (request.method !== 'hedera') {\n throw new Error('HederaHieroIssuer only handles method \"hedera\"');\n }\n if (!('client' in request)) {\n throw new Error('Hedera client is required to issue did:hedera');\n }\n const createDID = await loadCreateDID();\n if (!createDID) {\n throw new Error(\n 'Hiero registrar unavailable. Ensure @hiero-did-sdk/registrar is installed.',\n );\n }\n const client = (request as DidIssueRequestHedera).client;\n const did = await createDID(\n {},\n { publisher: createHieroPublisher(client) },\n );\n return did.did;\n }\n}\n"],"names":[],"mappings":";AAQA,MAAM,yBAAyB,CAAC,kBAAkB,WAAW,EAAE,KAAK,GAAG;AAEvE,IAAI,mBAAqD;AAwBzD,SAAS,kBAAkB,OAA+B;AACxD,MAAI,OAAO,UAAU,YAAY,MAAM,QAAQ;AAC7C,WAAO;AAAA,EACT;AAEA,MACE,SACA,OAAQ,MAAsC,aAAa,YAC3D;AACA,UAAM,SAAU,MAAqC,SAAA;AACrD,WAAO,OAAO,WAAW,YAAY,OAAO,KAAA,IAAS,SAAS;AAAA,EAChE;AAEA,SAAO;AACT;AAEA,SAAS,qBAAqB,QAA6B;AACzD,SAAO;AAAA,IACL,SAAS,MAAM;AACb,YAAM,WAAW,OAAO;AACxB,UAAI,CAAC,UAAU;AACb,cAAM,IAAI,MAAM,qDAAqD;AAAA,MACvE;AACA,UAAI,SAAS,UAAA,EAAa,QAAO;AACjC,UAAI,SAAS,UAAA,EAAa,QAAO;AACjC,UAAI,SAAS,aAAA,EAAgB,QAAO;AACpC,UAAI,SAAS,YAAA,EAAe,QAAO;AACnC,YAAM,IAAI,MAAM,+BAA+B,SAAS,SAAA,CAAU,EAAE;AAAA,IACtE;AAAA,IACA,WAAW,MAAM;AACf,UAAI,CAAC,OAAO,mBAAmB;AAC7B,cAAM,IAAI;AAAA,UACR;AAAA,QAAA;AAAA,MAEJ;AACA,aAAO,OAAO;AAAA,IAChB;AAAA,IACA,SAAS,OAAO,gBAA0C;AACxD,YAAM,UACJ,OAAO,YAAY,0BAA0B,aACzC,YAAY,0BACZ;AACN,YAAM,qBAAqB,kBAAkB,OAAO,iBAAiB;AAErE,UACE,CAAC,WACD,sBACA,OAAO,YAAY,0BAA0B,YAC7C;AACA,oBAAY,sBAAsB,kBAAkB;AAAA,MACtD;AAEA,YAAM,WAAW,MAAM,YAAY,WAAW,MAAM,EAAE,QAAQ,MAAM;AACpE,aAAO,SAAS,WAAW,MAAM;AAAA,IACnC;AAAA,EAAA;AAEJ;AAEA,eAAe,gBAA2C;AACxD,MAAI,CAAC,kBAAkB;AAErB,uBAAmB;AAAA,MACjB;AAAA,MACA,EAAE,cAAc,KAAA;AAAA,IAAK,EACrB,KAAK,CAAA,QAAO,KAAK,aAAa,IAAI;AAAA,EACtC;AACA,SAAO;AACT;AAEO,MAAM,kBAAuC;AAAA,EAA7C,cAAA;AACL,SAAS,OAAoB;AAAA,MAC3B,IAAI;AAAA,MACJ,YAAY,CAAC,QAAQ;AAAA,MACrB,eAAe;AAAA,QACb;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,MAEF,kBAAkB,CAAC,QAAQ;AAAA,MAC3B,aAAa;AAAA,MACb,aAAa;AAAA,MACb,UAAU;AAAA,IAAA;AAAA,EACZ;AAAA,EAEA,SAAS,QAAyB;AAChC,WAAO,WAAW;AAAA,EACpB;AAAA,EAEA,MAAM,MAAM,SAA2C;AACrD,QAAI,QAAQ,WAAW,UAAU;AAC/B,YAAM,IAAI,MAAM,gDAAgD;AAAA,IAClE;AACA,QAAI,EAAE,YAAY,UAAU;AAC1B,YAAM,IAAI,MAAM,+CAA+C;AAAA,IACjE;AACA,UAAM,YAAY,MAAM,cAAA;AACxB,QAAI,CAAC,WAAW;AACd,YAAM,IAAI;AAAA,QACR;AAAA,MAAA;AAAA,IAEJ;AACA,UAAM,SAAU,QAAkC;AAClD,UAAM,MAAM,MAAM;AAAA,MAChB,CAAA;AAAA,MACA,EAAE,WAAW,qBAAqB,MAAM,EAAA;AAAA,IAAE;AAE5C,WAAO,IAAI;AAAA,EACb;AACF;"}
1
+ {"version":3,"file":"standards-sdk.es67.js","sources":["../../src/hcs-14/issuers/registry.ts"],"sourcesContent":["/**\n * Issuer registry for HCS-14 DID adapters.\n */\n\nimport { DidIssueRequest, DidIssuer, IssuerRegistryApi } from './types';\n\nexport class IssuerRegistry implements IssuerRegistryApi {\n private issuers: DidIssuer[] = [];\n\n register(issuer: DidIssuer): void {\n this.issuers.push(issuer);\n }\n\n list(): DidIssuer[] {\n return [...this.issuers];\n }\n\n /** Return issuers that support a given DID method. */\n filterByDidMethod(method: string): DidIssuer[] {\n return this.issuers.filter(i => i.meta.didMethods.includes(method));\n }\n\n /** Return issuers that advertise a specific CAIP-2 network. */\n filterByCaip2(network: string): DidIssuer[] {\n return this.issuers.filter(i => i.meta.caip2Networks?.includes(network));\n }\n\n /** Generic predicate-based filter. */\n filter(predicate: (issuer: DidIssuer) => boolean): DidIssuer[] {\n return this.issuers.filter(predicate);\n }\n\n async issue(request: DidIssueRequest): Promise<string> {\n for (const issuer of this.issuers) {\n if (issuer.supports(request.method)) {\n return issuer.issue(request);\n }\n }\n throw new Error(`No issuer registered for method: ${request.method}`);\n }\n}\n\nexport const defaultIssuerRegistry = new IssuerRegistry();\n"],"names":[],"mappings":"AAMO,MAAM,eAA4C;AAAA,EAAlD,cAAA;AACL,SAAQ,UAAuB,CAAA;AAAA,EAAC;AAAA,EAEhC,SAAS,QAAyB;AAChC,SAAK,QAAQ,KAAK,MAAM;AAAA,EAC1B;AAAA,EAEA,OAAoB;AAClB,WAAO,CAAC,GAAG,KAAK,OAAO;AAAA,EACzB;AAAA;AAAA,EAGA,kBAAkB,QAA6B;AAC7C,WAAO,KAAK,QAAQ,OAAO,CAAA,MAAK,EAAE,KAAK,WAAW,SAAS,MAAM,CAAC;AAAA,EACpE;AAAA;AAAA,EAGA,cAAc,SAA8B;AAC1C,WAAO,KAAK,QAAQ,OAAO,CAAA,MAAK,EAAE,KAAK,eAAe,SAAS,OAAO,CAAC;AAAA,EACzE;AAAA;AAAA,EAGA,OAAO,WAAwD;AAC7D,WAAO,KAAK,QAAQ,OAAO,SAAS;AAAA,EACtC;AAAA,EAEA,MAAM,MAAM,SAA2C;AACrD,eAAW,UAAU,KAAK,SAAS;AACjC,UAAI,OAAO,SAAS,QAAQ,MAAM,GAAG;AACnC,eAAO,OAAO,MAAM,OAAO;AAAA,MAC7B;AAAA,IACF;AACA,UAAM,IAAI,MAAM,oCAAoC,QAAQ,MAAM,EAAE;AAAA,EACtE;AACF;AAEO,MAAM,wBAAwB,IAAI,eAAA;"}
@@ -1,7 +1,99 @@
1
- function buildHcs1Hrl(topicId) {
2
- return `hcs://1/${topicId}`;
1
+ import { optionalImport } from "./standards-sdk.es157.js";
2
+ const hieroRegistrarModuleId = ["@hiero-did-sdk", "registrar"].join("/");
3
+ let registrarPromise = null;
4
+ function toAccountIdString(value) {
5
+ if (typeof value === "string" && value.trim()) {
6
+ return value;
7
+ }
8
+ if (value && typeof value.toString === "function") {
9
+ const result = value.toString();
10
+ return typeof result === "string" && result.trim() ? result : null;
11
+ }
12
+ return null;
13
+ }
14
+ function createHieroPublisher(client) {
15
+ return {
16
+ network: () => {
17
+ const ledgerId = client.ledgerId;
18
+ if (!ledgerId) {
19
+ throw new Error("Hedera SDK Client must be configured with a network");
20
+ }
21
+ if (ledgerId.isMainnet()) return "mainnet";
22
+ if (ledgerId.isTestnet()) return "testnet";
23
+ if (ledgerId.isPreviewnet()) return "previewnet";
24
+ if (ledgerId.isLocalNode()) return "local-node";
25
+ throw new Error(`Unknown network, ledger ID: ${ledgerId.toString()}`);
26
+ },
27
+ publicKey: () => {
28
+ if (!client.operatorPublicKey) {
29
+ throw new Error(
30
+ "Hedera SDK Client must be configured with an operator account"
31
+ );
32
+ }
33
+ return client.operatorPublicKey;
34
+ },
35
+ publish: async (transaction) => {
36
+ const current = typeof transaction.getAutoRenewAccountId === "function" ? transaction.getAutoRenewAccountId() : null;
37
+ const autoRenewAccountId = toAccountIdString(client.operatorAccountId);
38
+ if (!current && autoRenewAccountId && typeof transaction.setAutoRenewAccountId === "function") {
39
+ transaction.setAutoRenewAccountId(autoRenewAccountId);
40
+ }
41
+ const response = await transaction.freezeWith(client).execute(client);
42
+ return response.getReceipt(client);
43
+ }
44
+ };
45
+ }
46
+ async function loadCreateDID() {
47
+ if (!registrarPromise) {
48
+ registrarPromise = optionalImport(
49
+ hieroRegistrarModuleId,
50
+ { preferImport: true }
51
+ ).then((mod) => mod?.createDID ?? null);
52
+ }
53
+ return registrarPromise;
54
+ }
55
+ class HederaHieroIssuer {
56
+ constructor() {
57
+ this.meta = {
58
+ id: "hedera/hiero",
59
+ didMethods: ["hedera"],
60
+ caip2Networks: [
61
+ "hedera:mainnet",
62
+ "hedera:testnet",
63
+ "hedera:previewnet",
64
+ "hedera:devnet"
65
+ ],
66
+ caip10Namespaces: ["hedera"],
67
+ displayName: "Hedera (Hiero Registrar)",
68
+ description: "Issues did:hedera identifiers using the Hiero DID registrar.",
69
+ homepage: "https://github.com/hiero-ledger/hiero-did-sdk-js"
70
+ };
71
+ }
72
+ supports(method) {
73
+ return method === "hedera";
74
+ }
75
+ async issue(request) {
76
+ if (request.method !== "hedera") {
77
+ throw new Error('HederaHieroIssuer only handles method "hedera"');
78
+ }
79
+ if (!("client" in request)) {
80
+ throw new Error("Hedera client is required to issue did:hedera");
81
+ }
82
+ const createDID = await loadCreateDID();
83
+ if (!createDID) {
84
+ throw new Error(
85
+ "Hiero registrar unavailable. Ensure @hiero-did-sdk/registrar is installed."
86
+ );
87
+ }
88
+ const client = request.client;
89
+ const did = await createDID(
90
+ {},
91
+ { publisher: createHieroPublisher(client) }
92
+ );
93
+ return did.did;
94
+ }
3
95
  }
4
96
  export {
5
- buildHcs1Hrl
97
+ HederaHieroIssuer
6
98
  };
7
99
  //# sourceMappingURL=standards-sdk.es68.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es68.js","sources":["../../src/hcs-5/types.ts"],"sourcesContent":["import { Logger, LogLevel } from '../utils/logger';\nimport { NetworkType } from '../utils/types';\nimport { PrivateKey } from '@hashgraph/sdk';\nimport type { InscriptionOptions } from '../inscribe/types';\nimport type { InscriptionInput } from '../inscribe/inscriber';\n\n/**\n * Configuration for HCS-5 client\n */\nexport interface HCS5ClientConfig {\n network: NetworkType;\n logLevel?: LogLevel;\n silent?: boolean;\n logger?: Logger;\n operatorId: string;\n operatorKey: string | PrivateKey;\n}\n\n/**\n * Options for minting a Hashinal onto an existing HTS NFT token\n */\nexport interface HCS5MintOptions {\n tokenId: string;\n metadataTopicId?: string;\n supplyKey?: string | PrivateKey;\n memo?: string;\n}\n\n/**\n * Options for inscribing content (HCS-1) then minting as a HCS-5 Hashinal\n */\nexport interface HCS5CreateHashinalOptions {\n tokenId: string;\n inscriptionInput: InscriptionInput;\n inscriptionOptions: InscriptionOptions & { waitForConfirmation?: boolean };\n supplyKey?: string | PrivateKey;\n memo?: string;\n}\n\n/**\n * Mint response\n */\nexport interface HCS5MintResponse {\n success: boolean;\n serialNumber?: number;\n transactionId?: string;\n metadata?: string;\n error?: string;\n}\n\n/**\n * Utility to build an HRL for HCS-1\n */\nexport function buildHcs1Hrl(topicId: string): string {\n return `hcs://1/${topicId}`;\n}\n"],"names":[],"mappings":"AAqDO,SAAS,aAAa,SAAyB;AACpD,SAAO,WAAW,OAAO;AAC3B;"}
1
+ {"version":3,"file":"standards-sdk.es68.js","sources":["../../src/hcs-14/issuers/hiero.ts"],"sourcesContent":["import { DidIssueRequest, DidIssueRequestHedera, DidIssuer } from './types';\nimport type { AdapterMeta } from '../adapters/types';\nimport { optionalImport } from '../../utils/dynamic-import';\nimport type { PublicKey, TransactionReceipt } from '@hashgraph/sdk';\n\ntype CreateDID = typeof import('@hiero-did-sdk/registrar').createDID;\ntype HieroRegistrarModule = typeof import('@hiero-did-sdk/registrar');\n\nconst hieroRegistrarModuleId = ['@hiero-did-sdk', 'registrar'].join('/');\n\nlet registrarPromise: Promise<CreateDID | null> | null = null;\n\ntype PublisherClientLike = {\n ledgerId?: {\n isMainnet: () => boolean;\n isTestnet: () => boolean;\n isPreviewnet: () => boolean;\n isLocalNode: () => boolean;\n toString: () => string;\n };\n operatorPublicKey?: PublicKey;\n operatorAccountId?: { toString: () => string };\n};\n\ntype AutoRenewTransactionLike = {\n getAutoRenewAccountId?: () => unknown;\n setAutoRenewAccountId?: (value: string) => void;\n freezeWith: (client: PublisherClientLike) => {\n execute: (client: PublisherClientLike) => Promise<{\n getReceipt: (client: PublisherClientLike) => Promise<TransactionReceipt>;\n }>;\n };\n};\n\nfunction toAccountIdString(value: unknown): string | null {\n if (typeof value === 'string' && value.trim()) {\n return value;\n }\n\n if (\n value &&\n typeof (value as { toString?: () => string }).toString === 'function'\n ) {\n const result = (value as { toString: () => string }).toString();\n return typeof result === 'string' && result.trim() ? result : null;\n }\n\n return null;\n}\n\nfunction createHieroPublisher(client: PublisherClientLike) {\n return {\n network: () => {\n const ledgerId = client.ledgerId;\n if (!ledgerId) {\n throw new Error('Hedera SDK Client must be configured with a network');\n }\n if (ledgerId.isMainnet()) return 'mainnet';\n if (ledgerId.isTestnet()) return 'testnet';\n if (ledgerId.isPreviewnet()) return 'previewnet';\n if (ledgerId.isLocalNode()) return 'local-node';\n throw new Error(`Unknown network, ledger ID: ${ledgerId.toString()}`);\n },\n publicKey: () => {\n if (!client.operatorPublicKey) {\n throw new Error(\n 'Hedera SDK Client must be configured with an operator account',\n );\n }\n return client.operatorPublicKey;\n },\n publish: async (transaction: AutoRenewTransactionLike) => {\n const current =\n typeof transaction.getAutoRenewAccountId === 'function'\n ? transaction.getAutoRenewAccountId()\n : null;\n const autoRenewAccountId = toAccountIdString(client.operatorAccountId);\n\n if (\n !current &&\n autoRenewAccountId &&\n typeof transaction.setAutoRenewAccountId === 'function'\n ) {\n transaction.setAutoRenewAccountId(autoRenewAccountId);\n }\n\n const response = await transaction.freezeWith(client).execute(client);\n return response.getReceipt(client);\n },\n };\n}\n\nasync function loadCreateDID(): Promise<CreateDID | null> {\n if (!registrarPromise) {\n // Prefer ESM to keep @hashgraph/sdk classes consistent across caller + registrar.\n registrarPromise = optionalImport<HieroRegistrarModule>(\n hieroRegistrarModuleId,\n { preferImport: true },\n ).then(mod => mod?.createDID ?? null);\n }\n return registrarPromise;\n}\n\nexport class HederaHieroIssuer implements DidIssuer {\n readonly meta: AdapterMeta = {\n id: 'hedera/hiero',\n didMethods: ['hedera'],\n caip2Networks: [\n 'hedera:mainnet',\n 'hedera:testnet',\n 'hedera:previewnet',\n 'hedera:devnet',\n ],\n caip10Namespaces: ['hedera'],\n displayName: 'Hedera (Hiero Registrar)',\n description: 'Issues did:hedera identifiers using the Hiero DID registrar.',\n homepage: 'https://github.com/hiero-ledger/hiero-did-sdk-js',\n };\n\n supports(method: string): boolean {\n return method === 'hedera';\n }\n\n async issue(request: DidIssueRequest): Promise<string> {\n if (request.method !== 'hedera') {\n throw new Error('HederaHieroIssuer only handles method \"hedera\"');\n }\n if (!('client' in request)) {\n throw new Error('Hedera client is required to issue did:hedera');\n }\n const createDID = await loadCreateDID();\n if (!createDID) {\n throw new Error(\n 'Hiero registrar unavailable. Ensure @hiero-did-sdk/registrar is installed.',\n );\n }\n const client = (request as DidIssueRequestHedera).client;\n const did = await createDID(\n {},\n { publisher: createHieroPublisher(client) },\n );\n return did.did;\n }\n}\n"],"names":[],"mappings":";AAQA,MAAM,yBAAyB,CAAC,kBAAkB,WAAW,EAAE,KAAK,GAAG;AAEvE,IAAI,mBAAqD;AAwBzD,SAAS,kBAAkB,OAA+B;AACxD,MAAI,OAAO,UAAU,YAAY,MAAM,QAAQ;AAC7C,WAAO;AAAA,EACT;AAEA,MACE,SACA,OAAQ,MAAsC,aAAa,YAC3D;AACA,UAAM,SAAU,MAAqC,SAAA;AACrD,WAAO,OAAO,WAAW,YAAY,OAAO,KAAA,IAAS,SAAS;AAAA,EAChE;AAEA,SAAO;AACT;AAEA,SAAS,qBAAqB,QAA6B;AACzD,SAAO;AAAA,IACL,SAAS,MAAM;AACb,YAAM,WAAW,OAAO;AACxB,UAAI,CAAC,UAAU;AACb,cAAM,IAAI,MAAM,qDAAqD;AAAA,MACvE;AACA,UAAI,SAAS,UAAA,EAAa,QAAO;AACjC,UAAI,SAAS,UAAA,EAAa,QAAO;AACjC,UAAI,SAAS,aAAA,EAAgB,QAAO;AACpC,UAAI,SAAS,YAAA,EAAe,QAAO;AACnC,YAAM,IAAI,MAAM,+BAA+B,SAAS,SAAA,CAAU,EAAE;AAAA,IACtE;AAAA,IACA,WAAW,MAAM;AACf,UAAI,CAAC,OAAO,mBAAmB;AAC7B,cAAM,IAAI;AAAA,UACR;AAAA,QAAA;AAAA,MAEJ;AACA,aAAO,OAAO;AAAA,IAChB;AAAA,IACA,SAAS,OAAO,gBAA0C;AACxD,YAAM,UACJ,OAAO,YAAY,0BAA0B,aACzC,YAAY,0BACZ;AACN,YAAM,qBAAqB,kBAAkB,OAAO,iBAAiB;AAErE,UACE,CAAC,WACD,sBACA,OAAO,YAAY,0BAA0B,YAC7C;AACA,oBAAY,sBAAsB,kBAAkB;AAAA,MACtD;AAEA,YAAM,WAAW,MAAM,YAAY,WAAW,MAAM,EAAE,QAAQ,MAAM;AACpE,aAAO,SAAS,WAAW,MAAM;AAAA,IACnC;AAAA,EAAA;AAEJ;AAEA,eAAe,gBAA2C;AACxD,MAAI,CAAC,kBAAkB;AAErB,uBAAmB;AAAA,MACjB;AAAA,MACA,EAAE,cAAc,KAAA;AAAA,IAAK,EACrB,KAAK,CAAA,QAAO,KAAK,aAAa,IAAI;AAAA,EACtC;AACA,SAAO;AACT;AAEO,MAAM,kBAAuC;AAAA,EAA7C,cAAA;AACL,SAAS,OAAoB;AAAA,MAC3B,IAAI;AAAA,MACJ,YAAY,CAAC,QAAQ;AAAA,MACrB,eAAe;AAAA,QACb;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,MAEF,kBAAkB,CAAC,QAAQ;AAAA,MAC3B,aAAa;AAAA,MACb,aAAa;AAAA,MACb,UAAU;AAAA,IAAA;AAAA,EACZ;AAAA,EAEA,SAAS,QAAyB;AAChC,WAAO,WAAW;AAAA,EACpB;AAAA,EAEA,MAAM,MAAM,SAA2C;AACrD,QAAI,QAAQ,WAAW,UAAU;AAC/B,YAAM,IAAI,MAAM,gDAAgD;AAAA,IAClE;AACA,QAAI,EAAE,YAAY,UAAU;AAC1B,YAAM,IAAI,MAAM,+CAA+C;AAAA,IACjE;AACA,UAAM,YAAY,MAAM,cAAA;AACxB,QAAI,CAAC,WAAW;AACd,YAAM,IAAI;AAAA,QACR;AAAA,MAAA;AAAA,IAEJ;AACA,UAAM,SAAU,QAAkC;AAClD,UAAM,MAAM,MAAM;AAAA,MAChB,CAAA;AAAA,MACA,EAAE,WAAW,qBAAqB,MAAM,EAAA;AAAA,IAAE;AAE5C,WAAO,IAAI;AAAA,EACb;AACF;"}
@@ -1,104 +1,7 @@
1
- import { HCS5BaseClient } from "./standards-sdk.es160.js";
2
- import { buildHcs1Hrl } from "./standards-sdk.es68.js";
3
- import { PrivateKey } from "@hashgraph/sdk";
4
- import { inscribeWithSigner } from "./standards-sdk.es135.js";
5
- import { buildHcs5MintTx } from "./standards-sdk.es71.js";
6
- class HCS5BrowserClient extends HCS5BaseClient {
7
- constructor(config) {
8
- super({
9
- network: config.network,
10
- logLevel: config.logLevel,
11
- silent: config.silent,
12
- logger: void 0,
13
- operatorId: "0.0.0",
14
- operatorKey: ""
15
- });
16
- this.hwc = config.hwc;
17
- this.signer = config.signer;
18
- }
19
- getSigner() {
20
- if (this.signer) {
21
- return this.signer;
22
- }
23
- const accountId = this.hwc.getAccountInfo()?.accountId;
24
- const signer = this.hwc.dAppConnector?.signers?.find((s) => {
25
- return s.getAccountId().toString() === accountId;
26
- });
27
- if (!signer) {
28
- throw new Error("No active wallet signer");
29
- }
30
- return signer;
31
- }
32
- async mint(options) {
33
- try {
34
- if (!options.metadataTopicId) {
35
- return {
36
- success: false,
37
- error: "metadataTopicId is required for mint()"
38
- };
39
- }
40
- const metadata = buildHcs1Hrl(options.metadataTopicId);
41
- const tx = buildHcs5MintTx({ tokenId: options.tokenId, metadata });
42
- let result;
43
- if (options.supplyKey && options.supplyKey instanceof PrivateKey) {
44
- const signer = this.getSigner();
45
- await tx.freezeWithSigner(signer);
46
- const signed = await tx.sign(options.supplyKey);
47
- result = await this.hwc.executeTransactionWithErrorHandling(
48
- signed,
49
- true
50
- );
51
- } else {
52
- result = await this.hwc.executeTransactionWithErrorHandling(
53
- tx,
54
- false
55
- );
56
- }
57
- if (result.error) {
58
- return { success: false, error: result.error };
59
- }
60
- const receipt = result.result;
61
- const serial = receipt.serials?.[0] ? Number(receipt.serials[0].toString()) : void 0;
62
- return {
63
- success: true,
64
- serialNumber: serial,
65
- transactionId: receipt?.transactionId?.toString?.(),
66
- metadata
67
- };
68
- } catch (e) {
69
- return { success: false, error: String(e) };
70
- }
71
- }
72
- async createHashinal(options) {
73
- try {
74
- const signer = this.getSigner();
75
- const inscriptionOptions = {
76
- ...options.inscriptionOptions,
77
- mode: "hashinal",
78
- waitForConfirmation: true,
79
- network: this.network
80
- };
81
- const res = await inscribeWithSigner(
82
- options.inscriptionInput,
83
- signer,
84
- inscriptionOptions
85
- );
86
- const topicId = res.inscription?.jsonTopicId || res.inscription?.topic_id;
87
- if (!res.confirmed || !topicId) {
88
- return { success: false, error: "Failed to inscribe content" };
89
- }
90
- return await this.mint({
91
- tokenId: options.tokenId,
92
- metadataTopicId: topicId,
93
- supplyKey: options.supplyKey,
94
- memo: options.memo
95
- });
96
- } catch (e) {
97
- return { success: false, error: String(e) };
98
- }
99
- }
1
+ function buildHcs1Hrl(topicId) {
2
+ return `hcs://1/${topicId}`;
100
3
  }
101
4
  export {
102
- HCS5BrowserClient
5
+ buildHcs1Hrl
103
6
  };
104
7
  //# sourceMappingURL=standards-sdk.es69.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es69.js","sources":["../../src/hcs-5/browser.ts"],"sourcesContent":["import { HCS5BaseClient } from './base-client';\nimport {\n HCS5CreateHashinalOptions,\n HCS5MintOptions,\n HCS5MintResponse,\n buildHcs1Hrl,\n} from './types';\nimport type { DAppSigner } from '@hashgraph/hedera-wallet-connect';\nimport { HashinalsWalletConnectSDK } from '@hashgraphonline/hashinal-wc';\nimport { PrivateKey, TransactionReceipt } from '@hashgraph/sdk';\nimport {\n inscribeWithSigner,\n type InscriptionInput,\n type InscriptionOptions,\n} from '../inscribe/inscriber';\nimport { buildHcs5MintTx } from './tx';\n\nexport interface BrowserHCS5ClientConfig {\n network: 'testnet' | 'mainnet';\n hwc: HashinalsWalletConnectSDK;\n signer?: DAppSigner;\n logLevel?: 'debug' | 'info' | 'warn' | 'error' | 'silent';\n silent?: boolean;\n}\n\nexport class HCS5BrowserClient extends HCS5BaseClient {\n private hwc: HashinalsWalletConnectSDK;\n private signer?: DAppSigner;\n\n constructor(config: BrowserHCS5ClientConfig) {\n super({\n network: config.network,\n logLevel: config.logLevel,\n silent: config.silent,\n logger: undefined as never,\n operatorId: '0.0.0',\n operatorKey: '' as unknown as PrivateKey,\n });\n\n this.hwc = config.hwc;\n this.signer = config.signer;\n }\n\n private getSigner(): DAppSigner {\n if (this.signer) {\n return this.signer;\n }\n const accountId = this.hwc.getAccountInfo()?.accountId;\n const signer = this.hwc.dAppConnector?.signers?.find(s => {\n return s.getAccountId().toString() === accountId;\n });\n if (!signer) {\n throw new Error('No active wallet signer');\n }\n return signer;\n }\n\n async mint(options: HCS5MintOptions): Promise<HCS5MintResponse> {\n try {\n if (!options.metadataTopicId) {\n return {\n success: false,\n error: 'metadataTopicId is required for mint()',\n };\n }\n\n const metadata = buildHcs1Hrl(options.metadataTopicId);\n const tx = buildHcs5MintTx({ tokenId: options.tokenId, metadata });\n\n let result: { result?: TransactionReceipt; error?: string };\n\n if (options.supplyKey && options.supplyKey instanceof PrivateKey) {\n const signer = this.getSigner();\n await tx.freezeWithSigner(signer);\n const signed = await tx.sign(options.supplyKey);\n result = await this.hwc.executeTransactionWithErrorHandling(\n signed,\n true,\n );\n } else {\n result = await this.hwc.executeTransactionWithErrorHandling(\n tx as any,\n false,\n );\n }\n\n if (result.error) {\n return { success: false, error: result.error };\n }\n\n const receipt = result.result as TransactionReceipt;\n const serial = (receipt as any).serials?.[0]\n ? Number((receipt as any).serials[0].toString())\n : undefined;\n\n return {\n success: true,\n serialNumber: serial,\n transactionId: (receipt as any)?.transactionId?.toString?.(),\n metadata,\n };\n } catch (e) {\n return { success: false, error: String(e) };\n }\n }\n\n async createHashinal(\n options: HCS5CreateHashinalOptions,\n ): Promise<HCS5MintResponse> {\n try {\n const signer = this.getSigner();\n\n const inscriptionOptions: InscriptionOptions = {\n ...(options.inscriptionOptions as InscriptionOptions),\n mode: 'hashinal',\n waitForConfirmation: true,\n network: this.network,\n };\n\n const res = await inscribeWithSigner(\n options.inscriptionInput as InscriptionInput,\n signer,\n inscriptionOptions,\n );\n\n const topicId = res.inscription?.jsonTopicId || res.inscription?.topic_id;\n if (!res.confirmed || !topicId) {\n return { success: false, error: 'Failed to inscribe content' };\n }\n\n return await this.mint({\n tokenId: options.tokenId,\n metadataTopicId: topicId,\n supplyKey: options.supplyKey,\n memo: options.memo,\n });\n } catch (e) {\n return { success: false, error: String(e) };\n }\n }\n}\n"],"names":[],"mappings":";;;;;AAyBO,MAAM,0BAA0B,eAAe;AAAA,EAIpD,YAAY,QAAiC;AAC3C,UAAM;AAAA,MACJ,SAAS,OAAO;AAAA,MAChB,UAAU,OAAO;AAAA,MACjB,QAAQ,OAAO;AAAA,MACf,QAAQ;AAAA,MACR,YAAY;AAAA,MACZ,aAAa;AAAA,IAAA,CACd;AAED,SAAK,MAAM,OAAO;AAClB,SAAK,SAAS,OAAO;AAAA,EACvB;AAAA,EAEQ,YAAwB;AAC9B,QAAI,KAAK,QAAQ;AACf,aAAO,KAAK;AAAA,IACd;AACA,UAAM,YAAY,KAAK,IAAI,eAAA,GAAkB;AAC7C,UAAM,SAAS,KAAK,IAAI,eAAe,SAAS,KAAK,CAAA,MAAK;AACxD,aAAO,EAAE,eAAe,SAAA,MAAe;AAAA,IACzC,CAAC;AACD,QAAI,CAAC,QAAQ;AACX,YAAM,IAAI,MAAM,yBAAyB;AAAA,IAC3C;AACA,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,KAAK,SAAqD;AAC9D,QAAI;AACF,UAAI,CAAC,QAAQ,iBAAiB;AAC5B,eAAO;AAAA,UACL,SAAS;AAAA,UACT,OAAO;AAAA,QAAA;AAAA,MAEX;AAEA,YAAM,WAAW,aAAa,QAAQ,eAAe;AACrD,YAAM,KAAK,gBAAgB,EAAE,SAAS,QAAQ,SAAS,UAAU;AAEjE,UAAI;AAEJ,UAAI,QAAQ,aAAa,QAAQ,qBAAqB,YAAY;AAChE,cAAM,SAAS,KAAK,UAAA;AACpB,cAAM,GAAG,iBAAiB,MAAM;AAChC,cAAM,SAAS,MAAM,GAAG,KAAK,QAAQ,SAAS;AAC9C,iBAAS,MAAM,KAAK,IAAI;AAAA,UACtB;AAAA,UACA;AAAA,QAAA;AAAA,MAEJ,OAAO;AACL,iBAAS,MAAM,KAAK,IAAI;AAAA,UACtB;AAAA,UACA;AAAA,QAAA;AAAA,MAEJ;AAEA,UAAI,OAAO,OAAO;AAChB,eAAO,EAAE,SAAS,OAAO,OAAO,OAAO,MAAA;AAAA,MACzC;AAEA,YAAM,UAAU,OAAO;AACvB,YAAM,SAAU,QAAgB,UAAU,CAAC,IACvC,OAAQ,QAAgB,QAAQ,CAAC,EAAE,SAAA,CAAU,IAC7C;AAEJ,aAAO;AAAA,QACL,SAAS;AAAA,QACT,cAAc;AAAA,QACd,eAAgB,SAAiB,eAAe,WAAA;AAAA,QAChD;AAAA,MAAA;AAAA,IAEJ,SAAS,GAAG;AACV,aAAO,EAAE,SAAS,OAAO,OAAO,OAAO,CAAC,EAAA;AAAA,IAC1C;AAAA,EACF;AAAA,EAEA,MAAM,eACJ,SAC2B;AAC3B,QAAI;AACF,YAAM,SAAS,KAAK,UAAA;AAEpB,YAAM,qBAAyC;AAAA,QAC7C,GAAI,QAAQ;AAAA,QACZ,MAAM;AAAA,QACN,qBAAqB;AAAA,QACrB,SAAS,KAAK;AAAA,MAAA;AAGhB,YAAM,MAAM,MAAM;AAAA,QAChB,QAAQ;AAAA,QACR;AAAA,QACA;AAAA,MAAA;AAGF,YAAM,UAAU,IAAI,aAAa,eAAe,IAAI,aAAa;AACjE,UAAI,CAAC,IAAI,aAAa,CAAC,SAAS;AAC9B,eAAO,EAAE,SAAS,OAAO,OAAO,6BAAA;AAAA,MAClC;AAEA,aAAO,MAAM,KAAK,KAAK;AAAA,QACrB,SAAS,QAAQ;AAAA,QACjB,iBAAiB;AAAA,QACjB,WAAW,QAAQ;AAAA,QACnB,MAAM,QAAQ;AAAA,MAAA,CACf;AAAA,IACH,SAAS,GAAG;AACV,aAAO,EAAE,SAAS,OAAO,OAAO,OAAO,CAAC,EAAA;AAAA,IAC1C;AAAA,EACF;AACF;"}
1
+ {"version":3,"file":"standards-sdk.es69.js","sources":["../../src/hcs-5/types.ts"],"sourcesContent":["import { Logger, LogLevel } from '../utils/logger';\nimport { NetworkType } from '../utils/types';\nimport { PrivateKey } from '@hashgraph/sdk';\nimport type { InscriptionOptions } from '../inscribe/types';\nimport type { InscriptionInput } from '../inscribe/inscriber';\n\n/**\n * Configuration for HCS-5 client\n */\nexport interface HCS5ClientConfig {\n network: NetworkType;\n logLevel?: LogLevel;\n silent?: boolean;\n logger?: Logger;\n operatorId: string;\n operatorKey: string | PrivateKey;\n}\n\n/**\n * Options for minting a Hashinal onto an existing HTS NFT token\n */\nexport interface HCS5MintOptions {\n tokenId: string;\n metadataTopicId?: string;\n supplyKey?: string | PrivateKey;\n memo?: string;\n}\n\n/**\n * Options for inscribing content (HCS-1) then minting as a HCS-5 Hashinal\n */\nexport interface HCS5CreateHashinalOptions {\n tokenId: string;\n inscriptionInput: InscriptionInput;\n inscriptionOptions: InscriptionOptions & { waitForConfirmation?: boolean };\n supplyKey?: string | PrivateKey;\n memo?: string;\n}\n\n/**\n * Mint response\n */\nexport interface HCS5MintResponse {\n success: boolean;\n serialNumber?: number;\n transactionId?: string;\n metadata?: string;\n error?: string;\n}\n\n/**\n * Utility to build an HRL for HCS-1\n */\nexport function buildHcs1Hrl(topicId: string): string {\n return `hcs://1/${topicId}`;\n}\n"],"names":[],"mappings":"AAqDO,SAAS,aAAa,SAAyB;AACpD,SAAO,WAAW,OAAO;AAC3B;"}
@@ -1,4 +1,4 @@
1
- import { buildTopicCreateTx, buildMessageTx } from "./standards-sdk.es152.js";
1
+ import { buildTopicCreateTx, buildMessageTx } from "./standards-sdk.es153.js";
2
2
  import { HCS6Operation } from "./standards-sdk.es3.js";
3
3
  function encodeHcs6NonIndexedMemo(ttl) {
4
4
  return `hcs-6:1:${ttl}`;
@@ -1,28 +1,36 @@
1
- import { HCS5BaseClient } from "./standards-sdk.es160.js";
2
- import { buildHcs1Hrl } from "./standards-sdk.es68.js";
3
- import { AccountId } from "@hashgraph/sdk";
4
- import { inscribe } from "./standards-sdk.es135.js";
5
- import { buildHcs5MintTx } from "./standards-sdk.es71.js";
6
- import { createNodeOperatorContext, NodeOperatorResolver } from "./standards-sdk.es151.js";
7
- class HCS5Client extends HCS5BaseClient {
1
+ import { HCS5BaseClient } from "./standards-sdk.es155.js";
2
+ import { buildHcs1Hrl } from "./standards-sdk.es69.js";
3
+ import { PrivateKey } from "@hashgraph/sdk";
4
+ import { inscribeWithSigner } from "./standards-sdk.es136.js";
5
+ import { buildHcs5MintTx } from "./standards-sdk.es72.js";
6
+ class HCS5BrowserClient extends HCS5BaseClient {
8
7
  constructor(config) {
9
- super(config);
10
- this.operatorId = AccountId.fromString(config.operatorId);
11
- this.operatorCtx = createNodeOperatorContext({
12
- network: this.network,
13
- operatorId: this.operatorId,
14
- operatorKey: config.operatorKey,
15
- mirrorNode: this.mirrorNode,
16
- logger: this.logger
8
+ super({
9
+ network: config.network,
10
+ logLevel: config.logLevel,
11
+ silent: config.silent,
12
+ logger: void 0,
13
+ operatorId: "0.0.0",
14
+ operatorKey: ""
17
15
  });
18
- this.client = this.operatorCtx.client;
16
+ this.hwc = config.hwc;
17
+ this.signer = config.signer;
19
18
  }
20
- async ensureInitialized() {
21
- await this.operatorCtx.ensureInitialized();
19
+ getSigner() {
20
+ if (this.signer) {
21
+ return this.signer;
22
+ }
23
+ const accountId = this.hwc.getAccountInfo()?.accountId;
24
+ const signer = this.hwc.dAppConnector?.signers?.find((s) => {
25
+ return s.getAccountId().toString() === accountId;
26
+ });
27
+ if (!signer) {
28
+ throw new Error("No active wallet signer");
29
+ }
30
+ return signer;
22
31
  }
23
32
  async mint(options) {
24
33
  try {
25
- await this.ensureInitialized();
26
34
  if (!options.metadataTopicId) {
27
35
  return {
28
36
  success: false,
@@ -31,57 +39,54 @@ class HCS5Client extends HCS5BaseClient {
31
39
  }
32
40
  const metadata = buildHcs1Hrl(options.metadataTopicId);
33
41
  const tx = buildHcs5MintTx({ tokenId: options.tokenId, metadata });
34
- const frozen = await tx.freezeWith(this.client);
35
- if (options.supplyKey) {
36
- const resolver = new NodeOperatorResolver({
37
- mirrorNode: this.mirrorNode,
38
- logger: this.logger
39
- });
40
- const privKey = typeof options.supplyKey === "string" ? await resolver.resolveSupplyKey(
41
- options.tokenId,
42
- options.supplyKey,
43
- this.operatorCtx.keyType
44
- ) : options.supplyKey;
45
- await frozen.sign(privKey);
42
+ let result;
43
+ if (options.supplyKey && options.supplyKey instanceof PrivateKey) {
44
+ const signer = this.getSigner();
45
+ await tx.freezeWithSigner(signer);
46
+ const signed = await tx.sign(options.supplyKey);
47
+ result = await this.hwc.executeTransactionWithErrorHandling(
48
+ signed,
49
+ true
50
+ );
51
+ } else {
52
+ result = await this.hwc.executeTransactionWithErrorHandling(
53
+ tx,
54
+ false
55
+ );
56
+ }
57
+ if (result.error) {
58
+ return { success: false, error: result.error };
46
59
  }
47
- const resp = await frozen.execute(this.client);
48
- const receipt = await resp.getReceipt(this.client);
49
- const serial = receipt.serials && receipt.serials[0] ? Number(receipt.serials[0].toString()) : void 0;
60
+ const receipt = result.result;
61
+ const serial = receipt.serials?.[0] ? Number(receipt.serials[0].toString()) : void 0;
50
62
  return {
51
63
  success: true,
52
64
  serialNumber: serial,
53
- transactionId: resp.transactionId?.toString?.(),
65
+ transactionId: receipt?.transactionId?.toString?.(),
54
66
  metadata
55
67
  };
56
68
  } catch (e) {
57
- const error = e;
58
- this.logger.error(`Failed to mint HCS-5 Hashinal: ${error.message}`);
59
- return { success: false, error: error.message };
69
+ return { success: false, error: String(e) };
60
70
  }
61
71
  }
62
72
  async createHashinal(options) {
63
73
  try {
64
- await this.ensureInitialized();
65
- const inscription = await inscribe(
74
+ const signer = this.getSigner();
75
+ const inscriptionOptions = {
76
+ ...options.inscriptionOptions,
77
+ mode: "hashinal",
78
+ waitForConfirmation: true,
79
+ network: this.network
80
+ };
81
+ const res = await inscribeWithSigner(
66
82
  options.inscriptionInput,
67
- {
68
- accountId: this.operatorId.toString(),
69
- privateKey: this.operatorCtx.operatorKey,
70
- network: this.network
71
- },
72
- {
73
- ...options.inscriptionOptions || {},
74
- mode: "hashinal",
75
- waitForConfirmation: true
76
- }
83
+ signer,
84
+ inscriptionOptions
77
85
  );
78
- if (!inscription.confirmed || !inscription.inscription) {
86
+ const topicId = res.inscription?.jsonTopicId || res.inscription?.topic_id;
87
+ if (!res.confirmed || !topicId) {
79
88
  return { success: false, error: "Failed to inscribe content" };
80
89
  }
81
- const topicId = inscription.inscription.jsonTopicId || inscription.inscription.topic_id;
82
- if (!topicId) {
83
- return { success: false, error: "No topic ID from inscription" };
84
- }
85
90
  return await this.mint({
86
91
  tokenId: options.tokenId,
87
92
  metadataTopicId: topicId,
@@ -89,15 +94,11 @@ class HCS5Client extends HCS5BaseClient {
89
94
  memo: options.memo
90
95
  });
91
96
  } catch (e) {
92
- const error = e;
93
- this.logger.error(
94
- `Failed to inscribe and mint HCS-5 Hashinal: ${error.message}`
95
- );
96
- return { success: false, error: error.message };
97
+ return { success: false, error: String(e) };
97
98
  }
98
99
  }
99
100
  }
100
101
  export {
101
- HCS5Client
102
+ HCS5BrowserClient
102
103
  };
103
104
  //# sourceMappingURL=standards-sdk.es70.js.map