@coinbase/cdp-core 0.0.108 → 0.0.109

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 (744) hide show
  1. package/dist/esm/index.web.js +129 -127
  2. package/dist/esm/index.web10.js +5 -5
  3. package/dist/esm/index.web100.js +41 -22
  4. package/dist/esm/index.web101.js +25 -15
  5. package/dist/esm/index.web102.js +13 -23
  6. package/dist/esm/index.web103.js +23 -20
  7. package/dist/esm/index.web104.js +21 -16
  8. package/dist/esm/index.web105.js +16 -29
  9. package/dist/esm/index.web106.js +29 -40
  10. package/dist/esm/index.web107.js +41 -49
  11. package/dist/esm/index.web108.js +47 -80
  12. package/dist/esm/index.web109.js +79 -23
  13. package/dist/esm/index.web11.js +1 -1
  14. package/dist/esm/index.web110.js +22 -156
  15. package/dist/esm/index.web111.js +157 -45
  16. package/dist/esm/index.web112.js +48 -28
  17. package/dist/esm/index.web113.js +26 -71
  18. package/dist/esm/index.web114.js +71 -7
  19. package/dist/esm/index.web115.js +6 -93
  20. package/dist/esm/index.web116.js +74 -115
  21. package/dist/esm/index.web117.js +110 -42
  22. package/dist/esm/index.web118.js +67 -25
  23. package/dist/esm/index.web119.js +25 -22
  24. package/dist/esm/index.web12.js +1 -1
  25. package/dist/esm/index.web120.js +23 -23
  26. package/dist/esm/index.web121.js +24 -65
  27. package/dist/esm/index.web122.js +61 -47
  28. package/dist/esm/index.web123.js +44 -14
  29. package/dist/esm/index.web124.js +20 -152
  30. package/dist/esm/index.web125.js +149 -373
  31. package/dist/esm/index.web126.js +19 -2
  32. package/dist/esm/index.web127.js +20 -63
  33. package/dist/esm/index.web128.js +37 -351
  34. package/dist/esm/index.web129.js +374 -26
  35. package/dist/esm/index.web13.js +3 -3
  36. package/dist/esm/index.web130.js +2 -31
  37. package/dist/esm/index.web131.js +63 -14
  38. package/dist/esm/index.web132.js +360 -18
  39. package/dist/esm/index.web133.js +28 -50
  40. package/dist/esm/index.web134.js +28 -944
  41. package/dist/esm/index.web135.js +945 -2
  42. package/dist/esm/index.web136.js +2 -50
  43. package/dist/esm/index.web137.js +49 -26
  44. package/dist/esm/index.web138.js +27 -5
  45. package/dist/esm/index.web139.js +50 -43
  46. package/dist/esm/index.web14.js +1 -1
  47. package/dist/esm/index.web140.js +10 -12
  48. package/dist/esm/index.web141.js +2 -12
  49. package/dist/esm/index.web142.js +45 -5
  50. package/dist/esm/index.web143.js +13 -14
  51. package/dist/esm/index.web144.js +4 -28
  52. package/dist/esm/index.web145.js +5 -8
  53. package/dist/esm/index.web146.js +47 -3
  54. package/dist/esm/index.web147.js +11 -27
  55. package/dist/esm/index.web148.js +11 -8
  56. package/dist/esm/index.web149.js +2 -8
  57. package/dist/esm/index.web15.js +1 -1
  58. package/dist/esm/index.web150.js +2 -81
  59. package/dist/esm/index.web151.js +13 -28
  60. package/dist/esm/index.web152.js +55 -3
  61. package/dist/esm/index.web153.js +6 -15
  62. package/dist/esm/index.web154.js +21 -4
  63. package/dist/esm/index.web155.js +17 -14
  64. package/dist/esm/index.web156.js +43 -17
  65. package/dist/esm/index.web157.js +3 -61
  66. package/dist/esm/index.web158.js +3 -17
  67. package/dist/esm/index.web159.js +32 -21
  68. package/dist/esm/index.web16.js +1 -1
  69. package/dist/esm/index.web160.js +12 -8
  70. package/dist/esm/index.web161.js +4 -42
  71. package/dist/esm/index.web162.js +28 -7
  72. package/dist/esm/index.web163.js +6 -20
  73. package/dist/esm/index.web164.js +32 -54
  74. package/dist/esm/index.web165.js +12 -10
  75. package/dist/esm/index.web166.js +56 -2
  76. package/dist/esm/index.web167.js +43 -45
  77. package/dist/esm/index.web168.js +127 -13
  78. package/dist/esm/index.web169.js +104 -13
  79. package/dist/esm/index.web17.js +1 -1
  80. package/dist/esm/index.web170.js +6 -55
  81. package/dist/esm/index.web171.js +3 -7
  82. package/dist/esm/index.web172.js +76 -19
  83. package/dist/esm/index.web173.js +2 -18
  84. package/dist/esm/index.web174.js +2 -46
  85. package/dist/esm/index.web175.js +37 -3
  86. package/dist/esm/index.web176.js +6 -3
  87. package/dist/esm/index.web177.js +30 -30
  88. package/dist/esm/index.web178.js +14 -12
  89. package/dist/esm/index.web179.js +34 -4
  90. package/dist/esm/index.web18.js +3 -3
  91. package/dist/esm/index.web180.js +18 -28
  92. package/dist/esm/index.web181.js +8 -6
  93. package/dist/esm/index.web182.js +10 -32
  94. package/dist/esm/index.web183.js +11 -12
  95. package/dist/esm/index.web184.js +13 -55
  96. package/dist/esm/index.web185.js +5 -42
  97. package/dist/esm/index.web186.js +4 -127
  98. package/dist/esm/index.web187.js +10 -104
  99. package/dist/esm/index.web188.js +14 -6
  100. package/dist/esm/index.web189.js +29 -3
  101. package/dist/esm/index.web19.js +3 -3
  102. package/dist/esm/index.web190.js +7 -78
  103. package/dist/esm/index.web191.js +4 -2
  104. package/dist/esm/index.web192.js +29 -2
  105. package/dist/esm/index.web193.js +8 -37
  106. package/dist/esm/index.web194.js +7 -6
  107. package/dist/esm/index.web195.js +79 -33
  108. package/dist/esm/index.web196.js +28 -14
  109. package/dist/esm/index.web197.js +3 -34
  110. package/dist/esm/index.web198.js +15 -18
  111. package/dist/esm/index.web199.js +4 -8
  112. package/dist/esm/index.web2.js +2 -2
  113. package/dist/esm/index.web20.js +7 -7
  114. package/dist/esm/index.web200.js +14 -10
  115. package/dist/esm/index.web201.js +19 -11
  116. package/dist/esm/index.web202.js +60 -12
  117. package/dist/esm/index.web203.js +17 -5
  118. package/dist/esm/index.web204.js +24 -5
  119. package/dist/esm/index.web205.js +8 -10
  120. package/dist/esm/index.web206.js +43 -2
  121. package/dist/esm/index.web207.js +8 -2
  122. package/dist/esm/index.web208.js +19 -102
  123. package/dist/esm/index.web209.js +19 -77
  124. package/dist/esm/index.web21.js +1 -1
  125. package/dist/esm/index.web210.js +10 -79
  126. package/dist/esm/index.web211.js +20 -2
  127. package/dist/esm/index.web212.js +89 -104
  128. package/dist/esm/index.web213.js +21 -2
  129. package/dist/esm/index.web214.js +118 -8
  130. package/dist/esm/index.web215.js +109 -2
  131. package/dist/esm/index.web216.js +2 -369
  132. package/dist/esm/index.web217.js +2 -827
  133. package/dist/esm/index.web218.js +103 -38
  134. package/dist/esm/index.web219.js +79 -2
  135. package/dist/esm/index.web22.js +1 -1
  136. package/dist/esm/index.web220.js +78 -69
  137. package/dist/esm/index.web221.js +7 -34
  138. package/dist/esm/index.web222.js +2 -15
  139. package/dist/esm/index.web223.js +366 -18
  140. package/dist/esm/index.web224.js +827 -10
  141. package/dist/esm/index.web225.js +39 -20
  142. package/dist/esm/index.web226.js +2 -94
  143. package/dist/esm/index.web227.js +70 -21
  144. package/dist/esm/index.web228.js +34 -117
  145. package/dist/esm/index.web229.js +12 -18
  146. package/dist/esm/index.web23.js +1 -1
  147. package/dist/esm/index.web230.js +21 -2
  148. package/dist/esm/index.web231.js +2 -20
  149. package/dist/esm/index.web232.js +18 -31
  150. package/dist/esm/index.web233.js +32 -6
  151. package/dist/esm/index.web234.js +6 -46
  152. package/dist/esm/index.web236.js +47 -2
  153. package/dist/esm/index.web237.js +18 -2
  154. package/dist/esm/index.web238.js +28 -2
  155. package/dist/esm/index.web239.js +8 -18
  156. package/dist/esm/index.web24.js +1 -1
  157. package/dist/esm/index.web240.js +9 -26
  158. package/dist/esm/index.web241.js +13 -8
  159. package/dist/esm/index.web242.js +10 -11
  160. package/dist/esm/index.web243.js +15 -11
  161. package/dist/esm/index.web244.js +80 -9
  162. package/dist/esm/index.web245.js +2 -17
  163. package/dist/esm/index.web246.js +2 -81
  164. package/dist/esm/index.web247.js +2 -5
  165. package/dist/esm/index.web248.js +5 -15
  166. package/dist/esm/index.web25.js +1 -1
  167. package/dist/esm/index.web250.js +17 -0
  168. package/dist/esm/index.web26.js +1 -1
  169. package/dist/esm/index.web27.js +1 -1
  170. package/dist/esm/index.web28.js +5 -5
  171. package/dist/esm/index.web29.js +6 -6
  172. package/dist/esm/index.web3.js +1 -1
  173. package/dist/esm/index.web30.js +5 -5
  174. package/dist/esm/index.web31.js +5 -5
  175. package/dist/esm/index.web32.js +5 -5
  176. package/dist/esm/index.web33.js +5 -5
  177. package/dist/esm/index.web34.js +7 -7
  178. package/dist/esm/index.web35.js +5 -5
  179. package/dist/esm/index.web36.js +5 -5
  180. package/dist/esm/index.web37.js +2 -2
  181. package/dist/esm/index.web38.js +6 -6
  182. package/dist/esm/index.web39.js +6 -6
  183. package/dist/esm/index.web4.js +1 -1
  184. package/dist/esm/index.web40.js +6 -6
  185. package/dist/esm/index.web41.js +2 -2
  186. package/dist/esm/index.web42.js +5 -5
  187. package/dist/esm/index.web43.js +26 -5
  188. package/dist/esm/index.web44.js +7 -44
  189. package/dist/esm/index.web45.js +43 -16
  190. package/dist/esm/index.web46.js +15 -19
  191. package/dist/esm/index.web47.js +8 -8
  192. package/dist/esm/index.web48.js +15 -49
  193. package/dist/esm/index.web49.js +49 -15
  194. package/dist/esm/index.web50.js +14 -21
  195. package/dist/esm/index.web51.js +25 -29
  196. package/dist/esm/index.web52.js +26 -53
  197. package/dist/esm/index.web53.js +53 -29
  198. package/dist/esm/index.web54.js +32 -12
  199. package/dist/esm/index.web55.js +14 -25
  200. package/dist/esm/index.web56.js +25 -22
  201. package/dist/esm/index.web57.js +21 -9
  202. package/dist/esm/index.web58.js +9 -15
  203. package/dist/esm/index.web59.js +12 -19
  204. package/dist/esm/index.web6.js +1 -1
  205. package/dist/esm/index.web60.js +22 -10
  206. package/dist/esm/index.web61.js +10 -16
  207. package/dist/esm/index.web62.js +15 -31
  208. package/dist/esm/index.web63.js +22 -24
  209. package/dist/esm/index.web64.js +34 -38
  210. package/dist/esm/index.web65.js +34 -32
  211. package/dist/esm/index.web66.js +24 -26
  212. package/dist/esm/index.web67.js +33 -34
  213. package/dist/esm/index.web68.js +39 -115
  214. package/dist/esm/index.web69.js +114 -46
  215. package/dist/esm/index.web70.js +48 -85
  216. package/dist/esm/index.web71.js +85 -19
  217. package/dist/esm/index.web72.js +17 -8
  218. package/dist/esm/index.web73.js +11 -36
  219. package/dist/esm/index.web74.js +36 -31
  220. package/dist/esm/index.web75.js +24 -58
  221. package/dist/esm/index.web76.js +62 -22
  222. package/dist/esm/index.web77.js +23 -15
  223. package/dist/esm/index.web78.js +15 -33
  224. package/dist/esm/index.web79.js +33 -6
  225. package/dist/esm/index.web80.js +7 -19
  226. package/dist/esm/index.web81.js +16 -45
  227. package/dist/esm/index.web82.js +48 -40
  228. package/dist/esm/index.web83.js +41 -18
  229. package/dist/esm/index.web84.js +17 -332
  230. package/dist/esm/index.web85.js +327 -13
  231. package/dist/esm/index.web86.js +18 -132
  232. package/dist/esm/index.web87.js +132 -86
  233. package/dist/esm/index.web88.js +86 -6
  234. package/dist/esm/index.web89.js +6 -55
  235. package/dist/esm/index.web90.js +47 -148
  236. package/dist/esm/index.web91.js +149 -60
  237. package/dist/esm/index.web92.js +67 -34
  238. package/dist/esm/index.web93.js +35 -90
  239. package/dist/esm/index.web94.js +80 -33
  240. package/dist/esm/index.web95.js +41 -30
  241. package/dist/esm/index.web96.js +31 -17
  242. package/dist/esm/index.web97.js +18 -45
  243. package/dist/esm/index.web98.js +45 -3
  244. package/dist/esm/index.web99.js +3 -44
  245. package/dist/native/index.native.js +127 -125
  246. package/dist/native/index.native100.js +45 -3
  247. package/dist/native/index.native101.js +3 -44
  248. package/dist/native/index.native102.js +41 -22
  249. package/dist/native/index.native103.js +25 -15
  250. package/dist/native/index.native104.js +13 -23
  251. package/dist/native/index.native105.js +23 -20
  252. package/dist/native/index.native106.js +21 -16
  253. package/dist/native/index.native107.js +16 -29
  254. package/dist/native/index.native108.js +29 -40
  255. package/dist/native/index.native109.js +41 -49
  256. package/dist/native/index.native110.js +47 -79
  257. package/dist/native/index.native111.js +78 -23
  258. package/dist/native/index.native112.js +22 -156
  259. package/dist/native/index.native113.js +157 -45
  260. package/dist/native/index.native114.js +48 -22
  261. package/dist/native/index.native115.js +20 -71
  262. package/dist/native/index.native116.js +71 -7
  263. package/dist/native/index.native117.js +6 -92
  264. package/dist/native/index.native118.js +73 -115
  265. package/dist/native/index.native119.js +110 -41
  266. package/dist/native/index.native12.js +6 -6
  267. package/dist/native/index.native120.js +66 -25
  268. package/dist/native/index.native121.js +25 -22
  269. package/dist/native/index.native122.js +23 -23
  270. package/dist/native/index.native123.js +24 -65
  271. package/dist/native/index.native124.js +61 -47
  272. package/dist/native/index.native125.js +44 -14
  273. package/dist/native/index.native126.js +20 -152
  274. package/dist/native/index.native127.js +149 -86
  275. package/dist/native/index.native128.js +3 -3
  276. package/dist/native/index.native129.js +2 -31
  277. package/dist/native/index.native13.js +1 -1
  278. package/dist/native/index.native130.js +65 -28
  279. package/dist/native/index.native131.js +360 -12
  280. package/dist/native/index.native132.js +28 -22
  281. package/dist/native/index.native133.js +28 -50
  282. package/dist/native/index.native134.js +92 -2
  283. package/dist/native/index.native135.js +14 -63
  284. package/dist/native/index.native136.js +18 -360
  285. package/dist/native/index.native137.js +50 -944
  286. package/dist/native/index.native138.js +5 -2
  287. package/dist/native/index.native139.js +11 -48
  288. package/dist/native/index.native14.js +1 -1
  289. package/dist/native/index.native140.js +11 -26
  290. package/dist/native/index.native141.js +945 -5
  291. package/dist/native/index.native142.js +2 -48
  292. package/dist/native/index.native143.js +48 -11
  293. package/dist/native/index.native144.js +26 -11
  294. package/dist/native/index.native146.js +1 -1
  295. package/dist/native/index.native147.js +2 -2
  296. package/dist/native/index.native148.js +3 -3
  297. package/dist/native/index.native149.js +1 -1
  298. package/dist/native/index.native15.js +3 -3
  299. package/dist/native/index.native151.js +3 -3
  300. package/dist/native/index.native152.js +2 -2
  301. package/dist/native/index.native153.js +1 -1
  302. package/dist/native/index.native154.js +3 -3
  303. package/dist/native/index.native155.js +3 -3
  304. package/dist/native/index.native157.js +2 -2
  305. package/dist/native/index.native159.js +2 -2
  306. package/dist/native/index.native16.js +1 -1
  307. package/dist/native/index.native160.js +2 -2
  308. package/dist/native/index.native161.js +3 -3
  309. package/dist/native/index.native162.js +2 -2
  310. package/dist/native/index.native163.js +2 -2
  311. package/dist/native/index.native164.js +2 -2
  312. package/dist/native/index.native165.js +3 -3
  313. package/dist/native/index.native166.js +1 -1
  314. package/dist/native/index.native167.js +2 -2
  315. package/dist/native/index.native168.js +7 -7
  316. package/dist/native/index.native17.js +1 -1
  317. package/dist/native/index.native173.js +5 -5
  318. package/dist/native/index.native174.js +48 -2
  319. package/dist/native/index.native175.js +2 -2
  320. package/dist/native/index.native176.js +2 -14
  321. package/dist/native/index.native177.js +13 -55
  322. package/dist/native/index.native178.js +55 -6
  323. package/dist/native/index.native179.js +6 -21
  324. package/dist/native/index.native18.js +1 -1
  325. package/dist/native/index.native180.js +20 -16
  326. package/dist/native/index.native181.js +16 -44
  327. package/dist/native/index.native182.js +45 -3
  328. package/dist/native/index.native183.js +3 -3
  329. package/dist/native/index.native184.js +3 -34
  330. package/dist/native/index.native185.js +32 -10
  331. package/dist/native/index.native186.js +12 -4
  332. package/dist/native/index.native187.js +4 -28
  333. package/dist/native/index.native188.js +28 -6
  334. package/dist/native/index.native189.js +6 -32
  335. package/dist/native/index.native19.js +1 -1
  336. package/dist/native/index.native190.js +31 -11
  337. package/dist/native/index.native191.js +10 -53
  338. package/dist/native/index.native192.js +54 -41
  339. package/dist/native/index.native193.js +42 -127
  340. package/dist/native/index.native194.js +125 -102
  341. package/dist/native/index.native195.js +104 -6
  342. package/dist/native/index.native196.js +7 -3
  343. package/dist/native/index.native197.js +3 -79
  344. package/dist/native/index.native198.js +79 -2
  345. package/dist/native/index.native199.js +2 -2
  346. package/dist/native/index.native2.js +2 -2
  347. package/dist/native/index.native20.js +3 -3
  348. package/dist/native/index.native200.js +2 -38
  349. package/dist/native/index.native201.js +36 -5
  350. package/dist/native/index.native202.js +5 -33
  351. package/dist/native/index.native203.js +34 -14
  352. package/dist/native/index.native204.js +14 -34
  353. package/dist/native/index.native205.js +33 -17
  354. package/dist/native/index.native206.js +18 -8
  355. package/dist/native/index.native207.js +8 -10
  356. package/dist/native/index.native208.js +10 -11
  357. package/dist/native/index.native209.js +11 -13
  358. package/dist/native/index.native21.js +3 -3
  359. package/dist/native/index.native210.js +13 -5
  360. package/dist/native/index.native211.js +6 -5
  361. package/dist/native/index.native212.js +5 -11
  362. package/dist/native/index.native213.js +10 -103
  363. package/dist/native/index.native214.js +2 -79
  364. package/dist/native/index.native215.js +108 -78
  365. package/dist/native/index.native216.js +2 -8
  366. package/dist/native/index.native217.js +104 -2
  367. package/dist/native/index.native218.js +71 -361
  368. package/dist/native/index.native219.js +78 -826
  369. package/dist/native/index.native22.js +7 -7
  370. package/dist/native/index.native220.js +20 -38
  371. package/dist/native/index.native221.js +10 -2
  372. package/dist/native/index.native222.js +20 -70
  373. package/dist/native/index.native223.js +93 -34
  374. package/dist/native/index.native224.js +20 -14
  375. package/dist/native/index.native225.js +117 -20
  376. package/dist/native/index.native226.js +39 -10
  377. package/dist/native/index.native227.js +2 -20
  378. package/dist/native/index.native228.js +70 -94
  379. package/dist/native/index.native229.js +35 -21
  380. package/dist/native/index.native23.js +1 -1
  381. package/dist/native/index.native230.js +13 -116
  382. package/dist/native/index.native231.js +8 -2
  383. package/dist/native/index.native232.js +2 -109
  384. package/dist/native/index.native233.js +369 -2
  385. package/dist/native/index.native234.js +826 -20
  386. package/dist/native/index.native235.js +47 -2
  387. package/dist/native/index.native236.js +18 -17
  388. package/dist/native/index.native237.js +2 -33
  389. package/dist/native/index.native238.js +19 -6
  390. package/dist/native/index.native239.js +30 -44
  391. package/dist/native/index.native24.js +1 -1
  392. package/dist/native/index.native240.js +6 -3
  393. package/dist/native/index.native241.js +4 -2
  394. package/dist/native/index.native242.js +18 -2
  395. package/dist/native/index.native243.js +28 -2
  396. package/dist/native/index.native244.js +8 -18
  397. package/dist/native/index.native245.js +9 -26
  398. package/dist/native/index.native246.js +13 -8
  399. package/dist/native/index.native247.js +10 -11
  400. package/dist/native/index.native248.js +15 -11
  401. package/dist/native/index.native249.js +80 -9
  402. package/dist/native/index.native25.js +1 -1
  403. package/dist/native/index.native250.js +2 -17
  404. package/dist/native/index.native251.js +2 -81
  405. package/dist/native/index.native252.js +2 -5
  406. package/dist/native/index.native253.js +5 -15
  407. package/dist/native/index.native254.js +14 -78
  408. package/dist/native/index.native255.js +81 -0
  409. package/dist/native/index.native26.js +1 -1
  410. package/dist/native/index.native27.js +1 -1
  411. package/dist/native/index.native28.js +1 -1
  412. package/dist/native/index.native29.js +1 -1
  413. package/dist/native/index.native3.js +1 -1
  414. package/dist/native/index.native30.js +4 -4
  415. package/dist/native/index.native31.js +5 -5
  416. package/dist/native/index.native32.js +4 -4
  417. package/dist/native/index.native33.js +4 -4
  418. package/dist/native/index.native34.js +4 -4
  419. package/dist/native/index.native35.js +4 -4
  420. package/dist/native/index.native36.js +6 -6
  421. package/dist/native/index.native37.js +4 -4
  422. package/dist/native/index.native38.js +4 -4
  423. package/dist/native/index.native39.js +2 -2
  424. package/dist/native/index.native4.js +2 -2
  425. package/dist/native/index.native40.js +5 -5
  426. package/dist/native/index.native41.js +5 -5
  427. package/dist/native/index.native42.js +5 -5
  428. package/dist/native/index.native43.js +2 -2
  429. package/dist/native/index.native44.js +4 -4
  430. package/dist/native/index.native45.js +25 -5
  431. package/dist/native/index.native46.js +7 -44
  432. package/dist/native/index.native47.js +43 -16
  433. package/dist/native/index.native48.js +15 -19
  434. package/dist/native/index.native49.js +8 -8
  435. package/dist/native/index.native5.js +2 -2
  436. package/dist/native/index.native50.js +15 -48
  437. package/dist/native/index.native51.js +48 -15
  438. package/dist/native/index.native52.js +14 -21
  439. package/dist/native/index.native53.js +25 -29
  440. package/dist/native/index.native54.js +26 -53
  441. package/dist/native/index.native55.js +53 -29
  442. package/dist/native/index.native56.js +32 -12
  443. package/dist/native/index.native57.js +14 -25
  444. package/dist/native/index.native58.js +25 -22
  445. package/dist/native/index.native59.js +21 -9
  446. package/dist/native/index.native6.js +1 -1
  447. package/dist/native/index.native60.js +9 -15
  448. package/dist/native/index.native61.js +12 -19
  449. package/dist/native/index.native62.js +22 -10
  450. package/dist/native/index.native63.js +10 -16
  451. package/dist/native/index.native64.js +15 -31
  452. package/dist/native/index.native65.js +22 -24
  453. package/dist/native/index.native66.js +34 -37
  454. package/dist/native/index.native67.js +32 -30
  455. package/dist/native/index.native68.js +23 -25
  456. package/dist/native/index.native69.js +32 -33
  457. package/dist/native/index.native7.js +2 -2
  458. package/dist/native/index.native70.js +38 -115
  459. package/dist/native/index.native71.js +114 -46
  460. package/dist/native/index.native72.js +48 -84
  461. package/dist/native/index.native73.js +84 -19
  462. package/dist/native/index.native74.js +17 -8
  463. package/dist/native/index.native75.js +11 -36
  464. package/dist/native/index.native76.js +36 -31
  465. package/dist/native/index.native77.js +24 -58
  466. package/dist/native/index.native78.js +62 -22
  467. package/dist/native/index.native79.js +23 -15
  468. package/dist/native/index.native80.js +15 -33
  469. package/dist/native/index.native81.js +33 -6
  470. package/dist/native/index.native82.js +7 -62
  471. package/dist/native/index.native83.js +61 -18
  472. package/dist/native/index.native84.js +16 -45
  473. package/dist/native/index.native85.js +48 -40
  474. package/dist/native/index.native86.js +37 -329
  475. package/dist/native/index.native87.js +327 -13
  476. package/dist/native/index.native88.js +18 -131
  477. package/dist/native/index.native89.js +131 -86
  478. package/dist/native/index.native90.js +86 -6
  479. package/dist/native/index.native91.js +6 -54
  480. package/dist/native/index.native92.js +46 -147
  481. package/dist/native/index.native93.js +148 -34
  482. package/dist/native/index.native94.js +41 -8
  483. package/dist/native/index.native95.js +7 -7
  484. package/dist/native/index.native96.js +5 -5
  485. package/dist/native/index.native97.js +7 -30
  486. package/dist/native/index.native98.js +31 -17
  487. package/dist/native/index.native99.js +18 -45
  488. package/dist/native-types/actions/enableSpendPermissions.d.ts +39 -0
  489. package/dist/native-types/index.d.ts +1 -0
  490. package/dist/native-types/index.native.d.ts +1 -0
  491. package/dist/native-types/index.web.d.ts +1 -0
  492. package/dist/types/actions/enableSpendPermissions.d.ts +39 -0
  493. package/dist/types/index.d.ts +1 -0
  494. package/dist/types/index.native.d.ts +1 -0
  495. package/dist/types/index.web.d.ts +1 -0
  496. package/dist/web/index.web.js +129 -127
  497. package/dist/web/index.web10.js +5 -5
  498. package/dist/web/index.web100.js +41 -22
  499. package/dist/web/index.web101.js +25 -15
  500. package/dist/web/index.web102.js +13 -23
  501. package/dist/web/index.web103.js +23 -20
  502. package/dist/web/index.web104.js +21 -16
  503. package/dist/web/index.web105.js +16 -29
  504. package/dist/web/index.web106.js +29 -40
  505. package/dist/web/index.web107.js +41 -49
  506. package/dist/web/index.web108.js +47 -80
  507. package/dist/web/index.web109.js +79 -23
  508. package/dist/web/index.web11.js +1 -1
  509. package/dist/web/index.web110.js +22 -156
  510. package/dist/web/index.web111.js +157 -45
  511. package/dist/web/index.web112.js +48 -28
  512. package/dist/web/index.web113.js +26 -71
  513. package/dist/web/index.web114.js +71 -7
  514. package/dist/web/index.web115.js +6 -93
  515. package/dist/web/index.web116.js +74 -115
  516. package/dist/web/index.web117.js +110 -42
  517. package/dist/web/index.web118.js +67 -25
  518. package/dist/web/index.web119.js +25 -22
  519. package/dist/web/index.web12.js +1 -1
  520. package/dist/web/index.web120.js +23 -23
  521. package/dist/web/index.web121.js +24 -65
  522. package/dist/web/index.web122.js +61 -47
  523. package/dist/web/index.web123.js +44 -14
  524. package/dist/web/index.web124.js +20 -152
  525. package/dist/web/index.web125.js +149 -373
  526. package/dist/web/index.web126.js +19 -2
  527. package/dist/web/index.web127.js +20 -63
  528. package/dist/web/index.web128.js +37 -351
  529. package/dist/web/index.web129.js +374 -26
  530. package/dist/web/index.web13.js +3 -3
  531. package/dist/web/index.web130.js +2 -31
  532. package/dist/web/index.web131.js +63 -14
  533. package/dist/web/index.web132.js +360 -18
  534. package/dist/web/index.web133.js +28 -50
  535. package/dist/web/index.web134.js +28 -944
  536. package/dist/web/index.web135.js +945 -2
  537. package/dist/web/index.web136.js +2 -50
  538. package/dist/web/index.web137.js +49 -26
  539. package/dist/web/index.web138.js +27 -5
  540. package/dist/web/index.web139.js +50 -43
  541. package/dist/web/index.web14.js +1 -1
  542. package/dist/web/index.web140.js +10 -12
  543. package/dist/web/index.web141.js +2 -12
  544. package/dist/web/index.web142.js +45 -5
  545. package/dist/web/index.web143.js +13 -14
  546. package/dist/web/index.web144.js +4 -28
  547. package/dist/web/index.web145.js +5 -8
  548. package/dist/web/index.web146.js +47 -3
  549. package/dist/web/index.web147.js +11 -27
  550. package/dist/web/index.web148.js +11 -8
  551. package/dist/web/index.web149.js +2 -8
  552. package/dist/web/index.web15.js +1 -1
  553. package/dist/web/index.web150.js +2 -81
  554. package/dist/web/index.web151.js +13 -28
  555. package/dist/web/index.web152.js +55 -3
  556. package/dist/web/index.web153.js +6 -15
  557. package/dist/web/index.web154.js +21 -4
  558. package/dist/web/index.web155.js +17 -14
  559. package/dist/web/index.web156.js +43 -17
  560. package/dist/web/index.web157.js +3 -61
  561. package/dist/web/index.web158.js +3 -17
  562. package/dist/web/index.web159.js +32 -21
  563. package/dist/web/index.web16.js +1 -1
  564. package/dist/web/index.web160.js +12 -8
  565. package/dist/web/index.web161.js +4 -42
  566. package/dist/web/index.web162.js +28 -7
  567. package/dist/web/index.web163.js +6 -20
  568. package/dist/web/index.web164.js +32 -54
  569. package/dist/web/index.web165.js +12 -10
  570. package/dist/web/index.web166.js +56 -2
  571. package/dist/web/index.web167.js +43 -45
  572. package/dist/web/index.web168.js +127 -13
  573. package/dist/web/index.web169.js +104 -13
  574. package/dist/web/index.web17.js +1 -1
  575. package/dist/web/index.web170.js +6 -55
  576. package/dist/web/index.web171.js +3 -7
  577. package/dist/web/index.web172.js +76 -19
  578. package/dist/web/index.web173.js +2 -18
  579. package/dist/web/index.web174.js +2 -46
  580. package/dist/web/index.web175.js +37 -3
  581. package/dist/web/index.web176.js +6 -3
  582. package/dist/web/index.web177.js +30 -30
  583. package/dist/web/index.web178.js +14 -12
  584. package/dist/web/index.web179.js +34 -4
  585. package/dist/web/index.web18.js +3 -3
  586. package/dist/web/index.web180.js +18 -28
  587. package/dist/web/index.web181.js +8 -6
  588. package/dist/web/index.web182.js +10 -32
  589. package/dist/web/index.web183.js +11 -12
  590. package/dist/web/index.web184.js +13 -55
  591. package/dist/web/index.web185.js +5 -42
  592. package/dist/web/index.web186.js +4 -127
  593. package/dist/web/index.web187.js +10 -104
  594. package/dist/web/index.web188.js +14 -6
  595. package/dist/web/index.web189.js +29 -3
  596. package/dist/web/index.web19.js +3 -3
  597. package/dist/web/index.web190.js +7 -78
  598. package/dist/web/index.web191.js +4 -2
  599. package/dist/web/index.web192.js +29 -2
  600. package/dist/web/index.web193.js +8 -37
  601. package/dist/web/index.web194.js +7 -6
  602. package/dist/web/index.web195.js +79 -33
  603. package/dist/web/index.web196.js +28 -14
  604. package/dist/web/index.web197.js +3 -34
  605. package/dist/web/index.web198.js +15 -18
  606. package/dist/web/index.web199.js +4 -8
  607. package/dist/web/index.web2.js +2 -2
  608. package/dist/web/index.web20.js +7 -7
  609. package/dist/web/index.web200.js +14 -10
  610. package/dist/web/index.web201.js +19 -11
  611. package/dist/web/index.web202.js +60 -12
  612. package/dist/web/index.web203.js +17 -5
  613. package/dist/web/index.web204.js +24 -5
  614. package/dist/web/index.web205.js +8 -10
  615. package/dist/web/index.web206.js +43 -2
  616. package/dist/web/index.web207.js +8 -2
  617. package/dist/web/index.web208.js +19 -102
  618. package/dist/web/index.web209.js +19 -77
  619. package/dist/web/index.web21.js +1 -1
  620. package/dist/web/index.web210.js +10 -79
  621. package/dist/web/index.web211.js +20 -2
  622. package/dist/web/index.web212.js +89 -104
  623. package/dist/web/index.web213.js +21 -2
  624. package/dist/web/index.web214.js +118 -8
  625. package/dist/web/index.web215.js +109 -2
  626. package/dist/web/index.web216.js +2 -369
  627. package/dist/web/index.web217.js +2 -827
  628. package/dist/web/index.web218.js +103 -38
  629. package/dist/web/index.web219.js +79 -2
  630. package/dist/web/index.web22.js +1 -1
  631. package/dist/web/index.web220.js +78 -69
  632. package/dist/web/index.web221.js +7 -34
  633. package/dist/web/index.web222.js +2 -15
  634. package/dist/web/index.web223.js +366 -18
  635. package/dist/web/index.web224.js +827 -10
  636. package/dist/web/index.web225.js +39 -20
  637. package/dist/web/index.web226.js +2 -94
  638. package/dist/web/index.web227.js +70 -21
  639. package/dist/web/index.web228.js +34 -117
  640. package/dist/web/index.web229.js +12 -18
  641. package/dist/web/index.web23.js +1 -1
  642. package/dist/web/index.web230.js +21 -2
  643. package/dist/web/index.web231.js +2 -20
  644. package/dist/web/index.web232.js +18 -31
  645. package/dist/web/index.web233.js +32 -6
  646. package/dist/web/index.web234.js +6 -46
  647. package/dist/web/index.web236.js +47 -2
  648. package/dist/web/index.web237.js +18 -2
  649. package/dist/web/index.web238.js +28 -2
  650. package/dist/web/index.web239.js +8 -18
  651. package/dist/web/index.web24.js +1 -1
  652. package/dist/web/index.web240.js +9 -26
  653. package/dist/web/index.web241.js +13 -8
  654. package/dist/web/index.web242.js +10 -11
  655. package/dist/web/index.web243.js +15 -11
  656. package/dist/web/index.web244.js +80 -9
  657. package/dist/web/index.web245.js +2 -17
  658. package/dist/web/index.web246.js +2 -81
  659. package/dist/web/index.web247.js +2 -5
  660. package/dist/web/index.web248.js +5 -15
  661. package/dist/web/index.web25.js +1 -1
  662. package/dist/web/index.web250.js +17 -0
  663. package/dist/web/index.web26.js +1 -1
  664. package/dist/web/index.web27.js +1 -1
  665. package/dist/web/index.web28.js +5 -5
  666. package/dist/web/index.web29.js +6 -6
  667. package/dist/web/index.web3.js +1 -1
  668. package/dist/web/index.web30.js +5 -5
  669. package/dist/web/index.web31.js +5 -5
  670. package/dist/web/index.web32.js +5 -5
  671. package/dist/web/index.web33.js +5 -5
  672. package/dist/web/index.web34.js +7 -7
  673. package/dist/web/index.web35.js +5 -5
  674. package/dist/web/index.web36.js +5 -5
  675. package/dist/web/index.web37.js +2 -2
  676. package/dist/web/index.web38.js +6 -6
  677. package/dist/web/index.web39.js +6 -6
  678. package/dist/web/index.web4.js +1 -1
  679. package/dist/web/index.web40.js +6 -6
  680. package/dist/web/index.web41.js +2 -2
  681. package/dist/web/index.web42.js +5 -5
  682. package/dist/web/index.web43.js +26 -5
  683. package/dist/web/index.web44.js +7 -44
  684. package/dist/web/index.web45.js +43 -16
  685. package/dist/web/index.web46.js +15 -19
  686. package/dist/web/index.web47.js +8 -8
  687. package/dist/web/index.web48.js +15 -49
  688. package/dist/web/index.web49.js +49 -15
  689. package/dist/web/index.web50.js +14 -21
  690. package/dist/web/index.web51.js +25 -29
  691. package/dist/web/index.web52.js +26 -53
  692. package/dist/web/index.web53.js +53 -29
  693. package/dist/web/index.web54.js +32 -12
  694. package/dist/web/index.web55.js +14 -25
  695. package/dist/web/index.web56.js +25 -22
  696. package/dist/web/index.web57.js +21 -9
  697. package/dist/web/index.web58.js +9 -15
  698. package/dist/web/index.web59.js +12 -19
  699. package/dist/web/index.web6.js +1 -1
  700. package/dist/web/index.web60.js +22 -10
  701. package/dist/web/index.web61.js +10 -16
  702. package/dist/web/index.web62.js +15 -31
  703. package/dist/web/index.web63.js +22 -24
  704. package/dist/web/index.web64.js +34 -38
  705. package/dist/web/index.web65.js +34 -32
  706. package/dist/web/index.web66.js +24 -26
  707. package/dist/web/index.web67.js +33 -34
  708. package/dist/web/index.web68.js +39 -115
  709. package/dist/web/index.web69.js +114 -46
  710. package/dist/web/index.web70.js +48 -85
  711. package/dist/web/index.web71.js +85 -19
  712. package/dist/web/index.web72.js +17 -8
  713. package/dist/web/index.web73.js +11 -36
  714. package/dist/web/index.web74.js +36 -31
  715. package/dist/web/index.web75.js +24 -58
  716. package/dist/web/index.web76.js +62 -22
  717. package/dist/web/index.web77.js +23 -15
  718. package/dist/web/index.web78.js +15 -33
  719. package/dist/web/index.web79.js +33 -6
  720. package/dist/web/index.web80.js +7 -19
  721. package/dist/web/index.web81.js +16 -45
  722. package/dist/web/index.web82.js +48 -40
  723. package/dist/web/index.web83.js +41 -18
  724. package/dist/web/index.web84.js +17 -332
  725. package/dist/web/index.web85.js +327 -13
  726. package/dist/web/index.web86.js +18 -132
  727. package/dist/web/index.web87.js +132 -86
  728. package/dist/web/index.web88.js +86 -6
  729. package/dist/web/index.web89.js +6 -55
  730. package/dist/web/index.web90.js +47 -148
  731. package/dist/web/index.web91.js +149 -60
  732. package/dist/web/index.web92.js +67 -34
  733. package/dist/web/index.web93.js +35 -90
  734. package/dist/web/index.web94.js +80 -33
  735. package/dist/web/index.web95.js +41 -30
  736. package/dist/web/index.web96.js +31 -17
  737. package/dist/web/index.web97.js +18 -45
  738. package/dist/web/index.web98.js +45 -3
  739. package/dist/web/index.web99.js +3 -44
  740. package/dist/web-types/actions/enableSpendPermissions.d.ts +39 -0
  741. package/dist/web-types/index.d.ts +1 -0
  742. package/dist/web-types/index.native.d.ts +1 -0
  743. package/dist/web-types/index.web.d.ts +1 -0
  744. package/package.json +2 -2
@@ -1,335 +1,20 @@
1
- import { logOutEndUser as f, refreshAccessToken as d, registerTemporaryWalletSecret as S, APIError as m } from "@coinbase/cdp-api-client";
2
- import { Analytics as h } from "./index.web2.js";
3
- import "./index.web3.js";
4
- import "jose";
5
- import { SignJWT as w } from "./index.web106.js";
6
- import { toAuthState as y } from "./index.web100.js";
7
- import "viem";
8
- import { getPlatformCrypto as c } from "./index.web5.js";
9
- import { sortKeys as p } from "./index.web97.js";
10
- import { getCoreOAuthManager as g } from "./index.web73.js";
11
- const l = 60 * 1e3, k = {
12
- maxRetries: 3,
13
- baseDelayMs: 1e3,
14
- maxDelayMs: 1e4
15
- };
16
- function T(t, e, s) {
17
- const n = e * Math.pow(2, t), i = Math.random() * 0.3 * n;
18
- return Math.min(n + i, s);
19
- }
20
- function R(t) {
21
- return new Promise((e) => setTimeout(e, t));
22
- }
23
- function _(t) {
24
- if (t instanceof TypeError && t.message.includes("fetch"))
1
+ import { registerMfaListener as r } from "./index.web4.js";
2
+ const o = /* @__PURE__ */ new Set(), f = (t) => typeof t == "object" && t !== null && typeof t.nodeType == "number", p = (t, i) => {
3
+ const e = i?.scope;
4
+ if (!e)
5
+ return r(t);
6
+ o.add(e);
7
+ const c = r(t, { matches: (s) => {
8
+ if (!f(s) || !e.contains(s)) return !1;
9
+ for (const n of o)
10
+ if (n !== e && e.contains(n) && n !== e && n.contains(s))
11
+ return !1;
25
12
  return !0;
26
- if (t instanceof m) {
27
- if (t.statusCode >= 500 && t.statusCode < 600 || t.statusCode === 408 || t.statusCode === 429)
28
- return !0;
29
- if (t.statusCode === 401)
30
- return !1;
31
- }
32
- if (t instanceof Error) {
33
- const e = t.message.toLowerCase();
34
- if (e.includes("network") || e.includes("timeout") || e.includes("econnrefused") || e.includes("enotfound") || e.includes("socket"))
35
- return !0;
36
- }
37
- return !1;
38
- }
39
- class v {
40
- projectId;
41
- authState = null;
42
- walletSecret = null;
43
- authStateChangeCallbacks = [];
44
- initPromise = null;
45
- refreshTimeout = null;
46
- refreshWalletSecretPromise = null;
47
- /**
48
- * Initializes the token manager.
49
- *
50
- * @param projectId - The project ID.
51
- */
52
- constructor(e) {
53
- this.projectId = e, this.initPromise = this._doInitialize();
54
- }
55
- /**
56
- * Gets the current user, or null if there is no user signed in.
57
- *
58
- * @returns The current user.
59
- */
60
- getUser() {
61
- return this.authState?.user ?? null;
62
- }
63
- /**
64
- * Returns whether the user is signed in - i.e., whether there is an unexpired
65
- * access token and user. Attempts to refresh the token if it's expired.
66
- *
67
- * @returns True if the user is signed in, false otherwise.
68
- */
69
- async isSignedIn() {
70
- if (!this.authState)
71
- return !1;
72
- if (this.authState.expiresAt > Date.now() + l)
73
- return !0;
74
- try {
75
- return await this.getToken() !== null;
76
- } catch {
77
- return !1;
78
- }
79
- }
80
- /**
81
- * Signs out the user, clearing all authentication state.
82
- */
83
- async signOut() {
84
- try {
85
- await f(this.projectId);
86
- } catch {
87
- } finally {
88
- await this.clearAuthState();
89
- }
90
- }
91
- /**
92
- * Adds a callback to be called when the auth state changes.
93
- *
94
- * @param callback - The function to call when the auth state changes.
95
- */
96
- addAuthStateChangeCallback(e) {
97
- this.authStateChangeCallbacks.push(e), e(this.authState?.user ?? null);
98
- }
99
- /**
100
- * Gets the access token, refreshing it if it is expired. Returns null if the user is not
101
- * signed in.
102
- *
103
- * @param options - The options for getting the token.
104
- * @param options.forceRefresh - Whether to force a refresh of the token.
105
- * @returns The access token.
106
- */
107
- async getToken(e) {
108
- return (e?.forceRefresh || this.shouldRefreshToken()) && await this.refreshAccessToken(e?.forceRefresh ? "force" : "on_demand"), this.authState?.accessToken ?? null;
109
- }
110
- /**
111
- * Gets the expiration time of the access token, or null if the user is not signed in.
112
- *
113
- * @returns The expiration time of the access token.
114
- */
115
- async getTokenExpiration() {
116
- return this.authState?.expiresAt ?? null;
117
- }
118
- /**
119
- * Gets the currently registered wallet secret ID. Rejects if the user is not signed in.
120
- *
121
- * @returns The wallet secret ID.
122
- */
123
- async getWalletSecretId() {
124
- if (!await this.isSignedIn())
125
- throw new Error("Cannot get wallet secret ID if the user is not signed in");
126
- return this.shouldRefreshWalletSecret() && await this.refreshWalletSecret(), this.walletSecret.walletSecretId;
127
- }
128
- /**
129
- * Gets the X-Wallet-Auth header. Rejects if the user is not signed in.
130
- *
131
- * @param options - The options for the request.
132
- * @param options.requestMethod - The HTTP method of the request.
133
- * @param options.requestHost - The host of the request.
134
- * @param options.requestPath - The path of the request.
135
- * @param options.requestData - The data of the request.
136
- * @returns The X-Wallet-Auth header.
137
- */
138
- async getXWalletAuth(e) {
139
- if (!await this.isSignedIn())
140
- throw new Error("Cannot get X-Wallet-Auth header if the user is not signed in");
141
- this.shouldRefreshWalletSecret() && await this.refreshWalletSecret();
142
- const s = `${e.requestMethod} ${e.requestHost}${e.requestPath}`, n = Math.floor(Date.now() / 1e3), i = c(), r = {
143
- uris: [s]
144
- };
145
- if (e.requestData && Object.keys(e.requestData).length > 0) {
146
- const a = p(e.requestData);
147
- r.reqHash = await i.hash(new TextEncoder().encode(JSON.stringify(a)));
148
- }
149
- return await new w(r).setProtectedHeader({ alg: "ES256", typ: "JWT" }).setIssuedAt(n).setNotBefore(n).setJti(i.generateRandomId()).sign(this.walletSecret.keyPair.privateKey);
150
- }
151
- /**
152
- * Gets the authentication state.
153
- *
154
- * @returns The authentication state.
155
- */
156
- getAuthState() {
157
- return this.authState;
158
- }
159
- /**
160
- * Sets the authentication state.
161
- *
162
- * @param authState - The authentication state.
163
- */
164
- async setAuthState(e) {
165
- this.authState = e, h.endUserIdentifier = e.user.userId, this.authStateChangeCallbacks.forEach((s) => s(this.authState?.user ?? null)), this.scheduleTokenRefresh();
166
- }
167
- /**
168
- * Clears the authentication state.
169
- */
170
- async clearAuthState() {
171
- this.authState = null, this.walletSecret = null, h.endUserIdentifier = "", this.cancelTokenRefresh(), this.authStateChangeCallbacks.forEach((e) => e(null));
172
- }
173
- /**
174
- * Ensures the AuthManager is initialized before proceeding.
175
- * If initialization is already in progress, waits for it to complete.
176
- */
177
- async ensureInitialized() {
178
- if (this.initPromise) {
179
- await this.initPromise;
180
- return;
181
- }
182
- throw new Error("AuthManager not initialized");
183
- }
184
- /**
185
- * Internal async initialization logic.
186
- */
187
- async _doInitialize() {
188
- try {
189
- await this.refreshAccessToken("init"), await g().handleOAuthCode();
190
- } catch (e) {
191
- console.warn("Failed to refresh access token during initialization:", e);
192
- }
193
- }
194
- /**
195
- * Returns whether the token should be refreshed.
196
- *
197
- * @returns True if the token should be refreshed, false otherwise.
198
- */
199
- shouldRefreshToken() {
200
- return !(this.authState && this.authState.expiresAt > Date.now() + l);
201
- }
202
- /**
203
- * Refreshes the access token and transitions the auth state accordingly.
204
- * If a refresh is already in progress, it will wait for that refresh to complete.
205
- * Retries with exponential backoff on transient failures only. Unauthorized error
206
- * short-circuit immediately since retrying won't help.
207
- *
208
- * @param trigger - The trigger for the refresh.
209
- *
210
- * @returns The new access token.
211
- */
212
- async refreshAccessToken(e = "on_demand") {
213
- const { maxRetries: s, baseDelayMs: n, maxDelayMs: i } = k;
214
- h.sendSessionRefreshEvent({
215
- name: "refresh_token_start",
216
- trigger: e
217
- });
218
- for (let r = 0; r <= s; r++)
219
- try {
220
- const a = await d(this.projectId, {
221
- grantType: "refresh_token"
222
- }), o = y(
223
- a.accessToken,
224
- a.validUntil,
225
- a.endUser
226
- );
227
- await this.setAuthState(o), h.sendSessionRefreshEvent({
228
- name: "refresh_token_success",
229
- trigger: e,
230
- attempt: r
231
- });
232
- return;
233
- } catch (a) {
234
- const o = a instanceof Error ? a.message : String(a);
235
- if (!_(a)) {
236
- h.sendSessionRefreshEvent({
237
- name: "refresh_token_failure",
238
- trigger: e,
239
- attempt: r,
240
- error_type: "non_transient",
241
- error_message: o
242
- }), await this.signOut();
243
- return;
244
- }
245
- if (r === s) {
246
- h.sendSessionRefreshEvent({
247
- name: "refresh_token_exhausted",
248
- trigger: e,
249
- attempt: r,
250
- error_type: "transient",
251
- error_message: o
252
- });
253
- return;
254
- }
255
- h.sendSessionRefreshEvent({
256
- name: "refresh_token_retry",
257
- trigger: e,
258
- attempt: r,
259
- error_type: "transient",
260
- error_message: o
261
- });
262
- const u = T(r, n, i);
263
- await R(u);
264
- }
265
- }
266
- /**
267
- * Schedules a token refresh to occur exactly when shouldRefreshToken() would return true.
268
- * Uses the same REFRESH_CREDENTIALS_BUFFER_MS timing as the rest of the auth system.
269
- */
270
- scheduleTokenRefresh() {
271
- if (this.cancelTokenRefresh(), !this.authState)
272
- return;
273
- const s = this.authState.expiresAt - l - Date.now();
274
- s <= 0 || (h.sendSessionRefreshEvent({
275
- name: "refresh_token_scheduled",
276
- time_until_refresh_ms: s
277
- }), this.refreshTimeout = setTimeout(async () => {
278
- await this.refreshAccessToken("scheduled"), this.scheduleTokenRefresh();
279
- }, s));
280
- }
281
- /**
282
- * Cancels any scheduled token refresh.
283
- */
284
- cancelTokenRefresh() {
285
- this.refreshTimeout && (clearTimeout(this.refreshTimeout), this.refreshTimeout = null);
286
- }
287
- /**
288
- * Returns whether the wallet secret should be refreshed.
289
- *
290
- * @returns True if the wallet secret should be refreshed, false otherwise.
291
- */
292
- shouldRefreshWalletSecret() {
293
- return !(this.walletSecret && this.walletSecret.expiresAt > Date.now() + l);
294
- }
295
- /**
296
- * Refreshes the wallet secret. Assumes the user is signed in.
297
- * Concurrent callers share the same in-flight registration to avoid
298
- * racing on `this.walletSecret` (e.g. React Strict Mode double-fire).
299
- *
300
- * @returns A promise that resolves when the wallet secret is registered.
301
- */
302
- async refreshWalletSecret() {
303
- if (this.refreshWalletSecretPromise)
304
- return this.refreshWalletSecretPromise;
305
- this.refreshWalletSecretPromise = this._doRefreshWalletSecret();
306
- try {
307
- await this.refreshWalletSecretPromise;
308
- } finally {
309
- this.refreshWalletSecretPromise = null;
310
- }
311
- }
312
- /**
313
- * Internal wallet secret refresh logic.
314
- */
315
- async _doRefreshWalletSecret() {
316
- const e = c(), s = this.walletSecret?.walletSecretId ?? e.generateRandomId(), n = this.walletSecret?.keyPair ?? await e.createKeyPair(), i = this.authState.expiresAt, r = new Date(i).toISOString();
317
- this.walletSecret = { walletSecretId: s, keyPair: n, expiresAt: i };
318
- try {
319
- await S(
320
- this.authState.user.userId,
321
- {
322
- walletSecretId: s,
323
- publicKey: n.publicKeyBase64,
324
- validUntil: r
325
- },
326
- { projectID: this.projectId }
327
- );
328
- } catch (a) {
329
- throw this.walletSecret = null, a;
330
- }
331
- }
332
- }
13
+ } });
14
+ return () => {
15
+ o.delete(e), c();
16
+ };
17
+ };
333
18
  export {
334
- v as AuthManager
19
+ p as registerMfaListener
335
20
  };
@@ -1,21 +1,335 @@
1
- import { APIError as c, ErrorType as u, HttpErrorType as E, OAuth2ProviderType as a, SendEvmTransactionWithEndUserAccountBodyNetwork as d, SendSolanaTransactionWithEndUserAccountBodyNetwork as p } from "@coinbase/cdp-api-client";
1
+ import { logOutEndUser as f, refreshAccessToken as d, registerTemporaryWalletSecret as S, APIError as m } from "@coinbase/cdp-api-client";
2
+ import { Analytics as h } from "./index.web2.js";
3
+ import "./index.web3.js";
4
+ import "jose";
5
+ import { SignJWT as w } from "./index.web107.js";
6
+ import { toAuthState as y } from "./index.web101.js";
2
7
  import "viem";
3
- class e extends Error {
8
+ import { getPlatformCrypto as c } from "./index.web5.js";
9
+ import { sortKeys as p } from "./index.web98.js";
10
+ import { getCoreOAuthManager as g } from "./index.web74.js";
11
+ const l = 60 * 1e3, k = {
12
+ maxRetries: 3,
13
+ baseDelayMs: 1e3,
14
+ maxDelayMs: 1e4
15
+ };
16
+ function T(t, e, s) {
17
+ const n = e * Math.pow(2, t), i = Math.random() * 0.3 * n;
18
+ return Math.min(n + i, s);
19
+ }
20
+ function R(t) {
21
+ return new Promise((e) => setTimeout(e, t));
22
+ }
23
+ function _(t) {
24
+ if (t instanceof TypeError && t.message.includes("fetch"))
25
+ return !0;
26
+ if (t instanceof m) {
27
+ if (t.statusCode >= 500 && t.statusCode < 600 || t.statusCode === 408 || t.statusCode === 429)
28
+ return !0;
29
+ if (t.statusCode === 401)
30
+ return !1;
31
+ }
32
+ if (t instanceof Error) {
33
+ const e = t.message.toLowerCase();
34
+ if (e.includes("network") || e.includes("timeout") || e.includes("econnrefused") || e.includes("enotfound") || e.includes("socket"))
35
+ return !0;
36
+ }
37
+ return !1;
38
+ }
39
+ class v {
40
+ projectId;
41
+ authState = null;
42
+ walletSecret = null;
43
+ authStateChangeCallbacks = [];
44
+ initPromise = null;
45
+ refreshTimeout = null;
46
+ refreshWalletSecretPromise = null;
47
+ /**
48
+ * Initializes the token manager.
49
+ *
50
+ * @param projectId - The project ID.
51
+ */
52
+ constructor(e) {
53
+ this.projectId = e, this.initPromise = this._doInitialize();
54
+ }
55
+ /**
56
+ * Gets the current user, or null if there is no user signed in.
57
+ *
58
+ * @returns The current user.
59
+ */
60
+ getUser() {
61
+ return this.authState?.user ?? null;
62
+ }
63
+ /**
64
+ * Returns whether the user is signed in - i.e., whether there is an unexpired
65
+ * access token and user. Attempts to refresh the token if it's expired.
66
+ *
67
+ * @returns True if the user is signed in, false otherwise.
68
+ */
69
+ async isSignedIn() {
70
+ if (!this.authState)
71
+ return !1;
72
+ if (this.authState.expiresAt > Date.now() + l)
73
+ return !0;
74
+ try {
75
+ return await this.getToken() !== null;
76
+ } catch {
77
+ return !1;
78
+ }
79
+ }
80
+ /**
81
+ * Signs out the user, clearing all authentication state.
82
+ */
83
+ async signOut() {
84
+ try {
85
+ await f(this.projectId);
86
+ } catch {
87
+ } finally {
88
+ await this.clearAuthState();
89
+ }
90
+ }
91
+ /**
92
+ * Adds a callback to be called when the auth state changes.
93
+ *
94
+ * @param callback - The function to call when the auth state changes.
95
+ */
96
+ addAuthStateChangeCallback(e) {
97
+ this.authStateChangeCallbacks.push(e), e(this.authState?.user ?? null);
98
+ }
99
+ /**
100
+ * Gets the access token, refreshing it if it is expired. Returns null if the user is not
101
+ * signed in.
102
+ *
103
+ * @param options - The options for getting the token.
104
+ * @param options.forceRefresh - Whether to force a refresh of the token.
105
+ * @returns The access token.
106
+ */
107
+ async getToken(e) {
108
+ return (e?.forceRefresh || this.shouldRefreshToken()) && await this.refreshAccessToken(e?.forceRefresh ? "force" : "on_demand"), this.authState?.accessToken ?? null;
109
+ }
110
+ /**
111
+ * Gets the expiration time of the access token, or null if the user is not signed in.
112
+ *
113
+ * @returns The expiration time of the access token.
114
+ */
115
+ async getTokenExpiration() {
116
+ return this.authState?.expiresAt ?? null;
117
+ }
118
+ /**
119
+ * Gets the currently registered wallet secret ID. Rejects if the user is not signed in.
120
+ *
121
+ * @returns The wallet secret ID.
122
+ */
123
+ async getWalletSecretId() {
124
+ if (!await this.isSignedIn())
125
+ throw new Error("Cannot get wallet secret ID if the user is not signed in");
126
+ return this.shouldRefreshWalletSecret() && await this.refreshWalletSecret(), this.walletSecret.walletSecretId;
127
+ }
128
+ /**
129
+ * Gets the X-Wallet-Auth header. Rejects if the user is not signed in.
130
+ *
131
+ * @param options - The options for the request.
132
+ * @param options.requestMethod - The HTTP method of the request.
133
+ * @param options.requestHost - The host of the request.
134
+ * @param options.requestPath - The path of the request.
135
+ * @param options.requestData - The data of the request.
136
+ * @returns The X-Wallet-Auth header.
137
+ */
138
+ async getXWalletAuth(e) {
139
+ if (!await this.isSignedIn())
140
+ throw new Error("Cannot get X-Wallet-Auth header if the user is not signed in");
141
+ this.shouldRefreshWalletSecret() && await this.refreshWalletSecret();
142
+ const s = `${e.requestMethod} ${e.requestHost}${e.requestPath}`, n = Math.floor(Date.now() / 1e3), i = c(), r = {
143
+ uris: [s]
144
+ };
145
+ if (e.requestData && Object.keys(e.requestData).length > 0) {
146
+ const a = p(e.requestData);
147
+ r.reqHash = await i.hash(new TextEncoder().encode(JSON.stringify(a)));
148
+ }
149
+ return await new w(r).setProtectedHeader({ alg: "ES256", typ: "JWT" }).setIssuedAt(n).setNotBefore(n).setJti(i.generateRandomId()).sign(this.walletSecret.keyPair.privateKey);
150
+ }
151
+ /**
152
+ * Gets the authentication state.
153
+ *
154
+ * @returns The authentication state.
155
+ */
156
+ getAuthState() {
157
+ return this.authState;
158
+ }
159
+ /**
160
+ * Sets the authentication state.
161
+ *
162
+ * @param authState - The authentication state.
163
+ */
164
+ async setAuthState(e) {
165
+ this.authState = e, h.endUserIdentifier = e.user.userId, this.authStateChangeCallbacks.forEach((s) => s(this.authState?.user ?? null)), this.scheduleTokenRefresh();
166
+ }
167
+ /**
168
+ * Clears the authentication state.
169
+ */
170
+ async clearAuthState() {
171
+ this.authState = null, this.walletSecret = null, h.endUserIdentifier = "", this.cancelTokenRefresh(), this.authStateChangeCallbacks.forEach((e) => e(null));
172
+ }
173
+ /**
174
+ * Ensures the AuthManager is initialized before proceeding.
175
+ * If initialization is already in progress, waits for it to complete.
176
+ */
177
+ async ensureInitialized() {
178
+ if (this.initPromise) {
179
+ await this.initPromise;
180
+ return;
181
+ }
182
+ throw new Error("AuthManager not initialized");
183
+ }
184
+ /**
185
+ * Internal async initialization logic.
186
+ */
187
+ async _doInitialize() {
188
+ try {
189
+ await this.refreshAccessToken("init"), await g().handleOAuthCode();
190
+ } catch (e) {
191
+ console.warn("Failed to refresh access token during initialization:", e);
192
+ }
193
+ }
194
+ /**
195
+ * Returns whether the token should be refreshed.
196
+ *
197
+ * @returns True if the token should be refreshed, false otherwise.
198
+ */
199
+ shouldRefreshToken() {
200
+ return !(this.authState && this.authState.expiresAt > Date.now() + l);
201
+ }
202
+ /**
203
+ * Refreshes the access token and transitions the auth state accordingly.
204
+ * If a refresh is already in progress, it will wait for that refresh to complete.
205
+ * Retries with exponential backoff on transient failures only. Unauthorized error
206
+ * short-circuit immediately since retrying won't help.
207
+ *
208
+ * @param trigger - The trigger for the refresh.
209
+ *
210
+ * @returns The new access token.
211
+ */
212
+ async refreshAccessToken(e = "on_demand") {
213
+ const { maxRetries: s, baseDelayMs: n, maxDelayMs: i } = k;
214
+ h.sendSessionRefreshEvent({
215
+ name: "refresh_token_start",
216
+ trigger: e
217
+ });
218
+ for (let r = 0; r <= s; r++)
219
+ try {
220
+ const a = await d(this.projectId, {
221
+ grantType: "refresh_token"
222
+ }), o = y(
223
+ a.accessToken,
224
+ a.validUntil,
225
+ a.endUser
226
+ );
227
+ await this.setAuthState(o), h.sendSessionRefreshEvent({
228
+ name: "refresh_token_success",
229
+ trigger: e,
230
+ attempt: r
231
+ });
232
+ return;
233
+ } catch (a) {
234
+ const o = a instanceof Error ? a.message : String(a);
235
+ if (!_(a)) {
236
+ h.sendSessionRefreshEvent({
237
+ name: "refresh_token_failure",
238
+ trigger: e,
239
+ attempt: r,
240
+ error_type: "non_transient",
241
+ error_message: o
242
+ }), await this.signOut();
243
+ return;
244
+ }
245
+ if (r === s) {
246
+ h.sendSessionRefreshEvent({
247
+ name: "refresh_token_exhausted",
248
+ trigger: e,
249
+ attempt: r,
250
+ error_type: "transient",
251
+ error_message: o
252
+ });
253
+ return;
254
+ }
255
+ h.sendSessionRefreshEvent({
256
+ name: "refresh_token_retry",
257
+ trigger: e,
258
+ attempt: r,
259
+ error_type: "transient",
260
+ error_message: o
261
+ });
262
+ const u = T(r, n, i);
263
+ await R(u);
264
+ }
265
+ }
266
+ /**
267
+ * Schedules a token refresh to occur exactly when shouldRefreshToken() would return true.
268
+ * Uses the same REFRESH_CREDENTIALS_BUFFER_MS timing as the rest of the auth system.
269
+ */
270
+ scheduleTokenRefresh() {
271
+ if (this.cancelTokenRefresh(), !this.authState)
272
+ return;
273
+ const s = this.authState.expiresAt - l - Date.now();
274
+ s <= 0 || (h.sendSessionRefreshEvent({
275
+ name: "refresh_token_scheduled",
276
+ time_until_refresh_ms: s
277
+ }), this.refreshTimeout = setTimeout(async () => {
278
+ await this.refreshAccessToken("scheduled"), this.scheduleTokenRefresh();
279
+ }, s));
280
+ }
4
281
  /**
5
- * Creates a new CustomAuthError.
282
+ * Cancels any scheduled token refresh.
283
+ */
284
+ cancelTokenRefresh() {
285
+ this.refreshTimeout && (clearTimeout(this.refreshTimeout), this.refreshTimeout = null);
286
+ }
287
+ /**
288
+ * Returns whether the wallet secret should be refreshed.
289
+ *
290
+ * @returns True if the wallet secret should be refreshed, false otherwise.
291
+ */
292
+ shouldRefreshWalletSecret() {
293
+ return !(this.walletSecret && this.walletSecret.expiresAt > Date.now() + l);
294
+ }
295
+ /**
296
+ * Refreshes the wallet secret. Assumes the user is signed in.
297
+ * Concurrent callers share the same in-flight registration to avoid
298
+ * racing on `this.walletSecret` (e.g. React Strict Mode double-fire).
6
299
  *
7
- * @param message - The error message.
300
+ * @returns A promise that resolves when the wallet secret is registered.
301
+ */
302
+ async refreshWalletSecret() {
303
+ if (this.refreshWalletSecretPromise)
304
+ return this.refreshWalletSecretPromise;
305
+ this.refreshWalletSecretPromise = this._doRefreshWalletSecret();
306
+ try {
307
+ await this.refreshWalletSecretPromise;
308
+ } finally {
309
+ this.refreshWalletSecretPromise = null;
310
+ }
311
+ }
312
+ /**
313
+ * Internal wallet secret refresh logic.
8
314
  */
9
- constructor(r) {
10
- super(r), this.name = "CustomAuthError";
315
+ async _doRefreshWalletSecret() {
316
+ const e = c(), s = this.walletSecret?.walletSecretId ?? e.generateRandomId(), n = this.walletSecret?.keyPair ?? await e.createKeyPair(), i = this.authState.expiresAt, r = new Date(i).toISOString();
317
+ this.walletSecret = { walletSecretId: s, keyPair: n, expiresAt: i };
318
+ try {
319
+ await S(
320
+ this.authState.user.userId,
321
+ {
322
+ walletSecretId: s,
323
+ publicKey: n.publicKeyBase64,
324
+ validUntil: r
325
+ },
326
+ { projectID: this.projectId }
327
+ );
328
+ } catch (a) {
329
+ throw this.walletSecret = null, a;
330
+ }
11
331
  }
12
332
  }
13
333
  export {
14
- c as APIError,
15
- e as CustomAuthError,
16
- u as ErrorType,
17
- E as HttpErrorType,
18
- a as OAuth2ProviderType,
19
- d as SendEvmTransactionWithEndUserAccountBodyNetwork,
20
- p as SendSolanaTransactionWithEndUserAccountBodyNetwork
334
+ v as AuthManager
21
335
  };