@stytch/vanilla-js 5.17.2 → 5.18.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.
@@ -50,6 +50,42 @@ var DEFAULT_MFA_STATE = {
50
50
  enrollment: null
51
51
  }
52
52
  };
53
+ var ErrorType;
54
+ (function (ErrorType) {
55
+ ErrorType[ErrorType["Default"] = 0] = "Default";
56
+ ErrorType[ErrorType["EmailMagicLink"] = 1] = "EmailMagicLink";
57
+ ErrorType[ErrorType["Organization"] = 2] = "Organization";
58
+ ErrorType[ErrorType["CannotJoinOrgDueToAuthPolicy"] = 3] = "CannotJoinOrgDueToAuthPolicy";
59
+ ErrorType[ErrorType["AdBlockerDetected"] = 4] = "AdBlockerDetected";
60
+ })(ErrorType || (ErrorType = {}));
61
+ var AppScreens$1;
62
+ (function (AppScreens) {
63
+ AppScreens["Main"] = "Main";
64
+ AppScreens["EmailConfirmation"] = "Email Confirmation";
65
+ AppScreens["LoggedIn"] = "Logged In";
66
+ AppScreens["Discovery"] = "Discovery";
67
+ AppScreens["Error"] = "Error";
68
+ AppScreens["PasswordEmailForm"] = "Password Email";
69
+ AppScreens["PasswordAuthenticate"] = "Password Authenticate";
70
+ AppScreens["PasswordResetForm"] = "Password Reset Form";
71
+ AppScreens["PasswordResetVerifyConfirmation"] = "Password Reset Verify Confirmation";
72
+ AppScreens["PasswordForgotForm"] = "Password Forgot Form";
73
+ AppScreens["PasswordSetNewConfirmation"] = "Password Set New Confirmation";
74
+ AppScreens["MFAEnrollmentSelection"] = "MFA Enrollment Selection";
75
+ AppScreens["RecoveryCodeEntry"] = "Recovery Code Entry";
76
+ AppScreens["RecoveryCodeSave"] = "Recovery Code Save";
77
+ AppScreens["SMSOTPEnrollment"] = "SMS OTP Enrollment";
78
+ AppScreens["SMSOTPEntry"] = "SMS OTP Entry";
79
+ AppScreens["TOTPEnrollmentManual"] = "TOTP Enrollment Manual";
80
+ AppScreens["TOTPEnrollmentQRCode"] = "TOTP Enrollment QR Code";
81
+ AppScreens["TOTPEntry"] = "TOTP Entry";
82
+ AppScreens["EmailMethodSelection"] = "Email Method Selection";
83
+ AppScreens["EmailOTPEntry"] = "Email OTP Entry";
84
+ AppScreens["SSODiscoveryEmail"] = "SSO Discovery Email";
85
+ AppScreens["SSODiscoveryFallback"] = "SSO Discovery Fallback";
86
+ AppScreens["SSODiscoveryMenu"] = "SSO Discovery Menu";
87
+ AppScreens["IDPConsent"] = "IDP Consent";
88
+ })(AppScreens$1 || (AppScreens$1 = {}));
53
89
  var getAuthMethodsForMember = function getAuthMethodsForMember(authMethods, member) {
54
90
  var memberHasPassword = !!(member === null || member === void 0 ? void 0 : member.member_password_id);
55
91
  return memberHasPassword ? authMethods : authMethods.filter(function (method) {
@@ -477,42 +513,6 @@ var reducer = function reducer(state, action) {
477
513
  return mfaReducer(state, action);
478
514
  }
479
515
  };
480
- var AppScreens$1;
481
- (function (AppScreens) {
482
- AppScreens["Main"] = "Main";
483
- AppScreens["EmailConfirmation"] = "Email Confirmation";
484
- AppScreens["LoggedIn"] = "Logged In";
485
- AppScreens["Discovery"] = "Discovery";
486
- AppScreens["Error"] = "Error";
487
- AppScreens["PasswordEmailForm"] = "Password Email";
488
- AppScreens["PasswordAuthenticate"] = "Password Authenticate";
489
- AppScreens["PasswordResetForm"] = "Password Reset Form";
490
- AppScreens["PasswordResetVerifyConfirmation"] = "Password Reset Verify Confirmation";
491
- AppScreens["PasswordForgotForm"] = "Password Forgot Form";
492
- AppScreens["PasswordSetNewConfirmation"] = "Password Set New Confirmation";
493
- AppScreens["MFAEnrollmentSelection"] = "MFA Enrollment Selection";
494
- AppScreens["RecoveryCodeEntry"] = "Recovery Code Entry";
495
- AppScreens["RecoveryCodeSave"] = "Recovery Code Save";
496
- AppScreens["SMSOTPEnrollment"] = "SMS OTP Enrollment";
497
- AppScreens["SMSOTPEntry"] = "SMS OTP Entry";
498
- AppScreens["TOTPEnrollmentManual"] = "TOTP Enrollment Manual";
499
- AppScreens["TOTPEnrollmentQRCode"] = "TOTP Enrollment QR Code";
500
- AppScreens["TOTPEntry"] = "TOTP Entry";
501
- AppScreens["EmailMethodSelection"] = "Email Method Selection";
502
- AppScreens["EmailOTPEntry"] = "Email OTP Entry";
503
- AppScreens["SSODiscoveryEmail"] = "SSO Discovery Email";
504
- AppScreens["SSODiscoveryFallback"] = "SSO Discovery Fallback";
505
- AppScreens["SSODiscoveryMenu"] = "SSO Discovery Menu";
506
- AppScreens["IDPConsent"] = "IDP Consent";
507
- })(AppScreens$1 || (AppScreens$1 = {}));
508
- var ErrorType;
509
- (function (ErrorType) {
510
- ErrorType[ErrorType["Default"] = 0] = "Default";
511
- ErrorType[ErrorType["EmailMagicLink"] = 1] = "EmailMagicLink";
512
- ErrorType[ErrorType["Organization"] = 2] = "Organization";
513
- ErrorType[ErrorType["CannotJoinOrgDueToAuthPolicy"] = 3] = "CannotJoinOrgDueToAuthPolicy";
514
- ErrorType[ErrorType["AdBlockerDetected"] = 4] = "AdBlockerDetected";
515
- })(ErrorType || (ErrorType = {}));
516
516
  var DEFAULT_STATE = {
517
517
  screen: AppScreens$1.Main,
518
518
  screenHistory: [],
@@ -3650,13 +3650,13 @@ var Discovery = function Discovery() {
3650
3650
  return handleDiscoveryOrganizationStart(discoveredOrganization);
3651
3651
  }
3652
3652
  }, /*#__PURE__*/y(Flex, {
3653
- gap: 4,
3653
+ gap: 8,
3654
3654
  alignItems: "center"
3655
3655
  }, /*#__PURE__*/y(Logo, {
3656
3656
  name: organization.organization_name,
3657
3657
  logo: organization.organization_logo_url
3658
3658
  }), /*#__PURE__*/y("div", null, organization.organization_name)), /*#__PURE__*/y(Flex, {
3659
- gap: 4,
3659
+ gap: 8,
3660
3660
  alignItems: "center"
3661
3661
  }, /*#__PURE__*/y(ActionText, {
3662
3662
  type: membership.type
@@ -3767,14 +3767,18 @@ var ConfirmationSVG = function ConfirmationSVG() {
3767
3767
  stopOpacity: "0.26"
3768
3768
  }))));
3769
3769
  };
3770
- var Confirmation = function Confirmation() {
3770
+ var Confirmation = function Confirmation(_ref77) {
3771
+ var _ref77$header = _ref77.header,
3772
+ header = _ref77$header === void 0 ? 'Success!' : _ref77$header,
3773
+ _ref77$text = _ref77.text,
3774
+ text = _ref77$text === void 0 ? 'You have successfully logged in.' : _ref77$text;
3771
3775
  return /*#__PURE__*/y(Flex, {
3772
3776
  direction: "column",
3773
3777
  gap: 24,
3774
3778
  alignItems: "center"
3775
3779
  }, /*#__PURE__*/y(Text, {
3776
3780
  size: "header"
3777
- }, "Success!"), /*#__PURE__*/y(Text, null, "You have successfully logged in."), /*#__PURE__*/y(ConfirmationSVG, null));
3781
+ }, header), /*#__PURE__*/y(Text, null, text), /*#__PURE__*/y(ConfirmationSVG, null));
3778
3782
  };
3779
3783
  var useMountEffect = function useMountEffect(effect) {
3780
3784
  var effectRef = _$1(effect);
@@ -3811,10 +3815,10 @@ var StyledButton = He.button(_templateObject31 || (_templateObject31 = _taggedTe
3811
3815
  });
3812
3816
  var MenuText = He.div(_templateObject32 || (_templateObject32 = _taggedTemplateLiteral(["\n flex: 1 1 auto;\n"])));
3813
3817
  var ChevronContainer = He.span(_templateObject33 || (_templateObject33 = _taggedTemplateLiteral(["\n flex: 0 0 auto;\n"])));
3814
- var MenuButton = function MenuButton(_ref77) {
3815
- var children = _ref77.children,
3816
- disabled = _ref77.disabled,
3817
- onClick = _ref77.onClick;
3818
+ var MenuButton = function MenuButton(_ref78) {
3819
+ var children = _ref78.children,
3820
+ disabled = _ref78.disabled,
3821
+ onClick = _ref78.onClick;
3818
3822
  return /*#__PURE__*/wn.createElement(StyledButton, {
3819
3823
  type: "button",
3820
3824
  onClick: onClick,
@@ -3915,9 +3919,9 @@ var EmailMethodSelectionScreen = function EmailMethodSelectionScreen() {
3915
3919
  size: "header"
3916
3920
  }, "Select how you\u2019d like to continue."), /*#__PURE__*/wn.createElement(Flex, {
3917
3921
  direction: "column"
3918
- }, displayOptions.map(function (_ref78) {
3919
- var option = _ref78.option,
3920
- label = _ref78.label;
3922
+ }, displayOptions.map(function (_ref79) {
3923
+ var option = _ref79.option,
3924
+ label = _ref79.label;
3921
3925
  return /*#__PURE__*/wn.createElement(MenuButton, {
3922
3926
  key: option,
3923
3927
  disabled: isSending,
@@ -3929,9 +3933,9 @@ var EmailMethodSelectionScreen = function EmailMethodSelectionScreen() {
3929
3933
  errorMessage: errorMessage
3930
3934
  }));
3931
3935
  };
3932
- var InlineButton = function InlineButton(_ref79) {
3933
- var onClick = _ref79.onClick,
3934
- children = _ref79.children;
3936
+ var InlineButton = function InlineButton(_ref80) {
3937
+ var onClick = _ref80.onClick,
3938
+ children = _ref80.children;
3935
3939
  return /*#__PURE__*/wn.createElement("button", {
3936
3940
  onClick: onClick,
3937
3941
  style: {
@@ -3943,45 +3947,45 @@ var InlineButton = function InlineButton(_ref79) {
3943
3947
  }
3944
3948
  }, children));
3945
3949
  };
3946
- var Wrapper = He.div(_templateObject34 || (_templateObject34 = _taggedTemplateLiteral(["\n display: grid;\n grid-template-rows: ", ";\n transition: grid-template-rows 0.15s ease-out;\n"])), function (_ref80) {
3947
- var isOpen = _ref80.isOpen;
3950
+ var Wrapper = He.div(_templateObject34 || (_templateObject34 = _taggedTemplateLiteral(["\n display: grid;\n grid-template-rows: ", ";\n transition: grid-template-rows 0.15s ease-out;\n"])), function (_ref81) {
3951
+ var isOpen = _ref81.isOpen;
3948
3952
  return isOpen ? '1fr' : '0fr';
3949
3953
  });
3950
3954
  var Inner = He.div(_templateObject35 || (_templateObject35 = _taggedTemplateLiteral(["\n overflow: hidden;\n"])));
3951
- var AnimatedContainer = function AnimatedContainer(_ref81) {
3952
- var isOpen = _ref81.isOpen,
3953
- children = _ref81.children;
3955
+ var AnimatedContainer = function AnimatedContainer(_ref82) {
3956
+ var isOpen = _ref82.isOpen,
3957
+ children = _ref82.children;
3954
3958
  return /*#__PURE__*/wn.createElement(Wrapper, {
3955
3959
  isOpen: isOpen
3956
3960
  }, /*#__PURE__*/wn.createElement(Inner, null, children));
3957
3961
  };
3958
- var Container = He.div(_templateObject36 || (_templateObject36 = _taggedTemplateLiteral(["\n height: 4px;\n background-color: ", ";\n border-radius: 3px;\n overflow: hidden;\n"])), function (_ref82) {
3959
- var theme = _ref82.theme;
3962
+ var Container = He.div(_templateObject36 || (_templateObject36 = _taggedTemplateLiteral(["\n height: 4px;\n background-color: ", ";\n border-radius: 3px;\n overflow: hidden;\n"])), function (_ref83) {
3963
+ var theme = _ref83.theme;
3960
3964
  return theme.colors.disabled;
3961
3965
  });
3962
3966
  var loading = Ue(_templateObject37 || (_templateObject37 = _taggedTemplateLiteral(["\n 0% {\n transform: translateX(-100%);\n }\n 100% {\n transform: translateX(-1%);\n }\n"])));
3963
- var Progress = He.div(_templateObject38 || (_templateObject38 = _taggedTemplateLiteral(["\n height: 100%;\n width: 100%;\n background-color: ", ";\n animation: ", " 10s cubic-bezier(0.22, 1, 0.36, 1);\n"])), function (_ref83) {
3964
- var theme = _ref83.theme;
3967
+ var Progress = He.div(_templateObject38 || (_templateObject38 = _taggedTemplateLiteral(["\n height: 100%;\n width: 100%;\n background-color: ", ";\n animation: ", " 10s cubic-bezier(0.22, 1, 0.36, 1);\n"])), function (_ref84) {
3968
+ var theme = _ref84.theme;
3965
3969
  return theme.colors.primary;
3966
3970
  }, loading);
3967
- var LoadingBar = function LoadingBar(_ref84) {
3968
- var isLoading = _ref84.isLoading;
3971
+ var LoadingBar = function LoadingBar(_ref85) {
3972
+ var isLoading = _ref85.isLoading;
3969
3973
  return /*#__PURE__*/wn.createElement(Container, null, isLoading && /*#__PURE__*/wn.createElement(Progress, null));
3970
3974
  };
3971
3975
  var GAP = '8px';
3972
3976
  var WIDTH = '46px';
3973
3977
  var INPUT_HEIGHT = '46px';
3974
- var Digit = He.div(_templateObject39 || (_templateObject39 = _taggedTemplateLiteral(["\n border: 1px solid ", ";\n border-radius: 4px;\n align-items: center;\n display: flex;\n font-size: 18px;\n justify-content: center;\n height: ", ";\n width: ", ";\n background: ", ";\n color: ", ";\n"])), function (_ref85) {
3975
- var disabled = _ref85.disabled,
3976
- theme = _ref85.theme;
3977
- return disabled ? theme.colors.disabled : '#ADBCC5';
3978
- }, INPUT_HEIGHT, WIDTH, function (_ref86) {
3978
+ var Digit = He.div(_templateObject39 || (_templateObject39 = _taggedTemplateLiteral(["\n border: 1px solid ", ";\n border-radius: 4px;\n align-items: center;\n display: flex;\n font-size: 18px;\n justify-content: center;\n height: ", ";\n width: ", ";\n background: ", ";\n color: ", ";\n"])), function (_ref86) {
3979
3979
  var disabled = _ref86.disabled,
3980
3980
  theme = _ref86.theme;
3981
- return disabled ? theme.colors.disabled : theme.inputs.backgroundColor;
3982
- }, function (_ref87) {
3981
+ return disabled ? theme.colors.disabled : '#ADBCC5';
3982
+ }, INPUT_HEIGHT, WIDTH, function (_ref87) {
3983
3983
  var disabled = _ref87.disabled,
3984
3984
  theme = _ref87.theme;
3985
+ return disabled ? theme.colors.disabled : theme.inputs.backgroundColor;
3986
+ }, function (_ref88) {
3987
+ var disabled = _ref88.disabled,
3988
+ theme = _ref88.theme;
3985
3989
  return disabled ? theme.colors.disabledText : theme.inputs.textColor;
3986
3990
  });
3987
3991
  var digitsContainerStyles = {
@@ -4011,20 +4015,20 @@ var invisibleInputStyles = {
4011
4015
  paddingLeft: "calc(0.5 * ".concat(WIDTH, ")"),
4012
4016
  zIndex: 10
4013
4017
  };
4014
- var DigitAtIndex = function DigitAtIndex(_ref88) {
4015
- var index = _ref88.index,
4016
- disabled = _ref88.disabled,
4017
- otp = _ref88.otp;
4018
+ var DigitAtIndex = function DigitAtIndex(_ref89) {
4019
+ var index = _ref89.index,
4020
+ disabled = _ref89.disabled,
4021
+ otp = _ref89.otp;
4018
4022
  var fill = otp ? otp[index] : '';
4019
4023
  return /*#__PURE__*/wn.createElement(Digit, {
4020
4024
  disabled: disabled,
4021
4025
  "data-testid": "otp-".concat(index)
4022
4026
  }, fill);
4023
4027
  };
4024
- var OTPInput = function OTPInput(_ref89) {
4025
- var otp = _ref89.otp,
4026
- setOtp = _ref89.setOtp,
4027
- disabled = _ref89.disabled;
4028
+ var OTPInput = function OTPInput(_ref90) {
4029
+ var otp = _ref90.otp,
4030
+ setOtp = _ref90.setOtp,
4031
+ disabled = _ref90.disabled;
4028
4032
  var onPasscodeChange = function onPasscodeChange(e) {
4029
4033
  if (!/^\d*$/.test(e.target.value)) {
4030
4034
  return;
@@ -4056,10 +4060,10 @@ var OTPInput = function OTPInput(_ref89) {
4056
4060
  })));
4057
4061
  };
4058
4062
  var OTP_CODE_LENGTH = 6;
4059
- var OTPControl = function OTPControl(_ref90) {
4060
- var isSubmitting = _ref90.isSubmitting,
4061
- onSubmit = _ref90.onSubmit,
4062
- errorMessage = _ref90.errorMessage;
4063
+ var OTPControl = function OTPControl(_ref91) {
4064
+ var isSubmitting = _ref91.isSubmitting,
4065
+ onSubmit = _ref91.onSubmit,
4066
+ errorMessage = _ref91.errorMessage;
4063
4067
  var _h$25 = h$2(''),
4064
4068
  _h$26 = _slicedToArray(_h$25, 2),
4065
4069
  otp = _h$26[0],
@@ -4092,13 +4096,13 @@ var OTPControl = function OTPControl(_ref90) {
4092
4096
  errorMessage: errorMessage !== null && errorMessage !== void 0 ? errorMessage : ''
4093
4097
  }));
4094
4098
  };
4095
- var OTPEntry = function OTPEntry(_ref91) {
4096
- var header = _ref91.header,
4097
- helperContent = _ref91.helperContent,
4098
- instruction = _ref91.instruction,
4099
- isSubmitting = _ref91.isSubmitting,
4100
- onSubmit = _ref91.onSubmit,
4101
- errorMessage = _ref91.errorMessage;
4099
+ var OTPEntry = function OTPEntry(_ref92) {
4100
+ var header = _ref92.header,
4101
+ helperContent = _ref92.helperContent,
4102
+ instruction = _ref92.instruction,
4103
+ isSubmitting = _ref92.isSubmitting,
4104
+ onSubmit = _ref92.onSubmit,
4105
+ errorMessage = _ref92.errorMessage;
4102
4106
  return /*#__PURE__*/wn.createElement(Flex, {
4103
4107
  direction: "column",
4104
4108
  gap: 24
@@ -4117,9 +4121,9 @@ var getSecondsRemaining = function getSecondsRemaining(expiration) {
4117
4121
  var now = new Date();
4118
4122
  return Math.ceil((expiration.getTime() - now.getTime()) / 1000);
4119
4123
  };
4120
- var ExpirationMessage = function ExpirationMessage(_ref92) {
4121
- var expiration = _ref92.expiration,
4122
- resendOTP = _ref92.resendOTP;
4124
+ var ExpirationMessage = function ExpirationMessage(_ref93) {
4125
+ var expiration = _ref93.expiration,
4126
+ resendOTP = _ref93.resendOTP;
4123
4127
  var _h$27 = h$2(function () {
4124
4128
  return getSecondsRemaining(expiration);
4125
4129
  }),
@@ -4147,13 +4151,13 @@ var ExpirationMessage = function ExpirationMessage(_ref92) {
4147
4151
  onClick: resendOTP
4148
4152
  }, "Resend code"));
4149
4153
  };
4150
- var SentOTPEntry = function SentOTPEntry(_ref93) {
4151
- var expiration = _ref93.expiration,
4152
- formattedDestination = _ref93.formattedDestination,
4153
- isSubmitting = _ref93.isSubmitting,
4154
- onSubmit = _ref93.onSubmit,
4155
- errorMessage = _ref93.errorMessage,
4156
- resendOTP = _ref93.resendOTP;
4154
+ var SentOTPEntry = function SentOTPEntry(_ref94) {
4155
+ var expiration = _ref94.expiration,
4156
+ formattedDestination = _ref94.formattedDestination,
4157
+ isSubmitting = _ref94.isSubmitting,
4158
+ onSubmit = _ref94.onSubmit,
4159
+ errorMessage = _ref94.errorMessage,
4160
+ resendOTP = _ref94.resendOTP;
4157
4161
  return /*#__PURE__*/wn.createElement(OTPEntry, {
4158
4162
  header: "Enter passcode",
4159
4163
  helperContent: /*#__PURE__*/wn.createElement(ExpirationMessage, {
@@ -4186,10 +4190,10 @@ var EmailOTPEntryScreen = function EmailOTPEntryScreen() {
4186
4190
  resetSendDiscovery = _useEmailOtpDiscovery3.reset;
4187
4191
  var isSending = isSendingDiscovery || isSendingOtp;
4188
4192
  var sendError = sendDiscoveryError || sendOtpError;
4189
- var _useMutate5 = useMutate('stytch.otps.email.discovery.authenticate', function (_, _ref94) {
4190
- var _ref94$arg = _ref94.arg,
4191
- otp = _ref94$arg.otp,
4192
- email = _ref94$arg.email;
4193
+ var _useMutate5 = useMutate('stytch.otps.email.discovery.authenticate', function (_, _ref95) {
4194
+ var _ref95$arg = _ref95.arg,
4195
+ otp = _ref95$arg.otp,
4196
+ email = _ref95$arg.email;
4193
4197
  return stytchClient.otps.email.discovery.authenticate({
4194
4198
  code: otp,
4195
4199
  email_address: email
@@ -4203,12 +4207,12 @@ var EmailOTPEntryScreen = function EmailOTPEntryScreen() {
4203
4207
  isDiscoveryAuthenticating = _useMutate5.isMutating,
4204
4208
  discoveryAuthenticateError = _useMutate5.error,
4205
4209
  resetDiscoveryAuthenticate = _useMutate5.reset;
4206
- var _useMutate6 = useMutate('stytch.otps.email.authenticate', function (_, _ref95) {
4207
- var _ref95$arg = _ref95.arg,
4208
- otp = _ref95$arg.otp,
4209
- emailAddress = _ref95$arg.emailAddress,
4210
- organizationId = _ref95$arg.organizationId,
4211
- sessionDurationMinutes = _ref95$arg.sessionDurationMinutes;
4210
+ var _useMutate6 = useMutate('stytch.otps.email.authenticate', function (_, _ref96) {
4211
+ var _ref96$arg = _ref96.arg,
4212
+ otp = _ref96$arg.otp,
4213
+ emailAddress = _ref96$arg.emailAddress,
4214
+ organizationId = _ref96$arg.organizationId,
4215
+ sessionDurationMinutes = _ref96$arg.sessionDurationMinutes;
4212
4216
  return stytchClient.otps.email.authenticate({
4213
4217
  code: otp,
4214
4218
  email_address: emailAddress,
@@ -4334,9 +4338,9 @@ var MFAEnrollmentSelectionScreen = function MFAEnrollmentSelectionScreen() {
4334
4338
  size: "header"
4335
4339
  }, "Set up Multi-Factor Authentication"), /*#__PURE__*/wn.createElement(Text, null, "Your organization requires an additional form of verification to make your account more secure."), /*#__PURE__*/wn.createElement(Flex, {
4336
4340
  direction: "column"
4337
- }, displayOptions.map(function (_ref96) {
4338
- var option = _ref96.option,
4339
- label = _ref96.label;
4341
+ }, displayOptions.map(function (_ref97) {
4342
+ var option = _ref97.option,
4343
+ label = _ref97.label;
4340
4344
  return /*#__PURE__*/wn.createElement(MenuButton, {
4341
4345
  key: option,
4342
4346
  onClick: function onClick() {
@@ -4361,10 +4365,10 @@ var inboxLinks = function inboxLinks(emailDomain) {
4361
4365
  var Link = He.a(_templateObject40 || (_templateObject40 = _taggedTemplateLiteral(["\n all: unset;\n cursor: pointer;\n\n &:hover {\n text-decoration: underline;\n text-decoration-color: ", ";\n }\n"])), function (props) {
4362
4366
  return props.theme.colors.primary;
4363
4367
  });
4364
- var EmailProviderLink = function EmailProviderLink(_ref97) {
4365
- var label = _ref97.label,
4366
- href = _ref97.href,
4367
- Icon = _ref97.Icon;
4368
+ var EmailProviderLink = function EmailProviderLink(_ref98) {
4369
+ var label = _ref98.label,
4370
+ href = _ref98.href,
4371
+ Icon = _ref98.Icon;
4368
4372
  return /*#__PURE__*/wn.createElement(Flex, {
4369
4373
  gap: 4
4370
4374
  }, Icon, /*#__PURE__*/wn.createElement(Link, {
@@ -4373,10 +4377,10 @@ var EmailProviderLink = function EmailProviderLink(_ref97) {
4373
4377
  rel: "noopener noreferrer"
4374
4378
  }, /*#__PURE__*/wn.createElement(Text, null, "Open in ", label)));
4375
4379
  };
4376
- var VerifyEmailConfirmation = function VerifyEmailConfirmation(_ref98) {
4377
- var emailDomain = _ref98.emailDomain,
4378
- reset = _ref98.reset,
4379
- email = _ref98.email;
4380
+ var VerifyEmailConfirmation = function VerifyEmailConfirmation(_ref99) {
4381
+ var emailDomain = _ref99.emailDomain,
4382
+ reset = _ref99.reset,
4383
+ email = _ref99.email;
4380
4384
  var _inboxLinks = inboxLinks(emailDomain),
4381
4385
  GMAIL = _inboxLinks.GMAIL,
4382
4386
  OUTLOOK = _inboxLinks.OUTLOOK;
@@ -4431,8 +4435,8 @@ var useEmailDomain = function useEmailDomain() {
4431
4435
  emailDomains = _h$30[0],
4432
4436
  setEmailDomains = _h$30[1];
4433
4437
  p$1(function () {
4434
- readB2BInternals(stytch).bootstrap.getAsync().then(function (_ref99) {
4435
- var emailDomains = _ref99.emailDomains;
4438
+ readB2BInternals(stytch).bootstrap.getAsync().then(function (_ref100) {
4439
+ var emailDomains = _ref100.emailDomains;
4436
4440
  setEmailDomains(emailDomains);
4437
4441
  });
4438
4442
  }, [stytch]);
@@ -4469,8 +4473,8 @@ var PasswordResetConfirmation = function PasswordResetConfirmation() {
4469
4473
  var Block = He.div(_templateObject41 || (_templateObject41 = _taggedTemplateLiteral(["\n height: 4px;\n width: 25%;\n background-color: ", ";\n"])), function (props) {
4470
4474
  return props.$bgColor;
4471
4475
  });
4472
- var PasswordStrengthCheck = function PasswordStrengthCheck(_ref100) {
4473
- var score = _ref100.score;
4476
+ var PasswordStrengthCheck = function PasswordStrengthCheck(_ref101) {
4477
+ var score = _ref101.score;
4474
4478
  var blocks = [];
4475
4479
  switch (score) {
4476
4480
  case 0:
@@ -4638,13 +4642,13 @@ var PasswordResetForm = function PasswordResetForm() {
4638
4642
  return debounce(function (password) {
4639
4643
  return stytchClient.passwords.strengthCheck({
4640
4644
  password: password
4641
- }).then(function (_ref101) {
4642
- var score = _ref101.score,
4643
- valid_password = _ref101.valid_password,
4644
- zxcvbn_feedback = _ref101.zxcvbn_feedback,
4645
- luds_feedback = _ref101.luds_feedback,
4646
- strength_policy = _ref101.strength_policy,
4647
- breached_password = _ref101.breached_password;
4645
+ }).then(function (_ref102) {
4646
+ var score = _ref102.score,
4647
+ valid_password = _ref102.valid_password,
4648
+ zxcvbn_feedback = _ref102.zxcvbn_feedback,
4649
+ luds_feedback = _ref102.luds_feedback,
4650
+ strength_policy = _ref102.strength_policy,
4651
+ breached_password = _ref102.breached_password;
4648
4652
  setStrengthPolicy(strength_policy);
4649
4653
  setInvalidPassword(!valid_password);
4650
4654
  if (strength_policy === 'zxcvbn') {
@@ -5161,12 +5165,12 @@ var Z = function Z(e, t) {
5161
5165
  }, [o]),
5162
5166
  a = T$1(function (r, c) {
5163
5167
  var _g$filter;
5164
- var _ref103 = c || {},
5165
- _ref103$reverseOrder = _ref103.reverseOrder,
5166
- i = _ref103$reverseOrder === void 0 ? !1 : _ref103$reverseOrder,
5167
- _ref103$gutter = _ref103.gutter,
5168
- d = _ref103$gutter === void 0 ? 8 : _ref103$gutter,
5169
- p = _ref103.defaultPosition,
5168
+ var _ref104 = c || {},
5169
+ _ref104$reverseOrder = _ref104.reverseOrder,
5170
+ i = _ref104$reverseOrder === void 0 ? !1 : _ref104$reverseOrder,
5171
+ _ref104$gutter = _ref104.gutter,
5172
+ d = _ref104$gutter === void 0 ? 8 : _ref104$gutter,
5173
+ p = _ref104.defaultPosition,
5170
5174
  g = t.filter(function (m) {
5171
5175
  return (m.position || p) === (r.position || p) && m.height;
5172
5176
  }),
@@ -5217,8 +5221,8 @@ var ue = j("div")(_templateObject52 || (_templateObject52 = _taggedTemplateLiter
5217
5221
  le = j("div")(_templateObject53 || (_templateObject53 = _taggedTemplateLiteral(["\n position: relative;\n display: flex;\n justify-content: center;\n align-items: center;\n min-width: 20px;\n min-height: 20px;\n"]))),
5218
5222
  Te = h$1(_templateObject54 || (_templateObject54 = _taggedTemplateLiteral(["\nfrom {\n transform: scale(0.6);\n opacity: 0.4;\n}\nto {\n transform: scale(1);\n opacity: 1;\n}"]))),
5219
5223
  fe = j("div")(_templateObject55 || (_templateObject55 = _taggedTemplateLiteral(["\n position: relative;\n transform: scale(0.6);\n opacity: 0.4;\n min-width: 20px;\n animation: ", " 0.3s 0.12s cubic-bezier(0.175, 0.885, 0.32, 1.275)\n forwards;\n"])), Te),
5220
- M = function M(_ref104) {
5221
- var e = _ref104.toast;
5224
+ M = function M(_ref105) {
5225
+ var e = _ref105.toast;
5222
5226
  var t = e.icon,
5223
5227
  o = e.type,
5224
5228
  s = e.iconTheme;
@@ -5236,19 +5240,19 @@ var ye = function ye(e) {
5236
5240
  Se = j("div")(_templateObject57 || (_templateObject57 = _taggedTemplateLiteral(["\n display: flex;\n justify-content: center;\n margin: 4px 10px;\n color: inherit;\n flex: 1 1 auto;\n white-space: pre-line;\n"]))),
5237
5241
  Ae = function Ae(e, t) {
5238
5242
  var s = e.includes("top") ? 1 : -1,
5239
- _ref105 = b() ? [he, xe] : [ye(s), ge(s)],
5240
- _ref106 = _slicedToArray(_ref105, 2),
5241
- a = _ref106[0],
5242
- r = _ref106[1];
5243
+ _ref106 = b() ? [he, xe] : [ye(s), ge(s)],
5244
+ _ref107 = _slicedToArray(_ref106, 2),
5245
+ a = _ref107[0],
5246
+ r = _ref107[1];
5243
5247
  return {
5244
5248
  animation: t ? "".concat(h$1(a), " 0.35s cubic-bezier(.21,1.02,.73,1) forwards") : "".concat(h$1(r), " 0.4s forwards cubic-bezier(.06,.71,.55,1)")
5245
5249
  };
5246
5250
  },
5247
- F = w$1(function (_ref107) {
5248
- var e = _ref107.toast,
5249
- t = _ref107.position,
5250
- o = _ref107.style,
5251
- s = _ref107.children;
5251
+ F = w$1(function (_ref108) {
5252
+ var e = _ref108.toast,
5253
+ t = _ref108.position,
5254
+ o = _ref108.style,
5255
+ s = _ref108.children;
5252
5256
  var a = e.height ? Ae(e.position || t || "top-center", e.visible) : {
5253
5257
  opacity: 0
5254
5258
  },
@@ -5265,12 +5269,12 @@ var ye = function ye(e) {
5265
5269
  }) : y(g$1, null, r, c));
5266
5270
  });
5267
5271
  m(y);
5268
- var Ee = function Ee(_ref108) {
5269
- var e = _ref108.id,
5270
- t = _ref108.className,
5271
- o = _ref108.style,
5272
- s = _ref108.onHeightUpdate,
5273
- a = _ref108.children;
5272
+ var Ee = function Ee(_ref109) {
5273
+ var e = _ref109.id,
5274
+ t = _ref109.className,
5275
+ o = _ref109.style,
5276
+ s = _ref109.onHeightUpdate,
5277
+ a = _ref109.children;
5274
5278
  var r = T$1(function (c) {
5275
5279
  if (c) {
5276
5280
  var _i2 = function _i2() {
@@ -5313,15 +5317,15 @@ var Ee = function Ee(_ref108) {
5313
5317
  },
5314
5318
  ve = u$1(_templateObject58 || (_templateObject58 = _taggedTemplateLiteral(["\n z-index: 9999;\n > * {\n pointer-events: auto;\n }\n"]))),
5315
5319
  O = 16,
5316
- Ie = function Ie(_ref109) {
5317
- var e = _ref109.reverseOrder,
5318
- _ref109$position = _ref109.position,
5319
- t = _ref109$position === void 0 ? "top-center" : _ref109$position,
5320
- o = _ref109.toastOptions,
5321
- s = _ref109.gutter,
5322
- a = _ref109.children,
5323
- r = _ref109.containerStyle,
5324
- c = _ref109.containerClassName;
5320
+ Ie = function Ie(_ref110) {
5321
+ var e = _ref110.reverseOrder,
5322
+ _ref110$position = _ref110.position,
5323
+ t = _ref110$position === void 0 ? "top-center" : _ref110$position,
5324
+ o = _ref110.toastOptions,
5325
+ s = _ref110.gutter,
5326
+ a = _ref110.children,
5327
+ r = _ref110.containerStyle,
5328
+ c = _ref110.containerClassName;
5325
5329
  var _D = D(o),
5326
5330
  i = _D.toasts,
5327
5331
  d = _D.handlers;
@@ -5464,8 +5468,8 @@ var PasswordsForgotForm = function PasswordsForgotForm() {
5464
5468
  setErrorMessage('');
5465
5469
  setIsSubmitting(true);
5466
5470
  if (organization) {
5467
- readB2BInternals(stytch).searchManager.searchMember(email, organization.organization_id).then(function (_ref110) {
5468
- var member = _ref110.member;
5471
+ readB2BInternals(stytch).searchManager.searchMember(email, organization.organization_id).then(function (_ref111) {
5472
+ var member = _ref111.member;
5469
5473
  var _a, _b, _c, _d;
5470
5474
  if (!(member === null || member === void 0 ? void 0 : member.member_password_id)) {
5471
5475
  handleNonMemberReset();
@@ -5578,12 +5582,12 @@ var RecoveryCodeEntryScreen = function RecoveryCodeEntryScreen() {
5578
5582
  _h$58 = _slicedToArray(_h$57, 2),
5579
5583
  recoveryCode = _h$58[0],
5580
5584
  setRecoveryCode = _h$58[1];
5581
- var _useMutate7 = useMutate('stytch.recoveryCodes.recover', function (_, _ref111) {
5582
- var _ref111$arg = _ref111.arg,
5583
- recoveryCode = _ref111$arg.recoveryCode,
5584
- memberId = _ref111$arg.memberId,
5585
- organizationId = _ref111$arg.organizationId,
5586
- sessionDurationMinutes = _ref111$arg.sessionDurationMinutes;
5585
+ var _useMutate7 = useMutate('stytch.recoveryCodes.recover', function (_, _ref112) {
5586
+ var _ref112$arg = _ref112.arg,
5587
+ recoveryCode = _ref112$arg.recoveryCode,
5588
+ memberId = _ref112$arg.memberId,
5589
+ organizationId = _ref112$arg.organizationId,
5590
+ sessionDurationMinutes = _ref112$arg.sessionDurationMinutes;
5587
5591
  return stytchClient.recoveryCodes.recover({
5588
5592
  recovery_code: recoveryCode,
5589
5593
  member_id: memberId,
@@ -5739,9 +5743,9 @@ var Select = He.select(_templateObject61 || (_templateObject61 = _taggedTemplate
5739
5743
  }, function (props) {
5740
5744
  return props.theme.typography.fontFamily;
5741
5745
  });
5742
- var CountrySelector = function CountrySelector(_ref112) {
5743
- var country = _ref112.country,
5744
- setCountry = _ref112.setCountry;
5746
+ var CountrySelector = function CountrySelector(_ref113) {
5747
+ var country = _ref113.country,
5748
+ setCountry = _ref113.setCountry;
5745
5749
  var countryFormatter = new Intl.DisplayNames(['en'], {
5746
5750
  type: 'region'
5747
5751
  });
@@ -5752,20 +5756,20 @@ var CountrySelector = function CountrySelector(_ref112) {
5752
5756
  onChange: function onChange(e) {
5753
5757
  setCountry(e.target.value);
5754
5758
  }
5755
- }, Object.entries(COUNTRIES_LIST).map(function (_ref113) {
5756
- var _ref114 = _slicedToArray(_ref113, 2),
5757
- countryCode = _ref114[0],
5758
- countryNumber = _ref114[1];
5759
+ }, Object.entries(COUNTRIES_LIST).map(function (_ref114) {
5760
+ var _ref115 = _slicedToArray(_ref114, 2),
5761
+ countryCode = _ref115[0],
5762
+ countryNumber = _ref115[1];
5759
5763
  return /*#__PURE__*/wn.createElement("option", {
5760
5764
  key: countryCode,
5761
5765
  value: countryCode
5762
5766
  }, countryCode !== country ? "+".concat(countryNumber, " ").concat(countryFormatter.of(countryCode)) : "+".concat(countryNumber));
5763
5767
  }));
5764
5768
  };
5765
- var formatNumber = function formatNumber(_ref115) {
5766
- var parsePhoneNumber = _ref115.parsePhoneNumber,
5767
- phoneNumber = _ref115.phoneNumber,
5768
- country = _ref115.country;
5769
+ var formatNumber = function formatNumber(_ref116) {
5770
+ var parsePhoneNumber = _ref116.parsePhoneNumber,
5771
+ phoneNumber = _ref116.phoneNumber,
5772
+ country = _ref116.country;
5769
5773
  return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee10() {
5770
5774
  var parsedPhoneNumber;
5771
5775
  return _regeneratorRuntime().wrap(function _callee10$(_context10) {
@@ -5798,10 +5802,10 @@ var formatNumber = function formatNumber(_ref115) {
5798
5802
  }, _callee10, null, [[0, 9]]);
5799
5803
  }));
5800
5804
  };
5801
- var formatNumberToIncludeCountryCode = function formatNumberToIncludeCountryCode(_ref116) {
5802
- var parsePhoneNumber = _ref116.parsePhoneNumber,
5803
- phoneNumber = _ref116.phoneNumber,
5804
- country = _ref116.country;
5805
+ var formatNumberToIncludeCountryCode = function formatNumberToIncludeCountryCode(_ref117) {
5806
+ var parsePhoneNumber = _ref117.parsePhoneNumber,
5807
+ phoneNumber = _ref117.phoneNumber,
5808
+ country = _ref117.country;
5805
5809
  return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {
5806
5810
  var code, fallbackNumber, fallback, parsedPhoneNumber;
5807
5811
  return _regeneratorRuntime().wrap(function _callee11$(_context11) {
@@ -5841,13 +5845,13 @@ var formatNumberToIncludeCountryCode = function formatNumberToIncludeCountryCode
5841
5845
  }));
5842
5846
  };
5843
5847
  var PhoneStyledInput = He(Input)(_templateObject62 || (_templateObject62 = _taggedTemplateLiteral(["\n flex-grow: 1;\n min-width: 100px;\n"])));
5844
- var PhoneInput = function PhoneInput(_ref117) {
5845
- var phone = _ref117.phone,
5846
- setPhone = _ref117.setPhone,
5847
- country = _ref117.country,
5848
- setCountry = _ref117.setCountry,
5849
- parsePhoneNumber = _ref117.parsePhoneNumber,
5850
- hasPasskeys = _ref117.hasPasskeys;
5848
+ var PhoneInput = function PhoneInput(_ref118) {
5849
+ var phone = _ref118.phone,
5850
+ setPhone = _ref118.setPhone,
5851
+ country = _ref118.country,
5852
+ setCountry = _ref118.setCountry,
5853
+ parsePhoneNumber = _ref118.parsePhoneNumber,
5854
+ hasPasskeys = _ref118.hasPasskeys;
5851
5855
  return /*#__PURE__*/wn.createElement(Flex, {
5852
5856
  direction: "row",
5853
5857
  wrap: "nowrap",
@@ -5913,8 +5917,8 @@ var InvalidPhoneNumberError = /*#__PURE__*/function (_StytchSDKError) {
5913
5917
  }
5914
5918
  return _createClass(InvalidPhoneNumberError);
5915
5919
  }(StytchSDKError);
5916
- var findErrorTypeFrom = function findErrorTypeFrom(_ref118) {
5917
- var error = _ref118.error;
5920
+ var findErrorTypeFrom = function findErrorTypeFrom(_ref119) {
5921
+ var error = _ref119.error;
5918
5922
  var errorType = extractErrorType(error);
5919
5923
  return !!errorType && errorType in supportedErrorTypeMap ? errorType : 'default';
5920
5924
  };
@@ -5954,8 +5958,8 @@ var SMSOTPEnrollScreen = function SMSOTPEnrollScreen() {
5954
5958
  regionCode: countryCode
5955
5959
  });
5956
5960
  };
5957
- var _useMutate8 = useMutate('stytch.otps.sms.send', function (_, _ref119) {
5958
- var parsedNumber = _ref119.arg.parsedNumber;
5961
+ var _useMutate8 = useMutate('stytch.otps.sms.send', function (_, _ref120) {
5962
+ var parsedNumber = _ref120.arg.parsedNumber;
5959
5963
  return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee13() {
5960
5964
  return _regeneratorRuntime().wrap(function _callee13$(_context13) {
5961
5965
  while (1) switch (_context13.prev = _context13.next) {
@@ -6078,10 +6082,10 @@ var SMSOTPEntryScreen = function SMSOTPEntryScreen() {
6078
6082
  memberPhoneNumber = _state$mfa$primaryInf3.memberPhoneNumber,
6079
6083
  organizationId = _state$mfa$primaryInf3.organizationId,
6080
6084
  organizationMfaOptionsSupported = _state$mfa$primaryInf3.organizationMfaOptionsSupported;
6081
- var _useMutate9 = useMutate('stytch.otps.sms.send', function (_, _ref120) {
6082
- var _ref120$arg = _ref120.arg,
6083
- memberId = _ref120$arg.memberId,
6084
- organizationId = _ref120$arg.organizationId;
6085
+ var _useMutate9 = useMutate('stytch.otps.sms.send', function (_, _ref121) {
6086
+ var _ref121$arg = _ref121.arg,
6087
+ memberId = _ref121$arg.memberId,
6088
+ organizationId = _ref121$arg.organizationId;
6085
6089
  dispatch({
6086
6090
  type: 'sms_otp/send'
6087
6091
  });
@@ -6110,12 +6114,12 @@ var SMSOTPEntryScreen = function SMSOTPEntryScreen() {
6110
6114
  sendSms = _useMutate9.trigger,
6111
6115
  isSending = _useMutate9.isMutating,
6112
6116
  sendError = _useMutate9.error;
6113
- var _useMutate10 = useMutate('stytch.otps.sms.authenticate', function (_, _ref121) {
6114
- var _ref121$arg = _ref121.arg,
6115
- otp = _ref121$arg.otp,
6116
- memberId = _ref121$arg.memberId,
6117
- organizationId = _ref121$arg.organizationId,
6118
- sessionDurationMinutes = _ref121$arg.sessionDurationMinutes;
6117
+ var _useMutate10 = useMutate('stytch.otps.sms.authenticate', function (_, _ref122) {
6118
+ var _ref122$arg = _ref122.arg,
6119
+ otp = _ref122$arg.otp,
6120
+ memberId = _ref122$arg.memberId,
6121
+ organizationId = _ref122$arg.organizationId,
6122
+ sessionDurationMinutes = _ref122$arg.sessionDurationMinutes;
6119
6123
  return stytchClient.otps.sms.authenticate({
6120
6124
  code: otp,
6121
6125
  member_id: memberId,
@@ -6250,8 +6254,8 @@ var useSsoDiscoveryConnection = function useSsoDiscoveryConnection() {
6250
6254
  var stytch = useStytch();
6251
6255
  var _readB2BInternals3 = readB2BInternals(stytch),
6252
6256
  networkClient = _readB2BInternals3.networkClient;
6253
- return useMutate('internal.stytch.sso.discovery.connection', function (_key, _ref122) {
6254
- var emailAddress = _ref122.arg.emailAddress;
6257
+ return useMutate('internal.stytch.sso.discovery.connection', function (_key, _ref123) {
6258
+ var emailAddress = _ref123.arg.emailAddress;
6255
6259
  return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee17() {
6256
6260
  return _regeneratorRuntime().wrap(function _callee17$(_context17) {
6257
6261
  while (1) switch (_context17.prev = _context17.next) {
@@ -6440,8 +6444,8 @@ var SSODiscoveryFallback = function SSODiscoveryFallback() {
6440
6444
  var stytchClient = useStytch();
6441
6445
  var _useConfig5 = useConfig(),
6442
6446
  ssoOptions = _useConfig5.ssoOptions;
6443
- var _useMutate11 = useMutate('stytch.organization.getBySlug', function (_, _ref123) {
6444
- var slug = _ref123.arg.slug;
6447
+ var _useMutate11 = useMutate('stytch.organization.getBySlug', function (_, _ref124) {
6448
+ var slug = _ref124.arg.slug;
6445
6449
  return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee20() {
6446
6450
  return _regeneratorRuntime().wrap(function _callee20$(_context20) {
6447
6451
  while (1) switch (_context20.prev = _context20.next) {
@@ -6665,10 +6669,10 @@ var TOTPEnrollQRScreen = function TOTPEnrollQRScreen() {
6665
6669
  var _state$mfa$primaryInf4 = state.mfa.primaryInfo,
6666
6670
  memberId = _state$mfa$primaryInf4.memberId,
6667
6671
  organizationId = _state$mfa$primaryInf4.organizationId;
6668
- var _useMutate12 = useMutate('stytch.totp.create', function (_, _ref124) {
6669
- var _ref124$arg = _ref124.arg,
6670
- memberId = _ref124$arg.memberId,
6671
- organizationId = _ref124$arg.organizationId;
6672
+ var _useMutate12 = useMutate('stytch.totp.create', function (_, _ref125) {
6673
+ var _ref125$arg = _ref125.arg,
6674
+ memberId = _ref125$arg.memberId,
6675
+ organizationId = _ref125$arg.organizationId;
6672
6676
  dispatch({
6673
6677
  type: 'totp/create'
6674
6678
  });
@@ -6734,11 +6738,11 @@ var TOTPEnrollQRScreen = function TOTPEnrollQRScreen() {
6734
6738
  onClick: handleContinue
6735
6739
  }, "Continue"))) : ( /*#__PURE__*/wn.createElement(LoadingScreen, null)));
6736
6740
  };
6737
- var TOTPEntry = function TOTPEntry(_ref125) {
6738
- var helperContent = _ref125.helperContent,
6739
- isSubmitting = _ref125.isSubmitting,
6740
- onSubmit = _ref125.onSubmit,
6741
- errorMessage = _ref125.errorMessage;
6741
+ var TOTPEntry = function TOTPEntry(_ref126) {
6742
+ var helperContent = _ref126.helperContent,
6743
+ isSubmitting = _ref126.isSubmitting,
6744
+ onSubmit = _ref126.onSubmit,
6745
+ errorMessage = _ref126.errorMessage;
6742
6746
  return /*#__PURE__*/wn.createElement(OTPEntry, {
6743
6747
  header: "Enter verification code",
6744
6748
  instruction: "Enter the 6-digit code from your authenticator app.",
@@ -6762,12 +6766,12 @@ var TOTPEntryScreen = function TOTPEntryScreen() {
6762
6766
  memberId = _state$mfa$primaryInf5.memberId,
6763
6767
  organizationId = _state$mfa$primaryInf5.organizationId,
6764
6768
  organizationMfaOptionsSupported = _state$mfa$primaryInf5.organizationMfaOptionsSupported;
6765
- var _useMutate13 = useMutate('stytch.totp.authenticate', function (_, _ref126) {
6766
- var _ref126$arg = _ref126.arg,
6767
- memberId = _ref126$arg.memberId,
6768
- organizationId = _ref126$arg.organizationId,
6769
- otp = _ref126$arg.otp,
6770
- sessionDurationMinutes = _ref126$arg.sessionDurationMinutes;
6769
+ var _useMutate13 = useMutate('stytch.totp.authenticate', function (_, _ref127) {
6770
+ var _ref127$arg = _ref127.arg,
6771
+ memberId = _ref127$arg.memberId,
6772
+ organizationId = _ref127$arg.organizationId,
6773
+ otp = _ref127$arg.otp,
6774
+ sessionDurationMinutes = _ref127$arg.sessionDurationMinutes;
6771
6775
  return stytchClient.totp.authenticate({
6772
6776
  code: otp,
6773
6777
  member_id: memberId,
@@ -6900,25 +6904,21 @@ var Snackbar = function Snackbar() {
6900
6904
  }
6901
6905
  });
6902
6906
  };
6903
- var OuterContainer = He.div(_templateObject68 || (_templateObject68 = _taggedTemplateLiteral(["\n width: ", ";\n font-family: ", ";\n box-sizing: border-box;\n * {\n box-sizing: content-box;\n }\n background-color: ", ";\n border: ", ";\n border-radius: ", ";\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n border-bottom: ", ";\n"])), function (_ref127) {
6904
- var theme = _ref127.theme;
6905
- return theme.container.width;
6906
- }, function (_ref128) {
6907
+ var OuterContainer = He.div(_templateObject68 || (_templateObject68 = _taggedTemplateLiteral(["\n width: ", ";\n font-family: ", ";\n box-sizing: border-box;\n * {\n box-sizing: content-box;\n }\n background-color: ", ";\n border: ", ";\n border-radius: ", ";\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n border-bottom: ", ";\n"])), function (_ref128) {
6907
6908
  var theme = _ref128.theme;
6908
- return theme.typography.fontFamily;
6909
+ return theme.container.width;
6909
6910
  }, function (_ref129) {
6910
6911
  var theme = _ref129.theme;
6911
- return theme.container.backgroundColor;
6912
+ return theme.typography.fontFamily;
6912
6913
  }, function (_ref130) {
6913
6914
  var theme = _ref130.theme;
6914
- return theme.container.border;
6915
+ return theme.container.backgroundColor;
6915
6916
  }, function (_ref131) {
6916
6917
  var theme = _ref131.theme;
6917
- return theme.container.borderRadius;
6918
+ return theme.container.border;
6918
6919
  }, function (_ref132) {
6919
- var theme = _ref132.theme,
6920
- displayWatermark = _ref132.displayWatermark;
6921
- return displayWatermark ? '0' : theme.container.borderRadius;
6920
+ var theme = _ref132.theme;
6921
+ return theme.container.borderRadius;
6922
6922
  }, function (_ref133) {
6923
6923
  var theme = _ref133.theme,
6924
6924
  displayWatermark = _ref133.displayWatermark;
@@ -6926,37 +6926,41 @@ var OuterContainer = He.div(_templateObject68 || (_templateObject68 = _taggedTem
6926
6926
  }, function (_ref134) {
6927
6927
  var theme = _ref134.theme,
6928
6928
  displayWatermark = _ref134.displayWatermark;
6929
+ return displayWatermark ? '0' : theme.container.borderRadius;
6930
+ }, function (_ref135) {
6931
+ var theme = _ref135.theme,
6932
+ displayWatermark = _ref135.displayWatermark;
6929
6933
  return displayWatermark ? 'none' : theme.container.border;
6930
6934
  });
6931
6935
  var ChildrenContainer = He.div(_templateObject69 || (_templateObject69 = _taggedTemplateLiteral(["\n padding: 24px 32px;\n"])));
6932
- var WatermarkContainer = He.div(_templateObject70 || (_templateObject70 = _taggedTemplateLiteral(["\n box-sizing: border-box;\n width: ", ";\n background-color: ", ";\n border: ", ";\n border-top: none;\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n overflow: hidden;\n"])), function (_ref135) {
6933
- var theme = _ref135.theme;
6934
- return theme.container.width;
6935
- }, function (_ref136) {
6936
+ var WatermarkContainer = He.div(_templateObject70 || (_templateObject70 = _taggedTemplateLiteral(["\n box-sizing: border-box;\n width: ", ";\n background-color: ", ";\n border: ", ";\n border-top: none;\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n overflow: hidden;\n"])), function (_ref136) {
6936
6937
  var theme = _ref136.theme;
6937
- return theme.container.backgroundColor;
6938
+ return theme.container.width;
6938
6939
  }, function (_ref137) {
6939
6940
  var theme = _ref137.theme;
6940
- return theme.container.border;
6941
+ return theme.container.backgroundColor;
6941
6942
  }, function (_ref138) {
6942
6943
  var theme = _ref138.theme;
6943
- return theme.container.borderRadius;
6944
+ return theme.container.border;
6944
6945
  }, function (_ref139) {
6945
6946
  var theme = _ref139.theme;
6946
6947
  return theme.container.borderRadius;
6948
+ }, function (_ref140) {
6949
+ var theme = _ref140.theme;
6950
+ return theme.container.borderRadius;
6947
6951
  });
6948
6952
  var InnerContainer = He.div(_templateObject71 || (_templateObject71 = _taggedTemplateLiteral(["\n background-color: #fff;\n display: flex;\n justify-content: center;\n align-items: center;\n opacity: 0.5;\n"])));
6949
6953
  var Image = He.img(_templateObject72 || (_templateObject72 = _taggedTemplateLiteral(["\n width: 150px;\n"])));
6950
6954
  var POWERED_BY_STYTCH_IMG_URL = 'https://public-assets.stytch.com/powered_by_stytch_logo_dark.svg';
6951
- var LoadingContainer = function LoadingContainer(_ref140) {
6952
- var children = _ref140.children;
6955
+ var LoadingContainer = function LoadingContainer(_ref141) {
6956
+ var children = _ref141.children;
6953
6957
  return /*#__PURE__*/wn.createElement(OuterContainer, {
6954
6958
  displayWatermark: false
6955
6959
  }, /*#__PURE__*/wn.createElement(ChildrenContainer, null, children));
6956
6960
  };
6957
- var MainContainer = function MainContainer(_ref141) {
6958
- var children = _ref141.children,
6959
- displayWatermark = _ref141.displayWatermark;
6961
+ var MainContainer = function MainContainer(_ref142) {
6962
+ var children = _ref142.children,
6963
+ displayWatermark = _ref142.displayWatermark;
6960
6964
  return /*#__PURE__*/wn.createElement(wn.Fragment, null, /*#__PURE__*/wn.createElement(OuterContainer, {
6961
6965
  displayWatermark: displayWatermark
6962
6966
  }, /*#__PURE__*/wn.createElement(ChildrenContainer, null, children, /*#__PURE__*/wn.createElement(Snackbar, null))), displayWatermark && ( /*#__PURE__*/wn.createElement(WatermarkContainer, null, /*#__PURE__*/wn.createElement(InnerContainer, null, /*#__PURE__*/wn.createElement("a", {
@@ -7022,10 +7026,10 @@ var createBuiltinScopeDescriptions = function createBuiltinScopeDescriptions(sco
7022
7026
  }
7023
7027
  return descriptions;
7024
7028
  };
7025
- var createProfileScopeDescription = function createProfileScopeDescription(_ref142) {
7026
- var containsProfile = _ref142.containsProfile,
7027
- containsEmail = _ref142.containsEmail,
7028
- containsPhoneNumber = _ref142.containsPhoneNumber;
7029
+ var createProfileScopeDescription = function createProfileScopeDescription(_ref143) {
7030
+ var containsProfile = _ref143.containsProfile,
7031
+ containsEmail = _ref143.containsEmail,
7032
+ containsPhoneNumber = _ref143.containsPhoneNumber;
7029
7033
  var details = [];
7030
7034
  if (containsProfile) {
7031
7035
  details.push('Your name, profile picture, and language preferences');
@@ -7069,55 +7073,93 @@ var createCustomScopeDescriptions = function createCustomScopeDescriptions(scope
7069
7073
  }
7070
7074
  return descriptions;
7071
7075
  };
7072
- var fallbackConsentManifestGenerator = function fallbackConsentManifestGenerator(_ref143) {
7073
- var scopes = _ref143.scopes,
7074
- clientName = _ref143.clientName,
7075
- rbacPolicy = _ref143.rbacPolicy;
7076
+ var fallbackConsentManifestGenerator = function fallbackConsentManifestGenerator(_ref144) {
7077
+ var scopes = _ref144.scopes,
7078
+ clientName = _ref144.clientName,
7079
+ rbacPolicy = _ref144.rbacPolicy;
7076
7080
  return [{
7077
7081
  header: "".concat(clientName, " is requesting to:"),
7078
7082
  items: createBuiltinScopeDescriptions(scopes).concat(createCustomScopeDescriptions(scopes, rbacPolicy))
7079
7083
  }];
7080
7084
  };
7081
- var parseOAuthAuthorizeParams = function parseOAuthAuthorizeParams(searchParams) {
7082
- var params = new URLSearchParams(searchParams);
7083
- var parsedParams = {
7085
+ var parseOAuthAuthorizeParams = function parseOAuthAuthorizeParams(params) {
7086
+ var authorizeParams = {
7084
7087
  client_id: '',
7085
7088
  redirect_uri: '',
7086
7089
  response_type: '',
7087
7090
  scope: ''
7088
7091
  };
7089
- var missingField = function missingField(field) {
7090
- return {
7091
- error: "Required parameter is missing: ".concat(field, ". Please reach out to the application developer."),
7092
- params: parsedParams
7093
- };
7094
- };
7095
7092
  var requiredFields = ['client_id', 'redirect_uri', 'response_type', 'scope'];
7096
7093
  for (var _i3 = 0, _requiredFields = requiredFields; _i3 < _requiredFields.length; _i3++) {
7097
7094
  var field = _requiredFields[_i3];
7098
7095
  var value = params.get(field);
7099
7096
  if (!value) {
7100
- return missingField(field);
7097
+ return {
7098
+ error: "Required parameter is missing: ".concat(field, ". Please reach out to the application developer."),
7099
+ result: authorizeParams
7100
+ };
7101
7101
  }
7102
- parsedParams[field] = value;
7102
+ authorizeParams[field] = value;
7103
7103
  }
7104
7104
  var optionalFields = ['code_challenge', 'state', 'nonce'];
7105
7105
  for (var _i4 = 0, _optionalFields = optionalFields; _i4 < _optionalFields.length; _i4++) {
7106
7106
  var _field = _optionalFields[_i4];
7107
7107
  var _value = params.get(_field);
7108
- if (!_value) {
7109
- continue;
7108
+ if (_value) {
7109
+ authorizeParams[_field] = _value;
7110
7110
  }
7111
- parsedParams[_field] = _value;
7112
7111
  }
7113
7112
  return {
7114
7113
  error: null,
7115
- params: parsedParams
7114
+ result: authorizeParams
7116
7115
  };
7117
7116
  };
7118
- var initialState = function initialState(_ref144) {
7119
- var error = _ref144.error,
7120
- params = _ref144.params;
7117
+ var parseOAuthLogoutParams = function parseOAuthLogoutParams(params) {
7118
+ var logoutParams = {
7119
+ client_id: '',
7120
+ post_logout_redirect_uri: ''
7121
+ };
7122
+ var requiredFields = ['client_id', 'post_logout_redirect_uri'];
7123
+ for (var _i5 = 0, _requiredFields2 = requiredFields; _i5 < _requiredFields2.length; _i5++) {
7124
+ var field = _requiredFields2[_i5];
7125
+ var value = params.get(field);
7126
+ if (!value) {
7127
+ return {
7128
+ error: "Required parameter is missing: ".concat(field, ". Please reach out to the application developer."),
7129
+ result: logoutParams
7130
+ };
7131
+ }
7132
+ logoutParams[field] = value;
7133
+ }
7134
+ logoutParams.id_token_hint = params.get('id_token_hint') || undefined;
7135
+ logoutParams.state = params.get('state') || undefined;
7136
+ return {
7137
+ error: null,
7138
+ result: logoutParams
7139
+ };
7140
+ };
7141
+ var parseIDPParams = function parseIDPParams(searchParams) {
7142
+ var params = new URLSearchParams(searchParams);
7143
+ if (params.has('post_logout_redirect_uri')) {
7144
+ var logoutResult = parseOAuthLogoutParams(params);
7145
+ return {
7146
+ error: logoutResult.error,
7147
+ flow: {
7148
+ type: 'Logout',
7149
+ params: logoutResult.result
7150
+ }
7151
+ };
7152
+ }
7153
+ var authorizeResult = parseOAuthAuthorizeParams(params);
7154
+ return {
7155
+ error: authorizeResult.error,
7156
+ flow: {
7157
+ type: 'Authorize',
7158
+ params: authorizeResult.result
7159
+ }
7160
+ };
7161
+ };
7162
+ var initialState$1 = function initialState$1(error, params) {
7121
7163
  return {
7122
7164
  loading: !error,
7123
7165
  preflight: !!error,
@@ -7169,14 +7211,13 @@ var idpStateReducer = function idpStateReducer(state, action) {
7169
7211
  }
7170
7212
  };
7171
7213
  var useIDPState = function useIDPState(_ref145) {
7172
- var oauthAuthorizeStart = _ref145.oauthAuthorizeStart,
7214
+ var initialError = _ref145.initialError,
7215
+ initialParams = _ref145.initialParams,
7216
+ oauthAuthorizeStart = _ref145.oauthAuthorizeStart,
7173
7217
  oauthAuthorizeSubmit = _ref145.oauthAuthorizeSubmit,
7174
7218
  onError = _ref145.onError,
7175
7219
  onEvent = _ref145.onEvent;
7176
- var _h$69 = h$2(parseOAuthAuthorizeParams(window.location.search)),
7177
- _h$70 = _slicedToArray(_h$69, 1),
7178
- parseResult = _h$70[0];
7179
- var _s$ = s$1(idpStateReducer, initialState(parseResult)),
7220
+ var _s$ = s$1(idpStateReducer, initialState$1(initialError, initialParams)),
7180
7221
  _s$2 = _slicedToArray(_s$, 2),
7181
7222
  state = _s$2[0],
7182
7223
  dispatch = _s$2[1];
@@ -7189,10 +7230,9 @@ var useIDPState = function useIDPState(_ref145) {
7189
7230
  onEventRef.current = onEvent;
7190
7231
  }, [onEvent]);
7191
7232
  p$1(function () {
7192
- var errorMessage = parseResult.error;
7193
- if (!errorMessage) return;
7194
- onErrorRef.current(new IDPOAuthFlowMissingParamError(errorMessage));
7195
- }, [parseResult.error]);
7233
+ if (!initialError) return;
7234
+ onErrorRef.current(new IDPOAuthFlowMissingParamError(initialError));
7235
+ }, [initialError]);
7196
7236
  var submitInternal = T$1(function (_ref146) {
7197
7237
  var consent_required = _ref146.consent_required,
7198
7238
  consent_granted = _ref146.consent_granted;
@@ -7204,7 +7244,7 @@ var useIDPState = function useIDPState(_ref145) {
7204
7244
  type: 'START_SUBMIT'
7205
7245
  });
7206
7246
  _context24.next = 3;
7207
- return oauthAuthorizeSubmit(Object.assign(Object.assign({}, parseResult.params), {
7247
+ return oauthAuthorizeSubmit(Object.assign(Object.assign({}, initialParams), {
7208
7248
  consent_granted: consent_granted
7209
7249
  }));
7210
7250
  case 3:
@@ -7231,7 +7271,7 @@ var useIDPState = function useIDPState(_ref145) {
7231
7271
  }
7232
7272
  }, _callee24);
7233
7273
  }));
7234
- }, [dispatch, oauthAuthorizeSubmit, parseResult.params]);
7274
+ }, [dispatch, oauthAuthorizeSubmit, initialParams]);
7235
7275
  var submit = T$1(function (_ref147) {
7236
7276
  var consent_granted = _ref147.consent_granted;
7237
7277
  return submitInternal({
@@ -7251,18 +7291,18 @@ var useIDPState = function useIDPState(_ref145) {
7251
7291
  onEventRef.current({
7252
7292
  type: StytchEventType.OAuthAuthorizeFlowStart,
7253
7293
  data: {
7254
- client_id: parseResult.params['client_id'],
7255
- redirect_uri: parseResult.params['redirect_uri'],
7256
- scope: parseResult.params['scope']
7294
+ client_id: initialParams['client_id'],
7295
+ redirect_uri: initialParams['redirect_uri'],
7296
+ scope: initialParams['scope']
7257
7297
  }
7258
7298
  });
7259
7299
  _context25.prev = 2;
7260
7300
  _context25.next = 5;
7261
7301
  return oauthAuthorizeStart({
7262
- client_id: parseResult.params['client_id'],
7263
- redirect_uri: parseResult.params['redirect_uri'],
7264
- response_type: parseResult.params['response_type'],
7265
- scope: parseResult.params['scope']
7302
+ client_id: initialParams['client_id'],
7303
+ redirect_uri: initialParams['redirect_uri'],
7304
+ response_type: initialParams['response_type'],
7305
+ scope: initialParams['scope']
7266
7306
  });
7267
7307
  case 5:
7268
7308
  startResponse = _context25.sent;
@@ -7303,7 +7343,7 @@ var useIDPState = function useIDPState(_ref145) {
7303
7343
  }
7304
7344
  }, _callee25, null, [[2, 8]]);
7305
7345
  }));
7306
- }, [oauthAuthorizeStart, parseResult, submitInternal]);
7346
+ }, [oauthAuthorizeStart, initialParams, submitInternal]);
7307
7347
  p$1(function () {
7308
7348
  if (state.preflight) {
7309
7349
  return;
@@ -7487,7 +7527,203 @@ var UngrantableScopes = function UngrantableScopes(_ref158) {
7487
7527
  }, "\u2022\xA0", desc));
7488
7528
  })));
7489
7529
  };
7490
- var IDPConsentScreenImpl = function IDPConsentScreenImpl() {
7530
+ var initialState = function initialState(error) {
7531
+ return {
7532
+ loading: !error,
7533
+ preflight: !!error,
7534
+ error: error,
7535
+ denied: false,
7536
+ consent_required: false,
7537
+ redirect_uri: ''
7538
+ };
7539
+ };
7540
+ var logoutStateReducer = function logoutStateReducer(state, action) {
7541
+ switch (action.type) {
7542
+ case 'START_PREFLIGHT':
7543
+ return Object.assign(Object.assign({}, state), {
7544
+ preflight: true,
7545
+ loading: true
7546
+ });
7547
+ case 'PREFLIGHT_ERROR':
7548
+ return Object.assign(Object.assign({}, state), {
7549
+ preflight: true,
7550
+ loading: false,
7551
+ error: action.error
7552
+ });
7553
+ case 'COMPLETE_PREFLIGHT':
7554
+ return Object.assign(Object.assign({}, state), {
7555
+ loading: false,
7556
+ consent_required: action.consent_required,
7557
+ redirect_uri: action.redirect_uri
7558
+ });
7559
+ case 'CONSENT_DENIED':
7560
+ return Object.assign(Object.assign({}, state), {
7561
+ denied: true
7562
+ });
7563
+ default:
7564
+ return state;
7565
+ }
7566
+ };
7567
+ var useLogoutState = function useLogoutState(_ref159) {
7568
+ var initialError = _ref159.initialError,
7569
+ initialParams = _ref159.initialParams,
7570
+ oauthLogoutStart = _ref159.oauthLogoutStart,
7571
+ revokeSession = _ref159.revokeSession,
7572
+ onError = _ref159.onError;
7573
+ var _s$3 = s$1(logoutStateReducer, initialState(initialError)),
7574
+ _s$4 = _slicedToArray(_s$3, 2),
7575
+ state = _s$4[0],
7576
+ dispatch = _s$4[1];
7577
+ var onErrorRef = _$1(onError);
7578
+ p$1(function () {
7579
+ onErrorRef.current = onError;
7580
+ }, [onError]);
7581
+ p$1(function () {
7582
+ if (!initialError) return;
7583
+ onErrorRef.current(new IDPOAuthFlowMissingParamError(initialError));
7584
+ }, [initialError]);
7585
+ var submitInternal = T$1(function (redirectURI) {
7586
+ return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee26() {
7587
+ return _regeneratorRuntime().wrap(function _callee26$(_context26) {
7588
+ while (1) switch (_context26.prev = _context26.next) {
7589
+ case 0:
7590
+ _context26.next = 2;
7591
+ return revokeSession();
7592
+ case 2:
7593
+ window.location.href = redirectURI;
7594
+ case 3:
7595
+ case "end":
7596
+ return _context26.stop();
7597
+ }
7598
+ }, _callee26);
7599
+ }));
7600
+ }, [revokeSession]);
7601
+ var logoutPreflight = T$1(function () {
7602
+ return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee27() {
7603
+ var startResponse, message;
7604
+ return _regeneratorRuntime().wrap(function _callee27$(_context27) {
7605
+ while (1) switch (_context27.prev = _context27.next) {
7606
+ case 0:
7607
+ dispatch({
7608
+ type: 'START_PREFLIGHT'
7609
+ });
7610
+ _context27.prev = 1;
7611
+ _context27.next = 4;
7612
+ return oauthLogoutStart(initialParams);
7613
+ case 4:
7614
+ startResponse = _context27.sent;
7615
+ _context27.next = 13;
7616
+ break;
7617
+ case 7:
7618
+ _context27.prev = 7;
7619
+ _context27.t0 = _context27["catch"](1);
7620
+ message = _context27.t0.error_message;
7621
+ dispatch({
7622
+ type: 'PREFLIGHT_ERROR',
7623
+ error: message
7624
+ });
7625
+ onErrorRef.current(_context27.t0);
7626
+ return _context27.abrupt("return");
7627
+ case 13:
7628
+ if (!startResponse.consent_required) {
7629
+ _context27.next = 18;
7630
+ break;
7631
+ }
7632
+ dispatch({
7633
+ type: 'COMPLETE_PREFLIGHT',
7634
+ consent_required: startResponse.consent_required,
7635
+ redirect_uri: startResponse.redirect_uri
7636
+ });
7637
+ return _context27.abrupt("return");
7638
+ case 18:
7639
+ submitInternal(startResponse.redirect_uri);
7640
+ case 19:
7641
+ case "end":
7642
+ return _context27.stop();
7643
+ }
7644
+ }, _callee27, null, [[1, 7]]);
7645
+ }));
7646
+ }, [initialParams, oauthLogoutStart, submitInternal]);
7647
+ p$1(function () {
7648
+ if (state.preflight) {
7649
+ return;
7650
+ }
7651
+ logoutPreflight();
7652
+ }, [logoutPreflight, state.preflight]);
7653
+ var submit = T$1(function (_ref160) {
7654
+ var consent_granted = _ref160.consent_granted;
7655
+ return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee28() {
7656
+ return _regeneratorRuntime().wrap(function _callee28$(_context28) {
7657
+ while (1) switch (_context28.prev = _context28.next) {
7658
+ case 0:
7659
+ if (!consent_granted) {
7660
+ _context28.next = 4;
7661
+ break;
7662
+ }
7663
+ return _context28.abrupt("return", submitInternal(state.redirect_uri));
7664
+ case 4:
7665
+ dispatch({
7666
+ type: 'CONSENT_DENIED'
7667
+ });
7668
+ case 5:
7669
+ case "end":
7670
+ return _context28.stop();
7671
+ }
7672
+ }, _callee28);
7673
+ }));
7674
+ }, [submitInternal, state]);
7675
+ return {
7676
+ state: state,
7677
+ submit: submit
7678
+ };
7679
+ };
7680
+ var IDPLogout = function IDPLogout(_ref161) {
7681
+ var state = _ref161.state,
7682
+ submit = _ref161.submit,
7683
+ bootstrap = _ref161.bootstrap,
7684
+ bootstrapNotLoaded = _ref161.bootstrapNotLoaded;
7685
+ var loading = state.loading,
7686
+ error = state.error,
7687
+ denied = state.denied;
7688
+ if (loading || bootstrapNotLoaded) {
7689
+ return /*#__PURE__*/wn.createElement(LoadingScreen, null);
7690
+ }
7691
+ if (error) {
7692
+ return /*#__PURE__*/wn.createElement(ErrorDisplay, {
7693
+ text: error
7694
+ });
7695
+ }
7696
+ if (denied) {
7697
+ return /*#__PURE__*/wn.createElement(Confirmation, {
7698
+ text: "You have not been logged out. You may close this page."
7699
+ });
7700
+ }
7701
+ return /*#__PURE__*/wn.createElement(Flex, {
7702
+ direction: "column",
7703
+ gap: 24
7704
+ }, /*#__PURE__*/wn.createElement(Text, {
7705
+ size: "header",
7706
+ align: "center"
7707
+ }, "Log out?"), /*#__PURE__*/wn.createElement("div", null, "Are you sure you want to log out of your ", bootstrap.projectName, " account?"), /*#__PURE__*/wn.createElement("div", null, /*#__PURE__*/wn.createElement(Button, {
7708
+ type: "button",
7709
+ onClick: function onClick() {
7710
+ return submit({
7711
+ consent_granted: true
7712
+ });
7713
+ }
7714
+ }, "Yes"), /*#__PURE__*/wn.createElement(Button, {
7715
+ type: "button",
7716
+ onClick: function onClick() {
7717
+ return submit({
7718
+ consent_granted: false
7719
+ });
7720
+ },
7721
+ variant: "text"
7722
+ }, "No")));
7723
+ };
7724
+ var IDPConsentScreenImpl = function IDPConsentScreenImpl(_ref162) {
7725
+ var initialError = _ref162.initialError,
7726
+ initialParams = _ref162.initialParams;
7491
7727
  var stytchClient = useStytch();
7492
7728
  var onError = useErrorCallback();
7493
7729
  var onEvent = useEventCallback();
@@ -7496,6 +7732,8 @@ var IDPConsentScreenImpl = function IDPConsentScreenImpl() {
7496
7732
  var bootstrap = useBootstrap();
7497
7733
  var customConsentManifestGenerator = useConsentManifestGenerator();
7498
7734
  var idpConsentState = useIDPState({
7735
+ initialError: initialError,
7736
+ initialParams: initialParams,
7499
7737
  oauthAuthorizeStart: oauthAuthorizeStart,
7500
7738
  oauthAuthorizeSubmit: oauthAuthorizeSubmit,
7501
7739
  onError: onError,
@@ -7547,11 +7785,44 @@ var IDPConsentScreenImpl = function IDPConsentScreenImpl() {
7547
7785
  clientName: clientName
7548
7786
  }));
7549
7787
  };
7788
+ var IDPLogoutScreenImpl = function IDPLogoutScreenImpl(_ref163) {
7789
+ var initialError = _ref163.initialError,
7790
+ initialParams = _ref163.initialParams;
7791
+ var stytchClient = useStytch();
7792
+ var onError = useErrorCallback();
7793
+ var oauthLogoutStart = readB2BInternals(stytchClient).idp.oauthLogoutStart;
7794
+ var revokeSession = function revokeSession() {
7795
+ return stytchClient.session.revoke({
7796
+ forceClear: true
7797
+ });
7798
+ };
7799
+ var bootstrap = useBootstrap();
7800
+ var idpLogoutState = useLogoutState({
7801
+ initialError: initialError,
7802
+ initialParams: initialParams,
7803
+ oauthLogoutStart: oauthLogoutStart,
7804
+ revokeSession: revokeSession,
7805
+ onError: onError
7806
+ });
7807
+ return /*#__PURE__*/wn.createElement(IDPLogout, Object.assign({}, idpLogoutState, {
7808
+ bootstrap: bootstrap,
7809
+ bootstrapNotLoaded: false
7810
+ }));
7811
+ };
7550
7812
  var IDPConsentScreen = function IDPConsentScreen() {
7551
- return /*#__PURE__*/wn.createElement(EnsureMemberIsLoggedIn, null, /*#__PURE__*/wn.createElement(IDPConsentScreenImpl, null));
7813
+ var _h$69 = h$2(parseIDPParams(window.location.search)),
7814
+ _h$70 = _slicedToArray(_h$69, 1),
7815
+ parseResult = _h$70[0];
7816
+ return /*#__PURE__*/wn.createElement(wn.Fragment, null, parseResult.flow.type === 'Authorize' && ( /*#__PURE__*/wn.createElement(EnsureMemberIsLoggedIn, null, /*#__PURE__*/wn.createElement(IDPConsentScreenImpl, {
7817
+ initialError: parseResult.error,
7818
+ initialParams: parseResult.flow.params
7819
+ }))), parseResult.flow.type === 'Logout' && ( /*#__PURE__*/wn.createElement(IDPLogoutScreenImpl, {
7820
+ initialError: parseResult.error,
7821
+ initialParams: parseResult.flow.params
7822
+ })));
7552
7823
  };
7553
- var EnsureMemberIsLoggedIn = function EnsureMemberIsLoggedIn(_ref159) {
7554
- var children = _ref159.children;
7824
+ var EnsureMemberIsLoggedIn = function EnsureMemberIsLoggedIn(_ref164) {
7825
+ var children = _ref164.children;
7555
7826
  var member = useStytchMember();
7556
7827
  var onError = useErrorCallback();
7557
7828
  var onErrorRef = _$1(onError);
@@ -7619,8 +7890,8 @@ var AppContainer$1 = function AppContainer$1() {
7619
7890
  });
7620
7891
  };
7621
7892
  };
7622
- var _useMutate14 = useMutate("stytch.magicLinks.authenticate", function (_, _ref160) {
7623
- var token = _ref160.arg.token;
7893
+ var _useMutate14 = useMutate("stytch.magicLinks.authenticate", function (_, _ref165) {
7894
+ var token = _ref165.arg.token;
7624
7895
  return stytchClient.magicLinks.authenticate({
7625
7896
  magic_links_token: token,
7626
7897
  session_duration_minutes: config.sessionOptions.sessionDurationMinutes
@@ -7631,8 +7902,8 @@ var AppContainer$1 = function AppContainer$1() {
7631
7902
  }),
7632
7903
  stytchMagicLinkAuthenticate = _useMutate14.trigger,
7633
7904
  isMagicLinkLoading = _useMutate14.isMutating;
7634
- var _useMutate15 = useMutate("stytch.impersonation.authenticate", function (_, _ref161) {
7635
- var token = _ref161.arg.token;
7905
+ var _useMutate15 = useMutate("stytch.impersonation.authenticate", function (_, _ref166) {
7906
+ var token = _ref166.arg.token;
7636
7907
  return stytchClient.impersonation.authenticate({
7637
7908
  impersonation_token: token
7638
7909
  });
@@ -7642,8 +7913,8 @@ var AppContainer$1 = function AppContainer$1() {
7642
7913
  }),
7643
7914
  stytchImpersonationAuthenticate = _useMutate15.trigger,
7644
7915
  isImpersonationLoading = _useMutate15.isMutating;
7645
- var _useMutate16 = useMutate("stytch.oauth.authenticate", function (_, _ref162) {
7646
- var token = _ref162.arg.token;
7916
+ var _useMutate16 = useMutate("stytch.oauth.authenticate", function (_, _ref167) {
7917
+ var token = _ref167.arg.token;
7647
7918
  return stytchClient.oauth.authenticate({
7648
7919
  oauth_token: token,
7649
7920
  session_duration_minutes: config.sessionOptions.sessionDurationMinutes
@@ -7654,8 +7925,8 @@ var AppContainer$1 = function AppContainer$1() {
7654
7925
  }),
7655
7926
  stytchOAuthAuthenticate = _useMutate16.trigger,
7656
7927
  isOAuthLoading = _useMutate16.isMutating;
7657
- var _useMutate17 = useMutate("stytch.oauth.discovery.authenticate", function (_, _ref163) {
7658
- var token = _ref163.arg.token;
7928
+ var _useMutate17 = useMutate("stytch.oauth.discovery.authenticate", function (_, _ref168) {
7929
+ var token = _ref168.arg.token;
7659
7930
  return stytchClient.oauth.discovery.authenticate({
7660
7931
  discovery_oauth_token: token
7661
7932
  });
@@ -7665,8 +7936,8 @@ var AppContainer$1 = function AppContainer$1() {
7665
7936
  }),
7666
7937
  stytchOAuthDiscoveryAuthenticate = _useMutate17.trigger,
7667
7938
  isDiscoveryOAuthLoading = _useMutate17.isMutating;
7668
- var _useMutate18 = useMutate("stytch.sso.authenticate", function (_, _ref164) {
7669
- var token = _ref164.arg.token;
7939
+ var _useMutate18 = useMutate("stytch.sso.authenticate", function (_, _ref169) {
7940
+ var token = _ref169.arg.token;
7670
7941
  return stytchClient.sso.authenticate({
7671
7942
  sso_token: token,
7672
7943
  session_duration_minutes: config.sessionOptions.sessionDurationMinutes
@@ -7677,8 +7948,8 @@ var AppContainer$1 = function AppContainer$1() {
7677
7948
  }),
7678
7949
  stytchSSOAuthenticate = _useMutate18.trigger,
7679
7950
  isSSOLoading = _useMutate18.isMutating;
7680
- var _useMutate19 = useMutate("stytch.magicLinks.discovery.authenticate", function (_, _ref165) {
7681
- var token = _ref165.arg.token;
7951
+ var _useMutate19 = useMutate("stytch.magicLinks.discovery.authenticate", function (_, _ref170) {
7952
+ var token = _ref170.arg.token;
7682
7953
  return stytchClient.magicLinks.discovery.authenticate({
7683
7954
  discovery_magic_links_token: token
7684
7955
  });
@@ -7774,11 +8045,11 @@ var AppContainer$1 = function AppContainer$1() {
7774
8045
  displayWatermark: displayWatermark
7775
8046
  }, ScreenComponentMap[currentScreen]);
7776
8047
  };
7777
- var AppContainer = function AppContainer(_ref166) {
7778
- var client = _ref166.client,
7779
- styles = _ref166.styles,
7780
- callbacks = _ref166.callbacks,
7781
- config = _ref166.config;
8048
+ var AppContainer = function AppContainer(_ref171) {
8049
+ var client = _ref171.client,
8050
+ styles = _ref171.styles,
8051
+ callbacks = _ref171.callbacks,
8052
+ config = _ref171.config;
7782
8053
  var _h$71 = h$2(function () {
7783
8054
  var _readB2BInternals$boo3 = readB2BInternals(client).bootstrap.getSync(),
7784
8055
  displayWatermark = _readB2BInternals$boo3.displayWatermark;
@@ -7794,8 +8065,8 @@ var AppContainer = function AppContainer(_ref166) {
7794
8065
  options: config
7795
8066
  }
7796
8067
  });
7797
- readB2BInternals(client).bootstrap.getAsync().then(function (_ref167) {
7798
- var displayWatermark = _ref167.displayWatermark;
8068
+ readB2BInternals(client).bootstrap.getAsync().then(function (_ref172) {
8069
+ var displayWatermark = _ref172.displayWatermark;
7799
8070
  setDisplayWatermark(displayWatermark);
7800
8071
  });
7801
8072
  }, [client]);
@@ -7825,11 +8096,11 @@ var AppContainer = function AppContainer(_ref166) {
7825
8096
  theme: theme
7826
8097
  }, /*#__PURE__*/wn.createElement(AppContainer$1, null)));
7827
8098
  };
7828
- var B2BIDPContainer = function B2BIDPContainer(_ref168) {
7829
- var client = _ref168.client,
7830
- styles = _ref168.styles,
7831
- callbacks = _ref168.callbacks,
7832
- getIDPConsentManifest = _ref168.getIDPConsentManifest;
8099
+ var B2BIDPContainer = function B2BIDPContainer(_ref173) {
8100
+ var client = _ref173.client,
8101
+ styles = _ref173.styles,
8102
+ callbacks = _ref173.callbacks,
8103
+ getIDPConsentManifest = _ref173.getIDPConsentManifest;
7833
8104
  var initialState = Object.assign(Object.assign({}, DEFAULT_STATE), {
7834
8105
  screen: AppScreens$1.IDPConsent
7835
8106
  });
@@ -7864,11 +8135,11 @@ var StytchB2BUIClient = /*#__PURE__*/function (_StytchB2BHeadlessCli) {
7864
8135
  }
7865
8136
  _createClass(StytchB2BUIClient, [{
7866
8137
  key: "mount",
7867
- value: function mount(_ref169) {
7868
- var elementId = _ref169.elementId,
7869
- styles = _ref169.styles,
7870
- callbacks = _ref169.callbacks,
7871
- config = _ref169.config;
8138
+ value: function mount(_ref174) {
8139
+ var elementId = _ref174.elementId,
8140
+ styles = _ref174.styles,
8141
+ callbacks = _ref174.callbacks,
8142
+ config = _ref174.config;
7872
8143
  var _a;
7873
8144
  var targetParentDomNode = document.querySelector(elementId);
7874
8145
  if (!targetParentDomNode) {
@@ -7895,11 +8166,11 @@ var StytchB2BUIClient = /*#__PURE__*/function (_StytchB2BHeadlessCli) {
7895
8166
  }
7896
8167
  }, {
7897
8168
  key: "mountIdentityProvider",
7898
- value: function mountIdentityProvider(_ref170) {
7899
- var elementId = _ref170.elementId,
7900
- styles = _ref170.styles,
7901
- callbacks = _ref170.callbacks,
7902
- getIDPConsentManifest = _ref170.getIDPConsentManifest;
8169
+ value: function mountIdentityProvider(_ref175) {
8170
+ var elementId = _ref175.elementId,
8171
+ styles = _ref175.styles,
8172
+ callbacks = _ref175.callbacks,
8173
+ getIDPConsentManifest = _ref175.getIDPConsentManifest;
7903
8174
  var _a;
7904
8175
  var targetParentDomNode = document.querySelector(elementId);
7905
8176
  if (!targetParentDomNode) {