@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.
- package/README.md +1 -1
- package/dist/esm/index.native101.js +1 -1
- package/dist/esm/index.native102.js +12 -12
- package/dist/esm/index.native103.js +12 -12
- package/dist/esm/index.native104.js +6 -6
- package/dist/esm/index.native111.js +2 -2
- package/dist/esm/index.native12.js +43 -24
- package/dist/esm/index.native120.js +4 -3
- package/dist/esm/index.native121.js +16 -18
- package/dist/esm/index.native122.js +8 -10
- package/dist/esm/index.native123.js +4 -20
- package/dist/esm/index.native124.js +23 -93
- package/dist/esm/index.native125.js +9 -21
- package/dist/esm/index.native126.js +8 -118
- package/dist/esm/index.native127.js +71 -4
- package/dist/esm/index.native128.js +12 -12
- package/dist/esm/index.native129.js +3 -7
- package/dist/esm/index.native130.js +4 -3
- package/dist/esm/index.native131.js +4 -19
- package/dist/esm/index.native132.js +4 -8
- package/dist/esm/index.native133.js +19 -7
- package/dist/esm/index.native134.js +47 -66
- package/dist/esm/index.native135.js +17 -18
- package/dist/esm/index.native136.js +23 -3
- package/dist/esm/index.native137.js +8 -4
- package/dist/esm/index.native138.js +30 -4
- package/dist/esm/index.native139.js +7 -4
- package/dist/esm/index.native140.js +11 -10
- package/dist/esm/index.native141.js +3 -52
- package/dist/esm/index.native142.js +20 -17
- package/dist/esm/index.native143.js +10 -21
- package/dist/esm/index.native144.js +20 -9
- package/dist/esm/index.native145.js +93 -30
- package/dist/esm/index.native146.js +21 -8
- package/dist/esm/index.native147.js +117 -20
- package/dist/esm/index.native148.js +38 -7
- package/dist/esm/index.native150.js +67 -375
- package/dist/esm/index.native151.js +34 -832
- package/dist/esm/index.native152.js +20 -38
- package/dist/esm/index.native153.js +8 -2
- package/dist/esm/index.native154.js +2 -70
- package/dist/esm/index.native155.js +373 -30
- package/dist/esm/index.native156.js +832 -20
- package/dist/esm/index.native171.js +2 -2
- package/dist/esm/index.native172.js +2 -2
- package/dist/esm/index.native173.js +2 -2
- package/dist/esm/index.native28.js +1 -1
- package/dist/esm/index.native47.js +7 -8
- package/dist/esm/index.web100.js +4 -2
- package/dist/esm/index.web101.js +28 -65
- package/dist/esm/index.web102.js +28 -364
- package/dist/esm/index.web103.js +6 -6
- package/dist/esm/index.web11.js +43 -24
- package/dist/esm/index.web110.js +1 -1
- package/dist/esm/index.web114.js +1 -1
- package/dist/esm/index.web118.js +77 -19
- package/dist/esm/index.web119.js +5 -10
- package/dist/esm/index.web120.js +18 -19
- package/dist/esm/index.web121.js +8 -94
- package/dist/esm/index.web122.js +4 -21
- package/dist/esm/index.web123.js +22 -116
- package/dist/esm/index.web124.js +8 -78
- package/dist/esm/index.web125.js +7 -4
- package/dist/esm/index.web126.js +70 -17
- package/dist/esm/index.web127.js +18 -7
- package/dist/esm/index.web128.js +3 -3
- package/dist/esm/index.web129.js +4 -19
- package/dist/esm/index.web130.js +4 -8
- package/dist/esm/index.web131.js +4 -7
- package/dist/esm/index.web132.js +18 -70
- package/dist/esm/index.web133.js +47 -13
- package/dist/esm/index.web134.js +17 -3
- package/dist/esm/index.web135.js +23 -4
- package/dist/esm/index.web136.js +8 -4
- package/dist/esm/index.web137.js +30 -4
- package/dist/esm/index.web138.js +7 -19
- package/dist/esm/index.web139.js +16 -48
- package/dist/esm/index.web140.js +3 -17
- package/dist/esm/index.web141.js +18 -18
- package/dist/esm/index.web142.js +10 -9
- package/dist/esm/index.web143.js +19 -30
- package/dist/esm/index.web144.js +94 -8
- package/dist/esm/index.web145.js +20 -20
- package/dist/esm/index.web146.js +118 -4
- package/dist/esm/index.web168.js +1 -1
- package/dist/esm/index.web46.js +8 -9
- package/dist/esm/index.web47.js +3 -3
- package/dist/esm/index.web96.js +377 -2
- package/dist/esm/index.web97.js +2 -379
- package/dist/esm/index.web98.js +65 -28
- package/dist/esm/index.web99.js +364 -28
- package/dist/native/index.native101.js +1 -1
- package/dist/native/index.native102.js +12 -12
- package/dist/native/index.native103.js +12 -12
- package/dist/native/index.native104.js +6 -6
- package/dist/native/index.native111.js +2 -2
- package/dist/native/index.native12.js +43 -24
- package/dist/native/index.native120.js +4 -3
- package/dist/native/index.native121.js +16 -18
- package/dist/native/index.native122.js +8 -10
- package/dist/native/index.native123.js +4 -20
- package/dist/native/index.native124.js +23 -93
- package/dist/native/index.native125.js +9 -21
- package/dist/native/index.native126.js +8 -118
- package/dist/native/index.native127.js +71 -4
- package/dist/native/index.native128.js +12 -12
- package/dist/native/index.native129.js +3 -7
- package/dist/native/index.native130.js +4 -3
- package/dist/native/index.native131.js +4 -19
- package/dist/native/index.native132.js +4 -8
- package/dist/native/index.native133.js +19 -7
- package/dist/native/index.native134.js +47 -66
- package/dist/native/index.native135.js +17 -18
- package/dist/native/index.native136.js +23 -3
- package/dist/native/index.native137.js +8 -4
- package/dist/native/index.native138.js +30 -4
- package/dist/native/index.native139.js +7 -4
- package/dist/native/index.native140.js +11 -10
- package/dist/native/index.native141.js +3 -52
- package/dist/native/index.native142.js +20 -17
- package/dist/native/index.native143.js +10 -21
- package/dist/native/index.native144.js +20 -9
- package/dist/native/index.native145.js +93 -30
- package/dist/native/index.native146.js +21 -8
- package/dist/native/index.native147.js +117 -20
- package/dist/native/index.native148.js +38 -7
- package/dist/native/index.native150.js +67 -375
- package/dist/native/index.native151.js +34 -832
- package/dist/native/index.native152.js +20 -38
- package/dist/native/index.native153.js +8 -2
- package/dist/native/index.native154.js +2 -70
- package/dist/native/index.native155.js +373 -30
- package/dist/native/index.native156.js +832 -20
- package/dist/native/index.native171.js +2 -2
- package/dist/native/index.native172.js +2 -2
- package/dist/native/index.native173.js +2 -2
- package/dist/native/index.native28.js +1 -1
- package/dist/native/index.native47.js +7 -8
- package/dist/native-types/actions/fetchWithX402.d.ts +1 -1
- package/dist/native-types/eip1193/types.d.ts +4 -1
- package/dist/native-types/version.d.ts +1 -1
- package/dist/types/actions/fetchWithX402.d.ts +1 -1
- package/dist/types/eip1193/types.d.ts +4 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/web/index.web100.js +4 -2
- package/dist/web/index.web101.js +28 -65
- package/dist/web/index.web102.js +28 -364
- package/dist/web/index.web103.js +6 -6
- package/dist/web/index.web11.js +43 -24
- package/dist/web/index.web110.js +1 -1
- package/dist/web/index.web114.js +1 -1
- package/dist/web/index.web118.js +77 -19
- package/dist/web/index.web119.js +5 -10
- package/dist/web/index.web120.js +18 -19
- package/dist/web/index.web121.js +8 -94
- package/dist/web/index.web122.js +4 -21
- package/dist/web/index.web123.js +22 -116
- package/dist/web/index.web124.js +8 -78
- package/dist/web/index.web125.js +7 -4
- package/dist/web/index.web126.js +70 -17
- package/dist/web/index.web127.js +18 -7
- package/dist/web/index.web128.js +3 -3
- package/dist/web/index.web129.js +4 -19
- package/dist/web/index.web130.js +4 -8
- package/dist/web/index.web131.js +4 -7
- package/dist/web/index.web132.js +18 -70
- package/dist/web/index.web133.js +47 -13
- package/dist/web/index.web134.js +17 -3
- package/dist/web/index.web135.js +23 -4
- package/dist/web/index.web136.js +8 -4
- package/dist/web/index.web137.js +30 -4
- package/dist/web/index.web138.js +7 -19
- package/dist/web/index.web139.js +16 -48
- package/dist/web/index.web140.js +3 -17
- package/dist/web/index.web141.js +18 -18
- package/dist/web/index.web142.js +10 -9
- package/dist/web/index.web143.js +19 -30
- package/dist/web/index.web144.js +94 -8
- package/dist/web/index.web145.js +20 -20
- package/dist/web/index.web146.js +118 -4
- package/dist/web/index.web168.js +1 -1
- package/dist/web/index.web46.js +8 -9
- package/dist/web/index.web47.js +3 -3
- package/dist/web/index.web96.js +377 -2
- package/dist/web/index.web97.js +2 -379
- package/dist/web/index.web98.js +65 -28
- package/dist/web/index.web99.js +364 -28
- package/dist/web-types/actions/fetchWithX402.d.ts +1 -1
- package/dist/web-types/eip1193/types.d.ts +4 -1
- package/dist/web-types/version.d.ts +1 -1
- package/package.json +2 -2
|
@@ -1,96 +1,26 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
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
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
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
|
-
|
|
25
|
+
p as handlePersonalSign
|
|
96
26
|
};
|
|
@@ -1,23 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
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
|
-
|
|
10
|
+
i as handleRequestAccounts
|
|
23
11
|
};
|
|
@@ -1,120 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
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
|
-
|
|
9
|
+
n as handleSendCalls
|
|
120
10
|
};
|
|
@@ -1,7 +1,74 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
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
|
-
|
|
73
|
+
E as handleSendTransaction
|
|
7
74
|
};
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { validateUserOwnsEOA as
|
|
3
|
-
async function
|
|
4
|
-
const [
|
|
5
|
-
await
|
|
1
|
+
import { signEvmTypedData as n } from "./index.native7.js";
|
|
2
|
+
import { validateUserOwnsEOA as o, EIP1193ProviderError as i, STANDARD_ERROR_CODES as s } from "./index.native23.js";
|
|
3
|
+
async function p(t) {
|
|
4
|
+
const [r, a] = t;
|
|
5
|
+
await o(r);
|
|
6
6
|
try {
|
|
7
|
-
const { signature:
|
|
8
|
-
evmAccount:
|
|
9
|
-
|
|
7
|
+
const { signature: e } = await n({
|
|
8
|
+
evmAccount: r,
|
|
9
|
+
typedData: JSON.parse(a)
|
|
10
10
|
});
|
|
11
|
-
return
|
|
12
|
-
} catch (
|
|
11
|
+
return e;
|
|
12
|
+
} catch (e) {
|
|
13
13
|
throw new i(
|
|
14
14
|
s.provider.userRejectedRequest,
|
|
15
|
-
|
|
15
|
+
e instanceof Error ? e.message : "Signing failed"
|
|
16
16
|
);
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
export {
|
|
20
|
-
|
|
20
|
+
p as handleSignTypedData
|
|
21
21
|
};
|
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
throw new t(
|
|
4
|
-
r.provider.unsupportedMethod,
|
|
5
|
-
"wallet_getCallsStatus is not supported with EOAs"
|
|
6
|
-
);
|
|
1
|
+
async function a(n) {
|
|
2
|
+
return `0x${n.getState().chainId.toString(16)}`;
|
|
7
3
|
}
|
|
8
4
|
export {
|
|
9
|
-
a as
|
|
5
|
+
a as handleChainId
|
|
10
6
|
};
|
|
@@ -1,22 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
async function f(s) {
|
|
5
|
-
const [o, r] = s;
|
|
6
|
-
await a(r);
|
|
7
|
-
try {
|
|
8
|
-
const { signature: e } = await n({
|
|
9
|
-
evmAccount: r,
|
|
10
|
-
message: t(o)
|
|
11
|
-
});
|
|
12
|
-
return e;
|
|
13
|
-
} catch (e) {
|
|
14
|
-
throw new i(
|
|
15
|
-
m.provider.userRejectedRequest,
|
|
16
|
-
e instanceof Error ? e.message : "Signing failed"
|
|
17
|
-
);
|
|
18
|
-
}
|
|
1
|
+
function a(t, e) {
|
|
2
|
+
const n = Number.parseInt(t[0].chainId, 16);
|
|
3
|
+
e.getState().setChainId(n);
|
|
19
4
|
}
|
|
20
5
|
export {
|
|
21
|
-
|
|
6
|
+
a as handleSwitchEthereumChain
|
|
22
7
|
};
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const n = await o();
|
|
5
|
-
return t.emit("connect", {
|
|
6
|
-
chainId: c(e.getState().chainId)
|
|
7
|
-
}), n.evmAccounts || [];
|
|
1
|
+
import { getCurrentUser as r } from "./index.native7.js";
|
|
2
|
+
async function n() {
|
|
3
|
+
return (await r())?.evmSmartAccounts || [];
|
|
8
4
|
}
|
|
9
5
|
export {
|
|
10
|
-
|
|
6
|
+
n as handleAccounts
|
|
11
7
|
};
|
|
@@ -1,10 +1,22 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { signAndWrapTypedDataForSmartAccount as s } from "./index.native43.js";
|
|
2
|
+
import { validateUserOwnsSmartAccount as c, EIP1193ProviderError as i, STANDARD_ERROR_CODES as d } from "./index.native23.js";
|
|
3
|
+
async function h(e, n) {
|
|
4
|
+
const [a, t] = e, o = await c(t);
|
|
5
|
+
try {
|
|
6
|
+
const { signature: r } = await s({
|
|
7
|
+
smartAccount: t,
|
|
8
|
+
ownerAddress: o.evmAccounts[0],
|
|
9
|
+
hash: a,
|
|
10
|
+
chainId: n.getState().chainId
|
|
11
|
+
});
|
|
12
|
+
return r;
|
|
13
|
+
} catch (r) {
|
|
14
|
+
throw new i(
|
|
15
|
+
d.provider.userRejectedRequest,
|
|
16
|
+
r instanceof Error ? r.message : "Signing failed"
|
|
17
|
+
);
|
|
18
|
+
}
|
|
7
19
|
}
|
|
8
20
|
export {
|
|
9
|
-
|
|
21
|
+
h as handleEthSign
|
|
10
22
|
};
|
|
@@ -1,74 +1,55 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
"Transaction parameter must be an object"
|
|
1
|
+
import { getUserOperation as u } from "./index.native7.js";
|
|
2
|
+
import { isChainIdSupportedForCDPUserOps as p, userOperationChainIdToNameMapping as r, userOperationNameToChainIdMapping as m } from "./index.native37.js";
|
|
3
|
+
import { validateUserHasEvmSmartAccount as d, RPCRequestError as o, STANDARD_ERROR_CODES as n } from "./index.native23.js";
|
|
4
|
+
async function I(t, s) {
|
|
5
|
+
const i = t[0], c = (await d()).evmSmartAccounts?.[0], a = s.getState().chainId;
|
|
6
|
+
if (!p(a) || !r[a])
|
|
7
|
+
throw new o(
|
|
8
|
+
n.rpc.invalidParams,
|
|
9
|
+
"Chain ID is not supported for user operations"
|
|
11
10
|
);
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
i
|
|
15
|
-
|
|
11
|
+
try {
|
|
12
|
+
const e = await u({
|
|
13
|
+
userOperationHash: i,
|
|
14
|
+
evmSmartAccount: c,
|
|
15
|
+
network: r[a]
|
|
16
|
+
});
|
|
17
|
+
return l(e);
|
|
18
|
+
} catch (e) {
|
|
19
|
+
throw console.log("Failed to get user operation status", e), new o(
|
|
20
|
+
n.rpc.internal,
|
|
21
|
+
"Failed to get user operation status"
|
|
16
22
|
);
|
|
17
|
-
|
|
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
|
-
}
|
|
23
|
+
}
|
|
59
24
|
}
|
|
60
|
-
function
|
|
25
|
+
function l(t) {
|
|
61
26
|
return {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
27
|
+
atomic: !0,
|
|
28
|
+
chainId: m[t.network] ?? 0,
|
|
29
|
+
receipts: t.receipts?.map((s) => ({
|
|
30
|
+
transactionHash: s.transactionHash,
|
|
31
|
+
blockHash: s.blockHash,
|
|
32
|
+
blockNumber: BigInt(s.blockNumber ?? 0),
|
|
33
|
+
gasUsed: BigInt(s.gasUsed ?? 0),
|
|
34
|
+
logs: [],
|
|
35
|
+
status: ""
|
|
36
|
+
})),
|
|
37
|
+
id: t.userOpHash,
|
|
38
|
+
status: h(t.status),
|
|
39
|
+
version: "1"
|
|
70
40
|
};
|
|
71
41
|
}
|
|
42
|
+
function h(t) {
|
|
43
|
+
switch (t) {
|
|
44
|
+
case "dropped":
|
|
45
|
+
case "failed":
|
|
46
|
+
return 400;
|
|
47
|
+
case "complete":
|
|
48
|
+
return 200;
|
|
49
|
+
default:
|
|
50
|
+
return 100;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
72
53
|
export {
|
|
73
|
-
|
|
54
|
+
I as handleGetCallsStatus
|
|
74
55
|
};
|
|
@@ -1,21 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}
|
|
1
|
+
import { toHex as a } from "viem";
|
|
2
|
+
import { userOperationChainIdToNameMapping as o } from "./index.native37.js";
|
|
3
|
+
import { validateUserConnected as i } from "./index.native23.js";
|
|
4
|
+
import "zustand";
|
|
5
|
+
import "@coinbase/cdp-api-client";
|
|
6
|
+
async function l() {
|
|
7
|
+
return !(await i()).evmSmartAccounts?.length ? {} : Object.keys(o).reduce(
|
|
8
|
+
(t, e) => {
|
|
9
|
+
const r = a(Number(e));
|
|
10
|
+
return t[r] = {
|
|
11
|
+
atomic: { status: "supported" },
|
|
12
|
+
paymasterService: { supported: !0 }
|
|
13
|
+
}, t;
|
|
14
|
+
},
|
|
15
|
+
{}
|
|
16
|
+
);
|
|
18
17
|
}
|
|
19
18
|
export {
|
|
20
|
-
|
|
19
|
+
l as handleGetCapabilities
|
|
21
20
|
};
|