@gardenfi/utils 2.4.1 → 2.4.3

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 (109) hide show
  1. package/dist/index10.cjs +1 -1
  2. package/dist/index10.js +4 -4
  3. package/dist/index119.cjs +1 -1
  4. package/dist/index119.js +1 -1
  5. package/dist/index16.cjs +1 -1
  6. package/dist/index16.js +4 -4
  7. package/dist/index18.cjs +1 -1
  8. package/dist/index18.js +2 -2
  9. package/dist/index195.cjs +1 -1
  10. package/dist/index195.js +3 -3
  11. package/dist/index225.cjs +1 -1
  12. package/dist/index225.js +2 -2
  13. package/dist/index229.cjs +1 -1
  14. package/dist/index229.js +1 -1
  15. package/dist/index24.cjs +1 -1
  16. package/dist/index24.js +31 -13
  17. package/dist/index241.cjs +1 -1
  18. package/dist/index241.js +3 -3
  19. package/dist/index25.cjs +1 -1
  20. package/dist/index25.js +32 -58
  21. package/dist/index26.cjs +1 -16
  22. package/dist/index26.js +11 -113
  23. package/dist/index261.cjs +1 -2
  24. package/dist/index261.js +102 -40
  25. package/dist/index262.cjs +1 -1
  26. package/dist/index262.js +7 -2
  27. package/dist/index263.cjs +1 -1
  28. package/dist/index263.js +224 -5
  29. package/dist/index264.cjs +1 -1
  30. package/dist/index264.js +6 -10
  31. package/dist/index265.cjs +1 -1
  32. package/dist/index265.js +7 -20
  33. package/dist/index266.cjs +1 -1
  34. package/dist/index266.js +26 -8
  35. package/dist/index267.cjs +1 -1
  36. package/dist/index267.js +5 -66
  37. package/dist/index268.cjs +2 -1
  38. package/dist/index268.js +40 -64
  39. package/dist/index269.cjs +1 -1
  40. package/dist/index269.js +2 -187
  41. package/dist/index27.cjs +1 -1
  42. package/dist/index27.js +58 -32
  43. package/dist/index270.cjs +1 -1
  44. package/dist/index270.js +8 -20
  45. package/dist/index271.cjs +1 -1
  46. package/dist/index271.js +17 -40
  47. package/dist/index272.cjs +1 -1
  48. package/dist/index272.js +8 -76
  49. package/dist/index273.cjs +1 -1
  50. package/dist/index273.js +66 -40
  51. package/dist/index274.cjs +1 -1
  52. package/dist/index274.js +64 -15
  53. package/dist/index275.cjs +1 -1
  54. package/dist/index275.js +185 -12
  55. package/dist/index276.cjs +1 -1
  56. package/dist/index276.js +21 -11
  57. package/dist/index277.cjs +1 -2
  58. package/dist/index277.js +42 -18
  59. package/dist/index278.cjs +1 -1
  60. package/dist/index278.js +75 -13
  61. package/dist/index279.cjs +1 -1
  62. package/dist/index279.js +40 -11
  63. package/dist/index28.cjs +1 -1
  64. package/dist/index28.js +12 -26
  65. package/dist/index280.cjs +1 -1
  66. package/dist/index280.js +15 -102
  67. package/dist/index281.cjs +1 -1
  68. package/dist/index281.js +13 -6
  69. package/dist/index282.cjs +1 -1
  70. package/dist/index282.js +10 -222
  71. package/dist/index283.cjs +2 -1
  72. package/dist/index283.js +18 -6
  73. package/dist/index284.cjs +1 -1
  74. package/dist/index284.js +15 -7
  75. package/dist/index285.cjs +1 -1
  76. package/dist/index285.js +11 -26
  77. package/dist/index287.cjs +1 -1
  78. package/dist/index287.js +1 -1
  79. package/dist/index29.cjs +16 -1
  80. package/dist/index29.js +113 -7
  81. package/dist/index292.cjs +1 -1
  82. package/dist/index292.js +2 -2
  83. package/dist/index294.cjs +1 -1
  84. package/dist/index294.js +10 -138
  85. package/dist/index295.cjs +1 -1
  86. package/dist/index295.js +19 -42
  87. package/dist/index296.cjs +1 -1
  88. package/dist/index296.js +134 -73
  89. package/dist/index297.cjs +1 -1
  90. package/dist/index297.js +43 -2
  91. package/dist/index298.cjs +1 -1
  92. package/dist/index298.js +77 -10
  93. package/dist/index299.cjs +1 -1
  94. package/dist/index299.js +2 -20
  95. package/dist/index30.cjs +1 -1
  96. package/dist/index30.js +27 -31
  97. package/dist/index300.cjs +1 -1
  98. package/dist/index300.js +698 -68
  99. package/dist/index301.cjs +1 -1
  100. package/dist/index301.js +178 -675
  101. package/dist/index302.cjs +1 -1
  102. package/dist/index302.js +67 -200
  103. package/dist/index31.cjs +1 -1
  104. package/dist/index31.js +8 -12
  105. package/dist/index53.cjs +1 -1
  106. package/dist/index53.js +1 -1
  107. package/dist/index98.cjs +1 -1
  108. package/dist/index98.js +2 -2
  109. package/package.json +1 -1
package/dist/index273.js CHANGED
@@ -1,43 +1,69 @@
1
- import { BaseError as r } from "./index261.js";
2
- class u extends r {
3
- constructor({ signature: e, type: n }) {
4
- super(`Invalid ${n} signature.`, {
5
- details: e
6
- }), Object.defineProperty(this, "name", {
7
- enumerable: !0,
8
- configurable: !0,
9
- writable: !0,
10
- value: "InvalidSignatureError"
11
- });
12
- }
13
- }
14
- class i extends r {
15
- constructor({ signature: e }) {
16
- super("Unknown signature.", {
17
- details: e
18
- }), Object.defineProperty(this, "name", {
19
- enumerable: !0,
20
- configurable: !0,
21
- writable: !0,
22
- value: "UnknownSignatureError"
23
- });
24
- }
25
- }
26
- class s extends r {
27
- constructor({ signature: e }) {
28
- super("Invalid struct signature.", {
29
- details: e,
30
- metaMessages: ["No properties exist."]
31
- }), Object.defineProperty(this, "name", {
32
- enumerable: !0,
33
- configurable: !0,
34
- writable: !0,
35
- value: "InvalidStructSignatureError"
36
- });
37
- }
1
+ import { execTyped as t } from "./index272.js";
2
+ const n = /^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;
3
+ function g(e) {
4
+ return n.test(e);
38
5
  }
6
+ function S(e) {
7
+ return t(n, e);
8
+ }
9
+ const r = /^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;
10
+ function l(e) {
11
+ return r.test(e);
12
+ }
13
+ function f(e) {
14
+ return t(r, e);
15
+ }
16
+ const a = /^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;
17
+ function x(e) {
18
+ return a.test(e);
19
+ }
20
+ function p(e) {
21
+ return t(a, e);
22
+ }
23
+ const u = /^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;
24
+ function $(e) {
25
+ return u.test(e);
26
+ }
27
+ function b(e) {
28
+ return t(u, e);
29
+ }
30
+ const i = /^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;
31
+ function m(e) {
32
+ return i.test(e);
33
+ }
34
+ function y(e) {
35
+ return t(i, e);
36
+ }
37
+ const c = /^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;
38
+ function v(e) {
39
+ return c.test(e);
40
+ }
41
+ function z(e) {
42
+ return t(c, e);
43
+ }
44
+ const o = /^receive\(\) external payable$/;
45
+ function A(e) {
46
+ return o.test(e);
47
+ }
48
+ const R = /* @__PURE__ */ new Set(["indexed"]), Z = /* @__PURE__ */ new Set([
49
+ "calldata",
50
+ "memory",
51
+ "storage"
52
+ ]);
39
53
  export {
40
- u as InvalidSignatureError,
41
- s as InvalidStructSignatureError,
42
- i as UnknownSignatureError
54
+ R as eventModifiers,
55
+ y as execConstructorSignature,
56
+ S as execErrorSignature,
57
+ f as execEventSignature,
58
+ z as execFallbackSignature,
59
+ p as execFunctionSignature,
60
+ b as execStructSignature,
61
+ Z as functionModifiers,
62
+ m as isConstructorSignature,
63
+ g as isErrorSignature,
64
+ l as isEventSignature,
65
+ v as isFallbackSignature,
66
+ x as isFunctionSignature,
67
+ A as isReceiveSignature,
68
+ $ as isStructSignature
43
69
  };
package/dist/index274.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./index261.cjs");class t extends s.BaseError{constructor({current:r,depth:e}){super("Unbalanced parentheses.",{metaMessages:[`"${r.trim()}" has too many ${e>0?"opening":"closing"} parentheses.`],details:`Depth "${e}"`}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParenthesisError"})}}exports.InvalidParenthesisError=t;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("./index272.cjs"),b=require("./index277.cjs"),T=require("./index278.cjs"),y=require("./index279.cjs"),q=require("./index281.cjs"),f=require("./index273.cjs"),S=require("./index275.cjs");function v(i){const n={},u=i.length;for(let e=0;e<u;e++){const o=i[e];if(!f.isStructSignature(o))continue;const r=f.execStructSignature(o);if(!r)throw new y.InvalidSignatureError({signature:o,type:"struct"});const p=r.properties.split(";"),t=[],w=p.length;for(let l=0;l<w;l++){const g=p[l].trim();if(!g)continue;const d=S.parseAbiParameter(g,{type:"struct"});t.push(d)}if(!t.length)throw new y.InvalidStructSignatureError({signature:o});n[r.name]=t}const s={},a=Object.entries(n),c=a.length;for(let e=0;e<c;e++){const[o,r]=a[e];s[o]=m(r,n)}return s}const P=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function m(i,n,u=new Set){const s=[],a=i.length;for(let c=0;c<a;c++){const e=i[c];if(h.isTupleRegex.test(e.type))s.push(e);else{const r=h.execTyped(P,e.type);if(!(r!=null&&r.type))throw new T.InvalidAbiTypeParameterError({abiParameter:e});const{array:p,type:t}=r;if(t in n){if(u.has(t))throw new q.CircularReferenceError({type:t});s.push({...e,type:`tuple${p??""}`,components:m(n[t]??[],n,new Set([...u,t]))})}else if(S.isSolidityType(t))s.push(e);else throw new b.UnknownTypeError({type:t})}}return s}exports.parseStructs=v;
package/dist/index274.js CHANGED
@@ -1,19 +1,68 @@
1
- import { BaseError as s } from "./index261.js";
2
- class n extends s {
3
- constructor({ current: r, depth: e }) {
4
- super("Unbalanced parentheses.", {
5
- metaMessages: [
6
- `"${r.trim()}" has too many ${e > 0 ? "opening" : "closing"} parentheses.`
7
- ],
8
- details: `Depth "${e}"`
9
- }), Object.defineProperty(this, "name", {
10
- enumerable: !0,
11
- configurable: !0,
12
- writable: !0,
13
- value: "InvalidParenthesisError"
14
- });
1
+ import { isTupleRegex as g, execTyped as w } from "./index272.js";
2
+ import { UnknownTypeError as S } from "./index277.js";
3
+ import { InvalidAbiTypeParameterError as d } from "./index278.js";
4
+ import { InvalidSignatureError as T, InvalidStructSignatureError as v } from "./index279.js";
5
+ import { CircularReferenceError as x } from "./index281.js";
6
+ import { isStructSignature as E, execStructSignature as b } from "./index273.js";
7
+ import { parseAbiParameter as A, isSolidityType as $ } from "./index275.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"
24
+ });
25
+ e.push(y);
26
+ }
27
+ if (!e.length)
28
+ throw new v({ signature: i });
29
+ n[r.name] = e;
15
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);
35
+ }
36
+ return o;
37
+ }
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 });
62
+ }
63
+ }
64
+ return o;
16
65
  }
17
66
  export {
18
- n as InvalidParenthesisError
67
+ C as parseStructs
19
68
  };
package/dist/index275.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index261.cjs");class t extends r.BaseError{constructor({type:e}){super("Circular reference detected.",{metaMessages:[`Struct "${e}" is a circular reference.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CircularReferenceError"})}}exports.CircularReferenceError=t;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("./index272.cjs"),A=require("./index277.cjs"),g=require("./index278.cjs"),d=require("./index279.cjs"),q=require("./index280.cjs"),h=require("./index302.cjs"),o=require("./index273.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/index275.js CHANGED
@@ -1,16 +1,189 @@
1
- import { BaseError as r } from "./index261.js";
2
- class a extends r {
3
- constructor({ type: e }) {
4
- super("Circular reference detected.", {
5
- metaMessages: [`Struct "${e}" is a circular reference.`]
6
- }), Object.defineProperty(this, "name", {
7
- enumerable: !0,
8
- configurable: !0,
9
- writable: !0,
10
- value: "CircularReferenceError"
11
- });
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 "./index302.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
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
+ }
12
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";
13
176
  }
14
177
  export {
15
- a as CircularReferenceError
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
16
189
  };
package/dist/index276.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function e(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const t=e();exports.idCache=t;
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;
package/dist/index276.js CHANGED
@@ -1,15 +1,25 @@
1
- function r() {
2
- return {
3
- current: 0,
4
- take() {
5
- return this.current++;
6
- },
7
- reset() {
8
- this.current = 0;
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
+ }
9
17
  }
10
- };
18
+ }
19
+ if (!r)
20
+ throw new f({ signature: t });
21
+ return r;
11
22
  }
12
- const t = /* @__PURE__ */ r();
13
23
  export {
14
- t as idCache
24
+ u as parseAbiItem
15
25
  };
package/dist/index277.cjs CHANGED
@@ -1,2 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function x(e){var c,d,f;const{scheme:n,statement:t,...p}=((c=e.match(h))==null?void 0:c.groups)??{},{chainId:s,expirationTime:i,issuedAt:o,notBefore:r,requestId:a,...m}=((d=e.match(A))==null?void 0:d.groups)??{},u=(f=e.split("Resources:")[1])==null?void 0:f.split(`
2
- - `).slice(1);return{...p,...m,...s?{chainId:Number(s)}:{},...i?{expirationTime:new Date(i)}:{},...o?{issuedAt:new Date(o)}:{},...r?{notBefore:new Date(r)}:{},...a?{requestId:a}:{},...u?{resources:u}:{},...n?{scheme:n}:{},...t?{statement:t}:{}}}const h=/^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\n)(?<address>0x[a-fA-F0-9]{40})\n\n(?:(?<statement>.*)\n\n)?/,A=/(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;exports.parseSiweMessage=x;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index268.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/index277.js CHANGED
@@ -1,21 +1,45 @@
1
- function A(e) {
2
- var c, d, f;
3
- const { scheme: n, statement: t, ...p } = ((c = e.match(m)) == null ? void 0 : c.groups) ?? {}, { chainId: s, expirationTime: i, issuedAt: o, notBefore: r, requestId: a, ...x } = ((d = e.match(h)) == null ? void 0 : d.groups) ?? {}, u = (f = e.split("Resources:")[1]) == null ? void 0 : f.split(`
4
- - `).slice(1);
5
- return {
6
- ...p,
7
- ...x,
8
- ...s ? { chainId: Number(s) } : {},
9
- ...i ? { expirationTime: new Date(i) } : {},
10
- ...o ? { issuedAt: new Date(o) } : {},
11
- ...r ? { notBefore: new Date(r) } : {},
12
- ...a ? { requestId: a } : {},
13
- ...u ? { resources: u } : {},
14
- ...n ? { scheme: n } : {},
15
- ...t ? { statement: t } : {}
16
- };
1
+ import { BaseError as r } from "./index268.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
+ });
39
+ }
17
40
  }
18
- const m = /^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\n)(?<address>0x[a-fA-F0-9]{40})\n\n(?:(?<statement>.*)\n\n)?/, h = /(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;
19
41
  export {
20
- A as parseSiweMessage
42
+ a as InvalidAbiItemError,
43
+ i as UnknownSolidityTypeError,
44
+ o as UnknownTypeError
21
45
  };
package/dist/index278.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("./index174.cjs"),f=require("./index184.cjs");function u(n){const{address:s,domain:r,message:e,nonce:t,scheme:i,time:a=new Date}=n;if(r&&e.domain!==r||t&&e.nonce!==t||i&&e.scheme!==i||e.expirationTime&&a>=e.expirationTime||e.notBefore&&a<e.notBefore)return!1;try{if(!e.address||!d.isAddress(e.address,{strict:!1})||s&&!f.isAddressEqual(e.address,s))return!1}catch{return!1}return!0}exports.validateSiweMessage=u;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index268.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;
package/dist/index278.js CHANGED
@@ -1,17 +1,79 @@
1
- import { isAddress as f } from "./index174.js";
2
- import { isAddressEqual as o } from "./index184.js";
3
- function l(n) {
4
- const { address: r, domain: s, message: e, nonce: t, scheme: a, time: i = /* @__PURE__ */ new Date() } = n;
5
- if (s && e.domain !== s || t && e.nonce !== t || a && e.scheme !== a || e.expirationTime && i >= e.expirationTime || e.notBefore && i < e.notBefore)
6
- return !1;
7
- try {
8
- if (!e.address || !f(e.address, { strict: !1 }) || r && !o(e.address, r))
9
- return !1;
10
- } catch {
11
- return !1;
1
+ import { BaseError as t } from "./index268.js";
2
+ class n extends t {
3
+ constructor({ param: e }) {
4
+ super("Invalid ABI parameter.", {
5
+ details: e
6
+ }), Object.defineProperty(this, "name", {
7
+ enumerable: !0,
8
+ configurable: !0,
9
+ writable: !0,
10
+ value: "InvalidParameterError"
11
+ });
12
+ }
13
+ }
14
+ class s extends t {
15
+ constructor({ param: e, name: r }) {
16
+ super("Invalid ABI parameter.", {
17
+ details: e,
18
+ metaMessages: [
19
+ `"${r}" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`
20
+ ]
21
+ }), Object.defineProperty(this, "name", {
22
+ enumerable: !0,
23
+ configurable: !0,
24
+ writable: !0,
25
+ value: "SolidityProtectedKeywordError"
26
+ });
27
+ }
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."]
65
+ }), Object.defineProperty(this, "name", {
66
+ enumerable: !0,
67
+ configurable: !0,
68
+ writable: !0,
69
+ value: "InvalidAbiTypeParameterError"
70
+ });
12
71
  }
13
- return !0;
14
72
  }
15
73
  export {
16
- l as validateSiweMessage
74
+ u as InvalidAbiTypeParameterError,
75
+ d as InvalidFunctionModifierError,
76
+ l as InvalidModifierError,
77
+ n as InvalidParameterError,
78
+ s as SolidityProtectedKeywordError
17
79
  };
package/dist/index279.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./index223.cjs"),t=new o.LruMap(8192);function i(r,{enabled:n=!0,id:e}){if(!n||!e)return r();if(t.get(e))return t.get(e);const u=r().finally(()=>t.delete(e));return t.set(e,u),u}exports.promiseCache=t;exports.withDedupe=i;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index268.cjs");class a extends e.BaseError{constructor({signature:r,type:n}){super(`Invalid ${n} signature.`,{details:r}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class u extends e.BaseError{constructor({signature:r}){super("Unknown signature.",{details:r}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class i extends e.BaseError{constructor({signature:r}){super("Invalid struct signature.",{details:r,metaMessages:["No properties exist."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidStructSignatureError"})}}exports.InvalidSignatureError=a;exports.InvalidStructSignatureError=i;exports.UnknownSignatureError=u;