@hashgraphonline/standards-sdk 0.1.165 → 0.1.166

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 (498) hide show
  1. package/dist/browser/browser.d.ts +8 -0
  2. package/dist/browser/browser.d.ts.map +1 -0
  3. package/dist/browser/common/node-operator-resolver.d.ts +58 -0
  4. package/dist/browser/common/node-operator-resolver.d.ts.map +1 -0
  5. package/dist/browser/common/tx/tx-utils.d.ts +15 -0
  6. package/dist/browser/common/tx/tx-utils.d.ts.map +1 -0
  7. package/dist/browser/content-store/ContentResolverRegistry.d.ts +38 -0
  8. package/dist/browser/content-store/ContentResolverRegistry.d.ts.map +1 -0
  9. package/dist/browser/content-store/ContentStoreService.d.ts +40 -0
  10. package/dist/browser/content-store/ContentStoreService.d.ts.map +1 -0
  11. package/dist/browser/content-store/index.d.ts +9 -0
  12. package/dist/browser/content-store/index.d.ts.map +1 -0
  13. package/dist/browser/content-store/types.d.ts +41 -0
  14. package/dist/browser/content-store/types.d.ts.map +1 -0
  15. package/dist/browser/fees/fee-config-builder.d.ts +115 -0
  16. package/dist/browser/fees/fee-config-builder.d.ts.map +1 -0
  17. package/dist/browser/fees/index.d.ts +3 -0
  18. package/dist/browser/fees/index.d.ts.map +1 -0
  19. package/dist/browser/fees/types.d.ts +26 -0
  20. package/dist/browser/fees/types.d.ts.map +1 -0
  21. package/dist/browser/hcs-10/base-client.d.ts +312 -0
  22. package/dist/browser/hcs-10/base-client.d.ts.map +1 -0
  23. package/dist/browser/hcs-10/browser.d.ts +129 -0
  24. package/dist/browser/hcs-10/browser.d.ts.map +1 -0
  25. package/dist/browser/hcs-10/connections-manager.d.ts +367 -0
  26. package/dist/browser/hcs-10/connections-manager.d.ts.map +1 -0
  27. package/dist/browser/hcs-10/errors.d.ts +14 -0
  28. package/dist/browser/hcs-10/errors.d.ts.map +1 -0
  29. package/dist/browser/hcs-10/index.d.ts +9 -0
  30. package/dist/browser/hcs-10/index.d.ts.map +1 -0
  31. package/dist/browser/hcs-10/registrations.d.ts +49 -0
  32. package/dist/browser/hcs-10/registrations.d.ts.map +1 -0
  33. package/dist/browser/hcs-10/sdk.d.ts +293 -0
  34. package/dist/browser/hcs-10/sdk.d.ts.map +1 -0
  35. package/dist/browser/hcs-10/tx.d.ts +85 -0
  36. package/dist/browser/hcs-10/tx.d.ts.map +1 -0
  37. package/dist/browser/hcs-10/types.d.ts +284 -0
  38. package/dist/browser/hcs-10/types.d.ts.map +1 -0
  39. package/dist/browser/hcs-11/agent-builder.d.ts +57 -0
  40. package/dist/browser/hcs-11/agent-builder.d.ts.map +1 -0
  41. package/dist/browser/hcs-11/client.d.ts +1199 -0
  42. package/dist/browser/hcs-11/client.d.ts.map +1 -0
  43. package/dist/browser/hcs-11/flora-builder.d.ts +24 -0
  44. package/dist/browser/hcs-11/flora-builder.d.ts.map +1 -0
  45. package/dist/browser/hcs-11/index.d.ts +7 -0
  46. package/dist/browser/hcs-11/index.d.ts.map +1 -0
  47. package/dist/browser/hcs-11/mcp-server-builder.d.ts +227 -0
  48. package/dist/browser/hcs-11/mcp-server-builder.d.ts.map +1 -0
  49. package/dist/browser/hcs-11/person-builder.d.ts +30 -0
  50. package/dist/browser/hcs-11/person-builder.d.ts.map +1 -0
  51. package/dist/browser/hcs-11/types.d.ts +238 -0
  52. package/dist/browser/hcs-11/types.d.ts.map +1 -0
  53. package/dist/browser/hcs-12/assembly/assembly-engine.d.ts +83 -0
  54. package/dist/browser/hcs-12/assembly/assembly-engine.d.ts.map +1 -0
  55. package/dist/browser/hcs-12/assembly/index.d.ts +7 -0
  56. package/dist/browser/hcs-12/assembly/index.d.ts.map +1 -0
  57. package/dist/browser/hcs-12/base-client.d.ts +152 -0
  58. package/dist/browser/hcs-12/base-client.d.ts.map +1 -0
  59. package/dist/browser/hcs-12/browser.d.ts +135 -0
  60. package/dist/browser/hcs-12/browser.d.ts.map +1 -0
  61. package/dist/browser/hcs-12/builders/action-builder.d.ts +112 -0
  62. package/dist/browser/hcs-12/builders/action-builder.d.ts.map +1 -0
  63. package/dist/browser/hcs-12/builders/assembly-builder.d.ts +98 -0
  64. package/dist/browser/hcs-12/builders/assembly-builder.d.ts.map +1 -0
  65. package/dist/browser/hcs-12/builders/block-builder.d.ts +135 -0
  66. package/dist/browser/hcs-12/builders/block-builder.d.ts.map +1 -0
  67. package/dist/browser/hcs-12/builders/index.d.ts +7 -0
  68. package/dist/browser/hcs-12/builders/index.d.ts.map +1 -0
  69. package/dist/browser/hcs-12/constants.d.ts +35 -0
  70. package/dist/browser/hcs-12/constants.d.ts.map +1 -0
  71. package/dist/browser/hcs-12/index.d.ts +21 -0
  72. package/dist/browser/hcs-12/index.d.ts.map +1 -0
  73. package/dist/browser/hcs-12/registries/action-registry.d.ts +69 -0
  74. package/dist/browser/hcs-12/registries/action-registry.d.ts.map +1 -0
  75. package/dist/browser/hcs-12/registries/assembly-registry.d.ts +62 -0
  76. package/dist/browser/hcs-12/registries/assembly-registry.d.ts.map +1 -0
  77. package/dist/browser/hcs-12/registries/base-registry.d.ts +76 -0
  78. package/dist/browser/hcs-12/registries/base-registry.d.ts.map +1 -0
  79. package/dist/browser/hcs-12/registries/block-loader.d.ts +43 -0
  80. package/dist/browser/hcs-12/registries/block-loader.d.ts.map +1 -0
  81. package/dist/browser/hcs-12/registries/hashlinks-registry.d.ts +57 -0
  82. package/dist/browser/hcs-12/registries/hashlinks-registry.d.ts.map +1 -0
  83. package/dist/browser/hcs-12/registries/index.d.ts +9 -0
  84. package/dist/browser/hcs-12/registries/index.d.ts.map +1 -0
  85. package/dist/browser/hcs-12/rendering/block-renderer.d.ts +111 -0
  86. package/dist/browser/hcs-12/rendering/block-renderer.d.ts.map +1 -0
  87. package/dist/browser/hcs-12/rendering/block-state-manager.d.ts +158 -0
  88. package/dist/browser/hcs-12/rendering/block-state-manager.d.ts.map +1 -0
  89. package/dist/browser/hcs-12/rendering/gutenberg-bridge.d.ts +59 -0
  90. package/dist/browser/hcs-12/rendering/gutenberg-bridge.d.ts.map +1 -0
  91. package/dist/browser/hcs-12/rendering/hashlink-resolver.d.ts +69 -0
  92. package/dist/browser/hcs-12/rendering/hashlink-resolver.d.ts.map +1 -0
  93. package/dist/browser/hcs-12/rendering/hashlink-scanner.d.ts +35 -0
  94. package/dist/browser/hcs-12/rendering/hashlink-scanner.d.ts.map +1 -0
  95. package/dist/browser/hcs-12/rendering/index.d.ts +14 -0
  96. package/dist/browser/hcs-12/rendering/index.d.ts.map +1 -0
  97. package/dist/browser/hcs-12/rendering/resource-manager.d.ts +134 -0
  98. package/dist/browser/hcs-12/rendering/resource-manager.d.ts.map +1 -0
  99. package/dist/browser/hcs-12/rendering/template-engine.d.ts +108 -0
  100. package/dist/browser/hcs-12/rendering/template-engine.d.ts.map +1 -0
  101. package/dist/browser/hcs-12/sdk.d.ts +112 -0
  102. package/dist/browser/hcs-12/sdk.d.ts.map +1 -0
  103. package/dist/browser/hcs-12/security/hash-verifier.d.ts +195 -0
  104. package/dist/browser/hcs-12/security/hash-verifier.d.ts.map +1 -0
  105. package/dist/browser/hcs-12/security/permission-system.d.ts +254 -0
  106. package/dist/browser/hcs-12/security/permission-system.d.ts.map +1 -0
  107. package/dist/browser/hcs-12/security/signature-verifier.d.ts +192 -0
  108. package/dist/browser/hcs-12/security/signature-verifier.d.ts.map +1 -0
  109. package/dist/browser/hcs-12/tx.d.ts +34 -0
  110. package/dist/browser/hcs-12/tx.d.ts.map +1 -0
  111. package/dist/browser/hcs-12/types.d.ts +546 -0
  112. package/dist/browser/hcs-12/types.d.ts.map +1 -0
  113. package/dist/browser/hcs-12/validation/index.d.ts +6 -0
  114. package/dist/browser/hcs-12/validation/index.d.ts.map +1 -0
  115. package/dist/browser/hcs-12/validation/schemas.d.ts +361 -0
  116. package/dist/browser/hcs-12/validation/schemas.d.ts.map +1 -0
  117. package/dist/browser/hcs-12/validation/wasm-validator.d.ts +81 -0
  118. package/dist/browser/hcs-12/validation/wasm-validator.d.ts.map +1 -0
  119. package/dist/browser/hcs-12/wasm/index.d.ts +2 -0
  120. package/dist/browser/hcs-12/wasm/index.d.ts.map +1 -0
  121. package/dist/browser/hcs-12/wasm/wasm-executor.d.ts +44 -0
  122. package/dist/browser/hcs-12/wasm/wasm-executor.d.ts.map +1 -0
  123. package/dist/browser/hcs-14/adapters/types.d.ts +24 -0
  124. package/dist/browser/hcs-14/adapters/types.d.ts.map +1 -0
  125. package/dist/browser/hcs-14/base58.d.ts +7 -0
  126. package/dist/browser/hcs-14/base58.d.ts.map +1 -0
  127. package/dist/browser/hcs-14/browser.d.ts +5 -0
  128. package/dist/browser/hcs-14/browser.d.ts.map +1 -0
  129. package/dist/browser/hcs-14/caip.d.ts +14 -0
  130. package/dist/browser/hcs-14/caip.d.ts.map +1 -0
  131. package/dist/browser/hcs-14/canonical.d.ts +3 -0
  132. package/dist/browser/hcs-14/canonical.d.ts.map +1 -0
  133. package/dist/browser/hcs-14/did.d.ts +7 -0
  134. package/dist/browser/hcs-14/did.d.ts.map +1 -0
  135. package/dist/browser/hcs-14/index.d.ts +18 -0
  136. package/dist/browser/hcs-14/index.d.ts.map +1 -0
  137. package/dist/browser/hcs-14/issuers/hiero.d.ts +8 -0
  138. package/dist/browser/hcs-14/issuers/hiero.d.ts.map +1 -0
  139. package/dist/browser/hcs-14/issuers/registry.d.ts +15 -0
  140. package/dist/browser/hcs-14/issuers/registry.d.ts.map +1 -0
  141. package/dist/browser/hcs-14/issuers/types.d.ts +28 -0
  142. package/dist/browser/hcs-14/issuers/types.d.ts.map +1 -0
  143. package/dist/browser/hcs-14/resolvers/aid-dns-web-profile.d.ts +38 -0
  144. package/dist/browser/hcs-14/resolvers/aid-dns-web-profile.d.ts.map +1 -0
  145. package/dist/browser/hcs-14/resolvers/ans-dns-web-profile-utils.d.ts +23 -0
  146. package/dist/browser/hcs-14/resolvers/ans-dns-web-profile-utils.d.ts.map +1 -0
  147. package/dist/browser/hcs-14/resolvers/ans-dns-web-profile.d.ts +32 -0
  148. package/dist/browser/hcs-14/resolvers/ans-dns-web-profile.d.ts.map +1 -0
  149. package/dist/browser/hcs-14/resolvers/dns.d.ts +3 -0
  150. package/dist/browser/hcs-14/resolvers/dns.d.ts.map +1 -0
  151. package/dist/browser/hcs-14/resolvers/hcs-11-profile.d.ts +9 -0
  152. package/dist/browser/hcs-14/resolvers/hcs-11-profile.d.ts.map +1 -0
  153. package/dist/browser/hcs-14/resolvers/hiero.d.ts +9 -0
  154. package/dist/browser/hcs-14/resolvers/hiero.d.ts.map +1 -0
  155. package/dist/browser/hcs-14/resolvers/profile-utils.d.ts +9 -0
  156. package/dist/browser/hcs-14/resolvers/profile-utils.d.ts.map +1 -0
  157. package/dist/browser/hcs-14/resolvers/registry.d.ts +70 -0
  158. package/dist/browser/hcs-14/resolvers/registry.d.ts.map +1 -0
  159. package/dist/browser/hcs-14/resolvers/types.d.ts +166 -0
  160. package/dist/browser/hcs-14/resolvers/types.d.ts.map +1 -0
  161. package/dist/browser/hcs-14/resolvers/uaid-did-resolution-profile.d.ts +11 -0
  162. package/dist/browser/hcs-14/resolvers/uaid-did-resolution-profile.d.ts.map +1 -0
  163. package/dist/browser/hcs-14/resolvers/uaid-dns-web-profile.d.ts +23 -0
  164. package/dist/browser/hcs-14/resolvers/uaid-dns-web-profile.d.ts.map +1 -0
  165. package/dist/browser/hcs-14/sdk.d.ts +125 -0
  166. package/dist/browser/hcs-14/sdk.d.ts.map +1 -0
  167. package/dist/browser/hcs-14/types.d.ts +45 -0
  168. package/dist/browser/hcs-14/types.d.ts.map +1 -0
  169. package/dist/browser/hcs-15/base-client.d.ts +22 -0
  170. package/dist/browser/hcs-15/base-client.d.ts.map +1 -0
  171. package/dist/browser/hcs-15/browser.d.ts +36 -0
  172. package/dist/browser/hcs-15/browser.d.ts.map +1 -0
  173. package/dist/browser/hcs-15/index.d.ts +6 -0
  174. package/dist/browser/hcs-15/index.d.ts.map +1 -0
  175. package/dist/browser/hcs-15/sdk.d.ts +45 -0
  176. package/dist/browser/hcs-15/sdk.d.ts.map +1 -0
  177. package/dist/browser/hcs-15/tx.d.ts +26 -0
  178. package/dist/browser/hcs-15/tx.d.ts.map +1 -0
  179. package/dist/browser/hcs-15/types.d.ts +85 -0
  180. package/dist/browser/hcs-15/types.d.ts.map +1 -0
  181. package/dist/browser/hcs-16/base-client.d.ts +67 -0
  182. package/dist/browser/hcs-16/base-client.d.ts.map +1 -0
  183. package/dist/browser/hcs-16/browser.d.ts +119 -0
  184. package/dist/browser/hcs-16/browser.d.ts.map +1 -0
  185. package/dist/browser/hcs-16/index.d.ts +7 -0
  186. package/dist/browser/hcs-16/index.d.ts.map +1 -0
  187. package/dist/browser/hcs-16/sdk.d.ts +163 -0
  188. package/dist/browser/hcs-16/sdk.d.ts.map +1 -0
  189. package/dist/browser/hcs-16/tx.d.ts +142 -0
  190. package/dist/browser/hcs-16/tx.d.ts.map +1 -0
  191. package/dist/browser/hcs-16/types.d.ts +151 -0
  192. package/dist/browser/hcs-16/types.d.ts.map +1 -0
  193. package/dist/browser/hcs-17/base-client.d.ts +86 -0
  194. package/dist/browser/hcs-17/base-client.d.ts.map +1 -0
  195. package/dist/browser/hcs-17/browser.d.ts +41 -0
  196. package/dist/browser/hcs-17/browser.d.ts.map +1 -0
  197. package/dist/browser/hcs-17/index.d.ts +6 -0
  198. package/dist/browser/hcs-17/index.d.ts.map +1 -0
  199. package/dist/browser/hcs-17/sdk.d.ts +40 -0
  200. package/dist/browser/hcs-17/sdk.d.ts.map +1 -0
  201. package/dist/browser/hcs-17/tx.d.ts +27 -0
  202. package/dist/browser/hcs-17/tx.d.ts.map +1 -0
  203. package/dist/browser/hcs-17/types.d.ts +140 -0
  204. package/dist/browser/hcs-17/types.d.ts.map +1 -0
  205. package/dist/browser/hcs-18/base-client.d.ts +28 -0
  206. package/dist/browser/hcs-18/base-client.d.ts.map +1 -0
  207. package/dist/browser/hcs-18/browser.d.ts +33 -0
  208. package/dist/browser/hcs-18/browser.d.ts.map +1 -0
  209. package/dist/browser/hcs-18/index.d.ts +12 -0
  210. package/dist/browser/hcs-18/index.d.ts.map +1 -0
  211. package/dist/browser/hcs-18/sdk.d.ts +59 -0
  212. package/dist/browser/hcs-18/sdk.d.ts.map +1 -0
  213. package/dist/browser/hcs-18/tx.d.ts +22 -0
  214. package/dist/browser/hcs-18/tx.d.ts.map +1 -0
  215. package/dist/browser/hcs-18/types.d.ts +211 -0
  216. package/dist/browser/hcs-18/types.d.ts.map +1 -0
  217. package/dist/browser/hcs-2/base-client.d.ts +138 -0
  218. package/dist/browser/hcs-2/base-client.d.ts.map +1 -0
  219. package/dist/browser/hcs-2/browser.d.ts +76 -0
  220. package/dist/browser/hcs-2/browser.d.ts.map +1 -0
  221. package/dist/browser/hcs-2/client.d.ts +111 -0
  222. package/dist/browser/hcs-2/client.d.ts.map +1 -0
  223. package/dist/browser/hcs-2/index.d.ts +6 -0
  224. package/dist/browser/hcs-2/index.d.ts.map +1 -0
  225. package/dist/browser/hcs-2/tx.d.ts +40 -0
  226. package/dist/browser/hcs-2/tx.d.ts.map +1 -0
  227. package/dist/browser/hcs-2/types.d.ts +379 -0
  228. package/dist/browser/hcs-2/types.d.ts.map +1 -0
  229. package/dist/browser/hcs-20/base-client.d.ts +56 -0
  230. package/dist/browser/hcs-20/base-client.d.ts.map +1 -0
  231. package/dist/browser/hcs-20/browser.d.ts +53 -0
  232. package/dist/browser/hcs-20/browser.d.ts.map +1 -0
  233. package/dist/browser/hcs-20/errors.d.ts +126 -0
  234. package/dist/browser/hcs-20/errors.d.ts.map +1 -0
  235. package/dist/browser/hcs-20/index.d.ts +17 -0
  236. package/dist/browser/hcs-20/index.d.ts.map +1 -0
  237. package/dist/browser/hcs-20/points-indexer.d.ts +92 -0
  238. package/dist/browser/hcs-20/points-indexer.d.ts.map +1 -0
  239. package/dist/browser/hcs-20/sdk.d.ts +53 -0
  240. package/dist/browser/hcs-20/sdk.d.ts.map +1 -0
  241. package/dist/browser/hcs-20/tx.d.ts +46 -0
  242. package/dist/browser/hcs-20/tx.d.ts.map +1 -0
  243. package/dist/browser/hcs-20/types.d.ts +526 -0
  244. package/dist/browser/hcs-20/types.d.ts.map +1 -0
  245. package/dist/browser/hcs-21/base-client.d.ts +35 -0
  246. package/dist/browser/hcs-21/base-client.d.ts.map +1 -0
  247. package/dist/browser/hcs-21/browser.d.ts +30 -0
  248. package/dist/browser/hcs-21/browser.d.ts.map +1 -0
  249. package/dist/browser/hcs-21/errors.d.ts +6 -0
  250. package/dist/browser/hcs-21/errors.d.ts.map +1 -0
  251. package/dist/browser/hcs-21/index.d.ts +8 -0
  252. package/dist/browser/hcs-21/index.d.ts.map +1 -0
  253. package/dist/browser/hcs-21/sdk.d.ts +112 -0
  254. package/dist/browser/hcs-21/sdk.d.ts.map +1 -0
  255. package/dist/browser/hcs-21/tx.d.ts +24 -0
  256. package/dist/browser/hcs-21/tx.d.ts.map +1 -0
  257. package/dist/browser/hcs-21/types.d.ts +774 -0
  258. package/dist/browser/hcs-21/types.d.ts.map +1 -0
  259. package/dist/browser/hcs-21/verify.d.ts +6 -0
  260. package/dist/browser/hcs-21/verify.d.ts.map +1 -0
  261. package/dist/browser/hcs-26/base-client.d.ts +83 -0
  262. package/dist/browser/hcs-26/base-client.d.ts.map +1 -0
  263. package/dist/browser/hcs-26/browser.d.ts +11 -0
  264. package/dist/browser/hcs-26/browser.d.ts.map +1 -0
  265. package/dist/browser/hcs-26/index.d.ts +7 -0
  266. package/dist/browser/hcs-26/index.d.ts.map +1 -0
  267. package/dist/browser/hcs-26/memos.d.ts +28 -0
  268. package/dist/browser/hcs-26/memos.d.ts.map +1 -0
  269. package/dist/browser/hcs-26/resolver.d.ts +60 -0
  270. package/dist/browser/hcs-26/resolver.d.ts.map +1 -0
  271. package/dist/browser/hcs-26/sdk.d.ts +10 -0
  272. package/dist/browser/hcs-26/sdk.d.ts.map +1 -0
  273. package/dist/browser/hcs-26/types.d.ts +2752 -0
  274. package/dist/browser/hcs-26/types.d.ts.map +1 -0
  275. package/dist/browser/hcs-3/index.d.ts +2 -0
  276. package/dist/browser/hcs-3/index.d.ts.map +1 -0
  277. package/dist/browser/hcs-3/src/index.d.ts +46 -0
  278. package/dist/browser/hcs-3/src/index.d.ts.map +1 -0
  279. package/dist/browser/hcs-3/src/types.d.ts +64 -0
  280. package/dist/browser/hcs-3/src/types.d.ts.map +1 -0
  281. package/dist/browser/hcs-5/base-client.d.ts +17 -0
  282. package/dist/browser/hcs-5/base-client.d.ts.map +1 -0
  283. package/dist/browser/hcs-5/browser.d.ts +20 -0
  284. package/dist/browser/hcs-5/browser.d.ts.map +1 -0
  285. package/dist/browser/hcs-5/index.d.ts +5 -0
  286. package/dist/browser/hcs-5/index.d.ts.map +1 -0
  287. package/dist/browser/hcs-5/sdk.d.ts +12 -0
  288. package/dist/browser/hcs-5/sdk.d.ts.map +1 -0
  289. package/dist/browser/hcs-5/tx.d.ts +12 -0
  290. package/dist/browser/hcs-5/tx.d.ts.map +1 -0
  291. package/dist/browser/hcs-5/types.d.ts +52 -0
  292. package/dist/browser/hcs-5/types.d.ts.map +1 -0
  293. package/dist/browser/hcs-6/base-client.d.ts +110 -0
  294. package/dist/browser/hcs-6/base-client.d.ts.map +1 -0
  295. package/dist/browser/hcs-6/browser.d.ts +78 -0
  296. package/dist/browser/hcs-6/browser.d.ts.map +1 -0
  297. package/dist/browser/hcs-6/client.d.ts +2 -0
  298. package/dist/browser/hcs-6/client.d.ts.map +1 -0
  299. package/dist/browser/hcs-6/index.d.ts +6 -0
  300. package/dist/browser/hcs-6/index.d.ts.map +1 -0
  301. package/dist/browser/hcs-6/sdk.d.ts +33 -0
  302. package/dist/browser/hcs-6/sdk.d.ts.map +1 -0
  303. package/dist/browser/hcs-6/tx.d.ts +16 -0
  304. package/dist/browser/hcs-6/tx.d.ts.map +1 -0
  305. package/dist/browser/hcs-6/types.d.ts +254 -0
  306. package/dist/browser/hcs-6/types.d.ts.map +1 -0
  307. package/dist/browser/hcs-7/base-client.d.ts +22 -0
  308. package/dist/browser/hcs-7/base-client.d.ts.map +1 -0
  309. package/dist/browser/hcs-7/browser.d.ts +16 -0
  310. package/dist/browser/hcs-7/browser.d.ts.map +1 -0
  311. package/dist/browser/hcs-7/evm-bridge.d.ts +33 -0
  312. package/dist/browser/hcs-7/evm-bridge.d.ts.map +1 -0
  313. package/dist/browser/hcs-7/index.d.ts +9 -0
  314. package/dist/browser/hcs-7/index.d.ts.map +1 -0
  315. package/dist/browser/hcs-7/redis-cache.d.ts +26 -0
  316. package/dist/browser/hcs-7/redis-cache.d.ts.map +1 -0
  317. package/dist/browser/hcs-7/sdk.d.ts +18 -0
  318. package/dist/browser/hcs-7/sdk.d.ts.map +1 -0
  319. package/dist/browser/hcs-7/tx.d.ts +31 -0
  320. package/dist/browser/hcs-7/tx.d.ts.map +1 -0
  321. package/dist/browser/hcs-7/types.d.ts +385 -0
  322. package/dist/browser/hcs-7/types.d.ts.map +1 -0
  323. package/dist/browser/hcs-7/wasm-bridge.d.ts +72 -0
  324. package/dist/browser/hcs-7/wasm-bridge.d.ts.map +1 -0
  325. package/dist/browser/index.d.ts +22 -0
  326. package/dist/browser/index.d.ts.map +1 -0
  327. package/dist/browser/inscribe/index.d.ts +4 -0
  328. package/dist/browser/inscribe/index.d.ts.map +1 -0
  329. package/dist/browser/inscribe/inscriber.d.ts +132 -0
  330. package/dist/browser/inscribe/inscriber.d.ts.map +1 -0
  331. package/dist/browser/inscribe/inscription-cost.d.ts +12 -0
  332. package/dist/browser/inscribe/inscription-cost.d.ts.map +1 -0
  333. package/dist/browser/inscribe/quote-cache.d.ts +23 -0
  334. package/dist/browser/inscribe/quote-cache.d.ts.map +1 -0
  335. package/dist/browser/inscribe/types.d.ts +130 -0
  336. package/dist/browser/inscribe/types.d.ts.map +1 -0
  337. package/dist/browser/services/index.d.ts +4 -0
  338. package/dist/browser/services/index.d.ts.map +1 -0
  339. package/dist/browser/services/mirror-node.d.ts +472 -0
  340. package/dist/browser/services/mirror-node.d.ts.map +1 -0
  341. package/dist/browser/services/registry-broker/agent-communicator/agent-communicator.d.ts +1 -0
  342. package/dist/browser/services/registry-broker/agent-communicator/agent-communicator.d.ts.map +1 -0
  343. package/dist/browser/services/registry-broker/agent-communicator/index.d.ts +1 -0
  344. package/dist/browser/services/registry-broker/agent-communicator/index.d.ts.map +1 -0
  345. package/dist/browser/services/registry-broker/agent-communicator/types.d.ts +1 -0
  346. package/dist/browser/services/registry-broker/agent-communicator/types.d.ts.map +1 -0
  347. package/dist/browser/services/registry-broker/client/adapters.d.ts +17 -0
  348. package/dist/browser/services/registry-broker/client/adapters.d.ts.map +1 -0
  349. package/dist/browser/services/registry-broker/client/agents.d.ts +13 -0
  350. package/dist/browser/services/registry-broker/client/agents.d.ts.map +1 -0
  351. package/dist/browser/services/registry-broker/client/base-client.d.ts +238 -0
  352. package/dist/browser/services/registry-broker/client/base-client.d.ts.map +1 -0
  353. package/dist/browser/services/registry-broker/client/chat-history.d.ts +19 -0
  354. package/dist/browser/services/registry-broker/client/chat-history.d.ts.map +1 -0
  355. package/dist/browser/services/registry-broker/client/chat.d.ts +32 -0
  356. package/dist/browser/services/registry-broker/client/chat.d.ts.map +1 -0
  357. package/dist/browser/services/registry-broker/client/credits.d.ts +36 -0
  358. package/dist/browser/services/registry-broker/client/credits.d.ts.map +1 -0
  359. package/dist/browser/services/registry-broker/client/encrypted-chat-manager.d.ts +30 -0
  360. package/dist/browser/services/registry-broker/client/encrypted-chat-manager.d.ts.map +1 -0
  361. package/dist/browser/services/registry-broker/client/encryption.d.ts +35 -0
  362. package/dist/browser/services/registry-broker/client/encryption.d.ts.map +1 -0
  363. package/dist/browser/services/registry-broker/client/errors.d.ts +19 -0
  364. package/dist/browser/services/registry-broker/client/errors.d.ts.map +1 -0
  365. package/dist/browser/services/registry-broker/client/feedback.d.ts +2 -0
  366. package/dist/browser/services/registry-broker/client/feedback.d.ts.map +1 -0
  367. package/dist/browser/services/registry-broker/client/ledger-auth.d.ts +7 -0
  368. package/dist/browser/services/registry-broker/client/ledger-auth.d.ts.map +1 -0
  369. package/dist/browser/services/registry-broker/client/search.d.ts +16 -0
  370. package/dist/browser/services/registry-broker/client/search.d.ts.map +1 -0
  371. package/dist/browser/services/registry-broker/client/skills.d.ts +51 -0
  372. package/dist/browser/services/registry-broker/client/skills.d.ts.map +1 -0
  373. package/dist/browser/services/registry-broker/client/utils.d.ts +21 -0
  374. package/dist/browser/services/registry-broker/client/utils.d.ts.map +1 -0
  375. package/dist/browser/services/registry-broker/client/verification.d.ts +16 -0
  376. package/dist/browser/services/registry-broker/client/verification.d.ts.map +1 -0
  377. package/dist/browser/services/registry-broker/client.d.ts +3 -0
  378. package/dist/browser/services/registry-broker/client.d.ts.map +1 -0
  379. package/dist/browser/services/registry-broker/hol-chat-ops.d.ts +24 -0
  380. package/dist/browser/services/registry-broker/hol-chat-ops.d.ts.map +1 -0
  381. package/dist/browser/services/registry-broker/index.d.ts +6 -0
  382. package/dist/browser/services/registry-broker/index.d.ts.map +1 -0
  383. package/dist/browser/services/registry-broker/ledger-network.d.ts +12 -0
  384. package/dist/browser/services/registry-broker/ledger-network.d.ts.map +1 -0
  385. package/dist/browser/services/registry-broker/private-key-signer.d.ts +9 -0
  386. package/dist/browser/services/registry-broker/private-key-signer.d.ts.map +1 -0
  387. package/dist/browser/services/registry-broker/schemas.d.ts +30221 -0
  388. package/dist/browser/services/registry-broker/schemas.d.ts.map +1 -0
  389. package/dist/browser/services/registry-broker/types.d.ts +568 -0
  390. package/dist/browser/services/registry-broker/types.d.ts.map +1 -0
  391. package/dist/browser/services/types.d.ts +614 -0
  392. package/dist/browser/services/types.d.ts.map +1 -0
  393. package/dist/browser/standards-sdk.browser.js +46507 -0
  394. package/dist/browser/standards-sdk.browser.js.map +1 -0
  395. package/dist/browser/utils/crypto-abstraction.d.ts +89 -0
  396. package/dist/browser/utils/crypto-abstraction.d.ts.map +1 -0
  397. package/dist/browser/utils/crypto-env.d.ts +25 -0
  398. package/dist/browser/utils/crypto-env.d.ts.map +1 -0
  399. package/dist/browser/utils/dynamic-import.d.ts +7 -0
  400. package/dist/browser/utils/dynamic-import.d.ts.map +1 -0
  401. package/dist/browser/utils/hash-adapter.d.ts +46 -0
  402. package/dist/browser/utils/hash-adapter.d.ts.map +1 -0
  403. package/dist/browser/utils/hrl-resolver.d.ts +62 -0
  404. package/dist/browser/utils/hrl-resolver.d.ts.map +1 -0
  405. package/dist/browser/utils/index.d.ts +22 -0
  406. package/dist/browser/utils/index.d.ts.map +1 -0
  407. package/dist/browser/utils/interactive-terminal.d.ts +42 -0
  408. package/dist/browser/utils/interactive-terminal.d.ts.map +1 -0
  409. package/dist/browser/utils/is-browser.d.ts +5 -0
  410. package/dist/browser/utils/is-browser.d.ts.map +1 -0
  411. package/dist/browser/utils/is-dapp-signer.d.ts +4 -0
  412. package/dist/browser/utils/is-dapp-signer.d.ts.map +1 -0
  413. package/dist/browser/utils/key-type-detector.d.ts +194 -0
  414. package/dist/browser/utils/key-type-detector.d.ts.map +1 -0
  415. package/dist/browser/utils/logger-adapter.d.ts +17 -0
  416. package/dist/browser/utils/logger-adapter.d.ts.map +1 -0
  417. package/dist/browser/utils/logger.d.ts +51 -0
  418. package/dist/browser/utils/logger.d.ts.map +1 -0
  419. package/dist/browser/utils/parsers/crypto-parser.d.ts +51 -0
  420. package/dist/browser/utils/parsers/crypto-parser.d.ts.map +1 -0
  421. package/dist/browser/utils/parsers/file-parser.d.ts +55 -0
  422. package/dist/browser/utils/parsers/file-parser.d.ts.map +1 -0
  423. package/dist/browser/utils/parsers/hcs-parser.d.ts +19 -0
  424. package/dist/browser/utils/parsers/hcs-parser.d.ts.map +1 -0
  425. package/dist/browser/utils/parsers/hts-parser.d.ts +56 -0
  426. package/dist/browser/utils/parsers/hts-parser.d.ts.map +1 -0
  427. package/dist/browser/utils/parsers/parser-utils.d.ts +14 -0
  428. package/dist/browser/utils/parsers/parser-utils.d.ts.map +1 -0
  429. package/dist/browser/utils/parsers/schedule-parser.d.ts +89 -0
  430. package/dist/browser/utils/parsers/schedule-parser.d.ts.map +1 -0
  431. package/dist/browser/utils/parsers/scs-parser.d.ts +60 -0
  432. package/dist/browser/utils/parsers/scs-parser.d.ts.map +1 -0
  433. package/dist/browser/utils/parsers/util-parser.d.ts +78 -0
  434. package/dist/browser/utils/parsers/util-parser.d.ts.map +1 -0
  435. package/dist/browser/utils/progress-reporter.d.ts +54 -0
  436. package/dist/browser/utils/progress-reporter.d.ts.map +1 -0
  437. package/dist/browser/utils/sleep.d.ts +2 -0
  438. package/dist/browser/utils/sleep.d.ts.map +1 -0
  439. package/dist/browser/utils/topic-fee-utils.d.ts +12 -0
  440. package/dist/browser/utils/topic-fee-utils.d.ts.map +1 -0
  441. package/dist/browser/utils/topic-id-utils.d.ts +5 -0
  442. package/dist/browser/utils/topic-id-utils.d.ts.map +1 -0
  443. package/dist/browser/utils/transaction-parser-registry.d.ts +31 -0
  444. package/dist/browser/utils/transaction-parser-registry.d.ts.map +1 -0
  445. package/dist/browser/utils/transaction-parser-types.d.ts +568 -0
  446. package/dist/browser/utils/transaction-parser-types.d.ts.map +1 -0
  447. package/dist/browser/utils/transaction-parser.d.ts +147 -0
  448. package/dist/browser/utils/transaction-parser.d.ts.map +1 -0
  449. package/dist/browser/utils/transaction-summary-registry.d.ts +12 -0
  450. package/dist/browser/utils/transaction-summary-registry.d.ts.map +1 -0
  451. package/dist/browser/utils/transaction-type-registries.d.ts +38 -0
  452. package/dist/browser/utils/transaction-type-registries.d.ts.map +1 -0
  453. package/dist/browser/utils/types.d.ts +5 -0
  454. package/dist/browser/utils/types.d.ts.map +1 -0
  455. package/dist/cjs/browser.d.ts +8 -0
  456. package/dist/cjs/browser.d.ts.map +1 -0
  457. package/dist/cjs/hcs-11/client.d.ts +18 -18
  458. package/dist/cjs/hcs-12/validation/schemas.d.ts +8 -8
  459. package/dist/cjs/hcs-20/types.d.ts +8 -8
  460. package/dist/cjs/hcs-7/types.d.ts +22 -22
  461. package/dist/cjs/services/registry-broker/schemas.d.ts +88 -88
  462. package/dist/cjs/standards-sdk.cjs +2 -2
  463. package/dist/cjs/standards-sdk.cjs.map +1 -1
  464. package/dist/cjs/utils/logger.d.ts.map +1 -1
  465. package/dist/es/browser.d.ts +8 -0
  466. package/dist/es/browser.d.ts.map +1 -0
  467. package/dist/es/hcs-11/client.d.ts +18 -18
  468. package/dist/es/hcs-12/validation/schemas.d.ts +8 -8
  469. package/dist/es/hcs-20/types.d.ts +8 -8
  470. package/dist/es/hcs-7/types.d.ts +22 -22
  471. package/dist/es/services/registry-broker/schemas.d.ts +88 -88
  472. package/dist/es/standards-sdk.es116.js +1 -1
  473. package/dist/es/standards-sdk.es118.js +42 -2
  474. package/dist/es/standards-sdk.es118.js.map +1 -1
  475. package/dist/es/standards-sdk.es123.js +5 -5
  476. package/dist/es/standards-sdk.es133.js +1 -1
  477. package/dist/es/standards-sdk.es134.js +1 -1
  478. package/dist/es/standards-sdk.es135.js +5 -5
  479. package/dist/es/standards-sdk.es137.js +1 -1
  480. package/dist/es/standards-sdk.es144.js +1 -1
  481. package/dist/es/standards-sdk.es161.js +66 -165
  482. package/dist/es/standards-sdk.es161.js.map +1 -1
  483. package/dist/es/standards-sdk.es162.js +535 -307
  484. package/dist/es/standards-sdk.es162.js.map +1 -1
  485. package/dist/es/standards-sdk.es163.js +120 -294
  486. package/dist/es/standards-sdk.es163.js.map +1 -1
  487. package/dist/es/standards-sdk.es164.js +191 -322
  488. package/dist/es/standards-sdk.es164.js.map +1 -1
  489. package/dist/es/standards-sdk.es165.js +294 -279
  490. package/dist/es/standards-sdk.es165.js.map +1 -1
  491. package/dist/es/standards-sdk.es166.js +440 -63
  492. package/dist/es/standards-sdk.es166.js.map +1 -1
  493. package/dist/es/standards-sdk.es167.js +323 -65
  494. package/dist/es/standards-sdk.es167.js.map +1 -1
  495. package/dist/es/standards-sdk.es168.js +69 -543
  496. package/dist/es/standards-sdk.es168.js.map +1 -1
  497. package/dist/es/utils/logger.d.ts.map +1 -1
  498. package/package.json +9 -2
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es165.js","sources":["../../src/utils/parsers/util-parser.ts"],"sourcesContent":["import { proto } from '@hashgraph/proto';\nimport { Transaction, Long, FileId, ContractId } from '@hashgraph/sdk';\nimport {\n UtilPrngData,\n NetworkFreezeData,\n SystemDeleteData,\n SystemUndeleteData,\n NodeCreateData,\n NodeUpdateData,\n NodeDeleteData,\n} from '../transaction-parser-types';\nimport {\n parseKey,\n extractTransactionBody,\n hasTransactionType,\n} from './parser-utils';\n\n/**\n * Utility and System Operations Parser\n *\n * Handles parsing for utility and system transaction types including:\n * - Pseudo-random number generation (PRNG)\n * - Network freeze operations\n * - System delete/undelete operations\n * - Node management operations\n * - Proper dual-branch parsing (regular vs signed transactions)\n * - Comprehensive protobuf extraction\n */\nexport class UtilParser {\n /**\n * Parse Utility/System Service transaction using unified dual-branch approach\n * This handles both regular transactions and signed transaction variants\n */\n static parseUtilTransaction(\n transaction: Transaction,\n originalBytes?: Uint8Array,\n ): {\n type?: string;\n humanReadableType?: string;\n utilPrng?: UtilPrngData;\n networkFreeze?: NetworkFreezeData;\n systemDelete?: SystemDeleteData;\n systemUndelete?: SystemUndeleteData;\n nodeCreate?: NodeCreateData;\n nodeUpdate?: NodeUpdateData;\n nodeDelete?: NodeDeleteData;\n [key: string]: unknown;\n } {\n try {\n if (originalBytes || transaction.toBytes) {\n try {\n const bytesToParse = originalBytes || transaction.toBytes();\n const decoded = proto.TransactionList.decode(bytesToParse);\n\n if (decoded.transactionList && decoded.transactionList.length > 0) {\n const tx = decoded.transactionList[0];\n let txBody: proto.ITransactionBody | null = null;\n\n if (tx.bodyBytes && tx.bodyBytes.length > 0) {\n txBody = proto.TransactionBody.decode(tx.bodyBytes);\n } else if (\n tx.signedTransactionBytes &&\n tx.signedTransactionBytes.length > 0\n ) {\n const signedTx = proto.SignedTransaction.decode(\n tx.signedTransactionBytes,\n );\n if (signedTx.bodyBytes) {\n txBody = proto.TransactionBody.decode(signedTx.bodyBytes);\n }\n }\n\n if (txBody) {\n const protoResult = this.parseFromProtobufTxBody(txBody);\n if (protoResult.type && protoResult.type !== 'UNKNOWN') {\n return protoResult;\n }\n }\n }\n } catch (protoError) {}\n }\n\n return this.parseFromTransactionInternals(transaction);\n } catch (error) {\n return {\n type: 'UNKNOWN',\n humanReadableType: 'Unknown Utility Transaction',\n };\n }\n }\n\n /**\n * Parse utility transaction from protobuf TransactionBody\n * Handles all utility operations from decoded protobuf data\n */\n private static parseFromProtobufTxBody(txBody: proto.ITransactionBody): {\n type?: string;\n humanReadableType?: string;\n [key: string]: unknown;\n } {\n if (txBody.utilPrng) {\n const utilPrng = this.parseUtilPrng(txBody.utilPrng);\n if (utilPrng) {\n return {\n type: 'PRNG',\n humanReadableType: 'Pseudo Random Number',\n utilPrng,\n };\n }\n }\n\n if (txBody.freeze) {\n const networkFreeze = this.parseNetworkFreezeFromProto(txBody.freeze);\n if (networkFreeze) {\n return {\n type: 'FREEZE',\n humanReadableType: 'Network Freeze',\n freeze: networkFreeze,\n };\n }\n }\n\n if (txBody.systemDelete) {\n const systemDelete = this.parseSystemDeleteFromProto(txBody.systemDelete);\n if (systemDelete) {\n return {\n type: 'SYSTEMDELETE',\n humanReadableType: 'System Delete',\n systemDelete,\n };\n }\n }\n\n if (txBody.systemUndelete) {\n const systemUndelete = this.parseSystemUndeleteFromProto(\n txBody.systemUndelete,\n );\n if (systemUndelete) {\n return {\n type: 'SYSTEMUNDELETE',\n humanReadableType: 'System Undelete',\n systemUndelete,\n };\n }\n }\n\n if (txBody.nodeCreate) {\n const nodeCreate = this.parseNodeCreateFromProto(txBody.nodeCreate);\n if (nodeCreate) {\n return {\n type: 'NODECREATE',\n humanReadableType: 'Node Create',\n nodeCreate,\n };\n }\n }\n\n if (txBody.nodeUpdate) {\n const nodeUpdate = this.parseNodeUpdateFromProto(txBody.nodeUpdate);\n if (nodeUpdate) {\n return {\n type: 'NODEUPDATE',\n humanReadableType: 'Node Update',\n nodeUpdate,\n };\n }\n }\n\n if (txBody.nodeDelete) {\n const nodeDelete = this.parseNodeDeleteFromProto(txBody.nodeDelete);\n if (nodeDelete) {\n return {\n type: 'NODEDELETE',\n humanReadableType: 'Node Delete',\n nodeDelete,\n };\n }\n }\n\n return {};\n }\n\n /**\n * Extract utility data from Transaction internal fields\n * This handles cases where data is stored in Transaction object internals\n */\n private static parseFromTransactionInternals(transaction: Transaction): {\n type?: string;\n humanReadableType?: string;\n [key: string]: unknown;\n } {\n try {\n const tx = transaction as unknown as {\n _range?: number;\n _startTime?: { toString(): string };\n _endTime?: { toString(): string };\n _updateFile?: { toString(): string };\n _fileHash?: Uint8Array;\n _freezeType?: string;\n _fileId?: { toString(): string };\n _contractId?: { toString(): string };\n _expirationTime?: { toString(): string };\n _nodeId?: number;\n _accountId?: { toString(): string };\n _description?: string;\n _gossipEndpoint?: Array<unknown>;\n _serviceEndpoint?: Array<unknown>;\n _gossipCaCertificate?: Uint8Array;\n _grpcCertificateHash?: Uint8Array;\n _adminKey?: unknown;\n constructor?: { name?: string };\n };\n\n if (hasTransactionType(transaction, 'utilPrng')) {\n const utilPrng: UtilPrngData = {};\n if (tx._range && tx._range !== 0) {\n utilPrng.range = tx._range;\n }\n\n return {\n type: 'PRNG',\n humanReadableType: 'Pseudo Random Number',\n utilPrng,\n };\n }\n\n if (hasTransactionType(transaction, 'freeze')) {\n const networkFreeze: NetworkFreezeData = {};\n\n if (tx._startTime) {\n networkFreeze.startTime = tx._startTime.toString();\n }\n if (tx._endTime) {\n networkFreeze.endTime = tx._endTime.toString();\n }\n if (tx._updateFile) {\n networkFreeze.updateFile = tx._updateFile.toString();\n }\n if (tx._fileHash) {\n networkFreeze.fileHash = Buffer.from(tx._fileHash).toString('hex');\n }\n if (tx._freezeType) {\n networkFreeze.freezeType = tx._freezeType as any;\n }\n\n return {\n type: 'FREEZE',\n humanReadableType: 'Network Freeze',\n freeze: networkFreeze,\n };\n }\n\n if (hasTransactionType(transaction, 'systemDelete')) {\n const systemDelete: SystemDeleteData = {};\n\n if (tx._fileId) {\n systemDelete.fileId = tx._fileId.toString();\n } else if (tx._contractId) {\n systemDelete.contractId = tx._contractId.toString();\n }\n\n if (tx._expirationTime) {\n systemDelete.expirationTime = tx._expirationTime.toString();\n }\n\n return {\n type: 'SYSTEMDELETE',\n humanReadableType: 'System Delete',\n systemDelete,\n };\n }\n\n if (hasTransactionType(transaction, 'systemUndelete')) {\n const systemUndelete: SystemUndeleteData = {};\n\n if (tx._fileId) {\n systemUndelete.fileId = tx._fileId.toString();\n } else if (tx._contractId) {\n systemUndelete.contractId = tx._contractId.toString();\n }\n\n return {\n type: 'SYSTEMUNDELETE',\n humanReadableType: 'System Undelete',\n systemUndelete,\n };\n }\n\n return {};\n } catch (error) {\n return {};\n }\n }\n\n /**\n * Parse Network Freeze from protobuf data\n */\n private static parseNetworkFreezeFromProto(\n body: proto.IFreezeTransactionBody,\n ): NetworkFreezeData | undefined {\n if (!body) return undefined;\n\n const data: NetworkFreezeData = {};\n\n if (body.startTime?.seconds) {\n data.startTime = `${Long.fromValue(\n body.startTime.seconds,\n ).toString()}.${body.startTime.nanos ?? 0}`;\n }\n\n if (body.updateFile) {\n data.updateFile = new FileId(\n body.updateFile.shardNum ?? 0,\n body.updateFile.realmNum ?? 0,\n body.updateFile.fileNum ?? 0,\n ).toString();\n }\n\n if (body.fileHash && body.fileHash.length > 0) {\n data.fileHash = Buffer.from(body.fileHash).toString('hex');\n }\n\n if (body.freezeType !== undefined) {\n const freezeTypes = [\n 'FREEZE_ONLY',\n 'PREPARE_UPGRADE',\n 'FREEZE_UPGRADE',\n 'FREEZE_ABORT',\n ];\n data.freezeType = (freezeTypes[body.freezeType] as any) || 'FREEZE_ONLY';\n }\n\n return data;\n }\n\n /**\n * Parse System Delete from protobuf data\n */\n private static parseSystemDeleteFromProto(\n body: proto.ISystemDeleteTransactionBody,\n ): SystemDeleteData | undefined {\n if (!body) return undefined;\n\n const data: SystemDeleteData = {};\n\n if (body.fileID) {\n data.fileId = new FileId(\n body.fileID.shardNum ?? 0,\n body.fileID.realmNum ?? 0,\n body.fileID.fileNum ?? 0,\n ).toString();\n } else if (body.contractID) {\n data.contractId = new ContractId(\n body.contractID.shardNum ?? 0,\n body.contractID.realmNum ?? 0,\n body.contractID.contractNum ?? 0,\n ).toString();\n }\n\n if (body.expirationTime?.seconds) {\n data.expirationTime = Long.fromValue(\n body.expirationTime.seconds,\n ).toString();\n }\n\n return data;\n }\n\n /**\n * Parse System Undelete from protobuf data\n */\n private static parseSystemUndeleteFromProto(\n body: proto.ISystemUndeleteTransactionBody,\n ): SystemUndeleteData | undefined {\n if (!body) return undefined;\n\n const data: SystemUndeleteData = {};\n\n if (body.fileID) {\n data.fileId = new FileId(\n body.fileID.shardNum ?? 0,\n body.fileID.realmNum ?? 0,\n body.fileID.fileNum ?? 0,\n ).toString();\n } else if (body.contractID) {\n data.contractId = new ContractId(\n body.contractID.shardNum ?? 0,\n body.contractID.realmNum ?? 0,\n body.contractID.contractNum ?? 0,\n ).toString();\n }\n\n return data;\n }\n\n /**\n * Parse Node Create from protobuf data\n */\n private static parseNodeCreateFromProto(\n body: any,\n ): NodeCreateData | undefined {\n if (!body) return undefined;\n\n const data: NodeCreateData = {};\n\n if (body.nodeId !== undefined) {\n data.nodeId = Long.fromValue(body.nodeId).toNumber();\n }\n\n return data;\n }\n\n /**\n * Parse Node Update from protobuf data\n */\n private static parseNodeUpdateFromProto(\n body: any,\n ): NodeUpdateData | undefined {\n if (!body) return undefined;\n\n const data: NodeUpdateData = {};\n\n if (body.nodeId !== undefined) {\n data.nodeId = Long.fromValue(body.nodeId).toNumber();\n }\n\n return data;\n }\n\n /**\n * Parse Node Delete from protobuf data\n */\n private static parseNodeDeleteFromProto(\n body: any,\n ): NodeDeleteData | undefined {\n if (!body) return undefined;\n\n const data: NodeDeleteData = {};\n\n if (body.nodeId !== undefined) {\n data.nodeId = Long.fromValue(body.nodeId).toNumber();\n }\n\n return data;\n }\n\n static parseUtilPrng(\n body: proto.IUtilPrngTransactionBody,\n ): UtilPrngData | undefined {\n if (!body) return undefined;\n const data: UtilPrngData = {};\n if (body.range && body.range !== 0) {\n data.range = body.range;\n }\n return data;\n }\n\n static parseFreeze(\n body: proto.IFreezeTransactionBody,\n ): NetworkFreezeData | undefined {\n return this.parseNetworkFreezeFromProto(body);\n }\n\n /**\n * Parse Utility/System Service transaction from Transaction object\n * This is the unified entry point that delegates to the comprehensive parsing logic\n */\n static parseFromTransactionObject(transaction: Transaction): {\n type?: string;\n humanReadableType?: string;\n [key: string]: unknown;\n } {\n return this.parseUtilTransaction(transaction);\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standards-sdk.es165.js","sources":["../../src/utils/parsers/crypto-parser.ts"],"sourcesContent":["import { proto } from '@hashgraph/proto';\nimport {\n AccountId,\n TokenId,\n Hbar,\n HbarUnit,\n Long,\n Transaction,\n} from '@hashgraph/sdk';\nimport {\n AccountAmount,\n TokenAmount,\n CryptoDeleteData,\n CryptoCreateAccountData,\n CryptoUpdateAccountData,\n CryptoApproveAllowanceData,\n CryptoDeleteAllowanceData,\n NftAllowance,\n} from '../transaction-parser-types';\nimport { parseKey } from './parser-utils';\n\nexport class CryptoParser {\n static parseCryptoTransfers(\n cryptoTransfer: proto.ICryptoTransferTransactionBody,\n result: { transfers: AccountAmount[]; tokenTransfers: TokenAmount[] },\n ): void {\n if (cryptoTransfer.transfers?.accountAmounts) {\n result.transfers = cryptoTransfer.transfers.accountAmounts.map(aa => {\n const accountId = new AccountId(\n aa.accountID!.shardNum ?? 0,\n aa.accountID!.realmNum ?? 0,\n aa.accountID!.accountNum ?? 0,\n );\n const hbarAmount = Hbar.fromTinybars(Long.fromValue(aa.amount!));\n return {\n accountId: accountId.toString(),\n amount: hbarAmount.toString(HbarUnit.Hbar),\n isDecimal: true,\n };\n });\n }\n if (cryptoTransfer.tokenTransfers) {\n for (const tokenTransferList of cryptoTransfer.tokenTransfers) {\n const tokenId = new TokenId(\n tokenTransferList.token!.shardNum ?? 0,\n tokenTransferList.token!.realmNum ?? 0,\n tokenTransferList.token!.tokenNum ?? 0,\n );\n if (tokenTransferList.transfers) {\n for (const transfer of tokenTransferList.transfers) {\n const accountId = new AccountId(\n transfer.accountID!.shardNum ?? 0,\n transfer.accountID!.realmNum ?? 0,\n transfer.accountID!.accountNum ?? 0,\n );\n const tokenAmount = Long.fromValue(transfer.amount!).toNumber();\n result.tokenTransfers.push({\n tokenId: tokenId.toString(),\n accountId: accountId.toString(),\n amount: tokenAmount,\n });\n }\n }\n }\n }\n }\n\n static parseCryptoDelete(\n body: proto.ICryptoDeleteTransactionBody,\n ): CryptoDeleteData | undefined {\n if (!body) return undefined;\n const data: CryptoDeleteData = {};\n if (body.deleteAccountID) {\n data.deleteAccountId = new AccountId(\n body.deleteAccountID.shardNum ?? 0,\n body.deleteAccountID.realmNum ?? 0,\n body.deleteAccountID.accountNum ?? 0,\n ).toString();\n }\n if (body.transferAccountID) {\n data.transferAccountId = new AccountId(\n body.transferAccountID.shardNum ?? 0,\n body.transferAccountID.realmNum ?? 0,\n body.transferAccountID.accountNum ?? 0,\n ).toString();\n }\n return data;\n }\n\n static parseCryptoCreateAccount(\n body: proto.ICryptoCreateTransactionBody,\n ): CryptoCreateAccountData | undefined {\n if (!body) return undefined;\n const data: CryptoCreateAccountData = {};\n if (body.initialBalance) {\n data.initialBalance = Hbar.fromTinybars(\n Long.fromValue(body.initialBalance),\n ).toString(HbarUnit.Hbar);\n }\n if (body.key) {\n data.key = parseKey(body.key);\n }\n if (body.receiverSigRequired !== undefined) {\n data.receiverSigRequired = body.receiverSigRequired;\n }\n if (body.autoRenewPeriod?.seconds) {\n data.autoRenewPeriod = Long.fromValue(\n body.autoRenewPeriod.seconds,\n ).toString();\n }\n if (body.memo) {\n data.memo = body.memo;\n }\n if (body.maxAutomaticTokenAssociations !== undefined) {\n data.maxAutomaticTokenAssociations = body.maxAutomaticTokenAssociations;\n }\n if (body.stakedAccountId) {\n data.stakedAccountId = new AccountId(\n body.stakedAccountId.shardNum ?? 0,\n body.stakedAccountId.realmNum ?? 0,\n body.stakedAccountId.accountNum ?? 0,\n ).toString();\n } else if (body.stakedNodeId !== null && body.stakedNodeId !== undefined) {\n data.stakedNodeId = Long.fromValue(body.stakedNodeId).toString();\n }\n if (body.declineReward !== undefined) {\n data.declineReward = body.declineReward;\n }\n if (body.alias && body.alias.length > 0) {\n data.alias = Buffer.from(body.alias).toString('hex');\n }\n return data;\n }\n\n static parseCryptoUpdateAccount(\n body: proto.ICryptoUpdateTransactionBody,\n ): CryptoUpdateAccountData | undefined {\n if (!body) return undefined;\n const data: CryptoUpdateAccountData = {};\n if (body.accountIDToUpdate) {\n data.accountIdToUpdate = new AccountId(\n body.accountIDToUpdate.shardNum ?? 0,\n body.accountIDToUpdate.realmNum ?? 0,\n body.accountIDToUpdate.accountNum ?? 0,\n ).toString();\n }\n if (body.key) {\n data.key = parseKey(body.key);\n }\n if (body.expirationTime?.seconds) {\n data.expirationTime = `${Long.fromValue(\n body.expirationTime.seconds,\n ).toString()}.${body.expirationTime.nanos}`;\n }\n if (\n body.receiverSigRequired !== null &&\n body.receiverSigRequired !== undefined\n ) {\n data.receiverSigRequired = Boolean(body.receiverSigRequired);\n }\n if (body.autoRenewPeriod?.seconds) {\n data.autoRenewPeriod = Long.fromValue(\n body.autoRenewPeriod.seconds,\n ).toString();\n }\n if (body.memo?.value !== undefined) {\n data.memo = body.memo.value;\n }\n if (body.maxAutomaticTokenAssociations?.value !== undefined) {\n data.maxAutomaticTokenAssociations =\n body.maxAutomaticTokenAssociations.value;\n }\n if (body.stakedAccountId) {\n data.stakedAccountId = new AccountId(\n body.stakedAccountId.shardNum ?? 0,\n body.stakedAccountId.realmNum ?? 0,\n body.stakedAccountId.accountNum ?? 0,\n ).toString();\n data.stakedNodeId = undefined;\n } else if (body.stakedNodeId !== null && body.stakedNodeId !== undefined) {\n data.stakedNodeId = Long.fromValue(body.stakedNodeId).toString();\n data.stakedAccountId = undefined;\n } else {\n data.stakedAccountId = undefined;\n data.stakedNodeId = undefined;\n }\n if (body.declineReward !== null && body.declineReward !== undefined) {\n data.declineReward = Boolean(body.declineReward);\n }\n return data;\n }\n\n static parseCryptoApproveAllowance(\n body: proto.ICryptoApproveAllowanceTransactionBody,\n ): CryptoApproveAllowanceData | undefined {\n if (!body) return undefined;\n const data: CryptoApproveAllowanceData = {};\n if (body.cryptoAllowances && body.cryptoAllowances.length > 0) {\n data.hbarAllowances = body.cryptoAllowances.map(a => ({\n ownerAccountId: new AccountId(\n a.owner!.shardNum ?? 0,\n a.owner!.realmNum ?? 0,\n a.owner!.accountNum ?? 0,\n ).toString(),\n spenderAccountId: new AccountId(\n a.spender!.shardNum ?? 0,\n a.spender!.realmNum ?? 0,\n a.spender!.accountNum ?? 0,\n ).toString(),\n amount: Hbar.fromTinybars(Long.fromValue(a.amount!)).toString(\n HbarUnit.Hbar,\n ),\n }));\n }\n if (body.tokenAllowances && body.tokenAllowances.length > 0) {\n data.tokenAllowances = body.tokenAllowances.map(a => ({\n tokenId: new TokenId(\n a.tokenId!.shardNum ?? 0,\n a.tokenId!.realmNum ?? 0,\n a.tokenId!.tokenNum ?? 0,\n ).toString(),\n ownerAccountId: new AccountId(\n a.owner!.shardNum ?? 0,\n a.owner!.realmNum ?? 0,\n a.owner!.accountNum ?? 0,\n ).toString(),\n spenderAccountId: new AccountId(\n a.spender!.shardNum ?? 0,\n a.spender!.realmNum ?? 0,\n a.spender!.accountNum ?? 0,\n ).toString(),\n amount: Long.fromValue(a.amount!).toString(),\n }));\n }\n if (body.nftAllowances && body.nftAllowances.length > 0) {\n data.nftAllowances = body.nftAllowances.map(a => {\n const allowance: NftAllowance = {};\n if (a.tokenId)\n allowance.tokenId = new TokenId(\n a.tokenId.shardNum ?? 0,\n a.tokenId.realmNum ?? 0,\n a.tokenId.tokenNum ?? 0,\n ).toString();\n if (a.owner)\n allowance.ownerAccountId = new AccountId(\n a.owner.shardNum ?? 0,\n a.owner.realmNum ?? 0,\n a.owner.accountNum ?? 0,\n ).toString();\n if (a.spender)\n allowance.spenderAccountId = new AccountId(\n a.spender.shardNum ?? 0,\n a.spender.realmNum ?? 0,\n a.spender.accountNum ?? 0,\n ).toString();\n if (a.serialNumbers && a.serialNumbers.length > 0)\n allowance.serialNumbers = a.serialNumbers.map(sn =>\n Long.fromValue(sn).toString(),\n );\n if (a.approvedForAll?.value !== undefined)\n allowance.approvedForAll = a.approvedForAll.value;\n if (a.delegatingSpender)\n allowance.delegatingSpender = new AccountId(\n a.delegatingSpender.shardNum ?? 0,\n a.delegatingSpender.realmNum ?? 0,\n a.delegatingSpender.accountNum ?? 0,\n ).toString();\n return allowance;\n });\n }\n return data;\n }\n\n static parseCryptoDeleteAllowance(\n body: proto.ICryptoDeleteAllowanceTransactionBody,\n ): CryptoDeleteAllowanceData | undefined {\n if (!body) return undefined;\n const data: CryptoDeleteAllowanceData = {};\n if (body.nftAllowances && body.nftAllowances.length > 0) {\n data.nftAllowancesToRemove = body.nftAllowances.map(a => ({\n ownerAccountId: new AccountId(\n a.owner!.shardNum ?? 0,\n a.owner!.realmNum ?? 0,\n a.owner!.accountNum ?? 0,\n ).toString(),\n tokenId: new TokenId(\n a.tokenId!.shardNum ?? 0,\n a.tokenId!.realmNum ?? 0,\n a.tokenId!.tokenNum ?? 0,\n ).toString(),\n serialNumbers: a.serialNumbers\n ? a.serialNumbers.map(sn => Long.fromValue(sn).toString())\n : [],\n }));\n }\n return data;\n }\n\n /**\n * Extract HBAR transfers from Transaction object\n */\n static extractHbarTransfersFromTransaction(\n transaction: Transaction,\n ): Array<{ accountId: string; amount: number }> {\n const transfers: Array<{ accountId: string; amount: number }> = [];\n\n try {\n const hbarTransfers = (\n transaction as unknown as {\n _hbarTransfers?: Array<{\n accountId?: AccountId;\n amount?: Hbar;\n }>;\n }\n )._hbarTransfers;\n\n if (Array.isArray(hbarTransfers)) {\n hbarTransfers.forEach(transfer => {\n if (transfer.accountId && transfer.amount) {\n const amountInTinybars = transfer.amount.toTinybars();\n const amountInHbar = Number(amountInTinybars) / 100000000;\n\n transfers.push({\n accountId: transfer.accountId.toString(),\n amount: amountInHbar,\n });\n }\n });\n }\n } catch (error) {}\n\n return transfers;\n }\n\n /**\n * Extract token transfers from Transaction object\n */\n static extractTokenTransfersFromTransaction(transaction: Transaction): Array<{\n tokenId: string;\n transfers: Array<{ accountId: string; amount: number }>;\n }> {\n const tokenTransfers: Array<{\n tokenId: string;\n transfers: Array<{ accountId: string; amount: number }>;\n }> = [];\n\n try {\n const tokenTransfersList = (\n transaction as unknown as {\n _tokenTransfers?: Array<{\n tokenId?: { toString(): string };\n transfers?: Array<{\n accountId?: AccountId;\n amount?: number | Long;\n }>;\n }>;\n }\n )._tokenTransfers;\n\n if (Array.isArray(tokenTransfersList)) {\n tokenTransfersList.forEach(tokenTransfer => {\n if (tokenTransfer.tokenId && Array.isArray(tokenTransfer.transfers)) {\n const transfers = tokenTransfer.transfers.map(transfer => ({\n accountId: transfer.accountId?.toString() || 'Unknown',\n amount: Number(transfer.amount || 0),\n }));\n\n tokenTransfers.push({\n tokenId: tokenTransfer.tokenId.toString(),\n transfers: transfers,\n });\n }\n });\n }\n } catch (error) {}\n\n return tokenTransfers;\n }\n\n /**\n * Parse crypto transaction from Transaction object with comprehensive extraction\n * This is the unified entry point that handles both protobuf and internal field extraction\n */\n static parseFromTransactionObject(transaction: Transaction): {\n type?: string;\n humanReadableType?: string;\n transfers?: Array<{\n accountId: string;\n amount: string;\n isDecimal?: boolean;\n }>;\n tokenTransfers?: Array<{\n tokenId: string;\n accountId: string;\n amount: number;\n }>;\n [key: string]: unknown;\n } {\n try {\n const hbarTransfers =\n this.extractHbarTransfersFromTransaction(transaction);\n const tokenTransfers =\n this.extractTokenTransfersFromTransaction(transaction);\n\n if (hbarTransfers.length > 0 || tokenTransfers.length > 0) {\n const convertedTransfers = hbarTransfers.map(transfer => ({\n accountId: transfer.accountId,\n amount: transfer.amount.toString() + ' ℏ',\n isDecimal: true,\n }));\n\n const convertedTokenTransfers = tokenTransfers.flatMap(tokenGroup =>\n tokenGroup.transfers.map(transfer => ({\n tokenId: tokenGroup.tokenId,\n accountId: transfer.accountId,\n amount: transfer.amount,\n })),\n );\n\n if (hbarTransfers.length > 0) {\n return {\n type: 'CRYPTOTRANSFER',\n humanReadableType: 'Crypto Transfer',\n transfers: convertedTransfers,\n tokenTransfers: convertedTokenTransfers,\n };\n } else if (tokenTransfers.length > 0) {\n return {\n type: 'TOKENTRANSFER',\n humanReadableType: 'Token Transfer',\n transfers: convertedTransfers,\n tokenTransfers: convertedTokenTransfers,\n };\n }\n }\n\n return {};\n } catch (error) {\n return {};\n }\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,79 +1,456 @@
1
1
  import { proto } from "@hashgraph/proto";
2
- import { ContractId } from "@hashgraph/sdk";
2
+ import { Long, Hbar, HbarUnit, ContractId, AccountId, FileId } from "@hashgraph/sdk";
3
3
  import { Buffer } from "buffer";
4
- function parseKey(key) {
5
- if (!key) {
6
- return void 0;
7
- }
8
- if (key.contractID) {
9
- return `ContractID: ${new ContractId(
10
- key.contractID.shardNum ?? 0,
11
- key.contractID.realmNum ?? 0,
12
- key.contractID.contractNum ?? 0
13
- ).toString()}`;
4
+ import { hasTransactionType, parseKey } from "./standards-sdk.es168.js";
5
+ class SCSParser {
6
+ /**
7
+ * Parse Smart Contract Service transaction using unified dual-branch approach
8
+ * This handles both regular transactions and signed transaction variants
9
+ */
10
+ static parseSCSTransaction(transaction, originalBytes) {
11
+ try {
12
+ if (originalBytes || transaction.toBytes) {
13
+ try {
14
+ const bytesToParse = originalBytes || transaction.toBytes();
15
+ const decoded = proto.TransactionList.decode(bytesToParse);
16
+ if (decoded.transactionList && decoded.transactionList.length > 0) {
17
+ const tx = decoded.transactionList[0];
18
+ let txBody = null;
19
+ if (tx.bodyBytes && tx.bodyBytes.length > 0) {
20
+ txBody = proto.TransactionBody.decode(tx.bodyBytes);
21
+ } else if (tx.signedTransactionBytes && tx.signedTransactionBytes.length > 0) {
22
+ const signedTx = proto.SignedTransaction.decode(
23
+ tx.signedTransactionBytes
24
+ );
25
+ if (signedTx.bodyBytes) {
26
+ txBody = proto.TransactionBody.decode(signedTx.bodyBytes);
27
+ }
28
+ }
29
+ if (txBody) {
30
+ const protoResult = this.parseFromProtobufTxBody(txBody);
31
+ if (protoResult.type && protoResult.type !== "UNKNOWN") {
32
+ return protoResult;
33
+ }
34
+ }
35
+ }
36
+ } catch (protoError) {
37
+ }
38
+ }
39
+ return this.parseFromTransactionInternals(transaction);
40
+ } catch (error) {
41
+ return {
42
+ type: "UNKNOWN",
43
+ humanReadableType: "Unknown Contract Transaction"
44
+ };
45
+ }
14
46
  }
15
- if (key.ed25519) {
16
- return `ED25519: ${Buffer.from(key.ed25519).toString("hex")}`;
47
+ /**
48
+ * Parse contract transaction from protobuf TransactionBody
49
+ * Handles all contract operations from decoded protobuf data
50
+ */
51
+ static parseFromProtobufTxBody(txBody) {
52
+ if (txBody.contractCall) {
53
+ const contractCall = this.parseContractCall(txBody.contractCall);
54
+ if (contractCall) {
55
+ return {
56
+ type: "CONTRACTCALL",
57
+ humanReadableType: "Contract Call",
58
+ contractCall
59
+ };
60
+ }
61
+ }
62
+ if (txBody.contractCreateInstance) {
63
+ const contractCreate = this.parseContractCreate(
64
+ txBody.contractCreateInstance
65
+ );
66
+ if (contractCreate) {
67
+ return {
68
+ type: "CONTRACTCREATE",
69
+ humanReadableType: "Contract Create",
70
+ contractCreate
71
+ };
72
+ }
73
+ }
74
+ if (txBody.contractUpdateInstance) {
75
+ const contractUpdate = this.parseContractUpdate(
76
+ txBody.contractUpdateInstance
77
+ );
78
+ if (contractUpdate) {
79
+ return {
80
+ type: "CONTRACTUPDATE",
81
+ humanReadableType: "Contract Update",
82
+ contractUpdate
83
+ };
84
+ }
85
+ }
86
+ if (txBody.contractDeleteInstance) {
87
+ const contractDelete = this.parseContractDelete(
88
+ txBody.contractDeleteInstance
89
+ );
90
+ if (contractDelete) {
91
+ return {
92
+ type: "CONTRACTDELETE",
93
+ humanReadableType: "Contract Delete",
94
+ contractDelete
95
+ };
96
+ }
97
+ }
98
+ if (txBody.ethereumTransaction) {
99
+ const ethereumCall = this.parseEthereumTransaction(
100
+ txBody.ethereumTransaction
101
+ );
102
+ if (ethereumCall) {
103
+ return {
104
+ type: "ETHEREUMTRANSACTION",
105
+ humanReadableType: "Ethereum Transaction",
106
+ ethereumTransaction: ethereumCall
107
+ };
108
+ }
109
+ }
110
+ return {};
17
111
  }
18
- if (key.ECDSASecp256k1) {
19
- return `ECDSA_secp256k1: ${Buffer.from(key.ECDSASecp256k1).toString(
20
- "hex"
21
- )}`;
112
+ /**
113
+ * Extract contract data from Transaction internal fields
114
+ * This handles cases where data is stored in Transaction object internals
115
+ */
116
+ static parseFromTransactionInternals(transaction) {
117
+ try {
118
+ const tx = transaction;
119
+ if (tx._contractId && tx._gas) {
120
+ const contractCall = {
121
+ contractId: tx._contractId.toString(),
122
+ gas: typeof tx._gas === "number" ? tx._gas : Long.fromValue(tx._gas).toNumber(),
123
+ amount: tx._amount ? parseFloat(tx._amount.toString()) : 0
124
+ };
125
+ if (tx._functionParameters) {
126
+ const funcParams = Buffer.from(tx._functionParameters).toString(
127
+ "hex"
128
+ );
129
+ contractCall.functionParameters = funcParams;
130
+ contractCall.functionName = this.extractFunctionName(funcParams);
131
+ }
132
+ return {
133
+ type: "CONTRACTCALL",
134
+ humanReadableType: "Contract Call",
135
+ contractCall
136
+ };
137
+ }
138
+ if (hasTransactionType(transaction, "contractCreateInstance")) {
139
+ const contractCreate = {
140
+ gas: tx._gas.toString(),
141
+ initialBalance: tx._initialBalance?.toString() || "0"
142
+ };
143
+ if (tx._fileId) {
144
+ contractCreate.initcodeSource = "fileID";
145
+ contractCreate.initcode = tx._fileId.toString();
146
+ } else if (tx._bytecode) {
147
+ contractCreate.initcodeSource = "bytes";
148
+ contractCreate.initcode = Buffer.from(tx._bytecode).toString("hex");
149
+ }
150
+ if (tx._constructorParameters) {
151
+ contractCreate.constructorParameters = Buffer.from(
152
+ tx._constructorParameters
153
+ ).toString("hex");
154
+ }
155
+ if (tx._memo) contractCreate.memo = tx._memo;
156
+ if (tx._adminKey) contractCreate.adminKey = parseKey(tx._adminKey);
157
+ if (tx._maxAutomaticTokenAssociations !== void 0) {
158
+ contractCreate.maxAutomaticTokenAssociations = tx._maxAutomaticTokenAssociations;
159
+ }
160
+ if (tx._stakedAccountId) {
161
+ contractCreate.stakedAccountId = tx._stakedAccountId.toString();
162
+ } else if (tx._stakedNodeId !== null && tx._stakedNodeId !== void 0) {
163
+ contractCreate.stakedNodeId = Long.fromValue(
164
+ tx._stakedNodeId
165
+ ).toString();
166
+ }
167
+ if (tx._declineReward !== void 0)
168
+ contractCreate.declineReward = tx._declineReward;
169
+ if (tx._autoRenewPeriod)
170
+ contractCreate.autoRenewPeriod = tx._autoRenewPeriod.toString();
171
+ return {
172
+ type: "CONTRACTCREATE",
173
+ humanReadableType: "Contract Create",
174
+ contractCreate
175
+ };
176
+ }
177
+ if (hasTransactionType(transaction, "contractUpdateInstance")) {
178
+ const contractUpdate = {
179
+ contractIdToUpdate: tx._contractId.toString()
180
+ };
181
+ if (tx._memo) contractUpdate.memo = tx._memo;
182
+ if (tx._adminKey) contractUpdate.adminKey = parseKey(tx._adminKey);
183
+ if (tx._maxAutomaticTokenAssociations !== void 0) {
184
+ contractUpdate.maxAutomaticTokenAssociations = tx._maxAutomaticTokenAssociations;
185
+ }
186
+ if (tx._stakedAccountId) {
187
+ contractUpdate.stakedAccountId = tx._stakedAccountId.toString();
188
+ } else if (tx._stakedNodeId !== null && tx._stakedNodeId !== void 0) {
189
+ contractUpdate.stakedNodeId = Long.fromValue(
190
+ tx._stakedNodeId
191
+ ).toString();
192
+ }
193
+ if (tx._declineReward !== void 0)
194
+ contractUpdate.declineReward = tx._declineReward;
195
+ if (tx._autoRenewPeriod)
196
+ contractUpdate.autoRenewPeriod = tx._autoRenewPeriod.toString();
197
+ return {
198
+ type: "CONTRACTUPDATE",
199
+ humanReadableType: "Contract Update",
200
+ contractUpdate
201
+ };
202
+ }
203
+ if (hasTransactionType(transaction, "contractDeleteInstance")) {
204
+ const contractDelete = {
205
+ contractIdToDelete: tx._contractId.toString()
206
+ };
207
+ if (tx._transferAccountId) {
208
+ contractDelete.transferAccountId = tx._transferAccountId.toString();
209
+ } else if (tx._transferContractId) {
210
+ contractDelete.transferContractId = tx._transferContractId.toString();
211
+ }
212
+ return {
213
+ type: "CONTRACTDELETE",
214
+ humanReadableType: "Contract Delete",
215
+ contractDelete
216
+ };
217
+ }
218
+ return {};
219
+ } catch (error) {
220
+ return {};
221
+ }
22
222
  }
23
- if (key?.keyList?.keys?.length > 0) {
24
- const keys = key.keyList.keys.map((k) => parseKey(k)).filter(Boolean);
25
- return `KeyList (${keys.length} keys): [${keys.join(", ")}]`;
223
+ /**
224
+ * Enhanced function name extraction from contract call parameters
225
+ * Attempts to decode function selector and map to known function names
226
+ */
227
+ static extractFunctionName(functionParameters) {
228
+ if (functionParameters.length < 8) return "unknown";
229
+ const selector = functionParameters.substring(0, 8);
230
+ const commonSelectors = {
231
+ a9059cbb: "transfer",
232
+ "095ea7b3": "approve",
233
+ "23b872dd": "transferFrom",
234
+ "70a08231": "balanceOf",
235
+ dd62ed3e: "allowance",
236
+ "18160ddd": "totalSupply",
237
+ "06fdde03": "name",
238
+ "95d89b41": "symbol",
239
+ "313ce567": "decimals",
240
+ "42842e0e": "safeTransferFrom",
241
+ b88d4fde: "safeTransferFrom",
242
+ e985e9c5: "isApprovedForAll",
243
+ a22cb465: "setApprovalForAll",
244
+ "6352211e": "ownerOf",
245
+ c87b56dd: "tokenURI",
246
+ "01ffc9a7": "supportsInterface",
247
+ "40c10f19": "mint",
248
+ "42966c68": "burn",
249
+ f2fde38b: "transferOwnership",
250
+ "715018a6": "renounceOwnership",
251
+ "8da5cb5b": "owner"
252
+ };
253
+ return commonSelectors[selector] || selector;
26
254
  }
27
- if (key?.thresholdKey?.keys?.keys?.length > 0) {
28
- const keys = key.thresholdKey.keys.keys.map((k) => parseKey(k)).filter(Boolean);
29
- return `ThresholdKey (${key.thresholdKey.threshold} of ${keys.length}): [${keys.join(", ")}]`;
255
+ /**
256
+ * Parse Ethereum Transaction (was completely missing from original parser)
257
+ */
258
+ static parseEthereumTransaction(body) {
259
+ if (!body) return void 0;
260
+ const data = {
261
+ contractId: "EVM",
262
+ gas: body.maxGasAllowance ? Long.fromValue(body.maxGasAllowance).toNumber() : 0,
263
+ amount: 0
264
+ };
265
+ if (body.ethereumData && body.ethereumData.length > 0) {
266
+ const ethData = Buffer.from(body.ethereumData).toString("hex");
267
+ data.functionParameters = ethData;
268
+ if (ethData.length >= 8) {
269
+ data.functionName = this.extractFunctionName(ethData);
270
+ }
271
+ }
272
+ return data;
30
273
  }
31
- if (key.delegatableContractId) {
32
- return `DelegatableContractID: ${new ContractId(
33
- key.delegatableContractId.shardNum ?? 0,
34
- key.delegatableContractId.realmNum ?? 0,
35
- key.delegatableContractId.contractNum ?? 0
36
- ).toString()}`;
274
+ static parseContractCall(body) {
275
+ if (!body) return void 0;
276
+ const hbarAmount = Hbar.fromTinybars(Long.fromValue(body.amount ?? 0));
277
+ const data = {
278
+ contractId: new ContractId(
279
+ body.contractID.shardNum ?? 0,
280
+ body.contractID.realmNum ?? 0,
281
+ body.contractID.contractNum ?? 0
282
+ ).toString(),
283
+ gas: Long.fromValue(body.gas ?? 0).toNumber(),
284
+ amount: parseFloat(hbarAmount.toString(HbarUnit.Hbar))
285
+ };
286
+ if (body.functionParameters) {
287
+ data.functionParameters = Buffer.from(body.functionParameters).toString(
288
+ "hex"
289
+ );
290
+ if (data.functionParameters.length >= 8) {
291
+ data.functionName = this.extractFunctionName(data.functionParameters);
292
+ }
293
+ }
294
+ return data;
37
295
  }
38
- if (Object.keys(key).length === 0) {
39
- return "Empty Key Structure";
296
+ static parseContractCreate(body) {
297
+ if (!body) return void 0;
298
+ const data = {};
299
+ if (body.initialBalance) {
300
+ data.initialBalance = Hbar.fromTinybars(
301
+ Long.fromValue(body.initialBalance)
302
+ ).toString(HbarUnit.Hbar);
303
+ }
304
+ if (body.gas) {
305
+ data.gas = Long.fromValue(body.gas).toString();
306
+ }
307
+ if (body.adminKey) {
308
+ data.adminKey = parseKey(body.adminKey);
309
+ }
310
+ if (body.constructorParameters) {
311
+ data.constructorParameters = Buffer.from(
312
+ body.constructorParameters
313
+ ).toString("hex");
314
+ }
315
+ if (body.memo) {
316
+ data.memo = body.memo;
317
+ }
318
+ if (body.autoRenewPeriod?.seconds) {
319
+ data.autoRenewPeriod = Long.fromValue(
320
+ body.autoRenewPeriod.seconds
321
+ ).toString();
322
+ }
323
+ if (body.stakedAccountId) {
324
+ data.stakedAccountId = new AccountId(
325
+ body.stakedAccountId.shardNum ?? 0,
326
+ body.stakedAccountId.realmNum ?? 0,
327
+ body.stakedAccountId.accountNum ?? 0
328
+ ).toString();
329
+ } else if (body.stakedNodeId !== null && body.stakedNodeId !== void 0) {
330
+ data.stakedNodeId = Long.fromValue(body.stakedNodeId).toString();
331
+ }
332
+ if (body.declineReward !== void 0) {
333
+ data.declineReward = body.declineReward;
334
+ }
335
+ if (body.maxAutomaticTokenAssociations !== void 0) {
336
+ data.maxAutomaticTokenAssociations = body.maxAutomaticTokenAssociations;
337
+ }
338
+ if (body.fileID) {
339
+ data.initcodeSource = "fileID";
340
+ data.initcode = new FileId(
341
+ body.fileID.shardNum ?? 0,
342
+ body.fileID.realmNum ?? 0,
343
+ body.fileID.fileNum ?? 0
344
+ ).toString();
345
+ } else if (body.initcode && body.initcode.length > 0) {
346
+ data.initcodeSource = "bytes";
347
+ data.initcode = Buffer.from(body.initcode).toString("hex");
348
+ }
349
+ return data;
40
350
  }
41
- return "Unknown or Unset Key Type";
42
- }
43
- function extractTransactionBody(transaction) {
44
- try {
45
- const bytes = transaction.toBytes ? transaction.toBytes() : void 0;
46
- if (!bytes) {
47
- return null;
48
- }
49
- const decoded = proto.TransactionList.decode(bytes);
50
- if (!decoded.transactionList || decoded.transactionList.length === 0) {
51
- return null;
52
- }
53
- const tx = decoded.transactionList[0];
54
- if (tx.bodyBytes && tx.bodyBytes.length > 0) {
55
- return proto.TransactionBody.decode(tx.bodyBytes);
56
- }
57
- if (tx.signedTransactionBytes && tx.signedTransactionBytes.length > 0) {
58
- const signedTx = proto.SignedTransaction.decode(
59
- tx.signedTransactionBytes
60
- );
61
- if (signedTx.bodyBytes) {
62
- return proto.TransactionBody.decode(signedTx.bodyBytes);
351
+ static parseContractUpdate(body) {
352
+ if (!body) return void 0;
353
+ const data = {};
354
+ if (body.contractID) {
355
+ data.contractIdToUpdate = new ContractId(
356
+ body.contractID.shardNum ?? 0,
357
+ body.contractID.realmNum ?? 0,
358
+ body.contractID.contractNum ?? 0
359
+ ).toString();
360
+ }
361
+ if (body.adminKey) {
362
+ data.adminKey = parseKey(body.adminKey);
363
+ }
364
+ if (body.expirationTime?.seconds) {
365
+ data.expirationTime = `${Long.fromValue(
366
+ body.expirationTime.seconds
367
+ ).toString()}.${body.expirationTime.nanos}`;
368
+ }
369
+ if (body.autoRenewPeriod?.seconds) {
370
+ data.autoRenewPeriod = Long.fromValue(
371
+ body.autoRenewPeriod.seconds
372
+ ).toString();
373
+ }
374
+ if (body.memo) {
375
+ const memoUnion = body.memo;
376
+ if (memoUnion && typeof memoUnion === "object" && Object.prototype.hasOwnProperty.call(memoUnion, "value")) {
377
+ const value = memoUnion.value;
378
+ if (value === null || value === void 0) {
379
+ data.memo = void 0;
380
+ } else {
381
+ data.memo = String(value);
382
+ }
383
+ } else if (typeof memoUnion === "string") {
384
+ data.memo = memoUnion;
385
+ } else {
386
+ data.memo = void 0;
63
387
  }
388
+ } else {
389
+ data.memo = void 0;
390
+ }
391
+ if (body.stakedAccountId) {
392
+ data.stakedAccountId = new AccountId(
393
+ body.stakedAccountId.shardNum ?? 0,
394
+ body.stakedAccountId.realmNum ?? 0,
395
+ body.stakedAccountId.accountNum ?? 0
396
+ ).toString();
397
+ data.stakedNodeId = void 0;
398
+ } else if (body.stakedNodeId !== null && body.stakedNodeId !== void 0 && Long.fromValue(body.stakedNodeId).notEquals(-1)) {
399
+ data.stakedNodeId = Long.fromValue(body.stakedNodeId).toString();
400
+ data.stakedAccountId = void 0;
401
+ } else {
402
+ data.stakedNodeId = void 0;
403
+ data.stakedAccountId = void 0;
404
+ }
405
+ if (body.declineReward?.value !== void 0) {
406
+ data.declineReward = body.declineReward.value;
407
+ }
408
+ if (body.maxAutomaticTokenAssociations?.value !== void 0) {
409
+ data.maxAutomaticTokenAssociations = body.maxAutomaticTokenAssociations.value;
64
410
  }
65
- return null;
66
- } catch (error) {
67
- return null;
411
+ if (body.autoRenewAccountId) {
412
+ data.autoRenewAccountId = new AccountId(
413
+ body.autoRenewAccountId.shardNum ?? 0,
414
+ body.autoRenewAccountId.realmNum ?? 0,
415
+ body.autoRenewAccountId.accountNum ?? 0
416
+ ).toString();
417
+ }
418
+ return data;
419
+ }
420
+ static parseContractDelete(body) {
421
+ if (!body) return void 0;
422
+ const data = {};
423
+ if (body.contractID) {
424
+ data.contractIdToDelete = new ContractId(
425
+ body.contractID.shardNum ?? 0,
426
+ body.contractID.realmNum ?? 0,
427
+ body.contractID.contractNum ?? 0
428
+ ).toString();
429
+ }
430
+ if (body.transferAccountID) {
431
+ data.transferAccountId = new AccountId(
432
+ body.transferAccountID.shardNum ?? 0,
433
+ body.transferAccountID.realmNum ?? 0,
434
+ body.transferAccountID.accountNum ?? 0
435
+ ).toString();
436
+ } else if (body.transferContractID) {
437
+ data.transferContractId = new ContractId(
438
+ body.transferContractID.shardNum ?? 0,
439
+ body.transferContractID.realmNum ?? 0,
440
+ body.transferContractID.contractNum ?? 0
441
+ ).toString();
442
+ }
443
+ return data;
444
+ }
445
+ /**
446
+ * Parse SCS (Smart Contract Service) transaction from Transaction object
447
+ * This is the unified entry point that delegates to the comprehensive parsing logic
448
+ */
449
+ static parseFromTransactionObject(transaction) {
450
+ return this.parseSCSTransaction(transaction);
68
451
  }
69
- }
70
- function hasTransactionType(transaction, transactionField) {
71
- const txBody = extractTransactionBody(transaction);
72
- return !!(txBody && txBody[transactionField]);
73
452
  }
74
453
  export {
75
- extractTransactionBody,
76
- hasTransactionType,
77
- parseKey
454
+ SCSParser
78
455
  };
79
456
  //# sourceMappingURL=standards-sdk.es166.js.map