@hashgraphonline/standards-sdk 0.1.137 → 0.1.138-feat-hcs-21-package-std.canary.9db1bab.34

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 (223) hide show
  1. package/dist/cjs/hcs-21/base-client.d.ts +33 -0
  2. package/dist/cjs/hcs-21/base-client.d.ts.map +1 -0
  3. package/dist/cjs/hcs-21/browser.d.ts +20 -0
  4. package/dist/cjs/hcs-21/browser.d.ts.map +1 -0
  5. package/dist/cjs/hcs-21/errors.d.ts +6 -0
  6. package/dist/cjs/hcs-21/errors.d.ts.map +1 -0
  7. package/dist/cjs/hcs-21/index.d.ts +7 -0
  8. package/dist/cjs/hcs-21/index.d.ts.map +1 -0
  9. package/dist/cjs/hcs-21/sdk.d.ts +48 -0
  10. package/dist/cjs/hcs-21/sdk.d.ts.map +1 -0
  11. package/dist/cjs/hcs-21/tx.d.ts +20 -0
  12. package/dist/cjs/hcs-21/tx.d.ts.map +1 -0
  13. package/dist/cjs/hcs-21/types.d.ts +89 -0
  14. package/dist/cjs/hcs-21/types.d.ts.map +1 -0
  15. package/dist/cjs/index.d.ts +1 -0
  16. package/dist/cjs/index.d.ts.map +1 -1
  17. package/dist/cjs/services/registry-broker/client.d.ts.map +1 -1
  18. package/dist/cjs/services/types.d.ts +1 -1
  19. package/dist/cjs/services/types.d.ts.map +1 -1
  20. package/dist/cjs/standards-sdk.cjs +2 -2
  21. package/dist/cjs/standards-sdk.cjs.map +1 -1
  22. package/dist/es/hcs-21/base-client.d.ts +33 -0
  23. package/dist/es/hcs-21/base-client.d.ts.map +1 -0
  24. package/dist/es/hcs-21/browser.d.ts +20 -0
  25. package/dist/es/hcs-21/browser.d.ts.map +1 -0
  26. package/dist/es/hcs-21/errors.d.ts +6 -0
  27. package/dist/es/hcs-21/errors.d.ts.map +1 -0
  28. package/dist/es/hcs-21/index.d.ts +7 -0
  29. package/dist/es/hcs-21/index.d.ts.map +1 -0
  30. package/dist/es/hcs-21/sdk.d.ts +48 -0
  31. package/dist/es/hcs-21/sdk.d.ts.map +1 -0
  32. package/dist/es/hcs-21/tx.d.ts +20 -0
  33. package/dist/es/hcs-21/tx.d.ts.map +1 -0
  34. package/dist/es/hcs-21/types.d.ts +89 -0
  35. package/dist/es/hcs-21/types.d.ts.map +1 -0
  36. package/dist/es/index.d.ts +1 -0
  37. package/dist/es/index.d.ts.map +1 -1
  38. package/dist/es/services/registry-broker/client.d.ts.map +1 -1
  39. package/dist/es/services/types.d.ts +1 -1
  40. package/dist/es/services/types.d.ts.map +1 -1
  41. package/dist/es/standards-sdk.es.js +67 -48
  42. package/dist/es/standards-sdk.es.js.map +1 -1
  43. package/dist/es/standards-sdk.es10.js +2 -2
  44. package/dist/es/standards-sdk.es100.js +231 -28
  45. package/dist/es/standards-sdk.es100.js.map +1 -1
  46. package/dist/es/standards-sdk.es101.js +109 -18
  47. package/dist/es/standards-sdk.es101.js.map +1 -1
  48. package/dist/es/standards-sdk.es102.js +32 -158
  49. package/dist/es/standards-sdk.es102.js.map +1 -1
  50. package/dist/es/standards-sdk.es103.js +80 -204
  51. package/dist/es/standards-sdk.es103.js.map +1 -1
  52. package/dist/es/standards-sdk.es104.js +21 -780
  53. package/dist/es/standards-sdk.es104.js.map +1 -1
  54. package/dist/es/standards-sdk.es105.js +140 -11
  55. package/dist/es/standards-sdk.es105.js.map +1 -1
  56. package/dist/es/standards-sdk.es106.js +29 -567
  57. package/dist/es/standards-sdk.es106.js.map +1 -1
  58. package/dist/es/standards-sdk.es107.js +17 -597
  59. package/dist/es/standards-sdk.es107.js.map +1 -1
  60. package/dist/es/standards-sdk.es108.js +159 -12
  61. package/dist/es/standards-sdk.es108.js.map +1 -1
  62. package/dist/es/standards-sdk.es109.js +208 -2
  63. package/dist/es/standards-sdk.es109.js.map +1 -1
  64. package/dist/es/standards-sdk.es110.js +774 -67
  65. package/dist/es/standards-sdk.es110.js.map +1 -1
  66. package/dist/es/standards-sdk.es111.js +11 -37
  67. package/dist/es/standards-sdk.es111.js.map +1 -1
  68. package/dist/es/standards-sdk.es112.js +567 -2
  69. package/dist/es/standards-sdk.es112.js.map +1 -1
  70. package/dist/es/standards-sdk.es113.js +576 -197
  71. package/dist/es/standards-sdk.es113.js.map +1 -1
  72. package/dist/es/standards-sdk.es114.js +12 -1139
  73. package/dist/es/standards-sdk.es114.js.map +1 -1
  74. package/dist/es/standards-sdk.es115.js +2 -306
  75. package/dist/es/standards-sdk.es115.js.map +1 -1
  76. package/dist/es/standards-sdk.es116.js +79 -418
  77. package/dist/es/standards-sdk.es116.js.map +1 -1
  78. package/dist/es/standards-sdk.es117.js +35 -351
  79. package/dist/es/standards-sdk.es117.js.map +1 -1
  80. package/dist/es/standards-sdk.es118.js +2 -761
  81. package/dist/es/standards-sdk.es118.js.map +1 -1
  82. package/dist/es/standards-sdk.es119.js +204 -185
  83. package/dist/es/standards-sdk.es119.js.map +1 -1
  84. package/dist/es/standards-sdk.es12.js +1 -1
  85. package/dist/es/standards-sdk.es120.js +1055 -1482
  86. package/dist/es/standards-sdk.es120.js.map +1 -1
  87. package/dist/es/standards-sdk.es121.js +265 -2024
  88. package/dist/es/standards-sdk.es121.js.map +1 -1
  89. package/dist/es/standards-sdk.es122.js +420 -50
  90. package/dist/es/standards-sdk.es122.js.map +1 -1
  91. package/dist/es/standards-sdk.es123.js +350 -82
  92. package/dist/es/standards-sdk.es123.js.map +1 -1
  93. package/dist/es/standards-sdk.es124.js +741 -139
  94. package/dist/es/standards-sdk.es124.js.map +1 -1
  95. package/dist/es/standards-sdk.es125.js +204 -7
  96. package/dist/es/standards-sdk.es125.js.map +1 -1
  97. package/dist/es/standards-sdk.es126.js +1533 -52
  98. package/dist/es/standards-sdk.es126.js.map +1 -1
  99. package/dist/es/standards-sdk.es127.js +2077 -59
  100. package/dist/es/standards-sdk.es127.js.map +1 -1
  101. package/dist/es/standards-sdk.es128.js +52 -28
  102. package/dist/es/standards-sdk.es128.js.map +1 -1
  103. package/dist/es/standards-sdk.es129.js +80 -131
  104. package/dist/es/standards-sdk.es129.js.map +1 -1
  105. package/dist/es/standards-sdk.es13.js +1 -1
  106. package/dist/es/standards-sdk.es130.js +152 -35
  107. package/dist/es/standards-sdk.es130.js.map +1 -1
  108. package/dist/es/standards-sdk.es131.js +7 -17
  109. package/dist/es/standards-sdk.es131.js.map +1 -1
  110. package/dist/es/standards-sdk.es132.js +53 -12241
  111. package/dist/es/standards-sdk.es132.js.map +1 -1
  112. package/dist/es/standards-sdk.es133.js +65 -694
  113. package/dist/es/standards-sdk.es133.js.map +1 -1
  114. package/dist/es/standards-sdk.es134.js +28 -172
  115. package/dist/es/standards-sdk.es134.js.map +1 -1
  116. package/dist/es/standards-sdk.es135.js +115 -299
  117. package/dist/es/standards-sdk.es135.js.map +1 -1
  118. package/dist/es/standards-sdk.es136.js +36 -340
  119. package/dist/es/standards-sdk.es136.js.map +1 -1
  120. package/dist/es/standards-sdk.es137.js +12216 -395
  121. package/dist/es/standards-sdk.es137.js.map +1 -1
  122. package/dist/es/standards-sdk.es138.js +694 -331
  123. package/dist/es/standards-sdk.es138.js.map +1 -1
  124. package/dist/es/standards-sdk.es139.js +15 -74
  125. package/dist/es/standards-sdk.es139.js.map +1 -1
  126. package/dist/es/standards-sdk.es14.js +1 -1
  127. package/dist/es/standards-sdk.es141.js +1 -1
  128. package/dist/es/standards-sdk.es142.js +175 -0
  129. package/dist/es/standards-sdk.es142.js.map +1 -0
  130. package/dist/es/standards-sdk.es143.js +325 -0
  131. package/dist/es/standards-sdk.es143.js.map +1 -0
  132. package/dist/es/standards-sdk.es144.js +349 -0
  133. package/dist/es/standards-sdk.es144.js.map +1 -0
  134. package/dist/es/standards-sdk.es145.js +456 -0
  135. package/dist/es/standards-sdk.es145.js.map +1 -0
  136. package/dist/es/standards-sdk.es146.js +334 -0
  137. package/dist/es/standards-sdk.es146.js.map +1 -0
  138. package/dist/es/standards-sdk.es147.js +79 -0
  139. package/dist/es/standards-sdk.es147.js.map +1 -0
  140. package/dist/es/standards-sdk.es15.js +1 -1
  141. package/dist/es/standards-sdk.es16.js +1 -1
  142. package/dist/es/standards-sdk.es17.js +5 -5
  143. package/dist/es/standards-sdk.es19.js +12 -12
  144. package/dist/es/standards-sdk.es20.js +9 -9
  145. package/dist/es/standards-sdk.es21.js +1 -1
  146. package/dist/es/standards-sdk.es22.js +1 -1
  147. package/dist/es/standards-sdk.es23.js +1 -1
  148. package/dist/es/standards-sdk.es24.js +1 -1
  149. package/dist/es/standards-sdk.es25.js +1 -1
  150. package/dist/es/standards-sdk.es26.js +1 -1
  151. package/dist/es/standards-sdk.es27.js +1 -1
  152. package/dist/es/standards-sdk.es28.js +12 -12
  153. package/dist/es/standards-sdk.es3.js +2 -2
  154. package/dist/es/standards-sdk.es31.js +2 -2
  155. package/dist/es/standards-sdk.es32.js +4 -4
  156. package/dist/es/standards-sdk.es33.js +1 -1
  157. package/dist/es/standards-sdk.es36.js +6 -6
  158. package/dist/es/standards-sdk.es37.js +4 -4
  159. package/dist/es/standards-sdk.es38.js +2 -2
  160. package/dist/es/standards-sdk.es39.js +2 -2
  161. package/dist/es/standards-sdk.es40.js +1 -1
  162. package/dist/es/standards-sdk.es41.js +1 -1
  163. package/dist/es/standards-sdk.es42.js +2 -2
  164. package/dist/es/standards-sdk.es47.js +1 -1
  165. package/dist/es/standards-sdk.es5.js +2 -2
  166. package/dist/es/standards-sdk.es52.js +1 -1
  167. package/dist/es/standards-sdk.es54.js +1 -1
  168. package/dist/es/standards-sdk.es57.js +1 -1
  169. package/dist/es/standards-sdk.es6.js +2 -2
  170. package/dist/es/standards-sdk.es61.js +7 -7
  171. package/dist/es/standards-sdk.es65.js +2 -2
  172. package/dist/es/standards-sdk.es66.js +3 -3
  173. package/dist/es/standards-sdk.es69.js +2 -2
  174. package/dist/es/standards-sdk.es7.js +2 -2
  175. package/dist/es/standards-sdk.es70.js +3 -3
  176. package/dist/es/standards-sdk.es71.js +2 -2
  177. package/dist/es/standards-sdk.es72.js +1 -1
  178. package/dist/es/standards-sdk.es75.js +2 -2
  179. package/dist/es/standards-sdk.es77.js +2 -2
  180. package/dist/es/standards-sdk.es78.js +4 -4
  181. package/dist/es/standards-sdk.es79.js +1 -1
  182. package/dist/es/standards-sdk.es8.js +1 -1
  183. package/dist/es/standards-sdk.es80.js +41 -27
  184. package/dist/es/standards-sdk.es80.js.map +1 -1
  185. package/dist/es/standards-sdk.es81.js +6 -78
  186. package/dist/es/standards-sdk.es81.js.map +1 -1
  187. package/dist/es/standards-sdk.es82.js +27 -64
  188. package/dist/es/standards-sdk.es82.js.map +1 -1
  189. package/dist/es/standards-sdk.es83.js +69 -23
  190. package/dist/es/standards-sdk.es83.js.map +1 -1
  191. package/dist/es/standards-sdk.es84.js +165 -23
  192. package/dist/es/standards-sdk.es84.js.map +1 -1
  193. package/dist/es/standards-sdk.es85.js +31 -166
  194. package/dist/es/standards-sdk.es85.js.map +1 -1
  195. package/dist/es/standards-sdk.es86.js +24 -127
  196. package/dist/es/standards-sdk.es86.js.map +1 -1
  197. package/dist/es/standards-sdk.es87.js +65 -142
  198. package/dist/es/standards-sdk.es87.js.map +1 -1
  199. package/dist/es/standards-sdk.es88.js +52 -127
  200. package/dist/es/standards-sdk.es88.js.map +1 -1
  201. package/dist/es/standards-sdk.es89.js +26 -41
  202. package/dist/es/standards-sdk.es89.js.map +1 -1
  203. package/dist/es/standards-sdk.es90.js +23 -261
  204. package/dist/es/standards-sdk.es90.js.map +1 -1
  205. package/dist/es/standards-sdk.es91.js +162 -93
  206. package/dist/es/standards-sdk.es91.js.map +1 -1
  207. package/dist/es/standards-sdk.es92.js +112 -83
  208. package/dist/es/standards-sdk.es92.js.map +1 -1
  209. package/dist/es/standards-sdk.es93.js +156 -28
  210. package/dist/es/standards-sdk.es93.js.map +1 -1
  211. package/dist/es/standards-sdk.es94.js +133 -225
  212. package/dist/es/standards-sdk.es94.js.map +1 -1
  213. package/dist/es/standards-sdk.es95.js +40 -108
  214. package/dist/es/standards-sdk.es95.js.map +1 -1
  215. package/dist/es/standards-sdk.es96.js +253 -24
  216. package/dist/es/standards-sdk.es96.js.map +1 -1
  217. package/dist/es/standards-sdk.es97.js +96 -80
  218. package/dist/es/standards-sdk.es97.js.map +1 -1
  219. package/dist/es/standards-sdk.es98.js +91 -21
  220. package/dist/es/standards-sdk.es98.js.map +1 -1
  221. package/dist/es/standards-sdk.es99.js +28 -141
  222. package/dist/es/standards-sdk.es99.js.map +1 -1
  223. package/package.json +62 -59
@@ -1,349 +1,45 @@
1
- import { AccountId, Hbar, Long, HbarUnit, TokenId } from "@hashgraph/sdk";
2
- import { parseKey } from "./standards-sdk.es139.js";
3
- class CryptoParser {
4
- static parseCryptoTransfers(cryptoTransfer, result) {
5
- if (cryptoTransfer.transfers?.accountAmounts) {
6
- result.transfers = cryptoTransfer.transfers.accountAmounts.map((aa) => {
7
- const accountId = new AccountId(
8
- aa.accountID.shardNum ?? 0,
9
- aa.accountID.realmNum ?? 0,
10
- aa.accountID.accountNum ?? 0
11
- );
12
- const hbarAmount = Hbar.fromTinybars(Long.fromValue(aa.amount));
13
- return {
14
- accountId: accountId.toString(),
15
- amount: hbarAmount.toString(HbarUnit.Hbar),
16
- isDecimal: true
17
- };
18
- });
19
- }
20
- if (cryptoTransfer.tokenTransfers) {
21
- for (const tokenTransferList of cryptoTransfer.tokenTransfers) {
22
- const tokenId = new TokenId(
23
- tokenTransferList.token.shardNum ?? 0,
24
- tokenTransferList.token.realmNum ?? 0,
25
- tokenTransferList.token.tokenNum ?? 0
26
- );
27
- if (tokenTransferList.transfers) {
28
- for (const transfer of tokenTransferList.transfers) {
29
- const accountId = new AccountId(
30
- transfer.accountID.shardNum ?? 0,
31
- transfer.accountID.realmNum ?? 0,
32
- transfer.accountID.accountNum ?? 0
33
- );
34
- const tokenAmount = Long.fromValue(transfer.amount).toNumber();
35
- result.tokenTransfers.push({
36
- tokenId: tokenId.toString(),
37
- accountId: accountId.toString(),
38
- amount: tokenAmount
39
- });
40
- }
41
- }
42
- }
43
- }
44
- }
45
- static parseCryptoDelete(body) {
46
- if (!body) return void 0;
47
- const data = {};
48
- if (body.deleteAccountID) {
49
- data.deleteAccountId = new AccountId(
50
- body.deleteAccountID.shardNum ?? 0,
51
- body.deleteAccountID.realmNum ?? 0,
52
- body.deleteAccountID.accountNum ?? 0
53
- ).toString();
54
- }
55
- if (body.transferAccountID) {
56
- data.transferAccountId = new AccountId(
57
- body.transferAccountID.shardNum ?? 0,
58
- body.transferAccountID.realmNum ?? 0,
59
- body.transferAccountID.accountNum ?? 0
60
- ).toString();
61
- }
62
- return data;
63
- }
64
- static parseCryptoCreateAccount(body) {
65
- if (!body) return void 0;
66
- const data = {};
67
- if (body.initialBalance) {
68
- data.initialBalance = Hbar.fromTinybars(
69
- Long.fromValue(body.initialBalance)
70
- ).toString(HbarUnit.Hbar);
71
- }
72
- if (body.key) {
73
- data.key = parseKey(body.key);
74
- }
75
- if (body.receiverSigRequired !== void 0) {
76
- data.receiverSigRequired = body.receiverSigRequired;
77
- }
78
- if (body.autoRenewPeriod?.seconds) {
79
- data.autoRenewPeriod = Long.fromValue(
80
- body.autoRenewPeriod.seconds
81
- ).toString();
82
- }
83
- if (body.memo) {
84
- data.memo = body.memo;
85
- }
86
- if (body.maxAutomaticTokenAssociations !== void 0) {
87
- data.maxAutomaticTokenAssociations = body.maxAutomaticTokenAssociations;
88
- }
89
- if (body.stakedAccountId) {
90
- data.stakedAccountId = new AccountId(
91
- body.stakedAccountId.shardNum ?? 0,
92
- body.stakedAccountId.realmNum ?? 0,
93
- body.stakedAccountId.accountNum ?? 0
94
- ).toString();
95
- } else if (body.stakedNodeId !== null && body.stakedNodeId !== void 0) {
96
- data.stakedNodeId = Long.fromValue(body.stakedNodeId).toString();
97
- }
98
- if (body.declineReward !== void 0) {
99
- data.declineReward = body.declineReward;
100
- }
101
- if (body.alias && body.alias.length > 0) {
102
- data.alias = Buffer.from(body.alias).toString("hex");
103
- }
104
- return data;
105
- }
106
- static parseCryptoUpdateAccount(body) {
107
- if (!body) return void 0;
108
- const data = {};
109
- if (body.accountIDToUpdate) {
110
- data.accountIdToUpdate = new AccountId(
111
- body.accountIDToUpdate.shardNum ?? 0,
112
- body.accountIDToUpdate.realmNum ?? 0,
113
- body.accountIDToUpdate.accountNum ?? 0
114
- ).toString();
115
- }
116
- if (body.key) {
117
- data.key = parseKey(body.key);
118
- }
119
- if (body.expirationTime?.seconds) {
120
- data.expirationTime = `${Long.fromValue(
121
- body.expirationTime.seconds
122
- ).toString()}.${body.expirationTime.nanos}`;
123
- }
124
- if (body.receiverSigRequired !== null && body.receiverSigRequired !== void 0) {
125
- data.receiverSigRequired = Boolean(body.receiverSigRequired);
126
- }
127
- if (body.autoRenewPeriod?.seconds) {
128
- data.autoRenewPeriod = Long.fromValue(
129
- body.autoRenewPeriod.seconds
130
- ).toString();
131
- }
132
- if (body.memo?.value !== void 0) {
133
- data.memo = body.memo.value;
134
- }
135
- if (body.maxAutomaticTokenAssociations?.value !== void 0) {
136
- data.maxAutomaticTokenAssociations = body.maxAutomaticTokenAssociations.value;
137
- }
138
- if (body.stakedAccountId) {
139
- data.stakedAccountId = new AccountId(
140
- body.stakedAccountId.shardNum ?? 0,
141
- body.stakedAccountId.realmNum ?? 0,
142
- body.stakedAccountId.accountNum ?? 0
143
- ).toString();
144
- data.stakedNodeId = void 0;
145
- } else if (body.stakedNodeId !== null && body.stakedNodeId !== void 0) {
146
- data.stakedNodeId = Long.fromValue(body.stakedNodeId).toString();
147
- data.stakedAccountId = void 0;
148
- } else {
149
- data.stakedAccountId = void 0;
150
- data.stakedNodeId = void 0;
151
- }
152
- if (body.declineReward !== null && body.declineReward !== void 0) {
153
- data.declineReward = Boolean(body.declineReward);
154
- }
155
- return data;
156
- }
157
- static parseCryptoApproveAllowance(body) {
158
- if (!body) return void 0;
159
- const data = {};
160
- if (body.cryptoAllowances && body.cryptoAllowances.length > 0) {
161
- data.hbarAllowances = body.cryptoAllowances.map((a) => ({
162
- ownerAccountId: new AccountId(
163
- a.owner.shardNum ?? 0,
164
- a.owner.realmNum ?? 0,
165
- a.owner.accountNum ?? 0
166
- ).toString(),
167
- spenderAccountId: new AccountId(
168
- a.spender.shardNum ?? 0,
169
- a.spender.realmNum ?? 0,
170
- a.spender.accountNum ?? 0
171
- ).toString(),
172
- amount: Hbar.fromTinybars(Long.fromValue(a.amount)).toString(
173
- HbarUnit.Hbar
174
- )
175
- }));
176
- }
177
- if (body.tokenAllowances && body.tokenAllowances.length > 0) {
178
- data.tokenAllowances = body.tokenAllowances.map((a) => ({
179
- tokenId: new TokenId(
180
- a.tokenId.shardNum ?? 0,
181
- a.tokenId.realmNum ?? 0,
182
- a.tokenId.tokenNum ?? 0
183
- ).toString(),
184
- ownerAccountId: new AccountId(
185
- a.owner.shardNum ?? 0,
186
- a.owner.realmNum ?? 0,
187
- a.owner.accountNum ?? 0
188
- ).toString(),
189
- spenderAccountId: new AccountId(
190
- a.spender.shardNum ?? 0,
191
- a.spender.realmNum ?? 0,
192
- a.spender.accountNum ?? 0
193
- ).toString(),
194
- amount: Long.fromValue(a.amount).toString()
195
- }));
196
- }
197
- if (body.nftAllowances && body.nftAllowances.length > 0) {
198
- data.nftAllowances = body.nftAllowances.map((a) => {
199
- const allowance = {};
200
- if (a.tokenId)
201
- allowance.tokenId = new TokenId(
202
- a.tokenId.shardNum ?? 0,
203
- a.tokenId.realmNum ?? 0,
204
- a.tokenId.tokenNum ?? 0
205
- ).toString();
206
- if (a.owner)
207
- allowance.ownerAccountId = new AccountId(
208
- a.owner.shardNum ?? 0,
209
- a.owner.realmNum ?? 0,
210
- a.owner.accountNum ?? 0
211
- ).toString();
212
- if (a.spender)
213
- allowance.spenderAccountId = new AccountId(
214
- a.spender.shardNum ?? 0,
215
- a.spender.realmNum ?? 0,
216
- a.spender.accountNum ?? 0
217
- ).toString();
218
- if (a.serialNumbers && a.serialNumbers.length > 0)
219
- allowance.serialNumbers = a.serialNumbers.map(
220
- (sn) => Long.fromValue(sn).toString()
221
- );
222
- if (a.approvedForAll?.value !== void 0)
223
- allowance.approvedForAll = a.approvedForAll.value;
224
- if (a.delegatingSpender)
225
- allowance.delegatingSpender = new AccountId(
226
- a.delegatingSpender.shardNum ?? 0,
227
- a.delegatingSpender.realmNum ?? 0,
228
- a.delegatingSpender.accountNum ?? 0
229
- ).toString();
230
- return allowance;
231
- });
232
- }
233
- return data;
234
- }
235
- static parseCryptoDeleteAllowance(body) {
236
- if (!body) return void 0;
237
- const data = {};
238
- if (body.nftAllowances && body.nftAllowances.length > 0) {
239
- data.nftAllowancesToRemove = body.nftAllowances.map((a) => ({
240
- ownerAccountId: new AccountId(
241
- a.owner.shardNum ?? 0,
242
- a.owner.realmNum ?? 0,
243
- a.owner.accountNum ?? 0
244
- ).toString(),
245
- tokenId: new TokenId(
246
- a.tokenId.shardNum ?? 0,
247
- a.tokenId.realmNum ?? 0,
248
- a.tokenId.tokenNum ?? 0
249
- ).toString(),
250
- serialNumbers: a.serialNumbers ? a.serialNumbers.map((sn) => Long.fromValue(sn).toString()) : []
251
- }));
252
- }
253
- return data;
254
- }
255
- /**
256
- * Extract HBAR transfers from Transaction object
257
- */
258
- static extractHbarTransfersFromTransaction(transaction) {
259
- const transfers = [];
260
- try {
261
- const hbarTransfers = transaction._hbarTransfers;
262
- if (Array.isArray(hbarTransfers)) {
263
- hbarTransfers.forEach((transfer) => {
264
- if (transfer.accountId && transfer.amount) {
265
- const amountInTinybars = transfer.amount.toTinybars();
266
- const amountInHbar = Number(amountInTinybars) / 1e8;
267
- transfers.push({
268
- accountId: transfer.accountId.toString(),
269
- amount: amountInHbar
270
- });
271
- }
272
- });
1
+ import { TopicMessageSubmitTransaction, TopicId, TopicCreateTransaction, PublicKey, KeyList } from "@hashgraph/sdk";
2
+ function encodeHcs2RegistryMemo(indexedFlag, ttl) {
3
+ return `hcs-2:${indexedFlag}:${ttl}`;
4
+ }
5
+ function buildTopicCreateTx(params) {
6
+ const { memo, adminKey, submitKey, operatorPublicKey } = params;
7
+ const tx = new TopicCreateTransaction().setTopicMemo(memo);
8
+ const coerceKey = (k) => {
9
+ if (!k) return void 0;
10
+ if (k instanceof PublicKey || k instanceof KeyList) return k;
11
+ if (typeof k === "boolean") {
12
+ return k ? operatorPublicKey : void 0;
13
+ }
14
+ if (typeof k === "string") {
15
+ try {
16
+ return PublicKey.fromString(k);
17
+ } catch {
18
+ return void 0;
273
19
  }
274
- } catch (error) {
275
20
  }
276
- return transfers;
21
+ return void 0;
22
+ };
23
+ const admin = coerceKey(adminKey);
24
+ if (admin) {
25
+ tx.setAdminKey(admin);
277
26
  }
278
- /**
279
- * Extract token transfers from Transaction object
280
- */
281
- static extractTokenTransfersFromTransaction(transaction) {
282
- const tokenTransfers = [];
283
- try {
284
- const tokenTransfersList = transaction._tokenTransfers;
285
- if (Array.isArray(tokenTransfersList)) {
286
- tokenTransfersList.forEach((tokenTransfer) => {
287
- if (tokenTransfer.tokenId && Array.isArray(tokenTransfer.transfers)) {
288
- const transfers = tokenTransfer.transfers.map((transfer) => ({
289
- accountId: transfer.accountId?.toString() || "Unknown",
290
- amount: Number(transfer.amount || 0)
291
- }));
292
- tokenTransfers.push({
293
- tokenId: tokenTransfer.tokenId.toString(),
294
- transfers
295
- });
296
- }
297
- });
298
- }
299
- } catch (error) {
300
- }
301
- return tokenTransfers;
27
+ const submit = coerceKey(submitKey);
28
+ if (submit) {
29
+ tx.setSubmitKey(submit);
302
30
  }
303
- /**
304
- * Parse crypto transaction from Transaction object with comprehensive extraction
305
- * This is the unified entry point that handles both protobuf and internal field extraction
306
- */
307
- static parseFromTransactionObject(transaction) {
308
- try {
309
- const hbarTransfers = this.extractHbarTransfersFromTransaction(transaction);
310
- const tokenTransfers = this.extractTokenTransfersFromTransaction(transaction);
311
- if (hbarTransfers.length > 0 || tokenTransfers.length > 0) {
312
- const convertedTransfers = hbarTransfers.map((transfer) => ({
313
- accountId: transfer.accountId,
314
- amount: transfer.amount.toString() + " ℏ",
315
- isDecimal: true
316
- }));
317
- const convertedTokenTransfers = tokenTransfers.flatMap(
318
- (tokenGroup) => tokenGroup.transfers.map((transfer) => ({
319
- tokenId: tokenGroup.tokenId,
320
- accountId: transfer.accountId,
321
- amount: transfer.amount
322
- }))
323
- );
324
- if (hbarTransfers.length > 0) {
325
- return {
326
- type: "CRYPTOTRANSFER",
327
- humanReadableType: "Crypto Transfer",
328
- transfers: convertedTransfers,
329
- tokenTransfers: convertedTokenTransfers
330
- };
331
- } else if (tokenTransfers.length > 0) {
332
- return {
333
- type: "TOKENTRANSFER",
334
- humanReadableType: "Token Transfer",
335
- transfers: convertedTransfers,
336
- tokenTransfers: convertedTokenTransfers
337
- };
338
- }
339
- }
340
- return {};
341
- } catch (error) {
342
- return {};
343
- }
31
+ return tx;
32
+ }
33
+ function buildMessageTx(params) {
34
+ const tx = new TopicMessageSubmitTransaction().setTopicId(TopicId.fromString(params.topicId)).setMessage(params.message);
35
+ if (params.transactionMemo) {
36
+ tx.setTransactionMemo(params.transactionMemo);
344
37
  }
38
+ return tx;
345
39
  }
346
40
  export {
347
- CryptoParser
41
+ buildMessageTx,
42
+ buildTopicCreateTx,
43
+ encodeHcs2RegistryMemo
348
44
  };
349
45
  //# sourceMappingURL=standards-sdk.es136.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es136.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
+ {"version":3,"file":"standards-sdk.es136.js","sources":["../../src/common/tx/tx-utils.ts"],"sourcesContent":["import {\n TopicCreateTransaction,\n TopicMessageSubmitTransaction,\n PublicKey,\n KeyList,\n TopicId,\n} from '@hashgraph/sdk';\n\nexport type MaybeKey = boolean | string | PublicKey | KeyList | undefined;\n\nexport function encodeHcs2RegistryMemo(\n indexedFlag: 0 | 1,\n ttl: number,\n): string {\n return `hcs-2:${indexedFlag}:${ttl}`;\n}\n\nexport function buildTopicCreateTx(params: {\n memo: string;\n adminKey?: MaybeKey;\n submitKey?: MaybeKey;\n operatorPublicKey?: PublicKey;\n}): TopicCreateTransaction {\n const { memo, adminKey, submitKey, operatorPublicKey } = params;\n const tx = new TopicCreateTransaction().setTopicMemo(memo);\n\n const coerceKey = (k?: MaybeKey): PublicKey | KeyList | undefined => {\n if (!k) return undefined;\n if (k instanceof PublicKey || k instanceof KeyList) return k;\n if (typeof k === 'boolean') {\n return k ? operatorPublicKey : undefined;\n }\n if (typeof k === 'string') {\n try {\n return PublicKey.fromString(k);\n } catch {\n return undefined;\n }\n }\n return undefined;\n };\n\n const admin = coerceKey(adminKey);\n if (admin) {\n tx.setAdminKey(admin);\n }\n\n const submit = coerceKey(submitKey);\n if (submit) {\n tx.setSubmitKey(submit);\n }\n\n return tx;\n}\n\nexport function buildMessageTx(params: {\n topicId: string;\n message: string | Uint8Array;\n transactionMemo?: string;\n}): TopicMessageSubmitTransaction {\n const tx = new TopicMessageSubmitTransaction()\n .setTopicId(TopicId.fromString(params.topicId))\n .setMessage(params.message);\n if (params.transactionMemo) {\n tx.setTransactionMemo(params.transactionMemo);\n }\n return tx;\n}\n"],"names":[],"mappings":";AAUO,SAAS,uBACd,aACA,KACQ;AACR,SAAO,SAAS,WAAW,IAAI,GAAG;AACpC;AAEO,SAAS,mBAAmB,QAKR;AACzB,QAAM,EAAE,MAAM,UAAU,WAAW,sBAAsB;AACzD,QAAM,KAAK,IAAI,yBAAyB,aAAa,IAAI;AAEzD,QAAM,YAAY,CAAC,MAAkD;AACnE,QAAI,CAAC,EAAG,QAAO;AACf,QAAI,aAAa,aAAa,aAAa,QAAS,QAAO;AAC3D,QAAI,OAAO,MAAM,WAAW;AAC1B,aAAO,IAAI,oBAAoB;AAAA,IACjC;AACA,QAAI,OAAO,MAAM,UAAU;AACzB,UAAI;AACF,eAAO,UAAU,WAAW,CAAC;AAAA,MAC/B,QAAQ;AACN,eAAO;AAAA,MACT;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAEA,QAAM,QAAQ,UAAU,QAAQ;AAChC,MAAI,OAAO;AACT,OAAG,YAAY,KAAK;AAAA,EACtB;AAEA,QAAM,SAAS,UAAU,SAAS;AAClC,MAAI,QAAQ;AACV,OAAG,aAAa,MAAM;AAAA,EACxB;AAEA,SAAO;AACT;AAEO,SAAS,eAAe,QAIG;AAChC,QAAM,KAAK,IAAI,gCACZ,WAAW,QAAQ,WAAW,OAAO,OAAO,CAAC,EAC7C,WAAW,OAAO,OAAO;AAC5B,MAAI,OAAO,iBAAiB;AAC1B,OAAG,mBAAmB,OAAO,eAAe;AAAA,EAC9C;AACA,SAAO;AACT;"}