@gardenfi/utils 2.4.5-beta.3 → 2.4.6-beta.1

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 (99) hide show
  1. package/dist/index10.cjs +1 -1
  2. package/dist/index10.js +4 -4
  3. package/dist/index100.cjs +1 -1
  4. package/dist/index100.js +2 -2
  5. package/dist/index121.cjs +1 -1
  6. package/dist/index121.js +1 -1
  7. package/dist/index16.cjs +1 -1
  8. package/dist/index16.js +2 -2
  9. package/dist/index18.cjs +1 -1
  10. package/dist/index18.js +2 -2
  11. package/dist/index24.cjs +1 -1
  12. package/dist/index24.js +12 -26
  13. package/dist/index242.cjs +1 -1
  14. package/dist/index242.js +3 -3
  15. package/dist/index25.cjs +1 -1
  16. package/dist/index25.js +58 -8
  17. package/dist/index26.cjs +16 -1
  18. package/dist/index26.js +113 -12
  19. package/dist/index262.cjs +1 -1
  20. package/dist/index262.js +1 -1
  21. package/dist/index266.cjs +1 -1
  22. package/dist/index266.js +2 -2
  23. package/dist/index267.cjs +1 -2
  24. package/dist/index267.js +25 -40
  25. package/dist/index268.cjs +1 -1
  26. package/dist/index268.js +6 -2
  27. package/dist/index269.cjs +2 -1
  28. package/dist/index269.js +41 -5
  29. package/dist/index27.cjs +1 -1
  30. package/dist/index27.js +32 -58
  31. package/dist/index270.cjs +1 -1
  32. package/dist/index270.js +2 -11
  33. package/dist/index271.cjs +1 -1
  34. package/dist/index271.js +9 -18
  35. package/dist/index272.cjs +1 -1
  36. package/dist/index272.js +19 -8
  37. package/dist/index273.cjs +1 -1
  38. package/dist/index273.js +8 -66
  39. package/dist/index274.cjs +1 -1
  40. package/dist/index274.js +65 -64
  41. package/dist/index275.cjs +1 -1
  42. package/dist/index275.js +60 -181
  43. package/dist/index276.cjs +1 -1
  44. package/dist/index276.js +184 -20
  45. package/dist/index277.cjs +1 -1
  46. package/dist/index277.js +21 -41
  47. package/dist/index278.cjs +1 -1
  48. package/dist/index278.js +20 -54
  49. package/dist/index279.cjs +1 -1
  50. package/dist/index279.js +54 -18
  51. package/dist/index28.cjs +1 -16
  52. package/dist/index28.js +24 -111
  53. package/dist/index280.cjs +1 -1
  54. package/dist/index280.js +34 -10
  55. package/dist/index281.cjs +1 -1
  56. package/dist/index281.js +10 -7
  57. package/dist/index282.cjs +1 -1
  58. package/dist/index282.js +13 -12
  59. package/dist/index283.cjs +1 -2
  60. package/dist/index283.js +10 -16
  61. package/dist/index284.cjs +2 -1
  62. package/dist/index284.js +18 -14
  63. package/dist/index285.cjs +1 -1
  64. package/dist/index285.js +14 -11
  65. package/dist/index286.cjs +1 -1
  66. package/dist/index286.js +11 -26
  67. package/dist/index288.cjs +1 -1
  68. package/dist/index288.js +1 -1
  69. package/dist/index29.cjs +1 -1
  70. package/dist/index29.js +7 -31
  71. package/dist/index293.cjs +1 -1
  72. package/dist/index293.js +2 -2
  73. package/dist/index295.cjs +1 -1
  74. package/dist/index295.js +10 -41
  75. package/dist/index296.cjs +1 -1
  76. package/dist/index296.js +18 -77
  77. package/dist/index297.cjs +1 -1
  78. package/dist/index297.js +43 -2
  79. package/dist/index298.cjs +1 -1
  80. package/dist/index298.js +77 -10
  81. package/dist/index299.cjs +1 -1
  82. package/dist/index299.js +2 -20
  83. package/dist/index300.cjs +1 -1
  84. package/dist/index300.js +1 -1
  85. package/dist/index304.cjs +1 -1
  86. package/dist/index304.js +1 -1
  87. package/dist/index307.cjs +1 -1
  88. package/dist/index307.js +1 -1
  89. package/dist/index309.cjs +1 -1
  90. package/dist/index309.js +1 -1
  91. package/dist/index312.cjs +1 -1
  92. package/dist/index312.js +63 -4
  93. package/dist/index313.cjs +1 -1
  94. package/dist/index313.js +40 -59
  95. package/dist/index314.cjs +1 -1
  96. package/dist/index314.js +4 -44
  97. package/dist/index55.cjs +1 -1
  98. package/dist/index55.js +1 -1
  99. package/package.json +1 -1
package/dist/index275.js CHANGED
@@ -1,189 +1,68 @@
1
- import { execTyped as E, bytesRegex as x, integerRegex as $, isTupleRegex as P } from "./index272.js";
2
- import { UnknownSolidityTypeError as M } from "./index277.js";
3
- import { InvalidParameterError as R, SolidityProtectedKeywordError as k, InvalidModifierError as z, InvalidFunctionModifierError as A } from "./index278.js";
4
- import { UnknownSignatureError as F, InvalidSignatureError as m } from "./index279.js";
5
- import { InvalidParenthesisError as T } from "./index280.js";
6
- import { getParameterCacheKey as _, parameterCache as p } from "./index303.js";
7
- import { isFunctionSignature as C, isEventSignature as I, isErrorSignature as Z, isConstructorSignature as K, isFallbackSignature as L, isReceiveSignature as U, functionModifiers as h, execFunctionSignature as W, execEventSignature as D, eventModifiers as V, execErrorSignature as j, execConstructorSignature as q, execFallbackSignature as B } from "./index273.js";
8
- function le(e, t = {}) {
9
- if (C(e))
10
- return G(e, t);
11
- if (I(e))
12
- return H(e, t);
13
- if (Z(e))
14
- return J(e, t);
15
- if (K(e))
16
- return N(e, t);
17
- if (L(e))
18
- return O(e);
19
- if (U(e))
20
- return {
21
- type: "receive",
22
- stateMutability: "payable"
23
- };
24
- throw new F({ signature: e });
25
- }
26
- function G(e, t = {}) {
27
- const n = W(e);
28
- if (!n)
29
- throw new m({ signature: e, type: "function" });
30
- const a = s(n.parameters), r = [], c = a.length;
31
- for (let o = 0; o < c; o++)
32
- r.push(l(a[o], {
33
- modifiers: h,
34
- structs: t,
35
- type: "function"
36
- }));
37
- const i = [];
38
- if (n.returns) {
39
- const o = s(n.returns), u = o.length;
40
- for (let f = 0; f < u; f++)
41
- i.push(l(o[f], {
42
- modifiers: h,
43
- structs: t,
44
- type: "function"
45
- }));
46
- }
47
- return {
48
- name: n.name,
49
- type: "function",
50
- stateMutability: n.stateMutability ?? "nonpayable",
51
- inputs: r,
52
- outputs: i
53
- };
54
- }
55
- function H(e, t = {}) {
56
- const n = D(e);
57
- if (!n)
58
- throw new m({ signature: e, type: "event" });
59
- const a = s(n.parameters), r = [], c = a.length;
60
- for (let i = 0; i < c; i++)
61
- r.push(l(a[i], {
62
- modifiers: V,
63
- structs: t,
64
- type: "event"
65
- }));
66
- return { name: n.name, type: "event", inputs: r };
67
- }
68
- function J(e, t = {}) {
69
- const n = j(e);
70
- if (!n)
71
- throw new m({ signature: e, type: "error" });
72
- const a = s(n.parameters), r = [], c = a.length;
73
- for (let i = 0; i < c; i++)
74
- r.push(l(a[i], { structs: t, type: "error" }));
75
- return { name: n.name, type: "error", inputs: r };
76
- }
77
- function N(e, t = {}) {
78
- const n = q(e);
79
- if (!n)
80
- throw new m({ signature: e, type: "constructor" });
81
- const a = s(n.parameters), r = [], c = a.length;
82
- for (let i = 0; i < c; i++)
83
- r.push(l(a[i], { structs: t, type: "constructor" }));
84
- return {
85
- type: "constructor",
86
- stateMutability: n.stateMutability ?? "nonpayable",
87
- inputs: r
88
- };
89
- }
90
- function O(e) {
91
- const t = B(e);
92
- if (!t)
93
- throw new m({ signature: e, type: "fallback" });
94
- return {
95
- type: "fallback",
96
- stateMutability: t.stateMutability ?? "nonpayable"
97
- };
98
- }
99
- const Q = /^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/, X = /^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/, Y = /^u?int$/;
100
- function l(e, t) {
101
- var y, b;
102
- const n = _(e, t == null ? void 0 : t.type, t == null ? void 0 : t.structs);
103
- if (p.has(n))
104
- return p.get(n);
105
- const a = P.test(e), r = E(a ? X : Q, e);
106
- if (!r)
107
- throw new R({ param: e });
108
- if (r.name && re(r.name))
109
- throw new k({ param: e, name: r.name });
110
- const c = r.name ? { name: r.name } : {}, i = r.modifier === "indexed" ? { indexed: !0 } : {}, o = (t == null ? void 0 : t.structs) ?? {};
111
- let u, f = {};
112
- if (a) {
113
- u = "tuple";
114
- const w = s(r.type), S = [], v = w.length;
115
- for (let d = 0; d < v; d++)
116
- S.push(l(w[d], { structs: o }));
117
- f = { components: S };
118
- } else if (r.type in o)
119
- u = "tuple", f = { components: o[r.type] };
120
- else if (Y.test(r.type))
121
- u = `${r.type}256`;
122
- else if (u = r.type, (t == null ? void 0 : t.type) !== "struct" && !ee(u))
123
- throw new M({ type: u });
124
- if (r.modifier) {
125
- if (!((b = (y = t == null ? void 0 : t.modifiers) == null ? void 0 : y.has) != null && b.call(y, r.modifier)))
126
- throw new z({
127
- param: e,
128
- type: t == null ? void 0 : t.type,
129
- modifier: r.modifier
130
- });
131
- if (h.has(r.modifier) && !ne(u, !!r.array))
132
- throw new A({
133
- param: e,
134
- type: t == null ? void 0 : t.type,
135
- modifier: r.modifier
1
+ import { isTupleRegex as g, execTyped as w } from "./index273.js";
2
+ import { UnknownTypeError as S } from "./index278.js";
3
+ import { InvalidAbiTypeParameterError as d } from "./index279.js";
4
+ import { InvalidSignatureError as T, InvalidStructSignatureError as v } from "./index280.js";
5
+ import { CircularReferenceError as x } from "./index282.js";
6
+ import { isStructSignature as E, execStructSignature as b } from "./index274.js";
7
+ import { parseAbiParameter as A, isSolidityType as $ } from "./index276.js";
8
+ function C(s) {
9
+ const n = {}, c = s.length;
10
+ for (let t = 0; t < c; t++) {
11
+ const i = s[t];
12
+ if (!E(i))
13
+ continue;
14
+ const r = b(i);
15
+ if (!r)
16
+ throw new T({ signature: i, type: "struct" });
17
+ const u = r.properties.split(";"), e = [], h = u.length;
18
+ for (let l = 0; l < h; l++) {
19
+ const m = u[l].trim();
20
+ if (!m)
21
+ continue;
22
+ const y = A(m, {
23
+ type: "struct"
136
24
  });
25
+ e.push(y);
26
+ }
27
+ if (!e.length)
28
+ throw new v({ signature: i });
29
+ n[r.name] = e;
30
+ }
31
+ const o = {}, a = Object.entries(n), p = a.length;
32
+ for (let t = 0; t < p; t++) {
33
+ const [i, r] = a[t];
34
+ o[i] = f(r, n);
137
35
  }
138
- const g = {
139
- type: `${u}${r.array ?? ""}`,
140
- ...c,
141
- ...i,
142
- ...f
143
- };
144
- return p.set(n, g), g;
36
+ return o;
145
37
  }
146
- function s(e, t = [], n = "", a = 0) {
147
- const r = e.trim().length;
148
- for (let c = 0; c < r; c++) {
149
- const i = e[c], o = e.slice(c + 1);
150
- switch (i) {
151
- case ",":
152
- return a === 0 ? s(o, [...t, n.trim()]) : s(o, t, `${n}${i}`, a);
153
- case "(":
154
- return s(o, t, `${n}${i}`, a + 1);
155
- case ")":
156
- return s(o, t, `${n}${i}`, a - 1);
157
- default:
158
- return s(o, t, `${n}${i}`, a);
38
+ const I = /^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;
39
+ function f(s, n, c = /* @__PURE__ */ new Set()) {
40
+ const o = [], a = s.length;
41
+ for (let p = 0; p < a; p++) {
42
+ const t = s[p];
43
+ if (g.test(t.type))
44
+ o.push(t);
45
+ else {
46
+ const r = w(I, t.type);
47
+ if (!(r != null && r.type))
48
+ throw new d({ abiParameter: t });
49
+ const { array: u, type: e } = r;
50
+ if (e in n) {
51
+ if (c.has(e))
52
+ throw new x({ type: e });
53
+ o.push({
54
+ ...t,
55
+ type: `tuple${u ?? ""}`,
56
+ components: f(n[e] ?? [], n, /* @__PURE__ */ new Set([...c, e]))
57
+ });
58
+ } else if ($(e))
59
+ o.push(t);
60
+ else
61
+ throw new S({ type: e });
159
62
  }
160
63
  }
161
- if (n === "")
162
- return t;
163
- if (a !== 0)
164
- throw new T({ current: n, depth: a });
165
- return t.push(n.trim()), t;
166
- }
167
- function ee(e) {
168
- return e === "address" || e === "bool" || e === "function" || e === "string" || x.test(e) || $.test(e);
169
- }
170
- const te = /^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;
171
- function re(e) {
172
- return e === "address" || e === "bool" || e === "function" || e === "string" || e === "tuple" || x.test(e) || $.test(e) || te.test(e);
173
- }
174
- function ne(e, t) {
175
- return t || e === "bytes" || e === "string" || e === "tuple";
64
+ return o;
176
65
  }
177
66
  export {
178
- re as isSolidityKeyword,
179
- ee as isSolidityType,
180
- ne as isValidDataLocation,
181
- l as parseAbiParameter,
182
- N as parseConstructorSignature,
183
- J as parseErrorSignature,
184
- H as parseEventSignature,
185
- O as parseFallbackSignature,
186
- G as parseFunctionSignature,
187
- le as parseSignature,
188
- s as splitParameters
67
+ C as parseStructs
189
68
  };
package/dist/index276.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./index277.cjs"),u=require("./index273.cjs"),a=require("./index274.cjs"),s=require("./index275.cjs");function l(t){let e;if(typeof t=="string")e=s.parseSignature(t);else{const n=a.parseStructs(t),o=t.length;for(let r=0;r<o;r++){const i=t[r];if(!u.isStructSignature(i)){e=s.parseSignature(i,n);break}}}if(!e)throw new c.InvalidAbiItemError({signature:t});return e}exports.parseAbiItem=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("./index273.cjs"),A=require("./index278.cjs"),g=require("./index279.cjs"),d=require("./index280.cjs"),q=require("./index281.cjs"),h=require("./index303.cjs"),o=require("./index274.cjs");function z(e,t={}){if(o.isFunctionSignature(e))return E(e,t);if(o.isEventSignature(e))return P(e,t);if(o.isErrorSignature(e))return M(e,t);if(o.isConstructorSignature(e))return I(e,t);if(o.isFallbackSignature(e))return R(e);if(o.isReceiveSignature(e))return{type:"receive",stateMutability:"payable"};throw new d.UnknownSignatureError({signature:e})}function E(e,t={}){const n=o.execFunctionSignature(e);if(!n)throw new d.InvalidSignatureError({signature:e,type:"function"});const a=u(n.parameters),r=[],c=a.length;for(let s=0;s<c;s++)r.push(m(a[s],{modifiers:o.functionModifiers,structs:t,type:"function"}));const i=[];if(n.returns){const s=u(n.returns),l=s.length;for(let f=0;f<l;f++)i.push(m(s[f],{modifiers:o.functionModifiers,structs:t,type:"function"}))}return{name:n.name,type:"function",stateMutability:n.stateMutability??"nonpayable",inputs:r,outputs:i}}function P(e,t={}){const n=o.execEventSignature(e);if(!n)throw new d.InvalidSignatureError({signature:e,type:"event"});const a=u(n.parameters),r=[],c=a.length;for(let i=0;i<c;i++)r.push(m(a[i],{modifiers:o.eventModifiers,structs:t,type:"event"}));return{name:n.name,type:"event",inputs:r}}function M(e,t={}){const n=o.execErrorSignature(e);if(!n)throw new d.InvalidSignatureError({signature:e,type:"error"});const a=u(n.parameters),r=[],c=a.length;for(let i=0;i<c;i++)r.push(m(a[i],{structs:t,type:"error"}));return{name:n.name,type:"error",inputs:r}}function I(e,t={}){const n=o.execConstructorSignature(e);if(!n)throw new d.InvalidSignatureError({signature:e,type:"constructor"});const a=u(n.parameters),r=[],c=a.length;for(let i=0;i<c;i++)r.push(m(a[i],{structs:t,type:"constructor"}));return{type:"constructor",stateMutability:n.stateMutability??"nonpayable",inputs:r}}function R(e){const t=o.execFallbackSignature(e);if(!t)throw new d.InvalidSignatureError({signature:e,type:"fallback"});return{type:"fallback",stateMutability:t.stateMutability??"nonpayable"}}const _=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,$=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,K=/^u?int$/;function m(e,t){var p,w;const n=h.getParameterCacheKey(e,t==null?void 0:t.type,t==null?void 0:t.structs);if(h.parameterCache.has(n))return h.parameterCache.get(n);const a=y.isTupleRegex.test(e),r=y.execTyped(a?$:_,e);if(!r)throw new g.InvalidParameterError({param:e});if(r.name&&F(r.name))throw new g.SolidityProtectedKeywordError({param:e,name:r.name});const c=r.name?{name:r.name}:{},i=r.modifier==="indexed"?{indexed:!0}:{},s=(t==null?void 0:t.structs)??{};let l,f={};if(a){l="tuple";const v=u(r.type),x=[],k=v.length;for(let b=0;b<k;b++)x.push(m(v[b],{structs:s}));f={components:x}}else if(r.type in s)l="tuple",f={components:s[r.type]};else if(K.test(r.type))l=`${r.type}256`;else if(l=r.type,(t==null?void 0:t.type)!=="struct"&&!C(l))throw new A.UnknownSolidityTypeError({type:l});if(r.modifier){if(!((w=(p=t==null?void 0:t.modifiers)==null?void 0:p.has)!=null&&w.call(p,r.modifier)))throw new g.InvalidModifierError({param:e,type:t==null?void 0:t.type,modifier:r.modifier});if(o.functionModifiers.has(r.modifier)&&!T(l,!!r.array))throw new g.InvalidFunctionModifierError({param:e,type:t==null?void 0:t.type,modifier:r.modifier})}const S={type:`${l}${r.array??""}`,...c,...i,...f};return h.parameterCache.set(n,S),S}function u(e,t=[],n="",a=0){const r=e.trim().length;for(let c=0;c<r;c++){const i=e[c],s=e.slice(c+1);switch(i){case",":return a===0?u(s,[...t,n.trim()]):u(s,t,`${n}${i}`,a);case"(":return u(s,t,`${n}${i}`,a+1);case")":return u(s,t,`${n}${i}`,a-1);default:return u(s,t,`${n}${i}`,a)}}if(n==="")return t;if(a!==0)throw new q.InvalidParenthesisError({current:n,depth:a});return t.push(n.trim()),t}function C(e){return e==="address"||e==="bool"||e==="function"||e==="string"||y.bytesRegex.test(e)||y.integerRegex.test(e)}const Z=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function F(e){return e==="address"||e==="bool"||e==="function"||e==="string"||e==="tuple"||y.bytesRegex.test(e)||y.integerRegex.test(e)||Z.test(e)}function T(e,t){return t||e==="bytes"||e==="string"||e==="tuple"}exports.isSolidityKeyword=F;exports.isSolidityType=C;exports.isValidDataLocation=T;exports.parseAbiParameter=m;exports.parseConstructorSignature=I;exports.parseErrorSignature=M;exports.parseEventSignature=P;exports.parseFallbackSignature=R;exports.parseFunctionSignature=E;exports.parseSignature=z;exports.splitParameters=u;
package/dist/index276.js CHANGED
@@ -1,25 +1,189 @@
1
- import { InvalidAbiItemError as f } from "./index277.js";
2
- import { isStructSignature as p } from "./index273.js";
3
- import { parseStructs as c } from "./index274.js";
4
- import { parseSignature as i } from "./index275.js";
5
- function u(t) {
6
- let r;
7
- if (typeof t == "string")
8
- r = i(t);
9
- else {
10
- const m = c(t), n = t.length;
11
- for (let o = 0; o < n; o++) {
12
- const e = t[o];
13
- if (!p(e)) {
14
- r = i(e, m);
15
- break;
16
- }
17
- }
1
+ import { execTyped as E, bytesRegex as x, integerRegex as $, isTupleRegex as P } from "./index273.js";
2
+ import { UnknownSolidityTypeError as M } from "./index278.js";
3
+ import { InvalidParameterError as R, SolidityProtectedKeywordError as k, InvalidModifierError as z, InvalidFunctionModifierError as A } from "./index279.js";
4
+ import { UnknownSignatureError as F, InvalidSignatureError as m } from "./index280.js";
5
+ import { InvalidParenthesisError as T } from "./index281.js";
6
+ import { getParameterCacheKey as _, parameterCache as p } from "./index303.js";
7
+ import { isFunctionSignature as C, isEventSignature as I, isErrorSignature as Z, isConstructorSignature as K, isFallbackSignature as L, isReceiveSignature as U, functionModifiers as h, execFunctionSignature as W, execEventSignature as D, eventModifiers as V, execErrorSignature as j, execConstructorSignature as q, execFallbackSignature as B } from "./index274.js";
8
+ function le(e, t = {}) {
9
+ if (C(e))
10
+ return G(e, t);
11
+ if (I(e))
12
+ return H(e, t);
13
+ if (Z(e))
14
+ return J(e, t);
15
+ if (K(e))
16
+ return N(e, t);
17
+ if (L(e))
18
+ return O(e);
19
+ if (U(e))
20
+ return {
21
+ type: "receive",
22
+ stateMutability: "payable"
23
+ };
24
+ throw new F({ signature: e });
25
+ }
26
+ function G(e, t = {}) {
27
+ const n = W(e);
28
+ if (!n)
29
+ throw new m({ signature: e, type: "function" });
30
+ const a = s(n.parameters), r = [], c = a.length;
31
+ for (let o = 0; o < c; o++)
32
+ r.push(l(a[o], {
33
+ modifiers: h,
34
+ structs: t,
35
+ type: "function"
36
+ }));
37
+ const i = [];
38
+ if (n.returns) {
39
+ const o = s(n.returns), u = o.length;
40
+ for (let f = 0; f < u; f++)
41
+ i.push(l(o[f], {
42
+ modifiers: h,
43
+ structs: t,
44
+ type: "function"
45
+ }));
18
46
  }
47
+ return {
48
+ name: n.name,
49
+ type: "function",
50
+ stateMutability: n.stateMutability ?? "nonpayable",
51
+ inputs: r,
52
+ outputs: i
53
+ };
54
+ }
55
+ function H(e, t = {}) {
56
+ const n = D(e);
57
+ if (!n)
58
+ throw new m({ signature: e, type: "event" });
59
+ const a = s(n.parameters), r = [], c = a.length;
60
+ for (let i = 0; i < c; i++)
61
+ r.push(l(a[i], {
62
+ modifiers: V,
63
+ structs: t,
64
+ type: "event"
65
+ }));
66
+ return { name: n.name, type: "event", inputs: r };
67
+ }
68
+ function J(e, t = {}) {
69
+ const n = j(e);
70
+ if (!n)
71
+ throw new m({ signature: e, type: "error" });
72
+ const a = s(n.parameters), r = [], c = a.length;
73
+ for (let i = 0; i < c; i++)
74
+ r.push(l(a[i], { structs: t, type: "error" }));
75
+ return { name: n.name, type: "error", inputs: r };
76
+ }
77
+ function N(e, t = {}) {
78
+ const n = q(e);
79
+ if (!n)
80
+ throw new m({ signature: e, type: "constructor" });
81
+ const a = s(n.parameters), r = [], c = a.length;
82
+ for (let i = 0; i < c; i++)
83
+ r.push(l(a[i], { structs: t, type: "constructor" }));
84
+ return {
85
+ type: "constructor",
86
+ stateMutability: n.stateMutability ?? "nonpayable",
87
+ inputs: r
88
+ };
89
+ }
90
+ function O(e) {
91
+ const t = B(e);
92
+ if (!t)
93
+ throw new m({ signature: e, type: "fallback" });
94
+ return {
95
+ type: "fallback",
96
+ stateMutability: t.stateMutability ?? "nonpayable"
97
+ };
98
+ }
99
+ const Q = /^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/, X = /^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/, Y = /^u?int$/;
100
+ function l(e, t) {
101
+ var y, b;
102
+ const n = _(e, t == null ? void 0 : t.type, t == null ? void 0 : t.structs);
103
+ if (p.has(n))
104
+ return p.get(n);
105
+ const a = P.test(e), r = E(a ? X : Q, e);
19
106
  if (!r)
20
- throw new f({ signature: t });
21
- return r;
107
+ throw new R({ param: e });
108
+ if (r.name && re(r.name))
109
+ throw new k({ param: e, name: r.name });
110
+ const c = r.name ? { name: r.name } : {}, i = r.modifier === "indexed" ? { indexed: !0 } : {}, o = (t == null ? void 0 : t.structs) ?? {};
111
+ let u, f = {};
112
+ if (a) {
113
+ u = "tuple";
114
+ const w = s(r.type), S = [], v = w.length;
115
+ for (let d = 0; d < v; d++)
116
+ S.push(l(w[d], { structs: o }));
117
+ f = { components: S };
118
+ } else if (r.type in o)
119
+ u = "tuple", f = { components: o[r.type] };
120
+ else if (Y.test(r.type))
121
+ u = `${r.type}256`;
122
+ else if (u = r.type, (t == null ? void 0 : t.type) !== "struct" && !ee(u))
123
+ throw new M({ type: u });
124
+ if (r.modifier) {
125
+ if (!((b = (y = t == null ? void 0 : t.modifiers) == null ? void 0 : y.has) != null && b.call(y, r.modifier)))
126
+ throw new z({
127
+ param: e,
128
+ type: t == null ? void 0 : t.type,
129
+ modifier: r.modifier
130
+ });
131
+ if (h.has(r.modifier) && !ne(u, !!r.array))
132
+ throw new A({
133
+ param: e,
134
+ type: t == null ? void 0 : t.type,
135
+ modifier: r.modifier
136
+ });
137
+ }
138
+ const g = {
139
+ type: `${u}${r.array ?? ""}`,
140
+ ...c,
141
+ ...i,
142
+ ...f
143
+ };
144
+ return p.set(n, g), g;
145
+ }
146
+ function s(e, t = [], n = "", a = 0) {
147
+ const r = e.trim().length;
148
+ for (let c = 0; c < r; c++) {
149
+ const i = e[c], o = e.slice(c + 1);
150
+ switch (i) {
151
+ case ",":
152
+ return a === 0 ? s(o, [...t, n.trim()]) : s(o, t, `${n}${i}`, a);
153
+ case "(":
154
+ return s(o, t, `${n}${i}`, a + 1);
155
+ case ")":
156
+ return s(o, t, `${n}${i}`, a - 1);
157
+ default:
158
+ return s(o, t, `${n}${i}`, a);
159
+ }
160
+ }
161
+ if (n === "")
162
+ return t;
163
+ if (a !== 0)
164
+ throw new T({ current: n, depth: a });
165
+ return t.push(n.trim()), t;
166
+ }
167
+ function ee(e) {
168
+ return e === "address" || e === "bool" || e === "function" || e === "string" || x.test(e) || $.test(e);
169
+ }
170
+ const te = /^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;
171
+ function re(e) {
172
+ return e === "address" || e === "bool" || e === "function" || e === "string" || e === "tuple" || x.test(e) || $.test(e) || te.test(e);
173
+ }
174
+ function ne(e, t) {
175
+ return t || e === "bytes" || e === "string" || e === "tuple";
22
176
  }
23
177
  export {
24
- u as parseAbiItem
178
+ re as isSolidityKeyword,
179
+ ee as isSolidityType,
180
+ ne as isValidDataLocation,
181
+ l as parseAbiParameter,
182
+ N as parseConstructorSignature,
183
+ J as parseErrorSignature,
184
+ H as parseEventSignature,
185
+ O as parseFallbackSignature,
186
+ G as parseFunctionSignature,
187
+ le as parseSignature,
188
+ s as splitParameters
25
189
  };
package/dist/index277.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index267.cjs");class n extends r.BaseError{constructor({signature:e}){super("Failed to parse ABI item.",{details:`parseAbiItem(${JSON.stringify(e,null,2)})`,docsPath:"/api/human#parseabiitem-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiItemError"})}}class o extends r.BaseError{constructor({type:e}){super("Unknown type.",{metaMessages:[`Type "${e}" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownTypeError"})}}class a extends r.BaseError{constructor({type:e}){super("Unknown type.",{metaMessages:[`Type "${e}" is not a valid ABI type.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSolidityTypeError"})}}exports.InvalidAbiItemError=n;exports.UnknownSolidityTypeError=a;exports.UnknownTypeError=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./index278.cjs"),u=require("./index274.cjs"),a=require("./index275.cjs"),s=require("./index276.cjs");function l(t){let e;if(typeof t=="string")e=s.parseSignature(t);else{const n=a.parseStructs(t),o=t.length;for(let r=0;r<o;r++){const i=t[r];if(!u.isStructSignature(i)){e=s.parseSignature(i,n);break}}}if(!e)throw new c.InvalidAbiItemError({signature:t});return e}exports.parseAbiItem=l;
package/dist/index277.js CHANGED
@@ -1,45 +1,25 @@
1
- import { BaseError as r } from "./index267.js";
2
- class a extends r {
3
- constructor({ signature: e }) {
4
- super("Failed to parse ABI item.", {
5
- details: `parseAbiItem(${JSON.stringify(e, null, 2)})`,
6
- docsPath: "/api/human#parseabiitem-1"
7
- }), Object.defineProperty(this, "name", {
8
- enumerable: !0,
9
- configurable: !0,
10
- writable: !0,
11
- value: "InvalidAbiItemError"
12
- });
13
- }
14
- }
15
- class o extends r {
16
- constructor({ type: e }) {
17
- super("Unknown type.", {
18
- metaMessages: [
19
- `Type "${e}" is not a valid ABI type. Perhaps you forgot to include a struct signature?`
20
- ]
21
- }), Object.defineProperty(this, "name", {
22
- enumerable: !0,
23
- configurable: !0,
24
- writable: !0,
25
- value: "UnknownTypeError"
26
- });
27
- }
28
- }
29
- class i extends r {
30
- constructor({ type: e }) {
31
- super("Unknown type.", {
32
- metaMessages: [`Type "${e}" is not a valid ABI type.`]
33
- }), Object.defineProperty(this, "name", {
34
- enumerable: !0,
35
- configurable: !0,
36
- writable: !0,
37
- value: "UnknownSolidityTypeError"
38
- });
1
+ import { InvalidAbiItemError as f } from "./index278.js";
2
+ import { isStructSignature as p } from "./index274.js";
3
+ import { parseStructs as c } from "./index275.js";
4
+ import { parseSignature as i } from "./index276.js";
5
+ function u(t) {
6
+ let r;
7
+ if (typeof t == "string")
8
+ r = i(t);
9
+ else {
10
+ const m = c(t), n = t.length;
11
+ for (let o = 0; o < n; o++) {
12
+ const e = t[o];
13
+ if (!p(e)) {
14
+ r = i(e, m);
15
+ break;
16
+ }
17
+ }
39
18
  }
19
+ if (!r)
20
+ throw new f({ signature: t });
21
+ return r;
40
22
  }
41
23
  export {
42
- a as InvalidAbiItemError,
43
- i as UnknownSolidityTypeError,
44
- o as UnknownTypeError
24
+ u as parseAbiItem
45
25
  };
package/dist/index278.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index267.cjs");class o extends t.BaseError{constructor({param:e}){super("Invalid ABI parameter.",{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class n extends t.BaseError{constructor({param:e,name:r}){super("Invalid ABI parameter.",{details:e,metaMessages:[`"${r}" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SolidityProtectedKeywordError"})}}class s extends t.BaseError{constructor({param:e,type:r,modifier:i}){super("Invalid ABI parameter.",{details:e,metaMessages:[`Modifier "${i}" not allowed${r?` in "${r}" type`:""}.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidModifierError"})}}class l extends t.BaseError{constructor({param:e,type:r,modifier:i}){super("Invalid ABI parameter.",{details:e,metaMessages:[`Modifier "${i}" not allowed${r?` in "${r}" type`:""}.`,`Data location can only be specified for array, struct, or mapping types, but "${i}" was given.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidFunctionModifierError"})}}class d extends t.BaseError{constructor({abiParameter:e}){super("Invalid ABI parameter.",{details:JSON.stringify(e,null,2),metaMessages:["ABI parameter type is invalid."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiTypeParameterError"})}}exports.InvalidAbiTypeParameterError=d;exports.InvalidFunctionModifierError=l;exports.InvalidModifierError=s;exports.InvalidParameterError=o;exports.SolidityProtectedKeywordError=n;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index269.cjs");class n extends r.BaseError{constructor({signature:e}){super("Failed to parse ABI item.",{details:`parseAbiItem(${JSON.stringify(e,null,2)})`,docsPath:"/api/human#parseabiitem-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiItemError"})}}class o extends r.BaseError{constructor({type:e}){super("Unknown type.",{metaMessages:[`Type "${e}" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownTypeError"})}}class a extends r.BaseError{constructor({type:e}){super("Unknown type.",{metaMessages:[`Type "${e}" is not a valid ABI type.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSolidityTypeError"})}}exports.InvalidAbiItemError=n;exports.UnknownSolidityTypeError=a;exports.UnknownTypeError=o;
package/dist/index278.js CHANGED
@@ -1,79 +1,45 @@
1
- import { BaseError as t } from "./index267.js";
2
- class n extends t {
3
- constructor({ param: e }) {
4
- super("Invalid ABI parameter.", {
5
- details: e
1
+ import { BaseError as r } from "./index269.js";
2
+ class a extends r {
3
+ constructor({ signature: e }) {
4
+ super("Failed to parse ABI item.", {
5
+ details: `parseAbiItem(${JSON.stringify(e, null, 2)})`,
6
+ docsPath: "/api/human#parseabiitem-1"
6
7
  }), Object.defineProperty(this, "name", {
7
8
  enumerable: !0,
8
9
  configurable: !0,
9
10
  writable: !0,
10
- value: "InvalidParameterError"
11
+ value: "InvalidAbiItemError"
11
12
  });
12
13
  }
13
14
  }
14
- class s extends t {
15
- constructor({ param: e, name: r }) {
16
- super("Invalid ABI parameter.", {
17
- details: e,
15
+ class o extends r {
16
+ constructor({ type: e }) {
17
+ super("Unknown type.", {
18
18
  metaMessages: [
19
- `"${r}" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`
19
+ `Type "${e}" is not a valid ABI type. Perhaps you forgot to include a struct signature?`
20
20
  ]
21
21
  }), Object.defineProperty(this, "name", {
22
22
  enumerable: !0,
23
23
  configurable: !0,
24
24
  writable: !0,
25
- value: "SolidityProtectedKeywordError"
25
+ value: "UnknownTypeError"
26
26
  });
27
27
  }
28
28
  }
29
- class l extends t {
30
- constructor({ param: e, type: r, modifier: i }) {
31
- super("Invalid ABI parameter.", {
32
- details: e,
33
- metaMessages: [
34
- `Modifier "${i}" not allowed${r ? ` in "${r}" type` : ""}.`
35
- ]
36
- }), Object.defineProperty(this, "name", {
37
- enumerable: !0,
38
- configurable: !0,
39
- writable: !0,
40
- value: "InvalidModifierError"
41
- });
42
- }
43
- }
44
- class d extends t {
45
- constructor({ param: e, type: r, modifier: i }) {
46
- super("Invalid ABI parameter.", {
47
- details: e,
48
- metaMessages: [
49
- `Modifier "${i}" not allowed${r ? ` in "${r}" type` : ""}.`,
50
- `Data location can only be specified for array, struct, or mapping types, but "${i}" was given.`
51
- ]
52
- }), Object.defineProperty(this, "name", {
53
- enumerable: !0,
54
- configurable: !0,
55
- writable: !0,
56
- value: "InvalidFunctionModifierError"
57
- });
58
- }
59
- }
60
- class u extends t {
61
- constructor({ abiParameter: e }) {
62
- super("Invalid ABI parameter.", {
63
- details: JSON.stringify(e, null, 2),
64
- metaMessages: ["ABI parameter type is invalid."]
29
+ class i extends r {
30
+ constructor({ type: e }) {
31
+ super("Unknown type.", {
32
+ metaMessages: [`Type "${e}" is not a valid ABI type.`]
65
33
  }), Object.defineProperty(this, "name", {
66
34
  enumerable: !0,
67
35
  configurable: !0,
68
36
  writable: !0,
69
- value: "InvalidAbiTypeParameterError"
37
+ value: "UnknownSolidityTypeError"
70
38
  });
71
39
  }
72
40
  }
73
41
  export {
74
- u as InvalidAbiTypeParameterError,
75
- d as InvalidFunctionModifierError,
76
- l as InvalidModifierError,
77
- n as InvalidParameterError,
78
- s as SolidityProtectedKeywordError
42
+ a as InvalidAbiItemError,
43
+ i as UnknownSolidityTypeError,
44
+ o as UnknownTypeError
79
45
  };