@gardenfi/utils 2.1.3-beta.2 → 2.1.3-beta.21

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 (233) hide show
  1. package/dist/index104.cjs +1 -1
  2. package/dist/index104.js +1 -1
  3. package/dist/index107.cjs +1 -1
  4. package/dist/index107.js +75 -46
  5. package/dist/index108.cjs +1 -1
  6. package/dist/index108.js +4 -4
  7. package/dist/index110.cjs +1 -1
  8. package/dist/index110.js +1 -1
  9. package/dist/index111.cjs +1 -1
  10. package/dist/index111.js +1 -1
  11. package/dist/index112.cjs +1 -1
  12. package/dist/index112.js +1 -1
  13. package/dist/index113.cjs +1 -1
  14. package/dist/index113.js +1 -1
  15. package/dist/index125.cjs +1 -1
  16. package/dist/index125.js +1 -1
  17. package/dist/index166.cjs +1 -1
  18. package/dist/index166.js +36 -34
  19. package/dist/index192.cjs +1 -1
  20. package/dist/index192.js +27 -25
  21. package/dist/index203.cjs +1 -1
  22. package/dist/index203.js +16 -16
  23. package/dist/index22.cjs +1 -1
  24. package/dist/index22.js +6 -6
  25. package/dist/index222.cjs +1 -1
  26. package/dist/index222.js +2 -2
  27. package/dist/index225.cjs +1 -1
  28. package/dist/index225.js +43 -43
  29. package/dist/index226.cjs +1 -1
  30. package/dist/index226.js +3 -113
  31. package/dist/index228.cjs +1 -1
  32. package/dist/index228.js +14 -14
  33. package/dist/index230.cjs +1 -1
  34. package/dist/index230.js +10 -25
  35. package/dist/index231.cjs +1 -1
  36. package/dist/index231.js +16 -13
  37. package/dist/index232.cjs +1 -1
  38. package/dist/index232.js +21 -14
  39. package/dist/index233.cjs +1 -1
  40. package/dist/index233.js +30 -5
  41. package/dist/index234.cjs +1 -1
  42. package/dist/index234.js +2 -14
  43. package/dist/index235.cjs +1 -1
  44. package/dist/index235.js +12 -9
  45. package/dist/index236.cjs +1 -1
  46. package/dist/index236.js +12 -16
  47. package/dist/index237.cjs +1 -1
  48. package/dist/index237.js +47 -10
  49. package/dist/index238.cjs +1 -1
  50. package/dist/index238.js +10 -15
  51. package/dist/index239.cjs +1 -1
  52. package/dist/index239.js +7 -22
  53. package/dist/index240.cjs +1 -1
  54. package/dist/index240.js +9 -30
  55. package/dist/index241.cjs +1 -1
  56. package/dist/index241.js +14 -2
  57. package/dist/index242.cjs +1 -1
  58. package/dist/index242.js +14 -13
  59. package/dist/index243.cjs +1 -1
  60. package/dist/index243.js +9 -12
  61. package/dist/index244.cjs +1 -1
  62. package/dist/index244.js +24 -47
  63. package/dist/index245.cjs +1 -1
  64. package/dist/index245.js +12 -11
  65. package/dist/index246.cjs +1 -1
  66. package/dist/index246.js +24 -7
  67. package/dist/index247.cjs +1 -1
  68. package/dist/index247.js +12 -8
  69. package/dist/index248.cjs +1 -1
  70. package/dist/index248.js +15 -13
  71. package/dist/index249.cjs +2 -1
  72. package/dist/index249.js +21 -11
  73. package/dist/index250.cjs +1 -1
  74. package/dist/index250.js +52 -9
  75. package/dist/index251.cjs +1 -1
  76. package/dist/index251.js +25 -24
  77. package/dist/index252.cjs +1 -1
  78. package/dist/index252.js +13 -12
  79. package/dist/index253.cjs +1 -1
  80. package/dist/index253.js +15 -24
  81. package/dist/index254.cjs +1 -2
  82. package/dist/index254.js +5 -24
  83. package/dist/index255.cjs +1 -1
  84. package/dist/index255.js +12 -12
  85. package/dist/index256.cjs +1 -1
  86. package/dist/index256.js +10 -15
  87. package/dist/index257.cjs +1 -1
  88. package/dist/index257.js +16 -52
  89. package/dist/index266.cjs +1 -1
  90. package/dist/index266.js +1 -1
  91. package/dist/index277.cjs +1 -1
  92. package/dist/index277.js +103 -16
  93. package/dist/index278.cjs +1 -1
  94. package/dist/index278.js +5 -222
  95. package/dist/index279.cjs +1 -1
  96. package/dist/index279.js +224 -6
  97. package/dist/index28.cjs +1 -1
  98. package/dist/index28.js +2 -2
  99. package/dist/index280.cjs +1 -1
  100. package/dist/index280.js +7 -7
  101. package/dist/index281.cjs +1 -1
  102. package/dist/index281.js +7 -27
  103. package/dist/index282.cjs +1 -1
  104. package/dist/index282.js +26 -34
  105. package/dist/index283.cjs +1 -1
  106. package/dist/index283.js +13 -12
  107. package/dist/index284.cjs +1 -1
  108. package/dist/index284.js +124 -48
  109. package/dist/index285.cjs +1 -1
  110. package/dist/index285.js +3 -67
  111. package/dist/index286.cjs +1 -1
  112. package/dist/index286.js +137 -37
  113. package/dist/index287.cjs +1 -1
  114. package/dist/index287.js +156 -2
  115. package/dist/index288.cjs +1 -1
  116. package/dist/index288.js +8 -205
  117. package/dist/index289.cjs +1 -1
  118. package/dist/index289.js +113 -3
  119. package/dist/index290.cjs +2 -1
  120. package/dist/index290.js +122 -128
  121. package/dist/index291.cjs +1 -1
  122. package/dist/index291.js +137 -153
  123. package/dist/index292.cjs +1 -1
  124. package/dist/index292.js +42 -9
  125. package/dist/index293.cjs +1 -1
  126. package/dist/index293.js +72 -107
  127. package/dist/index294.cjs +1 -2
  128. package/dist/index294.js +2 -135
  129. package/dist/index295.cjs +1 -1
  130. package/dist/index295.js +68 -11
  131. package/dist/index296.cjs +1 -1
  132. package/dist/index296.js +696 -17
  133. package/dist/index297.cjs +1 -1
  134. package/dist/index297.js +200 -67
  135. package/dist/index298.cjs +2 -1
  136. package/dist/index298.js +63 -639
  137. package/dist/index299.cjs +1 -1
  138. package/dist/index299.js +4 -172
  139. package/dist/index30.cjs +1 -1
  140. package/dist/index30.js +1 -1
  141. package/dist/index300.cjs +1 -2
  142. package/dist/index300.js +39 -65
  143. package/dist/index301.cjs +1 -1
  144. package/dist/index301.js +7 -4
  145. package/dist/index302.cjs +1 -1
  146. package/dist/index302.js +60 -38
  147. package/dist/index303.cjs +1 -1
  148. package/dist/index303.js +77 -7
  149. package/dist/index304.cjs +1 -1
  150. package/dist/index304.js +4 -63
  151. package/dist/index305.cjs +1 -1
  152. package/dist/index305.js +181 -64
  153. package/dist/index306.cjs +1 -1
  154. package/dist/index306.js +12 -4
  155. package/dist/index307.cjs +1 -1
  156. package/dist/index307.js +19 -194
  157. package/dist/index308.cjs +1 -1
  158. package/dist/index308.js +3 -3
  159. package/dist/index310.cjs +1 -1
  160. package/dist/index310.js +1 -1
  161. package/dist/index311.cjs +1 -1
  162. package/dist/index311.js +5 -105
  163. package/dist/index312.cjs +1 -1
  164. package/dist/index312.js +2 -5
  165. package/dist/index313.cjs +1 -1
  166. package/dist/index313.js +22 -2
  167. package/dist/index35.cjs +1 -1
  168. package/dist/index35.js +41 -41
  169. package/dist/index36.cjs +1 -1
  170. package/dist/index36.js +1 -1
  171. package/dist/index39.cjs +1 -1
  172. package/dist/index39.js +29 -24
  173. package/dist/index43.cjs +1 -1
  174. package/dist/index43.js +40 -21
  175. package/dist/index44.cjs +1 -1
  176. package/dist/index44.js +24 -24
  177. package/dist/index53.cjs +1 -1
  178. package/dist/index53.js +2 -2
  179. package/dist/index54.cjs +1 -1
  180. package/dist/index54.js +1 -1
  181. package/dist/index55.cjs +1 -1
  182. package/dist/index55.js +2 -2
  183. package/dist/index56.cjs +1 -1
  184. package/dist/index56.js +1 -1
  185. package/dist/index57.cjs +1 -1
  186. package/dist/index57.js +2 -2
  187. package/dist/index58.cjs +1 -1
  188. package/dist/index58.js +98 -97
  189. package/dist/index59.cjs +1 -1
  190. package/dist/index59.js +2 -2
  191. package/dist/index60.cjs +1 -1
  192. package/dist/index60.js +1 -1
  193. package/dist/index61.cjs +1 -1
  194. package/dist/index61.js +1 -1
  195. package/dist/index62.cjs +1 -1
  196. package/dist/index62.js +1 -1
  197. package/dist/index64.cjs +1 -1
  198. package/dist/index64.js +4 -4
  199. package/dist/index73.cjs +1 -1
  200. package/dist/index73.js +1 -1
  201. package/dist/index74.cjs +1 -1
  202. package/dist/index74.js +1 -1
  203. package/dist/index79.cjs +1 -1
  204. package/dist/index79.js +1 -1
  205. package/dist/index84.cjs +1 -1
  206. package/dist/index84.js +53 -51
  207. package/dist/index85.cjs +1 -1
  208. package/dist/index85.js +56 -55
  209. package/dist/index86.cjs +1 -1
  210. package/dist/index86.js +55 -59
  211. package/dist/index88.cjs +1 -1
  212. package/dist/index88.js +1 -1
  213. package/dist/index89.cjs +1 -1
  214. package/dist/index89.js +1 -1
  215. package/dist/index90.cjs +1 -1
  216. package/dist/index90.js +44 -42
  217. package/dist/index91.cjs +1 -1
  218. package/dist/index91.js +41 -41
  219. package/dist/index92.cjs +1 -1
  220. package/dist/index92.js +35 -34
  221. package/dist/index93.cjs +1 -1
  222. package/dist/index93.js +28 -28
  223. package/dist/index94.cjs +1 -1
  224. package/dist/index94.js +26 -26
  225. package/dist/index95.cjs +1 -1
  226. package/dist/index95.js +1 -1
  227. package/package.json +1 -1
  228. package/dist/index314.cjs +0 -1
  229. package/dist/index314.js +0 -22
  230. package/dist/index315.cjs +0 -1
  231. package/dist/index315.js +0 -74
  232. package/dist/index316.cjs +0 -1
  233. package/dist/index316.js +0 -24
package/dist/index289.js CHANGED
@@ -1,6 +1,116 @@
1
- function n(e) {
2
- return `[${e.slice(2)}]`;
1
+ import { BaseError as y } from "./index298.js";
2
+ import { keccak256 as v } from "./index301.js";
3
+ import { validate as $, slice as A, fromString as S } from "./index287.js";
4
+ import { isArgOfType as E, normalizeSignature as p, getAmbiguousTypes as B } from "./index302.js";
5
+ import { parseAbiItem as l } from "./index267.js";
6
+ import { formatAbiItem as h } from "./index260.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
+ }
3
107
  }
4
108
  export {
5
- n as encodeLabelhash
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
6
116
  };
package/dist/index290.cjs CHANGED
@@ -1 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("./index33.cjs"),a=require("./index141.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;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const x=require("./index303.cjs"),d=require("./index298.cjs"),a=require("./index287.cjs"),g=require("./index304.cjs"),p=require("./index305.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;
package/dist/index290.js CHANGED
@@ -1,143 +1,137 @@
1
- import { readContract as g } from "./index33.js";
2
- import { EnsAvatarUriResolutionError as d, EnsAvatarInvalidNftUriError as f, EnsAvatarUnsupportedNamespaceError as v, EnsAvatarInvalidMetadataError as A } from "./index141.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;
1
+ import { assert as p } from "./index303.js";
2
+ import { BaseError as u } from "./index298.js";
3
+ import { size as y, padLeft as f, fromString as x, fromBoolean as w, fromNumber as E, padRight as P, concat as g } from "./index287.js";
4
+ import { integerRegex as A, bytesRegex as $, arrayRegex as L } from "./index304.js";
5
+ import { prepareParameters as z, encode as I } from "./index305.js";
6
+ function N(n, e, t) {
7
+ const { checksumAddress: r = !1 } = {};
8
+ if (n.length !== e.length)
9
+ throw new b({
10
+ expectedLength: n.length,
11
+ givenLength: e.length
20
12
  });
21
- }
13
+ const a = z({
14
+ checksumAddress: r,
15
+ parameters: n,
16
+ values: e
17
+ }), s = I(a);
18
+ return s.length === 0 ? "0x" : s;
22
19
  }
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 };
20
+ function m(n, e) {
21
+ if (n.length !== e.length)
22
+ throw new b({
23
+ expectedLength: n.length,
24
+ givenLength: e.length
25
+ });
26
+ const t = [];
27
+ for (let r = 0; r < n.length; r++) {
28
+ const a = n[r], s = e[r];
29
+ t.push(m.encode(a, s));
34
30
  }
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 });
31
+ return g(...t);
55
32
  }
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)
33
+ (function(n) {
34
+ function e(t, r, a = !1) {
35
+ if (t === "address") {
36
+ const i = r;
37
+ return p(i), f(i.toLowerCase(), a ? 32 : 0);
38
+ }
39
+ if (t === "string")
40
+ return x(r);
41
+ if (t === "bytes")
42
+ return r;
43
+ if (t === "bool")
44
+ return f(w(r), a ? 32 : 1);
45
+ const s = t.match(A);
46
+ if (s) {
47
+ const [i, o, c = "256"] = s, h = Number.parseInt(c) / 8;
48
+ return E(r, {
49
+ size: a ? 32 : h,
50
+ signed: o === "int"
51
+ });
52
+ }
53
+ const d = t.match($);
54
+ if (d) {
55
+ const [i, o] = d;
56
+ if (Number.parseInt(o) !== (r.length - 2) / 2)
57
+ throw new M({
58
+ expectedSize: Number.parseInt(o),
59
+ value: r
60
+ });
61
+ return P(r, a ? 32 : 0);
62
+ }
63
+ const l = t.match(L);
64
+ if (l && Array.isArray(r)) {
65
+ const [i, o] = l, c = [];
66
+ for (let h = 0; h < r.length; h++)
67
+ c.push(e(o, r[h], !0));
68
+ return c.length === 0 ? "0x" : g(...c);
69
+ }
70
+ throw new j(t);
71
+ }
72
+ n.encode = e;
73
+ })(m || (m = {}));
74
+ class R extends u {
75
+ constructor({ expectedLength: e, givenLength: t, type: r }) {
76
+ super(`Array length mismatch for type \`${r}\`. Expected: \`${e}\`. Given: \`${t}\`.`), Object.defineProperty(this, "name", {
77
+ enumerable: !0,
78
+ configurable: !0,
79
+ writable: !0,
80
+ value: "AbiParameters.ArrayLengthMismatchError"
67
81
  });
68
- } catch {
69
- throw new d({ uri: e });
70
82
  }
71
83
  }
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 });
84
+ class M extends u {
85
+ constructor({ expectedSize: e, value: t }) {
86
+ super(`Size of bytes "${t}" (bytes${y(t)}) does not match expected size (bytes${e}).`), Object.defineProperty(this, "name", {
87
+ enumerable: !0,
88
+ configurable: !0,
89
+ writable: !0,
90
+ value: "AbiParameters.BytesSizeMismatchError"
91
+ });
92
+ }
77
93
  }
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"
94
+ class b extends u {
95
+ constructor({ expectedLength: e, givenLength: t }) {
96
+ super([
97
+ "ABI encoding parameters/values length mismatch.",
98
+ `Expected length (parameters): ${e}`,
99
+ `Given length (values): ${t}`
100
+ ].join(`
101
+ `)), Object.defineProperty(this, "name", {
102
+ enumerable: !0,
103
+ configurable: !0,
104
+ writable: !0,
105
+ value: "AbiParameters.LengthMismatchError"
89
106
  });
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
- };
107
+ }
100
108
  }
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)]
109
+ class _ extends u {
110
+ constructor(e) {
111
+ super(`Value \`${e}\` is not a valid array.`), Object.defineProperty(this, "name", {
112
+ enumerable: !0,
113
+ configurable: !0,
114
+ writable: !0,
115
+ value: "AbiParameters.InvalidArrayError"
116
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)]
117
+ }
118
+ }
119
+ class j extends u {
120
+ constructor(e) {
121
+ super(`Type \`${e}\` is not a valid ABI Type.`), Object.defineProperty(this, "name", {
122
+ enumerable: !0,
123
+ configurable: !0,
124
+ writable: !0,
125
+ value: "AbiParameters.InvalidTypeError"
131
126
  });
132
- throw new v({ namespace: e.namespace });
127
+ }
133
128
  }
134
129
  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
130
+ R as ArrayLengthMismatchError,
131
+ M as BytesSizeMismatchError,
132
+ _ as InvalidArrayError,
133
+ j as InvalidTypeError,
134
+ b as LengthMismatchError,
135
+ N as encode,
136
+ m as encodePacked
143
137
  };
package/dist/index291.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./index300.cjs"),$=require("./index301.cjs"),o=require("./index302.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 i=require("./index284.cjs");/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const d=BigInt(0),g=BigInt(1);function T(e,t){if(typeof t!="boolean")throw new Error(e+" boolean expected, got "+t)}function x(e){const t=e.toString(16);return t.length&1?"0"+t:t}function w(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return e===""?d:BigInt("0x"+e)}function v(e){return w(i.bytesToHex(e))}function U(e){return i.abytes(e),w(i.bytesToHex(Uint8Array.from(e).reverse()))}function h(e,t){return i.hexToBytes(e.toString(16).padStart(t*2,"0"))}function H(e,t){return h(e,t).reverse()}function A(e,t,r){let o;if(typeof t=="string")try{o=i.hexToBytes(t)}catch(n){throw new Error(e+" must be hex string or Uint8Array, cause: "+n)}else if(i.isBytes(t))o=Uint8Array.from(t);else throw new Error(e+" must be hex string or Uint8Array");const s=o.length;if(typeof r=="number"&&s!==r)throw new Error(e+" of length "+r+" expected, got "+s);return o}const m=e=>typeof e=="bigint"&&d<=e;function p(e,t,r){return m(e)&&m(t)&&m(r)&&t<=e&&e<r}function I(e,t,r,o){if(!p(t,r,o))throw new Error("expected valid "+e+": "+r+" <= n < "+o+", got "+t)}function j(e){let t;for(t=0;e>d;e>>=g,t+=1);return t}const k=e=>(g<<BigInt(e))-g;function N(e,t,r){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");const o=u=>new Uint8Array(u),s=u=>Uint8Array.of(u);let n=o(e),c=o(e),f=0;const a=()=>{n.fill(1),c.fill(0),f=0},b=(...u)=>r(c,n,...u),B=(u=o(0))=>{c=b(s(0),u),n=b(),u.length!==0&&(c=b(s(1),u),n=b())},E=()=>{if(f++>=1e3)throw new Error("drbg: tried 1000 values");let u=0;const y=[];for(;u<t;){n=b();const l=n.slice();y.push(l),u+=n.length}return i.concatBytes(...y)};return(u,y)=>{a(),B(u);let l;for(;!(l=y(E()));)B();return a(),l}}function O(e,t,r={}){if(!e||typeof e!="object")throw new Error("expected valid options object");function o(s,n,c){const f=e[s];if(c&&f===void 0)return;const a=typeof f;if(a!==n||f===null)throw new Error(`param "${s}" is invalid: expected ${n}, got ${a}`)}Object.entries(t).forEach(([s,n])=>o(s,n,!1)),Object.entries(r).forEach(([s,n])=>o(s,n,!0))}function S(e){const t=new WeakMap;return(r,...o)=>{const s=t.get(r);if(s!==void 0)return s;const n=e(r,...o);return t.set(r,n),n}}exports.abytes=i.abytes;exports.anumber=i.anumber;exports.bytesToHex=i.bytesToHex;exports.concatBytes=i.concatBytes;exports.hexToBytes=i.hexToBytes;exports.isBytes=i.isBytes;exports.randomBytes=i.randomBytes;exports.utf8ToBytes=i.utf8ToBytes;exports._validateObject=O;exports.aInRange=I;exports.abool=T;exports.bitLen=j;exports.bitMask=k;exports.bytesToNumberBE=v;exports.bytesToNumberLE=U;exports.createHmacDrbg=N;exports.ensureBytes=A;exports.hexToNumber=w;exports.inRange=p;exports.memoized=S;exports.numberToBytesBE=h;exports.numberToBytesLE=H;exports.numberToHexUnpadded=x;