@coinbase/cdp-core 0.0.33 → 0.0.35

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 (91) hide show
  1. package/README.md +74 -8
  2. package/dist/esm/index.native.js +40 -37
  3. package/dist/esm/index.native100.js +41 -7
  4. package/dist/esm/index.native101.js +18 -11
  5. package/dist/esm/index.native102.js +28 -13
  6. package/dist/esm/index.native103.js +8 -10
  7. package/dist/esm/index.native104.js +11 -17
  8. package/dist/esm/index.native105.js +12 -80
  9. package/dist/esm/index.native106.js +10 -13
  10. package/dist/esm/index.native107.js +17 -36
  11. package/dist/esm/index.native108.js +79 -40
  12. package/dist/esm/index.native14.js +6 -5
  13. package/dist/esm/index.native15.js +12 -10
  14. package/dist/esm/index.native17.js +1 -0
  15. package/dist/esm/index.native28.js +1 -1
  16. package/dist/esm/index.native54.js +1 -1
  17. package/dist/esm/index.native55.js +1 -1
  18. package/dist/esm/index.native57.js +2 -2
  19. package/dist/esm/index.native59.js +1 -1
  20. package/dist/esm/index.native6.js +188 -134
  21. package/dist/esm/index.native77.js +6 -6
  22. package/dist/esm/index.native82.js +2 -21
  23. package/dist/esm/index.native83.js +21 -2
  24. package/dist/esm/index.native84.js +18 -102
  25. package/dist/esm/index.native85.js +80 -20
  26. package/dist/esm/index.native86.js +103 -79
  27. package/dist/esm/index.native89.js +10 -21
  28. package/dist/esm/index.native90.js +21 -10
  29. package/dist/esm/index.native91.js +9 -19
  30. package/dist/esm/index.native92.js +15 -89
  31. package/dist/esm/index.native93.js +92 -19
  32. package/dist/esm/index.native94.js +18 -115
  33. package/dist/esm/index.native95.js +112 -73
  34. package/dist/esm/index.native96.js +79 -10
  35. package/dist/esm/index.native98.js +13 -18
  36. package/dist/esm/index.native99.js +35 -27
  37. package/dist/esm/index.web.js +41 -38
  38. package/dist/esm/index.web12.js +6 -5
  39. package/dist/esm/index.web13.js +12 -10
  40. package/dist/esm/index.web15.js +1 -0
  41. package/dist/esm/index.web5.js +188 -134
  42. package/dist/native/index.native.js +40 -37
  43. package/dist/native/index.native100.js +41 -7
  44. package/dist/native/index.native101.js +18 -11
  45. package/dist/native/index.native102.js +28 -13
  46. package/dist/native/index.native103.js +8 -10
  47. package/dist/native/index.native104.js +11 -17
  48. package/dist/native/index.native105.js +12 -80
  49. package/dist/native/index.native106.js +10 -13
  50. package/dist/native/index.native107.js +17 -36
  51. package/dist/native/index.native108.js +79 -40
  52. package/dist/native/index.native14.js +6 -5
  53. package/dist/native/index.native15.js +12 -10
  54. package/dist/native/index.native17.js +1 -0
  55. package/dist/native/index.native28.js +1 -1
  56. package/dist/native/index.native54.js +1 -1
  57. package/dist/native/index.native55.js +1 -1
  58. package/dist/native/index.native57.js +2 -2
  59. package/dist/native/index.native59.js +1 -1
  60. package/dist/native/index.native6.js +188 -134
  61. package/dist/native/index.native77.js +6 -6
  62. package/dist/native/index.native82.js +2 -21
  63. package/dist/native/index.native83.js +21 -2
  64. package/dist/native/index.native84.js +18 -102
  65. package/dist/native/index.native85.js +80 -20
  66. package/dist/native/index.native86.js +103 -79
  67. package/dist/native/index.native89.js +10 -21
  68. package/dist/native/index.native90.js +21 -10
  69. package/dist/native/index.native91.js +9 -19
  70. package/dist/native/index.native92.js +15 -89
  71. package/dist/native/index.native93.js +92 -19
  72. package/dist/native/index.native94.js +18 -115
  73. package/dist/native/index.native95.js +112 -73
  74. package/dist/native/index.native96.js +79 -10
  75. package/dist/native/index.native98.js +13 -18
  76. package/dist/native/index.native99.js +35 -27
  77. package/dist/native-types/auth/withAuth.d.ts +3 -1
  78. package/dist/native-types/core.d.ts +3 -1
  79. package/dist/native-types/types.d.ts +20 -3
  80. package/dist/types/auth/withAuth.d.ts +3 -1
  81. package/dist/types/core.d.ts +3 -1
  82. package/dist/types/types.d.ts +20 -3
  83. package/dist/web/index.web.js +41 -38
  84. package/dist/web/index.web12.js +6 -5
  85. package/dist/web/index.web13.js +12 -10
  86. package/dist/web/index.web15.js +1 -0
  87. package/dist/web/index.web5.js +188 -134
  88. package/dist/web-types/auth/withAuth.d.ts +3 -1
  89. package/dist/web-types/core.d.ts +3 -1
  90. package/dist/web-types/types.d.ts +20 -3
  91. package/package.json +2 -2
@@ -1,120 +1,23 @@
1
- import { isJWK as p } from "./index.native104.js";
2
- import { decode as m } from "./index.native89.js";
3
- import y from "./index.native105.js";
4
- import { isCryptoKey as S, isKeyObject as K } from "./index.native103.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;
1
+ import { JOSENotSupported as f } from "./index.native30.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');
19
9
  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"]);
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`);
31
18
  }
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");
19
+ return new Set(e.crit);
117
20
  };
118
21
  export {
119
- d as default
22
+ w as default
120
23
  };
@@ -1,81 +1,120 @@
1
- import { Hash as g, createView as l, aexists as b, toBytes as a, abytes as d, aoutput as x, clean as w } from "./index.native86.js";
2
- function y(o, t, s, n) {
3
- if (typeof o.setBigUint64 == "function")
4
- return o.setBigUint64(t, s, n);
5
- const i = BigInt(32), h = BigInt(4294967295), e = Number(s >> i & h), r = Number(s & h), c = n ? 4 : 0, u = n ? 0 : 4;
6
- o.setUint32(t + c, e, n), o.setUint32(t + u, r, n);
7
- }
8
- function U(o, t, s) {
9
- return o & t ^ ~o & s;
10
- }
11
- function _(o, t, s) {
12
- return o & t ^ o & s ^ t & s;
13
- }
14
- class m extends g {
15
- constructor(t, s, n, i) {
16
- super(), this.finished = !1, this.length = 0, this.pos = 0, this.destroyed = !1, this.blockLen = t, this.outputLen = s, this.padOffset = n, this.isLE = i, this.buffer = new Uint8Array(t), this.view = l(this.buffer);
17
- }
18
- update(t) {
19
- b(this), t = a(t), d(t);
20
- const { view: s, buffer: n, blockLen: i } = this, h = t.length;
21
- for (let e = 0; e < h; ) {
22
- const r = Math.min(i - this.pos, h - e);
23
- if (r === i) {
24
- const c = l(t);
25
- for (; i <= h - e; e += i)
26
- this.process(c, e);
27
- continue;
28
- }
29
- n.set(t.subarray(e, e + r), this.pos), this.pos += r, e += r, this.pos === i && (this.process(s, 0), this.pos = 0);
1
+ import { isJWK as p } from "./index.native107.js";
2
+ import { decode as m } from "./index.native90.js";
3
+ import y from "./index.native108.js";
4
+ import { isCryptoKey as S, isKeyObject as K } from "./index.native106.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");
30
29
  }
31
- return this.length += t.length, this.roundClean(), this;
30
+ t = e.toCryptoKey(e.asymmetricKeyType, n, i ? [] : ["deriveBits"]);
32
31
  }
33
- digestInto(t) {
34
- b(this), x(t, this), this.finished = !0;
35
- const { buffer: s, view: n, blockLen: i, isLE: h } = this;
36
- let { pos: e } = this;
37
- s[e++] = 128, w(this.buffer.subarray(e)), this.padOffset > i - e && (this.process(n, 0), e = 0);
38
- for (let f = e; f < i; f++)
39
- s[f] = 0;
40
- y(n, i - 8, BigInt(this.length * 8), h), this.process(n, 0);
41
- const r = l(t), c = this.outputLen;
42
- if (c % 4)
43
- throw new Error("_sha2: outputLen should be aligned to 32bit");
44
- const u = c / 4, p = this.get();
45
- if (u > p.length)
46
- throw new Error("_sha2: outputLen bigger than state");
47
- for (let f = 0; f < u; f++)
48
- r.setUint32(4 * f, p[f], h);
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
+ ]);
49
38
  }
50
- digest() {
51
- const { buffer: t, outputLen: s } = this;
52
- this.digestInto(t);
53
- const n = t.slice(0, s);
54
- return this.destroy(), n;
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"]);
55
72
  }
56
- _cloneInto(t) {
57
- t || (t = new this.constructor()), t.set(...this.get());
58
- const { blockLen: s, buffer: n, length: i, finished: h, destroyed: e, pos: r } = this;
59
- return t.destroyed = e, t.finished = h, t.length = i, t.pos = r, i % s && t.buffer.set(n), t;
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"]));
60
94
  }
61
- clone() {
62
- return this._cloneInto();
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);
63
113
  }
64
- }
65
- const B = /* @__PURE__ */ Uint32Array.from([
66
- 1779033703,
67
- 3144134277,
68
- 1013904242,
69
- 2773480762,
70
- 1359893119,
71
- 2600822924,
72
- 528734635,
73
- 1541459225
74
- ]);
114
+ if (p(e))
115
+ return e.k ? m(e.k) : f(e, e, r, !0);
116
+ throw new Error("unreachable");
117
+ };
75
118
  export {
76
- U as Chi,
77
- m as HashMD,
78
- _ as Maj,
79
- B as SHA256_IV,
80
- y as setBigUint64
119
+ d as default
81
120
  };
@@ -1,12 +1,81 @@
1
- import { contracts as o } from "./index.native106.js";
2
- import { formatters as r } from "./index.native107.js";
3
- import { serializers as t } from "./index.native108.js";
4
- const e = {
5
- blockTime: 2e3,
6
- contracts: o,
7
- formatters: r,
8
- serializers: t
9
- };
1
+ import { Hash as g, createView as l, aexists as b, toBytes as a, abytes as d, aoutput as x, clean as w } from "./index.native85.js";
2
+ function y(o, t, s, n) {
3
+ if (typeof o.setBigUint64 == "function")
4
+ return o.setBigUint64(t, s, n);
5
+ const i = BigInt(32), h = BigInt(4294967295), e = Number(s >> i & h), r = Number(s & h), c = n ? 4 : 0, u = n ? 0 : 4;
6
+ o.setUint32(t + c, e, n), o.setUint32(t + u, r, n);
7
+ }
8
+ function U(o, t, s) {
9
+ return o & t ^ ~o & s;
10
+ }
11
+ function _(o, t, s) {
12
+ return o & t ^ o & s ^ t & s;
13
+ }
14
+ class m extends g {
15
+ constructor(t, s, n, i) {
16
+ super(), this.finished = !1, this.length = 0, this.pos = 0, this.destroyed = !1, this.blockLen = t, this.outputLen = s, this.padOffset = n, this.isLE = i, this.buffer = new Uint8Array(t), this.view = l(this.buffer);
17
+ }
18
+ update(t) {
19
+ b(this), t = a(t), d(t);
20
+ const { view: s, buffer: n, blockLen: i } = this, h = t.length;
21
+ for (let e = 0; e < h; ) {
22
+ const r = Math.min(i - this.pos, h - e);
23
+ if (r === i) {
24
+ const c = l(t);
25
+ for (; i <= h - e; e += i)
26
+ this.process(c, e);
27
+ continue;
28
+ }
29
+ n.set(t.subarray(e, e + r), this.pos), this.pos += r, e += r, this.pos === i && (this.process(s, 0), this.pos = 0);
30
+ }
31
+ return this.length += t.length, this.roundClean(), this;
32
+ }
33
+ digestInto(t) {
34
+ b(this), x(t, this), this.finished = !0;
35
+ const { buffer: s, view: n, blockLen: i, isLE: h } = this;
36
+ let { pos: e } = this;
37
+ s[e++] = 128, w(this.buffer.subarray(e)), this.padOffset > i - e && (this.process(n, 0), e = 0);
38
+ for (let f = e; f < i; f++)
39
+ s[f] = 0;
40
+ y(n, i - 8, BigInt(this.length * 8), h), this.process(n, 0);
41
+ const r = l(t), c = this.outputLen;
42
+ if (c % 4)
43
+ throw new Error("_sha2: outputLen should be aligned to 32bit");
44
+ const u = c / 4, p = this.get();
45
+ if (u > p.length)
46
+ throw new Error("_sha2: outputLen bigger than state");
47
+ for (let f = 0; f < u; f++)
48
+ r.setUint32(4 * f, p[f], h);
49
+ }
50
+ digest() {
51
+ const { buffer: t, outputLen: s } = this;
52
+ this.digestInto(t);
53
+ const n = t.slice(0, s);
54
+ return this.destroy(), n;
55
+ }
56
+ _cloneInto(t) {
57
+ t || (t = new this.constructor()), t.set(...this.get());
58
+ const { blockLen: s, buffer: n, length: i, finished: h, destroyed: e, pos: r } = this;
59
+ return t.destroyed = e, t.finished = h, t.length = i, t.pos = r, i % s && t.buffer.set(n), t;
60
+ }
61
+ clone() {
62
+ return this._cloneInto();
63
+ }
64
+ }
65
+ const B = /* @__PURE__ */ Uint32Array.from([
66
+ 1779033703,
67
+ 3144134277,
68
+ 1013904242,
69
+ 2773480762,
70
+ 1359893119,
71
+ 2600822924,
72
+ 528734635,
73
+ 1541459225
74
+ ]);
10
75
  export {
11
- e as chainConfig
76
+ U as Chi,
77
+ m as HashMD,
78
+ _ as Maj,
79
+ B as SHA256_IV,
80
+ y as setBigUint64
12
81
  };
@@ -1,20 +1,15 @@
1
- function o(t) {
2
- if (Uint8Array.prototype.toBase64)
3
- return t.toBase64();
4
- const e = 32768, n = [];
5
- for (let r = 0; r < t.length; r += e)
6
- n.push(String.fromCharCode.apply(null, t.subarray(r, r + e)));
7
- return btoa(n.join(""));
8
- }
9
- function a(t) {
10
- if (Uint8Array.fromBase64)
11
- return Uint8Array.fromBase64(t);
12
- const e = atob(t), n = new Uint8Array(e.length);
13
- for (let r = 0; r < e.length; r++)
14
- n[r] = e.charCodeAt(r);
15
- return n;
16
- }
1
+ const s = {
2
+ gasPriceOracle: { address: "0x420000000000000000000000000000000000000F" },
3
+ l1Block: { address: "0x4200000000000000000000000000000000000015" },
4
+ l2CrossDomainMessenger: {
5
+ address: "0x4200000000000000000000000000000000000007"
6
+ },
7
+ l2Erc721Bridge: { address: "0x4200000000000000000000000000000000000014" },
8
+ l2StandardBridge: { address: "0x4200000000000000000000000000000000000010" },
9
+ l2ToL1MessagePasser: {
10
+ address: "0x4200000000000000000000000000000000000016"
11
+ }
12
+ };
17
13
  export {
18
- a as decodeBase64,
19
- o as encodeBase64
14
+ s as contracts
20
15
  };
@@ -1,30 +1,38 @@
1
- import { JOSENotSupported as r } from "./index.native30.js";
2
- const S = (e, s) => {
3
- const a = `SHA-${e.slice(-3)}`;
4
- switch (e) {
5
- case "HS256":
6
- case "HS384":
7
- case "HS512":
8
- return { hash: a, name: "HMAC" };
9
- case "PS256":
10
- case "PS384":
11
- case "PS512":
12
- return { hash: a, name: "RSA-PSS", saltLength: parseInt(e.slice(-3), 10) >> 3 };
13
- case "RS256":
14
- case "RS384":
15
- case "RS512":
16
- return { hash: a, name: "RSASSA-PKCS1-v1_5" };
17
- case "ES256":
18
- case "ES384":
19
- case "ES512":
20
- return { hash: a, name: "ECDSA", namedCurve: s.namedCurve };
21
- case "Ed25519":
22
- case "EdDSA":
23
- return { name: "Ed25519" };
24
- default:
25
- throw new r(`alg ${e} is not supported either by JOSE or your javascript runtime`);
26
- }
1
+ import { hexToBigInt as n } from "./index.native50.js";
2
+ import { defineBlock as r } from "./index.native47.js";
3
+ import { defineTransaction as s, formatTransaction as m } from "./index.native49.js";
4
+ import { defineTransactionReceipt as l } from "./index.native52.js";
5
+ const p = {
6
+ block: /* @__PURE__ */ r({
7
+ format(e) {
8
+ return {
9
+ transactions: e.transactions?.map((t) => {
10
+ if (typeof t == "string")
11
+ return t;
12
+ const i = m(t);
13
+ return i.typeHex === "0x7e" && (i.isSystemTx = t.isSystemTx, i.mint = t.mint ? n(t.mint) : void 0, i.sourceHash = t.sourceHash, i.type = "deposit"), i;
14
+ }),
15
+ stateRoot: e.stateRoot
16
+ };
17
+ }
18
+ }),
19
+ transaction: /* @__PURE__ */ s({
20
+ format(e) {
21
+ const o = {};
22
+ return e.type === "0x7e" && (o.isSystemTx = e.isSystemTx, o.mint = e.mint ? n(e.mint) : void 0, o.sourceHash = e.sourceHash, o.type = "deposit"), o;
23
+ }
24
+ }),
25
+ transactionReceipt: /* @__PURE__ */ l({
26
+ format(e) {
27
+ return {
28
+ l1GasPrice: e.l1GasPrice ? n(e.l1GasPrice) : null,
29
+ l1GasUsed: e.l1GasUsed ? n(e.l1GasUsed) : null,
30
+ l1Fee: e.l1Fee ? n(e.l1Fee) : null,
31
+ l1FeeScalar: e.l1FeeScalar ? Number(e.l1FeeScalar) : null
32
+ };
33
+ }
34
+ })
27
35
  };
28
36
  export {
29
- S as default
37
+ p as formatters
30
38
  };
@@ -1,4 +1,4 @@
1
- import { EvmAddress, User } from '../types.js';
1
+ import { EvmAddress, SolanaAddress, User } from '../types.js';
2
2
  import { IAuthManager } from './types.js';
3
3
  export declare const isSignedIn: (authManager: IAuthManager) => Promise<boolean>;
4
4
  type AuthenticatedFunction<T, R> = (params: T & {
@@ -9,5 +9,7 @@ export declare function withAuth<T, R>(options: T & ({
9
9
  evmAccount: EvmAddress;
10
10
  } | {
11
11
  evmSmartAccount: EvmAddress;
12
+ } | {
13
+ solanaAccount: SolanaAddress;
12
14
  }), authManager: IAuthManager, fn: AuthenticatedFunction<T, R>): Promise<R>;
13
15
  export {};
@@ -1,4 +1,4 @@
1
- import { Config, User, SignInWithEmailOptions, SignInWithEmailResult, SignInWithSmsOptions, SignInWithSmsResult, VerifySmsOTPOptions, VerifySmsOTPResult, SignEvmHashOptions, SignEvmHashResult, VerifyEmailOTPOptions, VerifyEmailOTPResult, OnAuthStateChangeFn, SendEvmTransactionResult, SignEvmTransactionOptions, SignEvmTransactionResult, SignEvmTypedDataOptions, SignEvmTypedDataResult, SignEvmMessageOptions, ExportEvmAccountResult, SendEvmTransactionOptions, ExportEvmAccountOptions, SendUserOperationOptions, SendUserOperationResult, GetUserOperationOptions, GetUserOperationResult } from './types.js';
1
+ import { Config, User, SignInWithEmailOptions, SignInWithEmailResult, SignInWithSmsOptions, SignInWithSmsResult, VerifySmsOTPOptions, VerifySmsOTPResult, SignEvmHashOptions, SignEvmHashResult, VerifyEmailOTPOptions, VerifyEmailOTPResult, OnAuthStateChangeFn, SendEvmTransactionResult, SignEvmTransactionOptions, SignEvmTransactionResult, SignSolanaTransactionOptions, SignSolanaTransactionResult, SignEvmTypedDataOptions, SignEvmTypedDataResult, SignEvmMessageOptions, ExportEvmAccountResult, SendEvmTransactionOptions, SendSolanaTransactionOptions, SendSolanaTransactionResult, ExportEvmAccountOptions, SendUserOperationOptions, SendUserOperationResult, GetUserOperationOptions, GetUserOperationResult } from './types.js';
2
2
  export declare const initialize: (cfg: Config) => Promise<void>;
3
3
  export declare const signInWithEmail: (options: SignInWithEmailOptions) => Promise<SignInWithEmailResult>;
4
4
  export declare const signInWithSms: (options: SignInWithSmsOptions) => Promise<SignInWithSmsResult>;
@@ -11,7 +11,9 @@ export declare const getAccessToken: () => Promise<string | null>;
11
11
  export declare const onAuthStateChange: (callback: OnAuthStateChangeFn) => void;
12
12
  export declare const signEvmHash: (options: SignEvmHashOptions) => Promise<SignEvmHashResult>;
13
13
  export declare const signEvmTransaction: (options: SignEvmTransactionOptions) => Promise<SignEvmTransactionResult>;
14
+ export declare const signSolanaTransaction: (options: SignSolanaTransactionOptions) => Promise<SignSolanaTransactionResult>;
14
15
  export declare const sendEvmTransaction: (options: SendEvmTransactionOptions) => Promise<SendEvmTransactionResult>;
16
+ export declare const sendSolanaTransaction: (options: SendSolanaTransactionOptions) => Promise<SendSolanaTransactionResult>;
15
17
  export declare const signEvmMessage: (options: SignEvmMessageOptions) => Promise<SignEvmHashResult>;
16
18
  export declare const signEvmTypedData: (options: SignEvmTypedDataOptions) => Promise<SignEvmTypedDataResult>;
17
19
  export declare const sendUserOperation: (options: SendUserOperationOptions) => Promise<SendUserOperationResult>;
@@ -1,15 +1,16 @@
1
- import { SendEvmTransactionWithEndUserAccountBodyNetwork, APIError, APIErrorType, ErrorType, HttpErrorType, EvmUserOperation } from '@coinbase/cdp-api-client';
1
+ import { SendEvmTransactionWithEndUserAccountBodyNetwork, SendSolanaTransactionWithEndUserAccountBodyNetwork, APIError, APIErrorType, ErrorType, HttpErrorType, EvmUserOperation } from '@coinbase/cdp-api-client';
2
2
  import { TransactionSerializableEIP1559 } from 'viem';
3
- export { APIError, type APIErrorType, ErrorType, HttpErrorType, SendEvmTransactionWithEndUserAccountBodyNetwork, };
3
+ export { APIError, type APIErrorType, ErrorType, HttpErrorType, SendEvmTransactionWithEndUserAccountBodyNetwork, SendSolanaTransactionWithEndUserAccountBodyNetwork, };
4
4
  export type Config = {
5
5
  projectId: string;
6
6
  useMock?: boolean;
7
7
  debugging?: boolean;
8
8
  basePath?: string;
9
- createAccountOnLogin?: "evm-eoa" | "evm-smart";
9
+ createAccountOnLogin?: "evm-eoa" | "evm-smart" | "solana";
10
10
  };
11
11
  export type Hex = `0x${string}`;
12
12
  export type EvmAddress = `0x${string}`;
13
+ export type SolanaAddress = string;
13
14
  export type AuthenticationMethods = {
14
15
  email?: EmailAuthentication;
15
16
  sms?: SmsAuthentication;
@@ -19,6 +20,7 @@ export type User = {
19
20
  authenticationMethods: AuthenticationMethods;
20
21
  evmAccounts?: EvmAddress[];
21
22
  evmSmartAccounts?: EvmAddress[];
23
+ solanaAccounts?: SolanaAddress[];
22
24
  };
23
25
  export type EmailAuthentication = {
24
26
  type: "email";
@@ -76,6 +78,13 @@ export type SignEvmTransactionOptions = {
76
78
  export type SignEvmTransactionResult = {
77
79
  signedTransaction: Hex;
78
80
  };
81
+ export type SignSolanaTransactionOptions = {
82
+ solanaAccount: SolanaAddress;
83
+ transaction: string;
84
+ };
85
+ export type SignSolanaTransactionResult = {
86
+ signedTransaction: string;
87
+ };
79
88
  export type SendEvmTransactionOptions = {
80
89
  evmAccount: EvmAddress;
81
90
  network: SendEvmTransactionWithEndUserAccountBodyNetwork;
@@ -84,6 +93,14 @@ export type SendEvmTransactionOptions = {
84
93
  export type SendEvmTransactionResult = {
85
94
  transactionHash: Hex;
86
95
  };
96
+ export type SendSolanaTransactionOptions = {
97
+ solanaAccount: SolanaAddress;
98
+ network: SendSolanaTransactionWithEndUserAccountBodyNetwork;
99
+ transaction: string;
100
+ };
101
+ export type SendSolanaTransactionResult = {
102
+ transactionSignature: string;
103
+ };
87
104
  export type SignEvmMessageOptions = {
88
105
  evmAccount: EvmAddress;
89
106
  message: string;
@@ -1,4 +1,4 @@
1
- import { EvmAddress, User } from '../types.js';
1
+ import { EvmAddress, SolanaAddress, User } from '../types.js';
2
2
  import { IAuthManager } from './types.js';
3
3
  export declare const isSignedIn: (authManager: IAuthManager) => Promise<boolean>;
4
4
  type AuthenticatedFunction<T, R> = (params: T & {
@@ -9,5 +9,7 @@ export declare function withAuth<T, R>(options: T & ({
9
9
  evmAccount: EvmAddress;
10
10
  } | {
11
11
  evmSmartAccount: EvmAddress;
12
+ } | {
13
+ solanaAccount: SolanaAddress;
12
14
  }), authManager: IAuthManager, fn: AuthenticatedFunction<T, R>): Promise<R>;
13
15
  export {};
@@ -1,4 +1,4 @@
1
- import { Config, User, SignInWithEmailOptions, SignInWithEmailResult, SignInWithSmsOptions, SignInWithSmsResult, VerifySmsOTPOptions, VerifySmsOTPResult, SignEvmHashOptions, SignEvmHashResult, VerifyEmailOTPOptions, VerifyEmailOTPResult, OnAuthStateChangeFn, SendEvmTransactionResult, SignEvmTransactionOptions, SignEvmTransactionResult, SignEvmTypedDataOptions, SignEvmTypedDataResult, SignEvmMessageOptions, ExportEvmAccountResult, SendEvmTransactionOptions, ExportEvmAccountOptions, SendUserOperationOptions, SendUserOperationResult, GetUserOperationOptions, GetUserOperationResult } from './types.js';
1
+ import { Config, User, SignInWithEmailOptions, SignInWithEmailResult, SignInWithSmsOptions, SignInWithSmsResult, VerifySmsOTPOptions, VerifySmsOTPResult, SignEvmHashOptions, SignEvmHashResult, VerifyEmailOTPOptions, VerifyEmailOTPResult, OnAuthStateChangeFn, SendEvmTransactionResult, SignEvmTransactionOptions, SignEvmTransactionResult, SignSolanaTransactionOptions, SignSolanaTransactionResult, SignEvmTypedDataOptions, SignEvmTypedDataResult, SignEvmMessageOptions, ExportEvmAccountResult, SendEvmTransactionOptions, SendSolanaTransactionOptions, SendSolanaTransactionResult, ExportEvmAccountOptions, SendUserOperationOptions, SendUserOperationResult, GetUserOperationOptions, GetUserOperationResult } from './types.js';
2
2
  export declare const initialize: (cfg: Config) => Promise<void>;
3
3
  export declare const signInWithEmail: (options: SignInWithEmailOptions) => Promise<SignInWithEmailResult>;
4
4
  export declare const signInWithSms: (options: SignInWithSmsOptions) => Promise<SignInWithSmsResult>;
@@ -11,7 +11,9 @@ export declare const getAccessToken: () => Promise<string | null>;
11
11
  export declare const onAuthStateChange: (callback: OnAuthStateChangeFn) => void;
12
12
  export declare const signEvmHash: (options: SignEvmHashOptions) => Promise<SignEvmHashResult>;
13
13
  export declare const signEvmTransaction: (options: SignEvmTransactionOptions) => Promise<SignEvmTransactionResult>;
14
+ export declare const signSolanaTransaction: (options: SignSolanaTransactionOptions) => Promise<SignSolanaTransactionResult>;
14
15
  export declare const sendEvmTransaction: (options: SendEvmTransactionOptions) => Promise<SendEvmTransactionResult>;
16
+ export declare const sendSolanaTransaction: (options: SendSolanaTransactionOptions) => Promise<SendSolanaTransactionResult>;
15
17
  export declare const signEvmMessage: (options: SignEvmMessageOptions) => Promise<SignEvmHashResult>;
16
18
  export declare const signEvmTypedData: (options: SignEvmTypedDataOptions) => Promise<SignEvmTypedDataResult>;
17
19
  export declare const sendUserOperation: (options: SendUserOperationOptions) => Promise<SendUserOperationResult>;