@descope/react-sdk 1.0.3 → 1.0.4

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.
package/dist/index.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import React, { FC, DOMAttributes } from 'react';
3
2
  import DescopeWc, { ThemeOptions, AutoFocusOptions } from '@descope/web-component';
4
3
  import * as _descope_core_js_sdk from '@descope/core-js-sdk';
@@ -66,7 +65,11 @@ declare const createSdkWrapper: <P extends Omit<{
66
65
  name?: string;
67
66
  loginId?: string;
68
67
  };
69
- }, "tenant" | "redirectUrl"> & {
68
+ redirectAuth?: {
69
+ callbackUrl: string;
70
+ codeChallenge: string;
71
+ };
72
+ }, "tenant" | "redirectUrl" | "redirectAuth"> & {
70
73
  lastAuth?: Omit<{
71
74
  authMethod?: "webauthn" | "otp" | "oauth" | "saml" | "totp" | "magiclink" | "enchantedlink";
72
75
  oauthProvider?: string;
@@ -75,10 +78,10 @@ declare const createSdkWrapper: <P extends Omit<{
75
78
  }, "loginId" | "name">;
76
79
  }, conditionInteractionId?: string, interactionId?: string, input?: {
77
80
  [x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
78
- }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
81
+ }, version?: number) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
79
82
  next: (executionId: string, stepId: string, interactionId: string, input?: {
80
83
  [x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
81
- }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
84
+ }, version?: number) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
82
85
  };
83
86
  webauthn: {
84
87
  signUp: ((identifier: string, name: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
@@ -128,67 +131,73 @@ declare const createSdkWrapper: <P extends Omit<{
128
131
  };
129
132
  otp: {
130
133
  verify: {
131
- email: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
132
134
  sms: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
133
135
  whatsapp: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
136
+ email: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
134
137
  };
135
138
  signIn: {
136
- email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
137
- maskedEmail: string;
138
- }>>;
139
139
  sms: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
140
140
  maskedPhone: string;
141
141
  }>>;
142
142
  whatsapp: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
143
143
  maskedPhone: string;
144
144
  }>>;
145
+ email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
146
+ maskedEmail: string;
147
+ }>>;
145
148
  };
146
149
  signUp: {
147
- email: (loginId: string, user?: {
150
+ sms: (loginId: string, user?: {
148
151
  email?: string;
149
152
  name?: string;
150
153
  phone?: string;
151
154
  }) => Promise<_descope_core_js_sdk.SdkResponse<{
152
- maskedEmail: string;
155
+ maskedPhone: string;
153
156
  }>>;
154
- sms: (loginId: string, user?: {
157
+ whatsapp: (loginId: string, user?: {
155
158
  email?: string;
156
159
  name?: string;
157
160
  phone?: string;
158
161
  }) => Promise<_descope_core_js_sdk.SdkResponse<{
159
162
  maskedPhone: string;
160
163
  }>>;
161
- whatsapp: (loginId: string, user?: {
164
+ email: (loginId: string, user?: {
162
165
  email?: string;
163
166
  name?: string;
164
167
  phone?: string;
165
168
  }) => Promise<_descope_core_js_sdk.SdkResponse<{
166
- maskedPhone: string;
169
+ maskedEmail: string;
167
170
  }>>;
168
171
  };
169
172
  signUpOrIn: {
170
- email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
171
- maskedEmail: string;
172
- }>>;
173
173
  sms: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
174
174
  maskedPhone: string;
175
175
  }>>;
176
176
  whatsapp: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
177
177
  maskedPhone: string;
178
178
  }>>;
179
+ email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
180
+ maskedEmail: string;
181
+ }>>;
179
182
  };
180
183
  update: {
181
- email: (loginId: string, email: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<{
184
+ email: <T extends boolean>(loginId: string, email: string, token?: string, updateOptions?: {
185
+ addToLoginIDs?: T;
186
+ onMergeUseExisting?: T extends true ? boolean : never;
187
+ }) => Promise<_descope_core_js_sdk.SdkResponse<{
182
188
  maskedEmail: string;
183
189
  }>>;
184
190
  phone: {
185
- email: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<{
191
+ sms: <T_1 extends boolean>(loginId: string, phone: string, token?: string, updateOptions?: {
192
+ addToLoginIDs?: T_1;
193
+ onMergeUseExisting?: T_1 extends true ? boolean : never;
194
+ }) => Promise<_descope_core_js_sdk.SdkResponse<{
186
195
  maskedPhone: string;
187
196
  }>>;
188
- sms: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<{
189
- maskedPhone: string;
190
- }>>;
191
- whatsapp: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<{
197
+ whatsapp: <T_1_1 extends boolean>(loginId: string, phone: string, token?: string, updateOptions?: {
198
+ addToLoginIDs?: T_1_1;
199
+ onMergeUseExisting?: T_1_1 extends true ? boolean : never;
200
+ }) => Promise<_descope_core_js_sdk.SdkResponse<{
192
201
  maskedPhone: string;
193
202
  }>>;
194
203
  };
@@ -197,60 +206,68 @@ declare const createSdkWrapper: <P extends Omit<{
197
206
  magicLink: {
198
207
  verify: (token: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
199
208
  signIn: {
200
- email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
201
- maskedEmail: string;
202
- }>>;
203
209
  sms: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
204
210
  maskedPhone: string;
205
211
  }>>;
206
212
  whatsapp: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
207
213
  maskedPhone: string;
208
214
  }>>;
215
+ email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
216
+ maskedEmail: string;
217
+ }>>;
209
218
  };
210
219
  signUp: {
211
- email: (loginId: string, uri: string, user?: {
220
+ sms: (loginId: string, uri: string, user?: {
212
221
  email?: string;
213
222
  name?: string;
214
223
  phone?: string;
215
224
  }) => Promise<_descope_core_js_sdk.SdkResponse<{
216
- maskedEmail: string;
225
+ maskedPhone: string;
217
226
  }>>;
218
- sms: (loginId: string, uri: string, user?: {
227
+ whatsapp: (loginId: string, uri: string, user?: {
219
228
  email?: string;
220
229
  name?: string;
221
230
  phone?: string;
222
231
  }) => Promise<_descope_core_js_sdk.SdkResponse<{
223
232
  maskedPhone: string;
224
233
  }>>;
225
- whatsapp: (loginId: string, uri: string, user?: {
234
+ email: (loginId: string, uri: string, user?: {
226
235
  email?: string;
227
236
  name?: string;
228
237
  phone?: string;
229
238
  }) => Promise<_descope_core_js_sdk.SdkResponse<{
230
- maskedPhone: string;
239
+ maskedEmail: string;
231
240
  }>>;
232
241
  };
233
242
  signUpOrIn: {
234
- email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
235
- maskedEmail: string;
236
- }>>;
237
243
  sms: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
238
244
  maskedPhone: string;
239
245
  }>>;
240
246
  whatsapp: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
241
247
  maskedPhone: string;
242
248
  }>>;
249
+ email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
250
+ maskedEmail: string;
251
+ }>>;
243
252
  };
244
253
  update: {
245
- email: (loginId: string, email: string, URI?: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
254
+ email: <T_2 extends boolean>(loginId: string, email: string, URI?: string, token?: string, updateOptions?: {
255
+ addToLoginIDs?: T_2;
256
+ onMergeUseExisting?: T_2 extends true ? boolean : never;
257
+ }) => Promise<_descope_core_js_sdk.SdkResponse<{
258
+ maskedEmail: string;
259
+ }>>;
246
260
  phone: {
247
- email: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<{
248
- maskedPhone: string;
249
- }>>;
250
- sms: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<{
261
+ sms: <T_3 extends boolean>(loginId: string, phone: string, URI?: string, token?: string, updateOptions?: {
262
+ addToLoginIDs?: T_3;
263
+ onMergeUseExisting?: T_3 extends true ? boolean : never;
264
+ }) => Promise<_descope_core_js_sdk.SdkResponse<{
251
265
  maskedPhone: string;
252
266
  }>>;
253
- whatsapp: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<{
267
+ whatsapp: <T_3_1 extends boolean>(loginId: string, phone: string, URI?: string, token?: string, updateOptions?: {
268
+ addToLoginIDs?: T_3_1;
269
+ onMergeUseExisting?: T_3_1 extends true ? boolean : never;
270
+ }) => Promise<_descope_core_js_sdk.SdkResponse<{
254
271
  maskedPhone: string;
255
272
  }>>;
256
273
  };
@@ -270,60 +287,47 @@ declare const createSdkWrapper: <P extends Omit<{
270
287
  timeoutMs: number;
271
288
  }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
272
289
  update: {
273
- email: (loginId: string, email: string, URI?: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
290
+ email: <T_4 extends boolean>(loginId: string, email: string, URI?: string, token?: string, updateOptions?: {
291
+ addToLoginIDs?: T_4;
292
+ onMergeUseExisting?: T_4 extends true ? boolean : never;
293
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
274
294
  };
275
295
  };
276
296
  oauth: {
277
297
  start: {
278
298
  facebook: <B extends {
279
299
  redirect: boolean;
280
- }>(redirectURL?: string, config?: B) => Promise<B extends {
281
- redirect: true;
282
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
300
+ }>(redirectURL?: string, config?: B) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
283
301
  github: <B_1 extends {
284
302
  redirect: boolean;
285
- }>(redirectURL?: string, config?: B_1) => Promise<B_1 extends {
286
- redirect: true;
287
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
303
+ }>(redirectURL?: string, config?: B_1) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
288
304
  google: <B_2 extends {
289
305
  redirect: boolean;
290
- }>(redirectURL?: string, config?: B_2) => Promise<B_2 extends {
291
- redirect: true;
292
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
306
+ }>(redirectURL?: string, config?: B_2) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
293
307
  microsoft: <B_3 extends {
294
308
  redirect: boolean;
295
- }>(redirectURL?: string, config?: B_3) => Promise<B_3 extends {
296
- redirect: true;
297
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
309
+ }>(redirectURL?: string, config?: B_3) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
298
310
  gitlab: <B_4 extends {
299
311
  redirect: boolean;
300
- }>(redirectURL?: string, config?: B_4) => Promise<B_4 extends {
301
- redirect: true;
302
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
312
+ }>(redirectURL?: string, config?: B_4) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
303
313
  apple: <B_5 extends {
304
314
  redirect: boolean;
305
- }>(redirectURL?: string, config?: B_5) => Promise<B_5 extends {
306
- redirect: true;
307
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
315
+ }>(redirectURL?: string, config?: B_5) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
308
316
  discord: <B_6 extends {
309
317
  redirect: boolean;
310
- }>(redirectURL?: string, config?: B_6) => Promise<B_6 extends {
311
- redirect: true;
312
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
318
+ }>(redirectURL?: string, config?: B_6) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
313
319
  linkedin: <B_7 extends {
314
320
  redirect: boolean;
315
- }>(redirectURL?: string, config?: B_7) => Promise<B_7 extends {
316
- redirect: true;
317
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
321
+ }>(redirectURL?: string, config?: B_7) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
318
322
  };
319
323
  exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
320
324
  };
321
325
  saml: {
322
- start: <B_1_1 extends {
323
- redirect: boolean;
324
- }>(tenantNameOrEmail: string, config?: B_1_1) => Promise<B_1_1 extends {
325
- redirect: true;
326
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
326
+ start: (tenantIdOrEmail: string, redirectUrl?: string, loginOptions?: {
327
+ stepup?: boolean;
328
+ mfa?: boolean;
329
+ customClaims?: Record<string, any>;
330
+ }, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
327
331
  exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
328
332
  };
329
333
  totp: {
@@ -417,7 +421,11 @@ declare const createSdkWrapper: <P extends Omit<{
417
421
  name?: string;
418
422
  loginId?: string;
419
423
  };
420
- }, "tenant" | "redirectUrl"> & {
424
+ redirectAuth?: {
425
+ callbackUrl: string;
426
+ codeChallenge: string;
427
+ };
428
+ }, "tenant" | "redirectUrl" | "redirectAuth"> & {
421
429
  lastAuth?: Omit<{
422
430
  authMethod?: "webauthn" | "otp" | "oauth" | "saml" | "totp" | "magiclink" | "enchantedlink";
423
431
  oauthProvider?: string;
@@ -426,10 +434,10 @@ declare const createSdkWrapper: <P extends Omit<{
426
434
  }, "loginId" | "name">;
427
435
  }, conditionInteractionId?: string, interactionId?: string, input?: {
428
436
  [x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
429
- }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
437
+ }, version?: number) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
430
438
  next: (executionId: string, stepId: string, interactionId: string, input?: {
431
439
  [x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
432
- }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
440
+ }, version?: number) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
433
441
  };
434
442
  webauthn: {
435
443
  signUp: ((identifier: string, name: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
@@ -479,67 +487,73 @@ declare const createSdkWrapper: <P extends Omit<{
479
487
  };
480
488
  otp: {
481
489
  verify: {
482
- email: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
483
490
  sms: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
484
491
  whatsapp: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
492
+ email: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
485
493
  };
486
494
  signIn: {
487
- email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
488
- maskedEmail: string;
489
- }>>;
490
495
  sms: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
491
496
  maskedPhone: string;
492
497
  }>>;
493
498
  whatsapp: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
494
499
  maskedPhone: string;
495
500
  }>>;
501
+ email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
502
+ maskedEmail: string;
503
+ }>>;
496
504
  };
497
505
  signUp: {
498
- email: (loginId: string, user?: {
506
+ sms: (loginId: string, user?: {
499
507
  email?: string;
500
508
  name?: string;
501
509
  phone?: string;
502
510
  }) => Promise<_descope_core_js_sdk.SdkResponse<{
503
- maskedEmail: string;
511
+ maskedPhone: string;
504
512
  }>>;
505
- sms: (loginId: string, user?: {
513
+ whatsapp: (loginId: string, user?: {
506
514
  email?: string;
507
515
  name?: string;
508
516
  phone?: string;
509
517
  }) => Promise<_descope_core_js_sdk.SdkResponse<{
510
518
  maskedPhone: string;
511
519
  }>>;
512
- whatsapp: (loginId: string, user?: {
520
+ email: (loginId: string, user?: {
513
521
  email?: string;
514
522
  name?: string;
515
523
  phone?: string;
516
524
  }) => Promise<_descope_core_js_sdk.SdkResponse<{
517
- maskedPhone: string;
525
+ maskedEmail: string;
518
526
  }>>;
519
527
  };
520
528
  signUpOrIn: {
521
- email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
522
- maskedEmail: string;
523
- }>>;
524
529
  sms: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
525
530
  maskedPhone: string;
526
531
  }>>;
527
532
  whatsapp: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
528
533
  maskedPhone: string;
529
534
  }>>;
535
+ email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<{
536
+ maskedEmail: string;
537
+ }>>;
530
538
  };
531
539
  update: {
532
- email: (loginId: string, email: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<{
540
+ email: <T_5 extends boolean>(loginId: string, email: string, token?: string, updateOptions?: {
541
+ addToLoginIDs?: T_5;
542
+ onMergeUseExisting?: T_5 extends true ? boolean : never;
543
+ }) => Promise<_descope_core_js_sdk.SdkResponse<{
533
544
  maskedEmail: string;
534
545
  }>>;
535
546
  phone: {
536
- email: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<{
547
+ sms: <T_1_2 extends boolean>(loginId: string, phone: string, token?: string, updateOptions?: {
548
+ addToLoginIDs?: T_1_2;
549
+ onMergeUseExisting?: T_1_2 extends true ? boolean : never;
550
+ }) => Promise<_descope_core_js_sdk.SdkResponse<{
537
551
  maskedPhone: string;
538
552
  }>>;
539
- sms: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<{
540
- maskedPhone: string;
541
- }>>;
542
- whatsapp: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<{
553
+ whatsapp: <T_1_3 extends boolean>(loginId: string, phone: string, token?: string, updateOptions?: {
554
+ addToLoginIDs?: T_1_3;
555
+ onMergeUseExisting?: T_1_3 extends true ? boolean : never;
556
+ }) => Promise<_descope_core_js_sdk.SdkResponse<{
543
557
  maskedPhone: string;
544
558
  }>>;
545
559
  };
@@ -548,60 +562,68 @@ declare const createSdkWrapper: <P extends Omit<{
548
562
  magicLink: {
549
563
  verify: (token: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
550
564
  signIn: {
551
- email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
552
- maskedEmail: string;
553
- }>>;
554
565
  sms: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
555
566
  maskedPhone: string;
556
567
  }>>;
557
568
  whatsapp: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
558
569
  maskedPhone: string;
559
570
  }>>;
571
+ email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
572
+ maskedEmail: string;
573
+ }>>;
560
574
  };
561
575
  signUp: {
562
- email: (loginId: string, uri: string, user?: {
576
+ sms: (loginId: string, uri: string, user?: {
563
577
  email?: string;
564
578
  name?: string;
565
579
  phone?: string;
566
580
  }) => Promise<_descope_core_js_sdk.SdkResponse<{
567
- maskedEmail: string;
581
+ maskedPhone: string;
568
582
  }>>;
569
- sms: (loginId: string, uri: string, user?: {
583
+ whatsapp: (loginId: string, uri: string, user?: {
570
584
  email?: string;
571
585
  name?: string;
572
586
  phone?: string;
573
587
  }) => Promise<_descope_core_js_sdk.SdkResponse<{
574
588
  maskedPhone: string;
575
589
  }>>;
576
- whatsapp: (loginId: string, uri: string, user?: {
590
+ email: (loginId: string, uri: string, user?: {
577
591
  email?: string;
578
592
  name?: string;
579
593
  phone?: string;
580
594
  }) => Promise<_descope_core_js_sdk.SdkResponse<{
581
- maskedPhone: string;
595
+ maskedEmail: string;
582
596
  }>>;
583
597
  };
584
598
  signUpOrIn: {
585
- email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
586
- maskedEmail: string;
587
- }>>;
588
599
  sms: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
589
600
  maskedPhone: string;
590
601
  }>>;
591
602
  whatsapp: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
592
603
  maskedPhone: string;
593
604
  }>>;
605
+ email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<{
606
+ maskedEmail: string;
607
+ }>>;
594
608
  };
595
609
  update: {
596
- email: (loginId: string, email: string, URI?: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
610
+ email: <T_2_1 extends boolean>(loginId: string, email: string, URI?: string, token?: string, updateOptions?: {
611
+ addToLoginIDs?: T_2_1;
612
+ onMergeUseExisting?: T_2_1 extends true ? boolean : never;
613
+ }) => Promise<_descope_core_js_sdk.SdkResponse<{
614
+ maskedEmail: string;
615
+ }>>;
597
616
  phone: {
598
- email: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<{
599
- maskedPhone: string;
600
- }>>;
601
- sms: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<{
617
+ sms: <T_3_2 extends boolean>(loginId: string, phone: string, URI?: string, token?: string, updateOptions?: {
618
+ addToLoginIDs?: T_3_2;
619
+ onMergeUseExisting?: T_3_2 extends true ? boolean : never;
620
+ }) => Promise<_descope_core_js_sdk.SdkResponse<{
602
621
  maskedPhone: string;
603
622
  }>>;
604
- whatsapp: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<{
623
+ whatsapp: <T_3_3 extends boolean>(loginId: string, phone: string, URI?: string, token?: string, updateOptions?: {
624
+ addToLoginIDs?: T_3_3;
625
+ onMergeUseExisting?: T_3_3 extends true ? boolean : never;
626
+ }) => Promise<_descope_core_js_sdk.SdkResponse<{
605
627
  maskedPhone: string;
606
628
  }>>;
607
629
  };
@@ -621,60 +643,47 @@ declare const createSdkWrapper: <P extends Omit<{
621
643
  timeoutMs: number;
622
644
  }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
623
645
  update: {
624
- email: (loginId: string, email: string, URI?: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
646
+ email: <T_4_1 extends boolean>(loginId: string, email: string, URI?: string, token?: string, updateOptions?: {
647
+ addToLoginIDs?: T_4_1;
648
+ onMergeUseExisting?: T_4_1 extends true ? boolean : never;
649
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
625
650
  };
626
651
  };
627
652
  oauth: {
628
653
  start: {
629
654
  facebook: <B_8 extends {
630
655
  redirect: boolean;
631
- }>(redirectURL?: string, config?: B_8) => Promise<B_8 extends {
632
- redirect: true;
633
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
634
- github: <B_1_2 extends {
656
+ }>(redirectURL?: string, config?: B_8) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
657
+ github: <B_1_1 extends {
635
658
  redirect: boolean;
636
- }>(redirectURL?: string, config?: B_1_2) => Promise<B_1_2 extends {
637
- redirect: true;
638
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
659
+ }>(redirectURL?: string, config?: B_1_1) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
639
660
  google: <B_2_1 extends {
640
661
  redirect: boolean;
641
- }>(redirectURL?: string, config?: B_2_1) => Promise<B_2_1 extends {
642
- redirect: true;
643
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
662
+ }>(redirectURL?: string, config?: B_2_1) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
644
663
  microsoft: <B_3_1 extends {
645
664
  redirect: boolean;
646
- }>(redirectURL?: string, config?: B_3_1) => Promise<B_3_1 extends {
647
- redirect: true;
648
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
665
+ }>(redirectURL?: string, config?: B_3_1) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
649
666
  gitlab: <B_4_1 extends {
650
667
  redirect: boolean;
651
- }>(redirectURL?: string, config?: B_4_1) => Promise<B_4_1 extends {
652
- redirect: true;
653
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
668
+ }>(redirectURL?: string, config?: B_4_1) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
654
669
  apple: <B_5_1 extends {
655
670
  redirect: boolean;
656
- }>(redirectURL?: string, config?: B_5_1) => Promise<B_5_1 extends {
657
- redirect: true;
658
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
671
+ }>(redirectURL?: string, config?: B_5_1) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
659
672
  discord: <B_6_1 extends {
660
673
  redirect: boolean;
661
- }>(redirectURL?: string, config?: B_6_1) => Promise<B_6_1 extends {
662
- redirect: true;
663
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
674
+ }>(redirectURL?: string, config?: B_6_1) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
664
675
  linkedin: <B_7_1 extends {
665
676
  redirect: boolean;
666
- }>(redirectURL?: string, config?: B_7_1) => Promise<B_7_1 extends {
667
- redirect: true;
668
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
677
+ }>(redirectURL?: string, config?: B_7_1) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
669
678
  };
670
679
  exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
671
680
  };
672
681
  saml: {
673
- start: <B_1_3 extends {
674
- redirect: boolean;
675
- }>(tenantNameOrEmail: string, config?: B_1_3) => Promise<B_1_3 extends {
676
- redirect: true;
677
- } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
682
+ start: (tenantIdOrEmail: string, redirectUrl?: string, loginOptions?: {
683
+ stepup?: boolean;
684
+ mfa?: boolean;
685
+ customClaims?: Record<string, any>;
686
+ }, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
678
687
  exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
679
688
  };
680
689
  totp: {
@@ -799,9 +808,9 @@ interface DescopeProps {
799
808
  }
800
809
  type DefaultFlowProps = Omit<DescopeProps, 'flowId'>;
801
810
 
802
- declare const SignInFlow: (props: DefaultFlowProps) => JSX.Element;
803
- declare const SignUpFlow: (props: DefaultFlowProps) => JSX.Element;
804
- declare const SignUpOrInFlow: (props: DefaultFlowProps) => JSX.Element;
811
+ declare const SignInFlow: (props: DefaultFlowProps) => React.JSX.Element;
812
+ declare const SignUpFlow: (props: DefaultFlowProps) => React.JSX.Element;
813
+ declare const SignUpOrInFlow: (props: DefaultFlowProps) => React.JSX.Element;
805
814
 
806
815
  declare const Descope: React.ForwardRefExoticComponent<DescopeProps & React.RefAttributes<HTMLElement>>;
807
816
 
package/dist/index.esm.js CHANGED
@@ -1,2 +1,2 @@
1
- import e,{useMemo as t,useState as r,useEffect as o,useCallback as s,lazy as n,useImperativeHandle as i,Suspense as c,useContext as a,useRef as d}from"react";import u from"@descope/web-js-sdk";const l=e.createContext(void 0),f=e=>(...t)=>{if(!e)throw Error("You can only use this function after sdk initialization. Make sure to supply 'projectId' to <AuthProvider /> component");return e(...t)},p=e=>(...t)=>{let r;try{r=e(...t)}catch(e){console.error(e)}return r},h={"x-descope-sdk-name":"react","x-descope-sdk-version":"1.0.3"},m="undefined"!=typeof window;let k;const w=e=>{const t=u({...e,persistTokens:m,autoRefresh:m});return k=t,t};k=w({projectId:"temp pid"});const y=()=>m?k?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),g=()=>m?k?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),b=p(((e=y(),t)=>k?.getJwtPermissions(e,t))),U=p(((e=y(),t)=>k?.getJwtRoles(e,t))),v=(e=g())=>k?.refresh(e);const E=({projectId:n,baseUrl:i,sessionTokenViaCookie:c,children:a})=>{const[d,u]=r(),[p,m]=r(),[k,y]=r(!1),[g,b]=r(!1),U=(({projectId:e,baseUrl:r,sessionTokenViaCookie:o})=>t((()=>{if(e)return w({projectId:e,baseUrl:r,sessionTokenViaCookie:o,baseHeaders:h,persistToken:!0,autoRefresh:!0})}),[e,r,o]))({projectId:n,baseUrl:i,sessionTokenViaCookie:c});o((()=>{if(U){const e=U.onSessionTokenChange(m),t=U.onUserChange(u);return()=>{e(),t()}}}),[U]);const v=s((()=>{b(!0),f(U?.refresh)().then((()=>{b(!1)}))}),[U]),E=s((()=>{y(!0),f(U.me)().then((()=>{y(!1)}))}),[U]),I=t((()=>({fetchUser:E,user:d,isUserLoading:k,fetchSession:v,session:p,isSessionLoading:g,projectId:n,baseUrl:i,setUser:u,setSession:m,sdk:U})),[E,d,k,v,p,g,n,i,u,m,U]);return e.createElement(l.Provider,{value:I},a)};E.defaultProps={baseUrl:"",children:void 0,sessionTokenViaCookie:!1};const I=n((async()=>((await import("@descope/web-component")).default.sdkConfigOverrides={baseHeaders:h},{default:({projectId:t,flowId:r,baseUrl:o,innerRef:s,tenant:n,theme:i,debug:c,telemetryKey:a,redirectUrl:d,autoFocus:u})=>e.createElement("descope-wc",{"project-id":t,"flow-id":r,"base-url":o,ref:s,tenant:n,theme:i,debug:c,telemetryKey:a,"redirect-url":d,"auto-focus":u})}))),j=e.forwardRef((({flowId:t,onSuccess:n,onError:a,tenant:d,theme:u,debug:f,telemetryKey:p,redirectUrl:h,autoFocus:m},k)=>{const[w,y]=r(null);i(k,(()=>w));const{projectId:g,baseUrl:b,sdk:U}=e.useContext(l),v=s((async e=>{await U.httpClient.hooks.afterRequest({},new Response(JSON.stringify(e.detail))),n&&n(e)}),[n]);return o((()=>{const e=w;return e?.addEventListener("success",v),a&&e?.addEventListener("error",a),()=>{a&&e?.removeEventListener("error",a),e?.removeEventListener("success",v)}}),[w,a,v]),e.createElement("form",null,e.createElement(c,{fallback:null},e.createElement(I,{projectId:g,flowId:t,baseUrl:b,innerRef:y,tenant:d,theme:u,debug:f,telemetryKey:p,redirectUrl:h,autoFocus:m})))}));j.defaultProps={onError:void 0,onSuccess:void 0};const S=t=>e.createElement(j,{...t,flowId:"sign-in"}),C=t=>e.createElement(j,{...t,flowId:"sign-up"}),R=t=>e.createElement(j,{...t,flowId:"sign-up-or-in"});var T=()=>{const e=a(l);if(!e)throw Error("You can only use this hook in the context of <AuthProvider />");return e};const L=e=>`You can only use this ${e} after sdk initialization. Make sure to supply 'projectId' to <AuthProvider /> component`,x={get(e,t){if("object"==typeof e[t]&&null!==e[t])return new Proxy(e[t],x);if("function"==typeof e[t])return()=>{throw Error(L("function"))};throw Error(L("attribute"))}},P=()=>{const{sdk:e}=T();return t((()=>e||new Proxy(w({projectId:"dummy"}),x)),[e])},V=()=>{const{session:e,isSessionLoading:r,fetchSession:s}=T(),n=d(r);return t((()=>{n.current=r}),[r]),t((()=>{e||r||(n.current=!0)}),[s]),o((()=>{e||r||s()}),[s]),{isSessionLoading:n.current,sessionToken:e,isAuthenticated:!!e}},A=()=>{const{user:e,fetchUser:s,isUserLoading:n,session:i}=T(),[c,a]=r(!1),u=d(n),l=t((()=>!e&&!n&&i&&!c),[s,i,c]);return t((()=>{u.current=n}),[n]),t((()=>{l&&(u.current=!0)}),[l]),o((()=>{l&&(a(!0),s())}),[l]),{isUserLoading:u.current,user:e}};export{E as AuthProvider,j as Descope,S as SignInFlow,C as SignUpFlow,R as SignUpOrInFlow,b as getJwtPermissions,U as getJwtRoles,g as getRefreshToken,y as getSessionToken,v as refresh,P as useDescope,V as useSession,A as useUser};
1
+ import e,{useMemo as t,useState as r,useEffect as o,useCallback as s,lazy as n,useImperativeHandle as i,Suspense as c,useContext as a,useRef as d}from"react";import u from"@descope/web-js-sdk";const l=e.createContext(void 0),f=e=>(...t)=>{if(!e)throw Error("You can only use this function after sdk initialization. Make sure to supply 'projectId' to <AuthProvider /> component");return e(...t)},p=e=>(...t)=>{let r;try{r=e(...t)}catch(e){console.error(e)}return r},h={"x-descope-sdk-name":"react","x-descope-sdk-version":"1.0.4"},m="undefined"!=typeof window;let k;const w=e=>{const t=u({...e,persistTokens:m,autoRefresh:m});return k=t,t};k=w({projectId:"temp pid"});const y=()=>m?k?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),g=()=>m?k?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),b=p(((e=y(),t)=>k?.getJwtPermissions(e,t))),U=p(((e=y(),t)=>k?.getJwtRoles(e,t))),v=(e=g())=>k?.refresh(e);const E=({projectId:n,baseUrl:i,sessionTokenViaCookie:c,children:a})=>{const[d,u]=r(),[p,m]=r(),[k,y]=r(!1),[g,b]=r(!1),U=(({projectId:e,baseUrl:r,sessionTokenViaCookie:o})=>t((()=>{if(e)return w({projectId:e,baseUrl:r,sessionTokenViaCookie:o,baseHeaders:h,persistToken:!0,autoRefresh:!0})}),[e,r,o]))({projectId:n,baseUrl:i,sessionTokenViaCookie:c});o((()=>{if(U){const e=U.onSessionTokenChange(m),t=U.onUserChange(u);return()=>{e(),t()}}}),[U]);const v=s((()=>{b(!0),f(U?.refresh)().then((()=>{b(!1)}))}),[U]),E=s((()=>{y(!0),f(U.me)().then((()=>{y(!1)}))}),[U]),I=t((()=>({fetchUser:E,user:d,isUserLoading:k,fetchSession:v,session:p,isSessionLoading:g,projectId:n,baseUrl:i,setUser:u,setSession:m,sdk:U})),[E,d,k,v,p,g,n,i,u,m,U]);return e.createElement(l.Provider,{value:I},a)};E.defaultProps={baseUrl:"",children:void 0,sessionTokenViaCookie:!1};const I=n((async()=>((await import("@descope/web-component")).default.sdkConfigOverrides={baseHeaders:h},{default:({projectId:t,flowId:r,baseUrl:o,innerRef:s,tenant:n,theme:i,debug:c,telemetryKey:a,redirectUrl:d,autoFocus:u})=>e.createElement("descope-wc",{"project-id":t,"flow-id":r,"base-url":o,ref:s,tenant:n,theme:i,debug:c,telemetryKey:a,"redirect-url":d,"auto-focus":u})}))),j=e.forwardRef((({flowId:t,onSuccess:n,onError:a,tenant:d,theme:u,debug:f,telemetryKey:p,redirectUrl:h,autoFocus:m},k)=>{const[w,y]=r(null);i(k,(()=>w));const{projectId:g,baseUrl:b,sdk:U}=e.useContext(l),v=s((async e=>{await U.httpClient.hooks.afterRequest({},new Response(JSON.stringify(e.detail))),n&&n(e)}),[n]);return o((()=>{const e=w;return e?.addEventListener("success",v),a&&e?.addEventListener("error",a),()=>{a&&e?.removeEventListener("error",a),e?.removeEventListener("success",v)}}),[w,a,v]),e.createElement("form",null,e.createElement(c,{fallback:null},e.createElement(I,{projectId:g,flowId:t,baseUrl:b,innerRef:y,tenant:d,theme:u,debug:f,telemetryKey:p,redirectUrl:h,autoFocus:m})))}));j.defaultProps={onError:void 0,onSuccess:void 0};const S=t=>e.createElement(j,{...t,flowId:"sign-in"}),C=t=>e.createElement(j,{...t,flowId:"sign-up"}),R=t=>e.createElement(j,{...t,flowId:"sign-up-or-in"});var T=()=>{const e=a(l);if(!e)throw Error("You can only use this hook in the context of <AuthProvider />");return e};const L=e=>`You can only use this ${e} after sdk initialization. Make sure to supply 'projectId' to <AuthProvider /> component`,x={get(e,t){if("object"==typeof e[t]&&null!==e[t])return new Proxy(e[t],x);if("function"==typeof e[t])return()=>{throw Error(L("function"))};throw Error(L("attribute"))}},P=()=>{const{sdk:e}=T();return t((()=>e||new Proxy(w({projectId:"dummy"}),x)),[e])},V=()=>{const{session:e,isSessionLoading:r,fetchSession:s}=T(),n=d(r);return t((()=>{n.current=r}),[r]),t((()=>{e||r||(n.current=!0)}),[s]),o((()=>{e||r||s()}),[s]),{isSessionLoading:n.current,sessionToken:e,isAuthenticated:!!e}},A=()=>{const{user:e,fetchUser:s,isUserLoading:n,session:i}=T(),[c,a]=r(!1),u=d(n),l=t((()=>!e&&!n&&i&&!c),[s,i,c]);return t((()=>{u.current=n}),[n]),t((()=>{l&&(u.current=!0)}),[l]),o((()=>{l&&(a(!0),s())}),[l]),{isUserLoading:u.current,user:e}};export{E as AuthProvider,j as Descope,S as SignInFlow,C as SignUpFlow,R as SignUpOrInFlow,b as getJwtPermissions,U as getJwtRoles,g as getRefreshToken,y as getSessionToken,v as refresh,P as useDescope,V as useSession,A as useUser};
2
2
  //# sourceMappingURL=index.esm.js.map