@turnkey/react-wallet-kit 1.11.0 → 2.0.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 (86) hide show
  1. package/dist/components/auth/OTP.d.ts +1 -0
  2. package/dist/components/auth/OTP.d.ts.map +1 -1
  3. package/dist/components/auth/OTP.js +8 -2
  4. package/dist/components/auth/OTP.js.map +1 -1
  5. package/dist/components/auth/OTP.mjs +21 -13
  6. package/dist/components/auth/OTP.mjs.map +1 -1
  7. package/dist/components/auth/index.d.ts.map +1 -1
  8. package/dist/components/auth/index.js +11 -3
  9. package/dist/components/auth/index.js.map +1 -1
  10. package/dist/components/auth/index.mjs +12 -5
  11. package/dist/components/auth/index.mjs.map +1 -1
  12. package/dist/components/user/UpdateEmail.js +6 -3
  13. package/dist/components/user/UpdateEmail.js.map +1 -1
  14. package/dist/components/user/UpdateEmail.mjs +6 -4
  15. package/dist/components/user/UpdateEmail.mjs.map +1 -1
  16. package/dist/components/user/UpdatePhoneNumber.js +6 -3
  17. package/dist/components/user/UpdatePhoneNumber.js.map +1 -1
  18. package/dist/components/user/UpdatePhoneNumber.mjs +6 -4
  19. package/dist/components/user/UpdatePhoneNumber.mjs.map +1 -1
  20. package/dist/index.d.ts +1 -3
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +8 -4
  23. package/dist/index.js.map +1 -1
  24. package/dist/index.mjs +1 -1
  25. package/dist/providers/client/Provider.d.ts.map +1 -1
  26. package/dist/providers/client/Provider.js +611 -430
  27. package/dist/providers/client/Provider.js.map +1 -1
  28. package/dist/providers/client/Provider.mjs +2055 -1820
  29. package/dist/providers/client/Provider.mjs.map +1 -1
  30. package/dist/providers/client/Types.d.ts +14 -7
  31. package/dist/providers/client/Types.d.ts.map +1 -1
  32. package/dist/providers/client/Types.js.map +1 -1
  33. package/dist/providers/client/Types.mjs.map +1 -1
  34. package/dist/typedoc-entry/index.d.ts +1 -1
  35. package/dist/typedoc-entry/index.d.ts.map +1 -1
  36. package/dist/types/base.d.ts +38 -28
  37. package/dist/types/base.d.ts.map +1 -1
  38. package/dist/types/base.js.map +1 -1
  39. package/dist/types/base.mjs.map +1 -1
  40. package/dist/types/method-types.d.ts +12 -5
  41. package/dist/types/method-types.d.ts.map +1 -1
  42. package/dist/utils/oauth/completion.d.ts +132 -0
  43. package/dist/utils/oauth/completion.d.ts.map +1 -0
  44. package/dist/utils/oauth/completion.js +136 -0
  45. package/dist/utils/oauth/completion.js.map +1 -0
  46. package/dist/utils/oauth/completion.mjs +176 -0
  47. package/dist/utils/oauth/completion.mjs.map +1 -0
  48. package/dist/utils/oauth/config.d.ts +34 -0
  49. package/dist/utils/oauth/config.d.ts.map +1 -0
  50. package/dist/utils/oauth/config.js +69 -0
  51. package/dist/utils/oauth/config.js.map +1 -0
  52. package/dist/utils/oauth/config.mjs +54 -0
  53. package/dist/utils/oauth/config.mjs.map +1 -0
  54. package/dist/utils/oauth/helpers.d.ts +13 -0
  55. package/dist/utils/oauth/helpers.d.ts.map +1 -0
  56. package/dist/utils/oauth/helpers.js +38 -0
  57. package/dist/utils/oauth/helpers.js.map +1 -0
  58. package/dist/utils/oauth/helpers.mjs +35 -0
  59. package/dist/utils/oauth/helpers.mjs.map +1 -0
  60. package/dist/utils/oauth/index.d.ts +7 -0
  61. package/dist/utils/oauth/index.d.ts.map +1 -0
  62. package/dist/utils/oauth/pkce.d.ts +14 -0
  63. package/dist/utils/oauth/pkce.d.ts.map +1 -0
  64. package/dist/utils/oauth/pkce.js +48 -0
  65. package/dist/utils/oauth/pkce.js.map +1 -0
  66. package/dist/utils/oauth/pkce.mjs +85 -0
  67. package/dist/utils/oauth/pkce.mjs.map +1 -0
  68. package/dist/utils/oauth/storage.d.ts +59 -0
  69. package/dist/utils/oauth/storage.d.ts.map +1 -0
  70. package/dist/utils/oauth/storage.js +116 -0
  71. package/dist/utils/oauth/storage.js.map +1 -0
  72. package/dist/utils/oauth/storage.mjs +104 -0
  73. package/dist/utils/oauth/storage.mjs.map +1 -0
  74. package/dist/utils/oauth/url.d.ts +92 -0
  75. package/dist/utils/oauth/url.d.ts.map +1 -0
  76. package/dist/utils/oauth/url.js +231 -0
  77. package/dist/utils/oauth/url.js.map +1 -0
  78. package/dist/utils/oauth/url.mjs +237 -0
  79. package/dist/utils/oauth/url.mjs.map +1 -0
  80. package/package.json +3 -3
  81. package/dist/utils/oauth.d.ts +0 -323
  82. package/dist/utils/oauth.d.ts.map +0 -1
  83. package/dist/utils/oauth.js +0 -613
  84. package/dist/utils/oauth.js.map +0 -1
  85. package/dist/utils/oauth.mjs +0 -670
  86. package/dist/utils/oauth.mjs.map +0 -1
@@ -1,323 +0,0 @@
1
- import { AuthAction, BaseAuthResult, OAuthProviders } from "@turnkey/sdk-types";
2
- import type { TurnkeyCallbacks } from "../types/base";
3
- export declare const DISCORD_AUTH_URL = "https://discord.com/oauth2/authorize";
4
- export declare const X_AUTH_URL = "https://x.com/i/oauth2/authorize";
5
- export declare const GOOGLE_AUTH_URL = "https://accounts.google.com/o/oauth2/v2/auth";
6
- export declare const APPLE_AUTH_URL = "https://account.apple.com/auth/authorize";
7
- export declare const APPLE_AUTH_SCRIPT_URL = "https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js";
8
- export declare const FACEBOOK_AUTH_URL = "https://www.facebook.com/v11.0/dialog/oauth";
9
- export declare const FACEBOOK_GRAPH_URL = "https://graph.facebook.com/v11.0/oauth/access_token";
10
- export declare const popupWidth = 500;
11
- export declare const popupHeight = 600;
12
- export declare const OAUTH_INTENT_ADD_PROVIDER = "addProvider";
13
- export declare const OAUTH_ADD_PROVIDER_METADATA_KEY = "oauth_add_provider_metadata";
14
- export type OAuthAddProviderMetadata = {
15
- organizationId: string;
16
- userId: string;
17
- stampWith?: string;
18
- successPageDuration?: number;
19
- };
20
- /**
21
- * Stores OAuth add provider metadata in session storage
22
- * Used for addOauthProvider flow if opening in-page
23
- */
24
- export declare function storeOAuthAddProviderMetadata(metadata: OAuthAddProviderMetadata): void;
25
- /**
26
- * Retrieves OAuth add provider metadata from session storage
27
- */
28
- export declare function getOAuthAddProviderMetadata(): OAuthAddProviderMetadata | null;
29
- /**
30
- * Clears OAuth add provider metadata from session storage
31
- */
32
- export declare function clearOAuthAddProviderMetadata(): void;
33
- /**
34
- * Builds the OAuth state parameter string
35
- */
36
- export declare function buildOAuthState(params: {
37
- provider: OAuthProviders;
38
- flow: "redirect" | "popup";
39
- publicKey: string;
40
- nonce?: string;
41
- additionalState?: Record<string, string> | undefined;
42
- }): string;
43
- /**
44
- * Opens a centered OAuth popup window
45
- */
46
- export declare function openOAuthPopup(): Window | null;
47
- /**
48
- * Redirects to OAuth provider URL
49
- */
50
- export declare function redirectToOAuthProvider(url: string): Promise<never>;
51
- /**
52
- * Cleans up OAuth parameters from URL (removes hash and search)
53
- */
54
- export declare function cleanupOAuthUrl(): void;
55
- /**
56
- * Cleans up OAuth hash from URL but preserves search parameters
57
- */
58
- export declare function cleanupOAuthUrlPreserveSearch(): void;
59
- /**
60
- * Parses the OAuth state parameter string into an object
61
- */
62
- export declare function parseStateParam(stateParam: string | null | undefined): {
63
- sessionKey?: string;
64
- oauthIntent?: string;
65
- provider?: string;
66
- flow?: string;
67
- publicKey?: string;
68
- openModal?: string;
69
- [key: string]: string | undefined;
70
- };
71
- /**
72
- * Result from parsing an OAuth response (both popup and redirect flows)
73
- */
74
- export interface OAuthResponseResult {
75
- /** The OIDC token (for non-PKCE providers) */
76
- idToken?: string | null | undefined;
77
- /** The authorization code (for PKCE providers) */
78
- authCode?: string | null | undefined;
79
- /** Session key from state */
80
- sessionKey?: string | undefined;
81
- /** The provider from state */
82
- provider?: string | null;
83
- /** Flow type from state */
84
- flow?: string | null;
85
- /** Public key from state */
86
- publicKey?: string | null;
87
- /** Open modal flag from state */
88
- openModal?: string | null;
89
- /** OAuth intent from state */
90
- oauthIntent?: string | null;
91
- /** Nonce from state */
92
- nonce?: string | null;
93
- }
94
- /**
95
- * Unified OAuth response parser for both popup and redirect flows.
96
- * Handles both:
97
- * - PKCE flows (Facebook, Discord, X): code in search parameters
98
- * - Non-PKCE flows (Google, Apple): id_token in hash parameters
99
- * - Apple's non-standard hash format where state parameters are directly embedded
100
- *
101
- * @param url - The full URL to parse (from popup or redirect)
102
- * @param expectedProvider - Optional provider if already known (for popup flows)
103
- * @returns Parsed OAuth response data including tokens, codes, and state parameters, or null if invalid
104
- */
105
- export declare function parseOAuthResponse(url: string, expectedProvider?: OAuthProviders): OAuthResponseResult | null;
106
- /**
107
- * Generates a PKCE challenge pair (verifier and code challenge)
108
- */
109
- export declare function generateChallengePair(): Promise<{
110
- verifier: string;
111
- codeChallenge: string;
112
- }>;
113
- /**
114
- * Exchanges Facebook authorization code for token
115
- */
116
- export declare function exchangeFacebookCodeForToken(clientId: string, redirectUri: string, code: string, codeVerifier: string): Promise<{
117
- id_token: string;
118
- }>;
119
- /** Provider type for PKCE-based OAuth */
120
- export type PKCEProvider = OAuthProviders.FACEBOOK | OAuthProviders.DISCORD | OAuthProviders.X;
121
- /**
122
- * Parameters for unified OAuth completion.
123
- * This handles the core completion logic for both popup and redirect flows,
124
- * for both PKCE and non-PKCE providers.
125
- */
126
- export interface OAuthCompletionParams {
127
- /** The OAuth provider */
128
- provider: OAuthProviders;
129
- /** The public key generated during OAuth initiation */
130
- publicKey: string;
131
- /** The OIDC token (for non-PKCE providers, or after PKCE exchange) */
132
- oidcToken: string;
133
- /** Optional session key from the state parameter */
134
- sessionKey?: string | undefined;
135
- /** Optional callbacks for custom handling */
136
- callbacks?: TurnkeyCallbacks | undefined;
137
- /** Function to complete the OAuth authentication flow */
138
- completeOauth: (params: {
139
- oidcToken: string;
140
- publicKey: string;
141
- providerName: string;
142
- sessionKey?: string;
143
- }) => Promise<BaseAuthResult & {
144
- action: AuthAction;
145
- }>;
146
- /** Optional callback when OAuth succeeds (alternative to completeOauth) */
147
- onOauthSuccess?: ((params: {
148
- publicKey: string;
149
- oidcToken: string;
150
- providerName: string;
151
- sessionKey?: string;
152
- }) => void) | undefined;
153
- /** Optional callback for "add provider" flow (takes priority over auth) */
154
- onAddProvider?: ((oidcToken: string) => Promise<void>) | undefined;
155
- }
156
- /**
157
- * Unified OAuth completion handler.
158
- * Routes to the appropriate completion handler based on params:
159
- * Priority: onAddProvider > onOauthSuccess > callbacks.onOauthRedirect > completeOauth
160
- *
161
- * This is the core completion logic used by both popup and redirect flows.
162
- */
163
- export declare function completeOAuthFlow(params: OAuthCompletionParams): Promise<void>;
164
- /**
165
- * Parameters for the unified PKCE flow handler.
166
- * This is used by all PKCE-based OAuth providers (Facebook, Discord, Twitter/X).
167
- */
168
- export interface PKCEFlowParams {
169
- /** The public key generated during OAuth initiation */
170
- publicKey: string;
171
- /** The provider name */
172
- providerName: PKCEProvider;
173
- /** Optional session key from the state parameter */
174
- sessionKey?: string | undefined;
175
- /** Optional callbacks for custom handling */
176
- callbacks?: TurnkeyCallbacks | undefined;
177
- /** Function to complete the OAuth flow */
178
- completeOauth: (params: {
179
- oidcToken: string;
180
- publicKey: string;
181
- providerName: string;
182
- sessionKey?: string;
183
- }) => Promise<BaseAuthResult & {
184
- action: AuthAction;
185
- }>;
186
- /** Optional callback when OAuth succeeds (used in popup flow) */
187
- onOauthSuccess?: ((params: {
188
- publicKey: string;
189
- oidcToken: string;
190
- providerName: string;
191
- sessionKey?: string;
192
- }) => void) | undefined;
193
- /**
194
- * Optional callback for handling "add provider" flow in redirect scenarios.
195
- * When provided, this is called instead of completeOauth when adding an OAuth provider.
196
- * @param oidcToken - The OIDC token from the OAuth provider
197
- */
198
- onAddProvider?: ((oidcToken: string) => Promise<void>) | undefined;
199
- /**
200
- * Function to exchange the authorization code for an OIDC token.
201
- * This is provider-specific:
202
- * - Discord/Twitter: uses proxyOAuth2Authenticate
203
- * - Facebook: uses exchangeCodeForToken
204
- */
205
- exchangeCodeForToken: (verifier: string) => Promise<string>;
206
- }
207
- /**
208
- * Gets the verifier key name for a PKCE provider
209
- */
210
- export declare function getPKCEVerifierKey(provider: PKCEProvider): string;
211
- /**
212
- * Retrieves and removes the PKCE verifier from session storage
213
- * @param provider - The OAuth provider
214
- * @returns The verifier string
215
- * @throws TurnkeyError if verifier is not found
216
- */
217
- export declare function consumePKCEVerifier(provider: PKCEProvider): string;
218
- /**
219
- * Stores the PKCE verifier in session storage
220
- * @param provider - The OAuth provider
221
- * @param verifier - The verifier string to store
222
- */
223
- export declare function storePKCEVerifier(provider: PKCEProvider, verifier: string): void;
224
- /**
225
- * Checks if a PKCE verifier exists for a provider (without consuming it)
226
- * @param provider - The OAuth provider
227
- * @returns true if verifier exists
228
- */
229
- export declare function hasPKCEVerifier(provider: PKCEProvider): boolean;
230
- /**
231
- * Unified PKCE flow handler for all PKCE-based OAuth providers.
232
- * Handles the complete PKCE flow: verifier retrieval, token exchange, and completion routing.
233
- *
234
- * This function abstracts the common logic shared between popup and redirect flows
235
- * for Facebook, Discord, and Twitter/X.
236
- *
237
- * @param params - The PKCE flow parameters
238
- * @returns A promise that resolves when the flow is complete
239
- */
240
- export declare function handlePKCEFlow({ publicKey, providerName, sessionKey, callbacks, completeOauth, onOauthSuccess, onAddProvider, exchangeCodeForToken, }: PKCEFlowParams): Promise<void>;
241
- /**
242
- * OAuth provider configuration for unified OAuth flow handling
243
- */
244
- export interface OAuthProviderConfig {
245
- /** The provider identifier */
246
- provider: OAuthProviders;
247
- /** The base OAuth authorization URL */
248
- authUrl: string;
249
- /** OAuth scopes to request */
250
- scopes: string;
251
- /** Whether this provider uses PKCE */
252
- usesPKCE: boolean;
253
- /** Response type for the OAuth request */
254
- responseType: string;
255
- /** Optional response mode (e.g., 'fragment' for Apple) */
256
- responseMode?: string;
257
- /** Whether to include nonce in the URL params (vs state) */
258
- nonceInParams?: boolean;
259
- }
260
- /**
261
- * Pre-configured OAuth provider settings
262
- */
263
- export declare const OAUTH_PROVIDER_CONFIGS: Record<OAuthProviders, OAuthProviderConfig>;
264
- /**
265
- * Parameters for building an OAuth URL
266
- */
267
- export interface BuildOAuthUrlParams {
268
- provider: OAuthProviders;
269
- clientId: string;
270
- redirectUri: string;
271
- publicKey: string;
272
- nonce: string;
273
- flow: "redirect" | "popup";
274
- codeChallenge?: string | undefined;
275
- additionalState?: Record<string, string> | undefined;
276
- }
277
- /**
278
- * Builds the complete OAuth authorization URL for a provider
279
- */
280
- export declare function buildOAuthUrl(params: BuildOAuthUrlParams): string;
281
- /**
282
- * Common OAuth completion handler for popup flows
283
- * Handles both PKCE and non-PKCE provider completion
284
- */
285
- export interface OAuthPopupCompletionParams {
286
- provider: OAuthProviders;
287
- publicKey: string;
288
- result: OAuthResponseResult;
289
- callbacks?: TurnkeyCallbacks | undefined;
290
- completeOauth: (params: {
291
- oidcToken: string;
292
- publicKey: string;
293
- providerName: string;
294
- sessionKey?: string;
295
- }) => Promise<BaseAuthResult & {
296
- action: AuthAction;
297
- }>;
298
- onOauthSuccess?: ((params: {
299
- publicKey: string;
300
- oidcToken: string;
301
- providerName: string;
302
- sessionKey?: string;
303
- }) => void) | undefined;
304
- /** For PKCE providers: function to exchange code for token */
305
- exchangeCodeForToken?: ((verifier: string) => Promise<string>) | undefined;
306
- }
307
- /**
308
- * Completes OAuth flow in popup - handles both PKCE and non-PKCE providers
309
- */
310
- export declare function completeOAuthPopup(params: OAuthPopupCompletionParams): Promise<void>;
311
- /**
312
- * Capitalizes the first letter of a provider name
313
- * @param provider - The provider name (e.g., "facebook", "discord")
314
- * @returns The capitalized provider name (e.g., "Facebook", "Discord")
315
- */
316
- export declare function capitalizeProviderName(provider: string): string;
317
- /**
318
- * Gets the FontAwesome icon for an OAuth provider
319
- * @param provider - The provider name
320
- * @returns The FontAwesome icon definition
321
- */
322
- export declare function getProviderIcon(provider: string | null | undefined): import("@fortawesome/free-brands-svg-icons").IconDefinition;
323
- //# sourceMappingURL=oauth.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../src/utils/oauth.ts"],"names":[],"mappings":"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"}