@turnkey/react-wallet-kit 1.0.0-beta.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 (248) hide show
  1. package/LICENSE +201 -0
  2. package/README.MD +112 -0
  3. package/dist/_virtual/_rollupPluginBabelHelpers.mjs +420 -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 +73 -0
  14. package/dist/components/auth/Email.js.map +1 -0
  15. package/dist/components/auth/Email.mjs +95 -0
  16. package/dist/components/auth/Email.mjs.map +1 -0
  17. package/dist/components/auth/OAuth.d.ts +10 -0
  18. package/dist/components/auth/OAuth.d.ts.map +1 -0
  19. package/dist/components/auth/OAuth.js +42 -0
  20. package/dist/components/auth/OAuth.js.map +1 -0
  21. package/dist/components/auth/OAuth.mjs +46 -0
  22. package/dist/components/auth/OAuth.mjs.map +1 -0
  23. package/dist/components/auth/OTP.d.ts +19 -0
  24. package/dist/components/auth/OTP.d.ts.map +1 -0
  25. package/dist/components/auth/OTP.js +204 -0
  26. package/dist/components/auth/OTP.js.map +1 -0
  27. package/dist/components/auth/OTP.mjs +288 -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 +26 -0
  38. package/dist/components/auth/Passkey.js.map +1 -0
  39. package/dist/components/auth/Passkey.mjs +22 -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 +93 -0
  46. package/dist/components/auth/Phone.mjs.map +1 -0
  47. package/dist/components/auth/Wallet.d.ts +30 -0
  48. package/dist/components/auth/Wallet.d.ts.map +1 -0
  49. package/dist/components/auth/Wallet.js +408 -0
  50. package/dist/components/auth/Wallet.js.map +1 -0
  51. package/dist/components/auth/Wallet.mjs +509 -0
  52. package/dist/components/auth/Wallet.mjs.map +1 -0
  53. package/dist/components/auth/index.d.ts +2 -0
  54. package/dist/components/auth/index.d.ts.map +1 -0
  55. package/dist/components/auth/index.js +327 -0
  56. package/dist/components/auth/index.js.map +1 -0
  57. package/dist/components/auth/index.mjs +540 -0
  58. package/dist/components/auth/index.mjs.map +1 -0
  59. package/dist/components/design/Buttons.d.ts +26 -0
  60. package/dist/components/design/Buttons.d.ts.map +1 -0
  61. package/dist/components/design/Buttons.js +79 -0
  62. package/dist/components/design/Buttons.js.map +1 -0
  63. package/dist/components/design/Buttons.mjs +71 -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 +113 -0
  74. package/dist/components/design/Inputs.js.map +1 -0
  75. package/dist/components/design/Inputs.mjs +108 -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 +27 -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 +43 -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 +10 -0
  102. package/dist/components/design/Svg.d.ts.map +1 -0
  103. package/dist/components/design/Svg.js +156 -0
  104. package/dist/components/design/Svg.js.map +1 -0
  105. package/dist/components/design/Svg.mjs +153 -0
  106. package/dist/components/design/Svg.mjs.map +1 -0
  107. package/dist/components/export/Export.d.ts +9 -0
  108. package/dist/components/export/Export.d.ts.map +1 -0
  109. package/dist/components/export/Export.js +140 -0
  110. package/dist/components/export/Export.js.map +1 -0
  111. package/dist/components/export/Export.mjs +178 -0
  112. package/dist/components/export/Export.mjs.map +1 -0
  113. package/dist/components/export/ExportWarning.d.ts +12 -0
  114. package/dist/components/export/ExportWarning.d.ts.map +1 -0
  115. package/dist/components/export/ExportWarning.js +87 -0
  116. package/dist/components/export/ExportWarning.js.map +1 -0
  117. package/dist/components/export/ExportWarning.mjs +113 -0
  118. package/dist/components/export/ExportWarning.mjs.map +1 -0
  119. package/dist/components/import/Import.d.ts +14 -0
  120. package/dist/components/import/Import.d.ts.map +1 -0
  121. package/dist/components/import/Import.js +226 -0
  122. package/dist/components/import/Import.js.map +1 -0
  123. package/dist/components/import/Import.mjs +328 -0
  124. package/dist/components/import/Import.mjs.map +1 -0
  125. package/dist/components/sign/Message.d.ts +17 -0
  126. package/dist/components/sign/Message.d.ts.map +1 -0
  127. package/dist/components/sign/Message.js +127 -0
  128. package/dist/components/sign/Message.js.map +1 -0
  129. package/dist/components/sign/Message.mjs +145 -0
  130. package/dist/components/sign/Message.mjs.map +1 -0
  131. package/dist/components/user/LinkWallet.d.ts +8 -0
  132. package/dist/components/user/LinkWallet.d.ts.map +1 -0
  133. package/dist/components/user/LinkWallet.js +102 -0
  134. package/dist/components/user/LinkWallet.js.map +1 -0
  135. package/dist/components/user/LinkWallet.mjs +162 -0
  136. package/dist/components/user/LinkWallet.mjs.map +1 -0
  137. package/dist/components/user/RemoveEmail.d.ts +11 -0
  138. package/dist/components/user/RemoveEmail.d.ts.map +1 -0
  139. package/dist/components/user/RemoveEmail.js +101 -0
  140. package/dist/components/user/RemoveEmail.js.map +1 -0
  141. package/dist/components/user/RemoveEmail.mjs +122 -0
  142. package/dist/components/user/RemoveEmail.mjs.map +1 -0
  143. package/dist/components/user/RemoveOAuthProvider.d.ts +11 -0
  144. package/dist/components/user/RemoveOAuthProvider.d.ts.map +1 -0
  145. package/dist/components/user/RemoveOAuthProvider.js +106 -0
  146. package/dist/components/user/RemoveOAuthProvider.js.map +1 -0
  147. package/dist/components/user/RemoveOAuthProvider.mjs +129 -0
  148. package/dist/components/user/RemoveOAuthProvider.mjs.map +1 -0
  149. package/dist/components/user/RemovePasskey.d.ts +11 -0
  150. package/dist/components/user/RemovePasskey.d.ts.map +1 -0
  151. package/dist/components/user/RemovePasskey.js +109 -0
  152. package/dist/components/user/RemovePasskey.js.map +1 -0
  153. package/dist/components/user/RemovePasskey.mjs +132 -0
  154. package/dist/components/user/RemovePasskey.mjs.map +1 -0
  155. package/dist/components/user/RemovePhoneNumber.d.ts +11 -0
  156. package/dist/components/user/RemovePhoneNumber.d.ts.map +1 -0
  157. package/dist/components/user/RemovePhoneNumber.js +101 -0
  158. package/dist/components/user/RemovePhoneNumber.js.map +1 -0
  159. package/dist/components/user/RemovePhoneNumber.mjs +122 -0
  160. package/dist/components/user/RemovePhoneNumber.mjs.map +1 -0
  161. package/dist/components/user/UpdateEmail.d.ts +8 -0
  162. package/dist/components/user/UpdateEmail.d.ts.map +1 -0
  163. package/dist/components/user/UpdateEmail.js +139 -0
  164. package/dist/components/user/UpdateEmail.js.map +1 -0
  165. package/dist/components/user/UpdateEmail.mjs +186 -0
  166. package/dist/components/user/UpdateEmail.mjs.map +1 -0
  167. package/dist/components/user/UpdatePhoneNumber.d.ts +8 -0
  168. package/dist/components/user/UpdatePhoneNumber.d.ts.map +1 -0
  169. package/dist/components/user/UpdatePhoneNumber.js +136 -0
  170. package/dist/components/user/UpdatePhoneNumber.js.map +1 -0
  171. package/dist/components/user/UpdatePhoneNumber.mjs +187 -0
  172. package/dist/components/user/UpdatePhoneNumber.mjs.map +1 -0
  173. package/dist/components/user/UpdateUserName.d.ts +11 -0
  174. package/dist/components/user/UpdateUserName.d.ts.map +1 -0
  175. package/dist/components/user/UpdateUserName.js +112 -0
  176. package/dist/components/user/UpdateUserName.js.map +1 -0
  177. package/dist/components/user/UpdateUserName.mjs +139 -0
  178. package/dist/components/user/UpdateUserName.mjs.map +1 -0
  179. package/dist/index.d.ts +5 -0
  180. package/dist/index.d.ts.map +1 -0
  181. package/dist/index.js +32 -0
  182. package/dist/index.js.map +1 -0
  183. package/dist/index.mjs +6 -0
  184. package/dist/index.mjs.map +1 -0
  185. package/dist/providers/TurnkeyProvider.d.ts +8 -0
  186. package/dist/providers/TurnkeyProvider.d.ts.map +1 -0
  187. package/dist/providers/TurnkeyProvider.js +35 -0
  188. package/dist/providers/TurnkeyProvider.js.map +1 -0
  189. package/dist/providers/TurnkeyProvider.mjs +33 -0
  190. package/dist/providers/TurnkeyProvider.mjs.map +1 -0
  191. package/dist/providers/client/Hook.d.ts +3 -0
  192. package/dist/providers/client/Hook.d.ts.map +1 -0
  193. package/dist/providers/client/Hook.js +14 -0
  194. package/dist/providers/client/Hook.js.map +1 -0
  195. package/dist/providers/client/Hook.mjs +12 -0
  196. package/dist/providers/client/Hook.mjs.map +1 -0
  197. package/dist/providers/client/Provider.d.ts +39 -0
  198. package/dist/providers/client/Provider.d.ts.map +1 -0
  199. package/dist/providers/client/Provider.js +2489 -0
  200. package/dist/providers/client/Provider.js.map +1 -0
  201. package/dist/providers/client/Provider.mjs +4744 -0
  202. package/dist/providers/client/Provider.mjs.map +1 -0
  203. package/dist/providers/client/Types.d.ts +524 -0
  204. package/dist/providers/client/Types.d.ts.map +1 -0
  205. package/dist/providers/client/Types.js +9 -0
  206. package/dist/providers/client/Types.js.map +1 -0
  207. package/dist/providers/client/Types.mjs +7 -0
  208. package/dist/providers/client/Types.mjs.map +1 -0
  209. package/dist/providers/index.d.ts +5 -0
  210. package/dist/providers/index.d.ts.map +1 -0
  211. package/dist/providers/modal/Hook.d.ts +3 -0
  212. package/dist/providers/modal/Hook.d.ts.map +1 -0
  213. package/dist/providers/modal/Hook.js +14 -0
  214. package/dist/providers/modal/Hook.js.map +1 -0
  215. package/dist/providers/modal/Hook.mjs +12 -0
  216. package/dist/providers/modal/Hook.mjs.map +1 -0
  217. package/dist/providers/modal/Provider.d.ts +21 -0
  218. package/dist/providers/modal/Provider.d.ts.map +1 -0
  219. package/dist/providers/modal/Provider.js +37 -0
  220. package/dist/providers/modal/Provider.js.map +1 -0
  221. package/dist/providers/modal/Provider.mjs +48 -0
  222. package/dist/providers/modal/Provider.mjs.map +1 -0
  223. package/dist/providers/modal/Root.d.ts +7 -0
  224. package/dist/providers/modal/Root.d.ts.map +1 -0
  225. package/dist/providers/modal/Root.js +258 -0
  226. package/dist/providers/modal/Root.js.map +1 -0
  227. package/dist/providers/modal/Root.mjs +263 -0
  228. package/dist/providers/modal/Root.mjs.map +1 -0
  229. package/dist/providers/theme/Overrides.d.ts +18 -0
  230. package/dist/providers/theme/Overrides.d.ts.map +1 -0
  231. package/dist/providers/theme/Overrides.js +35 -0
  232. package/dist/providers/theme/Overrides.js.map +1 -0
  233. package/dist/providers/theme/Overrides.mjs +37 -0
  234. package/dist/providers/theme/Overrides.mjs.map +1 -0
  235. package/dist/styles.css +1 -0
  236. package/dist/types/base.d.ts +79 -0
  237. package/dist/types/base.d.ts.map +1 -0
  238. package/dist/types/base.js +19 -0
  239. package/dist/types/base.js.map +1 -0
  240. package/dist/types/base.mjs +19 -0
  241. package/dist/types/base.mjs.map +1 -0
  242. package/dist/utils.d.ts +72 -0
  243. package/dist/utils.d.ts.map +1 -0
  244. package/dist/utils.js +211 -0
  245. package/dist/utils.js.map +1 -0
  246. package/dist/utils.mjs +307 -0
  247. package/dist/utils.mjs.map +1 -0
  248. package/package.json +69 -0
@@ -0,0 +1,79 @@
1
+ import type { CreateSubOrgParams, TurnkeySDKClientConfig } from "@turnkey/core";
2
+ import type { Session, TurnkeyError, TurnkeyNetworkError } from "@turnkey/sdk-types";
3
+ import type { ThemeOverrides } from "../providers/theme/Overrides";
4
+ export interface TurnkeyCallbacks {
5
+ onOauthRedirect?: (response: {
6
+ idToken: string;
7
+ publicKey: string;
8
+ }) => void;
9
+ beforeSessionExpiry?: (params: {
10
+ sessionKey: string;
11
+ }) => void;
12
+ onSessionExpired?: (params: {
13
+ sessionKey: string;
14
+ }) => void;
15
+ onAuthenticationSuccess?: (params: {
16
+ session: Session | undefined;
17
+ }) => void;
18
+ onError?: (error: TurnkeyError | TurnkeyNetworkError) => void;
19
+ }
20
+ export interface TurnkeyProviderConfig extends TurnkeySDKClientConfig {
21
+ exportIframeUrl?: string | undefined;
22
+ importIframeUrl?: string | undefined;
23
+ auth?: {
24
+ methods?: {
25
+ emailOtpAuthEnabled?: boolean;
26
+ smsOtpAuthEnabled?: boolean;
27
+ passkeyAuthEnabled?: boolean;
28
+ walletAuthEnabled?: boolean;
29
+ googleOauthEnabled?: boolean;
30
+ appleOauthEnabled?: boolean;
31
+ facebookOauthEnabled?: boolean;
32
+ };
33
+ methodOrder?: Array<"socials" | "email" | "sms" | "passkey" | "wallet">;
34
+ oauthOrder?: Array<"google" | "apple" | "facebook">;
35
+ oauthConfig?: {
36
+ oauthRedirectUri?: string;
37
+ googleClientId?: string;
38
+ appleClientId?: string;
39
+ facebookClientId?: string;
40
+ openOauthInPage?: boolean;
41
+ };
42
+ sessionExpirationSeconds?: string;
43
+ createSuborgParams?: {
44
+ emailOtpAuth?: CreateSubOrgParams;
45
+ smsOtpAuth?: CreateSubOrgParams;
46
+ passkeyAuth?: CreateSubOrgParams & {
47
+ passkeyName?: string;
48
+ };
49
+ walletAuth?: CreateSubOrgParams;
50
+ oauth?: CreateSubOrgParams;
51
+ };
52
+ autoRefreshSession?: boolean;
53
+ };
54
+ ui?: {
55
+ darkMode?: boolean;
56
+ colors?: {
57
+ light?: Partial<ThemeOverrides>;
58
+ dark?: Partial<ThemeOverrides>;
59
+ };
60
+ preferLargeActionButtons?: boolean;
61
+ borderRadius?: string | number;
62
+ backgroundBlur?: string | number;
63
+ renderModalInProvider?: boolean;
64
+ };
65
+ }
66
+ export declare enum ExportType {
67
+ Wallet = "WALLET",
68
+ PrivateKey = "PRIVATE_KEY"
69
+ }
70
+ export declare enum AuthState {
71
+ Unauthenticated = "unauthenticated",
72
+ Authenticated = "authenticated"
73
+ }
74
+ export declare enum ClientState {
75
+ Loading = "loading",
76
+ Ready = "ready",
77
+ Error = "error"
78
+ }
79
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/types/base.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ exports.ExportType = void 0;
4
+ (function (ExportType) {
5
+ ExportType["Wallet"] = "WALLET";
6
+ ExportType["PrivateKey"] = "PRIVATE_KEY";
7
+ })(exports.ExportType || (exports.ExportType = {}));
8
+ exports.AuthState = void 0;
9
+ (function (AuthState) {
10
+ AuthState["Unauthenticated"] = "unauthenticated";
11
+ AuthState["Authenticated"] = "authenticated";
12
+ })(exports.AuthState || (exports.AuthState = {}));
13
+ exports.ClientState = void 0;
14
+ (function (ClientState) {
15
+ ClientState["Loading"] = "loading";
16
+ ClientState["Ready"] = "ready";
17
+ ClientState["Error"] = "error";
18
+ })(exports.ClientState || (exports.ClientState = {}));
19
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sources":["../../src/types/base.ts"],"sourcesContent":[null],"names":["ExportType","AuthState","ClientState"],"mappings":";;AAiEYA;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,GAGrB,EAAA,CAAA,CAAA;AAEWC;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,GAGpB,EAAA,CAAA,CAAA;AAEWC;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,GAItB,EAAA,CAAA,CAAA;;"}
@@ -0,0 +1,19 @@
1
+ var ExportType;
2
+ (function (ExportType) {
3
+ ExportType["Wallet"] = "WALLET";
4
+ ExportType["PrivateKey"] = "PRIVATE_KEY";
5
+ })(ExportType || (ExportType = {}));
6
+ var AuthState;
7
+ (function (AuthState) {
8
+ AuthState["Unauthenticated"] = "unauthenticated";
9
+ AuthState["Authenticated"] = "authenticated";
10
+ })(AuthState || (AuthState = {}));
11
+ var ClientState;
12
+ (function (ClientState) {
13
+ ClientState["Loading"] = "loading";
14
+ ClientState["Ready"] = "ready";
15
+ ClientState["Error"] = "error";
16
+ })(ClientState || (ClientState = {}));
17
+
18
+ export { AuthState, ClientState, ExportType };
19
+ //# sourceMappingURL=base.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.mjs","sources":["../../src/types/base.ts"],"sourcesContent":[null],"names":["ExportType","AuthState","ClientState"],"mappings":"IAiEYA;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,GAGrB,EAAA,CAAA,CAAA;IAEWC;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,GAGpB,EAAA,CAAA,CAAA;IAEWC;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,GAItB,EAAA,CAAA,CAAA;;;;"}
@@ -0,0 +1,72 @@
1
+ import { Session, TurnkeyError } from "@turnkey/sdk-types";
2
+ import type { TurnkeyCallbacks } from "./types/base";
3
+ import { WalletProvider } from "@turnkey/core";
4
+ export declare const GOOGLE_AUTH_URL = "https://accounts.google.com/o/oauth2/v2/auth";
5
+ export declare const APPLE_AUTH_URL = "https://account.apple.com/auth/authorize";
6
+ export declare const APPLE_AUTH_SCRIPT_URL = "https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js";
7
+ export declare const FACEBOOK_AUTH_URL = "https://www.facebook.com/v11.0/dialog/oauth";
8
+ export declare const FACEBOOK_GRAPH_URL = "https://graph.facebook.com/v11.0/oauth/access_token";
9
+ export declare const popupWidth = 500;
10
+ export declare const popupHeight = 600;
11
+ export declare const SESSION_WARNING_THRESHOLD_MS: number;
12
+ export declare const authErrors: {
13
+ passkey: {
14
+ createFailed: string;
15
+ loginFailed: string;
16
+ timeoutOrNotAllowed: string;
17
+ };
18
+ otp: {
19
+ sendFailed: string;
20
+ invalidEmail: string;
21
+ invalidPhone: string;
22
+ };
23
+ oauth: {
24
+ loginFailed: string;
25
+ };
26
+ wallet: {
27
+ loginFailed: string;
28
+ noPublicKey: string;
29
+ };
30
+ suborg: {
31
+ fetchFailed: string;
32
+ createFailed: string;
33
+ };
34
+ };
35
+ export declare const useDebouncedCallback: <T extends (...args: any[]) => void>(fn: T, wait?: number) => T;
36
+ export declare const isValidSession: (session?: Session | undefined) => boolean;
37
+ export declare function withTurnkeyErrorHandling<T>(fn: () => Promise<T>, callbacks?: {
38
+ onError?: (error: TurnkeyError) => void;
39
+ }, fallbackMessage?: string, fallbackCode?: any): Promise<T>;
40
+ export declare function parseOAuthRedirect(hash: string): {
41
+ idToken: string | null | undefined;
42
+ provider: string | null;
43
+ flow: string | null;
44
+ publicKey: string | null;
45
+ openModal: string | null;
46
+ };
47
+ export declare function generateChallengePair(): Promise<{
48
+ verifier: string;
49
+ codeChallenge: string;
50
+ }>;
51
+ export declare function exchangeCodeForToken(clientId: string, redirectUri: string, code: string, codeVerifier: string): Promise<{
52
+ id_token: string;
53
+ }>;
54
+ export declare function handleFacebookPKCEFlow({ code, publicKey, openModal, clientId, redirectURI, callbacks, completeOauth, onPushPage, }: {
55
+ code: string;
56
+ publicKey: string;
57
+ openModal?: string | null;
58
+ clientId: string;
59
+ redirectURI: string;
60
+ callbacks?: TurnkeyCallbacks | undefined;
61
+ completeOauth: (params: {
62
+ oidcToken: string;
63
+ publicKey: string;
64
+ }) => Promise<string>;
65
+ onPushPage: (idToken: string) => Promise<void>;
66
+ }): Promise<void>;
67
+ export declare function useScreenSize(): {
68
+ width: number;
69
+ isMobile: boolean;
70
+ };
71
+ export declare function isWalletConnect(wallet: WalletProvider): boolean;
72
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAqB,MAAM,oBAAoB,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD,OAAO,EAAuB,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpE,eAAO,MAAM,eAAe,iDAAiD,CAAC;AAC9E,eAAO,MAAM,cAAc,6CAA6C,CAAC;AACzE,eAAO,MAAM,qBAAqB,yFACsD,CAAC;AACzF,eAAO,MAAM,iBAAiB,gDAAgD,CAAC;AAC/E,eAAO,MAAM,kBAAkB,wDACwB,CAAC;AACxD,eAAO,MAAM,UAAU,MAAM,CAAC;AAC9B,eAAO,MAAM,WAAW,MAAM,CAAC;AAE/B,eAAO,MAAM,4BAA4B,QAAY,CAAC;AAEtD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;CAgCtB,CAAC;AAEF,eAAO,MAAM,oBAAoB,uBAAwB,GAAG,EAAE,KAAK,IAAI,MACjE,CAAC,oBAEJ,CAaF,CAAC;AAEF,eAAO,MAAM,cAAc,aAAc,OAAO,GAAG,SAAS,KAAG,OAE9D,CAAC;AAEF,wBAAsB,wBAAwB,CAAC,CAAC,EAC9C,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,SAAS,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAA;CAAE,EACvD,eAAe,SAA8B,EAC7C,YAAY,MAA4B,GACvC,OAAO,CAAC,CAAC,CAAC,CAYZ;AAyED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG;IAChD,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACnC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAOA;AAGD,wBAAsB,qBAAqB,IAAI,OAAO,CAAC;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC,CAkBD;AAGD,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAyB/B;AAED,wBAAsB,sBAAsB,CAAC,EAC3C,IAAI,EACJ,SAAS,EACT,SAAS,EACT,QAAQ,EACR,WAAW,EACX,SAAS,EACT,aAAa,EACb,UAAU,GACX,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACzC,aAAa,EAAE,CAAC,MAAM,EAAE;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACtB,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAChD,GAAG,OAAO,CAAC,IAAI,CAAC,CAiDhB;AAGD,wBAAgB,aAAa;;;EAkB5B;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAE/D"}
package/dist/utils.js ADDED
@@ -0,0 +1,211 @@
1
+ 'use strict';
2
+
3
+ var sdkTypes = require('@turnkey/sdk-types');
4
+ var react = require('react');
5
+ var core = require('@turnkey/core');
6
+
7
+ const GOOGLE_AUTH_URL = "https://accounts.google.com/o/oauth2/v2/auth";
8
+ const APPLE_AUTH_URL = "https://account.apple.com/auth/authorize";
9
+ const FACEBOOK_AUTH_URL = "https://www.facebook.com/v11.0/dialog/oauth";
10
+ const FACEBOOK_GRAPH_URL = "https://graph.facebook.com/v11.0/oauth/access_token";
11
+ const popupWidth = 500;
12
+ const popupHeight = 600;
13
+ const SESSION_WARNING_THRESHOLD_MS = 60 * 1000; // 1 minute in milliseconds
14
+ const useDebouncedCallback = (fn, wait = 100) => {
15
+ const timer = react.useRef(null);
16
+ return react.useCallback((...args) => {
17
+ if (timer.current) clearTimeout(timer.current);
18
+ timer.current = setTimeout(() => {
19
+ fn(...args);
20
+ timer.current = null;
21
+ }, wait);
22
+ }, [fn, wait]);
23
+ };
24
+ const isValidSession = session => {
25
+ return session?.expiry !== undefined && session.expiry * 1000 > Date.now();
26
+ };
27
+ async function withTurnkeyErrorHandling(fn, callbacks, fallbackMessage = "An unknown error occurred", fallbackCode = sdkTypes.TurnkeyErrorCodes.UNKNOWN) {
28
+ try {
29
+ return await fn();
30
+ } catch (error) {
31
+ if (error instanceof sdkTypes.TurnkeyError) {
32
+ callbacks?.onError?.(error);
33
+ throw error;
34
+ }
35
+ const tkError = new sdkTypes.TurnkeyError(fallbackMessage, fallbackCode, error);
36
+ callbacks?.onError?.(tkError);
37
+ throw tkError;
38
+ }
39
+ }
40
+ // Helper function to parse Apple OAuth redirects
41
+ function parseAppleOAuthRedirect(hash) {
42
+ // Apple's format has unencoded parameters in the state portion
43
+ const idTokenMatch = hash.match(/id_token=([^&]+)$/);
44
+ const idToken = idTokenMatch ? idTokenMatch[1] : null;
45
+ // Extract state parameters - state is at the beginning
46
+ // It typically looks like: state=provider=apple&flow=redirect&publicKey=123...&openModal=true&code=...&id_token=...
47
+ const stateEndIndex = hash.indexOf("&code=");
48
+ if (stateEndIndex === -1) return {
49
+ idToken,
50
+ provider: null,
51
+ flow: null,
52
+ publicKey: null,
53
+ openModal: null
54
+ };
55
+ const stateContent = hash.substring(6, stateEndIndex); // Remove "state=" prefix
56
+ const stateParams = new URLSearchParams(stateContent);
57
+ return {
58
+ idToken,
59
+ provider: stateParams.get("provider"),
60
+ flow: stateParams.get("flow"),
61
+ publicKey: stateParams.get("publicKey"),
62
+ openModal: stateParams.get("openModal")
63
+ };
64
+ }
65
+ // Helper function to parse Google OAuth redirects
66
+ function parseGoogleOAuthRedirect(hash) {
67
+ const hashParams = new URLSearchParams(hash);
68
+ const idToken = hashParams.get("id_token");
69
+ const state = hashParams.get("state");
70
+ let provider = null;
71
+ let flow = null;
72
+ let publicKey = null;
73
+ let openModal = null;
74
+ if (state) {
75
+ const stateParams = new URLSearchParams(state);
76
+ provider = stateParams.get("provider");
77
+ flow = stateParams.get("flow");
78
+ publicKey = stateParams.get("publicKey");
79
+ openModal = stateParams.get("openModal");
80
+ }
81
+ return {
82
+ idToken,
83
+ provider,
84
+ flow,
85
+ publicKey,
86
+ openModal
87
+ };
88
+ }
89
+ // Main function to determine provider and parse accordingly
90
+ function parseOAuthRedirect(hash) {
91
+ // Check if this is an Apple redirect
92
+ if (hash.startsWith("state=provider=apple")) {
93
+ return parseAppleOAuthRedirect(hash);
94
+ } else {
95
+ return parseGoogleOAuthRedirect(hash);
96
+ }
97
+ }
98
+ // Function to generate PKCE challenge pair for Facebook OAuth
99
+ async function generateChallengePair() {
100
+ const randomBytes = new Uint8Array(32);
101
+ window.crypto.getRandomValues(randomBytes);
102
+ const verifier = btoa(String.fromCharCode(...randomBytes)).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
103
+ const encoder = new TextEncoder();
104
+ const data = encoder.encode(verifier);
105
+ const digest = await window.crypto.subtle.digest("SHA-256", data);
106
+ const base64Challenge = btoa(String.fromCharCode(...new Uint8Array(digest))).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
107
+ return {
108
+ verifier,
109
+ codeChallenge: base64Challenge
110
+ };
111
+ }
112
+ // Function to exchange Facebook authorization code for token
113
+ async function exchangeCodeForToken(clientId, redirectUri, code, codeVerifier) {
114
+ const params = new URLSearchParams({
115
+ client_id: clientId,
116
+ redirect_uri: redirectUri,
117
+ code_verifier: codeVerifier,
118
+ code: code,
119
+ grant_type: "authorization_code"
120
+ });
121
+ const response = await fetch(FACEBOOK_GRAPH_URL, {
122
+ method: "POST",
123
+ headers: {
124
+ "Content-Type": "application/x-www-form-urlencoded"
125
+ },
126
+ body: params.toString()
127
+ });
128
+ if (!response.ok) {
129
+ const errorData = await response.json();
130
+ throw new Error(`Facebook token exchange failed: ${JSON.stringify(errorData)}`);
131
+ }
132
+ return await response.json();
133
+ }
134
+ async function handleFacebookPKCEFlow({
135
+ code,
136
+ publicKey,
137
+ openModal,
138
+ clientId,
139
+ redirectURI,
140
+ callbacks,
141
+ completeOauth,
142
+ onPushPage
143
+ }) {
144
+ // Retrieve the verifier stored during OAuth initiation
145
+ const verifier = sessionStorage.getItem("facebook_verifier");
146
+ if (!verifier) {
147
+ throw new sdkTypes.TurnkeyError("Missing PKCE verifier for Facebook authentication", sdkTypes.TurnkeyErrorCodes.OAUTH_SIGNUP_ERROR);
148
+ }
149
+ try {
150
+ // Exchange the code for a token
151
+ const tokenData = await exchangeCodeForToken(clientId, redirectURI, code, verifier);
152
+ // Clean up the verifier as it's no longer needed
153
+ sessionStorage.removeItem("facebook_verifier");
154
+ // Handle different UI flows based on openModal parameter
155
+ if (openModal === "true") {
156
+ await onPushPage(tokenData.id_token);
157
+ } else if (callbacks?.onOauthRedirect) {
158
+ callbacks.onOauthRedirect({
159
+ idToken: tokenData.id_token,
160
+ publicKey
161
+ });
162
+ } else {
163
+ await completeOauth({
164
+ oidcToken: tokenData.id_token,
165
+ publicKey
166
+ });
167
+ }
168
+ // Clean up the URL after processing
169
+ window.history.replaceState(null, document.title, window.location.pathname);
170
+ return;
171
+ } catch (error) {
172
+ console.error("Error exchanging Facebook code for token:", error);
173
+ throw new sdkTypes.TurnkeyError("Failed to complete Facebook authentication", sdkTypes.TurnkeyErrorCodes.OAUTH_SIGNUP_ERROR, error);
174
+ }
175
+ }
176
+ // Custom hook to get the current screen size
177
+ function useScreenSize() {
178
+ const [width, setWidth] = react.useState(typeof window !== "undefined" ? window.innerWidth : 1024);
179
+ react.useEffect(() => {
180
+ const handleResize = () => setWidth(window.innerWidth);
181
+ window.addEventListener("resize", handleResize);
182
+ return () => window.removeEventListener("resize", handleResize);
183
+ }, []);
184
+ return {
185
+ width,
186
+ // I have no idea why but, Tailwind's responsive design breakpoints do not work. Throughout the modal components, you will see conditional styling using this `isMobile` variable.
187
+ // This is fine since we only need to style for 2 screen sizes: mobile and desktop. If anyone can figure out why Tailwind's responsive design breakpoints do not work, please fix it and restyle the components accordingly, changing the `isMobile` to the Tailwind stuff when applicable.
188
+ isMobile: width < 640
189
+ };
190
+ }
191
+ function isWalletConnect(wallet) {
192
+ return wallet.interfaceType == core.WalletInterfaceType.WalletConnect;
193
+ }
194
+
195
+ exports.APPLE_AUTH_URL = APPLE_AUTH_URL;
196
+ exports.FACEBOOK_AUTH_URL = FACEBOOK_AUTH_URL;
197
+ exports.FACEBOOK_GRAPH_URL = FACEBOOK_GRAPH_URL;
198
+ exports.GOOGLE_AUTH_URL = GOOGLE_AUTH_URL;
199
+ exports.SESSION_WARNING_THRESHOLD_MS = SESSION_WARNING_THRESHOLD_MS;
200
+ exports.exchangeCodeForToken = exchangeCodeForToken;
201
+ exports.generateChallengePair = generateChallengePair;
202
+ exports.handleFacebookPKCEFlow = handleFacebookPKCEFlow;
203
+ exports.isValidSession = isValidSession;
204
+ exports.isWalletConnect = isWalletConnect;
205
+ exports.parseOAuthRedirect = parseOAuthRedirect;
206
+ exports.popupHeight = popupHeight;
207
+ exports.popupWidth = popupWidth;
208
+ exports.useDebouncedCallback = useDebouncedCallback;
209
+ exports.useScreenSize = useScreenSize;
210
+ exports.withTurnkeyErrorHandling = withTurnkeyErrorHandling;
211
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sources":["../src/utils.ts"],"sourcesContent":[null],"names":["GOOGLE_AUTH_URL","APPLE_AUTH_URL","FACEBOOK_AUTH_URL","FACEBOOK_GRAPH_URL","popupWidth","popupHeight","SESSION_WARNING_THRESHOLD_MS","useDebouncedCallback","fn","wait","timer","useRef","useCallback","args","current","clearTimeout","setTimeout","isValidSession","session","expiry","undefined","Date","now","withTurnkeyErrorHandling","callbacks","fallbackMessage","fallbackCode","TurnkeyErrorCodes","UNKNOWN","error","TurnkeyError","onError","tkError","parseAppleOAuthRedirect","hash","idTokenMatch","match","idToken","stateEndIndex","indexOf","provider","flow","publicKey","openModal","stateContent","substring","stateParams","URLSearchParams","get","parseGoogleOAuthRedirect","hashParams","state","parseOAuthRedirect","startsWith","generateChallengePair","randomBytes","Uint8Array","window","crypto","getRandomValues","verifier","btoa","String","fromCharCode","replace","encoder","TextEncoder","data","encode","digest","subtle","base64Challenge","codeChallenge","exchangeCodeForToken","clientId","redirectUri","code","codeVerifier","params","client_id","redirect_uri","code_verifier","grant_type","response","fetch","method","headers","body","toString","ok","errorData","json","Error","JSON","stringify","handleFacebookPKCEFlow","redirectURI","completeOauth","onPushPage","sessionStorage","getItem","OAUTH_SIGNUP_ERROR","tokenData","removeItem","id_token","onOauthRedirect","oidcToken","history","replaceState","document","title","location","pathname","console","useScreenSize","width","setWidth","useState","innerWidth","useEffect","handleResize","addEventListener","removeEventListener","isMobile","isWalletConnect","wallet","interfaceType","WalletInterfaceType","WalletConnect"],"mappings":"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"}