@coinbase/cdp-core 0.0.53 → 0.0.55

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 (267) hide show
  1. package/dist/esm/index.native10.js +4 -4
  2. package/dist/esm/index.native100.js +13 -19
  3. package/dist/esm/index.native101.js +4 -8
  4. package/dist/esm/index.native102.js +2 -8
  5. package/dist/esm/index.native103.js +4 -71
  6. package/dist/esm/index.native104.js +12 -12
  7. package/dist/esm/index.native105.js +7 -3
  8. package/dist/esm/index.native106.js +3 -4
  9. package/dist/esm/index.native107.js +19 -4
  10. package/dist/esm/index.native108.js +8 -4
  11. package/dist/esm/index.native109.js +7 -19
  12. package/dist/esm/index.native11.js +3 -3
  13. package/dist/esm/index.native110.js +66 -47
  14. package/dist/esm/index.native111.js +18 -17
  15. package/dist/esm/index.native112.js +3 -20
  16. package/dist/esm/index.native113.js +4 -8
  17. package/dist/esm/index.native114.js +4 -30
  18. package/dist/esm/index.native115.js +4 -7
  19. package/dist/esm/index.native116.js +10 -11
  20. package/dist/esm/index.native117.js +50 -52
  21. package/dist/esm/index.native118.js +17 -10
  22. package/dist/esm/index.native119.js +21 -2
  23. package/dist/esm/index.native12.js +3 -3
  24. package/dist/esm/index.native120.js +9 -45
  25. package/dist/esm/index.native121.js +30 -13
  26. package/dist/esm/index.native122.js +7 -4
  27. package/dist/esm/index.native123.js +21 -2
  28. package/dist/esm/index.native125.js +2 -2
  29. package/dist/esm/index.native128.js +1 -1
  30. package/dist/esm/index.native13.js +3 -3
  31. package/dist/esm/index.native131.js +19 -77
  32. package/dist/esm/index.native132.js +10 -47
  33. package/dist/esm/index.native133.js +20 -4
  34. package/dist/esm/index.native134.js +93 -20
  35. package/dist/esm/index.native135.js +20 -9
  36. package/dist/esm/index.native136.js +114 -16
  37. package/dist/esm/index.native137.js +75 -90
  38. package/dist/esm/index.native138.js +4 -21
  39. package/dist/esm/index.native139.js +2 -118
  40. package/dist/esm/index.native14.js +3 -3
  41. package/dist/esm/index.native140.js +109 -2
  42. package/dist/esm/index.native141.js +2 -109
  43. package/dist/esm/index.native142.js +47 -2
  44. package/dist/esm/index.native143.js +7 -38
  45. package/dist/esm/index.native145.js +375 -67
  46. package/dist/esm/index.native146.js +832 -34
  47. package/dist/esm/index.native147.js +38 -20
  48. package/dist/esm/index.native148.js +2 -8
  49. package/dist/esm/index.native149.js +70 -2
  50. package/dist/esm/index.native15.js +3 -3
  51. package/dist/esm/index.native150.js +30 -373
  52. package/dist/esm/index.native151.js +20 -832
  53. package/dist/esm/index.native153.js +17 -14
  54. package/dist/esm/index.native154.js +28 -18
  55. package/dist/esm/index.native155.js +6 -26
  56. package/dist/esm/index.native156.js +9 -6
  57. package/dist/esm/index.native157.js +13 -11
  58. package/dist/esm/index.native158.js +8 -11
  59. package/dist/esm/index.native159.js +14 -7
  60. package/dist/esm/index.native16.js +3 -3
  61. package/dist/esm/index.native160.js +80 -16
  62. package/dist/esm/index.native161.js +14 -80
  63. package/dist/esm/index.native162.js +2 -2
  64. package/dist/esm/index.native163.js +2 -2
  65. package/dist/esm/index.native164.js +2 -2
  66. package/dist/esm/index.native19.js +1 -1
  67. package/dist/esm/index.native22.js +28 -3
  68. package/dist/esm/index.native23.js +3 -51
  69. package/dist/esm/index.native24.js +53 -2
  70. package/dist/esm/index.native25.js +2 -86
  71. package/dist/esm/index.native26.js +87 -15
  72. package/dist/esm/index.native27.js +15 -17
  73. package/dist/esm/index.native28.js +15 -116
  74. package/dist/esm/index.native29.js +92 -34
  75. package/dist/esm/index.native3.js +48 -6
  76. package/dist/esm/index.native30.js +58 -12
  77. package/dist/esm/index.native31.js +15 -42
  78. package/dist/esm/index.native32.js +42 -28
  79. package/dist/esm/index.native35.js +3 -3
  80. package/dist/esm/index.native41.js +3 -3
  81. package/dist/esm/index.native44.js +1 -1
  82. package/dist/esm/index.native45.js +1 -1
  83. package/dist/esm/index.native46.js +13 -373
  84. package/dist/esm/index.native47.js +22 -28
  85. package/dist/esm/index.native48.js +50 -28
  86. package/dist/esm/index.native49.js +373 -13
  87. package/dist/esm/index.native50.js +28 -22
  88. package/dist/esm/index.native51.js +28 -50
  89. package/dist/esm/index.native52.js +4 -2
  90. package/dist/esm/index.native53.js +2 -66
  91. package/dist/esm/index.native54.js +2 -367
  92. package/dist/esm/index.native55.js +66 -2
  93. package/dist/esm/index.native56.js +365 -2
  94. package/dist/esm/index.native7.js +11 -11
  95. package/dist/esm/index.native72.js +1 -1
  96. package/dist/esm/index.native8.js +4 -4
  97. package/dist/esm/index.native9.js +4 -4
  98. package/dist/esm/index.native96.js +54 -4
  99. package/dist/esm/index.native97.js +10 -18
  100. package/dist/esm/index.native98.js +2 -8
  101. package/dist/esm/index.native99.js +45 -4
  102. package/dist/esm/index.web100.js +1 -1
  103. package/dist/esm/index.web127.js +1 -1
  104. package/dist/esm/index.web130.js +77 -19
  105. package/dist/esm/index.web131.js +21 -10
  106. package/dist/esm/index.web132.js +9 -19
  107. package/dist/esm/index.web133.js +15 -89
  108. package/dist/esm/index.web134.js +92 -19
  109. package/dist/esm/index.web135.js +18 -115
  110. package/dist/esm/index.web136.js +118 -2
  111. package/dist/esm/index.web137.js +2 -109
  112. package/dist/esm/index.web138.js +109 -2
  113. package/dist/esm/index.web139.js +2 -79
  114. package/dist/esm/index.web141.js +1 -1
  115. package/dist/esm/index.web153.js +1 -1
  116. package/dist/esm/index.web159.js +1 -1
  117. package/dist/esm/index.web24.js +33 -29
  118. package/dist/esm/index.web34.js +3 -3
  119. package/dist/esm/index.web40.js +1 -1
  120. package/dist/esm/index.web45.js +13 -373
  121. package/dist/esm/index.web46.js +25 -2
  122. package/dist/esm/index.web47.js +48 -63
  123. package/dist/esm/index.web48.js +189 -177
  124. package/dist/esm/index.web49.js +2 -19
  125. package/dist/esm/index.web50.js +63 -20
  126. package/dist/esm/index.web51.js +351 -37
  127. package/dist/esm/index.web95.js +7 -7
  128. package/dist/native/index.native10.js +4 -4
  129. package/dist/native/index.native100.js +13 -19
  130. package/dist/native/index.native101.js +4 -8
  131. package/dist/native/index.native102.js +2 -8
  132. package/dist/native/index.native103.js +4 -71
  133. package/dist/native/index.native104.js +12 -12
  134. package/dist/native/index.native105.js +7 -3
  135. package/dist/native/index.native106.js +3 -4
  136. package/dist/native/index.native107.js +19 -4
  137. package/dist/native/index.native108.js +8 -4
  138. package/dist/native/index.native109.js +7 -19
  139. package/dist/native/index.native11.js +3 -3
  140. package/dist/native/index.native110.js +66 -47
  141. package/dist/native/index.native111.js +18 -17
  142. package/dist/native/index.native112.js +3 -20
  143. package/dist/native/index.native113.js +4 -8
  144. package/dist/native/index.native114.js +4 -30
  145. package/dist/native/index.native115.js +4 -7
  146. package/dist/native/index.native116.js +10 -11
  147. package/dist/native/index.native117.js +50 -52
  148. package/dist/native/index.native118.js +17 -10
  149. package/dist/native/index.native119.js +21 -2
  150. package/dist/native/index.native12.js +3 -3
  151. package/dist/native/index.native120.js +9 -45
  152. package/dist/native/index.native121.js +30 -13
  153. package/dist/native/index.native122.js +7 -4
  154. package/dist/native/index.native123.js +21 -2
  155. package/dist/native/index.native125.js +2 -2
  156. package/dist/native/index.native128.js +1 -1
  157. package/dist/native/index.native13.js +3 -3
  158. package/dist/native/index.native131.js +19 -77
  159. package/dist/native/index.native132.js +10 -47
  160. package/dist/native/index.native133.js +20 -4
  161. package/dist/native/index.native134.js +93 -20
  162. package/dist/native/index.native135.js +20 -9
  163. package/dist/native/index.native136.js +114 -16
  164. package/dist/native/index.native137.js +75 -90
  165. package/dist/native/index.native138.js +4 -21
  166. package/dist/native/index.native139.js +2 -118
  167. package/dist/native/index.native14.js +3 -3
  168. package/dist/native/index.native140.js +109 -2
  169. package/dist/native/index.native141.js +2 -109
  170. package/dist/native/index.native142.js +47 -2
  171. package/dist/native/index.native143.js +7 -38
  172. package/dist/native/index.native145.js +375 -67
  173. package/dist/native/index.native146.js +832 -34
  174. package/dist/native/index.native147.js +38 -20
  175. package/dist/native/index.native148.js +2 -8
  176. package/dist/native/index.native149.js +70 -2
  177. package/dist/native/index.native15.js +3 -3
  178. package/dist/native/index.native150.js +30 -373
  179. package/dist/native/index.native151.js +20 -832
  180. package/dist/native/index.native153.js +17 -14
  181. package/dist/native/index.native154.js +28 -18
  182. package/dist/native/index.native155.js +6 -26
  183. package/dist/native/index.native156.js +9 -6
  184. package/dist/native/index.native157.js +13 -11
  185. package/dist/native/index.native158.js +8 -11
  186. package/dist/native/index.native159.js +14 -7
  187. package/dist/native/index.native16.js +3 -3
  188. package/dist/native/index.native160.js +80 -16
  189. package/dist/native/index.native161.js +14 -80
  190. package/dist/native/index.native162.js +2 -2
  191. package/dist/native/index.native163.js +2 -2
  192. package/dist/native/index.native164.js +2 -2
  193. package/dist/native/index.native19.js +1 -1
  194. package/dist/native/index.native22.js +28 -3
  195. package/dist/native/index.native23.js +3 -51
  196. package/dist/native/index.native24.js +53 -2
  197. package/dist/native/index.native25.js +2 -86
  198. package/dist/native/index.native26.js +87 -15
  199. package/dist/native/index.native27.js +15 -17
  200. package/dist/native/index.native28.js +15 -116
  201. package/dist/native/index.native29.js +92 -34
  202. package/dist/native/index.native3.js +48 -6
  203. package/dist/native/index.native30.js +58 -12
  204. package/dist/native/index.native31.js +15 -42
  205. package/dist/native/index.native32.js +42 -28
  206. package/dist/native/index.native35.js +3 -3
  207. package/dist/native/index.native41.js +3 -3
  208. package/dist/native/index.native44.js +1 -1
  209. package/dist/native/index.native45.js +1 -1
  210. package/dist/native/index.native46.js +13 -373
  211. package/dist/native/index.native47.js +22 -28
  212. package/dist/native/index.native48.js +50 -28
  213. package/dist/native/index.native49.js +373 -13
  214. package/dist/native/index.native50.js +28 -22
  215. package/dist/native/index.native51.js +28 -50
  216. package/dist/native/index.native52.js +4 -2
  217. package/dist/native/index.native53.js +2 -66
  218. package/dist/native/index.native54.js +2 -367
  219. package/dist/native/index.native55.js +66 -2
  220. package/dist/native/index.native56.js +365 -2
  221. package/dist/native/index.native7.js +11 -11
  222. package/dist/native/index.native72.js +1 -1
  223. package/dist/native/index.native8.js +4 -4
  224. package/dist/native/index.native9.js +4 -4
  225. package/dist/native/index.native96.js +54 -4
  226. package/dist/native/index.native97.js +10 -18
  227. package/dist/native/index.native98.js +2 -8
  228. package/dist/native/index.native99.js +45 -4
  229. package/dist/native-types/auth/oAuthManager.d.ts +1 -1
  230. package/dist/native-types/auth/types.d.ts +1 -1
  231. package/dist/native-types/platform/types.d.ts +1 -1
  232. package/dist/native-types/types.d.ts +4 -1
  233. package/dist/types/auth/oAuthManager.d.ts +1 -1
  234. package/dist/types/auth/types.d.ts +1 -1
  235. package/dist/types/platform/types.d.ts +1 -1
  236. package/dist/types/types.d.ts +4 -1
  237. package/dist/web/index.web100.js +1 -1
  238. package/dist/web/index.web127.js +1 -1
  239. package/dist/web/index.web130.js +77 -19
  240. package/dist/web/index.web131.js +21 -10
  241. package/dist/web/index.web132.js +9 -19
  242. package/dist/web/index.web133.js +15 -89
  243. package/dist/web/index.web134.js +92 -19
  244. package/dist/web/index.web135.js +18 -115
  245. package/dist/web/index.web136.js +118 -2
  246. package/dist/web/index.web137.js +2 -109
  247. package/dist/web/index.web138.js +109 -2
  248. package/dist/web/index.web139.js +2 -79
  249. package/dist/web/index.web141.js +1 -1
  250. package/dist/web/index.web153.js +1 -1
  251. package/dist/web/index.web159.js +1 -1
  252. package/dist/web/index.web24.js +33 -29
  253. package/dist/web/index.web34.js +3 -3
  254. package/dist/web/index.web40.js +1 -1
  255. package/dist/web/index.web45.js +13 -373
  256. package/dist/web/index.web46.js +25 -2
  257. package/dist/web/index.web47.js +48 -63
  258. package/dist/web/index.web48.js +189 -177
  259. package/dist/web/index.web49.js +2 -19
  260. package/dist/web/index.web50.js +63 -20
  261. package/dist/web/index.web51.js +351 -37
  262. package/dist/web/index.web95.js +7 -7
  263. package/dist/web-types/auth/oAuthManager.d.ts +1 -1
  264. package/dist/web-types/auth/types.d.ts +1 -1
  265. package/dist/web-types/platform/types.d.ts +1 -1
  266. package/dist/web-types/types.d.ts +4 -1
  267. package/package.json +7 -3
@@ -1,4 +1,23 @@
1
- const o = "2.33.0";
1
+ import { hashTypedData as s } from "viem";
2
+ import { signAndWrapTypedDataForSmartAccount as c } from "./index.native37.js";
3
+ import { validateUserOwnsSmartAccount as i, EIP1193ProviderError as d, STANDARD_ERROR_CODES as m } from "./index.native20.js";
4
+ async function A(a, e) {
5
+ const [t, n] = a, o = await i(t);
6
+ try {
7
+ const { signature: r } = await c({
8
+ smartAccount: t,
9
+ ownerAddress: o.evmAccounts[0],
10
+ hash: s(JSON.parse(n)),
11
+ chainId: e.getState().chainId
12
+ });
13
+ return r;
14
+ } catch (r) {
15
+ throw new d(
16
+ m.provider.userRejectedRequest,
17
+ r instanceof Error ? r.message : "Signing failed"
18
+ );
19
+ }
20
+ }
2
21
  export {
3
- o as version
22
+ A as handleSignTypedData
4
23
  };
@@ -1,5 +1,5 @@
1
- import { getDefaultExportFromCjs as r } from "./index.native133.js";
2
- import { __require as o } from "./index.native143.js";
1
+ import { getDefaultExportFromCjs as r } from "./index.native138.js";
2
+ import { __require as o } from "./index.native147.js";
3
3
  var t = o();
4
4
  const a = /* @__PURE__ */ r(t);
5
5
  export {
@@ -1,4 +1,4 @@
1
- import { HashMD as D, SHA256_IV as b, Chi as g, Maj as p } from "./index.native131.js";
1
+ import { HashMD as D, SHA256_IV as b, Chi as g, Maj as p } from "./index.native137.js";
2
2
  import { createHasher as u, clean as C, rotr as i } from "./index.native127.js";
3
3
  const B = /* @__PURE__ */ Uint32Array.from([
4
4
  1116352408,
@@ -1,7 +1,7 @@
1
1
  import { initiateAuthentication as n } from "@coinbase/cdp-api-client";
2
- import { Analytics as t } from "./index.native23.js";
3
- import "./index.native24.js";
4
- import { getCoreAuthManager as o, getConfig as a } from "./index.native32.js";
2
+ import { Analytics as t } from "./index.native24.js";
3
+ import "./index.native25.js";
4
+ import { getCoreAuthManager as o, getConfig as a } from "./index.native22.js";
5
5
  async function c(e) {
6
6
  if (t.sendActionCallEvent({ name: "link_email" }), !await o().isSignedIn())
7
7
  throw new Error("User must be signed in to link an email");
@@ -1,81 +1,23 @@
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.native127.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();
1
+ import { encoder as t, decoder as o } from "./index.native97.js";
2
+ import { encodeBase64 as c, decodeBase64 as a } from "./index.native153.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, "");
10
+ try {
11
+ return a(e);
12
+ } catch {
13
+ throw new TypeError("The input to be decoded is not correctly encoded.");
63
14
  }
64
15
  }
65
- const B = /* @__PURE__ */ Uint32Array.from([
66
- 1779033703,
67
- 3144134277,
68
- 1013904242,
69
- 2773480762,
70
- 1359893119,
71
- 2600822924,
72
- 528734635,
73
- 1541459225
74
- ]);
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
+ }
75
20
  export {
76
- U as Chi,
77
- m as HashMD,
78
- _ as Maj,
79
- B as SHA256_IV,
80
- y as setBigUint64
21
+ i as decode,
22
+ p as encode
81
23
  };
@@ -1,49 +1,12 @@
1
- import { BaseError as f } from "./index.native53.js";
2
- import { pad as g } from "./index.native153.js";
3
- function m(t, i = {}) {
4
- const { signed: r, size: e } = i, o = BigInt(t);
5
- let n;
6
- e ? r ? n = (1n << BigInt(e) * 8n - 1n) - 1n : n = 2n ** (BigInt(e) * 8n) - 1n : typeof t == "number" && (n = BigInt(Number.MAX_SAFE_INTEGER));
7
- const u = typeof n == "bigint" && r ? -n - 1n : 0;
8
- if (n && o > n || o < u) {
9
- const s = typeof t == "bigint" ? "n" : "";
10
- throw new d({
11
- max: n ? `${n}${s}` : void 0,
12
- min: `${u}${s}`,
13
- signed: r,
14
- size: e,
15
- value: `${t}${s}`
16
- });
17
- }
18
- const a = `0x${(r && o < 0 ? (1n << BigInt(e * 8)) + BigInt(o) : o).toString(16)}`;
19
- return e ? c(a, e) : a;
20
- }
21
- function c(t, i) {
22
- return g(t, { dir: "left", size: i });
23
- }
24
- class d extends f {
25
- constructor({ max: i, min: r, signed: e, size: o, value: n }) {
26
- super(`Number \`${n}\` is not in safe${o ? ` ${o * 8}-bit` : ""}${e ? " signed" : " unsigned"} integer range ${i ? `(\`${r}\` to \`${i}\`)` : `(above \`${r}\`)`}`), Object.defineProperty(this, "name", {
27
- enumerable: !0,
28
- configurable: !0,
29
- writable: !0,
30
- value: "Hex.IntegerOutOfRangeError"
31
- });
32
- }
33
- }
34
- class p extends f {
35
- constructor({ size: i, targetSize: r, type: e }) {
36
- super(`${e.charAt(0).toUpperCase()}${e.slice(1).toLowerCase()} size (\`${i}\`) exceeds padding size (\`${r}\`).`), Object.defineProperty(this, "name", {
37
- enumerable: !0,
38
- configurable: !0,
39
- writable: !0,
40
- value: "Hex.SizeExceedsPaddingSizeError"
41
- });
42
- }
43
- }
1
+ import n from "./index.native154.js";
2
+ import s from "./index.native155.js";
3
+ import a from "./index.native156.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
+ };
44
10
  export {
45
- d as IntegerOutOfRangeError,
46
- p as SizeExceedsPaddingSizeError,
47
- m as fromNumber,
48
- c as padLeft
11
+ y as default
49
12
  };
@@ -1,6 +1,22 @@
1
- function e(t) {
2
- return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
3
- }
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
+ };
4
20
  export {
5
- e as getDefaultExportFromCjs
21
+ a as default
6
22
  };
@@ -1,23 +1,96 @@
1
- import { encoder as t, decoder as o } from "./index.native118.js";
2
- import { encodeBase64 as c, decodeBase64 as a } from "./index.native154.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, "");
10
- try {
11
- return a(e);
12
- } catch {
13
- throw new TypeError("The input to be decoded is not correctly encoded.");
1
+ import { withAlg as n } from "./index.native157.js";
2
+ import c from "./index.native158.js";
3
+ import { isJWK as p, isSecretJWK as a, isPublicJWK as y, isPrivateJWK as f } from "./index.native159.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`);
14
19
  }
15
- }
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
+ 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
94
  export {
21
- i as decode,
22
- p as encode
95
+ d as default
23
96
  };
@@ -1,12 +1,23 @@
1
- import n from "./index.native155.js";
2
- import s from "./index.native156.js";
3
- import a from "./index.native157.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);
1
+ import { JOSENotSupported as f } from "./index.native47.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);
9
20
  };
10
21
  export {
11
- y as default
22
+ w as default
12
23
  };
@@ -1,22 +1,120 @@
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;
1
+ import { isJWK as p } from "./index.native159.js";
2
+ import { decode as m } from "./index.native131.js";
3
+ import y from "./index.native160.js";
4
+ import { isCryptoKey as S, isKeyObject as K } from "./index.native158.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");
11
29
  }
12
- for (const n of r) {
13
- if (e.has(n))
14
- return !1;
15
- e.add(n);
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");
16
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);
17
113
  }
18
- return !0;
114
+ if (p(e))
115
+ return e.k ? m(e.k) : f(e, e, r, !0);
116
+ throw new Error("unreachable");
19
117
  };
20
118
  export {
21
- a as default
119
+ d as default
22
120
  };