@0xkey-io/react-wallet-kit 0.1.0

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 (326) hide show
  1. package/LICENSE +201 -0
  2. package/README.MD +116 -0
  3. package/dist/_virtual/_rollupPluginBabelHelpers.mjs +307 -0
  4. package/dist/_virtual/_rollupPluginBabelHelpers.mjs.map +1 -0
  5. package/dist/components/auth/Action.d.ts +10 -0
  6. package/dist/components/auth/Action.d.ts.map +1 -0
  7. package/dist/components/auth/Action.js +76 -0
  8. package/dist/components/auth/Action.js.map +1 -0
  9. package/dist/components/auth/Action.mjs +97 -0
  10. package/dist/components/auth/Action.mjs.map +1 -0
  11. package/dist/components/auth/Email.d.ts +6 -0
  12. package/dist/components/auth/Email.d.ts.map +1 -0
  13. package/dist/components/auth/Email.js +77 -0
  14. package/dist/components/auth/Email.js.map +1 -0
  15. package/dist/components/auth/Email.mjs +98 -0
  16. package/dist/components/auth/Email.mjs.map +1 -0
  17. package/dist/components/auth/OAuth.d.ts +13 -0
  18. package/dist/components/auth/OAuth.d.ts.map +1 -0
  19. package/dist/components/auth/OAuth.js +63 -0
  20. package/dist/components/auth/OAuth.js.map +1 -0
  21. package/dist/components/auth/OAuth.mjs +68 -0
  22. package/dist/components/auth/OAuth.mjs.map +1 -0
  23. package/dist/components/auth/OTP.d.ts +21 -0
  24. package/dist/components/auth/OTP.d.ts.map +1 -0
  25. package/dist/components/auth/OTP.js +218 -0
  26. package/dist/components/auth/OTP.js.map +1 -0
  27. package/dist/components/auth/OTP.mjs +301 -0
  28. package/dist/components/auth/OTP.mjs.map +1 -0
  29. package/dist/components/auth/OrSeparator.d.ts +2 -0
  30. package/dist/components/auth/OrSeparator.d.ts.map +1 -0
  31. package/dist/components/auth/OrSeparator.js +20 -0
  32. package/dist/components/auth/OrSeparator.js.map +1 -0
  33. package/dist/components/auth/OrSeparator.mjs +18 -0
  34. package/dist/components/auth/OrSeparator.mjs.map +1 -0
  35. package/dist/components/auth/Passkey.d.ts +7 -0
  36. package/dist/components/auth/Passkey.d.ts.map +1 -0
  37. package/dist/components/auth/Passkey.js +34 -0
  38. package/dist/components/auth/Passkey.js.map +1 -0
  39. package/dist/components/auth/Passkey.mjs +30 -0
  40. package/dist/components/auth/Passkey.mjs.map +1 -0
  41. package/dist/components/auth/Phone.d.ts +6 -0
  42. package/dist/components/auth/Phone.d.ts.map +1 -0
  43. package/dist/components/auth/Phone.js +67 -0
  44. package/dist/components/auth/Phone.js.map +1 -0
  45. package/dist/components/auth/Phone.mjs +92 -0
  46. package/dist/components/auth/Phone.mjs.map +1 -0
  47. package/dist/components/auth/Wallet.d.ts +34 -0
  48. package/dist/components/auth/Wallet.d.ts.map +1 -0
  49. package/dist/components/auth/Wallet.js +517 -0
  50. package/dist/components/auth/Wallet.js.map +1 -0
  51. package/dist/components/auth/Wallet.mjs +618 -0
  52. package/dist/components/auth/Wallet.mjs.map +1 -0
  53. package/dist/components/auth/index.d.ts +9 -0
  54. package/dist/components/auth/index.d.ts.map +1 -0
  55. package/dist/components/auth/index.js +457 -0
  56. package/dist/components/auth/index.js.map +1 -0
  57. package/dist/components/auth/index.mjs +672 -0
  58. package/dist/components/auth/index.mjs.map +1 -0
  59. package/dist/components/design/Buttons.d.ts +29 -0
  60. package/dist/components/design/Buttons.d.ts.map +1 -0
  61. package/dist/components/design/Buttons.js +87 -0
  62. package/dist/components/design/Buttons.js.map +1 -0
  63. package/dist/components/design/Buttons.mjs +79 -0
  64. package/dist/components/design/Buttons.mjs.map +1 -0
  65. package/dist/components/design/Failure.d.ts +9 -0
  66. package/dist/components/design/Failure.d.ts.map +1 -0
  67. package/dist/components/design/Failure.js +33 -0
  68. package/dist/components/design/Failure.js.map +1 -0
  69. package/dist/components/design/Failure.mjs +34 -0
  70. package/dist/components/design/Failure.mjs.map +1 -0
  71. package/dist/components/design/Inputs.d.ts +9 -0
  72. package/dist/components/design/Inputs.d.ts.map +1 -0
  73. package/dist/components/design/Inputs.js +135 -0
  74. package/dist/components/design/Inputs.js.map +1 -0
  75. package/dist/components/design/Inputs.mjs +133 -0
  76. package/dist/components/design/Inputs.mjs.map +1 -0
  77. package/dist/components/design/Lottie/Dynamic.d.ts +2 -0
  78. package/dist/components/design/Lottie/Dynamic.d.ts.map +1 -0
  79. package/dist/components/design/Lottie/Dynamic.js +9 -0
  80. package/dist/components/design/Lottie/Dynamic.js.map +1 -0
  81. package/dist/components/design/Lottie/Dynamic.mjs +24 -0
  82. package/dist/components/design/Lottie/Dynamic.mjs.map +1 -0
  83. package/dist/components/design/Lottie/Wrapper.d.ts +8 -0
  84. package/dist/components/design/Lottie/Wrapper.d.ts.map +1 -0
  85. package/dist/components/design/Lottie/Wrapper.js +26 -0
  86. package/dist/components/design/Lottie/Wrapper.js.map +1 -0
  87. package/dist/components/design/Lottie/Wrapper.mjs +42 -0
  88. package/dist/components/design/Lottie/Wrapper.mjs.map +1 -0
  89. package/dist/components/design/Spinners.d.ts +9 -0
  90. package/dist/components/design/Spinners.d.ts.map +1 -0
  91. package/dist/components/design/Spinners.js +38 -0
  92. package/dist/components/design/Spinners.js.map +1 -0
  93. package/dist/components/design/Spinners.mjs +37 -0
  94. package/dist/components/design/Spinners.mjs.map +1 -0
  95. package/dist/components/design/Success.d.ts +8 -0
  96. package/dist/components/design/Success.d.ts.map +1 -0
  97. package/dist/components/design/Success.js +82 -0
  98. package/dist/components/design/Success.js.map +1 -0
  99. package/dist/components/design/Success.mjs +86 -0
  100. package/dist/components/design/Success.mjs.map +1 -0
  101. package/dist/components/design/Svg.d.ts +13 -0
  102. package/dist/components/design/Svg.d.ts.map +1 -0
  103. package/dist/components/design/Svg.js +165 -0
  104. package/dist/components/design/Svg.js.map +1 -0
  105. package/dist/components/design/Svg.mjs +161 -0
  106. package/dist/components/design/Svg.mjs.map +1 -0
  107. package/dist/components/export/Export.d.ts +13 -0
  108. package/dist/components/export/Export.d.ts.map +1 -0
  109. package/dist/components/export/Export.js +169 -0
  110. package/dist/components/export/Export.js.map +1 -0
  111. package/dist/components/export/Export.mjs +213 -0
  112. package/dist/components/export/Export.mjs.map +1 -0
  113. package/dist/components/export/ExportWarning.d.ts +15 -0
  114. package/dist/components/export/ExportWarning.d.ts.map +1 -0
  115. package/dist/components/export/ExportWarning.js +141 -0
  116. package/dist/components/export/ExportWarning.js.map +1 -0
  117. package/dist/components/export/ExportWarning.mjs +174 -0
  118. package/dist/components/export/ExportWarning.mjs.map +1 -0
  119. package/dist/components/import/Import.d.ts +20 -0
  120. package/dist/components/import/Import.d.ts.map +1 -0
  121. package/dist/components/import/Import.js +290 -0
  122. package/dist/components/import/Import.js.map +1 -0
  123. package/dist/components/import/Import.mjs +422 -0
  124. package/dist/components/import/Import.mjs.map +1 -0
  125. package/dist/components/onramp/OnRamp.d.ts +14 -0
  126. package/dist/components/onramp/OnRamp.d.ts.map +1 -0
  127. package/dist/components/onramp/OnRamp.js +61 -0
  128. package/dist/components/onramp/OnRamp.js.map +1 -0
  129. package/dist/components/onramp/OnRamp.mjs +79 -0
  130. package/dist/components/onramp/OnRamp.mjs.map +1 -0
  131. package/dist/components/send-transaction/SendTransaction.d.ts +12 -0
  132. package/dist/components/send-transaction/SendTransaction.d.ts.map +1 -0
  133. package/dist/components/send-transaction/SendTransaction.js +65 -0
  134. package/dist/components/send-transaction/SendTransaction.js.map +1 -0
  135. package/dist/components/send-transaction/SendTransaction.mjs +89 -0
  136. package/dist/components/send-transaction/SendTransaction.mjs.map +1 -0
  137. package/dist/components/send-transaction/helpers.d.ts +4 -0
  138. package/dist/components/send-transaction/helpers.d.ts.map +1 -0
  139. package/dist/components/send-transaction/helpers.js +37 -0
  140. package/dist/components/send-transaction/helpers.js.map +1 -0
  141. package/dist/components/send-transaction/helpers.mjs +34 -0
  142. package/dist/components/send-transaction/helpers.mjs.map +1 -0
  143. package/dist/components/sign/Message.d.ts +18 -0
  144. package/dist/components/sign/Message.d.ts.map +1 -0
  145. package/dist/components/sign/Message.js +132 -0
  146. package/dist/components/sign/Message.js.map +1 -0
  147. package/dist/components/sign/Message.mjs +148 -0
  148. package/dist/components/sign/Message.mjs.map +1 -0
  149. package/dist/components/user/ConnectWallet.d.ts +8 -0
  150. package/dist/components/user/ConnectWallet.d.ts.map +1 -0
  151. package/dist/components/user/ConnectWallet.js +114 -0
  152. package/dist/components/user/ConnectWallet.js.map +1 -0
  153. package/dist/components/user/ConnectWallet.mjs +194 -0
  154. package/dist/components/user/ConnectWallet.mjs.map +1 -0
  155. package/dist/components/user/RemoveEmail.d.ts +12 -0
  156. package/dist/components/user/RemoveEmail.d.ts.map +1 -0
  157. package/dist/components/user/RemoveEmail.js +105 -0
  158. package/dist/components/user/RemoveEmail.js.map +1 -0
  159. package/dist/components/user/RemoveEmail.mjs +124 -0
  160. package/dist/components/user/RemoveEmail.mjs.map +1 -0
  161. package/dist/components/user/RemoveOAuthProvider.d.ts +12 -0
  162. package/dist/components/user/RemoveOAuthProvider.d.ts.map +1 -0
  163. package/dist/components/user/RemoveOAuthProvider.js +110 -0
  164. package/dist/components/user/RemoveOAuthProvider.js.map +1 -0
  165. package/dist/components/user/RemoveOAuthProvider.mjs +131 -0
  166. package/dist/components/user/RemoveOAuthProvider.mjs.map +1 -0
  167. package/dist/components/user/RemovePasskey.d.ts +12 -0
  168. package/dist/components/user/RemovePasskey.d.ts.map +1 -0
  169. package/dist/components/user/RemovePasskey.js +114 -0
  170. package/dist/components/user/RemovePasskey.js.map +1 -0
  171. package/dist/components/user/RemovePasskey.mjs +135 -0
  172. package/dist/components/user/RemovePasskey.mjs.map +1 -0
  173. package/dist/components/user/RemovePhoneNumber.d.ts +12 -0
  174. package/dist/components/user/RemovePhoneNumber.d.ts.map +1 -0
  175. package/dist/components/user/RemovePhoneNumber.js +105 -0
  176. package/dist/components/user/RemovePhoneNumber.js.map +1 -0
  177. package/dist/components/user/RemovePhoneNumber.mjs +124 -0
  178. package/dist/components/user/RemovePhoneNumber.mjs.map +1 -0
  179. package/dist/components/user/UpdateEmail.d.ts +12 -0
  180. package/dist/components/user/UpdateEmail.d.ts.map +1 -0
  181. package/dist/components/user/UpdateEmail.js +154 -0
  182. package/dist/components/user/UpdateEmail.js.map +1 -0
  183. package/dist/components/user/UpdateEmail.mjs +197 -0
  184. package/dist/components/user/UpdateEmail.mjs.map +1 -0
  185. package/dist/components/user/UpdatePhoneNumber.d.ts +12 -0
  186. package/dist/components/user/UpdatePhoneNumber.d.ts.map +1 -0
  187. package/dist/components/user/UpdatePhoneNumber.js +151 -0
  188. package/dist/components/user/UpdatePhoneNumber.js.map +1 -0
  189. package/dist/components/user/UpdatePhoneNumber.mjs +198 -0
  190. package/dist/components/user/UpdatePhoneNumber.mjs.map +1 -0
  191. package/dist/components/user/UpdateUserName.d.ts +13 -0
  192. package/dist/components/user/UpdateUserName.d.ts.map +1 -0
  193. package/dist/components/user/UpdateUserName.js +113 -0
  194. package/dist/components/user/UpdateUserName.js.map +1 -0
  195. package/dist/components/user/UpdateUserName.mjs +139 -0
  196. package/dist/components/user/UpdateUserName.mjs.map +1 -0
  197. package/dist/components/verify/Verify.d.ts +9 -0
  198. package/dist/components/verify/Verify.d.ts.map +1 -0
  199. package/dist/components/verify/Verify.js +121 -0
  200. package/dist/components/verify/Verify.js.map +1 -0
  201. package/dist/components/verify/Verify.mjs +149 -0
  202. package/dist/components/verify/Verify.mjs.map +1 -0
  203. package/dist/index.d.ts +25 -0
  204. package/dist/index.d.ts.map +1 -0
  205. package/dist/index.js +74 -0
  206. package/dist/index.js.map +1 -0
  207. package/dist/index.mjs +8 -0
  208. package/dist/index.mjs.map +1 -0
  209. package/dist/providers/ZeroXKeyProvider.d.ts +9 -0
  210. package/dist/providers/ZeroXKeyProvider.d.ts.map +1 -0
  211. package/dist/providers/ZeroXKeyProvider.js +36 -0
  212. package/dist/providers/ZeroXKeyProvider.js.map +1 -0
  213. package/dist/providers/ZeroXKeyProvider.mjs +34 -0
  214. package/dist/providers/ZeroXKeyProvider.mjs.map +1 -0
  215. package/dist/providers/client/Hook.d.ts +4 -0
  216. package/dist/providers/client/Hook.d.ts.map +1 -0
  217. package/dist/providers/client/Hook.js +15 -0
  218. package/dist/providers/client/Hook.js.map +1 -0
  219. package/dist/providers/client/Hook.mjs +13 -0
  220. package/dist/providers/client/Hook.mjs.map +1 -0
  221. package/dist/providers/client/Provider.d.ts +39 -0
  222. package/dist/providers/client/Provider.d.ts.map +1 -0
  223. package/dist/providers/client/Provider.js +3934 -0
  224. package/dist/providers/client/Provider.js.map +1 -0
  225. package/dist/providers/client/Provider.mjs +6895 -0
  226. package/dist/providers/client/Provider.mjs.map +1 -0
  227. package/dist/providers/client/Types.d.ts +711 -0
  228. package/dist/providers/client/Types.d.ts.map +1 -0
  229. package/dist/providers/client/Types.js +10 -0
  230. package/dist/providers/client/Types.js.map +1 -0
  231. package/dist/providers/client/Types.mjs +8 -0
  232. package/dist/providers/client/Types.mjs.map +1 -0
  233. package/dist/providers/index.d.ts +5 -0
  234. package/dist/providers/index.d.ts.map +1 -0
  235. package/dist/providers/modal/Hook.d.ts +4 -0
  236. package/dist/providers/modal/Hook.d.ts.map +1 -0
  237. package/dist/providers/modal/Hook.js +15 -0
  238. package/dist/providers/modal/Hook.js.map +1 -0
  239. package/dist/providers/modal/Hook.mjs +13 -0
  240. package/dist/providers/modal/Hook.mjs.map +1 -0
  241. package/dist/providers/modal/Provider.d.ts +27 -0
  242. package/dist/providers/modal/Provider.d.ts.map +1 -0
  243. package/dist/providers/modal/Provider.js +48 -0
  244. package/dist/providers/modal/Provider.js.map +1 -0
  245. package/dist/providers/modal/Provider.mjs +68 -0
  246. package/dist/providers/modal/Provider.mjs.map +1 -0
  247. package/dist/providers/modal/Root.d.ts +7 -0
  248. package/dist/providers/modal/Root.d.ts.map +1 -0
  249. package/dist/providers/modal/Root.js +345 -0
  250. package/dist/providers/modal/Root.js.map +1 -0
  251. package/dist/providers/modal/Root.mjs +352 -0
  252. package/dist/providers/modal/Root.mjs.map +1 -0
  253. package/dist/providers/theme/Overrides.d.ts +18 -0
  254. package/dist/providers/theme/Overrides.d.ts.map +1 -0
  255. package/dist/providers/theme/Overrides.js +35 -0
  256. package/dist/providers/theme/Overrides.js.map +1 -0
  257. package/dist/providers/theme/Overrides.mjs +37 -0
  258. package/dist/providers/theme/Overrides.mjs.map +1 -0
  259. package/dist/styles.css +1 -0
  260. package/dist/tests/oauth-test.d.ts +2 -0
  261. package/dist/tests/oauth-test.d.ts.map +1 -0
  262. package/dist/tests/timers-test.d.ts +2 -0
  263. package/dist/tests/timers-test.d.ts.map +1 -0
  264. package/dist/tests/utils-test.d.ts +2 -0
  265. package/dist/tests/utils-test.d.ts.map +1 -0
  266. package/dist/typedoc-entry/index.d.ts +5 -0
  267. package/dist/typedoc-entry/index.d.ts.map +1 -0
  268. package/dist/types/base.d.ts +178 -0
  269. package/dist/types/base.d.ts.map +1 -0
  270. package/dist/types/base.js +55 -0
  271. package/dist/types/base.js.map +1 -0
  272. package/dist/types/base.mjs +50 -0
  273. package/dist/types/base.mjs.map +1 -0
  274. package/dist/types/method-types.d.ts +258 -0
  275. package/dist/types/method-types.d.ts.map +1 -0
  276. package/dist/utils/oauth/completion.d.ts +132 -0
  277. package/dist/utils/oauth/completion.d.ts.map +1 -0
  278. package/dist/utils/oauth/completion.js +136 -0
  279. package/dist/utils/oauth/completion.js.map +1 -0
  280. package/dist/utils/oauth/completion.mjs +176 -0
  281. package/dist/utils/oauth/completion.mjs.map +1 -0
  282. package/dist/utils/oauth/config.d.ts +34 -0
  283. package/dist/utils/oauth/config.d.ts.map +1 -0
  284. package/dist/utils/oauth/config.js +69 -0
  285. package/dist/utils/oauth/config.js.map +1 -0
  286. package/dist/utils/oauth/config.mjs +54 -0
  287. package/dist/utils/oauth/config.mjs.map +1 -0
  288. package/dist/utils/oauth/helpers.d.ts +13 -0
  289. package/dist/utils/oauth/helpers.d.ts.map +1 -0
  290. package/dist/utils/oauth/helpers.js +38 -0
  291. package/dist/utils/oauth/helpers.js.map +1 -0
  292. package/dist/utils/oauth/helpers.mjs +35 -0
  293. package/dist/utils/oauth/helpers.mjs.map +1 -0
  294. package/dist/utils/oauth/index.d.ts +7 -0
  295. package/dist/utils/oauth/index.d.ts.map +1 -0
  296. package/dist/utils/oauth/pkce.d.ts +14 -0
  297. package/dist/utils/oauth/pkce.d.ts.map +1 -0
  298. package/dist/utils/oauth/pkce.js +48 -0
  299. package/dist/utils/oauth/pkce.js.map +1 -0
  300. package/dist/utils/oauth/pkce.mjs +85 -0
  301. package/dist/utils/oauth/pkce.mjs.map +1 -0
  302. package/dist/utils/oauth/storage.d.ts +48 -0
  303. package/dist/utils/oauth/storage.d.ts.map +1 -0
  304. package/dist/utils/oauth/storage.js +87 -0
  305. package/dist/utils/oauth/storage.js.map +1 -0
  306. package/dist/utils/oauth/storage.mjs +78 -0
  307. package/dist/utils/oauth/storage.mjs.map +1 -0
  308. package/dist/utils/oauth/url.d.ts +94 -0
  309. package/dist/utils/oauth/url.d.ts.map +1 -0
  310. package/dist/utils/oauth/url.js +224 -0
  311. package/dist/utils/oauth/url.js.map +1 -0
  312. package/dist/utils/oauth/url.mjs +230 -0
  313. package/dist/utils/oauth/url.mjs.map +1 -0
  314. package/dist/utils/timers.d.ts +73 -0
  315. package/dist/utils/timers.d.ts.map +1 -0
  316. package/dist/utils/timers.js +133 -0
  317. package/dist/utils/timers.js.map +1 -0
  318. package/dist/utils/timers.mjs +142 -0
  319. package/dist/utils/timers.mjs.map +1 -0
  320. package/dist/utils/utils.d.ts +40 -0
  321. package/dist/utils/utils.d.ts.map +1 -0
  322. package/dist/utils/utils.js +116 -0
  323. package/dist/utils/utils.js.map +1 -0
  324. package/dist/utils/utils.mjs +164 -0
  325. package/dist/utils/utils.mjs.map +1 -0
  326. package/package.json +91 -0
@@ -0,0 +1,55 @@
1
+ 'use strict';
2
+
3
+ var iframeStamper = require('@0xkey-io/iframe-stamper');
4
+
5
+ /**@internal */
6
+ exports.ExportType = void 0;
7
+ (function (ExportType) {
8
+ ExportType["Wallet"] = "WALLET";
9
+ ExportType["PrivateKey"] = "PRIVATE_KEY";
10
+ ExportType["WalletAccount"] = "WALLET_ACCOUNT";
11
+ })(exports.ExportType || (exports.ExportType = {}));
12
+ /**@internal */
13
+ exports.ImportType = void 0;
14
+ (function (ImportType) {
15
+ ImportType["Wallet"] = "WALLET";
16
+ ImportType["PrivateKey"] = "PRIVATE_KEY";
17
+ })(exports.ImportType || (exports.ImportType = {}));
18
+ /**
19
+ * Enum representing the authentication states of the user.
20
+ * - Unauthenticated: The user is not authenticated.
21
+ * - Authenticated: The user is authenticated.
22
+ */
23
+ exports.AuthState = void 0;
24
+ (function (AuthState) {
25
+ AuthState["Unauthenticated"] = "unauthenticated";
26
+ AuthState["Authenticated"] = "authenticated";
27
+ })(exports.AuthState || (exports.AuthState = {}));
28
+ /**
29
+ * Enum representing the states of the client.
30
+ * - Loading: The client is currently loading.
31
+ * - Ready: The client is ready for use.
32
+ * - Error: An error occurred while initializing the client.
33
+ */
34
+ exports.ClientState = void 0;
35
+ (function (ClientState) {
36
+ ClientState["Loading"] = "loading";
37
+ ClientState["Ready"] = "ready";
38
+ ClientState["Error"] = "error";
39
+ })(exports.ClientState || (exports.ClientState = {}));
40
+ /**
41
+ * Enum representing the authentication methods.
42
+ */
43
+ exports.AuthMethod = void 0;
44
+ (function (AuthMethod) {
45
+ AuthMethod["Otp"] = "otp";
46
+ AuthMethod["Passkey"] = "passkey";
47
+ AuthMethod["Wallet"] = "wallet";
48
+ AuthMethod["Oauth"] = "oauth";
49
+ })(exports.AuthMethod || (exports.AuthMethod = {}));
50
+
51
+ Object.defineProperty(exports, "KeyFormat", {
52
+ enumerable: true,
53
+ get: function () { return iframeStamper.KeyFormat; }
54
+ });
55
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sources":["../../src/types/base.ts"],"sourcesContent":[null],"names":["ExportType","ImportType","AuthState","ClientState","AuthMethod"],"mappings":";;;;AA+IA;AACYA;AAAZ,CAAA,UAAYA,UAAU,EAAA;AACpBA,EAAAA,UAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjBA,EAAAA,UAAA,CAAA,YAAA,CAAA,GAAA,aAA0B;AAC1BA,EAAAA,UAAA,CAAA,eAAA,CAAA,GAAA,gBAAgC;AAClC,CAAC,EAJWA,kBAAU,KAAVA,kBAAU,GAAA,EAAA,CAAA,CAAA;AAMtB;AACYC;AAAZ,CAAA,UAAYA,UAAU,EAAA;AACpBA,EAAAA,UAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjBA,EAAAA,UAAA,CAAA,YAAA,CAAA,GAAA,aAA0B;AAC5B,CAAC,EAHWA,kBAAU,KAAVA,kBAAU,GAAA,EAAA,CAAA,CAAA;AAOtB;;;;AAIG;AACSC;AAAZ,CAAA,UAAYA,SAAS,EAAA;AACnBA,EAAAA,SAAA,CAAA,iBAAA,CAAA,GAAA,iBAAmC;AACnCA,EAAAA,SAAA,CAAA,eAAA,CAAA,GAAA,eAA+B;AACjC,CAAC,EAHWA,iBAAS,KAATA,iBAAS,GAAA,EAAA,CAAA,CAAA;AAKrB;;;;;AAKG;AACSC;AAAZ,CAAA,UAAYA,WAAW,EAAA;AACrBA,EAAAA,WAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnBA,EAAAA,WAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACfA,EAAAA,WAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACjB,CAAC,EAJWA,mBAAW,KAAXA,mBAAW,GAAA,EAAA,CAAA,CAAA;AAavB;;AAEG;AACSC;AAAZ,CAAA,UAAYA,UAAU,EAAA;AACpBA,EAAAA,UAAA,CAAA,KAAA,CAAA,GAAA,KAAW;AACXA,EAAAA,UAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnBA,EAAAA,UAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjBA,EAAAA,UAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACjB,CAAC,EALWA,kBAAU,KAAVA,kBAAU,GAAA,EAAA,CAAA,CAAA;;;;;;;"}
@@ -0,0 +1,50 @@
1
+ export { KeyFormat } from '@0xkey-io/iframe-stamper';
2
+
3
+ /**@internal */
4
+ var ExportType;
5
+ (function (ExportType) {
6
+ ExportType["Wallet"] = "WALLET";
7
+ ExportType["PrivateKey"] = "PRIVATE_KEY";
8
+ ExportType["WalletAccount"] = "WALLET_ACCOUNT";
9
+ })(ExportType || (ExportType = {}));
10
+ /**@internal */
11
+ var ImportType;
12
+ (function (ImportType) {
13
+ ImportType["Wallet"] = "WALLET";
14
+ ImportType["PrivateKey"] = "PRIVATE_KEY";
15
+ })(ImportType || (ImportType = {}));
16
+ /**
17
+ * Enum representing the authentication states of the user.
18
+ * - Unauthenticated: The user is not authenticated.
19
+ * - Authenticated: The user is authenticated.
20
+ */
21
+ var AuthState;
22
+ (function (AuthState) {
23
+ AuthState["Unauthenticated"] = "unauthenticated";
24
+ AuthState["Authenticated"] = "authenticated";
25
+ })(AuthState || (AuthState = {}));
26
+ /**
27
+ * Enum representing the states of the client.
28
+ * - Loading: The client is currently loading.
29
+ * - Ready: The client is ready for use.
30
+ * - Error: An error occurred while initializing the client.
31
+ */
32
+ var ClientState;
33
+ (function (ClientState) {
34
+ ClientState["Loading"] = "loading";
35
+ ClientState["Ready"] = "ready";
36
+ ClientState["Error"] = "error";
37
+ })(ClientState || (ClientState = {}));
38
+ /**
39
+ * Enum representing the authentication methods.
40
+ */
41
+ var AuthMethod;
42
+ (function (AuthMethod) {
43
+ AuthMethod["Otp"] = "otp";
44
+ AuthMethod["Passkey"] = "passkey";
45
+ AuthMethod["Wallet"] = "wallet";
46
+ AuthMethod["Oauth"] = "oauth";
47
+ })(AuthMethod || (AuthMethod = {}));
48
+
49
+ export { AuthMethod, AuthState, ClientState, ExportType, ImportType };
50
+ //# sourceMappingURL=base.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.mjs","sources":["../../src/types/base.ts"],"sourcesContent":[null],"names":["ExportType","ImportType","AuthState","ClientState","AuthMethod"],"mappings":";;AA+IA;IACYA;AAAZ,CAAA,UAAYA,UAAU,EAAA;AACpBA,EAAAA,UAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjBA,EAAAA,UAAA,CAAA,YAAA,CAAA,GAAA,aAA0B;AAC1BA,EAAAA,UAAA,CAAA,eAAA,CAAA,GAAA,gBAAgC;AAClC,CAAC,EAJWA,UAAU,KAAVA,UAAU,GAAA,EAAA,CAAA,CAAA;AAMtB;IACYC;AAAZ,CAAA,UAAYA,UAAU,EAAA;AACpBA,EAAAA,UAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjBA,EAAAA,UAAA,CAAA,YAAA,CAAA,GAAA,aAA0B;AAC5B,CAAC,EAHWA,UAAU,KAAVA,UAAU,GAAA,EAAA,CAAA,CAAA;AAOtB;;;;AAIG;IACSC;AAAZ,CAAA,UAAYA,SAAS,EAAA;AACnBA,EAAAA,SAAA,CAAA,iBAAA,CAAA,GAAA,iBAAmC;AACnCA,EAAAA,SAAA,CAAA,eAAA,CAAA,GAAA,eAA+B;AACjC,CAAC,EAHWA,SAAS,KAATA,SAAS,GAAA,EAAA,CAAA,CAAA;AAKrB;;;;;AAKG;IACSC;AAAZ,CAAA,UAAYA,WAAW,EAAA;AACrBA,EAAAA,WAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnBA,EAAAA,WAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACfA,EAAAA,WAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACjB,CAAC,EAJWA,WAAW,KAAXA,WAAW,GAAA,EAAA,CAAA,CAAA;AAavB;;AAEG;IACSC;AAAZ,CAAA,UAAYA,UAAU,EAAA;AACpBA,EAAAA,UAAA,CAAA,KAAA,CAAA,GAAA,KAAW;AACXA,EAAAA,UAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnBA,EAAAA,UAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjBA,EAAAA,UAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACjB,CAAC,EALWA,UAAU,KAAVA,UAAU,GAAA,EAAA,CAAA,CAAA;;;;"}
@@ -0,0 +1,258 @@
1
+ /// <reference types="react" />
2
+ import type { Erc20Transfer, EthTransaction, OAuthProviders, SolanaTransaction, StamperType, v1AddressFormat, v1AppProof, v1Curve, v1FiatOnRampBlockchainNetwork, v1FiatOnRampCryptoCurrency, v1FiatOnRampCurrency, v1FiatOnRampPaymentMethod, v1FiatOnRampProvider, v1HashFunction, v1PayloadEncoding, v1WalletAccountParams, WalletAccount } from "@0xkey-io/core";
3
+ import type { KeyFormat } from "./base";
4
+ export type RefreshUserParams = {
5
+ stampWith?: StamperType | undefined;
6
+ organizationId?: string;
7
+ userId?: string;
8
+ };
9
+ export type RefreshWalletsParams = {
10
+ stampWith?: StamperType | undefined;
11
+ organizationId?: string;
12
+ userId?: string;
13
+ };
14
+ export type HandleLoginParams = {
15
+ sessionKey?: string;
16
+ logoLight?: string;
17
+ logoDark?: string;
18
+ logoClassName?: string;
19
+ title?: string;
20
+ };
21
+ export type HandleDiscordOauthParams = {
22
+ clientId?: string;
23
+ additionalState?: Record<string, string>;
24
+ openInPage?: boolean;
25
+ onOauthSuccess?: (params: {
26
+ publicKey: string;
27
+ oidcToken: string;
28
+ providerName: string;
29
+ }) => any;
30
+ };
31
+ export type HandleXOauthParams = {
32
+ clientId?: string;
33
+ additionalState?: Record<string, string>;
34
+ openInPage?: boolean;
35
+ onOauthSuccess?: (params: {
36
+ publicKey: string;
37
+ oidcToken: string;
38
+ providerName: string;
39
+ }) => any;
40
+ };
41
+ export type HandleGoogleOauthParams = {
42
+ clientId?: string;
43
+ additionalState?: Record<string, string>;
44
+ openInPage?: boolean;
45
+ onOauthSuccess?: (params: {
46
+ publicKey: string;
47
+ oidcToken: string;
48
+ providerName: string;
49
+ }) => any;
50
+ };
51
+ export type HandleAppleOauthParams = {
52
+ clientId?: string;
53
+ additionalState?: Record<string, string>;
54
+ openInPage?: boolean;
55
+ onOauthSuccess?: (params: {
56
+ publicKey: string;
57
+ oidcToken: string;
58
+ providerName: string;
59
+ }) => any;
60
+ };
61
+ export type HandleFacebookOauthParams = {
62
+ clientId?: string;
63
+ additionalState?: Record<string, string>;
64
+ openInPage?: boolean;
65
+ onOauthSuccess?: (params: {
66
+ publicKey: string;
67
+ oidcToken: string;
68
+ providerName: string;
69
+ }) => any;
70
+ };
71
+ export type HandleExportWalletParams = {
72
+ walletId: string;
73
+ targetPublicKey?: string;
74
+ stampWith?: StamperType | undefined;
75
+ organizationId?: string;
76
+ userId?: string;
77
+ };
78
+ export type HandleExportPrivateKeyParams = {
79
+ privateKeyId: string;
80
+ targetPublicKey?: string;
81
+ keyFormat?: KeyFormat;
82
+ stampWith?: StamperType | undefined;
83
+ organizationId?: string;
84
+ userId?: string;
85
+ };
86
+ export type HandleExportWalletAccountParams = {
87
+ address: string;
88
+ targetPublicKey?: string;
89
+ keyFormat?: KeyFormat;
90
+ stampWith?: StamperType | undefined;
91
+ organizationId?: string;
92
+ userId?: string;
93
+ };
94
+ export type HandleImportWalletParams = {
95
+ defaultWalletAccounts?: v1AddressFormat[] | v1WalletAccountParams[];
96
+ successPageDuration?: number | undefined;
97
+ stampWith?: StamperType | undefined;
98
+ walletName?: string;
99
+ clearClipboardOnPaste?: boolean | undefined;
100
+ organizationId?: string;
101
+ userId?: string;
102
+ };
103
+ export type HandleImportPrivateKeyParams = {
104
+ curve: v1Curve;
105
+ addressFormats: v1AddressFormat[];
106
+ successPageDuration?: number | undefined;
107
+ keyFormat?: KeyFormat | undefined;
108
+ stampWith?: StamperType | undefined;
109
+ keyName?: string;
110
+ clearClipboardOnPaste?: boolean | undefined;
111
+ organizationId?: string;
112
+ userId?: string;
113
+ };
114
+ export type HandleUpdateUserEmailParams = {
115
+ email?: string;
116
+ title?: string;
117
+ subTitle?: string;
118
+ successPageDuration?: number | undefined;
119
+ stampWith?: StamperType | undefined;
120
+ organizationId?: string;
121
+ userId?: string;
122
+ };
123
+ export type HandleUpdateUserPhoneNumberParams = {
124
+ phoneNumber?: string;
125
+ formattedPhone?: string;
126
+ title?: string;
127
+ subTitle?: string;
128
+ successPageDuration?: number | undefined;
129
+ organizationId?: string;
130
+ userId?: string;
131
+ stampWith?: StamperType | undefined;
132
+ };
133
+ export type HandleUpdateUserNameParams = {
134
+ userName?: string;
135
+ title?: string;
136
+ subTitle?: string;
137
+ successPageDuration?: number | undefined;
138
+ stampWith?: StamperType | undefined;
139
+ organizationId?: string;
140
+ userId?: string;
141
+ };
142
+ export type HandleAddEmailParams = {
143
+ email?: string;
144
+ title?: string;
145
+ subTitle?: string;
146
+ successPageDuration?: number | undefined;
147
+ organizationId?: string;
148
+ userId?: string;
149
+ stampWith?: StamperType | undefined;
150
+ };
151
+ export type HandleAddPhoneNumberParams = {
152
+ phoneNumber?: string;
153
+ formattedPhone?: string;
154
+ title?: string;
155
+ subTitle?: string;
156
+ successPageDuration?: number | undefined;
157
+ organizationId?: string;
158
+ userId?: string;
159
+ stampWith?: StamperType | undefined;
160
+ };
161
+ export type HandleAddOauthProviderParams = {
162
+ providerName: OAuthProviders;
163
+ stampWith?: StamperType | undefined;
164
+ organizationId?: string;
165
+ successPageDuration?: number | undefined;
166
+ userId?: string;
167
+ openInPage?: boolean;
168
+ };
169
+ export type HandleRemoveOauthProviderParams = {
170
+ providerId: string;
171
+ title?: string;
172
+ subTitle?: string;
173
+ successPageDuration?: number | undefined;
174
+ stampWith?: StamperType | undefined;
175
+ organizationId?: string;
176
+ };
177
+ export type HandleAddPasskeyParams = {
178
+ name?: string;
179
+ displayName?: string;
180
+ userId?: string;
181
+ successPageDuration?: number | undefined;
182
+ stampWith?: StamperType | undefined;
183
+ organizationId?: string;
184
+ };
185
+ export type HandleRemovePasskeyParams = {
186
+ authenticatorId: string;
187
+ userId?: string;
188
+ title?: string;
189
+ subTitle?: string;
190
+ successPageDuration?: number | undefined;
191
+ stampWith?: StamperType | undefined;
192
+ organizationId?: string;
193
+ };
194
+ export type HandleSignMessageParams = {
195
+ message: string;
196
+ walletAccount: WalletAccount;
197
+ encoding?: v1PayloadEncoding;
198
+ hashFunction?: v1HashFunction;
199
+ addEthereumPrefix?: boolean;
200
+ subText?: string;
201
+ successPageDuration?: number | undefined;
202
+ stampWith?: StamperType | undefined;
203
+ organizationId?: string;
204
+ };
205
+ export type HandleConnectExternalWalletParams = {
206
+ successPageDuration?: number | undefined;
207
+ };
208
+ export type HandleRemoveUserEmailParams = {
209
+ userId?: string;
210
+ successPageDuration?: number | undefined;
211
+ stampWith?: StamperType | undefined;
212
+ organizationId?: string;
213
+ };
214
+ export type HandleRemoveUserPhoneNumberParams = {
215
+ userId?: string;
216
+ successPageDuration?: number | undefined;
217
+ stampWith?: StamperType | undefined;
218
+ organizationId?: string;
219
+ };
220
+ export type HandleVerifyAppProofsParams = {
221
+ appProofs: v1AppProof[];
222
+ organizationId?: string;
223
+ stampWith?: StamperType | undefined;
224
+ successPageDuration?: number | undefined;
225
+ };
226
+ export type HandleOnRampParams = {
227
+ walletAccount: WalletAccount;
228
+ network?: v1FiatOnRampBlockchainNetwork;
229
+ cryptoCurrencyCode?: v1FiatOnRampCryptoCurrency;
230
+ fiatCurrencyCode?: v1FiatOnRampCurrency;
231
+ fiatCurrencyAmount?: string;
232
+ onrampProvider?: v1FiatOnRampProvider;
233
+ paymentMethod?: v1FiatOnRampPaymentMethod;
234
+ countryCode?: string;
235
+ countrySubdivisionCode?: string;
236
+ sandboxMode?: boolean;
237
+ urlForSignature?: string;
238
+ organizationId?: string;
239
+ userId?: string;
240
+ stampWith?: StamperType;
241
+ successPageDuration?: number;
242
+ openInNewTab?: boolean;
243
+ };
244
+ export type HandleSendTransactionParams = {
245
+ organizationId?: string;
246
+ transaction: EthTransaction | SolanaTransaction;
247
+ successPageDuration?: number;
248
+ icon?: React.ReactNode;
249
+ stampWith?: StamperType;
250
+ };
251
+ export type HandleSendErc20TransferParams = {
252
+ organizationId?: string;
253
+ transfer: Erc20Transfer;
254
+ successPageDuration?: number;
255
+ icon?: React.ReactNode;
256
+ stampWith?: StamperType;
257
+ };
258
+ //# sourceMappingURL=method-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"method-types.d.ts","sourceRoot":"","sources":["../../src/types/method-types.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,UAAU,EACV,OAAO,EACP,6BAA6B,EAC7B,0BAA0B,EAC1B,oBAAoB,EACpB,yBAAyB,EACzB,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,aAAa,EACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;KACtB,KAAK,GAAG,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;KACtB,KAAK,GAAG,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;KACtB,KAAK,GAAG,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;KACtB,KAAK,GAAG,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;KACtB,KAAK,GAAG,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,qBAAqB,CAAC,EAAE,eAAe,EAAE,GAAG,qBAAqB,EAAE,CAAC;IACpE,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,KAAK,EAAE,OAAO,CAAC;IACf,cAAc,EAAE,eAAe,EAAE,CAAC;IAClC,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAClC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,YAAY,EAAE,cAAc,CAAC;IAC7B,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACpC,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,aAAa,EAAE,aAAa,CAAC;IAC7B,OAAO,CAAC,EAAE,6BAA6B,CAAC;IACxC,kBAAkB,CAAC,EAAE,0BAA0B,CAAC;IAChD,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;IACxC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,aAAa,CAAC,EAAE,yBAAyB,CAAC;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IAExC,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,WAAW,EAAE,cAAc,GAAG,iBAAiB,CAAC;IAGhD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,WAAW,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,aAAa,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,WAAW,CAAC;CACzB,CAAC"}
@@ -0,0 +1,132 @@
1
+ import { AuthAction, BaseAuthResult, OAuthProviders } from "@0xkey-io/sdk-types";
2
+ import type { ZeroXKeyCallbacks } from "../../types/base";
3
+ import { type PKCEProvider } from "./storage";
4
+ import type { OAuthResponseResult } from "./url";
5
+ /**
6
+ * Parameters for unified OAuth completion.
7
+ * This handles the core completion logic for both popup and redirect flows,
8
+ * for both PKCE and non-PKCE providers.
9
+ */
10
+ export interface CompleteOAuthFlowParams {
11
+ /** The OAuth provider */
12
+ provider: OAuthProviders;
13
+ /** The public key generated during OAuth initiation */
14
+ publicKey: string;
15
+ /** The OIDC token (for non-PKCE providers, or after PKCE exchange) */
16
+ oidcToken: string;
17
+ /** Optional session key from the state parameter */
18
+ sessionKey?: string | undefined;
19
+ /** Optional callbacks for custom handling */
20
+ callbacks?: ZeroXKeyCallbacks | undefined;
21
+ /** Function to complete the OAuth authentication flow */
22
+ completeOauth: (params: {
23
+ oidcToken: string;
24
+ publicKey: string;
25
+ providerName: string;
26
+ sessionKey?: string;
27
+ }) => Promise<BaseAuthResult & {
28
+ action: AuthAction;
29
+ }>;
30
+ /** Optional callback when OAuth succeeds (alternative to completeOauth) */
31
+ onOauthSuccess?: ((params: {
32
+ publicKey: string;
33
+ oidcToken: string;
34
+ providerName: string;
35
+ sessionKey?: string;
36
+ }) => void) | undefined;
37
+ /** Optional callback for "add provider" flow (takes priority over auth) */
38
+ onAddProvider?: ((oidcToken: string) => Promise<void>) | undefined;
39
+ }
40
+ /**
41
+ * Unified OAuth completion handler.
42
+ * Routes to the appropriate completion handler based on params:
43
+ * Priority: onAddProvider > onOauthSuccess > callbacks.onOauthRedirect > completeOauth
44
+ *
45
+ * This is the core completion logic used by both popup and redirect flows.
46
+ */
47
+ export declare function completeOAuthFlow(params: CompleteOAuthFlowParams): Promise<void>;
48
+ /**
49
+ * Common OAuth completion handler for popup flows
50
+ * Handles both PKCE and non-PKCE provider completion
51
+ */
52
+ export interface CompleteOAuthPopupParams {
53
+ provider: OAuthProviders;
54
+ publicKey: string;
55
+ result: OAuthResponseResult;
56
+ callbacks?: ZeroXKeyCallbacks | undefined;
57
+ completeOauth: (params: {
58
+ oidcToken: string;
59
+ publicKey: string;
60
+ providerName: string;
61
+ sessionKey?: string;
62
+ }) => Promise<BaseAuthResult & {
63
+ action: AuthAction;
64
+ }>;
65
+ onOauthSuccess?: ((params: {
66
+ publicKey: string;
67
+ oidcToken: string;
68
+ providerName: string;
69
+ sessionKey?: string;
70
+ }) => void) | undefined;
71
+ /** For PKCE providers: function to exchange code for token */
72
+ exchangeCodeForToken?: ((verifier: string) => Promise<string>) | undefined;
73
+ }
74
+ /**
75
+ * Completes OAuth flow in popup - handles both PKCE and non-PKCE providers
76
+ */
77
+ export declare function completeOAuthPopup(params: CompleteOAuthPopupParams): Promise<void>;
78
+ /**
79
+ * Parameters for the unified PKCE flow handler.
80
+ * This is used by all PKCE-based OAuth providers (Facebook, Discord, Twitter/X).
81
+ */
82
+ export interface CompletePKCEFlowParams {
83
+ /** The public key generated during OAuth initiation */
84
+ publicKey: string;
85
+ /** The provider name */
86
+ providerName: PKCEProvider;
87
+ /** Optional session key from the state parameter */
88
+ sessionKey?: string | undefined;
89
+ /** Optional callbacks for custom handling */
90
+ callbacks?: ZeroXKeyCallbacks | undefined;
91
+ /** Function to complete the OAuth flow */
92
+ completeOauth: (params: {
93
+ oidcToken: string;
94
+ publicKey: string;
95
+ providerName: string;
96
+ sessionKey?: string;
97
+ }) => Promise<BaseAuthResult & {
98
+ action: AuthAction;
99
+ }>;
100
+ /** Optional callback when OAuth succeeds (used in popup flow) */
101
+ onOauthSuccess?: ((params: {
102
+ publicKey: string;
103
+ oidcToken: string;
104
+ providerName: string;
105
+ sessionKey?: string;
106
+ }) => void) | undefined;
107
+ /**
108
+ * Optional callback for handling "add provider" flow in redirect scenarios.
109
+ * When provided, this is called instead of completeOauth when adding an OAuth provider.
110
+ * @param oidcToken - The OIDC token from the OAuth provider
111
+ */
112
+ onAddProvider?: ((oidcToken: string) => Promise<void>) | undefined;
113
+ /**
114
+ * Function to exchange the authorization code for an OIDC token.
115
+ * This is provider-specific:
116
+ * - Discord/Twitter: uses proxyOAuth2Authenticate
117
+ * - Facebook: uses exchangeCodeForToken
118
+ */
119
+ exchangeCodeForToken: (verifier: string) => Promise<string>;
120
+ }
121
+ /**
122
+ * Unified PKCE flow handler for all PKCE-based OAuth providers.
123
+ * Handles the complete PKCE flow: verifier retrieval, token exchange, and completion routing.
124
+ *
125
+ * This function abstracts the common logic shared between popup and redirect flows
126
+ * for Facebook, Discord, and Twitter/X.
127
+ *
128
+ * @param params - The PKCE flow parameters
129
+ * @returns A promise that resolves when the flow is complete
130
+ */
131
+ export declare function completePKCEFlow({ publicKey, providerName, sessionKey, callbacks, completeOauth, onOauthSuccess, onAddProvider, exchangeCodeForToken, }: CompletePKCEFlowParams): Promise<void>;
132
+ //# sourceMappingURL=completion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../../src/utils/oauth/completion.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,cAAc,EACd,cAAc,EAGf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAEnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAEjD;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,yBAAyB;IACzB,QAAQ,EAAE,cAAc,CAAC;IACzB,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,sEAAsE;IACtE,SAAS,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,6CAA6C;IAC7C,SAAS,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAC1C,yDAAyD;IACzD,aAAa,EAAE,CAAC,MAAM,EAAE;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,KAAK,OAAO,CAAC,cAAc,GAAG;QAAE,MAAM,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;IACvD,2EAA2E;IAC3E,cAAc,CAAC,EACX,CAAC,CAAC,MAAM,EAAE;QACR,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,KAAK,IAAI,CAAC,GACX,SAAS,CAAC;IACd,2EAA2E;IAC3E,aAAa,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC;CACpE;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAmCf;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,SAAS,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAC1C,aAAa,EAAE,CAAC,MAAM,EAAE;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,KAAK,OAAO,CAAC,cAAc,GAAG;QAAE,MAAM,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;IACvD,cAAc,CAAC,EACX,CAAC,CAAC,MAAM,EAAE;QACR,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,KAAK,IAAI,CAAC,GACX,SAAS,CAAC;IACd,8DAA8D;IAC9D,oBAAoB,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;CAC5E;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,IAAI,CAAC,CA2Cf;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,wBAAwB;IACxB,YAAY,EAAE,YAAY,CAAC;IAC3B,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,6CAA6C;IAC7C,SAAS,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAC1C,0CAA0C;IAC1C,aAAa,EAAE,CAAC,MAAM,EAAE;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,KAAK,OAAO,CAAC,cAAc,GAAG;QAAE,MAAM,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;IACvD,iEAAiE;IACjE,cAAc,CAAC,EACX,CAAC,CAAC,MAAM,EAAE;QACR,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,KAAK,IAAI,CAAC,GACX,SAAS,CAAC;IACd;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC;IACnE;;;;;OAKG;IACH,oBAAoB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC7D;AAED;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CAAC,EACrC,SAAS,EACT,YAAY,EACZ,UAAU,EACV,SAAS,EACT,aAAa,EACb,cAAc,EACd,aAAa,EACb,oBAAoB,GACrB,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBxC"}
@@ -0,0 +1,136 @@
1
+ 'use strict';
2
+
3
+ var sdkTypes = require('@0xkey-io/sdk-types');
4
+ var storage = require('./storage.js');
5
+ var config = require('./config.js');
6
+
7
+ /**
8
+ * Unified OAuth completion handler.
9
+ * Routes to the appropriate completion handler based on params:
10
+ * Priority: onAddProvider > onOauthSuccess > callbacks.onOauthRedirect > completeOauth
11
+ *
12
+ * This is the core completion logic used by both popup and redirect flows.
13
+ */
14
+ async function completeOAuthFlow(params) {
15
+ const {
16
+ provider,
17
+ publicKey,
18
+ oidcToken,
19
+ sessionKey,
20
+ callbacks,
21
+ completeOauth,
22
+ onOauthSuccess,
23
+ onAddProvider
24
+ } = params;
25
+ if (onAddProvider) {
26
+ await onAddProvider(oidcToken);
27
+ } else if (onOauthSuccess) {
28
+ onOauthSuccess({
29
+ publicKey,
30
+ oidcToken,
31
+ providerName: provider,
32
+ ...(sessionKey && {
33
+ sessionKey
34
+ })
35
+ });
36
+ } else if (callbacks?.onOauthRedirect) {
37
+ callbacks.onOauthRedirect({
38
+ idToken: oidcToken,
39
+ publicKey,
40
+ ...(sessionKey && {
41
+ sessionKey
42
+ })
43
+ });
44
+ } else {
45
+ await completeOauth({
46
+ oidcToken,
47
+ publicKey,
48
+ providerName: provider,
49
+ ...(sessionKey && {
50
+ sessionKey
51
+ })
52
+ });
53
+ }
54
+ }
55
+ /**
56
+ * Completes OAuth flow in popup - handles both PKCE and non-PKCE providers
57
+ */
58
+ async function completeOAuthPopup(params) {
59
+ const {
60
+ provider,
61
+ publicKey,
62
+ result,
63
+ callbacks,
64
+ completeOauth,
65
+ onOauthSuccess,
66
+ exchangeCodeForToken
67
+ } = params;
68
+ const config$1 = config.OAUTH_PROVIDER_CONFIGS[provider];
69
+ if (config$1.usesPKCE) {
70
+ // PKCE flow, so we use completePKCEFlow
71
+ if (!exchangeCodeForToken) {
72
+ throw new sdkTypes.ZeroXKeyError("exchangeCodeForToken is required for PKCE providers", sdkTypes.ZeroXKeyErrorCodes.INTERNAL_ERROR);
73
+ }
74
+ await completePKCEFlow({
75
+ publicKey,
76
+ providerName: provider,
77
+ sessionKey: result.sessionKey,
78
+ callbacks,
79
+ completeOauth,
80
+ onOauthSuccess,
81
+ exchangeCodeForToken
82
+ });
83
+ } else {
84
+ // this is a non-PKCE flow, so we use our unified completion handler
85
+ await completeOAuthFlow({
86
+ provider,
87
+ publicKey,
88
+ oidcToken: result.idToken,
89
+ sessionKey: result.sessionKey,
90
+ callbacks,
91
+ completeOauth,
92
+ onOauthSuccess
93
+ });
94
+ }
95
+ }
96
+ /**
97
+ * Unified PKCE flow handler for all PKCE-based OAuth providers.
98
+ * Handles the complete PKCE flow: verifier retrieval, token exchange, and completion routing.
99
+ *
100
+ * This function abstracts the common logic shared between popup and redirect flows
101
+ * for Facebook, Discord, and Twitter/X.
102
+ *
103
+ * @param params - The PKCE flow parameters
104
+ * @returns A promise that resolves when the flow is complete
105
+ */
106
+ async function completePKCEFlow({
107
+ publicKey,
108
+ providerName,
109
+ sessionKey,
110
+ callbacks,
111
+ completeOauth,
112
+ onOauthSuccess,
113
+ onAddProvider,
114
+ exchangeCodeForToken
115
+ }) {
116
+ // Consume the verifier (retrieves and removes from storage)
117
+ const verifier = storage.consumePKCEVerifier(providerName);
118
+ // Exchange the code for an OIDC token using the provider-specific function
119
+ const oidcToken = await exchangeCodeForToken(verifier);
120
+ // Use unified completion handler
121
+ await completeOAuthFlow({
122
+ provider: providerName,
123
+ publicKey,
124
+ oidcToken,
125
+ sessionKey,
126
+ callbacks,
127
+ completeOauth,
128
+ onOauthSuccess,
129
+ onAddProvider
130
+ });
131
+ }
132
+
133
+ exports.completeOAuthFlow = completeOAuthFlow;
134
+ exports.completeOAuthPopup = completeOAuthPopup;
135
+ exports.completePKCEFlow = completePKCEFlow;
136
+ //# sourceMappingURL=completion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completion.js","sources":["../../../src/utils/oauth/completion.ts"],"sourcesContent":[null],"names":["completeOAuthFlow","params","provider","publicKey","oidcToken","sessionKey","callbacks","completeOauth","onOauthSuccess","onAddProvider","providerName","onOauthRedirect","idToken","completeOAuthPopup","result","exchangeCodeForToken","config","OAUTH_PROVIDER_CONFIGS","usesPKCE","ZeroXKeyError","ZeroXKeyErrorCodes","INTERNAL_ERROR","completePKCEFlow","verifier","consumePKCEVerifier"],"mappings":";;;;;;AAgDA;;;;;;AAMG;AACI,eAAeA,iBAAiBA,CACrCC,MAA+B,EAAA;EAE/B,MAAM;IACJC,QAAQ;IACRC,SAAS;IACTC,SAAS;IACTC,UAAU;IACVC,SAAS;IACTC,aAAa;IACbC,cAAc;AACdC,IAAAA;AAAa,GACd,GAAGR,MAAM;AAEV,EAAA,IAAIQ,aAAa,EAAE;IACjB,MAAMA,aAAa,CAACL,SAAS,CAAC;EAChC,CAAC,MAAM,IAAII,cAAc,EAAE;AACzBA,IAAAA,cAAc,CAAC;MACbL,SAAS;MACTC,SAAS;AACTM,MAAAA,YAAY,EAAER,QAAQ;AACtB,MAAA,IAAIG,UAAU,IAAI;AAAEA,QAAAA;OAAY;AACjC,KAAA,CAAC;AACJ,EAAA,CAAC,MAAM,IAAIC,SAAS,EAAEK,eAAe,EAAE;IACrCL,SAAS,CAACK,eAAe,CAAC;AACxBC,MAAAA,OAAO,EAAER,SAAS;MAClBD,SAAS;AACT,MAAA,IAAIE,UAAU,IAAI;AAAEA,QAAAA;OAAY;AACjC,KAAA,CAAC;AACJ,EAAA,CAAC,MAAM;AACL,IAAA,MAAME,aAAa,CAAC;MAClBH,SAAS;MACTD,SAAS;AACTO,MAAAA,YAAY,EAAER,QAAQ;AACtB,MAAA,IAAIG,UAAU,IAAI;AAAEA,QAAAA;OAAY;AACjC,KAAA,CAAC;AACJ,EAAA;AACF;AA6BA;;AAEG;AACI,eAAeQ,kBAAkBA,CACtCZ,MAAgC,EAAA;EAEhC,MAAM;IACJC,QAAQ;IACRC,SAAS;IACTW,MAAM;IACNR,SAAS;IACTC,aAAa;IACbC,cAAc;AACdO,IAAAA;AAAoB,GACrB,GAAGd,MAAM;AAEV,EAAA,MAAMe,QAAM,GAAGC,6BAAsB,CAACf,QAAQ,CAAC;EAE/C,IAAIc,QAAM,CAACE,QAAQ,EAAE;AACnB;IACA,IAAI,CAACH,oBAAoB,EAAE;MACzB,MAAM,IAAII,sBAAa,CACrB,qDAAqD,EACrDC,2BAAkB,CAACC,cAAc,CAClC;AACH,IAAA;AAEA,IAAA,MAAMC,gBAAgB,CAAC;MACrBnB,SAAS;AACTO,MAAAA,YAAY,EAAER,QAAwB;MACtCG,UAAU,EAAES,MAAM,CAACT,UAAU;MAC7BC,SAAS;MACTC,aAAa;MACbC,cAAc;AACdO,MAAAA;AACD,KAAA,CAAC;AACJ,EAAA,CAAC,MAAM;AACL;AACA,IAAA,MAAMf,iBAAiB,CAAC;MACtBE,QAAQ;MACRC,SAAS;MACTC,SAAS,EAAEU,MAAM,CAACF,OAAQ;MAC1BP,UAAU,EAAES,MAAM,CAACT,UAAU;MAC7BC,SAAS;MACTC,aAAa;AACbC,MAAAA;AACD,KAAA,CAAC;AACJ,EAAA;AACF;AA8CA;;;;;;;;;AASG;AACI,eAAec,gBAAgBA,CAAC;EACrCnB,SAAS;EACTO,YAAY;EACZL,UAAU;EACVC,SAAS;EACTC,aAAa;EACbC,cAAc;EACdC,aAAa;AACbM,EAAAA;AAAoB,CACG,EAAA;AACvB;AACA,EAAA,MAAMQ,QAAQ,GAAGC,2BAAmB,CAACd,YAAY,CAAC;AAElD;AACA,EAAA,MAAMN,SAAS,GAAG,MAAMW,oBAAoB,CAACQ,QAAQ,CAAC;AAEtD;AACA,EAAA,MAAMvB,iBAAiB,CAAC;AACtBE,IAAAA,QAAQ,EAAEQ,YAAY;IACtBP,SAAS;IACTC,SAAS;IACTC,UAAU;IACVC,SAAS;IACTC,aAAa;IACbC,cAAc;AACdC,IAAAA;AACD,GAAA,CAAC;AACJ;;;;;;"}