@coinbase/cdp-core 0.0.32 → 0.0.34

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 (292) hide show
  1. package/README.md +74 -8
  2. package/dist/esm/index.native.js +41 -36
  3. package/dist/esm/index.native10.js +115 -21
  4. package/dist/esm/index.native100.js +6 -9
  5. package/dist/esm/index.native101.js +11 -13
  6. package/dist/esm/index.native102.js +11 -8
  7. package/dist/esm/index.native103.js +7 -14
  8. package/dist/esm/index.native104.js +16 -80
  9. package/dist/esm/index.native105.js +79 -11
  10. package/dist/esm/index.native106.js +12 -35
  11. package/dist/esm/index.native107.js +35 -41
  12. package/dist/esm/index.native108.js +38 -75
  13. package/dist/esm/index.native109.js +81 -0
  14. package/dist/esm/index.native11.js +20 -30
  15. package/dist/esm/index.native12.js +30 -7
  16. package/dist/esm/index.native13.js +9 -15
  17. package/dist/esm/index.native14.js +15 -15
  18. package/dist/esm/index.native15.js +15 -116
  19. package/dist/esm/index.native16.js +116 -11
  20. package/dist/esm/index.native17.js +15 -42
  21. package/dist/esm/index.native18.js +42 -20
  22. package/dist/esm/index.native19.js +20 -172
  23. package/dist/esm/index.native2.js +3 -3
  24. package/dist/esm/index.native20.js +170 -39
  25. package/dist/esm/index.native21.js +41 -49
  26. package/dist/esm/index.native22.js +47 -70
  27. package/dist/esm/index.native23.js +69 -23
  28. package/dist/esm/index.native24.js +22 -156
  29. package/dist/esm/index.native25.js +157 -45
  30. package/dist/esm/index.native26.js +43 -245
  31. package/dist/esm/index.native27.js +247 -53
  32. package/dist/esm/index.native28.js +56 -17
  33. package/dist/esm/index.native29.js +15 -21
  34. package/dist/esm/index.native3.js +40 -30
  35. package/dist/esm/index.native30.js +21 -49
  36. package/dist/esm/index.native31.js +50 -8
  37. package/dist/esm/index.native32.js +8 -17
  38. package/dist/esm/index.native33.js +16 -44
  39. package/dist/esm/index.native34.js +45 -13
  40. package/dist/esm/index.native35.js +13 -55
  41. package/dist/esm/index.native36.js +55 -6
  42. package/dist/esm/index.native37.js +6 -21
  43. package/dist/esm/index.native38.js +21 -11
  44. package/dist/esm/index.native39.js +11 -3
  45. package/dist/esm/index.native4.js +67 -21
  46. package/dist/esm/index.native40.js +3 -3
  47. package/dist/esm/index.native41.js +3 -34
  48. package/dist/esm/index.native42.js +32 -10
  49. package/dist/esm/index.native43.js +12 -4
  50. package/dist/esm/index.native44.js +4 -28
  51. package/dist/esm/index.native45.js +28 -6
  52. package/dist/esm/index.native46.js +6 -24
  53. package/dist/esm/index.native47.js +24 -16
  54. package/dist/esm/index.native48.js +16 -54
  55. package/dist/esm/index.native49.js +53 -22
  56. package/dist/esm/index.native5.js +21 -254
  57. package/dist/esm/index.native50.js +23 -11
  58. package/dist/esm/index.native51.js +10 -26
  59. package/dist/esm/index.native52.js +26 -41
  60. package/dist/esm/index.native53.js +41 -54
  61. package/dist/esm/index.native54.js +54 -126
  62. package/dist/esm/index.native55.js +126 -11
  63. package/dist/esm/index.native56.js +9 -101
  64. package/dist/esm/index.native57.js +104 -6
  65. package/dist/esm/index.native58.js +7 -3
  66. package/dist/esm/index.native59.js +3 -15
  67. package/dist/esm/index.native6.js +314 -174
  68. package/dist/esm/index.native60.js +14 -42
  69. package/dist/esm/index.native61.js +38 -74
  70. package/dist/esm/index.native62.js +79 -2
  71. package/dist/esm/index.native63.js +2 -2
  72. package/dist/esm/index.native64.js +2 -13
  73. package/dist/esm/index.native65.js +8 -33
  74. package/dist/esm/index.native66.js +36 -5
  75. package/dist/esm/index.native67.js +5 -33
  76. package/dist/esm/index.native68.js +34 -8
  77. package/dist/esm/index.native69.js +8 -10
  78. package/dist/esm/index.native7.js +213 -115
  79. package/dist/esm/index.native70.js +10 -11
  80. package/dist/esm/index.native71.js +11 -13
  81. package/dist/esm/index.native72.js +13 -18
  82. package/dist/esm/index.native73.js +18 -5
  83. package/dist/esm/index.native74.js +6 -5
  84. package/dist/esm/index.native75.js +5 -11
  85. package/dist/esm/index.native76.js +10 -54
  86. package/dist/esm/index.native77.js +54 -10
  87. package/dist/esm/index.native78.js +11 -2
  88. package/dist/esm/index.native79.js +2 -45
  89. package/dist/esm/index.native8.js +115 -137
  90. package/dist/esm/index.native80.js +44 -13
  91. package/dist/esm/index.native81.js +14 -2
  92. package/dist/esm/index.native82.js +2 -21
  93. package/dist/esm/index.native83.js +18 -17
  94. package/dist/esm/index.native84.js +20 -80
  95. package/dist/esm/index.native85.js +79 -103
  96. package/dist/esm/index.native86.js +101 -30
  97. package/dist/esm/index.native87.js +32 -6
  98. package/dist/esm/index.native88.js +6 -78
  99. package/dist/esm/index.native89.js +2 -2
  100. package/dist/esm/index.native9.js +138 -113
  101. package/dist/esm/index.native90.js +3 -3
  102. package/dist/esm/index.native92.js +3 -3
  103. package/dist/esm/index.native93.js +1 -1
  104. package/dist/esm/index.native94.js +3 -3
  105. package/dist/esm/index.native95.js +79 -10
  106. package/dist/esm/index.native96.js +10 -5
  107. package/dist/esm/index.native97.js +5 -18
  108. package/dist/esm/index.native98.js +18 -28
  109. package/dist/esm/index.native99.js +26 -6
  110. package/dist/esm/index.web.js +41 -38
  111. package/dist/esm/index.web100.js +13 -28
  112. package/dist/esm/index.web101.js +10 -8
  113. package/dist/esm/index.web102.js +17 -11
  114. package/dist/esm/index.web103.js +80 -12
  115. package/dist/esm/index.web104.js +13 -10
  116. package/dist/esm/index.web105.js +36 -17
  117. package/dist/esm/index.web106.js +40 -79
  118. package/dist/esm/index.web12.js +6 -5
  119. package/dist/esm/index.web13.js +12 -10
  120. package/dist/esm/index.web15.js +1 -0
  121. package/dist/esm/index.web26.js +1 -1
  122. package/dist/esm/index.web5.js +217 -141
  123. package/dist/esm/index.web6.js +65 -38
  124. package/dist/esm/index.web75.js +6 -6
  125. package/dist/esm/index.web84.js +1 -1
  126. package/dist/esm/index.web87.js +21 -10
  127. package/dist/esm/index.web88.js +10 -79
  128. package/dist/esm/index.web89.js +19 -20
  129. package/dist/esm/index.web90.js +93 -9
  130. package/dist/esm/index.web91.js +19 -18
  131. package/dist/esm/index.web92.js +105 -81
  132. package/dist/esm/index.web93.js +9 -20
  133. package/dist/esm/index.web94.js +73 -112
  134. package/dist/esm/index.web96.js +18 -13
  135. package/dist/esm/index.web97.js +27 -35
  136. package/dist/esm/index.web98.js +7 -41
  137. package/dist/esm/index.web99.js +11 -18
  138. package/dist/native/index.native.js +41 -36
  139. package/dist/native/index.native10.js +115 -21
  140. package/dist/native/index.native100.js +6 -9
  141. package/dist/native/index.native101.js +11 -13
  142. package/dist/native/index.native102.js +11 -8
  143. package/dist/native/index.native103.js +7 -14
  144. package/dist/native/index.native104.js +16 -80
  145. package/dist/native/index.native105.js +79 -11
  146. package/dist/native/index.native106.js +12 -35
  147. package/dist/native/index.native107.js +35 -41
  148. package/dist/native/index.native108.js +38 -75
  149. package/dist/native/index.native109.js +81 -0
  150. package/dist/native/index.native11.js +20 -30
  151. package/dist/native/index.native12.js +30 -7
  152. package/dist/native/index.native13.js +9 -15
  153. package/dist/native/index.native14.js +15 -15
  154. package/dist/native/index.native15.js +15 -116
  155. package/dist/native/index.native16.js +116 -11
  156. package/dist/native/index.native17.js +15 -42
  157. package/dist/native/index.native18.js +42 -20
  158. package/dist/native/index.native19.js +20 -172
  159. package/dist/native/index.native2.js +3 -3
  160. package/dist/native/index.native20.js +170 -39
  161. package/dist/native/index.native21.js +41 -49
  162. package/dist/native/index.native22.js +47 -70
  163. package/dist/native/index.native23.js +69 -23
  164. package/dist/native/index.native24.js +22 -156
  165. package/dist/native/index.native25.js +157 -45
  166. package/dist/native/index.native26.js +43 -245
  167. package/dist/native/index.native27.js +247 -53
  168. package/dist/native/index.native28.js +56 -17
  169. package/dist/native/index.native29.js +15 -21
  170. package/dist/native/index.native3.js +40 -30
  171. package/dist/native/index.native30.js +21 -49
  172. package/dist/native/index.native31.js +50 -8
  173. package/dist/native/index.native32.js +8 -17
  174. package/dist/native/index.native33.js +16 -44
  175. package/dist/native/index.native34.js +45 -13
  176. package/dist/native/index.native35.js +13 -55
  177. package/dist/native/index.native36.js +55 -6
  178. package/dist/native/index.native37.js +6 -21
  179. package/dist/native/index.native38.js +21 -11
  180. package/dist/native/index.native39.js +11 -3
  181. package/dist/native/index.native4.js +67 -21
  182. package/dist/native/index.native40.js +3 -3
  183. package/dist/native/index.native41.js +3 -34
  184. package/dist/native/index.native42.js +32 -10
  185. package/dist/native/index.native43.js +12 -4
  186. package/dist/native/index.native44.js +4 -28
  187. package/dist/native/index.native45.js +28 -6
  188. package/dist/native/index.native46.js +6 -24
  189. package/dist/native/index.native47.js +24 -16
  190. package/dist/native/index.native48.js +16 -54
  191. package/dist/native/index.native49.js +53 -22
  192. package/dist/native/index.native5.js +21 -254
  193. package/dist/native/index.native50.js +23 -11
  194. package/dist/native/index.native51.js +10 -26
  195. package/dist/native/index.native52.js +26 -41
  196. package/dist/native/index.native53.js +41 -54
  197. package/dist/native/index.native54.js +54 -126
  198. package/dist/native/index.native55.js +126 -11
  199. package/dist/native/index.native56.js +9 -101
  200. package/dist/native/index.native57.js +104 -6
  201. package/dist/native/index.native58.js +7 -3
  202. package/dist/native/index.native59.js +3 -15
  203. package/dist/native/index.native6.js +314 -174
  204. package/dist/native/index.native60.js +14 -42
  205. package/dist/native/index.native61.js +38 -74
  206. package/dist/native/index.native62.js +79 -2
  207. package/dist/native/index.native63.js +2 -2
  208. package/dist/native/index.native64.js +2 -13
  209. package/dist/native/index.native65.js +8 -33
  210. package/dist/native/index.native66.js +36 -5
  211. package/dist/native/index.native67.js +5 -33
  212. package/dist/native/index.native68.js +34 -8
  213. package/dist/native/index.native69.js +8 -10
  214. package/dist/native/index.native7.js +213 -115
  215. package/dist/native/index.native70.js +10 -11
  216. package/dist/native/index.native71.js +11 -13
  217. package/dist/native/index.native72.js +13 -18
  218. package/dist/native/index.native73.js +18 -5
  219. package/dist/native/index.native74.js +6 -5
  220. package/dist/native/index.native75.js +5 -11
  221. package/dist/native/index.native76.js +10 -54
  222. package/dist/native/index.native77.js +54 -10
  223. package/dist/native/index.native78.js +11 -2
  224. package/dist/native/index.native79.js +2 -45
  225. package/dist/native/index.native8.js +115 -137
  226. package/dist/native/index.native80.js +44 -13
  227. package/dist/native/index.native81.js +14 -2
  228. package/dist/native/index.native82.js +2 -21
  229. package/dist/native/index.native83.js +18 -17
  230. package/dist/native/index.native84.js +20 -80
  231. package/dist/native/index.native85.js +79 -103
  232. package/dist/native/index.native86.js +101 -30
  233. package/dist/native/index.native87.js +32 -6
  234. package/dist/native/index.native88.js +6 -78
  235. package/dist/native/index.native89.js +2 -2
  236. package/dist/native/index.native9.js +138 -113
  237. package/dist/native/index.native90.js +3 -3
  238. package/dist/native/index.native92.js +3 -3
  239. package/dist/native/index.native93.js +1 -1
  240. package/dist/native/index.native94.js +3 -3
  241. package/dist/native/index.native95.js +79 -10
  242. package/dist/native/index.native96.js +10 -5
  243. package/dist/native/index.native97.js +5 -18
  244. package/dist/native/index.native98.js +18 -28
  245. package/dist/native/index.native99.js +26 -6
  246. package/dist/native-types/auth/authManager.d.ts +3 -0
  247. package/dist/native-types/auth/withAuth.d.ts +3 -1
  248. package/dist/native-types/core.d.ts +3 -1
  249. package/dist/native-types/platform/native/secureStorage.d.ts +2 -0
  250. package/dist/native-types/platform/types.d.ts +7 -0
  251. package/dist/native-types/types.d.ts +20 -3
  252. package/dist/types/auth/authManager.d.ts +3 -0
  253. package/dist/types/auth/withAuth.d.ts +3 -1
  254. package/dist/types/core.d.ts +3 -1
  255. package/dist/types/platform/native/secureStorage.d.ts +2 -0
  256. package/dist/types/platform/types.d.ts +7 -0
  257. package/dist/types/types.d.ts +20 -3
  258. package/dist/web/index.web.js +41 -38
  259. package/dist/web/index.web100.js +13 -28
  260. package/dist/web/index.web101.js +10 -8
  261. package/dist/web/index.web102.js +17 -11
  262. package/dist/web/index.web103.js +80 -12
  263. package/dist/web/index.web104.js +13 -10
  264. package/dist/web/index.web105.js +36 -17
  265. package/dist/web/index.web106.js +40 -79
  266. package/dist/web/index.web12.js +6 -5
  267. package/dist/web/index.web13.js +12 -10
  268. package/dist/web/index.web15.js +1 -0
  269. package/dist/web/index.web26.js +1 -1
  270. package/dist/web/index.web5.js +217 -141
  271. package/dist/web/index.web6.js +65 -38
  272. package/dist/web/index.web75.js +6 -6
  273. package/dist/web/index.web84.js +1 -1
  274. package/dist/web/index.web87.js +21 -10
  275. package/dist/web/index.web88.js +10 -79
  276. package/dist/web/index.web89.js +19 -20
  277. package/dist/web/index.web90.js +93 -9
  278. package/dist/web/index.web91.js +19 -18
  279. package/dist/web/index.web92.js +105 -81
  280. package/dist/web/index.web93.js +9 -20
  281. package/dist/web/index.web94.js +73 -112
  282. package/dist/web/index.web96.js +18 -13
  283. package/dist/web/index.web97.js +27 -35
  284. package/dist/web/index.web98.js +7 -41
  285. package/dist/web/index.web99.js +11 -18
  286. package/dist/web-types/auth/authManager.d.ts +3 -0
  287. package/dist/web-types/auth/withAuth.d.ts +3 -1
  288. package/dist/web-types/core.d.ts +3 -1
  289. package/dist/web-types/platform/native/secureStorage.d.ts +2 -0
  290. package/dist/web-types/platform/types.d.ts +7 -0
  291. package/dist/web-types/types.d.ts +20 -3
  292. package/package.json +8 -4
@@ -1,11 +1,34 @@
1
- function t(e) {
2
- if (typeof TextDecoder < "u")
3
- return new TextDecoder().decode(e);
1
+ function a(e) {
2
+ if (typeof btoa < "u")
3
+ return btoa(
4
+ Array.from(e).map((t) => String.fromCharCode(t)).join("")
5
+ );
6
+ const c = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
4
7
  let r = "";
5
- for (let o = 0; o < e.length; o++)
6
- r += String.fromCharCode(e[o]);
7
- return decodeURIComponent(escape(r));
8
+ for (let t = 0; t < e.length; t += 3) {
9
+ const h = e[t], n = t + 1 < e.length ? e[t + 1] : 0, s = t + 2 < e.length ? e[t + 2] : 0, o = h << 16 | n << 8 | s;
10
+ r += c.charAt(o >> 18 & 63), r += c.charAt(o >> 12 & 63), r += t + 1 < e.length ? c.charAt(o >> 6 & 63) : "=", r += t + 2 < e.length ? c.charAt(o & 63) : "=";
11
+ }
12
+ return r;
13
+ }
14
+ function g(e) {
15
+ if (typeof atob < "u") {
16
+ const n = atob(e), s = new Uint8Array(n.length);
17
+ for (let o = 0; o < n.length; o++)
18
+ s[o] = n.charCodeAt(o);
19
+ return s;
20
+ }
21
+ const c = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", r = {};
22
+ for (let n = 0; n < c.length; n++)
23
+ r[c[n]] = n;
24
+ const t = e.replace(/[^A-Za-z0-9+/]/g, ""), h = [];
25
+ for (let n = 0; n < t.length; n += 4) {
26
+ const s = r[t[n]] || 0, o = r[t[n + 1]] || 0, l = r[t[n + 2]] || 0, f = r[t[n + 3]] || 0, i = s << 18 | o << 12 | l << 6 | f;
27
+ h.push(i >> 16 & 255), n + 2 < t.length && h.push(i >> 8 & 255), n + 3 < t.length && h.push(i & 255);
28
+ }
29
+ return new Uint8Array(h);
8
30
  }
9
31
  export {
10
- t as decodeText
32
+ g as decodeBase64,
33
+ a as encodeBase64
11
34
  };
@@ -1,17 +1,11 @@
1
- import "@coinbase/cdp-api-client";
2
- const r = (u, c, e) => {
3
- const s = new Date(c).getTime(), m = {
4
- userId: e.userId,
5
- evmAccounts: e.evmAccounts?.map((t) => t) ?? [],
6
- evmSmartAccounts: e.evmSmartAccounts?.map((t) => t) ?? [],
7
- authenticationMethods: e.authenticationMethods.reduce((t, o) => (t[o.type] = o, t), {})
8
- };
9
- return {
10
- accessToken: u,
11
- expiresAt: s,
12
- user: m
13
- };
14
- };
1
+ function t(e) {
2
+ if (typeof TextDecoder < "u")
3
+ return new TextDecoder().decode(e);
4
+ let r = "";
5
+ for (let o = 0; o < e.length; o++)
6
+ r += String.fromCharCode(e[o]);
7
+ return decodeURIComponent(escape(r));
8
+ }
15
9
  export {
16
- r as toAuthState
10
+ t as decodeText
17
11
  };
@@ -1,18 +1,18 @@
1
1
  import "@coinbase/cdp-api-client";
2
- import "viem";
3
- const o = async (t) => await t.isSignedIn();
4
- async function w(t, n, e) {
5
- if (!await o(n))
6
- throw new Error("User not signed in");
7
- const r = await n.getUser();
8
- if ("evmAccount" in t && !r.evmAccounts?.find((c) => c === t.evmAccount))
9
- throw new Error("EVM account not found");
10
- if ("evmSmartAccount" in t && !r.evmSmartAccounts?.find((c) => c === t.evmSmartAccount))
11
- throw new Error("EVM Smart Account not found");
12
- const i = await n.getWalletSecretId();
13
- return e({ ...t, user: r, walletSecretId: i });
14
- }
2
+ const m = (c, a, e) => {
3
+ const s = new Date(a).getTime(), u = {
4
+ userId: e.userId,
5
+ evmAccounts: e.evmAccounts?.map((t) => t) ?? [],
6
+ evmSmartAccounts: e.evmSmartAccounts?.map((t) => t) ?? [],
7
+ solanaAccounts: e.solanaAccounts?.map((t) => t) ?? [],
8
+ authenticationMethods: e.authenticationMethods.reduce((t, o) => (t[o.type] = o, t), {})
9
+ };
10
+ return {
11
+ accessToken: c,
12
+ expiresAt: s,
13
+ user: u
14
+ };
15
+ };
15
16
  export {
16
- o as isSignedIn,
17
- w as withAuth
17
+ m as toAuthState
18
18
  };
@@ -1,121 +1,20 @@
1
1
  import "@coinbase/cdp-api-client";
2
2
  import "viem";
3
- import { mockUser as e } from "./index.native16.js";
4
- class r {
5
- authState = null;
6
- authStateChangeCallback = null;
7
- /**
8
- * Initializes the mock auth manager.
9
- *
10
- * @param _projectId - The project ID (unused in mock implementation).
11
- */
12
- constructor(t) {
13
- }
14
- /**
15
- * Awaitable method whose promise only resolves when the auth manager is ready to be used.
16
- *
17
- * @returns A promise that resolves when the auth manager is ready to be used.
18
- */
19
- async ensureInitialized() {
20
- return Promise.resolve();
21
- }
22
- /**
23
- * Gets the current user, or null if there is no user signed in.
24
- *
25
- * @returns The current mock user if signed in, null otherwise.
26
- */
27
- async getUser() {
28
- return this.authState?.user ?? null;
29
- }
30
- /**
31
- * Returns whether the user is signed in - i.e., whether there is an unexpired
32
- * access token and user.
33
- *
34
- * @returns True if the mock user is signed in and token is not expired, false otherwise.
35
- */
36
- async isSignedIn() {
37
- return this.authState ? Promise.resolve(this.authState.expiresAt > Date.now()) : Promise.resolve(!1);
38
- }
39
- /**
40
- * Signs out the user, clearing all authentication state.
41
- * In the mock implementation, this simply clears the local auth state.
42
- */
43
- async signOut() {
44
- await this.clearAuthState();
45
- }
46
- /**
47
- * Sets a callback to be called when the auth state changes.
48
- * The callback is immediately called with the current auth state.
49
- *
50
- * @param callback - The function to call when the auth state changes.
51
- * Will be called with the current user or null.
52
- */
53
- addAuthStateChangeCallback(t) {
54
- this.authStateChangeCallback = t, t(this.authState?.user ?? null);
55
- }
56
- /**
57
- * Gets the access token. For mock, this always returns a valid token if signed in.
58
- * If the current token is expired, it will be refreshed automatically.
59
- *
60
- * @returns The mock access token if signed in, null otherwise.
61
- */
62
- async getToken() {
63
- return this.authState ? (this.authState.expiresAt <= Date.now() && await this.refreshToken(), this.authState?.accessToken ?? null) : null;
64
- }
65
- /**
66
- * Gets the currentlly registered wallet secret ID.
67
- *
68
- * @returns The wallet secret ID.
69
- */
70
- async getWalletSecretId() {
71
- return "mock-wallet-secret-id";
72
- }
73
- /**
74
- * Gets the X-Wallet-Auth header value.
75
- *
76
- * @param _options - The options for the request.
77
- * @param _options.requestMethod - The HTTP method of the request.
78
- * @param _options.requestHost - The host of the request.
79
- * @param _options.requestPath - The path of the request.
80
- * @param _options.requestData - The data of the request.
81
- * @returns The X-Wallet-Auth header value.
82
- */
83
- async getXWalletAuth(t) {
84
- if (!this.authState)
85
- throw new Error("User not signed in");
86
- return "x-wallet-auth";
87
- }
88
- /**
89
- * Sets the authentication state.
90
- * This will trigger the auth state change callback if one is registered.
91
- *
92
- * @param authState - The new authentication state to set.
93
- */
94
- async setAuthState(t) {
95
- this.authState = t, this.authStateChangeCallback && this.authStateChangeCallback(this.authState?.user ?? null);
96
- }
97
- /**
98
- * Clears the authentication state.
99
- * This will trigger the auth state change callback if one is registered.
100
- */
101
- async clearAuthState() {
102
- this.authState = null, this.authStateChangeCallback && this.authStateChangeCallback(null);
103
- }
104
- /**
105
- * Refreshes the mock token.
106
- * Only refreshes if there is an existing auth state (user is signed in).
107
- * Sets a new mock token with a 24-hour expiration.
108
- *
109
- * @private
110
- */
111
- async refreshToken() {
112
- this.authState && await this.setAuthState({
113
- accessToken: "mock-access-token",
114
- expiresAt: Date.now() + 1e3 * 60 * 60 * 24,
115
- user: e
116
- });
117
- }
3
+ const i = async (n) => await n.isSignedIn();
4
+ async function f(n, r, o) {
5
+ if (!await i(r))
6
+ throw new Error("User not signed in");
7
+ const c = await r.getUser();
8
+ if ("evmAccount" in n && !c.evmAccounts?.find((t) => t === n.evmAccount))
9
+ throw new Error("EVM account not found");
10
+ if ("evmSmartAccount" in n && !c.evmSmartAccounts?.find((t) => t === n.evmSmartAccount))
11
+ throw new Error("EVM Smart Account not found");
12
+ if ("solanaAccount" in n && !c.solanaAccounts?.find((t) => t === n.solanaAccount))
13
+ throw new Error("Solana account not found");
14
+ const e = await r.getWalletSecretId();
15
+ return o({ ...n, user: c, walletSecretId: e });
118
16
  }
119
17
  export {
120
- r as MockAuthManager
18
+ i as isSignedIn,
19
+ f as withAuth
121
20
  };
@@ -1,16 +1,121 @@
1
1
  import "@coinbase/cdp-api-client";
2
2
  import "viem";
3
- const t = "0x0000000000000000000000000000000000000000", s = {
4
- userId: "mock-user-id",
5
- evmAccounts: [t],
6
- authenticationMethods: {
7
- email: {
8
- type: "email",
9
- email: "test@test.com"
10
- }
3
+ import { mockUser as e } from "./index.native17.js";
4
+ class r {
5
+ authState = null;
6
+ authStateChangeCallback = null;
7
+ /**
8
+ * Initializes the mock auth manager.
9
+ *
10
+ * @param _projectId - The project ID (unused in mock implementation).
11
+ */
12
+ constructor(t) {
11
13
  }
12
- };
14
+ /**
15
+ * Awaitable method whose promise only resolves when the auth manager is ready to be used.
16
+ *
17
+ * @returns A promise that resolves when the auth manager is ready to be used.
18
+ */
19
+ async ensureInitialized() {
20
+ return Promise.resolve();
21
+ }
22
+ /**
23
+ * Gets the current user, or null if there is no user signed in.
24
+ *
25
+ * @returns The current mock user if signed in, null otherwise.
26
+ */
27
+ async getUser() {
28
+ return this.authState?.user ?? null;
29
+ }
30
+ /**
31
+ * Returns whether the user is signed in - i.e., whether there is an unexpired
32
+ * access token and user.
33
+ *
34
+ * @returns True if the mock user is signed in and token is not expired, false otherwise.
35
+ */
36
+ async isSignedIn() {
37
+ return this.authState ? Promise.resolve(this.authState.expiresAt > Date.now()) : Promise.resolve(!1);
38
+ }
39
+ /**
40
+ * Signs out the user, clearing all authentication state.
41
+ * In the mock implementation, this simply clears the local auth state.
42
+ */
43
+ async signOut() {
44
+ await this.clearAuthState();
45
+ }
46
+ /**
47
+ * Sets a callback to be called when the auth state changes.
48
+ * The callback is immediately called with the current auth state.
49
+ *
50
+ * @param callback - The function to call when the auth state changes.
51
+ * Will be called with the current user or null.
52
+ */
53
+ addAuthStateChangeCallback(t) {
54
+ this.authStateChangeCallback = t, t(this.authState?.user ?? null);
55
+ }
56
+ /**
57
+ * Gets the access token. For mock, this always returns a valid token if signed in.
58
+ * If the current token is expired, it will be refreshed automatically.
59
+ *
60
+ * @returns The mock access token if signed in, null otherwise.
61
+ */
62
+ async getToken() {
63
+ return this.authState ? (this.authState.expiresAt <= Date.now() && await this.refreshToken(), this.authState?.accessToken ?? null) : null;
64
+ }
65
+ /**
66
+ * Gets the currentlly registered wallet secret ID.
67
+ *
68
+ * @returns The wallet secret ID.
69
+ */
70
+ async getWalletSecretId() {
71
+ return "mock-wallet-secret-id";
72
+ }
73
+ /**
74
+ * Gets the X-Wallet-Auth header value.
75
+ *
76
+ * @param _options - The options for the request.
77
+ * @param _options.requestMethod - The HTTP method of the request.
78
+ * @param _options.requestHost - The host of the request.
79
+ * @param _options.requestPath - The path of the request.
80
+ * @param _options.requestData - The data of the request.
81
+ * @returns The X-Wallet-Auth header value.
82
+ */
83
+ async getXWalletAuth(t) {
84
+ if (!this.authState)
85
+ throw new Error("User not signed in");
86
+ return "x-wallet-auth";
87
+ }
88
+ /**
89
+ * Sets the authentication state.
90
+ * This will trigger the auth state change callback if one is registered.
91
+ *
92
+ * @param authState - The new authentication state to set.
93
+ */
94
+ async setAuthState(t) {
95
+ this.authState = t, this.authStateChangeCallback && this.authStateChangeCallback(this.authState?.user ?? null);
96
+ }
97
+ /**
98
+ * Clears the authentication state.
99
+ * This will trigger the auth state change callback if one is registered.
100
+ */
101
+ async clearAuthState() {
102
+ this.authState = null, this.authStateChangeCallback && this.authStateChangeCallback(null);
103
+ }
104
+ /**
105
+ * Refreshes the mock token.
106
+ * Only refreshes if there is an existing auth state (user is signed in).
107
+ * Sets a new mock token with a 24-hour expiration.
108
+ *
109
+ * @private
110
+ */
111
+ async refreshToken() {
112
+ this.authState && await this.setAuthState({
113
+ accessToken: "mock-access-token",
114
+ expiresAt: Date.now() + 1e3 * 60 * 60 * 24,
115
+ user: e
116
+ });
117
+ }
118
+ }
13
119
  export {
14
- t as mockAddress,
15
- s as mockUser
120
+ r as MockAuthManager
16
121
  };
@@ -1,44 +1,17 @@
1
- import { SendEvmTransactionWithEndUserAccountBodyNetwork as i } from "@coinbase/cdp-api-client";
2
- const t = (e) => !e || typeof e != "object" ? e : Array.isArray(e) ? e.map(t) : Object.keys(e).sort().reduce(
3
- (r, n) => (r[n] = t(e[n]), r),
4
- {}
5
- ), p = (e) => Object.values(i).includes(
6
- e
7
- ), s = {
8
- "base-sepolia": 84532,
9
- base: 8453,
10
- ethereum: 1,
11
- "ethereum-sepolia": 11155111,
12
- avalanche: 43114,
13
- polygon: 137,
14
- optimism: 10,
15
- arbitrum: 42161
16
- }, c = Object.fromEntries(
17
- Object.entries(s).map(([e, r]) => [r, e])
18
- ), u = (e) => Object.values(s).includes(
19
- e
20
- ), a = {
21
- "base-sepolia": 84532,
22
- base: 8453,
23
- ethereum: 1,
24
- "ethereum-sepolia": 11155111,
25
- avalanche: 43114,
26
- polygon: 137,
27
- optimism: 10,
28
- arbitrum: 42161,
29
- zora: 7777777,
30
- bnb: 56
31
- }, m = Object.fromEntries(
32
- Object.entries(a).map(([e, r]) => [r, e])
33
- ), d = (e) => Object.values(a).includes(
34
- e
35
- );
1
+ import "@coinbase/cdp-api-client";
2
+ import "viem";
3
+ const t = "0x0000000000000000000000000000000000000000", s = {
4
+ userId: "mock-user-id",
5
+ evmAccounts: [t],
6
+ solanaAccounts: ["5fNfvyp5f3BB9T24s6bC8QjDXuJqvU8WjziJpEQi9PWT"],
7
+ authenticationMethods: {
8
+ email: {
9
+ type: "email",
10
+ email: "test@test.com"
11
+ }
12
+ }
13
+ };
36
14
  export {
37
- u as isChainIdSupportedForCDPSends,
38
- d as isChainIdSupportedForCDPUserOps,
39
- p as isChainSupportedForCDPSends,
40
- c as sendTransactionChainIdToNameMapping,
41
- t as sortKeys,
42
- m as userOperationChainIdToNameMapping,
43
- a as userOperationNameToChainIdMapping
15
+ t as mockAddress,
16
+ s as mockUser
44
17
  };
@@ -1,22 +1,44 @@
1
- import "@coinbase/cdp-api-client";
2
- import "viem";
3
- let n = null, r = null;
4
- const i = (t) => {
5
- n = t;
6
- }, a = () => {
7
- if (!n)
8
- throw new Error("SDK not initialized");
9
- return n;
10
- }, g = (t) => {
11
- r = t;
12
- }, l = () => {
13
- if (!r)
14
- throw new Error("SDK not initialized");
15
- return r;
16
- };
1
+ import { SendEvmTransactionWithEndUserAccountBodyNetwork as i } from "@coinbase/cdp-api-client";
2
+ const t = (e) => !e || typeof e != "object" ? e : Array.isArray(e) ? e.map(t) : Object.keys(e).sort().reduce(
3
+ (r, n) => (r[n] = t(e[n]), r),
4
+ {}
5
+ ), p = (e) => Object.values(i).includes(
6
+ e
7
+ ), s = {
8
+ "base-sepolia": 84532,
9
+ base: 8453,
10
+ ethereum: 1,
11
+ "ethereum-sepolia": 11155111,
12
+ avalanche: 43114,
13
+ polygon: 137,
14
+ optimism: 10,
15
+ arbitrum: 42161
16
+ }, c = Object.fromEntries(
17
+ Object.entries(s).map(([e, r]) => [r, e])
18
+ ), u = (e) => Object.values(s).includes(
19
+ e
20
+ ), a = {
21
+ "base-sepolia": 84532,
22
+ base: 8453,
23
+ ethereum: 1,
24
+ "ethereum-sepolia": 11155111,
25
+ avalanche: 43114,
26
+ polygon: 137,
27
+ optimism: 10,
28
+ arbitrum: 42161,
29
+ zora: 7777777,
30
+ bnb: 56
31
+ }, m = Object.fromEntries(
32
+ Object.entries(a).map(([e, r]) => [r, e])
33
+ ), d = (e) => Object.values(a).includes(
34
+ e
35
+ );
17
36
  export {
18
- a as getConfig,
19
- l as getCoreAuthManager,
20
- i as setConfig,
21
- g as setCoreAuthManager
37
+ u as isChainIdSupportedForCDPSends,
38
+ d as isChainIdSupportedForCDPUserOps,
39
+ p as isChainSupportedForCDPSends,
40
+ c as sendTransactionChainIdToNameMapping,
41
+ t as sortKeys,
42
+ m as userOperationChainIdToNameMapping,
43
+ a as userOperationNameToChainIdMapping
22
44
  };