@gardenfi/utils 2.4.0 → 2.4.2

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 (153) hide show
  1. package/dist/index107.cjs +1 -1
  2. package/dist/index107.js +1 -1
  3. package/dist/index110.cjs +1 -1
  4. package/dist/index110.js +1 -1
  5. package/dist/index111.cjs +1 -1
  6. package/dist/index111.js +4 -4
  7. package/dist/index113.cjs +1 -1
  8. package/dist/index113.js +1 -1
  9. package/dist/index114.cjs +1 -1
  10. package/dist/index114.js +1 -1
  11. package/dist/index115.cjs +1 -1
  12. package/dist/index115.js +1 -1
  13. package/dist/index116.cjs +1 -1
  14. package/dist/index116.js +1 -1
  15. package/dist/index23.cjs +1 -1
  16. package/dist/index23.js +6 -6
  17. package/dist/index233.cjs +1 -1
  18. package/dist/index233.js +25 -10
  19. package/dist/index234.cjs +1 -1
  20. package/dist/index234.js +13 -16
  21. package/dist/index235.cjs +1 -1
  22. package/dist/index235.js +14 -21
  23. package/dist/index236.cjs +1 -1
  24. package/dist/index236.js +5 -30
  25. package/dist/index237.cjs +1 -1
  26. package/dist/index237.js +14 -2
  27. package/dist/index238.cjs +1 -1
  28. package/dist/index238.js +9 -12
  29. package/dist/index239.cjs +1 -1
  30. package/dist/index239.js +16 -12
  31. package/dist/index240.cjs +1 -1
  32. package/dist/index240.js +10 -47
  33. package/dist/index241.cjs +1 -1
  34. package/dist/index241.js +15 -10
  35. package/dist/index242.cjs +1 -1
  36. package/dist/index242.js +22 -7
  37. package/dist/index243.cjs +1 -1
  38. package/dist/index243.js +30 -9
  39. package/dist/index244.cjs +1 -1
  40. package/dist/index244.js +2 -14
  41. package/dist/index245.cjs +1 -1
  42. package/dist/index245.js +13 -14
  43. package/dist/index246.cjs +1 -1
  44. package/dist/index246.js +12 -9
  45. package/dist/index247.cjs +1 -1
  46. package/dist/index247.js +47 -24
  47. package/dist/index248.cjs +1 -1
  48. package/dist/index248.js +11 -12
  49. package/dist/index249.cjs +1 -1
  50. package/dist/index249.js +7 -24
  51. package/dist/index250.cjs +1 -1
  52. package/dist/index250.js +8 -12
  53. package/dist/index251.cjs +1 -1
  54. package/dist/index251.js +13 -15
  55. package/dist/index252.cjs +1 -2
  56. package/dist/index252.js +11 -21
  57. package/dist/index253.cjs +1 -1
  58. package/dist/index253.js +9 -52
  59. package/dist/index254.cjs +1 -1
  60. package/dist/index254.js +24 -25
  61. package/dist/index255.cjs +1 -1
  62. package/dist/index255.js +12 -13
  63. package/dist/index256.cjs +1 -1
  64. package/dist/index256.js +24 -15
  65. package/dist/index257.cjs +1 -1
  66. package/dist/index257.js +13 -5
  67. package/dist/index258.cjs +1 -1
  68. package/dist/index258.js +15 -13
  69. package/dist/index259.cjs +2 -1
  70. package/dist/index259.js +24 -10
  71. package/dist/index260.cjs +1 -1
  72. package/dist/index260.js +52 -16
  73. package/dist/index280.cjs +1 -1
  74. package/dist/index280.js +1 -1
  75. package/dist/index282.cjs +1 -1
  76. package/dist/index282.js +1 -1
  77. package/dist/index287.cjs +1 -1
  78. package/dist/index287.js +1 -1
  79. package/dist/index288.cjs +1 -1
  80. package/dist/index288.js +139 -3
  81. package/dist/index289.cjs +1 -1
  82. package/dist/index289.js +39 -137
  83. package/dist/index290.cjs +1 -1
  84. package/dist/index290.js +72 -149
  85. package/dist/index291.cjs +1 -1
  86. package/dist/index291.js +2 -10
  87. package/dist/index292.cjs +1 -1
  88. package/dist/index292.js +3 -113
  89. package/dist/index293.cjs +1 -2
  90. package/dist/index293.js +128 -122
  91. package/dist/index294.cjs +1 -1
  92. package/dist/index294.js +153 -137
  93. package/dist/index295.cjs +1 -1
  94. package/dist/index295.js +9 -42
  95. package/dist/index296.cjs +1 -1
  96. package/dist/index296.js +107 -72
  97. package/dist/index297.cjs +2 -1
  98. package/dist/index297.js +135 -2
  99. package/dist/index301.cjs +1 -1
  100. package/dist/index301.js +2 -2
  101. package/dist/index302.cjs +1 -1
  102. package/dist/index302.js +1 -1
  103. package/dist/index305.cjs +1 -1
  104. package/dist/index305.js +1 -1
  105. package/dist/index306.cjs +1 -1
  106. package/dist/index306.js +1 -1
  107. package/dist/index310.cjs +1 -1
  108. package/dist/index310.js +2 -2
  109. package/dist/index311.cjs +1 -1
  110. package/dist/index311.js +1 -1
  111. package/dist/index33.cjs +1 -1
  112. package/dist/index33.js +1 -1
  113. package/dist/index39.cjs +1 -1
  114. package/dist/index39.js +1 -1
  115. package/dist/index56.cjs +1 -1
  116. package/dist/index56.js +2 -2
  117. package/dist/index57.cjs +1 -1
  118. package/dist/index57.js +1 -1
  119. package/dist/index58.cjs +1 -1
  120. package/dist/index58.js +2 -2
  121. package/dist/index59.cjs +1 -1
  122. package/dist/index59.js +1 -1
  123. package/dist/index60.cjs +1 -1
  124. package/dist/index60.js +2 -2
  125. package/dist/index61.cjs +1 -1
  126. package/dist/index61.js +6 -6
  127. package/dist/index62.cjs +1 -1
  128. package/dist/index62.js +2 -2
  129. package/dist/index63.cjs +1 -1
  130. package/dist/index63.js +1 -1
  131. package/dist/index64.cjs +1 -1
  132. package/dist/index64.js +1 -1
  133. package/dist/index65.cjs +1 -1
  134. package/dist/index65.js +1 -1
  135. package/dist/index67.cjs +1 -1
  136. package/dist/index67.js +4 -4
  137. package/dist/index76.cjs +1 -1
  138. package/dist/index76.js +1 -1
  139. package/dist/index77.cjs +1 -1
  140. package/dist/index77.js +1 -1
  141. package/dist/index82.cjs +1 -1
  142. package/dist/index82.js +1 -1
  143. package/dist/index88.cjs +1 -1
  144. package/dist/index88.js +3 -3
  145. package/dist/index89.cjs +1 -1
  146. package/dist/index89.js +2 -2
  147. package/dist/index91.cjs +1 -1
  148. package/dist/index91.js +1 -1
  149. package/dist/index92.cjs +1 -1
  150. package/dist/index92.js +1 -1
  151. package/dist/index98.cjs +1 -1
  152. package/dist/index98.js +1 -1
  153. package/package.json +1 -1
package/dist/index289.js CHANGED
@@ -1,143 +1,45 @@
1
- import { readContract as g } from "./index36.js";
2
- import { EnsAvatarUriResolutionError as d, EnsAvatarInvalidNftUriError as f, EnsAvatarUnsupportedNamespaceError as v, EnsAvatarInvalidMetadataError as A } from "./index144.js";
3
- const b = /(?<protocol>https?:\/\/[^\/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/, l = /^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\/(?<target>[\w\-.]+))?(?<subtarget>\/.*)?$/, E = /^data:([a-zA-Z\-/+]*);base64,([^"].*)/, C = /^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;
4
- async function k(t) {
5
- try {
6
- const e = await fetch(t, { method: "HEAD" });
7
- if (e.status === 200) {
8
- const n = e.headers.get("content-type");
9
- return n == null ? void 0 : n.startsWith("image/");
10
- }
11
- return !1;
12
- } catch (e) {
13
- return typeof e == "object" && typeof e.response < "u" || !globalThis.hasOwnProperty("Image") ? !1 : new Promise((n) => {
14
- const r = new Image();
15
- r.onload = () => {
16
- n(!0);
17
- }, r.onerror = () => {
18
- n(!1);
19
- }, r.src = t;
20
- });
1
+ import { Hash as d, ahash as u, toBytes as H, clean as l, aexists as a, abytes as p } from "./index287.js";
2
+ class r extends d {
3
+ constructor(t, i) {
4
+ super(), this.finished = !1, this.destroyed = !1, u(t);
5
+ const h = H(i);
6
+ if (this.iHash = t.create(), typeof this.iHash.update != "function")
7
+ throw new Error("Expected instance of class which extends utils.Hash");
8
+ this.blockLen = this.iHash.blockLen, this.outputLen = this.iHash.outputLen;
9
+ const o = this.blockLen, e = new Uint8Array(o);
10
+ e.set(h.length > o ? t.create().update(h).digest() : h);
11
+ for (let s = 0; s < e.length; s++)
12
+ e[s] ^= 54;
13
+ this.iHash.update(e), this.oHash = t.create();
14
+ for (let s = 0; s < e.length; s++)
15
+ e[s] ^= 106;
16
+ this.oHash.update(e), l(e);
21
17
  }
22
- }
23
- function w(t, e) {
24
- return t ? t.endsWith("/") ? t.slice(0, -1) : t : e;
25
- }
26
- function N({ uri: t, gatewayUrls: e }) {
27
- const n = E.test(t);
28
- if (n)
29
- return { uri: t, isOnChain: !0, isEncoded: n };
30
- const r = w(e == null ? void 0 : e.ipfs, "https://ipfs.io"), a = w(e == null ? void 0 : e.arweave, "https://arweave.net"), i = t.match(b), { protocol: o, subpath: p, target: s, subtarget: m = "" } = (i == null ? void 0 : i.groups) || {}, u = o === "ipns:/" || p === "ipns/", h = o === "ipfs:/" || p === "ipfs/" || l.test(t);
31
- if (t.startsWith("http") && !u && !h) {
32
- let I = t;
33
- return e != null && e.arweave && (I = t.replace(/https:\/\/arweave.net/g, e == null ? void 0 : e.arweave)), { uri: I, isOnChain: !1, isEncoded: !1 };
18
+ update(t) {
19
+ return a(this), this.iHash.update(t), this;
34
20
  }
35
- if ((u || h) && s)
36
- return {
37
- uri: `${r}/${u ? "ipns" : "ipfs"}/${s}${m}`,
38
- isOnChain: !1,
39
- isEncoded: !1
40
- };
41
- if (o === "ar:/" && s)
42
- return {
43
- uri: `${a}/${s}${m || ""}`,
44
- isOnChain: !1,
45
- isEncoded: !1
46
- };
47
- let c = t.replace(C, "");
48
- if (c.startsWith("<svg") && (c = `data:image/svg+xml;base64,${btoa(c)}`), c.startsWith("data:") || c.startsWith("{"))
49
- return {
50
- uri: c,
51
- isOnChain: !0,
52
- isEncoded: !1
53
- };
54
- throw new d({ uri: t });
55
- }
56
- function R(t) {
57
- if (typeof t != "object" || !("image" in t) && !("image_url" in t) && !("image_data" in t))
58
- throw new A({ data: t });
59
- return t.image || t.image_url || t.image_data;
60
- }
61
- async function O({ gatewayUrls: t, uri: e }) {
62
- try {
63
- const n = await fetch(e).then((a) => a.json());
64
- return await _({
65
- gatewayUrls: t,
66
- uri: R(n)
67
- });
68
- } catch {
69
- throw new d({ uri: e });
21
+ digestInto(t) {
22
+ a(this), p(t, this.outputLen), this.finished = !0, this.iHash.digestInto(t), this.oHash.update(t), this.oHash.digestInto(t), this.destroy();
23
+ }
24
+ digest() {
25
+ const t = new Uint8Array(this.oHash.outputLen);
26
+ return this.digestInto(t), t;
27
+ }
28
+ _cloneInto(t) {
29
+ t || (t = Object.create(Object.getPrototypeOf(this), {}));
30
+ const { oHash: i, iHash: h, finished: o, destroyed: e, blockLen: s, outputLen: c } = this;
31
+ return t = t, t.finished = o, t.destroyed = e, t.blockLen = s, t.outputLen = c, t.oHash = i._cloneInto(t.oHash), t.iHash = h._cloneInto(t.iHash), t;
32
+ }
33
+ clone() {
34
+ return this._cloneInto();
35
+ }
36
+ destroy() {
37
+ this.destroyed = !0, this.oHash.destroy(), this.iHash.destroy();
70
38
  }
71
39
  }
72
- async function _({ gatewayUrls: t, uri: e }) {
73
- const { uri: n, isOnChain: r } = N({ uri: e, gatewayUrls: t });
74
- if (r || await k(n))
75
- return n;
76
- throw new d({ uri: e });
77
- }
78
- function z(t) {
79
- let e = t;
80
- e.startsWith("did:nft:") && (e = e.replace("did:nft:", "").replace(/_/g, "/"));
81
- const [n, r, a] = e.split("/"), [i, o] = n.split(":"), [p, s] = r.split(":");
82
- if (!i || i.toLowerCase() !== "eip155")
83
- throw new f({ reason: "Only EIP-155 supported" });
84
- if (!o)
85
- throw new f({ reason: "Chain ID not found" });
86
- if (!s)
87
- throw new f({
88
- reason: "Contract address not found"
89
- });
90
- if (!a)
91
- throw new f({ reason: "Token ID not found" });
92
- if (!p)
93
- throw new f({ reason: "ERC namespace not found" });
94
- return {
95
- chainID: Number.parseInt(o),
96
- namespace: p.toLowerCase(),
97
- contractAddress: s,
98
- tokenID: a
99
- };
100
- }
101
- async function P(t, { nft: e }) {
102
- if (e.namespace === "erc721")
103
- return g(t, {
104
- address: e.contractAddress,
105
- abi: [
106
- {
107
- name: "tokenURI",
108
- type: "function",
109
- stateMutability: "view",
110
- inputs: [{ name: "tokenId", type: "uint256" }],
111
- outputs: [{ name: "", type: "string" }]
112
- }
113
- ],
114
- functionName: "tokenURI",
115
- args: [BigInt(e.tokenID)]
116
- });
117
- if (e.namespace === "erc1155")
118
- return g(t, {
119
- address: e.contractAddress,
120
- abi: [
121
- {
122
- name: "uri",
123
- type: "function",
124
- stateMutability: "view",
125
- inputs: [{ name: "_id", type: "uint256" }],
126
- outputs: [{ name: "", type: "string" }]
127
- }
128
- ],
129
- functionName: "uri",
130
- args: [BigInt(e.tokenID)]
131
- });
132
- throw new v({ namespace: e.namespace });
133
- }
40
+ const y = (n, t, i) => new r(n, t).update(i).digest();
41
+ y.create = (n, t) => new r(n, t);
134
42
  export {
135
- w as getGateway,
136
- R as getJsonImage,
137
- O as getMetadataAvatarUri,
138
- P as getNftTokenUri,
139
- k as isImageUri,
140
- _ as parseAvatarUri,
141
- z as parseNftUri,
142
- N as resolveAvatarUri
43
+ r as HMAC,
44
+ y as hmac
143
45
  };
package/dist/index290.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./index303.cjs"),$=require("./index304.cjs"),o=require("./index305.cjs"),E=new TextEncoder,h=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function x(r,e={}){const{strict:t=!1}=e;if(!r)throw new c(r);if(typeof r!="string")throw new c(r);if(t&&!/^0x[0-9a-fA-F]*$/.test(r))throw new f(r);if(!r.startsWith("0x"))throw new f(r)}function y(...r){return`0x${r.reduce((e,t)=>e+t.replace("0x",""),"")}`}function O(r,e={}){const t=`0x${Number(r)}`;return typeof e.size=="number"?(o.assertSize(t,e.size),l(t,e.size)):t}function b(r,e={}){let t="";for(let i=0;i<r.length;i++)t+=h[r[i]];const n=`0x${t}`;return typeof e.size=="number"?(o.assertSize(n,e.size),m(n,e.size)):n}function S(r,e={}){const{signed:t,size:n}=e,i=BigInt(r);let s;n?t?s=(1n<<BigInt(n)*8n-1n)-1n:s=2n**(BigInt(n)*8n)-1n:typeof r=="number"&&(s=BigInt(Number.MAX_SAFE_INTEGER));const d=typeof s=="bigint"&&t?-s-1n:0;if(s&&i>s||i<d){const u=typeof r=="bigint"?"n":"";throw new p({max:s?`${s}${u}`:void 0,min:`${d}${u}`,signed:t,size:n,value:`${r}${u}`})}const g=`0x${(t&&i<0?(1n<<BigInt(n*8))+BigInt(i):i).toString(16)}`;return n?l(g,n):g}function z(r,e={}){return b(E.encode(r),e)}function l(r,e){return o.pad(r,{dir:"left",size:e})}function m(r,e){return o.pad(r,{dir:"right",size:e})}function w(r,e,t,n={}){const{strict:i}=n;o.assertStartOffset(r,e);const s=`0x${r.replace("0x","").slice((e??0)*2,(t??r.length)*2)}`;return i&&o.assertEndOffset(s,e,t),s}function B(r){return Math.ceil((r.length-2)/2)}function I(r,e={}){const{strict:t=!1}=e;try{return x(r,{strict:t}),!0}catch{return!1}}class p extends a.BaseError{constructor({max:e,min:t,signed:n,size:i,value:s}){super(`Number \`${s}\` is not in safe${i?` ${i*8}-bit`:""}${n?" signed":" unsigned"} integer range ${e?`(\`${t}\` to \`${e}\`)`:`(above \`${t}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class c extends a.BaseError{constructor(e){super(`Value \`${typeof e=="object"?$.stringify(e):e}\` of type \`${typeof e}\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `"0x${string}"`.']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexTypeError"})}}class f extends a.BaseError{constructor(e){super(`Value \`${e}\` is an invalid hex value.`,{metaMessages:['Hex values must start with `"0x"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexValueError"})}}class H extends a.BaseError{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \`${t}\` bytes. Given size: \`${e}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}}class v extends a.BaseError{constructor({offset:e,position:t,size:n}){super(`Slice ${t==="start"?"starting":"ending"} at offset \`${e}\` is out-of-bounds (size: \`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}}class P extends a.BaseError{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\`${e}\`) exceeds padding size (\`${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}exports.IntegerOutOfRangeError=p;exports.InvalidHexTypeError=c;exports.InvalidHexValueError=f;exports.SizeExceedsPaddingSizeError=P;exports.SizeOverflowError=H;exports.SliceOffsetOutOfBoundsError=v;exports.assert=x;exports.concat=y;exports.fromBoolean=O;exports.fromBytes=b;exports.fromNumber=S;exports.fromString=z;exports.padLeft=l;exports.padRight=m;exports.size=B;exports.slice=w;exports.validate=I;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("./index287.cjs");function p(o,t,s,i){if(typeof o.setBigUint64=="function")return o.setBigUint64(t,s,i);const n=BigInt(32),r=BigInt(4294967295),e=Number(s>>n&r),h=Number(s&r),u=i?4:0,l=i?0:4;o.setUint32(t+u,e,i),o.setUint32(t+l,h,i)}function g(o,t,s){return o&t^~o&s}function b(o,t,s){return o&t^o&s^t&s}class d extends f.Hash{constructor(t,s,i,n){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=t,this.outputLen=s,this.padOffset=i,this.isLE=n,this.buffer=new Uint8Array(t),this.view=f.createView(this.buffer)}update(t){f.aexists(this),t=f.toBytes(t),f.abytes(t);const{view:s,buffer:i,blockLen:n}=this,r=t.length;for(let e=0;e<r;){const h=Math.min(n-this.pos,r-e);if(h===n){const u=f.createView(t);for(;n<=r-e;e+=n)this.process(u,e);continue}i.set(t.subarray(e,e+h),this.pos),this.pos+=h,e+=h,this.pos===n&&(this.process(s,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){f.aexists(this),f.aoutput(t,this),this.finished=!0;const{buffer:s,view:i,blockLen:n,isLE:r}=this;let{pos:e}=this;s[e++]=128,f.clean(this.buffer.subarray(e)),this.padOffset>n-e&&(this.process(i,0),e=0);for(let c=e;c<n;c++)s[c]=0;p(i,n-8,BigInt(this.length*8),r),this.process(i,0);const h=f.createView(t),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const l=u/4,a=this.get();if(l>a.length)throw new Error("_sha2: outputLen bigger than state");for(let c=0;c<l;c++)h.setUint32(4*c,a[c],r)}digest(){const{buffer:t,outputLen:s}=this;this.digestInto(t);const i=t.slice(0,s);return this.destroy(),i}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());const{blockLen:s,buffer:i,length:n,finished:r,destroyed:e,pos:h}=this;return t.destroyed=e,t.finished=r,t.length=n,t.pos=h,n%s&&t.buffer.set(i),t}clone(){return this._cloneInto()}}const w=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);exports.Chi=g;exports.HashMD=d;exports.Maj=b;exports.SHA256_IV=w;exports.setBigUint64=p;
package/dist/index290.js CHANGED
@@ -1,158 +1,81 @@
1
- import { BaseError as o } from "./index303.js";
2
- import { stringify as b } from "./index304.js";
3
- import { pad as d, assertEndOffset as m, assertSize as g, assertStartOffset as p } from "./index305.js";
4
- const $ = /* @__PURE__ */ new TextEncoder(), h = /* @__PURE__ */ Array.from({ length: 256 }, (t, e) => e.toString(16).padStart(2, "0"));
5
- function y(t, e = {}) {
6
- const { strict: r = !1 } = e;
7
- if (!t)
8
- throw new f(t);
9
- if (typeof t != "string")
10
- throw new f(t);
11
- if (r && !/^0x[0-9a-fA-F]*$/.test(t))
12
- throw new l(t);
13
- if (!t.startsWith("0x"))
14
- throw new l(t);
15
- }
16
- function B(...t) {
17
- return `0x${t.reduce((e, r) => e + r.replace("0x", ""), "")}`;
18
- }
19
- function P(t, e = {}) {
20
- const r = `0x${Number(t)}`;
21
- return typeof e.size == "number" ? (g(r, e.size), x(r, e.size)) : r;
22
- }
23
- function w(t, e = {}) {
24
- let r = "";
25
- for (let i = 0; i < t.length; i++)
26
- r += h[t[i]];
27
- const n = `0x${r}`;
28
- return typeof e.size == "number" ? (g(n, e.size), E(n, e.size)) : n;
29
- }
30
- function V(t, e = {}) {
31
- const { signed: r, size: n } = e, i = BigInt(t);
32
- let s;
33
- n ? r ? s = (1n << BigInt(n) * 8n - 1n) - 1n : s = 2n ** (BigInt(n) * 8n) - 1n : typeof t == "number" && (s = BigInt(Number.MAX_SAFE_INTEGER));
34
- const u = typeof s == "bigint" && r ? -s - 1n : 0;
35
- if (s && i > s || i < u) {
36
- const a = typeof t == "bigint" ? "n" : "";
37
- throw new O({
38
- max: s ? `${s}${a}` : void 0,
39
- min: `${u}${a}`,
40
- signed: r,
41
- size: n,
42
- value: `${t}${a}`
43
- });
44
- }
45
- const c = `0x${(r && i < 0 ? (1n << BigInt(n * 8)) + BigInt(i) : i).toString(16)}`;
46
- return n ? x(c, n) : c;
47
- }
48
- function j(t, e = {}) {
49
- return w($.encode(t), e);
50
- }
51
- function x(t, e) {
52
- return d(t, { dir: "left", size: e });
53
- }
54
- function E(t, e) {
55
- return d(t, { dir: "right", size: e });
56
- }
57
- function v(t, e, r, n = {}) {
58
- const { strict: i } = n;
59
- p(t, e);
60
- const s = `0x${t.replace("0x", "").slice((e ?? 0) * 2, (r ?? t.length) * 2)}`;
61
- return i && m(s, e, r), s;
62
- }
63
- function A(t) {
64
- return Math.ceil((t.length - 2) / 2);
65
- }
66
- function N(t, e = {}) {
67
- const { strict: r = !1 } = e;
68
- try {
69
- return y(t, { strict: r }), !0;
70
- } catch {
71
- return !1;
1
+ import { Hash as g, createView as l, aexists as b, toBytes as a, abytes as d, aoutput as x, clean as w } from "./index287.js";
2
+ function y(o, t, s, n) {
3
+ if (typeof o.setBigUint64 == "function")
4
+ return o.setBigUint64(t, s, n);
5
+ const i = BigInt(32), h = BigInt(4294967295), e = Number(s >> i & h), r = Number(s & h), c = n ? 4 : 0, u = n ? 0 : 4;
6
+ o.setUint32(t + c, e, n), o.setUint32(t + u, r, n);
7
+ }
8
+ function U(o, t, s) {
9
+ return o & t ^ ~o & s;
10
+ }
11
+ function _(o, t, s) {
12
+ return o & t ^ o & s ^ t & s;
13
+ }
14
+ class m extends g {
15
+ constructor(t, s, n, i) {
16
+ super(), this.finished = !1, this.length = 0, this.pos = 0, this.destroyed = !1, this.blockLen = t, this.outputLen = s, this.padOffset = n, this.isLE = i, this.buffer = new Uint8Array(t), this.view = l(this.buffer);
72
17
  }
73
- }
74
- class O extends o {
75
- constructor({ max: e, min: r, signed: n, size: i, value: s }) {
76
- super(`Number \`${s}\` is not in safe${i ? ` ${i * 8}-bit` : ""}${n ? " signed" : " unsigned"} integer range ${e ? `(\`${r}\` to \`${e}\`)` : `(above \`${r}\`)`}`), Object.defineProperty(this, "name", {
77
- enumerable: !0,
78
- configurable: !0,
79
- writable: !0,
80
- value: "Hex.IntegerOutOfRangeError"
81
- });
18
+ update(t) {
19
+ b(this), t = a(t), d(t);
20
+ const { view: s, buffer: n, blockLen: i } = this, h = t.length;
21
+ for (let e = 0; e < h; ) {
22
+ const r = Math.min(i - this.pos, h - e);
23
+ if (r === i) {
24
+ const c = l(t);
25
+ for (; i <= h - e; e += i)
26
+ this.process(c, e);
27
+ continue;
28
+ }
29
+ n.set(t.subarray(e, e + r), this.pos), this.pos += r, e += r, this.pos === i && (this.process(s, 0), this.pos = 0);
30
+ }
31
+ return this.length += t.length, this.roundClean(), this;
82
32
  }
83
- }
84
- class f extends o {
85
- constructor(e) {
86
- super(`Value \`${typeof e == "object" ? b(e) : e}\` of type \`${typeof e}\` is an invalid hex type.`, {
87
- metaMessages: ['Hex types must be represented as `"0x${string}"`.']
88
- }), Object.defineProperty(this, "name", {
89
- enumerable: !0,
90
- configurable: !0,
91
- writable: !0,
92
- value: "Hex.InvalidHexTypeError"
93
- });
33
+ digestInto(t) {
34
+ b(this), x(t, this), this.finished = !0;
35
+ const { buffer: s, view: n, blockLen: i, isLE: h } = this;
36
+ let { pos: e } = this;
37
+ s[e++] = 128, w(this.buffer.subarray(e)), this.padOffset > i - e && (this.process(n, 0), e = 0);
38
+ for (let f = e; f < i; f++)
39
+ s[f] = 0;
40
+ y(n, i - 8, BigInt(this.length * 8), h), this.process(n, 0);
41
+ const r = l(t), c = this.outputLen;
42
+ if (c % 4)
43
+ throw new Error("_sha2: outputLen should be aligned to 32bit");
44
+ const u = c / 4, p = this.get();
45
+ if (u > p.length)
46
+ throw new Error("_sha2: outputLen bigger than state");
47
+ for (let f = 0; f < u; f++)
48
+ r.setUint32(4 * f, p[f], h);
94
49
  }
95
- }
96
- class l extends o {
97
- constructor(e) {
98
- super(`Value \`${e}\` is an invalid hex value.`, {
99
- metaMessages: [
100
- 'Hex values must start with `"0x"` and contain only hexadecimal characters (0-9, a-f, A-F).'
101
- ]
102
- }), Object.defineProperty(this, "name", {
103
- enumerable: !0,
104
- configurable: !0,
105
- writable: !0,
106
- value: "Hex.InvalidHexValueError"
107
- });
50
+ digest() {
51
+ const { buffer: t, outputLen: s } = this;
52
+ this.digestInto(t);
53
+ const n = t.slice(0, s);
54
+ return this.destroy(), n;
108
55
  }
109
- }
110
- class _ extends o {
111
- constructor({ givenSize: e, maxSize: r }) {
112
- super(`Size cannot exceed \`${r}\` bytes. Given size: \`${e}\` bytes.`), Object.defineProperty(this, "name", {
113
- enumerable: !0,
114
- configurable: !0,
115
- writable: !0,
116
- value: "Hex.SizeOverflowError"
117
- });
118
- }
119
- }
120
- class M extends o {
121
- constructor({ offset: e, position: r, size: n }) {
122
- super(`Slice ${r === "start" ? "starting" : "ending"} at offset \`${e}\` is out-of-bounds (size: \`${n}\`).`), Object.defineProperty(this, "name", {
123
- enumerable: !0,
124
- configurable: !0,
125
- writable: !0,
126
- value: "Hex.SliceOffsetOutOfBoundsError"
127
- });
56
+ _cloneInto(t) {
57
+ t || (t = new this.constructor()), t.set(...this.get());
58
+ const { blockLen: s, buffer: n, length: i, finished: h, destroyed: e, pos: r } = this;
59
+ return t.destroyed = e, t.finished = h, t.length = i, t.pos = r, i % s && t.buffer.set(n), t;
128
60
  }
129
- }
130
- class R extends o {
131
- constructor({ size: e, targetSize: r, type: n }) {
132
- super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\`${e}\`) exceeds padding size (\`${r}\`).`), Object.defineProperty(this, "name", {
133
- enumerable: !0,
134
- configurable: !0,
135
- writable: !0,
136
- value: "Hex.SizeExceedsPaddingSizeError"
137
- });
61
+ clone() {
62
+ return this._cloneInto();
138
63
  }
139
64
  }
65
+ const B = /* @__PURE__ */ Uint32Array.from([
66
+ 1779033703,
67
+ 3144134277,
68
+ 1013904242,
69
+ 2773480762,
70
+ 1359893119,
71
+ 2600822924,
72
+ 528734635,
73
+ 1541459225
74
+ ]);
140
75
  export {
141
- O as IntegerOutOfRangeError,
142
- f as InvalidHexTypeError,
143
- l as InvalidHexValueError,
144
- R as SizeExceedsPaddingSizeError,
145
- _ as SizeOverflowError,
146
- M as SliceOffsetOutOfBoundsError,
147
- y as assert,
148
- B as concat,
149
- P as fromBoolean,
150
- w as fromBytes,
151
- V as fromNumber,
152
- j as fromString,
153
- x as padLeft,
154
- E as padRight,
155
- A as size,
156
- v as slice,
157
- N as validate
76
+ U as Chi,
77
+ m as HashMD,
78
+ _ as Maj,
79
+ B as SHA256_IV,
80
+ y as setBigUint64
158
81
  };
package/dist/index291.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./index290.cjs");function r(e){return{address:e.address,amount:o.fromNumber(e.amount),index:o.fromNumber(e.index),validatorIndex:o.fromNumber(e.validatorIndex)}}exports.toRpc=r;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;exports.crypto=o;
package/dist/index291.js CHANGED
@@ -1,12 +1,4 @@
1
- import { fromNumber as e } from "./index290.js";
2
- function r(o) {
3
- return {
4
- address: o.address,
5
- amount: e(o.amount),
6
- index: e(o.index),
7
- validatorIndex: e(o.validatorIndex)
8
- };
9
- }
1
+ const o = typeof globalThis == "object" && "crypto" in globalThis ? globalThis.crypto : void 0;
10
2
  export {
11
- r as toRpc
3
+ o as crypto
12
4
  };
package/dist/index292.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("./index303.cjs"),$=require("./index306.cjs"),g=require("./index290.cjs"),c=require("./index307.cjs"),y=require("./index270.cjs"),h=require("./index263.cjs");function I(t,r={}){const{prepare:i=!0}=r,n=Array.isArray(t)||typeof t=="string"?y.parseAbiItem(t):t;return{...n,...i?{hash:o(n)}:{}}}function q(t,r,i){const{args:n=[],prepare:a=!0}=i??{},v=g.validate(r,{strict:!1}),s=t.filter(e=>v?e.type==="function"||e.type==="error"?A(e)===g.slice(r,0,4):e.type==="event"?o(e)===r:!1:"name"in e&&e.name===r);if(s.length===0)throw new l({name:r});if(s.length===1)return{...s[0],...a?{hash:o(s[0])}:{}};let u;for(const e of s){if(!("inputs"in e))continue;if(!n||n.length===0){if(!e.inputs||e.inputs.length===0)return{...e,...a?{hash:o(e)}:{}};continue}if(!e.inputs||e.inputs.length===0||e.inputs.length!==n.length)continue;if(n.every((f,E)=>{const d="inputs"in e&&e.inputs[E];return d?c.isArgOfType(f,d):!1})){if(u&&"inputs"in u&&u.inputs){const f=c.getAmbiguousTypes(e.inputs,u.inputs,n);if(f)throw new w({abiItem:e,type:f[0]},{abiItem:u,type:f[1]})}u=e}}const p=(()=>{if(u)return u;const[e,...m]=s;return{...e,overloads:m}})();if(!p)throw new l({name:r});return{...p,...a?{hash:o(p)}:{}}}function A(t){return g.slice(o(t),0,4)}function S(t){const r=typeof t=="string"?t:h.formatAbiItem(t);return c.normalizeSignature(r)}function o(t){return typeof t!="string"&&"hash"in t&&t.hash?t.hash:$.keccak256(g.fromString(S(t)))}class w extends b.BaseError{constructor(r,i){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${r.type}\` in \`${c.normalizeSignature(h.formatAbiItem(r.abiItem))}\`, and`,`\`${i.type}\` in \`${c.normalizeSignature(h.formatAbiItem(i.abiItem))}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.AmbiguityError"})}}class l extends b.BaseError{constructor({name:r,data:i,type:n="item"}){const a=r?` with name "${r}"`:i?` with data "${i}"`:"";super(`ABI ${n}${a} not found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.NotFoundError"})}}exports.AmbiguityError=w;exports.NotFoundError=l;exports.from=I;exports.fromAbi=q;exports.getSelector=A;exports.getSignature=S;exports.getSignatureHash=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function t(e){return`[${e.slice(2)}]`}exports.encodeLabelhash=t;
package/dist/index292.js CHANGED
@@ -1,116 +1,6 @@
1
- import { BaseError as y } from "./index303.js";
2
- import { keccak256 as v } from "./index306.js";
3
- import { validate as $, slice as A, fromString as S } from "./index290.js";
4
- import { isArgOfType as E, normalizeSignature as p, getAmbiguousTypes as B } from "./index307.js";
5
- import { parseAbiItem as l } from "./index270.js";
6
- import { formatAbiItem as h } from "./index263.js";
7
- function H(e, r = {}) {
8
- const { prepare: i = !0 } = r, n = Array.isArray(e) ? l(e) : typeof e == "string" ? l(e) : e;
9
- return {
10
- ...n,
11
- ...i ? { hash: s(n) } : {}
12
- };
13
- }
14
- function M(e, r, i) {
15
- const { args: n = [], prepare: f = !0 } = i ?? {}, b = $(r, { strict: !1 }), u = e.filter((t) => b ? t.type === "function" || t.type === "error" ? T(t) === A(r, 0, 4) : t.type === "event" ? s(t) === r : !1 : "name" in t && t.name === r);
16
- if (u.length === 0)
17
- throw new d({ name: r });
18
- if (u.length === 1)
19
- return {
20
- ...u[0],
21
- ...f ? { hash: s(u[0]) } : {}
22
- };
23
- let o;
24
- for (const t of u) {
25
- if (!("inputs" in t))
26
- continue;
27
- if (!n || n.length === 0) {
28
- if (!t.inputs || t.inputs.length === 0)
29
- return {
30
- ...t,
31
- ...f ? { hash: s(t) } : {}
32
- };
33
- continue;
34
- }
35
- if (!t.inputs || t.inputs.length === 0 || t.inputs.length !== n.length)
36
- continue;
37
- if (n.every((a, w) => {
38
- const g = "inputs" in t && t.inputs[w];
39
- return g ? E(a, g) : !1;
40
- })) {
41
- if (o && "inputs" in o && o.inputs) {
42
- const a = B(t.inputs, o.inputs, n);
43
- if (a)
44
- throw new O({
45
- abiItem: t,
46
- type: a[0]
47
- }, {
48
- abiItem: o,
49
- type: a[1]
50
- });
51
- }
52
- o = t;
53
- }
54
- }
55
- const c = (() => {
56
- if (o)
57
- return o;
58
- const [t, ...m] = u;
59
- return { ...t, overloads: m };
60
- })();
61
- if (!c)
62
- throw new d({ name: r });
63
- return {
64
- ...c,
65
- ...f ? { hash: s(c) } : {}
66
- };
67
- }
68
- function T(e) {
69
- return A(s(e), 0, 4);
70
- }
71
- function F(e) {
72
- const r = typeof e == "string" ? e : h(e);
73
- return p(r);
74
- }
75
- function s(e) {
76
- return typeof e != "string" && "hash" in e && e.hash ? e.hash : v(S(F(e)));
77
- }
78
- class O extends y {
79
- constructor(r, i) {
80
- super("Found ambiguous types in overloaded ABI Items.", {
81
- metaMessages: [
82
- // TODO: abitype to add support for signature-formatted ABI items.
83
- `\`${r.type}\` in \`${p(h(r.abiItem))}\`, and`,
84
- `\`${i.type}\` in \`${p(h(i.abiItem))}\``,
85
- "",
86
- "These types encode differently and cannot be distinguished at runtime.",
87
- "Remove one of the ambiguous items in the ABI."
88
- ]
89
- }), Object.defineProperty(this, "name", {
90
- enumerable: !0,
91
- configurable: !0,
92
- writable: !0,
93
- value: "AbiItem.AmbiguityError"
94
- });
95
- }
96
- }
97
- class d extends y {
98
- constructor({ name: r, data: i, type: n = "item" }) {
99
- const f = r ? ` with name "${r}"` : i ? ` with data "${i}"` : "";
100
- super(`ABI ${n}${f} not found.`), Object.defineProperty(this, "name", {
101
- enumerable: !0,
102
- configurable: !0,
103
- writable: !0,
104
- value: "AbiItem.NotFoundError"
105
- });
106
- }
1
+ function n(e) {
2
+ return `[${e.slice(2)}]`;
107
3
  }
108
4
  export {
109
- O as AmbiguityError,
110
- d as NotFoundError,
111
- H as from,
112
- M as fromAbi,
113
- T as getSelector,
114
- F as getSignature,
115
- s as getSignatureHash
5
+ n as encodeLabelhash
116
6
  };
package/dist/index293.cjs CHANGED
@@ -1,2 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const x=require("./index308.cjs"),d=require("./index303.cjs"),a=require("./index290.cjs"),g=require("./index309.cjs"),p=require("./index310.cjs");function P(n,e,t){const{checksumAddress:r=!1}={};if(n.length!==e.length)throw new m({expectedLength:n.length,givenLength:e.length});const s=p.prepareParameters({checksumAddress:r,parameters:n,values:e}),o=p.encode(s);return o.length===0?"0x":o}function l(n,e){if(n.length!==e.length)throw new m({expectedLength:n.length,givenLength:e.length});const t=[];for(let r=0;r<n.length;r++){const s=n[r],o=e[r];t.push(l.encode(s,o))}return a.concat(...t)}(function(n){function e(t,r,s=!1){if(t==="address"){const c=r;return x.assert(c),a.padLeft(c.toLowerCase(),s?32:0)}if(t==="string")return a.fromString(r);if(t==="bytes")return r;if(t==="bool")return a.padLeft(a.fromBoolean(r),s?32:1);const o=t.match(g.integerRegex);if(o){const[c,i,u="256"]=o,h=Number.parseInt(u)/8;return a.fromNumber(r,{size:s?32:h,signed:i==="int"})}const b=t.match(g.bytesRegex);if(b){const[c,i]=b;if(Number.parseInt(i)!==(r.length-2)/2)throw new y({expectedSize:Number.parseInt(i),value:r});return a.padRight(r,s?32:0)}const f=t.match(g.arrayRegex);if(f&&Array.isArray(r)){const[c,i]=f,u=[];for(let h=0;h<r.length;h++)u.push(e(i,r[h],!0));return u.length===0?"0x":a.concat(...u)}throw new E(t)}n.encode=e})(l||(l={}));class A extends d.BaseError{constructor({expectedLength:e,givenLength:t,type:r}){super(`Array length mismatch for type \`${r}\`. Expected: \`${e}\`. Given: \`${t}\`.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ArrayLengthMismatchError"})}}class y extends d.BaseError{constructor({expectedSize:e,value:t}){super(`Size of bytes "${t}" (bytes${a.size(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class m extends d.BaseError{constructor({expectedLength:e,givenLength:t}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`
2
- `)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class w extends d.BaseError{constructor(e){super(`Value \`${e}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class E extends d.BaseError{constructor(e){super(`Type \`${e}\` is not a valid ABI Type.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidTypeError"})}}exports.ArrayLengthMismatchError=A;exports.BytesSizeMismatchError=y;exports.InvalidArrayError=w;exports.InvalidTypeError=E;exports.LengthMismatchError=m;exports.encode=P;exports.encodePacked=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("./index36.cjs"),a=require("./index144.cjs"),w=/(?<protocol>https?:\/\/[^\/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,b=/^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\/(?<target>[\w\-.]+))?(?<subtarget>\/.*)?$/,N=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,C=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function I(t){try{const e=await fetch(t,{method:"HEAD"});if(e.status===200){const r=e.headers.get("content-type");return r==null?void 0:r.startsWith("image/")}return!1}catch(e){return typeof e=="object"&&typeof e.response<"u"||!globalThis.hasOwnProperty("Image")?!1:new Promise(r=>{const n=new Image;n.onload=()=>{r(!0)},n.onerror=()=>{r(!1)},n.src=t})}}function d(t,e){return t?t.endsWith("/")?t.slice(0,-1):t:e}function A({uri:t,gatewayUrls:e}){const r=N.test(t);if(r)return{uri:t,isOnChain:!0,isEncoded:r};const n=d(e==null?void 0:e.ipfs,"https://ipfs.io"),s=d(e==null?void 0:e.arweave,"https://arweave.net"),o=t.match(w),{protocol:c,subpath:p,target:i,subtarget:h=""}=(o==null?void 0:o.groups)||{},u=c==="ipns:/"||p==="ipns/",m=c==="ipfs:/"||p==="ipfs/"||b.test(t);if(t.startsWith("http")&&!u&&!m){let v=t;return e!=null&&e.arweave&&(v=t.replace(/https:\/\/arweave.net/g,e==null?void 0:e.arweave)),{uri:v,isOnChain:!1,isEncoded:!1}}if((u||m)&&i)return{uri:`${n}/${u?"ipns":"ipfs"}/${i}${h}`,isOnChain:!1,isEncoded:!1};if(c==="ar:/"&&i)return{uri:`${s}/${i}${h||""}`,isOnChain:!1,isEncoded:!1};let f=t.replace(C,"");if(f.startsWith("<svg")&&(f=`data:image/svg+xml;base64,${btoa(f)}`),f.startsWith("data:")||f.startsWith("{"))return{uri:f,isOnChain:!0,isEncoded:!1};throw new a.EnsAvatarUriResolutionError({uri:t})}function l(t){if(typeof t!="object"||!("image"in t)&&!("image_url"in t)&&!("image_data"in t))throw new a.EnsAvatarInvalidMetadataError({data:t});return t.image||t.image_url||t.image_data}async function k({gatewayUrls:t,uri:e}){try{const r=await fetch(e).then(s=>s.json());return await E({gatewayUrls:t,uri:l(r)})}catch{throw new a.EnsAvatarUriResolutionError({uri:e})}}async function E({gatewayUrls:t,uri:e}){const{uri:r,isOnChain:n}=A({uri:e,gatewayUrls:t});if(n||await I(r))return r;throw new a.EnsAvatarUriResolutionError({uri:e})}function R(t){let e=t;e.startsWith("did:nft:")&&(e=e.replace("did:nft:","").replace(/_/g,"/"));const[r,n,s]=e.split("/"),[o,c]=r.split(":"),[p,i]=n.split(":");if(!o||o.toLowerCase()!=="eip155")throw new a.EnsAvatarInvalidNftUriError({reason:"Only EIP-155 supported"});if(!c)throw new a.EnsAvatarInvalidNftUriError({reason:"Chain ID not found"});if(!i)throw new a.EnsAvatarInvalidNftUriError({reason:"Contract address not found"});if(!s)throw new a.EnsAvatarInvalidNftUriError({reason:"Token ID not found"});if(!p)throw new a.EnsAvatarInvalidNftUriError({reason:"ERC namespace not found"});return{chainID:Number.parseInt(c),namespace:p.toLowerCase(),contractAddress:i,tokenID:s}}async function O(t,{nft:e}){if(e.namespace==="erc721")return g.readContract(t,{address:e.contractAddress,abi:[{name:"tokenURI",type:"function",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"tokenURI",args:[BigInt(e.tokenID)]});if(e.namespace==="erc1155")return g.readContract(t,{address:e.contractAddress,abi:[{name:"uri",type:"function",stateMutability:"view",inputs:[{name:"_id",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"uri",args:[BigInt(e.tokenID)]});throw new a.EnsAvatarUnsupportedNamespaceError({namespace:e.namespace})}exports.getGateway=d;exports.getJsonImage=l;exports.getMetadataAvatarUri=k;exports.getNftTokenUri=O;exports.isImageUri=I;exports.parseAvatarUri=E;exports.parseNftUri=R;exports.resolveAvatarUri=A;