@coinbase/cdp-core 0.0.26 → 0.0.28

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 (371) hide show
  1. package/dist/esm/index.native100.js +11 -8
  2. package/dist/esm/index.native101.js +7 -14
  3. package/dist/esm/index.native102.js +16 -80
  4. package/dist/esm/index.native103.js +79 -11
  5. package/dist/esm/index.native104.js +12 -35
  6. package/dist/esm/index.native105.js +35 -41
  7. package/dist/esm/index.native106.js +38 -75
  8. package/dist/esm/index.native107.js +81 -0
  9. package/dist/esm/index.native19.js +13 -13
  10. package/dist/esm/index.native20.js +3 -3
  11. package/dist/esm/index.native21.js +69 -23
  12. package/dist/esm/index.native22.js +22 -156
  13. package/dist/esm/index.native23.js +157 -45
  14. package/dist/esm/index.native24.js +43 -245
  15. package/dist/esm/index.native25.js +247 -53
  16. package/dist/esm/index.native26.js +56 -17
  17. package/dist/esm/index.native27.js +15 -21
  18. package/dist/esm/index.native28.js +21 -49
  19. package/dist/esm/index.native29.js +50 -8
  20. package/dist/esm/index.native30.js +8 -17
  21. package/dist/esm/index.native31.js +16 -44
  22. package/dist/esm/index.native32.js +45 -13
  23. package/dist/esm/index.native33.js +13 -55
  24. package/dist/esm/index.native34.js +55 -6
  25. package/dist/esm/index.native35.js +6 -21
  26. package/dist/esm/index.native36.js +21 -11
  27. package/dist/esm/index.native37.js +11 -3
  28. package/dist/esm/index.native38.js +3 -3
  29. package/dist/esm/index.native39.js +3 -34
  30. package/dist/esm/index.native40.js +32 -10
  31. package/dist/esm/index.native41.js +12 -4
  32. package/dist/esm/index.native42.js +4 -28
  33. package/dist/esm/index.native43.js +28 -6
  34. package/dist/esm/index.native44.js +6 -24
  35. package/dist/esm/index.native45.js +24 -16
  36. package/dist/esm/index.native46.js +16 -54
  37. package/dist/esm/index.native47.js +53 -22
  38. package/dist/esm/index.native48.js +23 -11
  39. package/dist/esm/index.native49.js +10 -26
  40. package/dist/esm/index.native50.js +26 -41
  41. package/dist/esm/index.native51.js +41 -54
  42. package/dist/esm/index.native52.js +54 -126
  43. package/dist/esm/index.native53.js +126 -11
  44. package/dist/esm/index.native54.js +9 -101
  45. package/dist/esm/index.native55.js +104 -6
  46. package/dist/esm/index.native56.js +7 -3
  47. package/dist/esm/index.native57.js +3 -15
  48. package/dist/esm/index.native58.js +14 -42
  49. package/dist/esm/index.native59.js +38 -74
  50. package/dist/esm/index.native60.js +79 -2
  51. package/dist/esm/index.native61.js +2 -2
  52. package/dist/esm/index.native62.js +2 -13
  53. package/dist/esm/index.native63.js +8 -33
  54. package/dist/esm/index.native64.js +36 -5
  55. package/dist/esm/index.native65.js +5 -33
  56. package/dist/esm/index.native66.js +34 -8
  57. package/dist/esm/index.native67.js +8 -10
  58. package/dist/esm/index.native68.js +10 -11
  59. package/dist/esm/index.native69.js +11 -13
  60. package/dist/esm/index.native7.js +4 -4
  61. package/dist/esm/index.native70.js +13 -18
  62. package/dist/esm/index.native71.js +18 -5
  63. package/dist/esm/index.native72.js +6 -5
  64. package/dist/esm/index.native73.js +5 -11
  65. package/dist/esm/index.native74.js +10 -54
  66. package/dist/esm/index.native75.js +54 -10
  67. package/dist/esm/index.native76.js +11 -2
  68. package/dist/esm/index.native77.js +2 -45
  69. package/dist/esm/index.native78.js +44 -13
  70. package/dist/esm/index.native79.js +14 -2
  71. package/dist/esm/index.native80.js +2 -21
  72. package/dist/esm/index.native81.js +18 -17
  73. package/dist/esm/index.native82.js +20 -80
  74. package/dist/esm/index.native83.js +79 -103
  75. package/dist/esm/index.native84.js +101 -30
  76. package/dist/esm/index.native85.js +32 -6
  77. package/dist/esm/index.native86.js +6 -20
  78. package/dist/esm/index.native87.js +79 -10
  79. package/dist/esm/index.native88.js +20 -19
  80. package/dist/esm/index.native89.js +9 -93
  81. package/dist/esm/index.native9.js +22 -15
  82. package/dist/esm/index.native90.js +18 -19
  83. package/dist/esm/index.native91.js +81 -105
  84. package/dist/esm/index.native92.js +20 -78
  85. package/dist/esm/index.native93.js +117 -9
  86. package/dist/esm/index.native94.js +10 -5
  87. package/dist/esm/index.native95.js +5 -18
  88. package/dist/esm/index.native96.js +18 -28
  89. package/dist/esm/index.native97.js +26 -6
  90. package/dist/esm/index.native98.js +6 -9
  91. package/dist/esm/index.native99.js +11 -13
  92. package/dist/esm/index.web100.js +8 -11
  93. package/dist/esm/index.web101.js +14 -7
  94. package/dist/esm/index.web102.js +80 -16
  95. package/dist/esm/index.web103.js +11 -79
  96. package/dist/esm/index.web104.js +36 -5
  97. package/dist/esm/index.web105.js +38 -75
  98. package/dist/esm/index.web106.js +81 -0
  99. package/dist/esm/index.web18.js +13 -13
  100. package/dist/esm/index.web19.js +3 -3
  101. package/dist/esm/index.web20.js +69 -23
  102. package/dist/esm/index.web21.js +22 -156
  103. package/dist/esm/index.web22.js +157 -45
  104. package/dist/esm/index.web23.js +43 -245
  105. package/dist/esm/index.web24.js +247 -53
  106. package/dist/esm/index.web25.js +56 -17
  107. package/dist/esm/index.web26.js +15 -21
  108. package/dist/esm/index.web27.js +21 -49
  109. package/dist/esm/index.web28.js +49 -11
  110. package/dist/esm/index.web29.js +8 -11
  111. package/dist/esm/index.web30.js +16 -53
  112. package/dist/esm/index.web31.js +45 -10
  113. package/dist/esm/index.web32.js +14 -2
  114. package/dist/esm/index.web33.js +55 -44
  115. package/dist/esm/index.web34.js +6 -13
  116. package/dist/esm/index.web35.js +21 -8
  117. package/dist/esm/index.web36.js +11 -17
  118. package/dist/esm/index.web37.js +3 -45
  119. package/dist/esm/index.web38.js +3 -13
  120. package/dist/esm/index.web39.js +31 -52
  121. package/dist/esm/index.web40.js +12 -6
  122. package/dist/esm/index.web41.js +4 -21
  123. package/dist/esm/index.web42.js +28 -3
  124. package/dist/esm/index.web43.js +6 -3
  125. package/dist/esm/index.web44.js +24 -34
  126. package/dist/esm/index.web45.js +16 -12
  127. package/dist/esm/index.web46.js +54 -4
  128. package/dist/esm/index.web47.js +20 -25
  129. package/dist/esm/index.web48.js +11 -6
  130. package/dist/esm/index.web49.js +26 -23
  131. package/dist/esm/index.web50.js +42 -16
  132. package/dist/esm/index.web51.js +53 -52
  133. package/dist/esm/index.web52.js +127 -23
  134. package/dist/esm/index.web53.js +12 -11
  135. package/dist/esm/index.web54.js +104 -27
  136. package/dist/esm/index.web55.js +6 -42
  137. package/dist/esm/index.web56.js +3 -56
  138. package/dist/esm/index.web57.js +14 -127
  139. package/dist/esm/index.web58.js +39 -9
  140. package/dist/esm/index.web59.js +74 -100
  141. package/dist/esm/index.web60.js +2 -7
  142. package/dist/esm/index.web61.js +2 -3
  143. package/dist/esm/index.web62.js +12 -14
  144. package/dist/esm/index.web63.js +29 -34
  145. package/dist/esm/index.web64.js +5 -77
  146. package/dist/esm/index.web65.js +35 -2
  147. package/dist/esm/index.web66.js +9 -2
  148. package/dist/esm/index.web67.js +9 -36
  149. package/dist/esm/index.web68.js +11 -6
  150. package/dist/esm/index.web69.js +12 -33
  151. package/dist/esm/index.web7.js +4 -4
  152. package/dist/esm/index.web70.js +18 -8
  153. package/dist/esm/index.web71.js +5 -10
  154. package/dist/esm/index.web72.js +5 -12
  155. package/dist/esm/index.web73.js +10 -13
  156. package/dist/esm/index.web74.js +53 -17
  157. package/dist/esm/index.web75.js +10 -5
  158. package/dist/esm/index.web76.js +2 -5
  159. package/dist/esm/index.web77.js +45 -11
  160. package/dist/esm/index.web78.js +13 -9
  161. package/dist/esm/index.web79.js +2 -104
  162. package/dist/esm/index.web80.js +17 -75
  163. package/dist/esm/index.web81.js +20 -80
  164. package/dist/esm/index.web82.js +79 -20
  165. package/dist/esm/index.web83.js +104 -10
  166. package/dist/esm/index.web84.js +31 -18
  167. package/dist/esm/index.web85.js +7 -94
  168. package/dist/esm/index.web86.js +78 -20
  169. package/dist/esm/index.web87.js +20 -117
  170. package/dist/esm/index.web88.js +10 -2
  171. package/dist/esm/index.web89.js +19 -20
  172. package/dist/esm/index.web9.js +22 -15
  173. package/dist/esm/index.web90.js +93 -19
  174. package/dist/esm/index.web91.js +20 -32
  175. package/dist/esm/index.web92.js +118 -7
  176. package/dist/esm/index.web93.js +9 -12
  177. package/dist/esm/index.web94.js +5 -36
  178. package/dist/esm/index.web95.js +16 -40
  179. package/dist/esm/index.web96.js +28 -18
  180. package/dist/esm/index.web97.js +6 -26
  181. package/dist/esm/index.web98.js +9 -6
  182. package/dist/esm/index.web99.js +13 -11
  183. package/dist/native/index.native100.js +11 -8
  184. package/dist/native/index.native101.js +7 -14
  185. package/dist/native/index.native102.js +16 -80
  186. package/dist/native/index.native103.js +79 -11
  187. package/dist/native/index.native104.js +12 -35
  188. package/dist/native/index.native105.js +35 -41
  189. package/dist/native/index.native106.js +38 -75
  190. package/dist/native/index.native107.js +81 -0
  191. package/dist/native/index.native19.js +13 -13
  192. package/dist/native/index.native20.js +3 -3
  193. package/dist/native/index.native21.js +69 -23
  194. package/dist/native/index.native22.js +22 -156
  195. package/dist/native/index.native23.js +157 -45
  196. package/dist/native/index.native24.js +43 -245
  197. package/dist/native/index.native25.js +247 -53
  198. package/dist/native/index.native26.js +56 -17
  199. package/dist/native/index.native27.js +15 -21
  200. package/dist/native/index.native28.js +21 -49
  201. package/dist/native/index.native29.js +50 -8
  202. package/dist/native/index.native30.js +8 -17
  203. package/dist/native/index.native31.js +16 -44
  204. package/dist/native/index.native32.js +45 -13
  205. package/dist/native/index.native33.js +13 -55
  206. package/dist/native/index.native34.js +55 -6
  207. package/dist/native/index.native35.js +6 -21
  208. package/dist/native/index.native36.js +21 -11
  209. package/dist/native/index.native37.js +11 -3
  210. package/dist/native/index.native38.js +3 -3
  211. package/dist/native/index.native39.js +3 -34
  212. package/dist/native/index.native40.js +32 -10
  213. package/dist/native/index.native41.js +12 -4
  214. package/dist/native/index.native42.js +4 -28
  215. package/dist/native/index.native43.js +28 -6
  216. package/dist/native/index.native44.js +6 -24
  217. package/dist/native/index.native45.js +24 -16
  218. package/dist/native/index.native46.js +16 -54
  219. package/dist/native/index.native47.js +53 -22
  220. package/dist/native/index.native48.js +23 -11
  221. package/dist/native/index.native49.js +10 -26
  222. package/dist/native/index.native50.js +26 -41
  223. package/dist/native/index.native51.js +41 -54
  224. package/dist/native/index.native52.js +54 -126
  225. package/dist/native/index.native53.js +126 -11
  226. package/dist/native/index.native54.js +9 -101
  227. package/dist/native/index.native55.js +104 -6
  228. package/dist/native/index.native56.js +7 -3
  229. package/dist/native/index.native57.js +3 -15
  230. package/dist/native/index.native58.js +14 -42
  231. package/dist/native/index.native59.js +38 -74
  232. package/dist/native/index.native60.js +79 -2
  233. package/dist/native/index.native61.js +2 -2
  234. package/dist/native/index.native62.js +2 -13
  235. package/dist/native/index.native63.js +8 -33
  236. package/dist/native/index.native64.js +36 -5
  237. package/dist/native/index.native65.js +5 -33
  238. package/dist/native/index.native66.js +34 -8
  239. package/dist/native/index.native67.js +8 -10
  240. package/dist/native/index.native68.js +10 -11
  241. package/dist/native/index.native69.js +11 -13
  242. package/dist/native/index.native7.js +4 -4
  243. package/dist/native/index.native70.js +13 -18
  244. package/dist/native/index.native71.js +18 -5
  245. package/dist/native/index.native72.js +6 -5
  246. package/dist/native/index.native73.js +5 -11
  247. package/dist/native/index.native74.js +10 -54
  248. package/dist/native/index.native75.js +54 -10
  249. package/dist/native/index.native76.js +11 -2
  250. package/dist/native/index.native77.js +2 -45
  251. package/dist/native/index.native78.js +44 -13
  252. package/dist/native/index.native79.js +14 -2
  253. package/dist/native/index.native80.js +2 -21
  254. package/dist/native/index.native81.js +18 -17
  255. package/dist/native/index.native82.js +20 -80
  256. package/dist/native/index.native83.js +79 -103
  257. package/dist/native/index.native84.js +101 -30
  258. package/dist/native/index.native85.js +32 -6
  259. package/dist/native/index.native86.js +6 -20
  260. package/dist/native/index.native87.js +79 -10
  261. package/dist/native/index.native88.js +20 -19
  262. package/dist/native/index.native89.js +9 -93
  263. package/dist/native/index.native9.js +22 -15
  264. package/dist/native/index.native90.js +18 -19
  265. package/dist/native/index.native91.js +81 -105
  266. package/dist/native/index.native92.js +20 -78
  267. package/dist/native/index.native93.js +117 -9
  268. package/dist/native/index.native94.js +10 -5
  269. package/dist/native/index.native95.js +5 -18
  270. package/dist/native/index.native96.js +18 -28
  271. package/dist/native/index.native97.js +26 -6
  272. package/dist/native/index.native98.js +6 -9
  273. package/dist/native/index.native99.js +11 -13
  274. package/dist/native-types/types.d.ts +2 -1
  275. package/dist/native-types/viem/signAndWrapTypedData.d.ts +17 -0
  276. package/dist/types/types.d.ts +2 -1
  277. package/dist/types/viem/signAndWrapTypedData.d.ts +17 -0
  278. package/dist/web/index.web100.js +8 -11
  279. package/dist/web/index.web101.js +14 -7
  280. package/dist/web/index.web102.js +80 -16
  281. package/dist/web/index.web103.js +11 -79
  282. package/dist/web/index.web104.js +36 -5
  283. package/dist/web/index.web105.js +38 -75
  284. package/dist/web/index.web106.js +81 -0
  285. package/dist/web/index.web18.js +13 -13
  286. package/dist/web/index.web19.js +3 -3
  287. package/dist/web/index.web20.js +69 -23
  288. package/dist/web/index.web21.js +22 -156
  289. package/dist/web/index.web22.js +157 -45
  290. package/dist/web/index.web23.js +43 -245
  291. package/dist/web/index.web24.js +247 -53
  292. package/dist/web/index.web25.js +56 -17
  293. package/dist/web/index.web26.js +15 -21
  294. package/dist/web/index.web27.js +21 -49
  295. package/dist/web/index.web28.js +49 -11
  296. package/dist/web/index.web29.js +8 -11
  297. package/dist/web/index.web30.js +16 -53
  298. package/dist/web/index.web31.js +45 -10
  299. package/dist/web/index.web32.js +14 -2
  300. package/dist/web/index.web33.js +55 -44
  301. package/dist/web/index.web34.js +6 -13
  302. package/dist/web/index.web35.js +21 -8
  303. package/dist/web/index.web36.js +11 -17
  304. package/dist/web/index.web37.js +3 -45
  305. package/dist/web/index.web38.js +3 -13
  306. package/dist/web/index.web39.js +31 -52
  307. package/dist/web/index.web40.js +12 -6
  308. package/dist/web/index.web41.js +4 -21
  309. package/dist/web/index.web42.js +28 -3
  310. package/dist/web/index.web43.js +6 -3
  311. package/dist/web/index.web44.js +24 -34
  312. package/dist/web/index.web45.js +16 -12
  313. package/dist/web/index.web46.js +54 -4
  314. package/dist/web/index.web47.js +20 -25
  315. package/dist/web/index.web48.js +11 -6
  316. package/dist/web/index.web49.js +26 -23
  317. package/dist/web/index.web50.js +42 -16
  318. package/dist/web/index.web51.js +53 -52
  319. package/dist/web/index.web52.js +127 -23
  320. package/dist/web/index.web53.js +12 -11
  321. package/dist/web/index.web54.js +104 -27
  322. package/dist/web/index.web55.js +6 -42
  323. package/dist/web/index.web56.js +3 -56
  324. package/dist/web/index.web57.js +14 -127
  325. package/dist/web/index.web58.js +39 -9
  326. package/dist/web/index.web59.js +74 -100
  327. package/dist/web/index.web60.js +2 -7
  328. package/dist/web/index.web61.js +2 -3
  329. package/dist/web/index.web62.js +12 -14
  330. package/dist/web/index.web63.js +29 -34
  331. package/dist/web/index.web64.js +5 -77
  332. package/dist/web/index.web65.js +35 -2
  333. package/dist/web/index.web66.js +9 -2
  334. package/dist/web/index.web67.js +9 -36
  335. package/dist/web/index.web68.js +11 -6
  336. package/dist/web/index.web69.js +12 -33
  337. package/dist/web/index.web7.js +4 -4
  338. package/dist/web/index.web70.js +18 -8
  339. package/dist/web/index.web71.js +5 -10
  340. package/dist/web/index.web72.js +5 -12
  341. package/dist/web/index.web73.js +10 -13
  342. package/dist/web/index.web74.js +53 -17
  343. package/dist/web/index.web75.js +10 -5
  344. package/dist/web/index.web76.js +2 -5
  345. package/dist/web/index.web77.js +45 -11
  346. package/dist/web/index.web78.js +13 -9
  347. package/dist/web/index.web79.js +2 -104
  348. package/dist/web/index.web80.js +17 -75
  349. package/dist/web/index.web81.js +20 -80
  350. package/dist/web/index.web82.js +79 -20
  351. package/dist/web/index.web83.js +104 -10
  352. package/dist/web/index.web84.js +31 -18
  353. package/dist/web/index.web85.js +7 -94
  354. package/dist/web/index.web86.js +78 -20
  355. package/dist/web/index.web87.js +20 -117
  356. package/dist/web/index.web88.js +10 -2
  357. package/dist/web/index.web89.js +19 -20
  358. package/dist/web/index.web9.js +22 -15
  359. package/dist/web/index.web90.js +93 -19
  360. package/dist/web/index.web91.js +20 -32
  361. package/dist/web/index.web92.js +118 -7
  362. package/dist/web/index.web93.js +9 -12
  363. package/dist/web/index.web94.js +5 -36
  364. package/dist/web/index.web95.js +16 -40
  365. package/dist/web/index.web96.js +28 -18
  366. package/dist/web/index.web97.js +6 -26
  367. package/dist/web/index.web98.js +9 -6
  368. package/dist/web/index.web99.js +13 -11
  369. package/dist/web-types/types.d.ts +2 -1
  370. package/dist/web-types/viem/signAndWrapTypedData.d.ts +17 -0
  371. package/package.json +2 -2
@@ -1,119 +1,95 @@
1
- import { isJWK as p } from "./index.native101.js";
2
- import { decode as m } from "./index.native86.js";
3
- import y from "./index.native102.js";
4
- import { isCryptoKey as S, isKeyObject as K } from "./index.native100.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":
1
+ import { withAlg as n } from "./index.native100.js";
2
+ import c from "./index.native101.js";
3
+ import { isJWK as p, isSecretJWK as a, isPublicJWK as y, isPrivateJWK as f } from "./index.native102.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";
26
15
  break;
27
- default:
28
- throw new TypeError("given KeyObject instance cannot be used for this algorithm");
29
16
  }
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
- ]);
17
+ if (e.use !== i)
18
+ throw new TypeError(`Invalid key for this operation, its "use" must be "${i}" when present`);
38
19
  }
39
- if (e.asymmetricKeyType === "rsa") {
40
- let a;
41
- switch (r) {
42
- case "RSA-OAEP":
43
- a = "SHA-1";
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;
44
29
  break;
45
- case "RS256":
46
- case "PS256":
47
- case "RSA-OAEP-256":
48
- a = "SHA-256";
30
+ case r.startsWith("PBES2"):
31
+ i = "deriveBits";
49
32
  break;
50
- case "RS384":
51
- case "PS384":
52
- case "RSA-OAEP-384":
53
- a = "SHA-384";
33
+ case /^A\d{3}(?:GCM)?(?:KW)?$/.test(r):
34
+ !r.includes("GCM") && r.endsWith("KW") ? i = "unwrapKey" : i = t;
54
35
  break;
55
- case "RS512":
56
- case "PS512":
57
- case "RSA-OAEP-512":
58
- a = "SHA-512";
36
+ case t === "encrypt":
37
+ i = "wrapKey";
38
+ break;
39
+ case t === "decrypt":
40
+ i = r.startsWith("RSA") ? "unwrapKey" : "deriveBits";
59
41
  break;
60
- default:
61
- throw new TypeError("given KeyObject instance cannot be used for this algorithm");
62
42
  }
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"]));
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`);
94
45
  }
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);
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"`);
113
58
  }
59
+ }, m = (r, e, t) => {
114
60
  if (p(e))
115
- return e.k ? m(e.k) : f(e, e, r, !0);
116
- throw new Error("unreachable");
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);
117
93
  };
118
94
  export {
119
95
  d as default
@@ -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.native82.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);
1
+ import { JOSENotSupported as f } from "./index.native28.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`);
17
18
  }
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
- ]);
19
+ return new Set(e.crit);
20
+ };
75
21
  export {
76
- U as Chi,
77
- m as HashMD,
78
- _ as Maj,
79
- B as SHA256_IV,
80
- y as setBigUint64
22
+ w as default
81
23
  };
@@ -1,12 +1,120 @@
1
- import { contracts as o } from "./index.native103.js";
2
- import { formatters as r } from "./index.native104.js";
3
- import { serializers as t } from "./index.native105.js";
4
- const e = {
5
- blockTime: 2e3,
6
- contracts: o,
7
- formatters: r,
8
- serializers: t
1
+ import { isJWK as p } from "./index.native102.js";
2
+ import { decode as m } from "./index.native88.js";
3
+ import y from "./index.native103.js";
4
+ import { isCryptoKey as S, isKeyObject as K } from "./index.native101.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");
9
117
  };
10
118
  export {
11
- e as chainConfig
119
+ d as default
12
120
  };
@@ -1,7 +1,12 @@
1
- const e = 32, s = 4096, t = 131072, l = 761855;
1
+ import { contracts as o } from "./index.native104.js";
2
+ import { formatters as r } from "./index.native105.js";
3
+ import { serializers as t } from "./index.native106.js";
4
+ const e = {
5
+ blockTime: 2e3,
6
+ contracts: o,
7
+ formatters: r,
8
+ serializers: t
9
+ };
2
10
  export {
3
- t as bytesPerBlob,
4
- e as bytesPerFieldElement,
5
- s as fieldElementsPerBlob,
6
- l as maxBytesPerTransaction
11
+ e as chainConfig
7
12
  };
@@ -1,20 +1,7 @@
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 e = 32, s = 4096, t = 131072, l = 761855;
17
2
  export {
18
- a as decodeBase64,
19
- o as encodeBase64
3
+ t as bytesPerBlob,
4
+ e as bytesPerFieldElement,
5
+ s as fieldElementsPerBlob,
6
+ l as maxBytesPerTransaction
20
7
  };
@@ -1,30 +1,20 @@
1
- import { JOSENotSupported as r } from "./index.native27.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
- };
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
+ }
28
17
  export {
29
- S as default
18
+ a as decodeBase64,
19
+ o as encodeBase64
30
20
  };
@@ -1,10 +1,30 @@
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`);
1
+ import { JOSENotSupported as r } from "./index.native28.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`);
6
26
  }
7
27
  };
8
28
  export {
9
- o as default
29
+ S as default
10
30
  };
@@ -1,13 +1,10 @@
1
- import { checkSigCryptoKey as i } from "./index.native106.js";
2
- import o from "./index.native99.js";
3
- const s = async (t, r, e) => {
4
- if (r instanceof Uint8Array) {
5
- if (!t.startsWith("HS"))
6
- throw new TypeError(o(r, "CryptoKey", "KeyObject", "JSON Web Key"));
7
- return crypto.subtle.importKey("raw", r, { hash: `SHA-${t.slice(-3)}`, name: "HMAC" }, !1, [e]);
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`);
8
6
  }
9
- return i(r, t, e), r;
10
7
  };
11
8
  export {
12
- s as default
9
+ o as default
13
10
  };
@@ -1,15 +1,13 @@
1
- function i(n, e, ...o) {
2
- if (o = o.filter(Boolean), o.length > 2) {
3
- const f = o.pop();
4
- n += `one of type ${o.join(", ")}, or ${f}.`;
5
- } else o.length === 2 ? n += `one of type ${o[0]} or ${o[1]}.` : n += `of type ${o[0]}.`;
6
- return e == null ? n += ` Received ${e}` : typeof e == "function" && e.name ? n += ` Received function ${e.name}` : typeof e == "object" && e != null && e.constructor?.name && (n += ` Received an instance of ${e.constructor.name}`), n;
7
- }
8
- const r = (n, ...e) => i("Key must be ", n, ...e);
9
- function t(n, e, ...o) {
10
- return i(`Key for the ${n} algorithm must be `, e, ...o);
11
- }
1
+ import { checkSigCryptoKey as i } from "./index.native107.js";
2
+ import o from "./index.native100.js";
3
+ const s = async (t, r, e) => {
4
+ if (r instanceof Uint8Array) {
5
+ if (!t.startsWith("HS"))
6
+ throw new TypeError(o(r, "CryptoKey", "KeyObject", "JSON Web Key"));
7
+ return crypto.subtle.importKey("raw", r, { hash: `SHA-${t.slice(-3)}`, name: "HMAC" }, !1, [e]);
8
+ }
9
+ return i(r, t, e), r;
10
+ };
12
11
  export {
13
- r as default,
14
- t as withAlg
12
+ s as default
15
13
  };
@@ -1,15 +1,12 @@
1
- function i(n, e, ...o) {
2
- if (o = o.filter(Boolean), o.length > 2) {
3
- const f = o.pop();
4
- n += `one of type ${o.join(", ")}, or ${f}.`;
5
- } else o.length === 2 ? n += `one of type ${o[0]} or ${o[1]}.` : n += `of type ${o[0]}.`;
6
- return e == null ? n += ` Received ${e}` : typeof e == "function" && e.name ? n += ` Received function ${e.name}` : typeof e == "object" && e != null && e.constructor?.name && (n += ` Received an instance of ${e.constructor.name}`), n;
1
+ function e(t) {
2
+ return t?.[Symbol.toStringTag] === "CryptoKey";
7
3
  }
8
- const r = (n, ...e) => i("Key must be ", n, ...e);
9
- function t(n, e, ...o) {
10
- return i(`Key for the ${n} algorithm must be `, e, ...o);
4
+ function r(t) {
5
+ return t?.[Symbol.toStringTag] === "KeyObject";
11
6
  }
7
+ const n = (t) => e(t) || r(t);
12
8
  export {
13
- r as default,
14
- t as withAlg
9
+ n as default,
10
+ e as isCryptoKey,
11
+ r as isKeyObject
15
12
  };