@gardenfi/swap 0.0.2-beta.2 → 0.0.2-beta.4

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 (230) hide show
  1. package/dist/index104.cjs +1 -1
  2. package/dist/index104.js +4 -4
  3. package/dist/index106.cjs +1 -1
  4. package/dist/index106.js +3 -3
  5. package/dist/index107.cjs +1 -1
  6. package/dist/index107.js +3 -3
  7. package/dist/index116.cjs +1 -1
  8. package/dist/index116.js +1 -1
  9. package/dist/index117.cjs +1 -1
  10. package/dist/index117.js +1 -1
  11. package/dist/index12.cjs +1 -1
  12. package/dist/index12.js +12 -12
  13. package/dist/index120.cjs +1 -1
  14. package/dist/index120.js +2 -2
  15. package/dist/index121.cjs +1 -1
  16. package/dist/index121.js +7 -7
  17. package/dist/index132.cjs +1 -1
  18. package/dist/index132.js +1 -1
  19. package/dist/index133.cjs +1 -1
  20. package/dist/index133.js +1 -1
  21. package/dist/index134.cjs +1 -1
  22. package/dist/index134.js +1 -1
  23. package/dist/index135.cjs +1 -1
  24. package/dist/index135.js +1 -1
  25. package/dist/index138.cjs +1 -1
  26. package/dist/index138.js +2 -2
  27. package/dist/index161.cjs +1 -1
  28. package/dist/index161.js +2 -2
  29. package/dist/index167.cjs +1 -1
  30. package/dist/index167.js +1 -1
  31. package/dist/index168.cjs +1 -1
  32. package/dist/index168.js +2 -2
  33. package/dist/index169.cjs +1 -1
  34. package/dist/index169.js +2 -2
  35. package/dist/index170.cjs +1 -1
  36. package/dist/index170.js +2 -2
  37. package/dist/index171.cjs +1 -1
  38. package/dist/index171.js +2 -2
  39. package/dist/index172.cjs +1 -1
  40. package/dist/index172.js +2 -2
  41. package/dist/index272.cjs +1 -1
  42. package/dist/index272.js +9 -174
  43. package/dist/index273.cjs +1 -2
  44. package/dist/index273.js +30 -91
  45. package/dist/index274.cjs +1 -1
  46. package/dist/index274.js +2 -41
  47. package/dist/index275.cjs +1 -1
  48. package/dist/index275.js +47 -4
  49. package/dist/index276.cjs +1 -1
  50. package/dist/index276.js +11 -9
  51. package/dist/index277.cjs +1 -1
  52. package/dist/index277.js +174 -30
  53. package/dist/index278.cjs +2 -1
  54. package/dist/index278.js +92 -2
  55. package/dist/index279.cjs +1 -1
  56. package/dist/index279.js +38 -45
  57. package/dist/index280.cjs +1 -1
  58. package/dist/index280.js +4 -11
  59. package/dist/index281.cjs +1 -1
  60. package/dist/index281.js +3 -3
  61. package/dist/index283.cjs +1 -2
  62. package/dist/index283.js +42 -41
  63. package/dist/index284.cjs +1 -1
  64. package/dist/index284.js +321 -2
  65. package/dist/index285.cjs +1 -1
  66. package/dist/index285.js +605 -5
  67. package/dist/index286.cjs +1 -1
  68. package/dist/index286.js +109 -10
  69. package/dist/index287.cjs +1 -1
  70. package/dist/index287.js +167 -19
  71. package/dist/index288.cjs +1 -1
  72. package/dist/index288.js +301 -8
  73. package/dist/index289.cjs +1 -1
  74. package/dist/index289.js +93 -72
  75. package/dist/index290.cjs +1 -1
  76. package/dist/index290.js +54 -63
  77. package/dist/index291.cjs +1 -1
  78. package/dist/index291.js +51 -186
  79. package/dist/index292.cjs +1 -1
  80. package/dist/index292.js +42 -20
  81. package/dist/index293.cjs +1 -1
  82. package/dist/index293.js +14 -41
  83. package/dist/index294.cjs +1 -1
  84. package/dist/index294.js +315 -23
  85. package/dist/index295.cjs +1 -1
  86. package/dist/index295.js +57 -88
  87. package/dist/index296.cjs +1 -1
  88. package/dist/index296.js +19 -40
  89. package/dist/index297.cjs +1 -1
  90. package/dist/index297.js +28 -15
  91. package/dist/index298.cjs +1 -1
  92. package/dist/index298.js +3 -13
  93. package/dist/index299.cjs +7 -1
  94. package/dist/index299.js +237 -7
  95. package/dist/index300.cjs +1 -1
  96. package/dist/index300.js +48 -38
  97. package/dist/index301.cjs +1 -1
  98. package/dist/index301.js +211 -14
  99. package/dist/index302.cjs +1 -1
  100. package/dist/index302.js +77 -38
  101. package/dist/index303.cjs +1 -1
  102. package/dist/index303.js +25 -316
  103. package/dist/index304.cjs +1 -1
  104. package/dist/index304.js +73 -602
  105. package/dist/index305.cjs +2 -1
  106. package/dist/index305.js +41 -109
  107. package/dist/index306.cjs +1 -1
  108. package/dist/index306.js +2 -168
  109. package/dist/index307.cjs +1 -1
  110. package/dist/index307.js +5 -301
  111. package/dist/index308.cjs +1 -1
  112. package/dist/index308.js +10 -93
  113. package/dist/index309.cjs +1 -1
  114. package/dist/index309.js +18 -55
  115. package/dist/index310.cjs +1 -1
  116. package/dist/index310.js +8 -53
  117. package/dist/index311.cjs +1 -1
  118. package/dist/index311.js +72 -44
  119. package/dist/index312.cjs +1 -1
  120. package/dist/index312.js +64 -14
  121. package/dist/index313.cjs +1 -1
  122. package/dist/index313.js +184 -313
  123. package/dist/index314.cjs +1 -1
  124. package/dist/index314.js +19 -56
  125. package/dist/index315.cjs +1 -1
  126. package/dist/index315.js +42 -19
  127. package/dist/index316.cjs +1 -1
  128. package/dist/index316.js +23 -27
  129. package/dist/index317.cjs +1 -1
  130. package/dist/index317.js +90 -3
  131. package/dist/index318.cjs +1 -7
  132. package/dist/index318.js +33 -230
  133. package/dist/index319.cjs +1 -1
  134. package/dist/index319.js +17 -48
  135. package/dist/index320.cjs +1 -1
  136. package/dist/index320.js +11 -210
  137. package/dist/index321.cjs +1 -1
  138. package/dist/index321.js +7 -81
  139. package/dist/index322.cjs +1 -1
  140. package/dist/index322.js +36 -28
  141. package/dist/index323.cjs +1 -1
  142. package/dist/index323.js +15 -76
  143. package/dist/index326.cjs +1 -1
  144. package/dist/index326.js +1 -1
  145. package/dist/index327.cjs +1 -1
  146. package/dist/index327.js +1 -1
  147. package/dist/index333.cjs +1 -1
  148. package/dist/index333.js +2 -2
  149. package/dist/index334.cjs +1 -1
  150. package/dist/index334.js +2 -2
  151. package/dist/index340.cjs +1 -1
  152. package/dist/index340.js +1 -1
  153. package/dist/index341.cjs +1 -1
  154. package/dist/index341.js +1 -1
  155. package/dist/index343.cjs +1 -1
  156. package/dist/index343.js +1 -1
  157. package/dist/index346.cjs +1 -1
  158. package/dist/index346.js +1 -1
  159. package/dist/index347.cjs +1 -1
  160. package/dist/index347.js +1 -1
  161. package/dist/index348.cjs +1 -1
  162. package/dist/index348.js +3 -3
  163. package/dist/index349.cjs +1 -2
  164. package/dist/index349.js +4 -193
  165. package/dist/index350.cjs +2 -1
  166. package/dist/index350.js +168 -52
  167. package/dist/index351.cjs +1 -1
  168. package/dist/index351.js +65 -331
  169. package/dist/index352.cjs +1 -1
  170. package/dist/index352.js +332 -149
  171. package/dist/index353.cjs +1 -1
  172. package/dist/index353.js +161 -5
  173. package/dist/index354.cjs +1 -1
  174. package/dist/index354.js +5 -5
  175. package/dist/index357.cjs +1 -1
  176. package/dist/index357.js +8 -205
  177. package/dist/index359.cjs +1 -1
  178. package/dist/index359.js +205 -8
  179. package/dist/index360.cjs +1 -1
  180. package/dist/index360.js +94 -68
  181. package/dist/index361.cjs +1 -1
  182. package/dist/index361.js +28 -94
  183. package/dist/index362.cjs +1 -1
  184. package/dist/index362.js +147 -27
  185. package/dist/index363.cjs +1 -1
  186. package/dist/index363.js +324 -118
  187. package/dist/index364.cjs +1 -1
  188. package/dist/index364.js +72 -353
  189. package/dist/index365.cjs +1 -1
  190. package/dist/index365.js +29 -71
  191. package/dist/index366.cjs +1 -1
  192. package/dist/index366.js +5 -31
  193. package/dist/index367.cjs +1 -1
  194. package/dist/index367.js +275 -5
  195. package/dist/index368.cjs +1 -1
  196. package/dist/index368.js +171 -4
  197. package/dist/index369.cjs +1 -1
  198. package/dist/index369.js +10 -141
  199. package/dist/index370.cjs +1 -1
  200. package/dist/index370.js +105 -273
  201. package/dist/index371.cjs +1 -1
  202. package/dist/index371.js +10 -171
  203. package/dist/index372.cjs +1 -1
  204. package/dist/index372.js +69 -10
  205. package/dist/index373.cjs +1 -1
  206. package/dist/index373.js +3 -107
  207. package/dist/index374.cjs +1 -1
  208. package/dist/index374.js +140 -9
  209. package/dist/index375.cjs +1 -1
  210. package/dist/index375.js +4 -4
  211. package/dist/index376.cjs +1 -1
  212. package/dist/index376.js +2 -79
  213. package/dist/index377.cjs +1 -1
  214. package/dist/index377.js +79 -2
  215. package/dist/index379.cjs +1 -1
  216. package/dist/index379.js +1 -1
  217. package/dist/index380.cjs +1 -1
  218. package/dist/index380.js +1 -1
  219. package/dist/index381.cjs +1 -1
  220. package/dist/index381.js +2 -22
  221. package/dist/index382.cjs +1 -1
  222. package/dist/index382.js +22 -2
  223. package/dist/index385.cjs +1 -1
  224. package/dist/index385.js +2 -2
  225. package/dist/index77.cjs +1 -1
  226. package/dist/index77.js +13 -13
  227. package/dist/index99.cjs +1 -1
  228. package/dist/index99.js +1 -1
  229. package/dist/src/lib/store/swapStore.d.ts +1 -1
  230. package/package.json +5 -5
package/dist/index351.js CHANGED
@@ -1,346 +1,80 @@
1
- import { InvalidTypeError as C, InvalidArrayError as _, ArrayLengthMismatchError as $, BytesSizeMismatchError as O } from "./index349.js";
2
- import { checksum as M, assert as R } from "./index350.js";
3
- import { toNumber as u, slice as T, toBoolean as D, toBigInt as U, toString as V, trimLeft as j } from "./index348.js";
4
- import { BaseError as q } from "./index273.js";
5
- import { size as h, fromNumber as B, concat as m, fromBytes as w, padLeft as S, fromBoolean as F, IntegerOutOfRangeError as G, padRight as b, fromString as H, slice as J } from "./index272.js";
6
- import { integerRegex as K } from "./index282.js";
7
- function p(t, e, o) {
8
- const { checksumAddress: n, staticPosition: s } = o, i = I(e.type);
9
- if (i) {
10
- const [r, d] = i;
11
- return X(t, { ...e, type: d }, { checksumAddress: n, length: r, staticPosition: s });
12
- }
13
- if (e.type === "tuple")
14
- return tt(t, e, {
15
- checksumAddress: n,
16
- staticPosition: s
17
- });
18
- if (e.type === "address")
19
- return Q(t, { checksum: n });
20
- if (e.type === "bool")
21
- return Y(t);
22
- if (e.type.startsWith("bytes"))
23
- return Z(t, e, { staticPosition: s });
24
- if (e.type.startsWith("uint") || e.type.startsWith("int"))
25
- return v(t, e);
26
- if (e.type === "string")
27
- return et(t, { staticPosition: s });
28
- throw new C(e.type);
29
- }
30
- const k = 32, A = 32;
31
- function Q(t, e = {}) {
32
- const { checksum: o = !1 } = e, n = t.readBytes(32);
33
- return [((i) => o ? M(i) : i)(w(T(n, -20))), 32];
34
- }
35
- function X(t, e, o) {
36
- const { checksumAddress: n, length: s, staticPosition: i } = o;
37
- if (!s) {
38
- const c = u(t.readBytes(A)), a = i + c, f = a + k;
39
- t.setPosition(a);
40
- const y = u(t.readBytes(k)), l = g(e);
41
- let P = 0;
42
- const N = [];
43
- for (let z = 0; z < y; ++z) {
44
- t.setPosition(f + (l ? z * 32 : P));
45
- const [L, E] = p(t, e, {
46
- checksumAddress: n,
47
- staticPosition: f
48
- });
49
- P += E, N.push(L);
50
- }
51
- return t.setPosition(i + 32), [N, 32];
52
- }
53
- if (g(e)) {
54
- const c = u(t.readBytes(A)), a = i + c, f = [];
55
- for (let y = 0; y < s; ++y) {
56
- t.setPosition(a + y * 32);
57
- const [l] = p(t, e, {
58
- checksumAddress: n,
59
- staticPosition: a
60
- });
61
- f.push(l);
62
- }
63
- return t.setPosition(i + 32), [f, 32];
64
- }
65
- let r = 0;
66
- const d = [];
67
- for (let c = 0; c < s; ++c) {
68
- const [a, f] = p(t, e, {
69
- checksumAddress: n,
70
- staticPosition: i + r
71
- });
72
- r += f, d.push(a);
73
- }
74
- return [d, r];
75
- }
76
- function Y(t) {
77
- return [D(t.readBytes(32), { size: 32 }), 32];
78
- }
79
- function Z(t, e, { staticPosition: o }) {
80
- const [n, s] = e.type.split("bytes");
81
- if (!s) {
82
- const r = u(t.readBytes(32));
83
- t.setPosition(o + r);
84
- const d = u(t.readBytes(32));
85
- if (d === 0)
86
- return t.setPosition(o + 32), ["0x", 32];
87
- const c = t.readBytes(d);
88
- return t.setPosition(o + 32), [w(c), 32];
89
- }
90
- return [w(t.readBytes(Number.parseInt(s, 10), 32)), 32];
91
- }
92
- function v(t, e) {
93
- const o = e.type.startsWith("int"), n = Number.parseInt(e.type.split("int")[1] || "256", 10), s = t.readBytes(32);
94
- return [
95
- n > 48 ? U(s, { signed: o }) : u(s, { signed: o }),
96
- 32
97
- ];
98
- }
99
- function tt(t, e, o) {
100
- const { checksumAddress: n, staticPosition: s } = o, i = e.components.length === 0 || e.components.some(({ name: c }) => !c), r = i ? [] : {};
101
- let d = 0;
102
- if (g(e)) {
103
- const c = u(t.readBytes(A)), a = s + c;
104
- for (let f = 0; f < e.components.length; ++f) {
105
- const y = e.components[f];
106
- t.setPosition(a + d);
107
- const [l, P] = p(t, y, {
108
- checksumAddress: n,
109
- staticPosition: a
110
- });
111
- d += P, r[i ? f : y == null ? void 0 : y.name] = l;
112
- }
113
- return t.setPosition(s + 32), [r, 32];
114
- }
115
- for (let c = 0; c < e.components.length; ++c) {
116
- const a = e.components[c], [f, y] = p(t, a, {
117
- checksumAddress: n,
118
- staticPosition: s
1
+ import { fromString as d } from "./index348.js";
2
+ import { checksum as o } from "./index354.js";
3
+ import { BaseError as c } from "./index278.js";
4
+ import { keccak256 as f } from "./index347.js";
5
+ const l = /^0x[a-fA-F0-9]{40}$/;
6
+ function u(r, t = {}) {
7
+ const { strict: s = !0 } = t;
8
+ if (!l.test(r))
9
+ throw new i({
10
+ address: r,
11
+ cause: new h()
119
12
  });
120
- r[i ? c : a == null ? void 0 : a.name] = f, d += y;
121
- }
122
- return [r, d];
123
- }
124
- function et(t, { staticPosition: e }) {
125
- const o = u(t.readBytes(32)), n = e + o;
126
- t.setPosition(n);
127
- const s = u(t.readBytes(32));
128
- if (s === 0)
129
- return t.setPosition(e + 32), ["", 32];
130
- const i = t.readBytes(s, 32), r = V(j(i));
131
- return t.setPosition(e + 32), [r, 32];
132
- }
133
- function pt({ checksumAddress: t, parameters: e, values: o }) {
134
- const n = [];
135
- for (let s = 0; s < e.length; s++)
136
- n.push(x({
137
- checksumAddress: t,
138
- parameter: e[s],
139
- value: o[s]
140
- }));
141
- return n;
142
- }
143
- function x({ checksumAddress: t = !1, parameter: e, value: o }) {
144
- const n = e, s = I(n.type);
145
13
  if (s) {
146
- const [i, r] = s;
147
- return st(o, {
148
- checksumAddress: t,
149
- length: i,
150
- parameter: {
151
- ...n,
152
- type: r
153
- }
154
- });
155
- }
156
- if (n.type === "tuple")
157
- return dt(o, {
158
- checksumAddress: t,
159
- parameter: n
160
- });
161
- if (n.type === "address")
162
- return nt(o, {
163
- checksum: t
164
- });
165
- if (n.type === "bool")
166
- return it(o);
167
- if (n.type.startsWith("uint") || n.type.startsWith("int")) {
168
- const i = n.type.startsWith("int"), [, , r = "256"] = K.exec(n.type) ?? [];
169
- return rt(o, {
170
- signed: i,
171
- size: Number(r)
172
- });
173
- }
174
- if (n.type.startsWith("bytes"))
175
- return ot(o, { type: n.type });
176
- if (n.type === "string")
177
- return ct(o);
178
- throw new C(n.type);
179
- }
180
- function W(t) {
181
- let e = 0;
182
- for (let i = 0; i < t.length; i++) {
183
- const { dynamic: r, encoded: d } = t[i];
184
- r ? e += 32 : e += h(d);
185
- }
186
- const o = [], n = [];
187
- let s = 0;
188
- for (let i = 0; i < t.length; i++) {
189
- const { dynamic: r, encoded: d } = t[i];
190
- r ? (o.push(B(e + s, { size: 32 })), n.push(d), s += h(d)) : o.push(d);
14
+ if (r.toLowerCase() === r)
15
+ return;
16
+ if (m(r) !== r)
17
+ throw new i({
18
+ address: r,
19
+ cause: new p()
20
+ });
191
21
  }
192
- return m(...o, ...n);
193
22
  }
194
- function nt(t, e) {
195
- const { checksum: o = !1 } = e;
196
- return R(t, { strict: o }), {
197
- dynamic: !1,
198
- encoded: S(t.toLowerCase())
199
- };
200
- }
201
- function st(t, e) {
202
- const { checksumAddress: o, length: n, parameter: s } = e, i = n === null;
203
- if (!Array.isArray(t))
204
- throw new _(t);
205
- if (!i && t.length !== n)
206
- throw new $({
207
- expectedLength: n,
208
- givenLength: t.length,
209
- type: `${s.type}[${n}]`
210
- });
211
- let r = !1;
212
- const d = [];
213
- for (let c = 0; c < t.length; c++) {
214
- const a = x({
215
- checksumAddress: o,
216
- parameter: s,
217
- value: t[c]
23
+ function m(r) {
24
+ if (o.has(r))
25
+ return o.get(r);
26
+ u(r, { strict: !1 });
27
+ const t = r.substring(2).toLowerCase(), s = f(d(t), { as: "Bytes" }), n = t.split("");
28
+ for (let e = 0; e < 40; e += 2)
29
+ s[e >> 1] >> 4 >= 8 && n[e] && (n[e] = n[e].toUpperCase()), (s[e >> 1] & 15) >= 8 && n[e + 1] && (n[e + 1] = n[e + 1].toUpperCase());
30
+ const a = `0x${n.join("")}`;
31
+ return o.set(r, a), a;
32
+ }
33
+ function k(r, t = {}) {
34
+ const { strict: s = !0 } = t ?? {};
35
+ try {
36
+ return u(r, { strict: s }), !0;
37
+ } catch {
38
+ return !1;
39
+ }
40
+ }
41
+ class i extends c {
42
+ constructor({ address: t, cause: s }) {
43
+ super(`Address "${t}" is invalid.`, {
44
+ cause: s
45
+ }), Object.defineProperty(this, "name", {
46
+ enumerable: !0,
47
+ configurable: !0,
48
+ writable: !0,
49
+ value: "Address.InvalidAddressError"
218
50
  });
219
- a.dynamic && (r = !0), d.push(a);
220
- }
221
- if (i || r) {
222
- const c = W(d);
223
- if (i) {
224
- const a = B(d.length, { size: 32 });
225
- return {
226
- dynamic: !0,
227
- encoded: d.length > 0 ? m(a, c) : a
228
- };
229
- }
230
- if (r)
231
- return { dynamic: !0, encoded: c };
232
51
  }
233
- return {
234
- dynamic: !1,
235
- encoded: m(...d.map(({ encoded: c }) => c))
236
- };
237
52
  }
238
- function ot(t, { type: e }) {
239
- const [, o] = e.split("bytes"), n = h(t);
240
- if (!o) {
241
- let s = t;
242
- return n % 32 !== 0 && (s = b(s, Math.ceil((t.length - 2) / 2 / 32) * 32)), {
243
- dynamic: !0,
244
- encoded: m(S(B(n, { size: 32 })), s)
245
- };
246
- }
247
- if (n !== Number.parseInt(o, 10))
248
- throw new O({
249
- expectedSize: Number.parseInt(o, 10),
250
- value: t
53
+ class h extends c {
54
+ constructor() {
55
+ super("Address is not a 20 byte (40 hexadecimal character) value."), Object.defineProperty(this, "name", {
56
+ enumerable: !0,
57
+ configurable: !0,
58
+ writable: !0,
59
+ value: "Address.InvalidInputError"
251
60
  });
252
- return { dynamic: !1, encoded: b(t) };
253
- }
254
- function it(t) {
255
- if (typeof t != "boolean")
256
- throw new q(`Invalid boolean value: "${t}" (type: ${typeof t}). Expected: \`true\` or \`false\`.`);
257
- return { dynamic: !1, encoded: S(F(t)) };
258
- }
259
- function rt(t, { signed: e, size: o }) {
260
- if (typeof o == "number") {
261
- const n = 2n ** (BigInt(o) - (e ? 1n : 0n)) - 1n, s = e ? -n - 1n : 0n;
262
- if (t > n || t < s)
263
- throw new G({
264
- max: n.toString(),
265
- min: s.toString(),
266
- signed: e,
267
- size: o / 8,
268
- value: t.toString()
269
- });
270
61
  }
271
- return {
272
- dynamic: !1,
273
- encoded: B(t, {
274
- size: 32,
275
- signed: e
276
- })
277
- };
278
- }
279
- function ct(t) {
280
- const e = H(t), o = Math.ceil(h(e) / 32), n = [];
281
- for (let s = 0; s < o; s++)
282
- n.push(b(J(e, s * 32, (s + 1) * 32)));
283
- return {
284
- dynamic: !0,
285
- encoded: m(b(B(h(e), { size: 32 })), ...n)
286
- };
287
62
  }
288
- function dt(t, e) {
289
- const { checksumAddress: o, parameter: n } = e;
290
- let s = !1;
291
- const i = [];
292
- for (let r = 0; r < n.components.length; r++) {
293
- const d = n.components[r], c = Array.isArray(t) ? r : d.name, a = x({
294
- checksumAddress: o,
295
- parameter: d,
296
- value: t[c]
63
+ class p extends c {
64
+ constructor() {
65
+ super("Address does not match its checksum counterpart."), Object.defineProperty(this, "name", {
66
+ enumerable: !0,
67
+ configurable: !0,
68
+ writable: !0,
69
+ value: "Address.InvalidChecksumError"
297
70
  });
298
- i.push(a), a.dynamic && (s = !0);
299
71
  }
300
- return {
301
- dynamic: s,
302
- encoded: s ? W(i) : m(...i.map(({ encoded: r }) => r))
303
- };
304
- }
305
- function I(t) {
306
- const e = t.match(/^(.*)\[(\d+)?\]$/);
307
- return e ? (
308
- // Return `null` if the array is dynamic.
309
- [e[2] ? Number(e[2]) : null, e[1]]
310
- ) : void 0;
311
- }
312
- function g(t) {
313
- var n;
314
- const { type: e } = t;
315
- if (e === "string" || e === "bytes" || e.endsWith("[]"))
316
- return !0;
317
- if (e === "tuple")
318
- return (n = t.components) == null ? void 0 : n.some(g);
319
- const o = I(t.type);
320
- return !!(o && g({
321
- ...t,
322
- type: o[1]
323
- }));
324
72
  }
325
73
  export {
326
- Q as decodeAddress,
327
- X as decodeArray,
328
- Y as decodeBool,
329
- Z as decodeBytes,
330
- v as decodeNumber,
331
- p as decodeParameter,
332
- et as decodeString,
333
- tt as decodeTuple,
334
- W as encode,
335
- nt as encodeAddress,
336
- st as encodeArray,
337
- it as encodeBoolean,
338
- ot as encodeBytes,
339
- rt as encodeNumber,
340
- ct as encodeString,
341
- dt as encodeTuple,
342
- I as getArrayComponents,
343
- g as hasDynamicChild,
344
- x as prepareParameter,
345
- pt as prepareParameters
74
+ i as InvalidAddressError,
75
+ p as InvalidChecksumError,
76
+ h as InvalidInputError,
77
+ u as assert,
78
+ m as checksum,
79
+ k as validate
346
80
  };
package/dist/index352.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./index273.cjs"),h={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:Number.POSITIVE_INFINITY,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new r({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(t){if(t<0||t>this.bytes.length-1)throw new n({length:this.bytes.length,position:t})},decrementPosition(t){if(t<0)throw new e({offset:t});const i=this.position-t;this.assertPosition(i),this.position=i},getReadCount(t){return this.positionReadCount.get(t||this.position)||0},incrementPosition(t){if(t<0)throw new e({offset:t});const i=this.position+t;this.assertPosition(i),this.position=i},inspectByte(t){const i=t??this.position;return this.assertPosition(i),this.bytes[i]},inspectBytes(t,i){const s=i??this.position;return this.assertPosition(s+t-1),this.bytes.subarray(s,s+t)},inspectUint8(t){const i=t??this.position;return this.assertPosition(i),this.bytes[i]},inspectUint16(t){const i=t??this.position;return this.assertPosition(i+1),this.dataView.getUint16(i)},inspectUint24(t){const i=t??this.position;return this.assertPosition(i+2),(this.dataView.getUint16(i)<<8)+this.dataView.getUint8(i+2)},inspectUint32(t){const i=t??this.position;return this.assertPosition(i+3),this.dataView.getUint32(i)},pushByte(t){this.assertPosition(this.position),this.bytes[this.position]=t,this.position++},pushBytes(t){this.assertPosition(this.position+t.length-1),this.bytes.set(t,this.position),this.position+=t.length},pushUint8(t){this.assertPosition(this.position),this.bytes[this.position]=t,this.position++},pushUint16(t){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,t),this.position+=2},pushUint24(t){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,t>>8),this.dataView.setUint8(this.position+2,t&255),this.position+=3},pushUint32(t){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,t),this.position+=4},readByte(){this.assertReadLimit(),this._touch();const t=this.inspectByte();return this.position++,t},readBytes(t,i){this.assertReadLimit(),this._touch();const s=this.inspectBytes(t);return this.position+=i??t,s},readUint8(){this.assertReadLimit(),this._touch();const t=this.inspectUint8();return this.position+=1,t},readUint16(){this.assertReadLimit(),this._touch();const t=this.inspectUint16();return this.position+=2,t},readUint24(){this.assertReadLimit(),this._touch();const t=this.inspectUint24();return this.position+=3,t},readUint32(){this.assertReadLimit(),this._touch();const t=this.inspectUint32();return this.position+=4,t},get remaining(){return this.bytes.length-this.position},setPosition(t){const i=this.position;return this.assertPosition(t),this.position=t,()=>this.position=i},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;const t=this.getReadCount();this.positionReadCount.set(this.position,t+1),t>0&&this.recursiveReadCount++}};function a(t,{recursiveReadLimit:i=8192}={}){const s=Object.create(h);return s.bytes=t,s.dataView=new DataView(t.buffer,t.byteOffset,t.byteLength),s.positionReadCount=new Map,s.recursiveReadLimit=i,s}class e extends o.BaseError{constructor({offset:i}){super(`Offset \`${i}\` cannot be negative.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.NegativeOffsetError"})}}class n extends o.BaseError{constructor({length:i,position:s}){super(`Position \`${s}\` is out of bounds (\`0 < position < ${i}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.PositionOutOfBoundsError"})}}class r extends o.BaseError{constructor({count:i,limit:s}){super(`Recursive read limit of \`${s}\` exceeded (recursive read count: \`${i}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.RecursiveReadLimitExceededError"})}}exports.NegativeOffsetError=e;exports.PositionOutOfBoundsError=n;exports.RecursiveReadLimitExceededError=r;exports.create=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("./index350.cjs"),x=require("./index351.cjs"),y=require("./index348.cjs"),U=require("./index278.cjs"),c=require("./index277.cjs"),V=require("./index282.cjs");function l(e,t,s){const{checksumAddress:n,staticPosition:o}=s,r=P(t.type);if(r){const[i,a]=r;return I(e,{...t,type:a},{checksumAddress:n,length:i,staticPosition:o})}if(t.type==="tuple")return k(e,t,{checksumAddress:n,staticPosition:o});if(t.type==="address")return C(e,{checksum:n});if(t.type==="bool")return L(e);if(t.type.startsWith("bytes"))return E(e,t,{staticPosition:o});if(t.type.startsWith("uint")||t.type.startsWith("int"))return W(e,t);if(t.type==="string")return O(e,{staticPosition:o});throw new g.InvalidTypeError(t.type)}const S=32,z=32;function C(e,t={}){const{checksum:s=!1}=t,n=e.readBytes(32);return[(r=>s?x.checksum(r):r)(c.fromBytes(y.slice(n,-20))),32]}function I(e,t,s){const{checksumAddress:n,length:o,staticPosition:r}=s;if(!o){const d=y.toNumber(e.readBytes(z)),f=r+d,u=f+S;e.setPosition(f);const m=y.toNumber(e.readBytes(S)),h=p(t);let b=0;const w=[];for(let N=0;N<m;++N){e.setPosition(u+(h?N*32:b));const[j,H]=l(e,t,{checksumAddress:n,staticPosition:u});b+=H,w.push(j)}return e.setPosition(r+32),[w,32]}if(p(t)){const d=y.toNumber(e.readBytes(z)),f=r+d,u=[];for(let m=0;m<o;++m){e.setPosition(f+m*32);const[h]=l(e,t,{checksumAddress:n,staticPosition:f});u.push(h)}return e.setPosition(r+32),[u,32]}let i=0;const a=[];for(let d=0;d<o;++d){const[f,u]=l(e,t,{checksumAddress:n,staticPosition:r+i});i+=u,a.push(f)}return[a,i]}function L(e){return[y.toBoolean(e.readBytes(32),{size:32}),32]}function E(e,t,{staticPosition:s}){const[n,o]=t.type.split("bytes");if(!o){const i=y.toNumber(e.readBytes(32));e.setPosition(s+i);const a=y.toNumber(e.readBytes(32));if(a===0)return e.setPosition(s+32),["0x",32];const d=e.readBytes(a);return e.setPosition(s+32),[c.fromBytes(d),32]}return[c.fromBytes(e.readBytes(Number.parseInt(o,10),32)),32]}function W(e,t){const s=t.type.startsWith("int"),n=Number.parseInt(t.type.split("int")[1]||"256",10),o=e.readBytes(32);return[n>48?y.toBigInt(o,{signed:s}):y.toNumber(o,{signed:s}),32]}function k(e,t,s){const{checksumAddress:n,staticPosition:o}=s,r=t.components.length===0||t.components.some(({name:d})=>!d),i=r?[]:{};let a=0;if(p(t)){const d=y.toNumber(e.readBytes(z)),f=o+d;for(let u=0;u<t.components.length;++u){const m=t.components[u];e.setPosition(f+a);const[h,b]=l(e,m,{checksumAddress:n,staticPosition:f});a+=b,i[r?u:m==null?void 0:m.name]=h}return e.setPosition(o+32),[i,32]}for(let d=0;d<t.components.length;++d){const f=t.components[d],[u,m]=l(e,f,{checksumAddress:n,staticPosition:o});i[r?d:f==null?void 0:f.name]=u,a+=m}return[i,a]}function O(e,{staticPosition:t}){const s=y.toNumber(e.readBytes(32)),n=t+s;e.setPosition(n);const o=y.toNumber(e.readBytes(32));if(o===0)return e.setPosition(t+32),["",32];const r=e.readBytes(o,32),i=y.toString(y.trimLeft(r));return e.setPosition(t+32),[i,32]}function F({checksumAddress:e,parameters:t,values:s}){const n=[];for(let o=0;o<t.length;o++)n.push(B({checksumAddress:e,parameter:t[o],value:s[o]}));return n}function B({checksumAddress:e=!1,parameter:t,value:s}){const n=t,o=P(n.type);if(o){const[r,i]=o;return _(s,{checksumAddress:e,length:r,parameter:{...n,type:i}})}if(n.type==="tuple")return D(s,{checksumAddress:e,parameter:n});if(n.type==="address")return T(s,{checksum:e});if(n.type==="bool")return R(s);if(n.type.startsWith("uint")||n.type.startsWith("int")){const r=n.type.startsWith("int"),[,,i="256"]=V.integerRegex.exec(n.type)??[];return M(s,{signed:r,size:Number(i)})}if(n.type.startsWith("bytes"))return q(s,{type:n.type});if(n.type==="string")return $(s);throw new g.InvalidTypeError(n.type)}function A(e){let t=0;for(let r=0;r<e.length;r++){const{dynamic:i,encoded:a}=e[r];i?t+=32:t+=c.size(a)}const s=[],n=[];let o=0;for(let r=0;r<e.length;r++){const{dynamic:i,encoded:a}=e[r];i?(s.push(c.fromNumber(t+o,{size:32})),n.push(a),o+=c.size(a)):s.push(a)}return c.concat(...s,...n)}function T(e,t){const{checksum:s=!1}=t;return x.assert(e,{strict:s}),{dynamic:!1,encoded:c.padLeft(e.toLowerCase())}}function _(e,t){const{checksumAddress:s,length:n,parameter:o}=t,r=n===null;if(!Array.isArray(e))throw new g.InvalidArrayError(e);if(!r&&e.length!==n)throw new g.ArrayLengthMismatchError({expectedLength:n,givenLength:e.length,type:`${o.type}[${n}]`});let i=!1;const a=[];for(let d=0;d<e.length;d++){const f=B({checksumAddress:s,parameter:o,value:e[d]});f.dynamic&&(i=!0),a.push(f)}if(r||i){const d=A(a);if(r){const f=c.fromNumber(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?c.concat(f,d):f}}if(i)return{dynamic:!0,encoded:d}}return{dynamic:!1,encoded:c.concat(...a.map(({encoded:d})=>d))}}function q(e,{type:t}){const[,s]=t.split("bytes"),n=c.size(e);if(!s){let o=e;return n%32!==0&&(o=c.padRight(o,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:c.concat(c.padLeft(c.fromNumber(n,{size:32})),o)}}if(n!==Number.parseInt(s,10))throw new g.BytesSizeMismatchError({expectedSize:Number.parseInt(s,10),value:e});return{dynamic:!1,encoded:c.padRight(e)}}function R(e){if(typeof e!="boolean")throw new U.BaseError(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:c.padLeft(c.fromBoolean(e))}}function M(e,{signed:t,size:s}){if(typeof s=="number"){const n=2n**(BigInt(s)-(t?1n:0n))-1n,o=t?-n-1n:0n;if(e>n||e<o)throw new c.IntegerOutOfRangeError({max:n.toString(),min:o.toString(),signed:t,size:s/8,value:e.toString()})}return{dynamic:!1,encoded:c.fromNumber(e,{size:32,signed:t})}}function $(e){const t=c.fromString(e),s=Math.ceil(c.size(t)/32),n=[];for(let o=0;o<s;o++)n.push(c.padRight(c.slice(t,o*32,(o+1)*32)));return{dynamic:!0,encoded:c.concat(c.padRight(c.fromNumber(c.size(t),{size:32})),...n)}}function D(e,t){const{checksumAddress:s,parameter:n}=t;let o=!1;const r=[];for(let i=0;i<n.components.length;i++){const a=n.components[i],d=Array.isArray(e)?i:a.name,f=B({checksumAddress:s,parameter:a,value:e[d]});r.push(f),f.dynamic&&(o=!0)}return{dynamic:o,encoded:o?A(r):c.concat(...r.map(({encoded:i})=>i))}}function P(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function p(e){var n;const{type:t}=e;if(t==="string"||t==="bytes"||t.endsWith("[]"))return!0;if(t==="tuple")return(n=e.components)==null?void 0:n.some(p);const s=P(e.type);return!!(s&&p({...e,type:s[1]}))}exports.decodeAddress=C;exports.decodeArray=I;exports.decodeBool=L;exports.decodeBytes=E;exports.decodeNumber=W;exports.decodeParameter=l;exports.decodeString=O;exports.decodeTuple=k;exports.encode=A;exports.encodeAddress=T;exports.encodeArray=_;exports.encodeBoolean=R;exports.encodeBytes=q;exports.encodeNumber=M;exports.encodeString=$;exports.encodeTuple=D;exports.getArrayComponents=P;exports.hasDynamicChild=p;exports.prepareParameter=B;exports.prepareParameters=F;