@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,185 +1,481 @@
1
- let loggerFactory = null;
2
- function normalizeErrorData(error) {
3
- const normalizedData = {
4
- name: error.name,
5
- message: error.message
6
- };
7
- if (error.stack) {
8
- normalizedData.stack = error.stack;
1
+ import { Logger } from "./standards-sdk.es123.js";
2
+ import { HederaMirrorNode } from "./standards-sdk.es144.js";
3
+ import { HRLResolver } from "./standards-sdk.es127.js";
4
+ import { hash } from "./standards-sdk.es137.js";
5
+ import { hcs26DiscoveryMetadataSchema, hcs26DiscoveryMetadataPatchSchema, hcs26DiscoveryRegisterSchema, hcs26DiscoveryRegisterLegacySchema, hcs26DiscoveryDeleteSchema, hcs26DiscoveryUpdateSchema, hcs26DiscoveryUpdateLegacySchema, hcs26VersionRegisterSchema, hcs26VersionRegisterLegacySchema, hcs26VersionUpdateSchema, hcs26VersionDeleteSchema, hcs26SkillManifestSchema } from "./standards-sdk.es117.js";
6
+ function parseSemver(versionRaw) {
7
+ const trimmed = versionRaw.trim().replace(/^v/i, "");
8
+ const match = trimmed.match(
9
+ /^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?(?:\+[0-9A-Za-z.-]+)?$/
10
+ );
11
+ if (!match) {
12
+ return null;
9
13
  }
10
- for (const [key, value] of Object.entries(error)) {
11
- normalizedData[key] = value;
14
+ const major = Number(match[1]);
15
+ const minor = Number(match[2]);
16
+ const patch = Number(match[3]);
17
+ if (![major, minor, patch].every(Number.isFinite)) {
18
+ return null;
12
19
  }
13
- return normalizedData;
20
+ const prereleaseRaw = match[4];
21
+ const prerelease = prereleaseRaw ? prereleaseRaw.split(".").map((part) => {
22
+ if (/^(0|[1-9]\d*)$/.test(part)) {
23
+ return Number(part);
24
+ }
25
+ return part;
26
+ }) : [];
27
+ return { major, minor, patch, prerelease };
14
28
  }
15
- function serializeLogData(data) {
16
- try {
17
- return JSON.stringify(
18
- data,
19
- (_key, value) => {
20
- if (value instanceof Error) {
21
- return normalizeErrorData(value);
22
- }
23
- if (typeof value === "bigint") {
24
- return value.toString();
25
- }
26
- if (value instanceof Map) {
27
- return Object.fromEntries(value);
28
- }
29
- if (value instanceof Set) {
30
- return Array.from(value);
31
- }
32
- if (value instanceof Uint8Array) {
33
- return Array.from(value);
34
- }
35
- return value;
36
- },
37
- 2
38
- );
39
- } catch {
40
- return String(data);
29
+ function compareSemver(a, b) {
30
+ if (a.major !== b.major) return a.major - b.major;
31
+ if (a.minor !== b.minor) return a.minor - b.minor;
32
+ if (a.patch !== b.patch) return a.patch - b.patch;
33
+ const aHasPre = a.prerelease.length > 0;
34
+ const bHasPre = b.prerelease.length > 0;
35
+ if (!aHasPre && bHasPre) return 1;
36
+ if (aHasPre && !bHasPre) return -1;
37
+ if (!aHasPre && !bHasPre) return 0;
38
+ const len = Math.max(a.prerelease.length, b.prerelease.length);
39
+ for (let index = 0; index < len; index += 1) {
40
+ const aId = a.prerelease[index];
41
+ const bId = b.prerelease[index];
42
+ if (aId === void 0 && bId !== void 0) return -1;
43
+ if (aId !== void 0 && bId === void 0) return 1;
44
+ if (aId === bId) continue;
45
+ if (typeof aId === "number" && typeof bId === "number") {
46
+ return aId - bId;
47
+ }
48
+ if (typeof aId === "number" && typeof bId === "string") {
49
+ return -1;
50
+ }
51
+ if (typeof aId === "string" && typeof bId === "number") {
52
+ return 1;
53
+ }
54
+ if (typeof aId === "string" && typeof bId === "string") {
55
+ return aId < bId ? -1 : 1;
56
+ }
41
57
  }
58
+ return 0;
42
59
  }
43
- function setLoggerFactory(factory) {
44
- loggerFactory = factory;
45
- Logger.clearInstances();
60
+ function isActiveStatus(status) {
61
+ return !status || status === "active";
46
62
  }
47
- const _Logger = class _Logger {
48
- constructor(options = {}) {
49
- if (loggerFactory) {
50
- return loggerFactory(options);
51
- }
52
- const globalDisable = typeof process !== "undefined" && process.env?.DISABLE_LOGS === "true";
53
- this.silent = options.silent || globalDisable;
54
- this.level = this.silent ? "silent" : options.level || "info";
55
- this.moduleContext = options.module || "app";
56
- this.prettyPrint = !this.silent && options.prettyPrint !== false;
63
+ function normalizeUidString(value) {
64
+ if (typeof value !== "string") {
65
+ return null;
57
66
  }
58
- static getInstance(options = {}) {
59
- const moduleKey = options.module || "default";
60
- const globalDisable = typeof process !== "undefined" && process.env?.DISABLE_LOGS === "true";
61
- if (globalDisable && _Logger.instances.has(moduleKey)) {
62
- const existingLogger = _Logger.instances.get(moduleKey);
63
- if (existingLogger.getLevel() !== "silent") {
64
- _Logger.instances.delete(moduleKey);
65
- }
66
- }
67
- if (!_Logger.instances.has(moduleKey)) {
68
- const logger = loggerFactory ? loggerFactory(options) : new _Logger(options);
69
- _Logger.instances.set(moduleKey, logger);
70
- }
71
- return _Logger.instances.get(moduleKey);
67
+ const trimmed = value.trim();
68
+ return trimmed.length > 0 ? trimmed : null;
69
+ }
70
+ function resolveSequenceNumber(primary, fallback) {
71
+ if (typeof primary === "number") {
72
+ return primary;
72
73
  }
73
- setLogLevel(level) {
74
- this.level = level;
74
+ if (typeof fallback === "number") {
75
+ return fallback;
75
76
  }
76
- getLevel() {
77
- return this.level;
77
+ return null;
78
+ }
79
+ function parseSequenceFromUid(uid) {
80
+ if (!/^\d+$/.test(uid)) {
81
+ return null;
78
82
  }
79
- setSilent(silent) {
80
- this.silent = silent;
81
- if (silent) {
82
- this.level = "silent";
83
- }
83
+ const parsed = Number(uid);
84
+ return Number.isSafeInteger(parsed) ? parsed : null;
85
+ }
86
+ function ensureNonEmptyString(value, field) {
87
+ if (typeof value !== "string") {
88
+ throw new Error(`Expected ${field} to be a string`);
84
89
  }
85
- setModule(module) {
86
- this.moduleContext = module;
90
+ const trimmed = value.trim();
91
+ if (!trimmed) {
92
+ throw new Error(`Expected ${field} to be a non-empty string`);
93
+ }
94
+ return trimmed;
95
+ }
96
+ function mergeDiscoveryMetadata(base, update) {
97
+ if (!update) {
98
+ return base;
87
99
  }
88
- formatArgs(args) {
89
- if (args.length === 0) {
90
- return { msg: "" };
100
+ return { ...base, ...update };
101
+ }
102
+ function normalizeDiscoveryRegister(input, messageSequenceNumber) {
103
+ const seq = typeof input.sequence_number === "number" ? input.sequence_number : typeof messageSequenceNumber === "number" ? messageSequenceNumber : void 0;
104
+ if ("t_id" in input) {
105
+ return {
106
+ p: "hcs-26",
107
+ op: "register",
108
+ t_id: ensureNonEmptyString(input.t_id, "t_id"),
109
+ account_id: ensureNonEmptyString(input.account_id, "account_id"),
110
+ metadata: input.metadata,
111
+ ...input.m ? { m: input.m } : {},
112
+ ...typeof seq === "number" ? { sequence_number: seq } : {}
113
+ };
114
+ }
115
+ return {
116
+ p: "hcs-26",
117
+ op: "register",
118
+ t_id: ensureNonEmptyString(input.version_registry, "version_registry"),
119
+ account_id: ensureNonEmptyString(input.publisher, "publisher"),
120
+ metadata: input.metadata,
121
+ ...input.m ? { m: input.m } : {},
122
+ ...typeof seq === "number" ? { sequence_number: seq } : {}
123
+ };
124
+ }
125
+ class Hcs26SkillRegistryResolver {
126
+ constructor(deps) {
127
+ this.network = deps.network;
128
+ this.logger = deps.logger ?? Logger.getInstance({
129
+ module: "HCS26Resolver",
130
+ level: "info"
131
+ });
132
+ this.mirrorNode = new HederaMirrorNode(
133
+ deps.network,
134
+ this.logger,
135
+ deps.mirrorNode
136
+ );
137
+ this.hrlResolver = new HRLResolver("warn");
138
+ }
139
+ async resolveDiscoveryMetadataHrl(metadataHrl, mode) {
140
+ const resolved = await this.hrlResolver.resolve(metadataHrl, {
141
+ network: this.network,
142
+ returnRaw: true
143
+ });
144
+ const bytes = resolved.content instanceof ArrayBuffer ? Buffer.from(resolved.content) : Buffer.from(String(resolved.content), "utf8");
145
+ let raw;
146
+ try {
147
+ raw = JSON.parse(bytes.toString("utf8"));
148
+ } catch {
149
+ throw new Error("Discovery metadata HRL content is not valid JSON");
91
150
  }
92
- if (args.length === 1) {
93
- if (typeof args[0] === "string") {
94
- return { msg: args[0] };
95
- }
96
- return { msg: "", data: args[0] };
151
+ const schema = mode === "full" ? hcs26DiscoveryMetadataSchema : hcs26DiscoveryMetadataPatchSchema;
152
+ const parsed = schema.safeParse(raw);
153
+ if (!parsed.success) {
154
+ throw new Error(`Invalid discovery metadata: ${parsed.error.message}`);
97
155
  }
98
- const stringArgs = [];
99
- const objectArgs = [];
100
- args.forEach((arg) => {
101
- if (typeof arg === "string" || typeof arg === "number" || typeof arg === "boolean") {
102
- stringArgs.push(String(arg));
103
- } else {
104
- objectArgs.push(arg);
156
+ return this.normalizeDiscoveryMetadataObject(
157
+ parsed.data
158
+ );
159
+ }
160
+ normalizeDiscoveryMetadataObject(metadata) {
161
+ if (typeof metadata.icon !== "string" || metadata.icon.trim().length === 0) {
162
+ const iconLegacy = metadata.icon_hcs1;
163
+ if (typeof iconLegacy === "string" && iconLegacy.trim().length > 0) {
164
+ return { ...metadata, icon: iconLegacy };
105
165
  }
106
- });
107
- const msg = stringArgs.join(" ");
108
- return objectArgs.length > 0 ? { msg, data: objectArgs } : { msg };
166
+ }
167
+ return metadata;
109
168
  }
110
- shouldLog(level) {
111
- if (this.silent || this.level === "silent") {
112
- return false;
169
+ async resolveDiscoveryMetadataUri(metadataUri, mode) {
170
+ const trimmed = metadataUri.trim();
171
+ if (trimmed.startsWith("hcs://1/")) {
172
+ return this.resolveDiscoveryMetadataHrl(trimmed, mode);
113
173
  }
114
- const levels = ["trace", "debug", "info", "warn", "error", "silent"];
115
- const currentLevelIndex = levels.indexOf(this.level);
116
- const targetLevelIndex = levels.indexOf(level);
117
- return targetLevelIndex >= currentLevelIndex;
174
+ throw new Error(`Unsupported discovery metadata URI: ${trimmed}`);
118
175
  }
119
- getConsoleMethod(level) {
120
- if (level === "error") {
121
- return console.error;
176
+ resolveDiscoveryMetadataObject(params) {
177
+ if (typeof params.metadata === "string") {
178
+ return this.resolveDiscoveryMetadataUri(params.metadata, params.mode);
122
179
  }
123
- if (level === "warn") {
124
- return console.warn;
180
+ const schema = params.mode === "full" ? hcs26DiscoveryMetadataSchema : hcs26DiscoveryMetadataPatchSchema;
181
+ const parsed = schema.safeParse(params.metadata);
182
+ if (!parsed.success) {
183
+ throw new Error(`Invalid discovery metadata: ${parsed.error.message}`);
125
184
  }
126
- if (level === "debug") {
127
- return console.debug;
185
+ return Promise.resolve(
186
+ this.normalizeDiscoveryMetadataObject(
187
+ parsed.data
188
+ )
189
+ );
190
+ }
191
+ async getDiscoveryRegister(params) {
192
+ const messages = await this.mirrorNode.getTopicMessages(
193
+ params.directoryTopicId,
194
+ {
195
+ sequenceNumber: `eq:${params.skillUid}`,
196
+ limit: 5,
197
+ order: "asc"
198
+ }
199
+ );
200
+ for (const message of messages) {
201
+ const parsedNew = hcs26DiscoveryRegisterSchema.safeParse(message);
202
+ const parsedLegacy = parsedNew.success ? null : hcs26DiscoveryRegisterLegacySchema.safeParse(message);
203
+ const parsed = parsedNew.success ? parsedNew : parsedLegacy && parsedLegacy.success ? parsedLegacy : null;
204
+ if (!parsed) {
205
+ continue;
206
+ }
207
+ const normalized = normalizeDiscoveryRegister(
208
+ parsed.data,
209
+ message.sequence_number
210
+ );
211
+ const seq = normalized.sequence_number;
212
+ if (typeof seq === "number" && seq === params.skillUid) {
213
+ const metadata = await this.resolveDiscoveryMetadataObject({
214
+ metadata: normalized.metadata,
215
+ mode: "full"
216
+ });
217
+ return { ...normalized, metadata };
218
+ }
128
219
  }
129
- return console.log;
220
+ return null;
130
221
  }
131
- writeLog(level, ...args) {
132
- if (!this.shouldLog(level)) {
133
- return;
222
+ async resolveDiscoveryRecord(params) {
223
+ const register = await this.getDiscoveryRegister({
224
+ directoryTopicId: params.directoryTopicId,
225
+ skillUid: params.skillUid
226
+ });
227
+ if (!register) {
228
+ return null;
134
229
  }
135
- const { msg, data } = this.formatArgs(args);
136
- const timestamp = (/* @__PURE__ */ new Date()).toISOString();
137
- const consoleMethod = this.getConsoleMethod(level);
138
- if (this.prettyPrint) {
139
- const levelFormatted = level.toUpperCase().padEnd(5);
140
- let output = `${timestamp} ${levelFormatted} [${this.moduleContext}] ${msg}`;
141
- if (data) {
142
- output += "\n" + serializeLogData(data);
143
- }
144
- consoleMethod(output);
145
- } else {
146
- const logObj = {
147
- timestamp,
148
- level,
149
- module: this.moduleContext,
150
- message: msg,
151
- ...data && { data }
230
+ const scanLimit = typeof params.scanLimit === "number" && params.scanLimit > 0 ? Math.min(5e3, Math.floor(params.scanLimit)) : 1e3;
231
+ const messages = await this.mirrorNode.getTopicMessages(
232
+ params.directoryTopicId,
233
+ {
234
+ limit: scanLimit,
235
+ order: "asc"
236
+ }
237
+ );
238
+ const uid = String(params.skillUid);
239
+ const registerSequence = resolveSequenceNumber(
240
+ register.sequence_number,
241
+ params.skillUid
242
+ );
243
+ let current = register;
244
+ for (const message of messages) {
245
+ const messageSequence = resolveSequenceNumber(
246
+ void 0,
247
+ message.sequence_number
248
+ );
249
+ const deleteParsed = hcs26DiscoveryDeleteSchema.safeParse(message);
250
+ if (deleteParsed.success && deleteParsed.data.uid === uid) {
251
+ const deleteSequence = resolveSequenceNumber(
252
+ deleteParsed.data.sequence_number,
253
+ messageSequence
254
+ );
255
+ if (registerSequence !== null && deleteSequence !== null && deleteSequence <= registerSequence) {
256
+ continue;
257
+ }
258
+ return null;
259
+ }
260
+ const updateParsedNew = hcs26DiscoveryUpdateSchema.safeParse(message);
261
+ const updateParsedLegacy = updateParsedNew.success ? null : hcs26DiscoveryUpdateLegacySchema.safeParse(message);
262
+ const updateParsed = updateParsedNew.success ? updateParsedNew : updateParsedLegacy && updateParsedLegacy.success ? updateParsedLegacy : null;
263
+ if (!updateParsed || updateParsed.data.uid !== uid) {
264
+ continue;
265
+ }
266
+ const updateSequence = resolveSequenceNumber(
267
+ updateParsed.data.sequence_number,
268
+ messageSequence
269
+ );
270
+ if (registerSequence !== null && updateSequence !== null && updateSequence <= registerSequence) {
271
+ continue;
272
+ }
273
+ const nextAccountId = "account_id" in updateParsed.data ? normalizeUidString(updateParsed.data.account_id) : normalizeUidString(updateParsed.data.publisher);
274
+ const nextMetadataRaw = updateParsed.data.metadata;
275
+ const nextMetadata = nextMetadataRaw !== void 0 ? await this.resolveDiscoveryMetadataObject({
276
+ metadata: nextMetadataRaw,
277
+ mode: "patch"
278
+ }) : void 0;
279
+ current = {
280
+ ...current,
281
+ ...nextAccountId ? { account_id: nextAccountId } : {},
282
+ metadata: mergeDiscoveryMetadata(current.metadata, nextMetadata)
152
283
  };
153
- consoleMethod(JSON.stringify(logObj));
154
284
  }
285
+ return current;
155
286
  }
156
- debug(...args) {
157
- this.writeLog("debug", ...args);
158
- }
159
- info(...args) {
160
- this.writeLog("info", ...args);
161
- }
162
- warn(...args) {
163
- this.writeLog("warn", ...args);
287
+ async listVersionRegisters(params) {
288
+ const limit = typeof params.limit === "number" && params.limit > 0 ? Math.min(1e3, params.limit) : 500;
289
+ const messages = await this.mirrorNode.getTopicMessages(
290
+ params.versionRegistryTopicId,
291
+ {
292
+ limit,
293
+ order: "desc"
294
+ }
295
+ );
296
+ const registersByUid = /* @__PURE__ */ new Map();
297
+ const updatesByUid = /* @__PURE__ */ new Map();
298
+ const deletedByUid = /* @__PURE__ */ new Map();
299
+ for (const message of messages) {
300
+ const parsedNew = hcs26VersionRegisterSchema.safeParse(message);
301
+ const parsedLegacy = parsedNew.success ? null : hcs26VersionRegisterLegacySchema.safeParse(message);
302
+ const registerParsed = parsedNew.success ? parsedNew : parsedLegacy && parsedLegacy.success ? parsedLegacy : null;
303
+ if (registerParsed) {
304
+ if (registerParsed.data.skill_uid !== params.skillUid) {
305
+ continue;
306
+ }
307
+ const uid = typeof registerParsed.data.sequence_number === "number" ? String(registerParsed.data.sequence_number) : typeof message.sequence_number === "number" ? String(message.sequence_number) : null;
308
+ if (uid) {
309
+ const registerSequence = resolveSequenceNumber(
310
+ registerParsed.data.sequence_number,
311
+ message.sequence_number
312
+ );
313
+ registersByUid.set(uid, {
314
+ register: registerParsed.data,
315
+ sequenceNumber: registerSequence
316
+ });
317
+ }
318
+ continue;
319
+ }
320
+ const updateParsed = hcs26VersionUpdateSchema.safeParse(message);
321
+ if (updateParsed.success) {
322
+ const uid = updateParsed.data.uid.trim();
323
+ const list = updatesByUid.get(uid) ?? [];
324
+ list.push({
325
+ update: updateParsed.data,
326
+ sequenceNumber: resolveSequenceNumber(
327
+ updateParsed.data.sequence_number,
328
+ message.sequence_number
329
+ )
330
+ });
331
+ updatesByUid.set(uid, list);
332
+ continue;
333
+ }
334
+ const deleteParsed = hcs26VersionDeleteSchema.safeParse(message);
335
+ if (deleteParsed.success) {
336
+ const uid = deleteParsed.data.uid.trim();
337
+ const list = deletedByUid.get(uid) ?? [];
338
+ const sequenceNumber = resolveSequenceNumber(
339
+ deleteParsed.data.sequence_number,
340
+ message.sequence_number
341
+ );
342
+ if (sequenceNumber !== null) {
343
+ list.push(sequenceNumber);
344
+ deletedByUid.set(uid, list);
345
+ }
346
+ }
347
+ }
348
+ const entries = [];
349
+ for (const [uid, registerState] of registersByUid.entries()) {
350
+ const registerSequence = registerState.sequenceNumber ?? parseSequenceFromUid(uid);
351
+ const deleteSequences = deletedByUid.get(uid) ?? [];
352
+ const hasDeleteAfterRegister = deleteSequences.some(
353
+ (sequence) => registerSequence === null ? true : sequence > registerSequence
354
+ );
355
+ if (hasDeleteAfterRegister) {
356
+ continue;
357
+ }
358
+ const updates = updatesByUid.get(uid);
359
+ if (!updates || updates.length === 0) {
360
+ entries.push(registerState.register);
361
+ continue;
362
+ }
363
+ const sorted = [...updates].filter(
364
+ (update) => registerSequence === null ? true : update.sequenceNumber !== null && update.sequenceNumber > registerSequence
365
+ ).sort((a, b) => {
366
+ const aSeq = a.sequenceNumber ?? 0;
367
+ const bSeq = b.sequenceNumber ?? 0;
368
+ return aSeq - bSeq;
369
+ });
370
+ if (sorted.length === 0) {
371
+ entries.push(registerState.register);
372
+ continue;
373
+ }
374
+ const final = sorted.reduce((acc, updateState) => {
375
+ if (updateState.update.status) {
376
+ return { ...acc, status: updateState.update.status };
377
+ }
378
+ return acc;
379
+ }, registerState.register);
380
+ entries.push(final);
381
+ }
382
+ return entries;
164
383
  }
165
- error(...args) {
166
- this.writeLog("error", ...args);
384
+ async getLatestVersionRegister(params) {
385
+ const entries = await this.listVersionRegisters({
386
+ versionRegistryTopicId: params.versionRegistryTopicId,
387
+ skillUid: params.skillUid,
388
+ limit: 100
389
+ });
390
+ const active = entries.filter((entry) => isActiveStatus(entry.status));
391
+ if (active.length === 0) {
392
+ return null;
393
+ }
394
+ let best = active[0];
395
+ let bestParsed = parseSemver(best.version);
396
+ for (let index = 1; index < active.length; index += 1) {
397
+ const candidate = active[index];
398
+ const candidateParsed = parseSemver(candidate.version);
399
+ if (!bestParsed && candidateParsed) {
400
+ best = candidate;
401
+ bestParsed = candidateParsed;
402
+ continue;
403
+ }
404
+ if (bestParsed && candidateParsed) {
405
+ const cmp = compareSemver(candidateParsed, bestParsed);
406
+ if (cmp > 0) {
407
+ best = candidate;
408
+ bestParsed = candidateParsed;
409
+ continue;
410
+ }
411
+ if (cmp === 0) {
412
+ const bestSeq = typeof best.sequence_number === "number" ? best.sequence_number : 0;
413
+ const candSeq = typeof candidate.sequence_number === "number" ? candidate.sequence_number : 0;
414
+ if (candSeq > bestSeq) {
415
+ best = candidate;
416
+ bestParsed = candidateParsed;
417
+ }
418
+ }
419
+ }
420
+ }
421
+ return best;
167
422
  }
168
- trace(...args) {
169
- this.writeLog("trace", ...args);
423
+ async resolveManifest(params) {
424
+ const manifestHrl = typeof params.manifestHrl === "string" && params.manifestHrl.trim().length > 0 ? params.manifestHrl.trim() : typeof params.manifestTopicId === "string" && params.manifestTopicId.trim().length > 0 ? `hcs://1/${params.manifestTopicId.trim()}` : null;
425
+ if (!manifestHrl) {
426
+ throw new Error("Manifest HRL or topic id is required");
427
+ }
428
+ const resolved = await this.hrlResolver.resolve(manifestHrl, {
429
+ network: this.network,
430
+ returnRaw: true
431
+ });
432
+ const contentType = resolved.contentType ?? "";
433
+ if (!contentType.toLowerCase().startsWith("application/json")) {
434
+ throw new Error(
435
+ `Expected application/json for manifest, got ${resolved.contentType ?? "unknown"}`
436
+ );
437
+ }
438
+ const bytes = resolved.content instanceof ArrayBuffer ? Buffer.from(resolved.content) : Buffer.from(String(resolved.content), "utf8");
439
+ const sha256Hex = await hash(bytes, "sha256");
440
+ let raw;
441
+ try {
442
+ raw = JSON.parse(bytes.toString("utf8"));
443
+ } catch {
444
+ throw new Error("Manifest content is not valid JSON");
445
+ }
446
+ const parsed = hcs26SkillManifestSchema.safeParse(raw);
447
+ if (!parsed.success) {
448
+ throw new Error(`Invalid HCS-26 manifest: ${parsed.error.message}`);
449
+ }
450
+ const hasSkillMd = parsed.data.files.some((file) => file.path === "SKILL.md");
451
+ if (!hasSkillMd) {
452
+ throw new Error(
453
+ 'HCS-26 manifest must include SKILL.md at path "SKILL.md"'
454
+ );
455
+ }
456
+ return { manifest: parsed.data, raw, sha256Hex };
170
457
  }
171
- /**
172
- * Clear all logger instances
173
- * Used when switching logger implementations
174
- */
175
- static clearInstances() {
176
- _Logger.instances.clear();
458
+ async verifyVersionRegisterMatchesManifest(params) {
459
+ const checksumRaw = params.versionRegister.checksum;
460
+ if (!checksumRaw) {
461
+ this.logger.warn(
462
+ "HCS-26 version register is missing checksum; skipping manifest verification."
463
+ );
464
+ return;
465
+ }
466
+ const checksum = checksumRaw.trim();
467
+ if (!checksum.startsWith("sha256:")) {
468
+ throw new Error(`Unsupported checksum: ${checksum}`);
469
+ }
470
+ const expectedHex = checksum.slice("sha256:".length);
471
+ if (params.manifestSha256Hex !== expectedHex) {
472
+ throw new Error(
473
+ `Manifest checksum mismatch (expected ${expectedHex}, got ${params.manifestSha256Hex})`
474
+ );
475
+ }
177
476
  }
178
- };
179
- _Logger.instances = /* @__PURE__ */ new Map();
180
- let Logger = _Logger;
477
+ }
181
478
  export {
182
- Logger,
183
- setLoggerFactory
479
+ Hcs26SkillRegistryResolver
184
480
  };
185
481
  //# sourceMappingURL=standards-sdk.es118.js.map