@hashgraphonline/standards-sdk 0.1.141 → 0.1.143

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 (273) hide show
  1. package/README.md +24 -1
  2. package/dist/cjs/hcs-11/client.d.ts.map +1 -1
  3. package/dist/cjs/hcs-11/types.d.ts +1 -0
  4. package/dist/cjs/hcs-11/types.d.ts.map +1 -1
  5. package/dist/cjs/hcs-16/base-client.d.ts.map +1 -1
  6. package/dist/cjs/hcs-17/types.d.ts.map +1 -1
  7. package/dist/cjs/hcs-20/sdk.d.ts.map +1 -1
  8. package/dist/cjs/hcs-20/types.d.ts +9 -8
  9. package/dist/cjs/hcs-20/types.d.ts.map +1 -1
  10. package/dist/cjs/hcs-21/base-client.d.ts +14 -12
  11. package/dist/cjs/hcs-21/base-client.d.ts.map +1 -1
  12. package/dist/cjs/hcs-21/browser.d.ts +17 -7
  13. package/dist/cjs/hcs-21/browser.d.ts.map +1 -1
  14. package/dist/cjs/hcs-21/index.d.ts +1 -0
  15. package/dist/cjs/hcs-21/index.d.ts.map +1 -1
  16. package/dist/cjs/hcs-21/sdk.d.ts +70 -6
  17. package/dist/cjs/hcs-21/sdk.d.ts.map +1 -1
  18. package/dist/cjs/hcs-21/tx.d.ts +6 -2
  19. package/dist/cjs/hcs-21/tx.d.ts.map +1 -1
  20. package/dist/cjs/hcs-21/types.d.ts +751 -66
  21. package/dist/cjs/hcs-21/types.d.ts.map +1 -1
  22. package/dist/cjs/hcs-21/verify.d.ts +6 -0
  23. package/dist/cjs/hcs-21/verify.d.ts.map +1 -0
  24. package/dist/cjs/inscribe/inscriber.d.ts +3 -1
  25. package/dist/cjs/inscribe/inscriber.d.ts.map +1 -1
  26. package/dist/cjs/inscribe/quote-cache.d.ts.map +1 -1
  27. package/dist/cjs/inscribe/types.d.ts +7 -0
  28. package/dist/cjs/inscribe/types.d.ts.map +1 -1
  29. package/dist/cjs/services/registry-broker/client.d.ts +4 -3
  30. package/dist/cjs/services/registry-broker/client.d.ts.map +1 -1
  31. package/dist/cjs/services/registry-broker/private-key-signer.d.ts.map +1 -1
  32. package/dist/cjs/services/registry-broker/schemas.d.ts +49 -25
  33. package/dist/cjs/services/registry-broker/schemas.d.ts.map +1 -1
  34. package/dist/cjs/services/registry-broker/types.d.ts +1 -2
  35. package/dist/cjs/services/registry-broker/types.d.ts.map +1 -1
  36. package/dist/cjs/services/types.d.ts +1 -0
  37. package/dist/cjs/services/types.d.ts.map +1 -1
  38. package/dist/cjs/standards-sdk.cjs +2 -2
  39. package/dist/cjs/standards-sdk.cjs.map +1 -1
  40. package/dist/cjs/utils/dynamic-import.d.ts +1 -0
  41. package/dist/cjs/utils/dynamic-import.d.ts.map +1 -1
  42. package/dist/es/hcs-11/client.d.ts.map +1 -1
  43. package/dist/es/hcs-11/types.d.ts +1 -0
  44. package/dist/es/hcs-11/types.d.ts.map +1 -1
  45. package/dist/es/hcs-16/base-client.d.ts.map +1 -1
  46. package/dist/es/hcs-17/types.d.ts.map +1 -1
  47. package/dist/es/hcs-20/sdk.d.ts.map +1 -1
  48. package/dist/es/hcs-20/types.d.ts +9 -8
  49. package/dist/es/hcs-20/types.d.ts.map +1 -1
  50. package/dist/es/hcs-21/base-client.d.ts +14 -12
  51. package/dist/es/hcs-21/base-client.d.ts.map +1 -1
  52. package/dist/es/hcs-21/browser.d.ts +17 -7
  53. package/dist/es/hcs-21/browser.d.ts.map +1 -1
  54. package/dist/es/hcs-21/index.d.ts +1 -0
  55. package/dist/es/hcs-21/index.d.ts.map +1 -1
  56. package/dist/es/hcs-21/sdk.d.ts +70 -6
  57. package/dist/es/hcs-21/sdk.d.ts.map +1 -1
  58. package/dist/es/hcs-21/tx.d.ts +6 -2
  59. package/dist/es/hcs-21/tx.d.ts.map +1 -1
  60. package/dist/es/hcs-21/types.d.ts +751 -66
  61. package/dist/es/hcs-21/types.d.ts.map +1 -1
  62. package/dist/es/hcs-21/verify.d.ts +6 -0
  63. package/dist/es/hcs-21/verify.d.ts.map +1 -0
  64. package/dist/es/inscribe/inscriber.d.ts +3 -1
  65. package/dist/es/inscribe/inscriber.d.ts.map +1 -1
  66. package/dist/es/inscribe/quote-cache.d.ts.map +1 -1
  67. package/dist/es/inscribe/types.d.ts +7 -0
  68. package/dist/es/inscribe/types.d.ts.map +1 -1
  69. package/dist/es/services/registry-broker/client.d.ts +4 -3
  70. package/dist/es/services/registry-broker/client.d.ts.map +1 -1
  71. package/dist/es/services/registry-broker/private-key-signer.d.ts.map +1 -1
  72. package/dist/es/services/registry-broker/schemas.d.ts +49 -25
  73. package/dist/es/services/registry-broker/schemas.d.ts.map +1 -1
  74. package/dist/es/services/registry-broker/types.d.ts +1 -2
  75. package/dist/es/services/registry-broker/types.d.ts.map +1 -1
  76. package/dist/es/services/types.d.ts +1 -0
  77. package/dist/es/services/types.d.ts.map +1 -1
  78. package/dist/es/standards-sdk.es.js +64 -51
  79. package/dist/es/standards-sdk.es.js.map +1 -1
  80. package/dist/es/standards-sdk.es10.js +2 -2
  81. package/dist/es/standards-sdk.es100.js +26 -229
  82. package/dist/es/standards-sdk.es100.js.map +1 -1
  83. package/dist/es/standards-sdk.es101.js +228 -109
  84. package/dist/es/standards-sdk.es101.js.map +1 -1
  85. package/dist/es/standards-sdk.es102.js +94 -15
  86. package/dist/es/standards-sdk.es102.js.map +1 -1
  87. package/dist/es/standards-sdk.es103.js +30 -80
  88. package/dist/es/standards-sdk.es103.js.map +1 -1
  89. package/dist/es/standards-sdk.es104.js +80 -27
  90. package/dist/es/standards-sdk.es104.js.map +1 -1
  91. package/dist/es/standards-sdk.es105.js +25 -136
  92. package/dist/es/standards-sdk.es105.js.map +1 -1
  93. package/dist/es/standards-sdk.es106.js +140 -27
  94. package/dist/es/standards-sdk.es106.js.map +1 -1
  95. package/dist/es/standards-sdk.es107.js +27 -20
  96. package/dist/es/standards-sdk.es107.js.map +1 -1
  97. package/dist/es/standards-sdk.es108.js +18 -156
  98. package/dist/es/standards-sdk.es108.js.map +1 -1
  99. package/dist/es/standards-sdk.es109.js +148 -196
  100. package/dist/es/standards-sdk.es109.js.map +1 -1
  101. package/dist/es/standards-sdk.es110.js +160 -747
  102. package/dist/es/standards-sdk.es110.js.map +1 -1
  103. package/dist/es/standards-sdk.es111.js +786 -9
  104. package/dist/es/standards-sdk.es111.js.map +1 -1
  105. package/dist/es/standards-sdk.es112.js +13 -567
  106. package/dist/es/standards-sdk.es112.js.map +1 -1
  107. package/dist/es/standards-sdk.es113.js +541 -576
  108. package/dist/es/standards-sdk.es113.js.map +1 -1
  109. package/dist/es/standards-sdk.es114.js +601 -12
  110. package/dist/es/standards-sdk.es114.js.map +1 -1
  111. package/dist/es/standards-sdk.es115.js +13 -2
  112. package/dist/es/standards-sdk.es115.js.map +1 -1
  113. package/dist/es/standards-sdk.es116.js +2 -83
  114. package/dist/es/standards-sdk.es116.js.map +1 -1
  115. package/dist/es/standards-sdk.es117.js +80 -36
  116. package/dist/es/standards-sdk.es117.js.map +1 -1
  117. package/dist/es/standards-sdk.es118.js +39 -2
  118. package/dist/es/standards-sdk.es118.js.map +1 -1
  119. package/dist/es/standards-sdk.es119.js +2 -223
  120. package/dist/es/standards-sdk.es119.js.map +1 -1
  121. package/dist/es/standards-sdk.es12.js +1 -1
  122. package/dist/es/standards-sdk.es120.js +193 -1110
  123. package/dist/es/standards-sdk.es120.js.map +1 -1
  124. package/dist/es/standards-sdk.es121.js +1059 -225
  125. package/dist/es/standards-sdk.es121.js.map +1 -1
  126. package/dist/es/standards-sdk.es122.js +303 -419
  127. package/dist/es/standards-sdk.es122.js.map +1 -1
  128. package/dist/es/standards-sdk.es123.js +418 -351
  129. package/dist/es/standards-sdk.es123.js.map +1 -1
  130. package/dist/es/standards-sdk.es124.js +348 -754
  131. package/dist/es/standards-sdk.es124.js.map +1 -1
  132. package/dist/es/standards-sdk.es125.js +854 -178
  133. package/dist/es/standards-sdk.es125.js.map +1 -1
  134. package/dist/es/standards-sdk.es126.js +153 -1512
  135. package/dist/es/standards-sdk.es126.js.map +1 -1
  136. package/dist/es/standards-sdk.es127.js +1373 -1977
  137. package/dist/es/standards-sdk.es127.js.map +1 -1
  138. package/dist/es/standards-sdk.es128.js +2211 -50
  139. package/dist/es/standards-sdk.es128.js.map +1 -1
  140. package/dist/es/standards-sdk.es129.js +59 -79
  141. package/dist/es/standards-sdk.es129.js.map +1 -1
  142. package/dist/es/standards-sdk.es13.js +1 -1
  143. package/dist/es/standards-sdk.es130.js +80 -152
  144. package/dist/es/standards-sdk.es130.js.map +1 -1
  145. package/dist/es/standards-sdk.es131.js +159 -7
  146. package/dist/es/standards-sdk.es131.js.map +1 -1
  147. package/dist/es/standards-sdk.es132.js +7 -86
  148. package/dist/es/standards-sdk.es132.js.map +1 -1
  149. package/dist/es/standards-sdk.es133.js +65 -44
  150. package/dist/es/standards-sdk.es133.js.map +1 -1
  151. package/dist/es/standards-sdk.es134.js +65 -28
  152. package/dist/es/standards-sdk.es134.js.map +1 -1
  153. package/dist/es/standards-sdk.es135.js +28 -138
  154. package/dist/es/standards-sdk.es135.js.map +1 -1
  155. package/dist/es/standards-sdk.es136.js +133 -37
  156. package/dist/es/standards-sdk.es136.js.map +1 -1
  157. package/dist/es/standards-sdk.es137.js +42 -732
  158. package/dist/es/standards-sdk.es137.js.map +1 -1
  159. package/dist/es/standards-sdk.es138.js +746 -12254
  160. package/dist/es/standards-sdk.es138.js.map +1 -1
  161. package/dist/es/standards-sdk.es139.js +12269 -12
  162. package/dist/es/standards-sdk.es139.js.map +1 -1
  163. package/dist/es/standards-sdk.es14.js +1 -1
  164. package/dist/es/standards-sdk.es141.js +20 -2
  165. package/dist/es/standards-sdk.es141.js.map +1 -1
  166. package/dist/es/standards-sdk.es142.js +13 -168
  167. package/dist/es/standards-sdk.es142.js.map +1 -1
  168. package/dist/es/standards-sdk.es143.js +139 -289
  169. package/dist/es/standards-sdk.es143.js.map +1 -1
  170. package/dist/es/standards-sdk.es144.js +274 -298
  171. package/dist/es/standards-sdk.es144.js.map +1 -1
  172. package/dist/es/standards-sdk.es145.js +262 -369
  173. package/dist/es/standards-sdk.es145.js.map +1 -1
  174. package/dist/es/standards-sdk.es146.js +316 -194
  175. package/dist/es/standards-sdk.es146.js.map +1 -1
  176. package/dist/es/standards-sdk.es147.js +319 -64
  177. package/dist/es/standards-sdk.es147.js.map +1 -1
  178. package/dist/es/standards-sdk.es148.js +79 -0
  179. package/dist/es/standards-sdk.es148.js.map +1 -0
  180. package/dist/es/standards-sdk.es15.js +1 -1
  181. package/dist/es/standards-sdk.es16.js +1 -1
  182. package/dist/es/standards-sdk.es17.js +5 -10
  183. package/dist/es/standards-sdk.es17.js.map +1 -1
  184. package/dist/es/standards-sdk.es19.js +12 -16
  185. package/dist/es/standards-sdk.es19.js.map +1 -1
  186. package/dist/es/standards-sdk.es20.js +9 -13
  187. package/dist/es/standards-sdk.es20.js.map +1 -1
  188. package/dist/es/standards-sdk.es21.js +1 -1
  189. package/dist/es/standards-sdk.es22.js +1 -1
  190. package/dist/es/standards-sdk.es23.js +1 -1
  191. package/dist/es/standards-sdk.es24.js +1 -1
  192. package/dist/es/standards-sdk.es25.js +1 -1
  193. package/dist/es/standards-sdk.es26.js +1 -1
  194. package/dist/es/standards-sdk.es27.js +1 -1
  195. package/dist/es/standards-sdk.es28.js +16 -18
  196. package/dist/es/standards-sdk.es28.js.map +1 -1
  197. package/dist/es/standards-sdk.es29.js.map +1 -1
  198. package/dist/es/standards-sdk.es3.js +2 -2
  199. package/dist/es/standards-sdk.es31.js +2 -2
  200. package/dist/es/standards-sdk.es32.js +4 -4
  201. package/dist/es/standards-sdk.es33.js +1 -1
  202. package/dist/es/standards-sdk.es36.js +8 -12
  203. package/dist/es/standards-sdk.es36.js.map +1 -1
  204. package/dist/es/standards-sdk.es37.js +4 -4
  205. package/dist/es/standards-sdk.es38.js +2 -2
  206. package/dist/es/standards-sdk.es39.js +2 -2
  207. package/dist/es/standards-sdk.es40.js +1 -1
  208. package/dist/es/standards-sdk.es41.js +1 -1
  209. package/dist/es/standards-sdk.es42.js +2 -2
  210. package/dist/es/standards-sdk.es47.js +1 -1
  211. package/dist/es/standards-sdk.es5.js +2 -2
  212. package/dist/es/standards-sdk.es52.js +1 -1
  213. package/dist/es/standards-sdk.es54.js +1 -1
  214. package/dist/es/standards-sdk.es57.js +1 -1
  215. package/dist/es/standards-sdk.es6.js +2 -2
  216. package/dist/es/standards-sdk.es61.js +7 -11
  217. package/dist/es/standards-sdk.es61.js.map +1 -1
  218. package/dist/es/standards-sdk.es65.js +2 -2
  219. package/dist/es/standards-sdk.es66.js +3 -3
  220. package/dist/es/standards-sdk.es69.js +2 -2
  221. package/dist/es/standards-sdk.es7.js +2 -2
  222. package/dist/es/standards-sdk.es70.js +3 -3
  223. package/dist/es/standards-sdk.es71.js +2 -2
  224. package/dist/es/standards-sdk.es72.js +1 -1
  225. package/dist/es/standards-sdk.es73.js.map +1 -1
  226. package/dist/es/standards-sdk.es75.js +2 -2
  227. package/dist/es/standards-sdk.es77.js +5 -3
  228. package/dist/es/standards-sdk.es77.js.map +1 -1
  229. package/dist/es/standards-sdk.es78.js +4 -10
  230. package/dist/es/standards-sdk.es78.js.map +1 -1
  231. package/dist/es/standards-sdk.es79.js +1 -1
  232. package/dist/es/standards-sdk.es8.js +1 -1
  233. package/dist/es/standards-sdk.es80.js +113 -29
  234. package/dist/es/standards-sdk.es80.js.map +1 -1
  235. package/dist/es/standards-sdk.es82.js +23 -4
  236. package/dist/es/standards-sdk.es82.js.map +1 -1
  237. package/dist/es/standards-sdk.es83.js +39 -14
  238. package/dist/es/standards-sdk.es83.js.map +1 -1
  239. package/dist/es/standards-sdk.es84.js +198 -17
  240. package/dist/es/standards-sdk.es84.js.map +1 -1
  241. package/dist/es/standards-sdk.es85.js +256 -9
  242. package/dist/es/standards-sdk.es85.js.map +1 -1
  243. package/dist/es/standards-sdk.es86.js +55 -21
  244. package/dist/es/standards-sdk.es86.js.map +1 -1
  245. package/dist/es/standards-sdk.es87.js +22 -75
  246. package/dist/es/standards-sdk.es87.js.map +1 -1
  247. package/dist/es/standards-sdk.es88.js +45 -30
  248. package/dist/es/standards-sdk.es88.js.map +1 -1
  249. package/dist/es/standards-sdk.es89.js +57 -22
  250. package/dist/es/standards-sdk.es89.js.map +1 -1
  251. package/dist/es/standards-sdk.es90.js +28 -23
  252. package/dist/es/standards-sdk.es90.js.map +1 -1
  253. package/dist/es/standards-sdk.es91.js +23 -167
  254. package/dist/es/standards-sdk.es91.js.map +1 -1
  255. package/dist/es/standards-sdk.es92.js +158 -119
  256. package/dist/es/standards-sdk.es92.js.map +1 -1
  257. package/dist/es/standards-sdk.es93.js +68 -95
  258. package/dist/es/standards-sdk.es93.js.map +1 -1
  259. package/dist/es/standards-sdk.es94.js +136 -119
  260. package/dist/es/standards-sdk.es94.js.map +1 -1
  261. package/dist/es/standards-sdk.es95.js +139 -39
  262. package/dist/es/standards-sdk.es95.js.map +1 -1
  263. package/dist/es/standards-sdk.es96.js +42 -257
  264. package/dist/es/standards-sdk.es96.js.map +1 -1
  265. package/dist/es/standards-sdk.es97.js +243 -80
  266. package/dist/es/standards-sdk.es97.js.map +1 -1
  267. package/dist/es/standards-sdk.es98.js +47 -48
  268. package/dist/es/standards-sdk.es98.js.map +1 -1
  269. package/dist/es/standards-sdk.es99.js +100 -28
  270. package/dist/es/standards-sdk.es99.js.map +1 -1
  271. package/dist/es/utils/dynamic-import.d.ts +1 -0
  272. package/dist/es/utils/dynamic-import.d.ts.map +1 -1
  273. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es136.js","sources":["../../src/common/tx/tx-utils.ts"],"sourcesContent":["import {\n TopicCreateTransaction,\n TopicMessageSubmitTransaction,\n PublicKey,\n KeyList,\n TopicId,\n} from '@hashgraph/sdk';\n\nexport type MaybeKey = boolean | string | PublicKey | KeyList | undefined;\n\nexport function encodeHcs2RegistryMemo(\n indexedFlag: 0 | 1,\n ttl: number,\n): string {\n return `hcs-2:${indexedFlag}:${ttl}`;\n}\n\nexport function buildTopicCreateTx(params: {\n memo: string;\n adminKey?: MaybeKey;\n submitKey?: MaybeKey;\n operatorPublicKey?: PublicKey;\n}): TopicCreateTransaction {\n const { memo, adminKey, submitKey, operatorPublicKey } = params;\n const tx = new TopicCreateTransaction().setTopicMemo(memo);\n\n const coerceKey = (k?: MaybeKey): PublicKey | KeyList | undefined => {\n if (!k) return undefined;\n if (k instanceof PublicKey || k instanceof KeyList) return k;\n if (typeof k === 'boolean') {\n return k ? operatorPublicKey : undefined;\n }\n if (typeof k === 'string') {\n try {\n return PublicKey.fromString(k);\n } catch {\n return undefined;\n }\n }\n return undefined;\n };\n\n const admin = coerceKey(adminKey);\n if (admin) {\n tx.setAdminKey(admin);\n }\n\n const submit = coerceKey(submitKey);\n if (submit) {\n tx.setSubmitKey(submit);\n }\n\n return tx;\n}\n\nexport function buildMessageTx(params: {\n topicId: string;\n message: string | Uint8Array;\n transactionMemo?: string;\n}): TopicMessageSubmitTransaction {\n const tx = new TopicMessageSubmitTransaction()\n .setTopicId(TopicId.fromString(params.topicId))\n .setMessage(params.message);\n if (params.transactionMemo) {\n tx.setTransactionMemo(params.transactionMemo);\n }\n return tx;\n}\n"],"names":[],"mappings":";AAUO,SAAS,uBACd,aACA,KACQ;AACR,SAAO,SAAS,WAAW,IAAI,GAAG;AACpC;AAEO,SAAS,mBAAmB,QAKR;AACzB,QAAM,EAAE,MAAM,UAAU,WAAW,sBAAsB;AACzD,QAAM,KAAK,IAAI,yBAAyB,aAAa,IAAI;AAEzD,QAAM,YAAY,CAAC,MAAkD;AACnE,QAAI,CAAC,EAAG,QAAO;AACf,QAAI,aAAa,aAAa,aAAa,QAAS,QAAO;AAC3D,QAAI,OAAO,MAAM,WAAW;AAC1B,aAAO,IAAI,oBAAoB;AAAA,IACjC;AACA,QAAI,OAAO,MAAM,UAAU;AACzB,UAAI;AACF,eAAO,UAAU,WAAW,CAAC;AAAA,MAC/B,QAAQ;AACN,eAAO;AAAA,MACT;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAEA,QAAM,QAAQ,UAAU,QAAQ;AAChC,MAAI,OAAO;AACT,OAAG,YAAY,KAAK;AAAA,EACtB;AAEA,QAAM,SAAS,UAAU,SAAS;AAClC,MAAI,QAAQ;AACV,OAAG,aAAa,MAAM;AAAA,EACxB;AAEA,SAAO;AACT;AAEO,SAAS,eAAe,QAIG;AAChC,QAAM,KAAK,IAAI,gCACZ,WAAW,QAAQ,WAAW,OAAO,OAAO,CAAC,EAC7C,WAAW,OAAO,OAAO;AAC5B,MAAI,OAAO,iBAAiB;AAC1B,OAAG,mBAAmB,OAAO,eAAe;AAAA,EAC9C;AACA,SAAO;AACT;"}
1
+ {"version":3,"file":"standards-sdk.es136.js","sources":["../../src/common/node-operator-resolver.ts"],"sourcesContent":["import { AccountId, Client, PrivateKey } from '@hashgraph/sdk';\nimport { HederaMirrorNode } from '../services/mirror-node';\nimport { ILogger } from '../utils/logger';\nimport { detectKeyTypeFromString } from '../utils/key-type-detector';\nimport { NetworkType } from '../utils/types';\n\n/**\n * Resolves operator and supply private keys using Mirror Node as source of truth\n * with format-detection fallbacks for string keys.\n */\nexport class NodeOperatorResolver {\n private readonly mirror: HederaMirrorNode;\n private readonly logger: ILogger;\n\n constructor(params: { mirrorNode: HederaMirrorNode; logger: ILogger }) {\n this.mirror = params.mirrorNode;\n this.logger = params.logger;\n }\n\n /**\n * Best-guess parsing for an operator key without network calls.\n * - If PrivateKey: returns immediately with provided or fallback type.\n * - If string with explicitType: parse directly.\n * - If string without type: detect format; fallback to ECDSA.\n */\n bestGuessOperatorKey(\n operatorKeyInput: string | PrivateKey,\n explicitType?: 'ed25519' | 'ecdsa',\n ): { keyType: 'ed25519' | 'ecdsa'; privateKey: PrivateKey } {\n if (typeof operatorKeyInput !== 'string') {\n return { keyType: explicitType || 'ecdsa', privateKey: operatorKeyInput };\n }\n if (explicitType) {\n const pk =\n explicitType === 'ed25519'\n ? PrivateKey.fromStringED25519(operatorKeyInput)\n : PrivateKey.fromStringECDSA(operatorKeyInput);\n return { keyType: explicitType, privateKey: pk };\n }\n try {\n const detected = detectKeyTypeFromString(operatorKeyInput);\n return {\n keyType: detected.detectedType,\n privateKey: detected.privateKey,\n };\n } catch {\n return {\n keyType: 'ecdsa',\n privateKey: PrivateKey.fromStringECDSA(operatorKeyInput),\n };\n }\n }\n\n /**\n * Resolve an operator key using Mirror Node for key type when possible.\n * - If PrivateKey: return immediately.\n * - If explicitType: parse directly.\n * - Else: query Mirror Node; fallback to local detection.\n */\n async resolveOperatorKey(\n operatorId: string | AccountId,\n operatorKeyInput: string | PrivateKey,\n explicitType?: 'ed25519' | 'ecdsa',\n ): Promise<{ keyType: 'ed25519' | 'ecdsa'; privateKey: PrivateKey }> {\n if (typeof operatorKeyInput !== 'string') {\n return { keyType: explicitType || 'ecdsa', privateKey: operatorKeyInput };\n }\n if (explicitType) {\n const pk =\n explicitType === 'ed25519'\n ? PrivateKey.fromStringED25519(operatorKeyInput)\n : PrivateKey.fromStringECDSA(operatorKeyInput);\n return { keyType: explicitType, privateKey: pk };\n }\n const account =\n typeof operatorId === 'string' ? operatorId : operatorId.toString();\n try {\n const info = await this.mirror.requestAccount(account);\n const t = info?.key?._type || '';\n const keyType: 'ed25519' | 'ecdsa' = t.includes('ED25519')\n ? 'ed25519'\n : 'ecdsa';\n const privateKey =\n keyType === 'ed25519'\n ? PrivateKey.fromStringED25519(operatorKeyInput)\n : PrivateKey.fromStringECDSA(operatorKeyInput);\n return { keyType, privateKey };\n } catch {\n this.logger.warn(\n 'Mirror node key detection failed; using local detection or default ECDSA',\n );\n return this.bestGuessOperatorKey(operatorKeyInput);\n }\n }\n\n /**\n * Resolve a supply key for the given token using Mirror Node token supply_key._type when possible.\n */\n async resolveSupplyKey(\n tokenId: string,\n keyInput: string | PrivateKey,\n fallbackType: 'ed25519' | 'ecdsa',\n explicitType?: 'ed25519' | 'ecdsa',\n ): Promise<PrivateKey> {\n try {\n const info = await this.mirror.getTokenInfo(tokenId);\n const t = info?.supply_key?._type || '';\n if (typeof keyInput !== 'string') {\n return keyInput;\n }\n if (explicitType) {\n return explicitType === 'ed25519'\n ? PrivateKey.fromStringED25519(keyInput)\n : PrivateKey.fromStringECDSA(keyInput);\n }\n if (t.includes('ED25519')) {\n return PrivateKey.fromStringED25519(keyInput);\n }\n if (t.includes('ECDSA')) {\n return PrivateKey.fromStringECDSA(keyInput);\n }\n return fallbackType === 'ed25519'\n ? PrivateKey.fromStringED25519(keyInput)\n : PrivateKey.fromStringECDSA(keyInput);\n } catch {\n if (typeof keyInput !== 'string') {\n return keyInput;\n }\n if (explicitType) {\n return explicitType === 'ed25519'\n ? PrivateKey.fromStringED25519(keyInput)\n : PrivateKey.fromStringECDSA(keyInput);\n }\n return fallbackType === 'ed25519'\n ? PrivateKey.fromStringED25519(keyInput)\n : PrivateKey.fromStringECDSA(keyInput);\n }\n }\n}\n\nexport interface NodeOperatorInitParams {\n network: NetworkType;\n operatorId: string | AccountId;\n operatorKey: string | PrivateKey;\n keyType?: 'ed25519' | 'ecdsa';\n mirrorNode: HederaMirrorNode;\n logger: ILogger;\n client?: Client;\n}\n\nexport interface NodeOperatorContext {\n client: Client;\n operatorId: AccountId;\n readonly operatorKey: PrivateKey;\n readonly keyType: 'ed25519' | 'ecdsa';\n ensureInitialized(): Promise<void>;\n}\n\nexport function createNodeOperatorContext(\n params: NodeOperatorInitParams,\n): NodeOperatorContext {\n const operatorId: AccountId =\n typeof params.operatorId === 'string'\n ? AccountId.fromString(params.operatorId)\n : params.operatorId;\n\n const client: Client = params.client\n ? params.client\n : params.network === 'mainnet'\n ? Client.forMainnet()\n : Client.forTestnet();\n\n const resolver = new NodeOperatorResolver({\n mirrorNode: params.mirrorNode,\n logger: params.logger,\n });\n\n let currentKeyType: 'ed25519' | 'ecdsa';\n let currentPrivateKey: PrivateKey;\n\n const guess = resolver.bestGuessOperatorKey(\n params.operatorKey,\n params.keyType,\n );\n currentKeyType = guess.keyType;\n currentPrivateKey = guess.privateKey;\n client.setOperator(operatorId.toString(), currentPrivateKey);\n\n const initPromise = (async () => {\n try {\n const resolved = await resolver.resolveOperatorKey(\n operatorId,\n params.operatorKey,\n params.keyType,\n );\n currentKeyType = resolved.keyType;\n currentPrivateKey = resolved.privateKey;\n client.setOperator(operatorId.toString(), currentPrivateKey);\n } catch {}\n })();\n\n return {\n client,\n operatorId,\n get operatorKey() {\n return currentPrivateKey;\n },\n get keyType() {\n return currentKeyType;\n },\n ensureInitialized: async () => {\n await initPromise;\n },\n };\n}\n"],"names":[],"mappings":"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"}