@coinbase/cdp-core 0.0.64 → 0.0.66

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 (191) hide show
  1. package/README.md +1 -1
  2. package/dist/esm/index.native101.js +1 -1
  3. package/dist/esm/index.native102.js +12 -12
  4. package/dist/esm/index.native103.js +12 -12
  5. package/dist/esm/index.native104.js +6 -6
  6. package/dist/esm/index.native111.js +2 -2
  7. package/dist/esm/index.native12.js +43 -24
  8. package/dist/esm/index.native120.js +4 -3
  9. package/dist/esm/index.native121.js +16 -18
  10. package/dist/esm/index.native122.js +8 -10
  11. package/dist/esm/index.native123.js +4 -20
  12. package/dist/esm/index.native124.js +23 -93
  13. package/dist/esm/index.native125.js +9 -21
  14. package/dist/esm/index.native126.js +8 -118
  15. package/dist/esm/index.native127.js +71 -4
  16. package/dist/esm/index.native128.js +12 -12
  17. package/dist/esm/index.native129.js +3 -7
  18. package/dist/esm/index.native130.js +4 -3
  19. package/dist/esm/index.native131.js +4 -19
  20. package/dist/esm/index.native132.js +4 -8
  21. package/dist/esm/index.native133.js +19 -7
  22. package/dist/esm/index.native134.js +47 -66
  23. package/dist/esm/index.native135.js +17 -18
  24. package/dist/esm/index.native136.js +23 -3
  25. package/dist/esm/index.native137.js +8 -4
  26. package/dist/esm/index.native138.js +30 -4
  27. package/dist/esm/index.native139.js +7 -4
  28. package/dist/esm/index.native140.js +11 -10
  29. package/dist/esm/index.native141.js +3 -52
  30. package/dist/esm/index.native142.js +20 -17
  31. package/dist/esm/index.native143.js +10 -21
  32. package/dist/esm/index.native144.js +20 -9
  33. package/dist/esm/index.native145.js +93 -30
  34. package/dist/esm/index.native146.js +21 -8
  35. package/dist/esm/index.native147.js +117 -20
  36. package/dist/esm/index.native148.js +38 -7
  37. package/dist/esm/index.native150.js +67 -375
  38. package/dist/esm/index.native151.js +34 -832
  39. package/dist/esm/index.native152.js +20 -38
  40. package/dist/esm/index.native153.js +8 -2
  41. package/dist/esm/index.native154.js +2 -70
  42. package/dist/esm/index.native155.js +373 -30
  43. package/dist/esm/index.native156.js +832 -20
  44. package/dist/esm/index.native171.js +2 -2
  45. package/dist/esm/index.native172.js +2 -2
  46. package/dist/esm/index.native173.js +2 -2
  47. package/dist/esm/index.native28.js +1 -1
  48. package/dist/esm/index.native47.js +7 -8
  49. package/dist/esm/index.web100.js +4 -2
  50. package/dist/esm/index.web101.js +28 -65
  51. package/dist/esm/index.web102.js +28 -364
  52. package/dist/esm/index.web103.js +6 -6
  53. package/dist/esm/index.web11.js +43 -24
  54. package/dist/esm/index.web110.js +1 -1
  55. package/dist/esm/index.web114.js +1 -1
  56. package/dist/esm/index.web118.js +77 -19
  57. package/dist/esm/index.web119.js +5 -10
  58. package/dist/esm/index.web120.js +18 -19
  59. package/dist/esm/index.web121.js +8 -94
  60. package/dist/esm/index.web122.js +4 -21
  61. package/dist/esm/index.web123.js +22 -116
  62. package/dist/esm/index.web124.js +8 -78
  63. package/dist/esm/index.web125.js +7 -4
  64. package/dist/esm/index.web126.js +70 -17
  65. package/dist/esm/index.web127.js +18 -7
  66. package/dist/esm/index.web128.js +3 -3
  67. package/dist/esm/index.web129.js +4 -19
  68. package/dist/esm/index.web130.js +4 -8
  69. package/dist/esm/index.web131.js +4 -7
  70. package/dist/esm/index.web132.js +18 -70
  71. package/dist/esm/index.web133.js +47 -13
  72. package/dist/esm/index.web134.js +17 -3
  73. package/dist/esm/index.web135.js +23 -4
  74. package/dist/esm/index.web136.js +8 -4
  75. package/dist/esm/index.web137.js +30 -4
  76. package/dist/esm/index.web138.js +7 -19
  77. package/dist/esm/index.web139.js +16 -48
  78. package/dist/esm/index.web140.js +3 -17
  79. package/dist/esm/index.web141.js +18 -18
  80. package/dist/esm/index.web142.js +10 -9
  81. package/dist/esm/index.web143.js +19 -30
  82. package/dist/esm/index.web144.js +94 -8
  83. package/dist/esm/index.web145.js +20 -20
  84. package/dist/esm/index.web146.js +118 -4
  85. package/dist/esm/index.web168.js +1 -1
  86. package/dist/esm/index.web46.js +8 -9
  87. package/dist/esm/index.web47.js +3 -3
  88. package/dist/esm/index.web96.js +377 -2
  89. package/dist/esm/index.web97.js +2 -379
  90. package/dist/esm/index.web98.js +65 -28
  91. package/dist/esm/index.web99.js +364 -28
  92. package/dist/native/index.native101.js +1 -1
  93. package/dist/native/index.native102.js +12 -12
  94. package/dist/native/index.native103.js +12 -12
  95. package/dist/native/index.native104.js +6 -6
  96. package/dist/native/index.native111.js +2 -2
  97. package/dist/native/index.native12.js +43 -24
  98. package/dist/native/index.native120.js +4 -3
  99. package/dist/native/index.native121.js +16 -18
  100. package/dist/native/index.native122.js +8 -10
  101. package/dist/native/index.native123.js +4 -20
  102. package/dist/native/index.native124.js +23 -93
  103. package/dist/native/index.native125.js +9 -21
  104. package/dist/native/index.native126.js +8 -118
  105. package/dist/native/index.native127.js +71 -4
  106. package/dist/native/index.native128.js +12 -12
  107. package/dist/native/index.native129.js +3 -7
  108. package/dist/native/index.native130.js +4 -3
  109. package/dist/native/index.native131.js +4 -19
  110. package/dist/native/index.native132.js +4 -8
  111. package/dist/native/index.native133.js +19 -7
  112. package/dist/native/index.native134.js +47 -66
  113. package/dist/native/index.native135.js +17 -18
  114. package/dist/native/index.native136.js +23 -3
  115. package/dist/native/index.native137.js +8 -4
  116. package/dist/native/index.native138.js +30 -4
  117. package/dist/native/index.native139.js +7 -4
  118. package/dist/native/index.native140.js +11 -10
  119. package/dist/native/index.native141.js +3 -52
  120. package/dist/native/index.native142.js +20 -17
  121. package/dist/native/index.native143.js +10 -21
  122. package/dist/native/index.native144.js +20 -9
  123. package/dist/native/index.native145.js +93 -30
  124. package/dist/native/index.native146.js +21 -8
  125. package/dist/native/index.native147.js +117 -20
  126. package/dist/native/index.native148.js +38 -7
  127. package/dist/native/index.native150.js +67 -375
  128. package/dist/native/index.native151.js +34 -832
  129. package/dist/native/index.native152.js +20 -38
  130. package/dist/native/index.native153.js +8 -2
  131. package/dist/native/index.native154.js +2 -70
  132. package/dist/native/index.native155.js +373 -30
  133. package/dist/native/index.native156.js +832 -20
  134. package/dist/native/index.native171.js +2 -2
  135. package/dist/native/index.native172.js +2 -2
  136. package/dist/native/index.native173.js +2 -2
  137. package/dist/native/index.native28.js +1 -1
  138. package/dist/native/index.native47.js +7 -8
  139. package/dist/native-types/actions/fetchWithX402.d.ts +1 -1
  140. package/dist/native-types/eip1193/types.d.ts +4 -1
  141. package/dist/native-types/version.d.ts +1 -1
  142. package/dist/types/actions/fetchWithX402.d.ts +1 -1
  143. package/dist/types/eip1193/types.d.ts +4 -1
  144. package/dist/types/version.d.ts +1 -1
  145. package/dist/web/index.web100.js +4 -2
  146. package/dist/web/index.web101.js +28 -65
  147. package/dist/web/index.web102.js +28 -364
  148. package/dist/web/index.web103.js +6 -6
  149. package/dist/web/index.web11.js +43 -24
  150. package/dist/web/index.web110.js +1 -1
  151. package/dist/web/index.web114.js +1 -1
  152. package/dist/web/index.web118.js +77 -19
  153. package/dist/web/index.web119.js +5 -10
  154. package/dist/web/index.web120.js +18 -19
  155. package/dist/web/index.web121.js +8 -94
  156. package/dist/web/index.web122.js +4 -21
  157. package/dist/web/index.web123.js +22 -116
  158. package/dist/web/index.web124.js +8 -78
  159. package/dist/web/index.web125.js +7 -4
  160. package/dist/web/index.web126.js +70 -17
  161. package/dist/web/index.web127.js +18 -7
  162. package/dist/web/index.web128.js +3 -3
  163. package/dist/web/index.web129.js +4 -19
  164. package/dist/web/index.web130.js +4 -8
  165. package/dist/web/index.web131.js +4 -7
  166. package/dist/web/index.web132.js +18 -70
  167. package/dist/web/index.web133.js +47 -13
  168. package/dist/web/index.web134.js +17 -3
  169. package/dist/web/index.web135.js +23 -4
  170. package/dist/web/index.web136.js +8 -4
  171. package/dist/web/index.web137.js +30 -4
  172. package/dist/web/index.web138.js +7 -19
  173. package/dist/web/index.web139.js +16 -48
  174. package/dist/web/index.web140.js +3 -17
  175. package/dist/web/index.web141.js +18 -18
  176. package/dist/web/index.web142.js +10 -9
  177. package/dist/web/index.web143.js +19 -30
  178. package/dist/web/index.web144.js +94 -8
  179. package/dist/web/index.web145.js +20 -20
  180. package/dist/web/index.web146.js +118 -4
  181. package/dist/web/index.web168.js +1 -1
  182. package/dist/web/index.web46.js +8 -9
  183. package/dist/web/index.web47.js +3 -3
  184. package/dist/web/index.web96.js +377 -2
  185. package/dist/web/index.web97.js +2 -379
  186. package/dist/web/index.web98.js +65 -28
  187. package/dist/web/index.web99.js +364 -28
  188. package/dist/web-types/actions/fetchWithX402.d.ts +1 -1
  189. package/dist/web-types/eip1193/types.d.ts +4 -1
  190. package/dist/web-types/version.d.ts +1 -1
  191. package/package.json +2 -2
package/README.md CHANGED
@@ -728,7 +728,7 @@ const { fetchWithPayment } = await fetchWithX402();
728
728
 
729
729
  #### Solana Support
730
730
 
731
- Solana is supported out of the box with `fetchWithX402`. If your end user has both an EVM and Solana account, the EVM account will be used by defualt. You can pass a Solana address to `fetchWithX402` to use the Solana account instead.
731
+ Solana is supported out of the box with `fetchWithX402`. If your end user has both an EVM and Solana account, the EVM account will be used by default. You can pass a Solana address to `fetchWithX402` to use the Solana account instead.
732
732
 
733
733
  ```typescript lines
734
734
  const user = await getCurrentUser();
@@ -1,4 +1,4 @@
1
- const o = "0.0.61";
1
+ const o = "0.0.66";
2
2
  export {
3
3
  o as VERSION
4
4
  };
@@ -1,15 +1,15 @@
1
- import { handleAccounts as t } from "./index.native127.js";
2
- import { handleEthSign as e } from "./index.native128.js";
3
- import { handleGetCallsStatus as a } from "./index.native129.js";
4
- import { handleGetCapabilities as n } from "./index.native130.js";
5
- import { handlePersonalSign as o } from "./index.native131.js";
6
- import { handleRequestAccounts as r } from "./index.native132.js";
7
- import { handleSendCalls as i } from "./index.native133.js";
8
- import { handleSendTransaction as l } from "./index.native134.js";
9
- import { handleSignTypedData as h } from "./index.native135.js";
10
- import { handleChainId as s } from "./index.native136.js";
11
- import { handleDisconnect as m } from "./index.native137.js";
12
- import { handleSwitchEthereumChain as d } from "./index.native138.js";
1
+ import { handleAccounts as t } from "./index.native120.js";
2
+ import { handleEthSign as e } from "./index.native121.js";
3
+ import { handleGetCallsStatus as a } from "./index.native122.js";
4
+ import { handleGetCapabilities as n } from "./index.native123.js";
5
+ import { handlePersonalSign as o } from "./index.native124.js";
6
+ import { handleRequestAccounts as r } from "./index.native125.js";
7
+ import { handleSendCalls as i } from "./index.native126.js";
8
+ import { handleSendTransaction as l } from "./index.native127.js";
9
+ import { handleSignTypedData as h } from "./index.native128.js";
10
+ import { handleChainId as s } from "./index.native129.js";
11
+ import { handleDisconnect as m } from "./index.native130.js";
12
+ import { handleSwitchEthereumChain as d } from "./index.native131.js";
13
13
  function D() {
14
14
  return {
15
15
  eth_accounts: t,
@@ -1,15 +1,15 @@
1
- import { handleChainId as t } from "./index.native136.js";
2
- import { handleDisconnect as e } from "./index.native137.js";
3
- import { handleSwitchEthereumChain as a } from "./index.native138.js";
4
- import { handleAccounts as n } from "./index.native139.js";
5
- import { handleEthSign as o } from "./index.native140.js";
6
- import { handleGetCallsStatus as r } from "./index.native141.js";
7
- import { handleGetCapabilities as i } from "./index.native142.js";
8
- import { handlePersonalSign as l } from "./index.native143.js";
9
- import { handleRequestAccounts as h } from "./index.native144.js";
10
- import { handleSendCalls as m } from "./index.native145.js";
11
- import { handleSendTransaction as s } from "./index.native146.js";
12
- import { handleSignTypedData as d } from "./index.native147.js";
1
+ import { handleChainId as t } from "./index.native129.js";
2
+ import { handleDisconnect as e } from "./index.native130.js";
3
+ import { handleSwitchEthereumChain as a } from "./index.native131.js";
4
+ import { handleAccounts as n } from "./index.native132.js";
5
+ import { handleEthSign as o } from "./index.native133.js";
6
+ import { handleGetCallsStatus as r } from "./index.native134.js";
7
+ import { handleGetCapabilities as i } from "./index.native135.js";
8
+ import { handlePersonalSign as l } from "./index.native136.js";
9
+ import { handleRequestAccounts as h } from "./index.native137.js";
10
+ import { handleSendCalls as m } from "./index.native138.js";
11
+ import { handleSendTransaction as s } from "./index.native139.js";
12
+ import { handleSignTypedData as d } from "./index.native140.js";
13
13
  function E() {
14
14
  return {
15
15
  eth_accounts: n,
@@ -1,11 +1,11 @@
1
- import { encode as d } from "./index.native121.js";
2
- import y from "./index.native122.js";
3
- import b from "./index.native123.js";
1
+ import { encode as d } from "./index.native142.js";
2
+ import y from "./index.native143.js";
3
+ import b from "./index.native144.js";
4
4
  import { JWSInvalid as r } from "./index.native54.js";
5
5
  import { encoder as s, concat as u, decoder as h } from "./index.native105.js";
6
- import g from "./index.native124.js";
7
- import H from "./index.native125.js";
8
- import P from "./index.native126.js";
6
+ import g from "./index.native145.js";
7
+ import H from "./index.native146.js";
8
+ import P from "./index.native147.js";
9
9
  class x {
10
10
  #r;
11
11
  #e;
@@ -1,5 +1,5 @@
1
- import { getDefaultExportFromCjs as r } from "./index.native120.js";
2
- import { __require as o } from "./index.native152.js";
1
+ import { getDefaultExportFromCjs as r } from "./index.native141.js";
2
+ import { __require as o } from "./index.native148.js";
3
3
  var t = o();
4
4
  const a = /* @__PURE__ */ r(t);
5
5
  export {
@@ -1,27 +1,46 @@
1
- import { isAddress as c } from "viem";
2
- import { wrapFetchWithPayment as a } from "x402-fetch";
3
- import { getCurrentUserSync as m } from "./index.native11.js";
4
- import { toTransactionSigner as n } from "./index.native40.js";
5
- import { toViemAccount as r } from "./index.native20.js";
6
- function A(e = {}) {
7
- const s = e.fetch ?? globalThis.fetch, t = m();
8
- if (!t)
9
- throw new Error("User not authenticated");
10
- const o = (() => {
11
- if (e.address && c(e.address))
12
- return r(e.address);
13
- if (e.address && !c(e.address))
14
- return n(e.address);
15
- if (t.evmSmartAccounts?.length)
16
- return r(t.evmSmartAccounts[0]);
17
- if (t.evmAccounts?.length)
18
- return r(t.evmAccounts[0]);
19
- if (t.solanaAccounts?.length)
20
- return n(t.solanaAccounts[0]);
21
- throw new Error("No account found");
22
- })();
23
- return { fetchWithPayment: a(s, o) };
1
+ import { isAddress as n } from "viem";
2
+ import { getCurrentUserSync as f } from "./index.native11.js";
3
+ import { toTransactionSigner as a } from "./index.native40.js";
4
+ import { toViemAccount as c } from "./index.native20.js";
5
+ function g(e = {}) {
6
+ const s = e.fetch ?? globalThis.fetch;
7
+ let r = null;
8
+ return { fetchWithPayment: async (...o) => {
9
+ if (!r) {
10
+ const t = f();
11
+ if (!t)
12
+ throw new Error("User not authenticated");
13
+ const u = (() => {
14
+ if (e.address && n(e.address))
15
+ return c(e.address);
16
+ if (e.address && !n(e.address))
17
+ return a(e.address);
18
+ if (t.evmSmartAccounts?.length)
19
+ return c(t.evmSmartAccounts[0]);
20
+ if (t.evmAccounts?.length)
21
+ return c(t.evmAccounts[0]);
22
+ if (t.solanaAccounts?.length)
23
+ return a(t.solanaAccounts[0]);
24
+ throw new Error("No account found");
25
+ })();
26
+ try {
27
+ const { wrapFetchWithPayment: h } = await import("x402-fetch");
28
+ r = h(
29
+ s,
30
+ u,
31
+ e.maxValue,
32
+ e.paymentRequirementsSelector,
33
+ e.config
34
+ );
35
+ } catch {
36
+ throw new Error(
37
+ "x402-fetch is not installed. Make sure x402-fetch is installed and try again."
38
+ );
39
+ }
40
+ }
41
+ return r(...o);
42
+ } };
24
43
  }
25
44
  export {
26
- A as fetchWithX402
45
+ g as fetchWithX402
27
46
  };
@@ -1,6 +1,7 @@
1
- function e(t) {
2
- return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
1
+ import { getCurrentUser as r } from "./index.native7.js";
2
+ async function n() {
3
+ return (await r())?.evmAccounts || [];
3
4
  }
4
5
  export {
5
- e as getDefaultExportFromCjs
6
+ n as handleAccounts
6
7
  };
@@ -1,23 +1,21 @@
1
- import { encoder as t, decoder as o } from "./index.native105.js";
2
- import { encodeBase64 as c, decodeBase64 as a } from "./index.native161.js";
3
- function i(r) {
4
- if (Uint8Array.fromBase64)
5
- return Uint8Array.fromBase64(typeof r == "string" ? r : o.decode(r), {
6
- alphabet: "base64url"
7
- });
8
- let e = r;
9
- e instanceof Uint8Array && (e = o.decode(e)), e = e.replace(/-/g, "+").replace(/_/g, "/").replace(/\s/g, "");
1
+ import { signEvmHash as o } from "./index.native7.js";
2
+ import { validateUserOwnsEOA as a, EIP1193ProviderError as i, STANDARD_ERROR_CODES as s } from "./index.native23.js";
3
+ async function h(t) {
4
+ const [n, e] = t;
5
+ await a(e);
10
6
  try {
11
- return a(e);
12
- } catch {
13
- throw new TypeError("The input to be decoded is not correctly encoded.");
7
+ const { signature: r } = await o({
8
+ evmAccount: e,
9
+ hash: n
10
+ });
11
+ return r;
12
+ } catch (r) {
13
+ throw new i(
14
+ s.provider.userRejectedRequest,
15
+ r instanceof Error ? r.message : "Signing failed"
16
+ );
14
17
  }
15
18
  }
16
- function p(r) {
17
- let e = r;
18
- return typeof e == "string" && (e = t.encode(e)), Uint8Array.prototype.toBase64 ? e.toBase64({ alphabet: "base64url", omitPadding: !0 }) : c(e).replace(/=/g, "").replace(/\+/g, "-").replace(/\//g, "_");
19
- }
20
19
  export {
21
- i as decode,
22
- p as encode
20
+ h as handleEthSign
23
21
  };
@@ -1,12 +1,10 @@
1
- import n from "./index.native162.js";
2
- import s from "./index.native163.js";
3
- import a from "./index.native164.js";
4
- const y = async (t, o, e) => {
5
- const r = await a(t, o, "sign");
6
- s(t, r);
7
- const i = await crypto.subtle.sign(n(t, r.algorithm), r, e);
8
- return new Uint8Array(i);
9
- };
1
+ import { EIP1193ProviderError as t, STANDARD_ERROR_CODES as r } from "./index.native23.js";
2
+ async function a(o, e) {
3
+ throw new t(
4
+ r.provider.unsupportedMethod,
5
+ "wallet_getCallsStatus is not supported with EOAs"
6
+ );
7
+ }
10
8
  export {
11
- y as default
9
+ a as handleGetCallsStatus
12
10
  };
@@ -1,22 +1,6 @@
1
- const a = (...o) => {
2
- const t = o.filter(Boolean);
3
- if (t.length === 0 || t.length === 1)
4
- return !0;
5
- let e;
6
- for (const s of t) {
7
- const r = Object.keys(s);
8
- if (!e || e.size === 0) {
9
- e = new Set(r);
10
- continue;
11
- }
12
- for (const n of r) {
13
- if (e.has(n))
14
- return !1;
15
- e.add(n);
16
- }
17
- }
18
- return !0;
19
- };
1
+ async function e() {
2
+ return {};
3
+ }
20
4
  export {
21
- a as default
5
+ e as handleGetCapabilities
22
6
  };
@@ -1,96 +1,26 @@
1
- import { withAlg as n } from "./index.native165.js";
2
- import c from "./index.native166.js";
3
- import { isJWK as p, isSecretJWK as a, isPublicJWK as y, isPrivateJWK as f } from "./index.native167.js";
4
- const s = (r) => r?.[Symbol.toStringTag], o = (r, e, t) => {
5
- if (e.use !== void 0) {
6
- let i;
7
- switch (t) {
8
- case "sign":
9
- case "verify":
10
- i = "sig";
11
- break;
12
- case "encrypt":
13
- case "decrypt":
14
- i = "enc";
15
- break;
16
- }
17
- if (e.use !== i)
18
- throw new TypeError(`Invalid key for this operation, its "use" must be "${i}" when present`);
1
+ import { hexToString as s, hashMessage as i, bytesToString as a } from "viem";
2
+ import { signEvmMessage as g } from "./index.native7.js";
3
+ import { validateUserOwnsAddress as c, EIP1193ProviderError as d, STANDARD_ERROR_CODES as f } from "./index.native23.js";
4
+ async function p(r) {
5
+ const [n, t] = r;
6
+ await c(t);
7
+ const o = u(n);
8
+ try {
9
+ const { signature: e } = await g({
10
+ evmAccount: t,
11
+ message: o
12
+ });
13
+ return e;
14
+ } catch (e) {
15
+ throw new d(
16
+ f.provider.userRejectedRequest,
17
+ e instanceof Error ? e.message : "Signing failed"
18
+ );
19
19
  }
20
- if (e.alg !== void 0 && e.alg !== r)
21
- throw new TypeError(`Invalid key for this operation, its "alg" must be "${r}" when present`);
22
- if (Array.isArray(e.key_ops)) {
23
- let i;
24
- switch (!0) {
25
- case t === "sign":
26
- case r === "dir":
27
- case r.includes("CBC-HS"):
28
- i = t;
29
- break;
30
- case r.startsWith("PBES2"):
31
- i = "deriveBits";
32
- break;
33
- case /^A\d{3}(?:GCM)?(?:KW)?$/.test(r):
34
- !r.includes("GCM") && r.endsWith("KW") ? i = "unwrapKey" : i = t;
35
- break;
36
- case t === "encrypt":
37
- i = "wrapKey";
38
- break;
39
- case t === "decrypt":
40
- i = r.startsWith("RSA") ? "unwrapKey" : "deriveBits";
41
- break;
42
- }
43
- if (i && e.key_ops?.includes?.(i) === !1)
44
- throw new TypeError(`Invalid key for this operation, its "key_ops" must include "${i}" when present`);
45
- }
46
- return !0;
47
- }, h = (r, e, t) => {
48
- if (!(e instanceof Uint8Array)) {
49
- if (p(e)) {
50
- if (a(e) && o(r, e, t))
51
- return;
52
- throw new TypeError('JSON Web Key for symmetric algorithms must have JWK "kty" (Key Type) equal to "oct" and the JWK "k" (Key Value) present');
53
- }
54
- if (!c(e))
55
- throw new TypeError(n(r, e, "CryptoKey", "KeyObject", "JSON Web Key", "Uint8Array"));
56
- if (e.type !== "secret")
57
- throw new TypeError(`${s(e)} instances for symmetric algorithms must be of type "secret"`);
58
- }
59
- }, m = (r, e, t) => {
60
- if (p(e))
61
- switch (t) {
62
- case "decrypt":
63
- case "sign":
64
- if (f(e) && o(r, e, t))
65
- return;
66
- throw new TypeError("JSON Web Key for this operation be a private JWK");
67
- case "encrypt":
68
- case "verify":
69
- if (y(e) && o(r, e, t))
70
- return;
71
- throw new TypeError("JSON Web Key for this operation be a public JWK");
72
- }
73
- if (!c(e))
74
- throw new TypeError(n(r, e, "CryptoKey", "KeyObject", "JSON Web Key"));
75
- if (e.type === "secret")
76
- throw new TypeError(`${s(e)} instances for asymmetric algorithms must not be of type "secret"`);
77
- if (e.type === "public")
78
- switch (t) {
79
- case "sign":
80
- throw new TypeError(`${s(e)} instances for asymmetric algorithm signing must be of type "private"`);
81
- case "decrypt":
82
- throw new TypeError(`${s(e)} instances for asymmetric algorithm decryption must be of type "private"`);
83
- }
84
- if (e.type === "private")
85
- switch (t) {
86
- case "verify":
87
- throw new TypeError(`${s(e)} instances for asymmetric algorithm verifying must be of type "public"`);
88
- case "encrypt":
89
- throw new TypeError(`${s(e)} instances for asymmetric algorithm encryption must be of type "public"`);
90
- }
91
- }, d = (r, e, t) => {
92
- r.startsWith("HS") || r === "dir" || r.startsWith("PBES2") || /^A(?:128|192|256)(?:GCM)?(?:KW)?$/.test(r) || /^A(?:128|192|256)CBC-HS(?:256|384|512)$/.test(r) ? h(r, e, t) : m(r, e, t);
93
- };
20
+ }
21
+ function u(r) {
22
+ return typeof r == "string" ? s(r) : typeof r.raw == "string" ? r.raw : i(a(r.raw));
23
+ }
94
24
  export {
95
- d as default
25
+ p as handlePersonalSign
96
26
  };
@@ -1,23 +1,11 @@
1
- import { JOSENotSupported as f } from "./index.native54.js";
2
- const w = (n, r, a, e, s) => {
3
- if (s.crit !== void 0 && e?.crit === void 0)
4
- throw new n('"crit" (Critical) Header Parameter MUST be integrity protected');
5
- if (!e || e.crit === void 0)
6
- return /* @__PURE__ */ new Set();
7
- if (!Array.isArray(e.crit) || e.crit.length === 0 || e.crit.some((i) => typeof i != "string" || i.length === 0))
8
- throw new n('"crit" (Critical) Header Parameter MUST be an array of non-empty strings when present');
9
- let t;
10
- a !== void 0 ? t = new Map([...Object.entries(a), ...r.entries()]) : t = r;
11
- for (const i of e.crit) {
12
- if (!t.has(i))
13
- throw new f(`Extension Header Parameter "${i}" is not recognized`);
14
- if (s[i] === void 0)
15
- throw new n(`Extension Header Parameter "${i}" is missing`);
16
- if (t.get(i) && e[i] === void 0)
17
- throw new n(`Extension Header Parameter "${i}" MUST be integrity protected`);
18
- }
19
- return new Set(e.crit);
20
- };
1
+ import { fromNumber as c } from "./index.native169.js";
2
+ import { validateUserConnected as o } from "./index.native23.js";
3
+ async function i(t, e) {
4
+ const n = await o();
5
+ return t.emit("connect", {
6
+ chainId: c(e.getState().chainId)
7
+ }), n.evmAccounts || [];
8
+ }
21
9
  export {
22
- w as default
10
+ i as handleRequestAccounts
23
11
  };
@@ -1,120 +1,10 @@
1
- import { isJWK as p } from "./index.native167.js";
2
- import { decode as m } from "./index.native121.js";
3
- import y from "./index.native168.js";
4
- import { isCryptoKey as S, isKeyObject as K } from "./index.native166.js";
5
- let c;
6
- const f = async (e, r, s, i = !1) => {
7
- c ||= /* @__PURE__ */ new WeakMap();
8
- let n = c.get(e);
9
- if (n?.[s])
10
- return n[s];
11
- const t = await y({ ...r, alg: s });
12
- return i && Object.freeze(e), n ? n[s] = t : c.set(e, { [s]: t }), t;
13
- }, E = (e, r) => {
14
- c ||= /* @__PURE__ */ new WeakMap();
15
- let s = c.get(e);
16
- if (s?.[r])
17
- return s[r];
18
- const i = e.type === "public", n = !!i;
19
- let t;
20
- if (e.asymmetricKeyType === "x25519") {
21
- switch (r) {
22
- case "ECDH-ES":
23
- case "ECDH-ES+A128KW":
24
- case "ECDH-ES+A192KW":
25
- case "ECDH-ES+A256KW":
26
- break;
27
- default:
28
- throw new TypeError("given KeyObject instance cannot be used for this algorithm");
29
- }
30
- t = e.toCryptoKey(e.asymmetricKeyType, n, i ? [] : ["deriveBits"]);
31
- }
32
- if (e.asymmetricKeyType === "ed25519") {
33
- if (r !== "EdDSA" && r !== "Ed25519")
34
- throw new TypeError("given KeyObject instance cannot be used for this algorithm");
35
- t = e.toCryptoKey(e.asymmetricKeyType, n, [
36
- i ? "verify" : "sign"
37
- ]);
38
- }
39
- if (e.asymmetricKeyType === "rsa") {
40
- let a;
41
- switch (r) {
42
- case "RSA-OAEP":
43
- a = "SHA-1";
44
- break;
45
- case "RS256":
46
- case "PS256":
47
- case "RSA-OAEP-256":
48
- a = "SHA-256";
49
- break;
50
- case "RS384":
51
- case "PS384":
52
- case "RSA-OAEP-384":
53
- a = "SHA-384";
54
- break;
55
- case "RS512":
56
- case "PS512":
57
- case "RSA-OAEP-512":
58
- a = "SHA-512";
59
- break;
60
- default:
61
- throw new TypeError("given KeyObject instance cannot be used for this algorithm");
62
- }
63
- if (r.startsWith("RSA-OAEP"))
64
- return e.toCryptoKey({
65
- name: "RSA-OAEP",
66
- hash: a
67
- }, n, i ? ["encrypt"] : ["decrypt"]);
68
- t = e.toCryptoKey({
69
- name: r.startsWith("PS") ? "RSA-PSS" : "RSASSA-PKCS1-v1_5",
70
- hash: a
71
- }, n, [i ? "verify" : "sign"]);
72
- }
73
- if (e.asymmetricKeyType === "ec") {
74
- const o = (/* @__PURE__ */ new Map([
75
- ["prime256v1", "P-256"],
76
- ["secp384r1", "P-384"],
77
- ["secp521r1", "P-521"]
78
- ])).get(e.asymmetricKeyDetails?.namedCurve);
79
- if (!o)
80
- throw new TypeError("given KeyObject instance cannot be used for this algorithm");
81
- r === "ES256" && o === "P-256" && (t = e.toCryptoKey({
82
- name: "ECDSA",
83
- namedCurve: o
84
- }, n, [i ? "verify" : "sign"])), r === "ES384" && o === "P-384" && (t = e.toCryptoKey({
85
- name: "ECDSA",
86
- namedCurve: o
87
- }, n, [i ? "verify" : "sign"])), r === "ES512" && o === "P-521" && (t = e.toCryptoKey({
88
- name: "ECDSA",
89
- namedCurve: o
90
- }, n, [i ? "verify" : "sign"])), r.startsWith("ECDH-ES") && (t = e.toCryptoKey({
91
- name: "ECDH",
92
- namedCurve: o
93
- }, n, i ? [] : ["deriveBits"]));
94
- }
95
- if (!t)
96
- throw new TypeError("given KeyObject instance cannot be used for this algorithm");
97
- return s ? s[r] = t : c.set(e, { [r]: t }), t;
98
- }, d = async (e, r) => {
99
- if (e instanceof Uint8Array || S(e))
100
- return e;
101
- if (K(e)) {
102
- if (e.type === "secret")
103
- return e.export();
104
- if ("toCryptoKey" in e && typeof e.toCryptoKey == "function")
105
- try {
106
- return E(e, r);
107
- } catch (i) {
108
- if (i instanceof TypeError)
109
- throw i;
110
- }
111
- let s = e.export({ format: "jwk" });
112
- return f(e, s, r);
113
- }
114
- if (p(e))
115
- return e.k ? m(e.k) : f(e, e, r, !0);
116
- throw new Error("unreachable");
117
- };
1
+ import { EIP1193ProviderError as r, STANDARD_ERROR_CODES as o } from "./index.native23.js";
2
+ async function n(e, t) {
3
+ throw new r(
4
+ o.provider.unsupportedMethod,
5
+ "wallet_sendCalls is not supported with EOAs"
6
+ );
7
+ }
118
8
  export {
119
- d as default
9
+ n as handleSendCalls
120
10
  };
@@ -1,7 +1,74 @@
1
- import { getCurrentUser as r } from "./index.native7.js";
2
- async function n() {
3
- return (await r())?.evmAccounts || [];
1
+ import { createWalletClient as u } from "viem";
2
+ import { sendEvmTransaction as l, signEvmTransaction as w } from "./index.native7.js";
3
+ import { isChainIdSupportedForCDPSends as v, sendTransactionChainIdToNameMapping as T } from "./index.native37.js";
4
+ import { RPCRequestError as t, STANDARD_ERROR_CODES as i, validateUserOwnsEOA as P } from "./index.native23.js";
5
+ async function E(e, d, m) {
6
+ const [a] = e;
7
+ if (!a || typeof a != "object")
8
+ throw new t(
9
+ i.rpc.invalidParams,
10
+ "Transaction parameter must be an object"
11
+ );
12
+ if (!a.to)
13
+ throw new t(
14
+ i.rpc.invalidParams,
15
+ "Transaction must include 'to' field"
16
+ );
17
+ await P(a.from);
18
+ const o = d.getState(), r = a.chainId ? Number(a.chainId) : o.chainId;
19
+ if (v(r))
20
+ try {
21
+ const { transactionHash: n } = await l({
22
+ evmAccount: a.from,
23
+ transaction: { ...c(a), chainId: r },
24
+ network: T[r]
25
+ });
26
+ return n;
27
+ } catch (n) {
28
+ throw new t(
29
+ i.rpc.transactionRejected,
30
+ n instanceof Error ? n.message : "Transaction failed"
31
+ );
32
+ }
33
+ else
34
+ try {
35
+ const n = u({
36
+ // Safe as we check before calling this handler that chainId is configured
37
+ chain: o.chains.find((s) => s.id === r),
38
+ transport: m[r],
39
+ account: a.from
40
+ }), p = o.chains.find((s) => s.id === r), h = await n.prepareTransactionRequest({
41
+ ...c(a),
42
+ chain: p
43
+ }), { signedTransaction: f } = await w({
44
+ evmAccount: a.from,
45
+ transaction: {
46
+ ...h,
47
+ type: "eip1559"
48
+ }
49
+ });
50
+ return await n.sendRawTransaction({
51
+ serializedTransaction: f
52
+ });
53
+ } catch (n) {
54
+ throw new t(
55
+ i.rpc.transactionRejected,
56
+ n instanceof Error ? n.message : "Transaction failed"
57
+ );
58
+ }
59
+ }
60
+ function c(e) {
61
+ return {
62
+ to: e.to,
63
+ data: e.data,
64
+ value: e.value ? BigInt(e.value) : void 0,
65
+ nonce: e.nonce ? Number(e.nonce) : void 0,
66
+ gas: e.gas ? BigInt(e.gas) : void 0,
67
+ maxFeePerGas: e.maxFeePerGas ? BigInt(e.maxFeePerGas) : void 0,
68
+ maxPriorityFeePerGas: e.maxPriorityFeePerGas ? BigInt(e.maxPriorityFeePerGas) : void 0,
69
+ type: "eip1559"
70
+ };
4
71
  }
5
72
  export {
6
- n as handleAccounts
73
+ E as handleSendTransaction
7
74
  };