@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,425 +1,309 @@
1
- import { HTSParser } from "./standards-sdk.es120.js";
2
- import { HCSParser } from "./standards-sdk.es142.js";
3
- import { CryptoParser } from "./standards-sdk.es144.js";
4
- import { FileParser } from "./standards-sdk.es143.js";
5
- import { SCSParser } from "./standards-sdk.es145.js";
6
- import { ScheduleParser } from "./standards-sdk.es121.js";
7
- import { UtilParser } from "./standards-sdk.es146.js";
8
- const transactionParserRegistry = {
9
- TOKENCREATE: {
10
- bodyField: "tokenCreation",
11
- parser: HTSParser.parseTokenCreate,
12
- resultField: "tokenCreation"
13
- },
14
- TOKENMINT: {
15
- bodyField: "tokenMint",
16
- parser: HTSParser.parseTokenMint,
17
- resultField: "tokenMint"
18
- },
19
- TOKENBURN: {
20
- bodyField: "tokenBurn",
21
- parser: HTSParser.parseTokenBurn,
22
- resultField: "tokenBurn"
23
- },
24
- TOKENUPDATE: {
25
- bodyField: "tokenUpdate",
26
- parser: HTSParser.parseTokenUpdate,
27
- resultField: "tokenUpdate"
28
- },
29
- TOKENDELETE: {
30
- bodyField: "tokenDeletion",
31
- parser: HTSParser.parseTokenDelete,
32
- resultField: "tokenDelete"
33
- },
34
- TOKENASSOCIATE: {
35
- bodyField: "tokenAssociate",
36
- parser: HTSParser.parseTokenAssociate,
37
- resultField: "tokenAssociate"
38
- },
39
- TOKENDISSOCIATE: {
40
- bodyField: "tokenDissociate",
41
- parser: HTSParser.parseTokenDissociate,
42
- resultField: "tokenDissociate"
43
- },
44
- TOKENFREEZE: {
45
- bodyField: "tokenFreeze",
46
- parser: HTSParser.parseTokenFreeze,
47
- resultField: "tokenFreeze"
48
- },
49
- TOKENUNFREEZE: {
50
- bodyField: "tokenUnfreeze",
51
- parser: HTSParser.parseTokenUnfreeze,
52
- resultField: "tokenUnfreeze"
53
- },
54
- TOKENGRANTKYC: {
55
- bodyField: "tokenGrantKyc",
56
- parser: HTSParser.parseTokenGrantKyc,
57
- resultField: "tokenGrantKyc"
58
- },
59
- TOKENREVOKEKYC: {
60
- bodyField: "tokenRevokeKyc",
61
- parser: HTSParser.parseTokenRevokeKyc,
62
- resultField: "tokenRevokeKyc"
63
- },
64
- TOKENPAUSE: {
65
- bodyField: "tokenPause",
66
- parser: HTSParser.parseTokenPause,
67
- resultField: "tokenPause"
68
- },
69
- TOKENUNPAUSE: {
70
- bodyField: "tokenUnpause",
71
- parser: HTSParser.parseTokenUnpause,
72
- resultField: "tokenUnpause"
73
- },
74
- TOKENWIPEACCOUNT: {
75
- bodyField: "tokenWipe",
76
- parser: HTSParser.parseTokenWipeAccount,
77
- resultField: "tokenWipeAccount"
78
- },
79
- TOKENFEESCHEDULEUPDATE: {
80
- bodyField: "tokenFeeScheduleUpdate",
81
- parser: HTSParser.parseTokenFeeScheduleUpdate,
82
- resultField: "tokenFeeScheduleUpdate"
83
- },
84
- TOKENAIRDROP: {
85
- bodyField: "tokenAirdrop",
86
- parser: HTSParser.parseTokenAirdropFromProto,
87
- resultField: "tokenAirdrop"
88
- },
89
- TOPICCREATE: {
90
- bodyField: "consensusCreateTopic",
91
- parser: HCSParser.parseConsensusCreateTopic,
92
- resultField: "consensusCreateTopic"
93
- },
94
- CONSENSUSSUBMITMESSAGE: {
95
- bodyField: "consensusSubmitMessage",
96
- parser: HCSParser.parseConsensusSubmitMessage,
97
- resultField: "consensusSubmitMessage"
98
- },
99
- TOPICUPDATE: {
100
- bodyField: "consensusUpdateTopic",
101
- parser: HCSParser.parseConsensusUpdateTopic,
102
- resultField: "consensusUpdateTopic"
103
- },
104
- TOPICDELETE: {
105
- bodyField: "consensusDeleteTopic",
106
- parser: HCSParser.parseConsensusDeleteTopic,
107
- resultField: "consensusDeleteTopic"
108
- },
109
- ACCOUNTCREATE: {
110
- bodyField: "cryptoCreateAccount",
111
- parser: CryptoParser.parseCryptoCreateAccount,
112
- resultField: "cryptoCreateAccount"
113
- },
114
- ACCOUNTUPDATE: {
115
- bodyField: "cryptoUpdateAccount",
116
- parser: CryptoParser.parseCryptoUpdateAccount,
117
- resultField: "cryptoUpdateAccount"
118
- },
119
- ACCOUNTDELETE: {
120
- bodyField: "cryptoDelete",
121
- parser: CryptoParser.parseCryptoDelete,
122
- resultField: "cryptoDelete"
123
- },
124
- CRYPTOTRANSFER: {
125
- bodyField: "cryptoTransfer",
126
- parser: (body) => {
127
- const result = {
128
- transfers: [],
129
- tokenTransfers: []
1
+ import { proto } from "@hashgraph/proto";
2
+ import { hasTransactionType, parseKey } from "./standards-sdk.es148.js";
3
+ import { AccountId, Long, ScheduleId } from "@hashgraph/sdk";
4
+ class ScheduleParser {
5
+ /**
6
+ * Parse Schedule Service transaction using unified dual-branch approach
7
+ * This handles both regular transactions and signed transaction variants
8
+ */
9
+ static parseScheduleTransaction(transaction, originalBytes) {
10
+ try {
11
+ if (originalBytes || transaction.toBytes) {
12
+ try {
13
+ const bytesToParse = originalBytes || transaction.toBytes();
14
+ const decoded = proto.TransactionList.decode(bytesToParse);
15
+ if (decoded.transactionList && decoded.transactionList.length > 0) {
16
+ const tx = decoded.transactionList[0];
17
+ let txBody = null;
18
+ if (tx.bodyBytes && tx.bodyBytes.length > 0) {
19
+ txBody = proto.TransactionBody.decode(tx.bodyBytes);
20
+ } else if (tx.signedTransactionBytes && tx.signedTransactionBytes.length > 0) {
21
+ const signedTx = proto.SignedTransaction.decode(
22
+ tx.signedTransactionBytes
23
+ );
24
+ if (signedTx.bodyBytes) {
25
+ txBody = proto.TransactionBody.decode(signedTx.bodyBytes);
26
+ }
27
+ }
28
+ if (txBody) {
29
+ const protoResult = this.parseFromProtobufTxBody(txBody);
30
+ if (protoResult.type && protoResult.type !== "UNKNOWN") {
31
+ return protoResult;
32
+ }
33
+ }
34
+ }
35
+ } catch (protoError) {
36
+ }
37
+ }
38
+ return this.parseFromTransactionInternals(transaction);
39
+ } catch (error) {
40
+ return {
41
+ type: "UNKNOWN",
42
+ humanReadableType: "Unknown Schedule Transaction"
130
43
  };
131
- CryptoParser.parseCryptoTransfers(body, result);
132
- return result;
133
- },
134
- resultField: "transfers",
135
- spreadResult: true
136
- },
137
- APPROVEALLOWANCE: {
138
- bodyField: "cryptoApproveAllowance",
139
- parser: CryptoParser.parseCryptoApproveAllowance,
140
- resultField: "cryptoApproveAllowance"
141
- },
142
- DELETEALLOWANCE: {
143
- bodyField: "cryptoDeleteAllowance",
144
- parser: CryptoParser.parseCryptoDeleteAllowance,
145
- resultField: "cryptoDeleteAllowance"
146
- },
147
- FILECREATE: {
148
- bodyField: "fileCreate",
149
- parser: FileParser.parseFileCreate,
150
- resultField: "fileCreate"
151
- },
152
- FILEUPDATE: {
153
- bodyField: "fileUpdate",
154
- parser: FileParser.parseFileUpdate,
155
- resultField: "fileUpdate"
156
- },
157
- FILEDELETE: {
158
- bodyField: "fileDelete",
159
- parser: FileParser.parseFileDelete,
160
- resultField: "fileDelete"
161
- },
162
- FILEAPPEND: {
163
- bodyField: "fileAppend",
164
- parser: FileParser.parseFileAppend,
165
- resultField: "fileAppend"
166
- },
167
- CONTRACTCREATE: {
168
- bodyField: "contractCreateInstance",
169
- parser: SCSParser.parseContractCreate,
170
- resultField: "contractCreate"
171
- },
172
- CONTRACTUPDATE: {
173
- bodyField: "contractUpdateInstance",
174
- parser: SCSParser.parseContractUpdate,
175
- resultField: "contractUpdate"
176
- },
177
- CONTRACTDELETE: {
178
- bodyField: "contractDeleteInstance",
179
- parser: SCSParser.parseContractDelete,
180
- resultField: "contractDelete"
181
- },
182
- CONTRACTCALL: {
183
- bodyField: "contractCall",
184
- parser: SCSParser.parseContractCall,
185
- resultField: "contractCall"
186
- },
187
- ETHEREUMTRANSACTION: {
188
- bodyField: "ethereumTransaction",
189
- parser: SCSParser.parseEthereumTransaction,
190
- resultField: "ethereumTransaction"
191
- },
192
- SCHEDULECREATE: {
193
- bodyField: "scheduleCreate",
194
- parser: ScheduleParser.parseScheduleCreateFromProto,
195
- resultField: "scheduleCreate"
196
- },
197
- SCHEDULESIGN: {
198
- bodyField: "scheduleSign",
199
- parser: ScheduleParser.parseScheduleSignFromProto,
200
- resultField: "scheduleSign"
201
- },
202
- SCHEDULEDELETE: {
203
- bodyField: "scheduleDelete",
204
- parser: ScheduleParser.parseScheduleDeleteFromProto,
205
- resultField: "scheduleDelete"
206
- },
207
- PRNG: {
208
- bodyField: "utilPrng",
209
- parser: UtilParser.parseUtilPrng,
210
- resultField: "utilPrng"
211
- },
212
- FREEZE: {
213
- bodyField: "freeze",
214
- parser: UtilParser.parseFreeze,
215
- resultField: "freeze"
216
- },
217
- SYSTEMDELETE: {
218
- bodyField: "systemDelete",
219
- parser: (body) => ({
220
- fileId: body.fileID ? `${body.fileID.shardNum}.${body.fileID.realmNum}.${body.fileID.fileNum}` : void 0,
221
- contractId: body.contractID ? `${body.contractID.shardNum}.${body.contractID.realmNum}.${body.contractID.contractNum}` : void 0,
222
- expirationTime: body.expirationTime?.seconds ? body.expirationTime.seconds.toString() : void 0
223
- }),
224
- resultField: "systemDelete"
225
- },
226
- SYSTEMUNDELETE: {
227
- bodyField: "systemUndelete",
228
- parser: (body) => ({
229
- fileId: body.fileID ? `${body.fileID.shardNum}.${body.fileID.realmNum}.${body.fileID.fileNum}` : void 0,
230
- contractId: body.contractID ? `${body.contractID.shardNum}.${body.contractID.realmNum}.${body.contractID.contractNum}` : void 0
231
- }),
232
- resultField: "systemUndelete"
233
- },
234
- TOKENCANCELAIRDROP: {
235
- bodyField: "tokenCancelAirdrop",
236
- parser: (body) => ({
237
- pendingAirdrops: body.pendingAirdrops || []
238
- }),
239
- resultField: "tokenCancelAirdrop"
240
- },
241
- TOKENCLAIMAIRDROP: {
242
- bodyField: "tokenClaimAirdrop",
243
- parser: (body) => ({
244
- pendingAirdrops: body.pendingAirdrops || []
245
- }),
246
- resultField: "tokenClaimAirdrop"
247
- },
248
- TOKENREJECT: {
249
- bodyField: "tokenReject",
250
- parser: (body) => ({
251
- owner: body.owner ? `${body.owner.shardNum}.${body.owner.realmNum}.${body.owner.accountNum}` : void 0,
252
- rejections: body.rejections || []
253
- }),
254
- resultField: "tokenReject"
255
- },
256
- TOKENUPDATENFTS: {
257
- bodyField: "tokenUpdateNfts",
258
- parser: (body) => ({
259
- tokenId: body.token ? `${body.token.shardNum}.${body.token.realmNum}.${body.token.tokenNum}` : void 0,
260
- serialNumbers: body.serialNumbers || [],
261
- metadata: body.metadata
262
- }),
263
- resultField: "tokenUpdateNfts"
264
- },
265
- TOKENWIPE: {
266
- bodyField: "tokenWipe",
267
- parser: HTSParser.parseTokenWipeAccount,
268
- resultField: "tokenWipeAccount"
269
- },
270
- CRYPTOADDLIVEHASH: {
271
- bodyField: "cryptoAddLiveHash",
272
- parser: (body) => ({
273
- accountId: body.accountID ? `${body.accountID.shardNum}.${body.accountID.realmNum}.${body.accountID.accountNum}` : void 0,
274
- liveHash: body.liveHash
275
- }),
276
- resultField: "cryptoAddLiveHash"
277
- },
278
- CRYPTODELETELIVEHASH: {
279
- bodyField: "cryptoDeleteLiveHash",
280
- parser: (body) => ({
281
- accountId: body.accountOfLiveHash ? `${body.accountOfLiveHash.shardNum}.${body.accountOfLiveHash.realmNum}.${body.accountOfLiveHash.accountNum}` : void 0,
282
- liveHashToDelete: body.liveHashToDelete
283
- }),
284
- resultField: "cryptoDeleteLiveHash"
285
- },
286
- UNCHECKEDSUBMIT: {
287
- bodyField: "uncheckedSubmit",
288
- parser: (body) => ({
289
- topicId: body.topicID ? `${body.topicID.shardNum}.${body.topicID.realmNum}.${body.topicID.topicNum}` : void 0,
290
- message: body.message
291
- }),
292
- resultField: "uncheckedSubmit"
293
- },
294
- NODECREATE: {
295
- bodyField: "nodeCreate",
296
- parser: (body) => ({
297
- accountId: body.accountId ? `${body.accountId.shardNum}.${body.accountId.realmNum}.${body.accountId.accountNum}` : void 0,
298
- description: body.description,
299
- gossipEndpoint: body.gossipEndpoint,
300
- serviceEndpoint: body.serviceEndpoint,
301
- gossipCaCertificate: body.gossipCaCertificate,
302
- grpcCertificateHash: body.grpcCertificateHash,
303
- adminKey: body.adminKey
304
- }),
305
- resultField: "nodeCreate"
306
- },
307
- NODEUPDATE: {
308
- bodyField: "nodeUpdate",
309
- parser: (body) => ({
310
- nodeId: body.nodeId?.toString(),
311
- accountId: body.accountId ? `${body.accountId.shardNum}.${body.accountId.realmNum}.${body.accountId.accountNum}` : void 0,
312
- description: body.description,
313
- gossipEndpoint: body.gossipEndpoint,
314
- serviceEndpoint: body.serviceEndpoint,
315
- gossipCaCertificate: body.gossipCaCertificate,
316
- grpcCertificateHash: body.grpcCertificateHash,
317
- adminKey: body.adminKey
318
- }),
319
- resultField: "nodeUpdate"
320
- },
321
- NODEDELETE: {
322
- bodyField: "nodeDelete",
323
- parser: (body) => ({
324
- nodeId: body.nodeId?.toString()
325
- }),
326
- resultField: "nodeDelete"
327
- },
328
- NODESTAKEUPDATE: {
329
- bodyField: "nodeStakeUpdate",
330
- parser: (body) => ({
331
- nodeId: body.nodeId?.toString(),
332
- maxStake: body.maxStake?.toString(),
333
- minStake: body.minStake?.toString(),
334
- rewardRate: body.rewardRate?.toString()
335
- }),
336
- resultField: "nodeStakeUpdate"
337
- },
338
- ATOMICBATCH: {
339
- bodyField: "atomicBatch",
340
- parser: (body) => ({
341
- transactions: body.transactions || []
342
- }),
343
- resultField: "atomicBatch"
344
- },
345
- STATESIGNATURETRANSACTION: {
346
- bodyField: "stateSignatureTransaction",
347
- parser: (body) => ({
348
- signature: body.signature,
349
- round: body.round?.toString()
350
- }),
351
- resultField: "stateSignatureTransaction"
352
- },
353
- HISTORYPROOFSIGNATURE: {
354
- bodyField: "historyProofSignature",
355
- parser: (body) => ({
356
- signature: body.signature,
357
- round: body.round?.toString()
358
- }),
359
- resultField: "historyProofSignature"
360
- },
361
- HISTORYPROOFKEYPUBLICATION: {
362
- bodyField: "historyProofKeyPublication",
363
- parser: (body) => ({
364
- publicKey: body.publicKey,
365
- round: body.round?.toString()
366
- }),
367
- resultField: "historyProofKeyPublication"
368
- },
369
- HISTORYPROOFVOTE: {
370
- bodyField: "historyProofVote",
371
- parser: (body) => ({
372
- vote: body.vote,
373
- round: body.round?.toString()
374
- }),
375
- resultField: "historyProofVote"
376
- },
377
- HINTSPREPROCESSINGVOTE: {
378
- bodyField: "hintsPreprocessingVote",
379
- parser: (body) => ({
380
- vote: body.vote,
381
- round: body.round?.toString()
382
- }),
383
- resultField: "hintsPreprocessingVote"
384
- },
385
- HINTSKEYPUBLICATION: {
386
- bodyField: "hintsKeyPublication",
387
- parser: (body) => ({
388
- publicKey: body.publicKey,
389
- round: body.round?.toString()
390
- }),
391
- resultField: "hintsKeyPublication"
392
- },
393
- HINTSPARTIALSIGNATURE: {
394
- bodyField: "hintsPartialSignature",
395
- parser: (body) => ({
396
- signature: body.signature,
397
- round: body.round?.toString()
398
- }),
399
- resultField: "hintsPartialSignature"
400
- },
401
- CRSPUBLICATION: {
402
- bodyField: "crsPublication",
403
- parser: (body) => ({
404
- crs: body.crs,
405
- round: body.round?.toString()
406
- }),
407
- resultField: "crsPublication"
44
+ }
45
+ }
46
+ /**
47
+ * Parse schedule transaction from protobuf TransactionBody
48
+ * Handles all schedule operations from decoded protobuf data
49
+ */
50
+ static parseFromProtobufTxBody(txBody) {
51
+ if (txBody.scheduleCreate) {
52
+ const scheduleCreate = this.parseScheduleCreateFromProto(
53
+ txBody.scheduleCreate
54
+ );
55
+ if (scheduleCreate) {
56
+ return {
57
+ type: "SCHEDULECREATE",
58
+ humanReadableType: "Schedule Create",
59
+ scheduleCreate
60
+ };
61
+ }
62
+ }
63
+ if (txBody.scheduleSign) {
64
+ const scheduleSign = this.parseScheduleSignFromProto(txBody.scheduleSign);
65
+ if (scheduleSign) {
66
+ return {
67
+ type: "SCHEDULESIGN",
68
+ humanReadableType: "Schedule Sign",
69
+ scheduleSign
70
+ };
71
+ }
72
+ }
73
+ if (txBody.scheduleDelete) {
74
+ const scheduleDelete = this.parseScheduleDeleteFromProto(
75
+ txBody.scheduleDelete
76
+ );
77
+ if (scheduleDelete) {
78
+ return {
79
+ type: "SCHEDULEDELETE",
80
+ humanReadableType: "Schedule Delete",
81
+ scheduleDelete
82
+ };
83
+ }
84
+ }
85
+ return {};
86
+ }
87
+ /**
88
+ * Extract schedule data from Transaction internal fields
89
+ * This handles cases where data is stored in Transaction object internals
90
+ */
91
+ static parseFromTransactionInternals(transaction) {
92
+ try {
93
+ const tx = transaction;
94
+ if (hasTransactionType(transaction, "scheduleCreate")) {
95
+ const scheduleCreate = {
96
+ scheduledTransactionBody: Buffer.from(
97
+ tx._scheduledTransaction
98
+ ).toString("base64"),
99
+ memo: tx._scheduleMemo,
100
+ adminKey: tx._adminKey ? parseKey(tx._adminKey) : void 0,
101
+ payerAccountId: tx._payerAccountId?.toString(),
102
+ expirationTime: tx._expirationTime?.toString(),
103
+ waitForExpiry: tx._waitForExpiry || false
104
+ };
105
+ return {
106
+ type: "SCHEDULECREATE",
107
+ humanReadableType: "Schedule Create",
108
+ scheduleCreate
109
+ };
110
+ }
111
+ if (hasTransactionType(transaction, "scheduleSign")) {
112
+ const scheduleSign = {
113
+ scheduleId: tx._scheduleId.toString()
114
+ };
115
+ return {
116
+ type: "SCHEDULESIGN",
117
+ humanReadableType: "Schedule Sign",
118
+ scheduleSign
119
+ };
120
+ }
121
+ if (hasTransactionType(transaction, "scheduleDelete")) {
122
+ const scheduleDelete = {
123
+ scheduleId: tx._scheduleId.toString()
124
+ };
125
+ return {
126
+ type: "SCHEDULEDELETE",
127
+ humanReadableType: "Schedule Delete",
128
+ scheduleDelete
129
+ };
130
+ }
131
+ return {};
132
+ } catch (error) {
133
+ return {};
134
+ }
135
+ }
136
+ /**
137
+ * Parse Schedule Create from protobuf data
138
+ */
139
+ static parseScheduleCreateFromProto(body) {
140
+ if (!body) return void 0;
141
+ const data = {};
142
+ if (body.scheduledTransactionBody) {
143
+ const schedBytes = proto.SchedulableTransactionBody.encode(
144
+ proto.SchedulableTransactionBody.create(body.scheduledTransactionBody)
145
+ ).finish();
146
+ data.scheduledTransactionBody = Buffer.from(schedBytes).toString("base64");
147
+ }
148
+ if (body.memo) {
149
+ data.memo = body.memo;
150
+ }
151
+ if (body.adminKey) {
152
+ data.adminKey = parseKey(body.adminKey);
153
+ }
154
+ if (body.payerAccountID) {
155
+ data.payerAccountId = new AccountId(
156
+ body.payerAccountID.shardNum ?? 0,
157
+ body.payerAccountID.realmNum ?? 0,
158
+ body.payerAccountID.accountNum ?? 0
159
+ ).toString();
160
+ }
161
+ if (body.expirationTime?.seconds) {
162
+ data.expirationTime = `${Long.fromValue(
163
+ body.expirationTime.seconds
164
+ ).toString()}.${body.expirationTime.nanos ?? 0}`;
165
+ }
166
+ if (body.waitForExpiry !== void 0) {
167
+ data.waitForExpiry = body.waitForExpiry;
168
+ }
169
+ return data;
170
+ }
171
+ /**
172
+ * Parse Schedule Sign from protobuf data
173
+ */
174
+ static parseScheduleSignFromProto(body) {
175
+ if (!body) return void 0;
176
+ const data = {};
177
+ if (body.scheduleID) {
178
+ data.scheduleId = new ScheduleId(
179
+ body.scheduleID.shardNum ?? 0,
180
+ body.scheduleID.realmNum ?? 0,
181
+ body.scheduleID.scheduleNum ?? 0
182
+ ).toString();
183
+ }
184
+ return data;
185
+ }
186
+ /**
187
+ * Parse Schedule Delete from protobuf data
188
+ */
189
+ static parseScheduleDeleteFromProto(body) {
190
+ if (!body) return void 0;
191
+ const data = {};
192
+ if (body.scheduleID) {
193
+ data.scheduleId = new ScheduleId(
194
+ body.scheduleID.shardNum ?? 0,
195
+ body.scheduleID.realmNum ?? 0,
196
+ body.scheduleID.scheduleNum ?? 0
197
+ ).toString();
198
+ }
199
+ return data;
200
+ }
201
+ /**
202
+ * Legacy method: Parse schedule create transaction
203
+ * @deprecated Use parseScheduleTransaction instead
204
+ */
205
+ static parseScheduleCreate(transaction) {
206
+ try {
207
+ const result = this.parseScheduleTransaction(transaction);
208
+ return result.scheduleCreate || null;
209
+ } catch (error) {
210
+ console.warn("[ScheduleParser] Failed to parse schedule create:", error);
211
+ return null;
212
+ }
213
+ }
214
+ /**
215
+ * Legacy method: Parse schedule sign transaction
216
+ * @deprecated Use parseScheduleTransaction instead
217
+ */
218
+ static parseScheduleSign(transaction) {
219
+ try {
220
+ const result = this.parseScheduleTransaction(transaction);
221
+ return result.scheduleSign || null;
222
+ } catch (error) {
223
+ console.warn("[ScheduleParser] Failed to parse schedule sign:", error);
224
+ return null;
225
+ }
226
+ }
227
+ /**
228
+ * Legacy method: Parse schedule delete transaction
229
+ * @deprecated Use parseScheduleTransaction instead
230
+ */
231
+ static parseScheduleDelete(transaction) {
232
+ try {
233
+ const result = this.parseScheduleTransaction(transaction);
234
+ return result.scheduleDelete || null;
235
+ } catch (error) {
236
+ console.warn("[ScheduleParser] Failed to parse schedule delete:", error);
237
+ return null;
238
+ }
239
+ }
240
+ /**
241
+ * Parse schedule info from transaction body (for scheduled transactions)
242
+ */
243
+ static extractScheduleInfo(transaction) {
244
+ try {
245
+ const transactionBody = transaction._transactionBody;
246
+ if (transactionBody?.scheduleRef) {
247
+ return {
248
+ isScheduled: true,
249
+ scheduleRef: transactionBody.scheduleRef.toString()
250
+ };
251
+ }
252
+ const tx = transaction;
253
+ if (tx._scheduleId || tx.scheduleId) {
254
+ return {
255
+ isScheduled: true,
256
+ scheduleRef: (tx._scheduleId || tx.scheduleId)?.toString()
257
+ };
258
+ }
259
+ return { isScheduled: false };
260
+ } catch (error) {
261
+ return { isScheduled: false };
262
+ }
263
+ }
264
+ /**
265
+ * Parse a scheduled transaction body to extract the inner transaction
266
+ * This is used when a schedule contains another transaction to be executed
267
+ */
268
+ static parseScheduledTransactionBody(scheduledTxBytes) {
269
+ try {
270
+ let bytes;
271
+ if (scheduledTxBytes.startsWith("0x")) {
272
+ const hexString = scheduledTxBytes.slice(2);
273
+ bytes = new Uint8Array(Buffer.from(hexString, "hex"));
274
+ } else {
275
+ bytes = new Uint8Array(Buffer.from(scheduledTxBytes, "base64"));
276
+ }
277
+ const schedulableBody = proto.SchedulableTransactionBody.decode(bytes);
278
+ const txType = Object.keys(schedulableBody).find(
279
+ (key) => schedulableBody[key] !== null && key !== "transactionFee" && key !== "memo"
280
+ );
281
+ if (txType) {
282
+ return {
283
+ type: txType.toUpperCase(),
284
+ body: schedulableBody[txType],
285
+ memo: schedulableBody.memo,
286
+ transactionFee: schedulableBody.transactionFee?.toString()
287
+ };
288
+ }
289
+ return null;
290
+ } catch (error) {
291
+ console.warn(
292
+ "[ScheduleParser] Failed to parse scheduled transaction body:",
293
+ error
294
+ );
295
+ return null;
296
+ }
297
+ }
298
+ /**
299
+ * Parse Schedule Service transaction from Transaction object
300
+ * This is the unified entry point that delegates to the comprehensive parsing logic
301
+ */
302
+ static parseFromTransactionObject(transaction) {
303
+ return this.parseScheduleTransaction(transaction);
408
304
  }
409
- };
410
- function getParserConfig(transactionType) {
411
- return transactionParserRegistry[transactionType];
412
- }
413
- function isTransactionTypeSupported(transactionType) {
414
- return transactionType in transactionParserRegistry;
415
- }
416
- function getSupportedTransactionTypes() {
417
- return Object.keys(transactionParserRegistry);
418
305
  }
419
306
  export {
420
- getParserConfig,
421
- getSupportedTransactionTypes,
422
- isTransactionTypeSupported,
423
- transactionParserRegistry
307
+ ScheduleParser
424
308
  };
425
309
  //# sourceMappingURL=standards-sdk.es122.js.map