@stytch/vanilla-js 6.0.9 → 6.0.11
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/CHANGELOG.md +13 -0
- package/dist/cjs/{StytchSSRProxy-DjO95TII.js → StytchSSRProxy-BG8v1Uf6.js} +19 -23
- package/dist/cjs/StytchSSRProxy-BG8v1Uf6.js.map +1 -0
- package/dist/cjs/b2b/index.cjs +47 -39
- package/dist/cjs/b2b/index.cjs.map +1 -1
- package/dist/cjs/b2b/index.headless.cjs +1 -1
- package/dist/cjs/index.cjs +2 -2
- package/dist/cjs/index.headless.cjs +1 -1
- package/dist/cjs/{shadcn-DnwRqCY0.js → shadcn-Ds1x7jpl.js} +2 -2
- package/dist/cjs/{shadcn-DnwRqCY0.js.map → shadcn-Ds1x7jpl.js.map} +1 -1
- package/dist/cjs-dev/{StytchSSRProxy-t6BtsVJa.js → StytchSSRProxy-CCpBazSd.js} +19 -23
- package/dist/cjs-dev/StytchSSRProxy-CCpBazSd.js.map +1 -0
- package/dist/cjs-dev/b2b/index.cjs +47 -39
- package/dist/cjs-dev/b2b/index.cjs.map +1 -1
- package/dist/cjs-dev/b2b/index.headless.cjs +1 -1
- package/dist/cjs-dev/index.cjs +2 -2
- package/dist/cjs-dev/index.headless.cjs +1 -1
- package/dist/cjs-dev/{shadcn-C7p3HE31.js → shadcn-YlPYvF-0.js} +2 -2
- package/dist/cjs-dev/{shadcn-C7p3HE31.js.map → shadcn-YlPYvF-0.js.map} +1 -1
- package/dist/esm/node_modules/js-cookie/dist/js.cookie.mjs +17 -21
- package/dist/esm/node_modules/js-cookie/dist/js.cookie.mjs.map +1 -1
- package/dist/esm/packages/web/src/NetworkClient.mjs +1 -1
- package/dist/esm/packages/web/src/ui/b2b/screens/EmailForm.mjs +1 -20
- package/dist/esm/packages/web/src/ui/b2b/screens/EmailForm.mjs.map +1 -1
- package/dist/esm/packages/web/src/ui/b2b/screens/PasswordEmailForm.mjs +42 -37
- package/dist/esm/packages/web/src/ui/b2b/screens/PasswordEmailForm.mjs.map +1 -1
- package/dist/esm/packages/web/src/ui/b2b/screens/useParseErrorMessage.mjs +28 -0
- package/dist/esm/packages/web/src/ui/b2b/screens/useParseErrorMessage.mjs.map +1 -0
- package/dist/esm-dev/node_modules/js-cookie/dist/js.cookie.mjs +17 -21
- package/dist/esm-dev/node_modules/js-cookie/dist/js.cookie.mjs.map +1 -1
- package/dist/esm-dev/packages/web/src/NetworkClient.mjs +1 -1
- package/dist/esm-dev/packages/web/src/ui/b2b/screens/EmailForm.mjs +1 -20
- package/dist/esm-dev/packages/web/src/ui/b2b/screens/EmailForm.mjs.map +1 -1
- package/dist/esm-dev/packages/web/src/ui/b2b/screens/PasswordEmailForm.mjs +42 -37
- package/dist/esm-dev/packages/web/src/ui/b2b/screens/PasswordEmailForm.mjs.map +1 -1
- package/dist/esm-dev/packages/web/src/ui/b2b/screens/useParseErrorMessage.mjs +28 -0
- package/dist/esm-dev/packages/web/src/ui/b2b/screens/useParseErrorMessage.mjs.map +1 -0
- package/dist/iife/b2b/index.headless.js +1 -1
- package/dist/iife/b2b/index.headless.js.map +1 -1
- package/dist/iife/b2b/index.js +3 -3
- package/dist/iife/b2b/index.js.map +1 -1
- package/dist/iife/index.headless.js +1 -1
- package/dist/iife/index.headless.js.map +1 -1
- package/dist/iife/index.js +1 -1
- package/dist/iife/index.js.map +1 -1
- package/dist/types/{DFPProtectedAuthProvider-Cg2QSi2l.d.ts → DFPProtectedAuthProvider-DQV4qHPT.d.ts} +1 -1
- package/dist/types/{GoogleOneTapClient-iv3nb_kU.d.ts → GoogleOneTapClient-BITSM9oM.d.ts} +1 -1
- package/dist/types/{PresentationConfig-CxQiKzO8.d.ts → PresentationConfig-BjjsTM1r.d.ts} +1 -1
- package/dist/types/{StytchB2BClient-C-2u87oo.d.ts → StytchB2BClient-DkrU-AQy.d.ts} +2 -2
- package/dist/types/{StytchClient-CCLs7DV6.d.ts → StytchClient-CUz_XnTa.d.ts} +2 -2
- package/dist/types/adminPortal/index.d.ts +5 -5
- package/dist/types/b2b/index.d.ts +9 -9
- package/dist/types/b2b/index.headless.d.ts +5 -5
- package/dist/types/compat.d.ts +2 -2
- package/dist/types/{idpHelpers-CxSGKrN9.d.ts → idpHelpers-DsFYR_P9.d.ts} +1 -1
- package/dist/types/index.d.ts +9 -9
- package/dist/types/index.headless.d.ts +5 -5
- package/dist/types/{themes-MdCoynbd.d.ts → themes-LfxL9FBW.d.ts} +5 -5
- package/package.json +1 -1
- package/dist/cjs/StytchSSRProxy-DjO95TII.js.map +0 -1
- package/dist/cjs-dev/StytchSSRProxy-t6BtsVJa.js.map +0 -1
package/dist/cjs/b2b/index.cjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var shadcn = require('../shadcn-
|
|
3
|
+
var shadcn = require('../shadcn-Ds1x7jpl.js');
|
|
4
4
|
var uniqueId = require('../uniqueId-D9puNTGE.js');
|
|
5
5
|
var storage = require('../storage-MqgW9SGA.js');
|
|
6
6
|
var index$1 = require('../index-Co6H7mej.js');
|
|
7
|
-
var StytchSSRProxy = require('../StytchSSRProxy-
|
|
7
|
+
var StytchSSRProxy = require('../StytchSSRProxy-BG8v1Uf6.js');
|
|
8
8
|
var b2b_index_headless = require('./index.headless.cjs');
|
|
9
9
|
|
|
10
10
|
const SSOIcon = ({ size = shadcn.DEFAULT_ICON_SIZE, ...props })=>/*#__PURE__*/ uniqueId.wn.createElement("svg", {
|
|
@@ -1731,7 +1731,9 @@ const JIT_PROVISIONING_ERRORS = [
|
|
|
1731
1731
|
'email_jit_provisioning_not_allowed',
|
|
1732
1732
|
'invalid_email_for_jit_provisioning'
|
|
1733
1733
|
];
|
|
1734
|
-
|
|
1734
|
+
/**
|
|
1735
|
+
* Translates error message to user friendlier format including handling for JIT errors
|
|
1736
|
+
*/ const useParseErrorMessage = ()=>{
|
|
1735
1737
|
const { i18n: $__i18n, _: $__ } = uniqueId.useLingui();
|
|
1736
1738
|
return (error, { email, org: organizationName })=>{
|
|
1737
1739
|
if (JIT_PROVISIONING_ERRORS.includes(error.error_type)) {
|
|
@@ -1747,6 +1749,7 @@ const useParseErrorMessage = ()=>{
|
|
|
1747
1749
|
return shadcn.getTranslatedError(error, $__);
|
|
1748
1750
|
};
|
|
1749
1751
|
};
|
|
1752
|
+
|
|
1750
1753
|
const EmailForm = ({ showPasswordButton })=>{
|
|
1751
1754
|
const [state, dispatch] = shadcn.useGlobalReducer();
|
|
1752
1755
|
const [emailInput, setEmailInput] = uniqueId.h(state.formState.passwordState.email);
|
|
@@ -2328,48 +2331,52 @@ const PasswordsAuthenticate = ()=>{
|
|
|
2328
2331
|
const PasswordsEmailForm = ()=>{
|
|
2329
2332
|
const [, dispatch] = shadcn.useGlobalReducer();
|
|
2330
2333
|
const { i18n: $__i18n, _: $__ } = uniqueId.useLingui();
|
|
2334
|
+
const parseErrorMessages = useParseErrorMessage();
|
|
2331
2335
|
const { stytch, email, setEmail, password, setPassword, organization, errorMessage, setErrorMessage, isSubmitting, setIsSubmitting, submitPassword, submitDiscoveryPassword, handleNonMemberReset } = usePasswordInput();
|
|
2332
2336
|
const [hideInput, setHideInput] = uniqueId.h(!!organization && !email);
|
|
2333
2337
|
const handleSubmit = async (e)=>{
|
|
2334
2338
|
e.preventDefault();
|
|
2335
|
-
if (organization) {
|
|
2336
|
-
const organization_id = organization.organization_id;
|
|
2337
|
-
// If we have processed the email, submit the password field
|
|
2338
|
-
if (!hideInput) {
|
|
2339
|
-
submitPassword(organization_id);
|
|
2340
|
-
return;
|
|
2341
|
-
}
|
|
2342
|
-
// Validate we have a member with a password. Otherwise, check if we can jit
|
|
2343
|
-
// provision and kickoff verification and session reset
|
|
2344
|
-
if (!email.match(storage.EMAIL_REGEX)) {
|
|
2345
|
-
setErrorMessage($__i18n._({
|
|
2346
|
-
id: "error.invalidEmailAddress",
|
|
2347
|
-
message: "Invalid email address"
|
|
2348
|
-
}));
|
|
2349
|
-
return;
|
|
2350
|
-
}
|
|
2351
|
-
setErrorMessage('');
|
|
2352
|
-
setIsSubmitting(true);
|
|
2353
|
-
storage.readB2BInternals(stytch).searchManager.searchMember(email, organization.organization_id).then(({ member })=>{
|
|
2354
|
-
if (member) {
|
|
2355
|
-
setHideInput(false);
|
|
2356
|
-
setIsSubmitting(false);
|
|
2357
|
-
dispatch({
|
|
2358
|
-
type: 'set_password_state',
|
|
2359
|
-
email
|
|
2360
|
-
});
|
|
2361
|
-
return;
|
|
2362
|
-
}
|
|
2363
|
-
// No member password flow: verify email and use reset by session
|
|
2364
|
-
handleNonMemberReset();
|
|
2365
|
-
}).catch((err)=>{
|
|
2366
|
-
setIsSubmitting(false);
|
|
2367
|
-
setErrorMessage(shadcn.getTranslatedError(err, $__));
|
|
2368
|
-
});
|
|
2369
|
-
} else {
|
|
2339
|
+
if (!organization) {
|
|
2370
2340
|
// Discovery flow
|
|
2371
2341
|
submitDiscoveryPassword();
|
|
2342
|
+
return;
|
|
2372
2343
|
}
|
|
2344
|
+
const organization_id = organization.organization_id;
|
|
2345
|
+
// If we have processed the email, submit the password field
|
|
2346
|
+
if (!hideInput) {
|
|
2347
|
+
submitPassword(organization_id);
|
|
2348
|
+
return;
|
|
2349
|
+
}
|
|
2350
|
+
// Validate we have a member with a password. Otherwise, check if we can jit
|
|
2351
|
+
// provision and kickoff verification and session reset
|
|
2352
|
+
if (!email.match(storage.EMAIL_REGEX)) {
|
|
2353
|
+
setErrorMessage($__i18n._({
|
|
2354
|
+
id: "error.invalidEmailAddress",
|
|
2355
|
+
message: "Invalid email address"
|
|
2356
|
+
}));
|
|
2357
|
+
return;
|
|
2358
|
+
}
|
|
2359
|
+
setErrorMessage('');
|
|
2360
|
+
setIsSubmitting(true);
|
|
2361
|
+
storage.readB2BInternals(stytch).searchManager.searchMember(email, organization.organization_id).then(({ member })=>{
|
|
2362
|
+
if (member) {
|
|
2363
|
+
setHideInput(false);
|
|
2364
|
+
setIsSubmitting(false);
|
|
2365
|
+
dispatch({
|
|
2366
|
+
type: 'set_password_state',
|
|
2367
|
+
email
|
|
2368
|
+
});
|
|
2369
|
+
return;
|
|
2370
|
+
}
|
|
2371
|
+
// No member password flow: verify email and use reset by session
|
|
2372
|
+
handleNonMemberReset();
|
|
2373
|
+
}).catch((err)=>{
|
|
2374
|
+
setIsSubmitting(false);
|
|
2375
|
+
setErrorMessage(parseErrorMessages(err, {
|
|
2376
|
+
email,
|
|
2377
|
+
org: organization_id
|
|
2378
|
+
}));
|
|
2379
|
+
});
|
|
2373
2380
|
};
|
|
2374
2381
|
const onGetHelp = ()=>{
|
|
2375
2382
|
dispatch({
|
|
@@ -2387,7 +2394,8 @@ const PasswordsEmailForm = ()=>{
|
|
|
2387
2394
|
gap: 2
|
|
2388
2395
|
}, /*#__PURE__*/ uniqueId.wn.createElement(shadcn.EmailInput, {
|
|
2389
2396
|
email: email,
|
|
2390
|
-
setEmail: setEmail
|
|
2397
|
+
setEmail: setEmail,
|
|
2398
|
+
error: hideInput ? errorMessage : undefined
|
|
2391
2399
|
}), !hideInput && /*#__PURE__*/ uniqueId.wn.createElement(shadcn.PasswordInput, {
|
|
2392
2400
|
password: password,
|
|
2393
2401
|
setPassword: setPassword,
|