@gardenfi/utils 2.0.3 → 2.0.5

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 (243) hide show
  1. package/dist/index.cjs +1 -1
  2. package/dist/index.js +35 -21
  3. package/dist/index10.cjs +1 -1
  4. package/dist/index10.js +21 -14
  5. package/dist/index100.cjs +1 -0
  6. package/dist/index100.js +9 -0
  7. package/dist/index101.cjs +2 -0
  8. package/dist/index101.js +5 -0
  9. package/dist/index102.cjs +1 -0
  10. package/dist/index102.js +115 -0
  11. package/dist/index103.cjs +1 -0
  12. package/dist/index103.js +81 -0
  13. package/dist/index104.cjs +1 -0
  14. package/dist/index104.js +4 -0
  15. package/dist/index105.cjs +1 -0
  16. package/dist/index105.js +20 -0
  17. package/dist/index106.cjs +1 -0
  18. package/dist/index106.js +21 -0
  19. package/dist/index107.cjs +1 -0
  20. package/dist/index107.js +19 -0
  21. package/dist/index108.cjs +1 -0
  22. package/dist/index108.js +226 -0
  23. package/dist/index109.cjs +1 -0
  24. package/dist/index109.js +37 -0
  25. package/dist/index11.cjs +1 -1
  26. package/dist/index11.js +126 -173
  27. package/dist/index110.cjs +1 -0
  28. package/dist/index110.js +21 -0
  29. package/dist/index111.cjs +1 -0
  30. package/dist/index111.js +72 -0
  31. package/dist/index112.cjs +1 -0
  32. package/dist/index112.js +70 -0
  33. package/dist/index113.cjs +1 -0
  34. package/dist/index113.js +4 -0
  35. package/dist/index114.cjs +1 -0
  36. package/dist/index114.js +43 -0
  37. package/dist/index115.cjs +1 -0
  38. package/dist/index115.js +646 -0
  39. package/dist/index116.cjs +1 -0
  40. package/dist/index116.js +234 -0
  41. package/dist/index117.cjs +1 -0
  42. package/dist/index117.js +175 -0
  43. package/dist/index12.cjs +1 -1
  44. package/dist/index12.js +14 -93
  45. package/dist/index13.cjs +1 -16
  46. package/dist/index13.js +2 -114
  47. package/dist/index14.cjs +1 -1
  48. package/dist/index14.js +33 -31
  49. package/dist/index15.cjs +1 -1
  50. package/dist/index15.js +19 -31
  51. package/dist/index16.cjs +1 -1
  52. package/dist/index16.js +187 -17
  53. package/dist/index17.cjs +1 -1
  54. package/dist/index17.js +93 -7
  55. package/dist/index18.cjs +1 -1
  56. package/dist/index18.js +35 -20
  57. package/dist/index19.cjs +1 -1
  58. package/dist/index19.js +32 -22
  59. package/dist/index20.cjs +16 -1
  60. package/dist/index20.js +113 -8
  61. package/dist/index21.cjs +1 -1
  62. package/dist/index21.js +30 -31
  63. package/dist/index22.cjs +1 -1
  64. package/dist/index22.js +17 -26
  65. package/dist/index23.cjs +1 -1
  66. package/dist/index23.js +6 -22
  67. package/dist/index24.cjs +1 -1
  68. package/dist/index24.js +44 -50
  69. package/dist/index25.cjs +1 -1
  70. package/dist/index25.js +21 -12
  71. package/dist/index26.cjs +1 -1
  72. package/dist/index26.js +8 -24
  73. package/dist/index27.cjs +1 -1
  74. package/dist/index27.js +31 -75
  75. package/dist/index28.cjs +1 -1
  76. package/dist/index28.js +25 -22
  77. package/dist/index29.cjs +2 -1
  78. package/dist/index29.js +65 -7
  79. package/dist/index3.cjs +1 -1
  80. package/dist/index3.js +30 -7
  81. package/dist/index30.cjs +1 -1
  82. package/dist/index30.js +51 -32
  83. package/dist/index31.cjs +1 -1
  84. package/dist/index31.js +12 -15
  85. package/dist/index32.cjs +1 -1
  86. package/dist/index32.js +25 -2
  87. package/dist/index33.cjs +1 -1
  88. package/dist/index33.js +75 -8
  89. package/dist/index34.cjs +1 -1
  90. package/dist/index34.js +23 -20
  91. package/dist/index35.cjs +1 -1
  92. package/dist/index35.js +7 -12
  93. package/dist/index36.cjs +1 -1
  94. package/dist/index36.js +32 -34
  95. package/dist/index37.cjs +1 -2
  96. package/dist/index37.js +15 -59
  97. package/dist/index38.cjs +1 -1
  98. package/dist/index38.js +2 -2
  99. package/dist/index39.cjs +1 -1
  100. package/dist/index39.js +8 -4
  101. package/dist/index4.cjs +1 -1
  102. package/dist/index4.js +2 -2
  103. package/dist/index40.cjs +1 -1
  104. package/dist/index40.js +20 -11
  105. package/dist/index41.cjs +1 -1
  106. package/dist/index41.js +12 -3
  107. package/dist/index42.cjs +1 -1
  108. package/dist/index42.js +33 -20
  109. package/dist/index43.cjs +2 -1
  110. package/dist/index43.js +58 -11
  111. package/dist/index44.cjs +1 -1
  112. package/dist/index44.js +2 -56
  113. package/dist/index45.cjs +1 -1
  114. package/dist/index45.js +6 -6
  115. package/dist/index46.cjs +1 -1
  116. package/dist/index46.js +6 -21
  117. package/dist/index47.cjs +1 -1
  118. package/dist/index47.js +4 -11
  119. package/dist/index48.cjs +1 -1
  120. package/dist/index48.js +11 -3
  121. package/dist/index49.cjs +5 -1
  122. package/dist/index49.js +53 -8
  123. package/dist/index5.cjs +1 -1
  124. package/dist/index5.js +43 -19
  125. package/dist/index50.cjs +1 -1
  126. package/dist/index50.js +3 -19
  127. package/dist/index51.cjs +2 -1
  128. package/dist/index51.js +33 -5
  129. package/dist/index52.cjs +1 -1
  130. package/dist/index52.js +5 -8
  131. package/dist/index53.cjs +1 -1
  132. package/dist/index53.js +20 -103
  133. package/dist/index54.cjs +1 -1
  134. package/dist/index54.js +12 -28
  135. package/dist/index55.cjs +1 -1
  136. package/dist/index55.js +53 -16
  137. package/dist/index56.cjs +1 -1
  138. package/dist/index56.js +8 -38
  139. package/dist/index57.cjs +1 -0
  140. package/dist/index57.js +24 -0
  141. package/dist/index58.cjs +1 -0
  142. package/dist/index58.js +14 -0
  143. package/dist/index59.cjs +1 -0
  144. package/dist/index59.js +11 -0
  145. package/dist/index6.cjs +1 -1
  146. package/dist/index6.js +19 -104
  147. package/dist/index60.cjs +1 -0
  148. package/dist/index60.js +13 -0
  149. package/dist/index61.cjs +1 -0
  150. package/dist/index61.js +14 -0
  151. package/dist/index62.cjs +1 -0
  152. package/dist/index62.js +9 -0
  153. package/dist/index63.cjs +1 -0
  154. package/dist/index63.js +16 -0
  155. package/dist/index64.cjs +1 -0
  156. package/dist/index64.js +35 -0
  157. package/dist/index65.cjs +1 -0
  158. package/dist/index65.js +17 -0
  159. package/dist/index66.cjs +1 -0
  160. package/dist/index66.js +67 -0
  161. package/dist/index67.cjs +1 -0
  162. package/dist/index67.js +30 -0
  163. package/dist/index68.cjs +1 -0
  164. package/dist/index68.js +5 -0
  165. package/dist/index69.cjs +1 -0
  166. package/dist/index69.js +8 -0
  167. package/dist/index7.cjs +1 -1
  168. package/dist/index7.js +2 -15
  169. package/dist/index70.cjs +1 -0
  170. package/dist/index70.js +11 -0
  171. package/dist/index71.cjs +1 -0
  172. package/dist/index71.js +6 -0
  173. package/dist/index72.cjs +1 -0
  174. package/dist/index72.js +16 -0
  175. package/dist/index73.cjs +1 -0
  176. package/dist/index73.js +44 -0
  177. package/dist/index74.cjs +1 -0
  178. package/dist/index74.js +106 -0
  179. package/dist/index75.cjs +1 -0
  180. package/dist/index75.js +194 -0
  181. package/dist/index76.cjs +1 -0
  182. package/dist/index76.js +21 -0
  183. package/dist/index77.cjs +1 -0
  184. package/dist/index77.js +14 -0
  185. package/dist/index78.cjs +1 -0
  186. package/dist/index78.js +22 -0
  187. package/dist/index79.cjs +1 -0
  188. package/dist/index79.js +28 -0
  189. package/dist/index8.cjs +1 -1
  190. package/dist/index8.js +100 -2
  191. package/dist/index80.cjs +1 -0
  192. package/dist/index80.js +9 -0
  193. package/dist/index81.cjs +1 -0
  194. package/dist/index81.js +16 -0
  195. package/dist/index82.cjs +1 -0
  196. package/dist/index82.js +18 -0
  197. package/dist/index83.cjs +1 -0
  198. package/dist/index83.js +8 -0
  199. package/dist/index84.cjs +1 -0
  200. package/dist/index84.js +16 -0
  201. package/dist/index85.cjs +1 -0
  202. package/dist/index85.js +13 -0
  203. package/dist/index86.cjs +1 -0
  204. package/dist/index86.js +19 -0
  205. package/dist/index87.cjs +1 -0
  206. package/dist/index87.js +174 -0
  207. package/dist/index88.cjs +1 -0
  208. package/dist/index88.js +11 -0
  209. package/dist/index89.cjs +1 -0
  210. package/dist/index89.js +15 -0
  211. package/dist/index9.cjs +1 -1
  212. package/dist/index9.js +42 -32
  213. package/dist/index90.cjs +1 -0
  214. package/dist/index90.js +107 -0
  215. package/dist/index91.cjs +1 -0
  216. package/dist/index91.js +41 -0
  217. package/dist/index92.cjs +1 -0
  218. package/dist/index92.js +4 -0
  219. package/dist/index93.cjs +1 -0
  220. package/dist/index93.js +7 -0
  221. package/dist/index94.cjs +1 -0
  222. package/dist/index94.js +13 -0
  223. package/dist/index95.cjs +1 -0
  224. package/dist/index95.js +45 -0
  225. package/dist/index96.cjs +1 -0
  226. package/dist/index96.js +23 -0
  227. package/dist/index97.cjs +1 -0
  228. package/dist/index97.js +7 -0
  229. package/dist/index98.cjs +1 -0
  230. package/dist/index98.js +40 -0
  231. package/dist/index99.cjs +1 -0
  232. package/dist/index99.js +130 -0
  233. package/dist/src/index.d.ts +1 -0
  234. package/dist/src/lib/auth/apikey/apikey.d.ts +12 -0
  235. package/dist/src/lib/auth/auth.types.d.ts +21 -8
  236. package/dist/src/lib/auth/index.d.ts +5 -1
  237. package/dist/src/lib/auth/passkey/passkey.d.ts +10 -0
  238. package/dist/src/lib/auth/passkey/passkey.types.d.ts +17 -0
  239. package/dist/src/lib/auth/passkey/passkeyLogin.d.ts +37 -0
  240. package/dist/src/lib/auth/{siwe.d.ts → siwe/siwe.d.ts} +4 -15
  241. package/dist/src/lib/result.d.ts +16 -0
  242. package/dist/src/lib/utils.d.ts +3 -0
  243. package/package.json +2 -1
@@ -0,0 +1,14 @@
1
+ import { LruMap as u } from "./index57.js";
2
+ import { checksumAddress as c } from "./index53.js";
3
+ const i = /^0x[a-fA-F0-9]{40}$/, r = /* @__PURE__ */ new u(8192);
4
+ function h(t, s) {
5
+ const { strict: n = !0 } = s ?? {}, e = `${t}.${n}`;
6
+ if (r.has(e))
7
+ return r.get(e);
8
+ const o = i.test(t) ? t.toLowerCase() === t ? !0 : n ? c(t) === t : !0 : !1;
9
+ return r.set(e, o), o;
10
+ }
11
+ export {
12
+ h as isAddress,
13
+ r as isAddressCache
14
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index55.cjs"),l=require("./index24.cjs");function c(o){const{kzg:s}=o,n=o.to??(typeof o.blobs[0]=="string"?"hex":"bytes"),e=typeof o.blobs[0]=="string"?o.blobs.map(t=>i.hexToBytes(t)):o.blobs,b=[];for(const t of e)b.push(Uint8Array.from(s.blobToKzgCommitment(t)));return n==="bytes"?b:b.map(t=>l.bytesToHex(t))}exports.blobsToCommitments=c;
@@ -0,0 +1,11 @@
1
+ import { hexToBytes as i } from "./index55.js";
2
+ import { bytesToHex as f } from "./index24.js";
3
+ function y(o) {
4
+ const { kzg: s } = o, n = o.to ?? (typeof o.blobs[0] == "string" ? "hex" : "bytes"), m = typeof o.blobs[0] == "string" ? o.blobs.map((t) => i(t)) : o.blobs, b = [];
5
+ for (const t of m)
6
+ b.push(Uint8Array.from(s.blobToKzgCommitment(t)));
7
+ return n === "bytes" ? b : b.map((t) => f(t));
8
+ }
9
+ export {
10
+ y as blobsToCommitments
11
+ };
package/dist/index6.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index11.cjs"),d=require("./index7.cjs"),l=require("./index8.cjs"),w=require("jwt-decode"),f=require("./index3.cjs"),g=require("./index5.cjs"),y=require("./index13.cjs");class m{constructor(t,n,e){this.API="https://api.garden.finance",this.url=new g.Url("/",t??this.API),this.walletClient=n,this.domain=(e==null?void 0:e.domain)||"app.garden.finance",this.domain.startsWith("https://")&&(this.domain=this.domain.split("https://")[1]),this.signingStatement=(e==null?void 0:e.signingStatement)??"Garden.fi",this.store=(e==null?void 0:e.store)??new d.MemoryStorage}verifyToken(t,n){try{const e=u(t);if(!e)return r.Ok(!1);const i=Math.floor(Date.now()/1e3)+120;return r.Ok(e.exp>i&&e.user_id.toLowerCase()===n.toLowerCase())}catch{return r.Ok(!1)}}async getToken(){var a;if(!((a=this.walletClient.account)!=null&&a.address))return r.Err("Wallet client does not have an account");const t=this.store.getItem(l.StoreKeys.AUTH_TOKEN);if(t){const s=this.verifyToken(t,this.walletClient.account.address);if(s.ok&&s.val)return r.Ok(t)}const n=await this.signStatement();if(n.error)return r.Err(n.error);const e=await r.Fetcher.post(this.url.endpoint("verify"),{body:JSON.stringify({...n.val}),headers:{"Content-Type":"application/json"}});if(e.error)return r.Err(e.error);const i=e.result;if(!i)return r.Err("Failed to get token");if(!this.verifyToken(i,this.walletClient.account.address).val)throw new Error("Token verification failed");return this.store.setItem(l.StoreKeys.AUTH_TOKEN,i),r.Ok(i)}async signStatement(){var h;if(!((h=this.walletClient.account)!=null&&h.address))return r.Err("Wallet client does not have a valid account");const t=new Date,n=new Date(t.getTime()+300*1e3),i=(await r.Fetcher.get(this.url.endpoint("nonce"))).result;if(!i)return r.Err("Failed to get nonce");const c=await this.walletClient.getChainId(),a=y.createSiweMessage({domain:this.domain,address:this.walletClient.account.address,statement:this.signingStatement,nonce:i,uri:"https://"+this.domain,version:"1",chainId:c,notBefore:n}),s=await this.walletClient.signMessage({account:this.walletClient.account,message:a});return r.Ok({message:a,signature:s,nonce:i})}}const u=o=>{try{return w.jwtDecode(o)}catch{return}};class k{constructor(t){if(!t.siwe&&!t.apiKey)throw new Error("Either siwe or apiKey must be provided");this.siwe=t.siwe,this.apiKey=t.apiKey}async getAuthHeaders(){if(this.siwe){const t=await this.siwe.getToken();return t.error?r.Err(t.error):r.Ok({Authorization:f.Authorization(t.val)})}return this.apiKey?r.Ok({"api-key":this.apiKey}):r.Err("No authentication method available")}}exports.Auth=k;exports.Siwe=m;exports.parseJwt=u;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class r extends URL{constructor(t,e){super(t,e)}endpoint(t){t.startsWith("/")||(t=`/${t}`);const e=`${this.pathname!=="/"?this.pathname:""}${t}`;return new r(e,this)}socket(){if(this.protocol==="https:")return this.origin.replace("https","wss");if(this.protocol==="http:")return this.origin.replace("http","ws");throw new Error("Invalid protocol")}addSearchParams(t){const e=new URLSearchParams(this.search);for(const s in t)e.set(s,t[s]);return new r(`${this.pathname}?${e.toString()}`,this)}}exports.Url=r;
package/dist/index6.js CHANGED
@@ -1,111 +1,26 @@
1
- import { Ok as n, Err as a, Fetcher as u } from "./index11.js";
2
- import { MemoryStorage as f } from "./index7.js";
3
- import { StoreKeys as d } from "./index8.js";
4
- import { jwtDecode as m } from "jwt-decode";
5
- import { Authorization as w } from "./index3.js";
6
- import { Url as g } from "./index5.js";
7
- import { createSiweMessage as y } from "./index13.js";
8
- class I {
9
- constructor(e, r, t) {
10
- this.API = "https://api.garden.finance", this.url = new g("/", e ?? this.API), this.walletClient = r, this.domain = (t == null ? void 0 : t.domain) || "app.garden.finance", this.domain.startsWith("https://") && (this.domain = this.domain.split("https://")[1]), this.signingStatement = (t == null ? void 0 : t.signingStatement) ?? "Garden.fi", this.store = (t == null ? void 0 : t.store) ?? new f();
1
+ class r extends URL {
2
+ constructor(t, s) {
3
+ super(t, s);
11
4
  }
12
- verifyToken(e, r) {
13
- try {
14
- const t = p(e);
15
- if (!t) return n(!1);
16
- const i = Math.floor(Date.now() / 1e3) + 120;
17
- return n(
18
- t.exp > i && t.user_id.toLowerCase() === r.toLowerCase()
19
- );
20
- } catch {
21
- return n(!1);
22
- }
5
+ endpoint(t) {
6
+ t.startsWith("/") || (t = `/${t}`);
7
+ const s = `${this.pathname !== "/" ? this.pathname : ""}${t}`;
8
+ return new r(s, this);
23
9
  }
24
- async getToken() {
25
- var s;
26
- if (!((s = this.walletClient.account) != null && s.address))
27
- return a("Wallet client does not have an account");
28
- const e = this.store.getItem(d.AUTH_TOKEN);
29
- if (e) {
30
- const o = this.verifyToken(
31
- e,
32
- this.walletClient.account.address
33
- );
34
- if (o.ok && o.val) return n(e);
35
- }
36
- const r = await this.signStatement();
37
- if (r.error)
38
- return a(r.error);
39
- const t = await u.post(
40
- this.url.endpoint("verify"),
41
- {
42
- body: JSON.stringify({
43
- ...r.val
44
- }),
45
- headers: {
46
- "Content-Type": "application/json"
47
- }
48
- }
49
- );
50
- if (t.error) return a(t.error);
51
- const i = t.result;
52
- if (!i) return a("Failed to get token");
53
- if (!this.verifyToken(i, this.walletClient.account.address).val)
54
- throw new Error("Token verification failed");
55
- return this.store.setItem(d.AUTH_TOKEN, i), n(i);
10
+ socket() {
11
+ if (this.protocol === "https:")
12
+ return this.origin.replace("https", "wss");
13
+ if (this.protocol === "http:")
14
+ return this.origin.replace("http", "ws");
15
+ throw new Error("Invalid protocol");
56
16
  }
57
- async signStatement() {
58
- var l;
59
- if (!((l = this.walletClient.account) != null && l.address))
60
- return a("Wallet client does not have a valid account");
61
- const e = /* @__PURE__ */ new Date(), r = new Date(e.getTime() + 300 * 1e3), i = (await u.get(
62
- this.url.endpoint("nonce")
63
- )).result;
64
- if (!i)
65
- return a("Failed to get nonce");
66
- const h = await this.walletClient.getChainId(), s = y({
67
- domain: this.domain,
68
- address: this.walletClient.account.address,
69
- statement: this.signingStatement,
70
- nonce: i,
71
- uri: "https://" + this.domain,
72
- version: "1",
73
- chainId: h,
74
- notBefore: r
75
- }), o = await this.walletClient.signMessage({
76
- account: this.walletClient.account,
77
- message: s
78
- });
79
- return n({
80
- message: s,
81
- signature: o,
82
- nonce: i
83
- });
84
- }
85
- }
86
- const p = (c) => {
87
- try {
88
- return m(c);
89
- } catch {
90
- return;
91
- }
92
- };
93
- class E {
94
- constructor(e) {
95
- if (!e.siwe && !e.apiKey)
96
- throw new Error("Either siwe or apiKey must be provided");
97
- this.siwe = e.siwe, this.apiKey = e.apiKey;
98
- }
99
- async getAuthHeaders() {
100
- if (this.siwe) {
101
- const e = await this.siwe.getToken();
102
- return e.error ? a(e.error) : n({ Authorization: w(e.val) });
103
- }
104
- return this.apiKey ? n({ "api-key": this.apiKey }) : a("No authentication method available");
17
+ addSearchParams(t) {
18
+ const s = new URLSearchParams(this.search);
19
+ for (const e in t)
20
+ s.set(e, t[e]);
21
+ return new r(`${this.pathname}?${s.toString()}`, this);
105
22
  }
106
23
  }
107
24
  export {
108
- E as Auth,
109
- I as Siwe,
110
- p as parseJwt
25
+ r as Url
111
26
  };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("./index55.cjs"),y=require("./index24.cjs");function f(t){const{kzg:c}=t,e=t.to??(typeof t.blobs[0]=="string"?"hex":"bytes"),n=typeof t.blobs[0]=="string"?t.blobs.map(o=>b.hexToBytes(o)):t.blobs,i=typeof t.commitments[0]=="string"?t.commitments.map(o=>b.hexToBytes(o)):t.commitments,s=[];for(let o=0;o<n.length;o++){const l=n[o],m=i[o];s.push(Uint8Array.from(c.computeBlobKzgProof(l,m)))}return e==="bytes"?s:s.map(o=>y.bytesToHex(o))}exports.blobsToProofs=f;
@@ -0,0 +1,13 @@
1
+ import { hexToBytes as b } from "./index55.js";
2
+ import { bytesToHex as y } from "./index24.js";
3
+ function h(t) {
4
+ const { kzg: m } = t, c = t.to ?? (typeof t.blobs[0] == "string" ? "hex" : "bytes"), s = typeof t.blobs[0] == "string" ? t.blobs.map((o) => b(o)) : t.blobs, i = typeof t.commitments[0] == "string" ? t.commitments.map((o) => b(o)) : t.commitments, n = [];
5
+ for (let o = 0; o < s.length; o++) {
6
+ const f = s[o], l = i[o];
7
+ n.push(Uint8Array.from(m.computeBlobKzgProof(f, l)));
8
+ }
9
+ return c === "bytes" ? n : n.map((o) => y(o));
10
+ }
11
+ export {
12
+ h as blobsToProofs
13
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index62.cjs");function c(o){const{commitments:e,version:s}=o,n=o.to??(typeof e[0]=="string"?"hex":"bytes"),t=[];for(const m of e)t.push(i.commitmentToVersionedHash({commitment:m,to:n,version:s}));return t}exports.commitmentsToVersionedHashes=c;
@@ -0,0 +1,14 @@
1
+ import { commitmentToVersionedHash as i } from "./index62.js";
2
+ function r(o) {
3
+ const { commitments: t, version: n } = o, e = o.to ?? (typeof t[0] == "string" ? "hex" : "bytes"), s = [];
4
+ for (const m of t)
5
+ s.push(i({
6
+ commitment: m,
7
+ to: e,
8
+ version: n
9
+ }));
10
+ return s;
11
+ }
12
+ export {
13
+ r as commitmentsToVersionedHashes
14
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index24.cjs"),r=require("./index100.cjs");function c(t){const{commitment:o,version:s=1}=t,n=t.to??(typeof o=="string"?"hex":"bytes"),e=r.sha256(o);return e.set([s],0),n==="bytes"?e:i.bytesToHex(e)}exports.commitmentToVersionedHash=c;
@@ -0,0 +1,9 @@
1
+ import { bytesToHex as i } from "./index24.js";
2
+ import { sha256 as m } from "./index100.js";
3
+ function f(t) {
4
+ const { commitment: e, version: s = 1 } = t, n = t.to ?? (typeof e == "string" ? "hex" : "bytes"), o = m(e);
5
+ return o.set([s], 0), n === "bytes" ? o : i(o);
6
+ }
7
+ export {
8
+ f as commitmentToVersionedHash
9
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index59.cjs"),m=require("./index60.cjs"),u=require("./index64.cjs");function f(t){const{data:i,kzg:n,to:b}=t,s=t.blobs??u.toBlobs({data:i,to:b}),e=t.commitments??r.blobsToCommitments({blobs:s,kzg:n,to:b}),l=t.proofs??m.blobsToProofs({blobs:s,commitments:e,kzg:n,to:b}),c=[];for(let o=0;o<s.length;o++)c.push({blob:s[o],commitment:e[o],proof:l[o]});return c}exports.toBlobSidecars=f;
@@ -0,0 +1,16 @@
1
+ import { blobsToCommitments as f } from "./index59.js";
2
+ import { blobsToProofs as l } from "./index60.js";
3
+ import { toBlobs as p } from "./index64.js";
4
+ function k(t) {
5
+ const { data: i, kzg: n, to: m } = t, s = t.blobs ?? p({ data: i, to: m }), b = t.commitments ?? f({ blobs: s, kzg: n, to: m }), r = t.proofs ?? l({ blobs: s, commitments: b, kzg: n, to: m }), c = [];
6
+ for (let o = 0; o < s.length; o++)
7
+ c.push({
8
+ blob: s[o],
9
+ commitment: b[o],
10
+ proof: r[o]
11
+ });
12
+ return c;
13
+ }
14
+ export {
15
+ k as toBlobSidecars
16
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./index97.cjs"),y=require("./index98.cjs"),u=require("./index99.cjs"),B=require("./index47.cjs"),h=require("./index55.cjs"),d=require("./index24.cjs");function f(t){const a=t.to??(typeof t.data=="string"?"hex":"bytes"),n=typeof t.data=="string"?h.hexToBytes(t.data):t.data,s=B.size(n);if(!s)throw new y.EmptyBlobError;if(s>o.maxBytesPerTransaction)throw new y.BlobSizeTooLargeError({maxSize:o.maxBytesPerTransaction,size:s});const r=[];let b=!0,i=0;for(;b;){const e=u.createCursor(new Uint8Array(o.bytesPerBlob));let l=0;for(;l<o.fieldElementsPerBlob;){const c=n.slice(i,i+(o.bytesPerFieldElement-1));if(e.pushByte(0),e.pushBytes(c),c.length<31){e.pushByte(128),b=!1;break}l++,i+=31}r.push(e)}return a==="bytes"?r.map(e=>e.bytes):r.map(e=>d.bytesToHex(e.bytes))}exports.toBlobs=f;
@@ -0,0 +1,35 @@
1
+ import { maxBytesPerTransaction as y, bytesPerBlob as a, fieldElementsPerBlob as f, bytesPerFieldElement as p } from "./index97.js";
2
+ import { EmptyBlobError as c, BlobSizeTooLargeError as h } from "./index98.js";
3
+ import { createCursor as B } from "./index99.js";
4
+ import { size as u } from "./index47.js";
5
+ import { hexToBytes as x } from "./index55.js";
6
+ import { bytesToHex as d } from "./index24.js";
7
+ function S(e) {
8
+ const m = e.to ?? (typeof e.data == "string" ? "hex" : "bytes"), i = typeof e.data == "string" ? x(e.data) : e.data, o = u(i);
9
+ if (!o)
10
+ throw new c();
11
+ if (o > y)
12
+ throw new h({
13
+ maxSize: y,
14
+ size: o
15
+ });
16
+ const s = [];
17
+ let n = !0, r = 0;
18
+ for (; n; ) {
19
+ const t = B(new Uint8Array(a));
20
+ let l = 0;
21
+ for (; l < f; ) {
22
+ const b = i.slice(r, r + (p - 1));
23
+ if (t.pushByte(0), t.pushBytes(b), b.length < 31) {
24
+ t.pushByte(128), n = !1;
25
+ break;
26
+ }
27
+ l++, r += 31;
28
+ }
29
+ s.push(t);
30
+ }
31
+ return m === "bytes" ? s.map((t) => t.bytes) : s.map((t) => d(t.bytes));
32
+ }
33
+ export {
34
+ S as toBlobs
35
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index29.cjs");function f(e){if(e.type)return e.type;if(typeof e.authorizationList<"u")return"eip7702";if(typeof e.blobs<"u"||typeof e.blobVersionedHashes<"u"||typeof e.maxFeePerBlobGas<"u"||typeof e.sidecars<"u")return"eip4844";if(typeof e.maxFeePerGas<"u"||typeof e.maxPriorityFeePerGas<"u")return"eip1559";if(typeof e.gasPrice<"u")return typeof e.accessList<"u"?"eip2930":"legacy";throw new i.InvalidSerializableTransactionError({transaction:e})}exports.getTransactionType=f;
@@ -0,0 +1,17 @@
1
+ import { InvalidSerializableTransactionError as f } from "./index29.js";
2
+ function d(e) {
3
+ if (e.type)
4
+ return e.type;
5
+ if (typeof e.authorizationList < "u")
6
+ return "eip7702";
7
+ if (typeof e.blobs < "u" || typeof e.blobVersionedHashes < "u" || typeof e.maxFeePerBlobGas < "u" || typeof e.sidecars < "u")
8
+ return "eip4844";
9
+ if (typeof e.maxFeePerGas < "u" || typeof e.maxPriorityFeePerGas < "u")
10
+ return "eip1559";
11
+ if (typeof e.gasPrice < "u")
12
+ return typeof e.accessList < "u" ? "eip2930" : "legacy";
13
+ throw new f({ transaction: e });
14
+ }
15
+ export {
16
+ d as getTransactionType
17
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const E=require("./index49.cjs"),z=require("./index54.cjs"),o=require("./index67.cjs"),T=require("./index58.cjs"),u=require("./index47.cjs"),q=require("./index24.cjs"),g=require("./index68.cjs");function P(e){const{domain:n,message:b,primaryType:a,types:r}=e,c=(l,h)=>{for(const v of l){const{name:I,type:s}=v,t=h[I],y=s.match(g.integerRegex);if(y&&(typeof t=="number"||typeof t=="bigint")){const[w,i,D]=y;q.numberToHex(t,{signed:i==="int",size:Number.parseInt(D)/8})}if(s==="address"&&typeof t=="string"&&!T.isAddress(t))throw new z.InvalidAddressError({address:t});const f=s.match(g.bytesRegex);if(f){const[w,i]=f;if(i&&u.size(t)!==Number.parseInt(i))throw new E.BytesSizeMismatchError({expectedSize:Number.parseInt(i),givenSize:u.size(t)})}const p=r[s];p&&(x(s),c(p,t))}};if(r.EIP712Domain&&n){if(typeof n!="object")throw new o.InvalidDomainError({domain:n});c(r.EIP712Domain,n)}if(a!=="EIP712Domain")if(r[a])c(r[a],b);else throw new o.InvalidPrimaryTypeError({primaryType:a,types:r})}function d({domain:e}){return[typeof(e==null?void 0:e.name)=="string"&&{name:"name",type:"string"},(e==null?void 0:e.version)&&{name:"version",type:"string"},(typeof(e==null?void 0:e.chainId)=="number"||typeof(e==null?void 0:e.chainId)=="bigint")&&{name:"chainId",type:"uint256"},(e==null?void 0:e.verifyingContract)&&{name:"verifyingContract",type:"address"},(e==null?void 0:e.salt)&&{name:"salt",type:"bytes32"}].filter(Boolean)}function x(e){if(e==="address"||e==="bool"||e==="string"||e.startsWith("bytes")||e.startsWith("uint")||e.startsWith("int"))throw new o.InvalidStructTypeError({type:e})}exports.getTypesForEIP712Domain=d;exports.validateTypedData=P;
@@ -0,0 +1,67 @@
1
+ import { BytesSizeMismatchError as m } from "./index49.js";
2
+ import { InvalidAddressError as w } from "./index54.js";
3
+ import { InvalidDomainError as E, InvalidPrimaryTypeError as z, InvalidStructTypeError as D } from "./index67.js";
4
+ import { isAddress as T } from "./index58.js";
5
+ import { size as y } from "./index47.js";
6
+ import { numberToHex as x } from "./index24.js";
7
+ import { integerRegex as P, bytesRegex as S } from "./index68.js";
8
+ function j(e) {
9
+ const { domain: n, message: g, primaryType: o, types: r } = e, f = (h, b) => {
10
+ for (const u of h) {
11
+ const { name: l, type: s } = u, t = b[l], a = s.match(P);
12
+ if (a && (typeof t == "number" || typeof t == "bigint")) {
13
+ const [I, i, v] = a;
14
+ x(t, {
15
+ signed: i === "int",
16
+ size: Number.parseInt(v) / 8
17
+ });
18
+ }
19
+ if (s === "address" && typeof t == "string" && !T(t))
20
+ throw new w({ address: t });
21
+ const p = s.match(S);
22
+ if (p) {
23
+ const [I, i] = p;
24
+ if (i && y(t) !== Number.parseInt(i))
25
+ throw new m({
26
+ expectedSize: Number.parseInt(i),
27
+ givenSize: y(t)
28
+ });
29
+ }
30
+ const c = r[s];
31
+ c && (_(s), f(c, t));
32
+ }
33
+ };
34
+ if (r.EIP712Domain && n) {
35
+ if (typeof n != "object")
36
+ throw new E({ domain: n });
37
+ f(r.EIP712Domain, n);
38
+ }
39
+ if (o !== "EIP712Domain")
40
+ if (r[o])
41
+ f(r[o], g);
42
+ else
43
+ throw new z({ primaryType: o, types: r });
44
+ }
45
+ function F({ domain: e }) {
46
+ return [
47
+ typeof (e == null ? void 0 : e.name) == "string" && { name: "name", type: "string" },
48
+ (e == null ? void 0 : e.version) && { name: "version", type: "string" },
49
+ (typeof (e == null ? void 0 : e.chainId) == "number" || typeof (e == null ? void 0 : e.chainId) == "bigint") && {
50
+ name: "chainId",
51
+ type: "uint256"
52
+ },
53
+ (e == null ? void 0 : e.verifyingContract) && {
54
+ name: "verifyingContract",
55
+ type: "address"
56
+ },
57
+ (e == null ? void 0 : e.salt) && { name: "salt", type: "bytes32" }
58
+ ].filter(Boolean);
59
+ }
60
+ function _(e) {
61
+ if (e === "address" || e === "bool" || e === "string" || e.startsWith("bytes") || e.startsWith("uint") || e.startsWith("int"))
62
+ throw new D({ type: e });
63
+ }
64
+ export {
65
+ F as getTypesForEIP712Domain,
66
+ j as validateTypedData
67
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./index38.cjs"),e=require("./index43.cjs");class i extends e.BaseError{constructor({domain:r}){super(`Invalid domain "${s.stringify(r)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class o extends e.BaseError{constructor({primaryType:r,types:a}){super(`Invalid primary type \`${r}\` must be one of \`${JSON.stringify(Object.keys(a))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class n extends e.BaseError{constructor({type:r}){super(`Struct type "${r}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}exports.InvalidDomainError=i;exports.InvalidPrimaryTypeError=o;exports.InvalidStructTypeError=n;
@@ -0,0 +1,30 @@
1
+ import { stringify as a } from "./index38.js";
2
+ import { BaseError as t } from "./index43.js";
3
+ class n extends t {
4
+ constructor({ domain: r }) {
5
+ super(`Invalid domain "${a(r)}".`, {
6
+ metaMessages: ["Must be a valid EIP-712 domain."]
7
+ });
8
+ }
9
+ }
10
+ class p extends t {
11
+ constructor({ primaryType: r, types: s }) {
12
+ super(`Invalid primary type \`${r}\` must be one of \`${JSON.stringify(Object.keys(s))}\`.`, {
13
+ docsPath: "/api/glossary/Errors#typeddatainvalidprimarytypeerror",
14
+ metaMessages: ["Check that the primary type is a key in `types`."]
15
+ });
16
+ }
17
+ }
18
+ class y extends t {
19
+ constructor({ type: r }) {
20
+ super(`Struct type "${r}" is invalid.`, {
21
+ metaMessages: ["Struct type must not be a Solidity type."],
22
+ name: "InvalidStructTypeError"
23
+ });
24
+ }
25
+ }
26
+ export {
27
+ n as InvalidDomainError,
28
+ p as InvalidPrimaryTypeError,
29
+ y as InvalidStructTypeError
30
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,t=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;exports.bytesRegex=e;exports.integerRegex=t;
@@ -0,0 +1,5 @@
1
+ const e = /^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/, t = /^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;
2
+ export {
3
+ e as bytesRegex,
4
+ t as integerRegex
5
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index56.cjs"),t=require("./index70.cjs");function a(e,s){return r.keccak256(t.toPrefixedMessage(e),s)}exports.hashMessage=a;
@@ -0,0 +1,8 @@
1
+ import { keccak256 as o } from "./index56.js";
2
+ import { toPrefixedMessage as t } from "./index70.js";
3
+ function f(e, r) {
4
+ return o(t(e), r);
5
+ }
6
+ export {
7
+ f as hashMessage
8
+ };
package/dist/index7.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class r{constructor(){this.memory=new Map}getItem(e){return this.memory.has(e)?this.memory.get(e):null}setItem(e,t){this.memory.set(e,t)}removeItem(e){this.memory.has(e)&&this.memory.delete(e)}}exports.MemoryStorage=r;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var e=(t=>(t.Authorization="Authorization",t.ApiKey="api-key",t))(e||{});exports.AuthHeaderEnum=e;
package/dist/index7.js CHANGED
@@ -1,17 +1,4 @@
1
- class m {
2
- constructor() {
3
- this.memory = /* @__PURE__ */ new Map();
4
- }
5
- getItem(e) {
6
- return this.memory.has(e) ? this.memory.get(e) : null;
7
- }
8
- setItem(e, t) {
9
- this.memory.set(e, t);
10
- }
11
- removeItem(e) {
12
- this.memory.has(e) && this.memory.delete(e);
13
- }
14
- }
1
+ var o = /* @__PURE__ */ ((i) => (i.Authorization = "Authorization", i.ApiKey = "api-key", i))(o || {});
15
2
  export {
16
- m as MemoryStorage
3
+ o as AuthHeaderEnum
17
4
  };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./index101.cjs"),o=require("./index76.cjs"),s=require("./index47.cjs"),r=require("./index24.cjs");function c(e){const t=typeof e=="string"?r.stringToHex(e):typeof e.raw=="string"?e.raw:r.bytesToHex(e.raw),i=r.stringToHex(`${n.presignMessagePrefix}${s.size(t)}`);return o.concat([i,t])}exports.toPrefixedMessage=c;
@@ -0,0 +1,11 @@
1
+ import { presignMessagePrefix as e } from "./index101.js";
2
+ import { concat as n } from "./index76.js";
3
+ import { size as f } from "./index47.js";
4
+ import { stringToHex as o, bytesToHex as p } from "./index24.js";
5
+ function u(r) {
6
+ const t = typeof r == "string" ? o(r) : typeof r.raw == "string" ? r.raw : p(r.raw), i = o(`${e}${f(t)}`);
7
+ return n([i, t]);
8
+ }
9
+ export {
10
+ u as toPrefixedMessage
11
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function r(t,{strict:e=!0}={}){return!t||typeof t!="string"?!1:e?/^0x[0-9a-fA-F]*$/.test(t):t.startsWith("0x")}exports.isHex=r;
@@ -0,0 +1,6 @@
1
+ function e(t, { strict: r = !0 } = {}) {
2
+ return !t || typeof t != "string" ? !1 : r ? /^0x[0-9a-fA-F]*$/.test(t) : t.startsWith("0x");
3
+ }
4
+ export {
5
+ e as isHex
6
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./index73.cjs"),n=require("./index34.cjs"),a=require("./index55.cjs");function g({r:i,s:o,to:u="hex",v:e,yParity:r}){const s=(()=>{if(r===0||r===1)return r;if(e&&(e===27n||e===28n||e>=35n))return e%2n===0n?1:0;throw new Error("Invalid `v` or `yParity` value")})(),t=`0x${new c.secp256k1.Signature(n.hexToBigInt(i),n.hexToBigInt(o)).toCompactHex()}${s===0?"1b":"1c"}`;return u==="hex"?t:a.hexToBytes(t)}exports.serializeSignature=g;
@@ -0,0 +1,16 @@
1
+ import { secp256k1 as f } from "./index73.js";
2
+ import { hexToBigInt as t } from "./index34.js";
3
+ import { hexToBytes as m } from "./index55.js";
4
+ function s({ r: o, s: i, to: u = "hex", v: r, yParity: e }) {
5
+ const a = (() => {
6
+ if (e === 0 || e === 1)
7
+ return e;
8
+ if (r && (r === 27n || r === 28n || r >= 35n))
9
+ return r % 2n === 0n ? 1 : 0;
10
+ throw new Error("Invalid `v` or `yParity` value");
11
+ })(), n = `0x${new f.Signature(t(o), t(i)).toCompactHex()}${a === 0 ? "1b" : "1c"}`;
12
+ return u === "hex" ? n : m(n);
13
+ }
14
+ export {
15
+ s as serializeSignature
16
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const j=require("./index102.cjs"),C=require("./index107.cjs"),n=require("./index108.cjs");/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const k=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),x=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),G=BigInt(1),w=BigInt(2),h=(t,f)=>(t+f/w)/f;function M(t){const f=k,e=BigInt(3),r=BigInt(6),p=BigInt(11),a=BigInt(22),s=BigInt(23),i=BigInt(44),d=BigInt(88),o=t*t*t%f,c=o*o*t%f,g=n.pow2(c,e,f)*c%f,b=n.pow2(g,e,f)*c%f,l=n.pow2(b,w,f)*o%f,B=n.pow2(l,p,f)*l%f,I=n.pow2(B,a,f)*B%f,_=n.pow2(I,i,f)*I%f,P=n.pow2(_,d,f)*_%f,S=n.pow2(P,i,f)*I%f,v=n.pow2(S,e,f)*c%f,E=n.pow2(v,s,f)*B%f,F=n.pow2(E,r,f)*o%f,q=n.pow2(F,w,f);if(!u.eql(u.sqr(q),t))throw new Error("Cannot find square root");return q}const u=n.Field(k,void 0,void 0,{sqrt:M}),m=C.createCurve({a:BigInt(0),b:BigInt(7),Fp:u,n:x,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{const f=x,e=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-G*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),p=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),a=e,s=BigInt("0x100000000000000000000000000000000"),i=h(a*t,f),d=h(-r*t,f);let o=n.mod(t-i*e-d*p,f),c=n.mod(-i*r-d*a,f);const g=o>s,b=c>s;if(g&&(o=f-o),b&&(c=f-c),o>s||c>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:g,k1:o,k2neg:b,k2:c}}}},j.sha256);BigInt(0);m.ProjectivePoint;exports.secp256k1=m;
@@ -0,0 +1,44 @@
1
+ import { sha256 as C } from "./index102.js";
2
+ import { createCurve as G } from "./index107.js";
3
+ import { Field as N, mod as k, pow2 as t } from "./index108.js";
4
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
5
+ const q = BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"), w = BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"), j = BigInt(1), _ = BigInt(2), h = (n, f) => (n + f / _) / f;
6
+ function M(n) {
7
+ const f = q, e = BigInt(3), r = BigInt(6), I = BigInt(11), a = BigInt(22), s = BigInt(23), i = BigInt(44), g = BigInt(88), o = n * n * n % f, c = o * o * n % f, d = t(c, e, f) * c % f, B = t(d, e, f) * c % f, m = t(B, _, f) * o % f, b = t(m, I, f) * m % f, p = t(b, a, f) * b % f, x = t(p, i, f) * p % f, P = t(x, g, f) * x % f, v = t(P, i, f) * p % f, E = t(v, e, f) * c % f, F = t(E, s, f) * b % f, S = t(F, r, f) * o % f, u = t(S, _, f);
8
+ if (!l.eql(l.sqr(u), n))
9
+ throw new Error("Cannot find square root");
10
+ return u;
11
+ }
12
+ const l = N(q, void 0, void 0, { sqrt: M }), O = G({
13
+ a: BigInt(0),
14
+ // equation params: a, b
15
+ b: BigInt(7),
16
+ Fp: l,
17
+ // Field's prime: 2n**256n - 2n**32n - 2n**9n - 2n**8n - 2n**7n - 2n**6n - 2n**4n - 1n
18
+ n: w,
19
+ // Curve order, total count of valid points in the field
20
+ // Base point (x, y) aka generator point
21
+ Gx: BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),
22
+ Gy: BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),
23
+ h: BigInt(1),
24
+ // Cofactor
25
+ lowS: !0,
26
+ // Allow only low-S signatures by default in sign() and verify()
27
+ endo: {
28
+ // Endomorphism, see above
29
+ beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),
30
+ splitScalar: (n) => {
31
+ const f = w, e = BigInt("0x3086d221a7d46bcde86c90e49284eb15"), r = -j * BigInt("0xe4437ed6010e88286f547fa90abfe4c3"), I = BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"), a = e, s = BigInt("0x100000000000000000000000000000000"), i = h(a * n, f), g = h(-r * n, f);
32
+ let o = k(n - i * e - g * I, f), c = k(-i * r - g * a, f);
33
+ const d = o > s, B = c > s;
34
+ if (d && (o = f - o), B && (c = f - c), o > s || c > s)
35
+ throw new Error("splitScalar: Endomorphism failed, k=" + n);
36
+ return { k1neg: d, k1: o, k2neg: B, k2: c };
37
+ }
38
+ }
39
+ }, C);
40
+ BigInt(0);
41
+ O.ProjectivePoint;
42
+ export {
43
+ O as secp256k1
44
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./index75.cjs"),D=require("./index76.cjs"),f=require("./index24.cjs"),s=require("./index56.cjs"),p=require("./index66.cjs");function b(c){const{domain:t={},message:e,primaryType:n}=c,o={EIP712Domain:p.getTypesForEIP712Domain({domain:t}),...c.types};p.validateTypedData({domain:t,message:e,primaryType:n,types:o});const a=["0x1901"];return t&&a.push(y({domain:t,types:o})),n!=="EIP712Domain"&&a.push(d({data:e,primaryType:n,types:o})),s.keccak256(D.concat(a))}function y({domain:c,types:t}){return d({data:c,primaryType:"EIP712Domain",types:t})}function d({data:c,primaryType:t,types:e}){const n=h({data:c,primaryType:t,types:e});return s.keccak256(n)}function h({data:c,primaryType:t,types:e}){const n=[{type:"bytes32"}],o=[l({primaryType:t,types:e})];for(const a of e[t]){const[r,i]=T({types:e,name:a.name,type:a.type,value:c[a.name]});n.push(r),o.push(i)}return u.encodeAbiParameters(n,o)}function l({primaryType:c,types:t}){const e=f.toHex(m({primaryType:c,types:t}));return s.keccak256(e)}function m({primaryType:c,types:t}){let e="";const n=k({primaryType:c,types:t});n.delete(c);const o=[c,...Array.from(n).sort()];for(const a of o)e+=`${a}(${t[a].map(({name:r,type:i})=>`${i} ${r}`).join(",")})`;return e}function k({primaryType:c,types:t},e=new Set){const n=c.match(/^\w*/u),o=n==null?void 0:n[0];if(e.has(o)||t[o]===void 0)return e;e.add(o);for(const a of t[o])k({primaryType:a.type,types:t},e);return e}function T({types:c,name:t,type:e,value:n}){if(c[e]!==void 0)return[{type:"bytes32"},s.keccak256(h({data:n,primaryType:e,types:c}))];if(e==="bytes")return n=`0x${(n.length%2?"0":"")+n.slice(2)}`,[{type:"bytes32"},s.keccak256(n)];if(e==="string")return[{type:"bytes32"},s.keccak256(f.toHex(n))];if(e.lastIndexOf("]")===e.length-1){const o=e.slice(0,e.lastIndexOf("[")),a=n.map(r=>T({name:t,type:o,types:c,value:r}));return[{type:"bytes32"},s.keccak256(u.encodeAbiParameters(a.map(([r])=>r),a.map(([,r])=>r)))]}return[{type:e},n]}exports.encodeType=m;exports.hashDomain=y;exports.hashStruct=d;exports.hashTypedData=b;