@coinbase/cdp-core 0.0.82 → 0.0.84

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 (300) hide show
  1. package/dist/esm/index.native116.js +1 -1
  2. package/dist/esm/index.native117.js +1 -1
  3. package/dist/esm/index.native122.js +1 -1
  4. package/dist/esm/index.native123.js +1 -1
  5. package/dist/esm/index.native125.js +6 -6
  6. package/dist/esm/index.native160.js +32 -6
  7. package/dist/esm/index.native161.js +6 -32
  8. package/dist/esm/index.native162.js +20 -4
  9. package/dist/esm/index.native163.js +10 -21
  10. package/dist/esm/index.native164.js +19 -9
  11. package/dist/esm/index.native165.js +89 -15
  12. package/dist/esm/index.native166.js +19 -92
  13. package/dist/esm/index.native167.js +115 -18
  14. package/dist/esm/index.native168.js +5 -118
  15. package/dist/esm/index.native182.js +18 -2
  16. package/dist/esm/index.native183.js +28 -109
  17. package/dist/esm/index.native184.js +8 -2
  18. package/dist/esm/index.native185.js +11 -18
  19. package/dist/esm/index.native186.js +13 -28
  20. package/dist/esm/index.native187.js +10 -8
  21. package/dist/esm/index.native188.js +17 -11
  22. package/dist/esm/index.native189.js +80 -12
  23. package/dist/esm/index.native190.js +2 -10
  24. package/dist/esm/index.native191.js +108 -16
  25. package/dist/esm/index.native192.js +2 -81
  26. package/dist/esm/index.native22.js +6 -6
  27. package/dist/esm/index.native69.js +3 -3
  28. package/dist/esm/index.native72.js +1 -1
  29. package/dist/esm/index.native73.js +1 -1
  30. package/dist/esm/index.native78.js +377 -2
  31. package/dist/esm/index.native79.js +29 -2
  32. package/dist/esm/index.native80.js +26 -374
  33. package/dist/esm/index.native81.js +2 -29
  34. package/dist/esm/index.native82.js +2 -29
  35. package/dist/esm/index.native9.js +1 -1
  36. package/dist/esm/index.web100.js +127 -6
  37. package/dist/esm/index.web101.js +21 -40
  38. package/dist/esm/index.web102.js +10 -53
  39. package/dist/esm/index.web103.js +102 -125
  40. package/dist/esm/index.web104.js +6 -23
  41. package/dist/esm/index.web105.js +3 -13
  42. package/dist/esm/index.web106.js +14 -104
  43. package/dist/esm/index.web107.js +34 -6
  44. package/dist/esm/index.web108.js +79 -3
  45. package/dist/esm/index.web109.js +2 -15
  46. package/dist/esm/index.web110.js +2 -35
  47. package/dist/esm/index.web111.js +11 -77
  48. package/dist/esm/index.web112.js +38 -2
  49. package/dist/esm/index.web113.js +7 -2
  50. package/dist/esm/index.web114.js +32 -10
  51. package/dist/esm/index.web115.js +8 -37
  52. package/dist/esm/index.web116.js +9 -5
  53. package/dist/esm/index.web117.js +11 -34
  54. package/dist/esm/index.web118.js +13 -8
  55. package/dist/esm/index.web119.js +17 -9
  56. package/dist/esm/index.web120.js +5 -11
  57. package/dist/esm/index.web121.js +5 -14
  58. package/dist/esm/index.web122.js +10 -18
  59. package/dist/esm/index.web123.js +2 -8
  60. package/dist/esm/index.web124.js +66 -5
  61. package/dist/esm/index.web125.js +364 -10
  62. package/dist/esm/index.web126.js +6 -6
  63. package/dist/esm/index.web131.js +2 -5
  64. package/dist/esm/index.web132.js +4 -18
  65. package/dist/esm/index.web133.js +18 -7
  66. package/dist/esm/index.web134.js +7 -3
  67. package/dist/esm/index.web135.js +3 -19
  68. package/dist/esm/index.web136.js +19 -8
  69. package/dist/esm/index.web137.js +8 -7
  70. package/dist/esm/index.web138.js +7 -71
  71. package/dist/esm/index.web139.js +70 -17
  72. package/dist/esm/index.web140.js +18 -3
  73. package/dist/esm/index.web141.js +3 -4
  74. package/dist/esm/index.web142.js +4 -4
  75. package/dist/esm/index.web143.js +4 -4
  76. package/dist/esm/index.web144.js +4 -19
  77. package/dist/esm/index.web145.js +15 -48
  78. package/dist/esm/index.web146.js +52 -17
  79. package/dist/esm/index.web147.js +17 -23
  80. package/dist/esm/index.web148.js +23 -8
  81. package/dist/esm/index.web149.js +8 -33
  82. package/dist/esm/index.web150.js +33 -7
  83. package/dist/esm/index.web151.js +7 -20
  84. package/dist/esm/index.web152.js +20 -4
  85. package/dist/esm/index.web153.js +21 -5
  86. package/dist/esm/index.web154.js +5 -48
  87. package/dist/esm/index.web155.js +48 -2
  88. package/dist/esm/index.web156.js +17 -18
  89. package/dist/esm/index.web157.js +80 -20
  90. package/dist/esm/index.web158.js +103 -79
  91. package/dist/esm/index.web159.js +30 -101
  92. package/dist/esm/index.web160.js +6 -32
  93. package/dist/esm/index.web161.js +4 -6
  94. package/dist/esm/index.web162.js +19 -77
  95. package/dist/esm/index.web163.js +10 -21
  96. package/dist/esm/index.web164.js +19 -9
  97. package/dist/esm/index.web165.js +89 -15
  98. package/dist/esm/index.web166.js +19 -92
  99. package/dist/esm/index.web167.js +115 -18
  100. package/dist/esm/index.web168.js +73 -112
  101. package/dist/esm/index.web169.js +4 -2
  102. package/dist/esm/index.web170.js +46 -108
  103. package/dist/esm/index.web171.js +39 -2
  104. package/dist/esm/index.web172.js +2 -4
  105. package/dist/esm/index.web173.js +67 -36
  106. package/dist/esm/index.web174.js +35 -2
  107. package/dist/esm/index.web175.js +20 -69
  108. package/dist/esm/index.web176.js +7 -34
  109. package/dist/esm/index.web177.js +2 -21
  110. package/dist/esm/index.web178.js +377 -7
  111. package/dist/esm/index.web179.js +836 -2
  112. package/dist/esm/index.web180.js +5 -378
  113. package/dist/esm/index.web181.js +2 -836
  114. package/dist/esm/index.web182.js +108 -46
  115. package/dist/esm/index.web183.js +2 -5
  116. package/dist/esm/index.web192.js +15 -2
  117. package/dist/esm/index.web193.js +2 -2
  118. package/dist/esm/index.web194.js +2 -2
  119. package/dist/esm/index.web195.js +2 -15
  120. package/dist/esm/index.web2.js +2 -2
  121. package/dist/esm/index.web21.js +6 -6
  122. package/dist/esm/index.web3.js +1 -1
  123. package/dist/esm/index.web60.js +12 -12
  124. package/dist/esm/index.web67.js +2 -2
  125. package/dist/esm/index.web74.js +1 -1
  126. package/dist/esm/index.web75.js +1 -1
  127. package/dist/esm/index.web79.js +3 -3
  128. package/dist/esm/index.web8.js +1 -1
  129. package/dist/esm/index.web80.js +12 -12
  130. package/dist/esm/index.web81.js +12 -12
  131. package/dist/esm/index.web82.js +4 -2
  132. package/dist/esm/index.web83.js +2 -66
  133. package/dist/esm/index.web84.js +17 -364
  134. package/dist/esm/index.web85.js +46 -2
  135. package/dist/esm/index.web86.js +14 -2
  136. package/dist/esm/index.web87.js +54 -16
  137. package/dist/esm/index.web88.js +6 -45
  138. package/dist/esm/index.web89.js +21 -13
  139. package/dist/esm/index.web90.js +11 -55
  140. package/dist/esm/index.web91.js +3 -6
  141. package/dist/esm/index.web92.js +3 -21
  142. package/dist/esm/index.web93.js +34 -11
  143. package/dist/esm/index.web94.js +12 -3
  144. package/dist/esm/index.web95.js +4 -3
  145. package/dist/esm/index.web96.js +25 -31
  146. package/dist/esm/index.web97.js +6 -12
  147. package/dist/esm/index.web98.js +42 -4
  148. package/dist/esm/index.web99.js +54 -27
  149. package/dist/native/index.native116.js +1 -1
  150. package/dist/native/index.native117.js +1 -1
  151. package/dist/native/index.native122.js +1 -1
  152. package/dist/native/index.native123.js +1 -1
  153. package/dist/native/index.native125.js +6 -6
  154. package/dist/native/index.native160.js +32 -6
  155. package/dist/native/index.native161.js +6 -32
  156. package/dist/native/index.native162.js +20 -4
  157. package/dist/native/index.native163.js +10 -21
  158. package/dist/native/index.native164.js +19 -9
  159. package/dist/native/index.native165.js +89 -15
  160. package/dist/native/index.native166.js +19 -92
  161. package/dist/native/index.native167.js +115 -18
  162. package/dist/native/index.native168.js +5 -118
  163. package/dist/native/index.native182.js +18 -2
  164. package/dist/native/index.native183.js +28 -109
  165. package/dist/native/index.native184.js +8 -2
  166. package/dist/native/index.native185.js +11 -18
  167. package/dist/native/index.native186.js +13 -28
  168. package/dist/native/index.native187.js +10 -8
  169. package/dist/native/index.native188.js +17 -11
  170. package/dist/native/index.native189.js +80 -12
  171. package/dist/native/index.native190.js +2 -10
  172. package/dist/native/index.native191.js +108 -16
  173. package/dist/native/index.native192.js +2 -81
  174. package/dist/native/index.native22.js +6 -6
  175. package/dist/native/index.native69.js +3 -3
  176. package/dist/native/index.native72.js +1 -1
  177. package/dist/native/index.native73.js +1 -1
  178. package/dist/native/index.native78.js +377 -2
  179. package/dist/native/index.native79.js +29 -2
  180. package/dist/native/index.native80.js +26 -374
  181. package/dist/native/index.native81.js +2 -29
  182. package/dist/native/index.native82.js +2 -29
  183. package/dist/native/index.native9.js +1 -1
  184. package/dist/native-types/version.d.ts +1 -1
  185. package/dist/types/version.d.ts +1 -1
  186. package/dist/web/index.web100.js +127 -6
  187. package/dist/web/index.web101.js +21 -40
  188. package/dist/web/index.web102.js +10 -53
  189. package/dist/web/index.web103.js +102 -125
  190. package/dist/web/index.web104.js +6 -23
  191. package/dist/web/index.web105.js +3 -13
  192. package/dist/web/index.web106.js +14 -104
  193. package/dist/web/index.web107.js +34 -6
  194. package/dist/web/index.web108.js +79 -3
  195. package/dist/web/index.web109.js +2 -15
  196. package/dist/web/index.web110.js +2 -35
  197. package/dist/web/index.web111.js +11 -77
  198. package/dist/web/index.web112.js +38 -2
  199. package/dist/web/index.web113.js +7 -2
  200. package/dist/web/index.web114.js +32 -10
  201. package/dist/web/index.web115.js +8 -37
  202. package/dist/web/index.web116.js +9 -5
  203. package/dist/web/index.web117.js +11 -34
  204. package/dist/web/index.web118.js +13 -8
  205. package/dist/web/index.web119.js +17 -9
  206. package/dist/web/index.web120.js +5 -11
  207. package/dist/web/index.web121.js +5 -14
  208. package/dist/web/index.web122.js +10 -18
  209. package/dist/web/index.web123.js +2 -8
  210. package/dist/web/index.web124.js +66 -5
  211. package/dist/web/index.web125.js +364 -10
  212. package/dist/web/index.web126.js +6 -6
  213. package/dist/web/index.web131.js +2 -5
  214. package/dist/web/index.web132.js +4 -18
  215. package/dist/web/index.web133.js +18 -7
  216. package/dist/web/index.web134.js +7 -3
  217. package/dist/web/index.web135.js +3 -19
  218. package/dist/web/index.web136.js +19 -8
  219. package/dist/web/index.web137.js +8 -7
  220. package/dist/web/index.web138.js +7 -71
  221. package/dist/web/index.web139.js +70 -17
  222. package/dist/web/index.web140.js +18 -3
  223. package/dist/web/index.web141.js +3 -4
  224. package/dist/web/index.web142.js +4 -4
  225. package/dist/web/index.web143.js +4 -4
  226. package/dist/web/index.web144.js +4 -19
  227. package/dist/web/index.web145.js +15 -48
  228. package/dist/web/index.web146.js +52 -17
  229. package/dist/web/index.web147.js +17 -23
  230. package/dist/web/index.web148.js +23 -8
  231. package/dist/web/index.web149.js +8 -33
  232. package/dist/web/index.web150.js +33 -7
  233. package/dist/web/index.web151.js +7 -20
  234. package/dist/web/index.web152.js +20 -4
  235. package/dist/web/index.web153.js +21 -5
  236. package/dist/web/index.web154.js +5 -48
  237. package/dist/web/index.web155.js +48 -2
  238. package/dist/web/index.web156.js +17 -18
  239. package/dist/web/index.web157.js +80 -20
  240. package/dist/web/index.web158.js +103 -79
  241. package/dist/web/index.web159.js +30 -101
  242. package/dist/web/index.web160.js +6 -32
  243. package/dist/web/index.web161.js +4 -6
  244. package/dist/web/index.web162.js +19 -77
  245. package/dist/web/index.web163.js +10 -21
  246. package/dist/web/index.web164.js +19 -9
  247. package/dist/web/index.web165.js +89 -15
  248. package/dist/web/index.web166.js +19 -92
  249. package/dist/web/index.web167.js +115 -18
  250. package/dist/web/index.web168.js +73 -112
  251. package/dist/web/index.web169.js +4 -2
  252. package/dist/web/index.web170.js +46 -108
  253. package/dist/web/index.web171.js +39 -2
  254. package/dist/web/index.web172.js +2 -4
  255. package/dist/web/index.web173.js +67 -36
  256. package/dist/web/index.web174.js +35 -2
  257. package/dist/web/index.web175.js +20 -69
  258. package/dist/web/index.web176.js +7 -34
  259. package/dist/web/index.web177.js +2 -21
  260. package/dist/web/index.web178.js +377 -7
  261. package/dist/web/index.web179.js +836 -2
  262. package/dist/web/index.web180.js +5 -378
  263. package/dist/web/index.web181.js +2 -836
  264. package/dist/web/index.web182.js +108 -46
  265. package/dist/web/index.web183.js +2 -5
  266. package/dist/web/index.web192.js +15 -2
  267. package/dist/web/index.web193.js +2 -2
  268. package/dist/web/index.web194.js +2 -2
  269. package/dist/web/index.web195.js +2 -15
  270. package/dist/web/index.web2.js +2 -2
  271. package/dist/web/index.web21.js +6 -6
  272. package/dist/web/index.web3.js +1 -1
  273. package/dist/web/index.web60.js +12 -12
  274. package/dist/web/index.web67.js +2 -2
  275. package/dist/web/index.web74.js +1 -1
  276. package/dist/web/index.web75.js +1 -1
  277. package/dist/web/index.web79.js +3 -3
  278. package/dist/web/index.web8.js +1 -1
  279. package/dist/web/index.web80.js +12 -12
  280. package/dist/web/index.web81.js +12 -12
  281. package/dist/web/index.web82.js +4 -2
  282. package/dist/web/index.web83.js +2 -66
  283. package/dist/web/index.web84.js +17 -364
  284. package/dist/web/index.web85.js +46 -2
  285. package/dist/web/index.web86.js +14 -2
  286. package/dist/web/index.web87.js +54 -16
  287. package/dist/web/index.web88.js +6 -45
  288. package/dist/web/index.web89.js +21 -13
  289. package/dist/web/index.web90.js +11 -55
  290. package/dist/web/index.web91.js +3 -6
  291. package/dist/web/index.web92.js +3 -21
  292. package/dist/web/index.web93.js +34 -11
  293. package/dist/web/index.web94.js +12 -3
  294. package/dist/web/index.web95.js +4 -3
  295. package/dist/web/index.web96.js +25 -31
  296. package/dist/web/index.web97.js +6 -12
  297. package/dist/web/index.web98.js +42 -4
  298. package/dist/web/index.web99.js +54 -27
  299. package/dist/web-types/version.d.ts +1 -1
  300. package/package.json +2 -2
@@ -1,22 +1,96 @@
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 { withAlg as n } from "./index.native186.js";
2
+ import c from "./index.native187.js";
3
+ import { isJWK as p, isSecretJWK as a, isPublicJWK as y, isPrivateJWK as f } from "./index.native188.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;
11
16
  }
12
- for (const n of r) {
13
- if (e.has(n))
14
- return !1;
15
- e.add(n);
17
+ if (e.use !== i)
18
+ throw new TypeError(`Invalid key for this operation, its "use" must be "${i}" when present`);
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;
16
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`);
17
45
  }
18
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);
19
93
  };
20
94
  export {
21
- a as default
95
+ d as default
22
96
  };
@@ -1,96 +1,23 @@
1
- import { withAlg as n } from "./index.native189.js";
2
- import c from "./index.native190.js";
3
- import { isJWK as p, isSecretJWK as a, isPublicJWK as y, isPrivateJWK as f } from "./index.native191.js";
4
- const s = (r) => r?.[Symbol.toStringTag], o = (r, e, t) => {
5
- if (e.use !== void 0) {
6
- let i;
7
- switch (t) {
8
- case "sign":
9
- case "verify":
10
- i = "sig";
11
- break;
12
- case "encrypt":
13
- case "decrypt":
14
- i = "enc";
15
- break;
16
- }
17
- if (e.use !== i)
18
- throw new TypeError(`Invalid key for this operation, its "use" must be "${i}" when present`);
1
+ import { JOSENotSupported as f } from "./index.native76.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`);
19
18
  }
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);
19
+ return new Set(e.crit);
93
20
  };
94
21
  export {
95
- d as default
22
+ w as default
96
23
  };
@@ -1,23 +1,120 @@
1
- import { JOSENotSupported as f } from "./index.native76.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');
1
+ import { isJWK as p } from "./index.native188.js";
2
+ import { decode as m } from "./index.native162.js";
3
+ import y from "./index.native189.js";
4
+ import { isCryptoKey as S, isKeyObject as K } from "./index.native187.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;
9
19
  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`);
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"]);
18
31
  }
19
- return new Set(e.crit);
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");
20
117
  };
21
118
  export {
22
- w as default
119
+ d as default
23
120
  };
@@ -1,120 +1,7 @@
1
- import { isJWK as p } from "./index.native191.js";
2
- import { decode as m } from "./index.native163.js";
3
- import y from "./index.native192.js";
4
- import { isCryptoKey as S, isKeyObject as K } from "./index.native190.js";
5
- let c;
6
- const f = async (e, r, s, i = !1) => {
7
- c ||= /* @__PURE__ */ new WeakMap();
8
- let n = c.get(e);
9
- if (n?.[s])
10
- return n[s];
11
- const t = await y({ ...r, alg: s });
12
- return i && Object.freeze(e), n ? n[s] = t : c.set(e, { [s]: t }), t;
13
- }, E = (e, r) => {
14
- c ||= /* @__PURE__ */ new WeakMap();
15
- let s = c.get(e);
16
- if (s?.[r])
17
- return s[r];
18
- const i = e.type === "public", n = !!i;
19
- let t;
20
- if (e.asymmetricKeyType === "x25519") {
21
- switch (r) {
22
- case "ECDH-ES":
23
- case "ECDH-ES+A128KW":
24
- case "ECDH-ES+A192KW":
25
- case "ECDH-ES+A256KW":
26
- break;
27
- default:
28
- throw new TypeError("given KeyObject instance cannot be used for this algorithm");
29
- }
30
- t = e.toCryptoKey(e.asymmetricKeyType, n, i ? [] : ["deriveBits"]);
31
- }
32
- if (e.asymmetricKeyType === "ed25519") {
33
- if (r !== "EdDSA" && r !== "Ed25519")
34
- throw new TypeError("given KeyObject instance cannot be used for this algorithm");
35
- t = e.toCryptoKey(e.asymmetricKeyType, n, [
36
- i ? "verify" : "sign"
37
- ]);
38
- }
39
- if (e.asymmetricKeyType === "rsa") {
40
- let a;
41
- switch (r) {
42
- case "RSA-OAEP":
43
- a = "SHA-1";
44
- break;
45
- case "RS256":
46
- case "PS256":
47
- case "RSA-OAEP-256":
48
- a = "SHA-256";
49
- break;
50
- case "RS384":
51
- case "PS384":
52
- case "RSA-OAEP-384":
53
- a = "SHA-384";
54
- break;
55
- case "RS512":
56
- case "PS512":
57
- case "RSA-OAEP-512":
58
- a = "SHA-512";
59
- break;
60
- default:
61
- throw new TypeError("given KeyObject instance cannot be used for this algorithm");
62
- }
63
- if (r.startsWith("RSA-OAEP"))
64
- return e.toCryptoKey({
65
- name: "RSA-OAEP",
66
- hash: a
67
- }, n, i ? ["encrypt"] : ["decrypt"]);
68
- t = e.toCryptoKey({
69
- name: r.startsWith("PS") ? "RSA-PSS" : "RSASSA-PKCS1-v1_5",
70
- hash: a
71
- }, n, [i ? "verify" : "sign"]);
72
- }
73
- if (e.asymmetricKeyType === "ec") {
74
- const o = (/* @__PURE__ */ new Map([
75
- ["prime256v1", "P-256"],
76
- ["secp384r1", "P-384"],
77
- ["secp521r1", "P-521"]
78
- ])).get(e.asymmetricKeyDetails?.namedCurve);
79
- if (!o)
80
- throw new TypeError("given KeyObject instance cannot be used for this algorithm");
81
- r === "ES256" && o === "P-256" && (t = e.toCryptoKey({
82
- name: "ECDSA",
83
- namedCurve: o
84
- }, n, [i ? "verify" : "sign"])), r === "ES384" && o === "P-384" && (t = e.toCryptoKey({
85
- name: "ECDSA",
86
- namedCurve: o
87
- }, n, [i ? "verify" : "sign"])), r === "ES512" && o === "P-521" && (t = e.toCryptoKey({
88
- name: "ECDSA",
89
- namedCurve: o
90
- }, n, [i ? "verify" : "sign"])), r.startsWith("ECDH-ES") && (t = e.toCryptoKey({
91
- name: "ECDH",
92
- namedCurve: o
93
- }, n, i ? [] : ["deriveBits"]));
94
- }
95
- if (!t)
96
- throw new TypeError("given KeyObject instance cannot be used for this algorithm");
97
- return s ? s[r] = t : c.set(e, { [r]: t }), t;
98
- }, d = async (e, r) => {
99
- if (e instanceof Uint8Array || S(e))
100
- return e;
101
- if (K(e)) {
102
- if (e.type === "secret")
103
- return e.export();
104
- if ("toCryptoKey" in e && typeof e.toCryptoKey == "function")
105
- try {
106
- return E(e, r);
107
- } catch (i) {
108
- if (i instanceof TypeError)
109
- throw i;
110
- }
111
- let s = e.export({ format: "jwk" });
112
- return f(e, s, r);
113
- }
114
- if (p(e))
115
- return e.k ? m(e.k) : f(e, e, r, !0);
116
- throw new Error("unreachable");
117
- };
1
+ import { version as r } from "./index.native190.js";
2
+ function e() {
3
+ return r;
4
+ }
118
5
  export {
119
- d as default
6
+ e as getVersion
120
7
  };
@@ -1,4 +1,20 @@
1
- const o = "0.1.1";
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
+ }
2
17
  export {
3
- o as version
18
+ a as decodeBase64,
19
+ o as encodeBase64
4
20
  };
@@ -1,111 +1,30 @@
1
- import { __module as x } from "./index.native184.js";
2
- var w;
3
- function O() {
4
- return w ? x.exports : (w = 1, function(d) {
5
- var g = Object.prototype.hasOwnProperty, c = "~";
6
- function h() {
7
- }
8
- Object.create && (h.prototype = /* @__PURE__ */ Object.create(null), new h().__proto__ || (c = !1));
9
- function b(s, t, n) {
10
- this.fn = s, this.context = t, this.once = n || !1;
11
- }
12
- function m(s, t, n, r, l) {
13
- if (typeof n != "function")
14
- throw new TypeError("The listener must be a function");
15
- var u = new b(n, r || s, l), o = c ? c + t : t;
16
- return s._events[o] ? s._events[o].fn ? s._events[o] = [s._events[o], u] : s._events[o].push(u) : (s._events[o] = u, s._eventsCount++), s;
17
- }
18
- function y(s, t) {
19
- --s._eventsCount === 0 ? s._events = new h() : delete s._events[t];
20
- }
21
- function f() {
22
- this._events = new h(), this._eventsCount = 0;
23
- }
24
- f.prototype.eventNames = function() {
25
- var t = [], n, r;
26
- if (this._eventsCount === 0) return t;
27
- for (r in n = this._events)
28
- g.call(n, r) && t.push(c ? r.slice(1) : r);
29
- return Object.getOwnPropertySymbols ? t.concat(Object.getOwnPropertySymbols(n)) : t;
30
- }, f.prototype.listeners = function(t) {
31
- var n = c ? c + t : t, r = this._events[n];
32
- if (!r) return [];
33
- if (r.fn) return [r.fn];
34
- for (var l = 0, u = r.length, o = new Array(u); l < u; l++)
35
- o[l] = r[l].fn;
36
- return o;
37
- }, f.prototype.listenerCount = function(t) {
38
- var n = c ? c + t : t, r = this._events[n];
39
- return r ? r.fn ? 1 : r.length : 0;
40
- }, f.prototype.emit = function(t, n, r, l, u, o) {
41
- var a = c ? c + t : t;
42
- if (!this._events[a]) return !1;
43
- var e = this._events[a], p = arguments.length, v, i;
44
- if (e.fn) {
45
- switch (e.once && this.removeListener(t, e.fn, void 0, !0), p) {
46
- case 1:
47
- return e.fn.call(e.context), !0;
48
- case 2:
49
- return e.fn.call(e.context, n), !0;
50
- case 3:
51
- return e.fn.call(e.context, n, r), !0;
52
- case 4:
53
- return e.fn.call(e.context, n, r, l), !0;
54
- case 5:
55
- return e.fn.call(e.context, n, r, l, u), !0;
56
- case 6:
57
- return e.fn.call(e.context, n, r, l, u, o), !0;
58
- }
59
- for (i = 1, v = new Array(p - 1); i < p; i++)
60
- v[i - 1] = arguments[i];
61
- e.fn.apply(e.context, v);
62
- } else {
63
- var E = e.length, _;
64
- for (i = 0; i < E; i++)
65
- switch (e[i].once && this.removeListener(t, e[i].fn, void 0, !0), p) {
66
- case 1:
67
- e[i].fn.call(e[i].context);
68
- break;
69
- case 2:
70
- e[i].fn.call(e[i].context, n);
71
- break;
72
- case 3:
73
- e[i].fn.call(e[i].context, n, r);
74
- break;
75
- case 4:
76
- e[i].fn.call(e[i].context, n, r, l);
77
- break;
78
- default:
79
- if (!v) for (_ = 1, v = new Array(p - 1); _ < p; _++)
80
- v[_ - 1] = arguments[_];
81
- e[i].fn.apply(e[i].context, v);
82
- }
83
- }
84
- return !0;
85
- }, f.prototype.on = function(t, n, r) {
86
- return m(this, t, n, r, !1);
87
- }, f.prototype.once = function(t, n, r) {
88
- return m(this, t, n, r, !0);
89
- }, f.prototype.removeListener = function(t, n, r, l) {
90
- var u = c ? c + t : t;
91
- if (!this._events[u]) return this;
92
- if (!n)
93
- return y(this, u), this;
94
- var o = this._events[u];
95
- if (o.fn)
96
- o.fn === n && (!l || o.once) && (!r || o.context === r) && y(this, u);
97
- else {
98
- for (var a = 0, e = [], p = o.length; a < p; a++)
99
- (o[a].fn !== n || l && !o[a].once || r && o[a].context !== r) && e.push(o[a]);
100
- e.length ? this._events[u] = e.length === 1 ? e[0] : e : y(this, u);
101
- }
102
- return this;
103
- }, f.prototype.removeAllListeners = function(t) {
104
- var n;
105
- return t ? (n = c ? c + t : t, this._events[n] && y(this, n)) : (this._events = new h(), this._eventsCount = 0), this;
106
- }, f.prototype.off = f.prototype.removeListener, f.prototype.addListener = f.prototype.on, f.prefixed = c, f.EventEmitter = f, d.exports = f;
107
- }(x), x.exports);
108
- }
1
+ import { JOSENotSupported as r } from "./index.native76.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
+ }
27
+ };
109
28
  export {
110
- O as __require
29
+ S as default
111
30
  };
@@ -1,4 +1,10 @@
1
- var e = { exports: {} };
1
+ const o = (t, r) => {
2
+ if (t.startsWith("RS") || t.startsWith("PS")) {
3
+ const { modulusLength: e } = r.algorithm;
4
+ if (typeof e != "number" || e < 2048)
5
+ throw new TypeError(`${t} requires key modulusLength to be 2048 bits or larger`);
6
+ }
7
+ };
2
8
  export {
3
- e as __module
9
+ o as default
4
10
  };