@frontegg/js 6.45.0 → 6.46.0-alpha.1

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.
@@ -1312,7 +1312,7 @@ __webpack_require__.r(__webpack_exports__);
1312
1312
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
1313
1313
  /* harmony export */ });
1314
1314
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
1315
- "cdnVersion": "6.45.0"
1315
+ "cdnVersion": "6.46.0-alpha.1"
1316
1316
  });
1317
1317
 
1318
1318
  /***/ }),
@@ -4084,6 +4084,33 @@ const actions = {
4084
4084
  })),
4085
4085
  getUserIP: (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAction)(`${_constants__WEBPACK_IMPORTED_MODULE_3__.authStoreName}/getUserIP`, payload => ({
4086
4086
  payload
4087
+ })),
4088
+ preEnrollMFAWebAuthnForLogin: (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAction)(`${_constants__WEBPACK_IMPORTED_MODULE_3__.authStoreName}/preEnrollWebAuthNForLogin`, payload => ({
4089
+ payload
4090
+ })),
4091
+ enrollMFAWebAuthnForLogin: (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAction)(`${_constants__WEBPACK_IMPORTED_MODULE_3__.authStoreName}/enrollWebAuthNForLogin`, payload => ({
4092
+ payload
4093
+ })),
4094
+ enrollMFAAuthenticatorAppForLogin: (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAction)(`${_constants__WEBPACK_IMPORTED_MODULE_3__.authStoreName}/enrollMFAAuthenticatorAppForLogin`, payload => ({
4095
+ payload
4096
+ })),
4097
+ preEnrollMFASMSForLogin: (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAction)(`${_constants__WEBPACK_IMPORTED_MODULE_3__.authStoreName}/preEnrollMFASMSForLogin`, payload => ({
4098
+ payload
4099
+ })),
4100
+ enrollMFASMSForLogin: (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAction)(`${_constants__WEBPACK_IMPORTED_MODULE_3__.authStoreName}/enrollMFASMSForLogin`, payload => ({
4101
+ payload
4102
+ })),
4103
+ preVerifyMFAWebAuthnForLogin: (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAction)(`${_constants__WEBPACK_IMPORTED_MODULE_3__.authStoreName}/preVerifyMFAWebAuthnForLogin`, payload => ({
4104
+ payload
4105
+ })),
4106
+ verifyMFAWebAuthnForLogin: (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAction)(`${_constants__WEBPACK_IMPORTED_MODULE_3__.authStoreName}/verifyMFAWebAuthnForLogin`, payload => ({
4107
+ payload
4108
+ })),
4109
+ preVerifyMFASMSForLogin: (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAction)(`${_constants__WEBPACK_IMPORTED_MODULE_3__.authStoreName}/preVerifyMFASMSForLogin`, payload => ({
4110
+ payload
4111
+ })),
4112
+ verifyMFASMSForLogin: (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAction)(`${_constants__WEBPACK_IMPORTED_MODULE_3__.authStoreName}/verifyMFASMSForLogin`, payload => ({
4113
+ payload
4087
4114
  }))
4088
4115
  };
4089
4116
  /**
@@ -4179,20 +4206,21 @@ __webpack_require__.r(__webpack_exports__);
4179
4206
  /* harmony import */ var _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @frontegg/rest-api */ "../../node_modules/@frontegg/rest-api/auth/enums.js");
4180
4207
  /* harmony import */ var _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @frontegg/rest-api */ "../../node_modules/@frontegg/rest-api/ContextHolder/index.js");
4181
4208
  /* harmony import */ var _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @frontegg/rest-api */ "../../node_modules/@frontegg/rest-api/index.js");
4182
- /* harmony import */ var _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @frontegg/rest-api */ "../../node_modules/@frontegg/rest-api/fetch.js");
4209
+ /* harmony import */ var _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @frontegg/rest-api */ "../../node_modules/@frontegg/rest-api/auth/interfaces.js");
4210
+ /* harmony import */ var _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @frontegg/rest-api */ "../../node_modules/@frontegg/rest-api/fetch.js");
4183
4211
  /* harmony import */ var _reducer__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../reducer */ "../../dist/@frontegg/redux-store/auth/reducer.js");
4184
4212
  /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../constants */ "../../dist/@frontegg/redux-store/constants.js");
4185
- /* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../interfaces */ "../../dist/@frontegg/redux-store/auth/interfaces.js");
4213
+ /* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../interfaces */ "../../dist/@frontegg/redux-store/auth/interfaces.js");
4186
4214
  /* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./interfaces */ "../../dist/@frontegg/redux-store/auth/LoginState/interfaces.js");
4187
- /* harmony import */ var _SignUp_saga__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../SignUp/saga */ "../../dist/@frontegg/redux-store/auth/SignUp/saga.js");
4215
+ /* harmony import */ var _SignUp_saga__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../SignUp/saga */ "../../dist/@frontegg/redux-store/auth/SignUp/saga.js");
4188
4216
  /* harmony import */ var _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../MfaState/interfaces */ "../../dist/@frontegg/redux-store/auth/MfaState/interfaces.js");
4189
- /* harmony import */ var _dummy__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../dummy */ "../../dist/@frontegg/redux-store/auth/dummy.js");
4190
- /* harmony import */ var _SSOState_interfaces__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../SSOState/interfaces */ "../../dist/@frontegg/redux-store/auth/SSOState/interfaces.js");
4191
- /* harmony import */ var _vendor_saga__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../vendor/saga */ "../../dist/@frontegg/redux-store/vendor/saga.js");
4192
- /* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../helpers */ "../../dist/@frontegg/redux-store/helpers.js");
4193
- /* harmony import */ var _ResetPhoneNumberState_interfaces__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../ResetPhoneNumberState/interfaces */ "../../dist/@frontegg/redux-store/auth/ResetPhoneNumberState/interfaces.js");
4194
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../utils */ "../../dist/@frontegg/redux-store/auth/utils.js");
4195
- /* harmony import */ var _SecurityPolicyState_saga__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../SecurityPolicyState/saga */ "../../dist/@frontegg/redux-store/auth/SecurityPolicyState/saga.js");
4217
+ /* harmony import */ var _dummy__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../dummy */ "../../dist/@frontegg/redux-store/auth/dummy.js");
4218
+ /* harmony import */ var _SSOState_interfaces__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../SSOState/interfaces */ "../../dist/@frontegg/redux-store/auth/SSOState/interfaces.js");
4219
+ /* harmony import */ var _vendor_saga__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../vendor/saga */ "../../dist/@frontegg/redux-store/vendor/saga.js");
4220
+ /* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../helpers */ "../../dist/@frontegg/redux-store/helpers.js");
4221
+ /* harmony import */ var _ResetPhoneNumberState_interfaces__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../ResetPhoneNumberState/interfaces */ "../../dist/@frontegg/redux-store/auth/ResetPhoneNumberState/interfaces.js");
4222
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../utils */ "../../dist/@frontegg/redux-store/auth/utils.js");
4223
+ /* harmony import */ var _SecurityPolicyState_saga__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../SecurityPolicyState/saga */ "../../dist/@frontegg/redux-store/auth/SecurityPolicyState/saga.js");
4196
4224
 
4197
4225
 
4198
4226
  const _excluded = ["callback"],
@@ -4203,7 +4231,16 @@ const _excluded = ["callback"],
4203
4231
  _excluded6 = ["callback"],
4204
4232
  _excluded7 = ["callback"],
4205
4233
  _excluded8 = ["callback"],
4206
- _excluded9 = ["callback"];
4234
+ _excluded9 = ["callback"],
4235
+ _excluded10 = ["callback"],
4236
+ _excluded11 = ["callback"],
4237
+ _excluded12 = ["callback"],
4238
+ _excluded13 = ["callback"],
4239
+ _excluded14 = ["callback"],
4240
+ _excluded15 = ["callback", "deviceId"],
4241
+ _excluded16 = ["callback", "deviceId"],
4242
+ _excluded17 = ["callback", "deviceId"],
4243
+ _excluded18 = ["callback", "deviceId"];
4207
4244
 
4208
4245
 
4209
4246
 
@@ -4305,9 +4342,55 @@ const isMfaRequired = user => {
4305
4342
  return false;
4306
4343
  }
4307
4344
  };
4345
+
4346
+ const getNumberOfMfaDevices = mfaDevices => {
4347
+ const numberOfWebAuthnDevices = mfaDevices.webauthn.length;
4348
+ const numberOfPhoneDevices = mfaDevices.phones.length;
4349
+ const numberOfAuthenticators = mfaDevices.authenticators.length;
4350
+ const totalDevices = numberOfWebAuthnDevices + numberOfPhoneDevices + numberOfAuthenticators;
4351
+ return {
4352
+ numberOfWebAuthnDevices,
4353
+ numberOfPhoneDevices,
4354
+ numberOfAuthenticators,
4355
+ totalDevices
4356
+ };
4357
+ };
4358
+
4359
+ const getMfaStepForEnrolledUsers = mfaDevices => {
4360
+ const {
4361
+ numberOfPhoneDevices,
4362
+ numberOfAuthenticators,
4363
+ totalDevices
4364
+ } = getNumberOfMfaDevices(mfaDevices);
4365
+
4366
+ if (totalDevices === 1) {
4367
+ if (numberOfAuthenticators) {
4368
+ return _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_9__.MFAStep.authenticatorApp;
4369
+ } else if (numberOfPhoneDevices) {
4370
+ return _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_9__.MFAStep.smsVerifyCode;
4371
+ }
4372
+ }
4373
+
4374
+ return _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_9__.MFAStep.verify;
4375
+ };
4376
+
4377
+ const getMfaStepForNotEnrolledUsers = mfaStrategies => {
4378
+ if (mfaStrategies.length === 1) {
4379
+ const [strategy] = mfaStrategies;
4380
+
4381
+ if (strategy === _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_10__.MFAStrategyEnum.AuthenticatorApp) {
4382
+ return _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_9__.MFAStep.authenticatorApp;
4383
+ } else if (strategy === _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_10__.MFAStrategyEnum.SMS) {
4384
+ return _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_9__.MFAStep.smsSetPhoneNumber;
4385
+ }
4386
+
4387
+ return _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_9__.MFAStep.verify;
4388
+ }
4389
+ };
4390
+
4308
4391
  function* getMfaRequiredState(user) {
4309
- let setMfaState = {};
4310
4392
  let step = _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginStep.loginWithTwoFactor;
4393
+ let mfaState = {};
4311
4394
  const {
4312
4395
  loginState
4313
4396
  } = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.select)(state => state.auth);
@@ -4315,16 +4398,21 @@ function* getMfaRequiredState(user) {
4315
4398
  isAllowedToRemember,
4316
4399
  mfaDeviceExpiration
4317
4400
  } = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.checkIfAllowToRememberMfaDevice, user.mfaToken);
4401
+ const isEnrolled = !(user.hasOwnProperty('mfaEnrolled') && !user.mfaEnrolled);
4318
4402
 
4319
- if (user.hasOwnProperty('mfaEnrolled') && !user.mfaEnrolled) {
4320
- setMfaState = {
4321
- mfaState: {
4322
- step: _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_9__.MFAStep.verify,
4323
- qrCode: user.qrCode,
4324
- recoveryCode: user.recoveryCode,
4325
- loading: false,
4326
- mfaToken: user.mfaToken
4327
- }
4403
+ if (isEnrolled) {
4404
+ mfaState = {
4405
+ mfaDevices: user.mfaDevices,
4406
+ step: getMfaStepForEnrolledUsers(user.mfaDevices)
4407
+ };
4408
+ } else {
4409
+ mfaState = {
4410
+ step: getMfaStepForNotEnrolledUsers(user.mfaStrategies),
4411
+ qrCode: user.qrCode,
4412
+ recoveryCode: user.recoveryCode,
4413
+ loading: false,
4414
+ mfaToken: user.mfaToken,
4415
+ mfaStrategies: user.mfaStrategies
4328
4416
  };
4329
4417
  step = _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginStep.forceTwoFactor;
4330
4418
  }
@@ -4339,10 +4427,10 @@ function* getMfaRequiredState(user) {
4339
4427
  };
4340
4428
  }
4341
4429
 
4342
- return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({
4430
+ return {
4343
4431
  user: undefined,
4344
- isAuthenticated: false
4345
- }, setMfaState, {
4432
+ isAuthenticated: false,
4433
+ mfaState,
4346
4434
  loginState: (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, loginState, quickLoginState, {
4347
4435
  mfaToken: user.mfaToken,
4348
4436
  mfaRequired: user.mfaRequired,
@@ -4355,7 +4443,7 @@ function* getMfaRequiredState(user) {
4355
4443
  allowRememberMfaDevice: isAllowedToRemember,
4356
4444
  mfaDeviceExpiration
4357
4445
  })
4358
- });
4446
+ };
4359
4447
  }
4360
4448
  function* refreshToken() {
4361
4449
  const {
@@ -4502,10 +4590,10 @@ function* requestAuthorize({
4502
4590
  isLoading: true
4503
4591
  }));
4504
4592
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.loadSocialLoginsConfigurationV2());
4505
- calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_SignUp_saga__WEBPACK_IMPORTED_MODULE_10__.loadAllowSignUps));
4506
- calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_SecurityPolicyState_saga__WEBPACK_IMPORTED_MODULE_11__.loadPublicAuthStrategiesPolicy));
4593
+ calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_SignUp_saga__WEBPACK_IMPORTED_MODULE_11__.loadAllowSignUps));
4594
+ calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_SecurityPolicyState_saga__WEBPACK_IMPORTED_MODULE_12__.loadPublicAuthStrategiesPolicy));
4507
4595
  calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(loadSSOPublicConfigurationFunction));
4508
- calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_vendor_saga__WEBPACK_IMPORTED_MODULE_12__.loadVendorPublicInfo));
4596
+ calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_vendor_saga__WEBPACK_IMPORTED_MODULE_13__.loadVendorPublicInfo));
4509
4597
  calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(refreshMetadata));
4510
4598
  }
4511
4599
 
@@ -4578,9 +4666,9 @@ function* requestAuthorizeSSR({
4578
4666
  isLoading: true
4579
4667
  }));
4580
4668
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.loadSocialLoginsConfigurationV2());
4581
- calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_SignUp_saga__WEBPACK_IMPORTED_MODULE_10__.loadAllowSignUps));
4669
+ calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_SignUp_saga__WEBPACK_IMPORTED_MODULE_11__.loadAllowSignUps));
4582
4670
  calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(loadSSOPublicConfigurationFunction));
4583
- calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_vendor_saga__WEBPACK_IMPORTED_MODULE_12__.loadVendorPublicInfo));
4671
+ calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_vendor_saga__WEBPACK_IMPORTED_MODULE_13__.loadVendorPublicInfo));
4584
4672
  calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(refreshMetadata));
4585
4673
  calls.push((0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(refreshTokenSSR, payload));
4586
4674
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.all)(calls);
@@ -4667,13 +4755,13 @@ function* requestHostedLoginAuthorize(additionalParams) {
4667
4755
  isLoading: true
4668
4756
  })); // Generate the relevant params for the redirect
4669
4757
 
4670
- const nonce = (0,_helpers__WEBPACK_IMPORTED_MODULE_13__.createRandomString)();
4671
- const code_verifier = (0,_helpers__WEBPACK_IMPORTED_MODULE_13__.createRandomString)();
4672
- const code_challenge = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_helpers__WEBPACK_IMPORTED_MODULE_13__.generateCodeChallenge, code_verifier); // We are saving the verifier in session storage to be able to validate the response
4758
+ const nonce = (0,_helpers__WEBPACK_IMPORTED_MODULE_14__.createRandomString)();
4759
+ const code_verifier = (0,_helpers__WEBPACK_IMPORTED_MODULE_14__.createRandomString)();
4760
+ const code_challenge = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_helpers__WEBPACK_IMPORTED_MODULE_14__.generateCodeChallenge, code_verifier); // We are saving the verifier in session storage to be able to validate the response
4673
4761
 
4674
4762
  localStorage.setItem(_constants__WEBPACK_IMPORTED_MODULE_6__.HOSTED_LOGIN_VERIFIER_KEY, code_verifier);
4675
4763
  const redirectUrl = `${window.location.origin}${urlStrategy === 'path' ? '' : '#'}${routes.hostedLoginRedirectUrl}`;
4676
- const baseUrl = _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_14__.getBaseUrl(context, '/oauth/authorize'); // Hard coded for now
4764
+ const baseUrl = _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_15__.getBaseUrl(context, '/oauth/authorize'); // Hard coded for now
4677
4765
 
4678
4766
  const oauthUrl = `${baseUrl}/oauth/authorize`;
4679
4767
 
@@ -4848,7 +4936,7 @@ function* passwordlessPreLogin(_ref5) {
4848
4936
  if (step === _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginStep.loginWithSmsOtc && preloginRes.resetPhoneNumberToken) {
4849
4937
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setResetPhoneNumberState({
4850
4938
  resetPhoneNumberToken: preloginRes.resetPhoneNumberToken,
4851
- step: _ResetPhoneNumberState_interfaces__WEBPACK_IMPORTED_MODULE_15__.ResetPhoneNumberStep.VerifyResetPhoneNumber
4939
+ step: _ResetPhoneNumberState_interfaces__WEBPACK_IMPORTED_MODULE_16__.ResetPhoneNumberStep.VerifyResetPhoneNumber
4852
4940
  }));
4853
4941
  onRedirectTo(routes.resetPhoneNumberUrl);
4854
4942
  return;
@@ -4907,7 +4995,7 @@ function* passwordlessPostLogin(_ref6) {
4907
4995
 
4908
4996
  events == null ? void 0 : (_events$userVerified = events.userVerified) == null ? void 0 : _events$userVerified.call(events, {
4909
4997
  email: user.email,
4910
- origin: _interfaces__WEBPACK_IMPORTED_MODULE_16__.UserVeirifedOriginTypes.PASSWORDLESS,
4998
+ origin: _interfaces__WEBPACK_IMPORTED_MODULE_17__.UserVeirifedOriginTypes.PASSWORDLESS,
4911
4999
  id: user.id,
4912
5000
  tenantId: user.tenantId,
4913
5001
  createdAt: new Date(),
@@ -5005,7 +5093,7 @@ function* preLogin({
5005
5093
  });
5006
5094
 
5007
5095
  if (address) {
5008
- if (idpType === _SSOState_interfaces__WEBPACK_IMPORTED_MODULE_17__.SamlVendors.Oidc && !address.includes('redirect_uri')) {
5096
+ if (idpType === _SSOState_interfaces__WEBPACK_IMPORTED_MODULE_18__.SamlVendors.Oidc && !address.includes('redirect_uri')) {
5009
5097
  const {
5010
5098
  routes: {
5011
5099
  oidcRedirectUrl
@@ -5105,8 +5193,8 @@ function* webAuthnCreateNewDeviceSession({
5105
5193
  const {
5106
5194
  options
5107
5195
  } = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.webAuthnCreateNewDeviceSession);
5108
- options.user.id = (0,_utils__WEBPACK_IMPORTED_MODULE_18__.base64urlDecode)(options.user.id);
5109
- options.challenge = (0,_utils__WEBPACK_IMPORTED_MODULE_18__.base64urlDecode)(options.challenge);
5196
+ options.user.id = (0,_utils__WEBPACK_IMPORTED_MODULE_19__.base64urlDecode)(options.user.id);
5197
+ options.challenge = (0,_utils__WEBPACK_IMPORTED_MODULE_19__.base64urlDecode)(options.challenge);
5110
5198
  options.excludeCredentials = [];
5111
5199
  callback == null ? void 0 : callback(options);
5112
5200
  } catch (e) {
@@ -5133,7 +5221,7 @@ function* webAuthnVerifyNewDeviceSession(_ref8) {
5133
5221
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5134
5222
  loading: true
5135
5223
  }));
5136
- const publicKey = (0,_utils__WEBPACK_IMPORTED_MODULE_18__.publicKeyCredentialToJSON)(body.publicKey);
5224
+ const publicKey = (0,_utils__WEBPACK_IMPORTED_MODULE_19__.publicKeyCredentialToJSON)(body.publicKey);
5137
5225
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.verifyNewDeviceSession, {
5138
5226
  id: publicKey.id,
5139
5227
  response: publicKey.response
@@ -5168,9 +5256,9 @@ function* webAuthnPrelogin(_ref9) {
5168
5256
  const {
5169
5257
  options
5170
5258
  } = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.webAuthnPreLogin, body);
5171
- options.challenge = (0,_utils__WEBPACK_IMPORTED_MODULE_18__.base64urlDecode)(options.challenge);
5259
+ options.challenge = (0,_utils__WEBPACK_IMPORTED_MODULE_19__.base64urlDecode)(options.challenge);
5172
5260
  options.allowCredentials = (_options$allowCredent = options.allowCredentials) == null ? void 0 : _options$allowCredent.map(credentials => (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, credentials, {
5173
- id: (0,_utils__WEBPACK_IMPORTED_MODULE_18__.base64urlDecode)(credentials.id)
5261
+ id: (0,_utils__WEBPACK_IMPORTED_MODULE_19__.base64urlDecode)(credentials.id)
5174
5262
  }));
5175
5263
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5176
5264
  error: undefined
@@ -5202,7 +5290,7 @@ function* webAuthnPostLogin(_ref10) {
5202
5290
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5203
5291
  loading: true
5204
5292
  }));
5205
- const publicKey = (0,_utils__WEBPACK_IMPORTED_MODULE_18__.publicKeyCredentialToJSON)(body.publicKey);
5293
+ const publicKey = (0,_utils__WEBPACK_IMPORTED_MODULE_19__.publicKeyCredentialToJSON)(body.publicKey);
5206
5294
  const data = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.webAuthnPostLogin, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, publicKey, {
5207
5295
  response: (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, publicKey.response, {
5208
5296
  userHandle: (_publicKey$response$u = publicKey.response.userHandle) != null ? _publicKey$response$u : undefined
@@ -5314,75 +5402,47 @@ function* login({
5314
5402
  });
5315
5403
  _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_5__.ContextHolder.setAccessToken(user.accessToken);
5316
5404
  _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_5__.ContextHolder.setUser(user);
5317
- let setMfaState = {};
5318
- let step = _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginStep.success;
5319
-
5320
- if (user.mfaRequired && user.mfaToken) {
5321
- step = _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginStep.loginWithTwoFactor;
5322
-
5323
- if (user.hasOwnProperty('mfaEnrolled') && !user.mfaEnrolled) {
5324
- setMfaState = {
5325
- mfaState: {
5326
- step: _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_9__.MFAStep.verify,
5327
- qrCode: user.qrCode,
5328
- recoveryCode: user.recoveryCode,
5329
- mfaToken: user.mfaToken,
5330
- loading: false
5331
- }
5332
- };
5333
- step = _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginStep.forceTwoFactor;
5334
- }
5335
- }
5336
-
5405
+ const onRedirectTo = _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_5__.ContextHolder.onRedirectTo;
5337
5406
  const {
5338
- loginState
5407
+ routes
5339
5408
  } = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.select)(state => state.auth);
5340
- const isLoginSucceeded = step === _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginStep.success;
5341
- const isAuthenticated = isLoginSucceeded && !!user.accessToken;
5342
- const loggedInUser = isLoginSucceeded ? user : undefined;
5343
- let allowRememberDevice = {
5344
- isAllowedToRemember: false,
5345
- mfaDeviceExpiration: 0
5346
- };
5347
5409
 
5348
- if (user.mfaRequired && user.mfaToken) {
5349
- allowRememberDevice = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.checkIfAllowToRememberMfaDevice, user.mfaToken);
5350
- }
5351
-
5352
- const {
5353
- isAllowedToRemember,
5354
- mfaDeviceExpiration
5355
- } = allowRememberDevice;
5356
-
5357
- if (user.id) {
5358
- localStorage.setItem('userId', user.id);
5359
- }
5410
+ if (isMfaRequired(user)) {
5411
+ const mfaRequiredState = yield getMfaRequiredState(user);
5412
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setState(mfaRequiredState));
5413
+ onRedirectTo(routes.loginUrl, {
5414
+ preserveQueryParams: true
5415
+ });
5416
+ } else {
5417
+ const {
5418
+ loginState
5419
+ } = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.select)(state => state.auth);
5420
+ const isAuthenticated = !!user.accessToken;
5360
5421
 
5361
- yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setState((0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({
5362
- user: loggedInUser,
5363
- isAuthenticated
5364
- }, setMfaState, {
5365
- loginState: {
5366
- flow: loginState.flow,
5367
- quickLoginToRegister: loginState.quickLoginToRegister,
5368
- email,
5369
- loading: false,
5370
- error: undefined,
5371
- mfaToken: user.mfaToken,
5372
- step: !isLoginSucceeded || loginState.flow === _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginFlow.Login ? step : loginState.step,
5373
- tenants: [],
5374
- tenantsLoading: true,
5375
- allowRememberMfaDevice: isAllowedToRemember,
5376
- mfaDeviceExpiration
5422
+ if (user.id) {
5423
+ localStorage.setItem('userId', user.id);
5377
5424
  }
5378
- })));
5379
5425
 
5380
- if (isLoginSucceeded) {
5426
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setState({
5427
+ user,
5428
+ isAuthenticated,
5429
+ loginState: {
5430
+ flow: loginState.flow,
5431
+ quickLoginToRegister: loginState.quickLoginToRegister,
5432
+ email,
5433
+ loading: false,
5434
+ error: undefined,
5435
+ mfaToken: user.mfaToken,
5436
+ step: loginState.flow === _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginFlow.Login ? _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginStep.success : loginState.step,
5437
+ tenants: [],
5438
+ tenantsLoading: true
5439
+ }
5440
+ }));
5381
5441
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.loadTenants());
5382
- }
5383
5442
 
5384
- if (isAuthenticated && loginState.flow === _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginFlow.Login) {
5385
- yield afterAuthNavigation();
5443
+ if (isAuthenticated && loginState.flow === _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginFlow.Login) {
5444
+ yield afterAuthNavigation();
5445
+ }
5386
5446
  } // TODO: extract item name to constants
5387
5447
 
5388
5448
 
@@ -5517,6 +5577,363 @@ function* silentLogout({
5517
5577
  }, (_payload$callbackTime = payload == null ? void 0 : payload.callbackTimeout) != null ? _payload$callbackTime : 500);
5518
5578
  }
5519
5579
 
5580
+ function* handleEnrollMFAResponse({
5581
+ user,
5582
+ tenants
5583
+ }) {
5584
+ const mfaState = {
5585
+ step: _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_9__.MFAStep.recoveryCode,
5586
+ loading: false,
5587
+ error: undefined
5588
+ };
5589
+
5590
+ if (user != null && user.recoveryCode) {
5591
+ mfaState.recoveryCode = user.recoveryCode;
5592
+ }
5593
+
5594
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setMfaState(mfaState));
5595
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setUser(user));
5596
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setTenantsState({
5597
+ tenants,
5598
+ loading: false
5599
+ }));
5600
+
5601
+ if (user.id) {
5602
+ localStorage.setItem('userId', user.id);
5603
+ }
5604
+ }
5605
+
5606
+ function* handleVerifyMFAResponse({
5607
+ user,
5608
+ tenants
5609
+ }) {
5610
+ const {
5611
+ loginState
5612
+ } = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.select)(state => state.auth);
5613
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setUser(user));
5614
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setTenantsState({
5615
+ tenants,
5616
+ loading: false
5617
+ }));
5618
+
5619
+ if (user.id) {
5620
+ localStorage.setItem('userId', user.id);
5621
+ }
5622
+
5623
+ if (loginState.flow === _interfaces__WEBPACK_IMPORTED_MODULE_4__.LoginFlow.Login) {
5624
+ yield afterAuthNavigation();
5625
+ }
5626
+
5627
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setState({
5628
+ isAuthenticated: true
5629
+ }));
5630
+ }
5631
+
5632
+ function* preEnrollMFASMSForLogin(_ref11) {
5633
+ let {
5634
+ payload: {
5635
+ callback
5636
+ }
5637
+ } = _ref11,
5638
+ payload = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(_ref11.payload, _excluded10);
5639
+
5640
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5641
+ loading: true
5642
+ }));
5643
+
5644
+ try {
5645
+ const data = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.preEnrollMFASMSForLogin, payload);
5646
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setMfaState({
5647
+ otcToken: data.otcToken,
5648
+ step: _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_9__.MFAStep.smsVerifyCode,
5649
+ phoneNumber: data.phoneNumber
5650
+ }));
5651
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5652
+ loading: false
5653
+ }));
5654
+ callback == null ? void 0 : callback(true);
5655
+ } catch (e) {
5656
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5657
+ loading: false,
5658
+ error: e.message
5659
+ }));
5660
+ callback == null ? void 0 : callback(null);
5661
+ }
5662
+ }
5663
+
5664
+ function* enrollMFASMSForLogin(_ref12) {
5665
+ let {
5666
+ payload: {
5667
+ callback
5668
+ }
5669
+ } = _ref12,
5670
+ payload = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(_ref12.payload, _excluded11);
5671
+
5672
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5673
+ loading: true
5674
+ }));
5675
+
5676
+ try {
5677
+ const data = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.enrollMFASMSForLogin, payload);
5678
+ const response = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.generateLoginResponseV2, data);
5679
+ yield handleEnrollMFAResponse(response);
5680
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5681
+ loading: false
5682
+ }));
5683
+ callback == null ? void 0 : callback(true);
5684
+ } catch (e) {
5685
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5686
+ loading: false,
5687
+ error: e.message
5688
+ }));
5689
+ callback == null ? void 0 : callback(null);
5690
+ }
5691
+ }
5692
+
5693
+ function* preEnrollMFAWebAuthnForLogin(_ref13) {
5694
+ let {
5695
+ payload: {
5696
+ callback
5697
+ }
5698
+ } = _ref13,
5699
+ payload = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(_ref13.payload, _excluded12);
5700
+
5701
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5702
+ loading: true
5703
+ }));
5704
+
5705
+ try {
5706
+ var _data$options$exclude;
5707
+
5708
+ const data = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.preEnrollMFAWebAuthnForLogin, payload);
5709
+
5710
+ const options = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, data.options, {
5711
+ challenge: (0,_utils__WEBPACK_IMPORTED_MODULE_19__.base64urlDecode)(data.options.challenge),
5712
+ user: (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, data.options.user, {
5713
+ id: (0,_utils__WEBPACK_IMPORTED_MODULE_19__.base64urlDecode)(data.options.user.id)
5714
+ }),
5715
+ excludeCredentials: (_data$options$exclude = data.options.excludeCredentials) == null ? void 0 : _data$options$exclude.map(credentials => (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, credentials, {
5716
+ id: (0,_utils__WEBPACK_IMPORTED_MODULE_19__.base64urlDecode)(credentials.id)
5717
+ }))
5718
+ });
5719
+
5720
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5721
+ loading: false
5722
+ }));
5723
+ callback == null ? void 0 : callback({
5724
+ options,
5725
+ webauthnToken: data.webauthnToken
5726
+ });
5727
+ } catch (e) {
5728
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5729
+ loading: false,
5730
+ error: e.message
5731
+ }));
5732
+ callback == null ? void 0 : callback(null);
5733
+ }
5734
+ }
5735
+
5736
+ function* enrollMFAWebAuthnForLogin(_ref14) {
5737
+ let {
5738
+ payload: {
5739
+ callback
5740
+ }
5741
+ } = _ref14,
5742
+ payload = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(_ref14.payload, _excluded13);
5743
+
5744
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5745
+ loading: true
5746
+ }));
5747
+
5748
+ try {
5749
+ const publicKey = (0,_utils__WEBPACK_IMPORTED_MODULE_19__.publicKeyCredentialToJSON)(payload.publicKey);
5750
+ const data = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.enrollMFAWebAuthnForLogin, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, payload, {
5751
+ options: publicKey
5752
+ }));
5753
+ const response = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.generateLoginResponseV2, data);
5754
+ yield handleEnrollMFAResponse(response);
5755
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5756
+ loading: false
5757
+ }));
5758
+ callback == null ? void 0 : callback(true);
5759
+ } catch (e) {
5760
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5761
+ loading: false,
5762
+ error: e.message
5763
+ }));
5764
+ callback == null ? void 0 : callback(null);
5765
+ }
5766
+ }
5767
+
5768
+ function* enrollMFAAuthenticatorAppForLogin(_ref15) {
5769
+ let {
5770
+ payload: {
5771
+ callback
5772
+ }
5773
+ } = _ref15,
5774
+ payload = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(_ref15.payload, _excluded14);
5775
+
5776
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5777
+ loading: true
5778
+ }));
5779
+
5780
+ try {
5781
+ const data = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.enrollMFAAuthenticatorAppForLogin, payload);
5782
+ const response = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.generateLoginResponseV2, data);
5783
+ yield handleEnrollMFAResponse(response);
5784
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5785
+ loading: false
5786
+ }));
5787
+ callback == null ? void 0 : callback(true);
5788
+ } catch (e) {
5789
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5790
+ loading: false,
5791
+ error: e.message
5792
+ }));
5793
+ callback == null ? void 0 : callback(null);
5794
+ }
5795
+ }
5796
+
5797
+ function* preVerifyMFASMSForLogin(_ref16) {
5798
+ let {
5799
+ payload: {
5800
+ callback,
5801
+ deviceId
5802
+ }
5803
+ } = _ref16,
5804
+ payload = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(_ref16.payload, _excluded15);
5805
+
5806
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5807
+ loading: true
5808
+ }));
5809
+
5810
+ try {
5811
+ const data = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.preVerifyMFASMSForLogin, deviceId, payload);
5812
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setMfaState({
5813
+ otcToken: data.otcToken,
5814
+ step: _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_9__.MFAStep.smsVerifyCode,
5815
+ phoneNumber: data.phoneNumber
5816
+ }));
5817
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5818
+ loading: false
5819
+ }));
5820
+ callback == null ? void 0 : callback(true);
5821
+ } catch (e) {
5822
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5823
+ loading: false,
5824
+ error: e.message
5825
+ }));
5826
+ callback == null ? void 0 : callback(null);
5827
+ }
5828
+ }
5829
+
5830
+ function* verifyMFASMSForLogin(_ref17) {
5831
+ let {
5832
+ payload: {
5833
+ callback,
5834
+ deviceId
5835
+ }
5836
+ } = _ref17,
5837
+ payload = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(_ref17.payload, _excluded16);
5838
+
5839
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5840
+ loading: true
5841
+ }));
5842
+
5843
+ try {
5844
+ const data = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.verifyMFASMSForLogin, deviceId, payload);
5845
+ const response = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.generateLoginResponseV2, data);
5846
+ yield handleVerifyMFAResponse(response);
5847
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5848
+ loading: false
5849
+ }));
5850
+ callback == null ? void 0 : callback(true);
5851
+ } catch (e) {
5852
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5853
+ loading: false,
5854
+ error: e.message
5855
+ }));
5856
+ callback == null ? void 0 : callback(null);
5857
+ }
5858
+ }
5859
+
5860
+ function* preVerifyMFAWebAuthnForLogin(_ref18) {
5861
+ let {
5862
+ payload: {
5863
+ callback,
5864
+ deviceId
5865
+ }
5866
+ } = _ref18,
5867
+ payload = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(_ref18.payload, _excluded17);
5868
+
5869
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5870
+ loading: true
5871
+ }));
5872
+
5873
+ try {
5874
+ var _data$options$allowCr;
5875
+
5876
+ const data = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.preVerifyMFAWebAuthnForLogin, deviceId, payload);
5877
+
5878
+ const options = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, data.options, {
5879
+ challenge: (0,_utils__WEBPACK_IMPORTED_MODULE_19__.base64urlDecode)(data.options.challenge),
5880
+ allowCredentials: (_data$options$allowCr = data.options.allowCredentials) == null ? void 0 : _data$options$allowCr.map(credentials => (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, credentials, {
5881
+ id: (0,_utils__WEBPACK_IMPORTED_MODULE_19__.base64urlDecode)(credentials.id)
5882
+ }))
5883
+ });
5884
+
5885
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5886
+ loading: false
5887
+ }));
5888
+ callback == null ? void 0 : callback({
5889
+ options,
5890
+ webauthnToken: data.webauthnToken
5891
+ });
5892
+ } catch (e) {
5893
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5894
+ loading: false,
5895
+ error: e.message
5896
+ }));
5897
+ callback == null ? void 0 : callback(null);
5898
+ }
5899
+ }
5900
+
5901
+ function* verifyMFAWebAuthnForLogin(_ref19) {
5902
+ let {
5903
+ payload: {
5904
+ callback,
5905
+ deviceId
5906
+ }
5907
+ } = _ref19,
5908
+ payload = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(_ref19.payload, _excluded18);
5909
+
5910
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5911
+ loading: true
5912
+ }));
5913
+
5914
+ try {
5915
+ const {
5916
+ loginState
5917
+ } = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.select)(state => state.auth);
5918
+ const publicKey = (0,_utils__WEBPACK_IMPORTED_MODULE_19__.publicKeyCredentialToJSON)(payload.publicKey);
5919
+ const data = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.verifyMFAWebAuthnForLogin, deviceId, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, payload, {
5920
+ options: publicKey
5921
+ }));
5922
+ const response = yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.call)(_frontegg_rest_api__WEBPACK_IMPORTED_MODULE_8__.api.auth.generateLoginResponseV2, data);
5923
+ yield handleVerifyMFAResponse(response);
5924
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5925
+ loading: false
5926
+ }));
5927
+ callback == null ? void 0 : callback(true);
5928
+ } catch (e) {
5929
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setLoginState({
5930
+ loading: false,
5931
+ error: e.message
5932
+ }));
5933
+ callback == null ? void 0 : callback(null);
5934
+ }
5935
+ }
5936
+
5520
5937
  function* loginSagas() {
5521
5938
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.requestAuthorize, requestAuthorize);
5522
5939
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.requestAuthorizeSSR, requestAuthorizeSSR);
@@ -5541,6 +5958,15 @@ function* loginSagas() {
5541
5958
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.webAuthnVerifyNewDeviceSession, webAuthnVerifyNewDeviceSession);
5542
5959
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.afterAuthNavigation, afterAuthNavigation);
5543
5960
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.getUserIP, getUserIP);
5961
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.preEnrollMFASMSForLogin, preEnrollMFASMSForLogin);
5962
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.enrollMFASMSForLogin, enrollMFASMSForLogin);
5963
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.preEnrollMFAWebAuthnForLogin, preEnrollMFAWebAuthnForLogin);
5964
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.enrollMFAWebAuthnForLogin, enrollMFAWebAuthnForLogin);
5965
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.enrollMFAAuthenticatorAppForLogin, enrollMFAAuthenticatorAppForLogin);
5966
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.preVerifyMFASMSForLogin, preVerifyMFASMSForLogin);
5967
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.verifyMFASMSForLogin, verifyMFASMSForLogin);
5968
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.preVerifyMFAWebAuthnForLogin, preVerifyMFAWebAuthnForLogin);
5969
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.takeLeading)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.verifyMFAWebAuthnForLogin, verifyMFAWebAuthnForLogin);
5544
5970
  }
5545
5971
  /*********************************
5546
5972
  * Preview Sagas
@@ -5555,7 +5981,7 @@ function* requestAuthorizeMock({
5555
5981
  }));
5556
5982
  }
5557
5983
 
5558
- const user = _dummy__WEBPACK_IMPORTED_MODULE_19__.userDemo;
5984
+ const user = _dummy__WEBPACK_IMPORTED_MODULE_20__.userDemo;
5559
5985
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.loadTenants());
5560
5986
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setState({
5561
5987
  user,
@@ -5572,7 +5998,7 @@ function* getUserIPMock({
5572
5998
  try {
5573
5999
  const {
5574
6000
  ip
5575
- } = _dummy__WEBPACK_IMPORTED_MODULE_19__.dummyIps[0];
6001
+ } = _dummy__WEBPACK_IMPORTED_MODULE_20__.dummyIps[0];
5576
6002
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__.put)(_reducer__WEBPACK_IMPORTED_MODULE_7__.actions.setState({
5577
6003
  userIp: ip
5578
6004
  }));
@@ -5665,6 +6091,9 @@ let MFAStep;
5665
6091
  (function (MFAStep) {
5666
6092
  MFAStep["verify"] = "verify";
5667
6093
  MFAStep["recoveryCode"] = "recoveryCode";
6094
+ MFAStep["authenticatorApp"] = "authenticatorApp";
6095
+ MFAStep["smsSetPhoneNumber"] = "smsSetPhoneNumber";
6096
+ MFAStep["smsVerifyCode"] = "smsVerifyCode";
5668
6097
  })(MFAStep || (MFAStep = {}));
5669
6098
 
5670
6099
  /***/ }),
@@ -9968,10 +10397,9 @@ __webpack_require__.r(__webpack_exports__);
9968
10397
  /* harmony import */ var _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @frontegg/rest-api */ "../../node_modules/@frontegg/rest-api/index.js");
9969
10398
  /* harmony import */ var _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @frontegg/rest-api */ "../../node_modules/@frontegg/rest-api/ContextHolder/index.js");
9970
10399
  /* harmony import */ var _reducer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../reducer */ "../../dist/@frontegg/redux-store/auth/reducer.js");
9971
- /* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./interfaces */ "../../dist/@frontegg/redux-store/auth/SignUp/interfaces.js");
9972
- /* harmony import */ var _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../MfaState/interfaces */ "../../dist/@frontegg/redux-store/auth/MfaState/interfaces.js");
9973
- /* harmony import */ var _LoginState_interfaces__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../LoginState/interfaces */ "../../dist/@frontegg/redux-store/auth/LoginState/interfaces.js");
10400
+ /* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./interfaces */ "../../dist/@frontegg/redux-store/auth/SignUp/interfaces.js");
9974
10401
  /* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../interfaces */ "../../dist/@frontegg/redux-store/auth/interfaces.js");
10402
+ /* harmony import */ var _LoginState_saga__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../LoginState/saga */ "../../dist/@frontegg/redux-store/auth/LoginState/saga.js");
9975
10403
 
9976
10404
  const _excluded = ["events", "url"];
9977
10405
 
@@ -9980,7 +10408,6 @@ const _excluded = ["events", "url"];
9980
10408
 
9981
10409
 
9982
10410
 
9983
-
9984
10411
  function* loadAllowSignUps() {
9985
10412
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__.put)(_reducer__WEBPACK_IMPORTED_MODULE_2__.actions.setSignUpState({
9986
10413
  loading: true
@@ -10058,29 +10485,15 @@ function* signUpUser(_ref) {
10058
10485
  _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_5__.ContextHolder.setAccessToken(user == null ? void 0 : user.accessToken);
10059
10486
  _frontegg_rest_api__WEBPACK_IMPORTED_MODULE_5__.ContextHolder.setUser(user);
10060
10487
 
10061
- if (!shouldActivate && user != null && user.mfaRequired && user != null && user.mfaToken) {
10062
- let step = _LoginState_interfaces__WEBPACK_IMPORTED_MODULE_6__.LoginStep.loginWithTwoFactor;
10063
-
10064
- if (user.hasOwnProperty('mfaEnrolled') && !user.mfaEnrolled) {
10065
- yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__.put)(_reducer__WEBPACK_IMPORTED_MODULE_2__.actions.setMfaState({
10066
- step: _MfaState_interfaces__WEBPACK_IMPORTED_MODULE_7__.MFAStep.verify,
10067
- qrCode: user.qrCode,
10068
- recoveryCode: user.recoveryCode,
10069
- mfaToken: user.mfaToken,
10070
- loading: false
10071
- }));
10072
- step = _LoginState_interfaces__WEBPACK_IMPORTED_MODULE_6__.LoginStep.forceTwoFactor;
10073
- }
10074
-
10075
- yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__.put)(_reducer__WEBPACK_IMPORTED_MODULE_2__.actions.setLoginState({
10076
- step
10077
- }));
10488
+ if (!shouldActivate && user && (0,_LoginState_saga__WEBPACK_IMPORTED_MODULE_6__.isMfaRequired)(user)) {
10489
+ const mfaRequiredState = yield (0,_LoginState_saga__WEBPACK_IMPORTED_MODULE_6__.getMfaRequiredState)(user);
10490
+ yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__.put)(_reducer__WEBPACK_IMPORTED_MODULE_2__.actions.setState(mfaRequiredState));
10078
10491
  onRedirectTo(routes.loginUrl);
10079
10492
  } else {
10080
10493
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__.put)(_reducer__WEBPACK_IMPORTED_MODULE_2__.actions.setSignUpState({
10081
10494
  loading: false,
10082
10495
  shouldActivate,
10083
- stage: _interfaces__WEBPACK_IMPORTED_MODULE_8__.SignUpStage.SignUpSuccess
10496
+ stage: _interfaces__WEBPACK_IMPORTED_MODULE_7__.SignUpStage.SignUpSuccess
10084
10497
  }));
10085
10498
  yield (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__.put)(_reducer__WEBPACK_IMPORTED_MODULE_2__.actions.setState({
10086
10499
  user,
@@ -17035,7 +17448,7 @@ __webpack_require__.r(__webpack_exports__);
17035
17448
  /* harmony export */ });
17036
17449
  /* harmony import */ var _ThemeOptions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ThemeOptions */ "../../dist/@frontegg/types/ThemeOptions/index.js");
17037
17450
  /* harmony import */ var _Metadata__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Metadata */ "../../dist/@frontegg/types/Metadata/index.js");
17038
- /** @license Frontegg v6.45.0
17451
+ /** @license Frontegg v6.46.0-alpha.1
17039
17452
  *
17040
17453
  * This source code is licensed under the MIT license found in the
17041
17454
  * LICENSE file in the root directory of this source tree.
@@ -17280,6 +17693,9 @@ __webpack_require__.r(__webpack_exports__);
17280
17693
  /* harmony export */ "deleteTenantApiToken": () => (/* binding */ deleteTenantApiToken),
17281
17694
  /* harmony export */ "deleteUserApiToken": () => (/* binding */ deleteUserApiToken),
17282
17695
  /* harmony export */ "disableMfa": () => (/* binding */ disableMfa),
17696
+ /* harmony export */ "enrollMFAAuthenticatorAppForLogin": () => (/* binding */ enrollMFAAuthenticatorAppForLogin),
17697
+ /* harmony export */ "enrollMFASMSForLogin": () => (/* binding */ enrollMFASMSForLogin),
17698
+ /* harmony export */ "enrollMFAWebAuthnForLogin": () => (/* binding */ enrollMFAWebAuthnForLogin),
17283
17699
  /* harmony export */ "enrollMfa": () => (/* binding */ enrollMfa),
17284
17700
  /* harmony export */ "exchangeOAuthTokens": () => (/* binding */ exchangeOAuthTokens),
17285
17701
  /* harmony export */ "forgotPassword": () => (/* binding */ forgotPassword),
@@ -17327,9 +17743,14 @@ __webpack_require__.r(__webpack_exports__);
17327
17743
  /* harmony export */ "passwordlessPostLogin": () => (/* binding */ passwordlessPostLogin),
17328
17744
  /* harmony export */ "passwordlessPreLogin": () => (/* binding */ passwordlessPreLogin),
17329
17745
  /* harmony export */ "postLogin": () => (/* binding */ postLogin),
17746
+ /* harmony export */ "preEnrollMFAAuthenticatorAppForLogin": () => (/* binding */ preEnrollMFAAuthenticatorAppForLogin),
17747
+ /* harmony export */ "preEnrollMFASMSForLogin": () => (/* binding */ preEnrollMFASMSForLogin),
17748
+ /* harmony export */ "preEnrollMFAWebAuthnForLogin": () => (/* binding */ preEnrollMFAWebAuthnForLogin),
17330
17749
  /* harmony export */ "preLogin": () => (/* binding */ preLogin),
17331
17750
  /* harmony export */ "preLoginV2": () => (/* binding */ preLoginV2),
17332
17751
  /* harmony export */ "preLoginWithIdpType": () => (/* binding */ preLoginWithIdpType),
17752
+ /* harmony export */ "preVerifyMFASMSForLogin": () => (/* binding */ preVerifyMFASMSForLogin),
17753
+ /* harmony export */ "preVerifyMFAWebAuthnForLogin": () => (/* binding */ preVerifyMFAWebAuthnForLogin),
17333
17754
  /* harmony export */ "recoverMfaToken": () => (/* binding */ recoverMfaToken),
17334
17755
  /* harmony export */ "refreshToken": () => (/* binding */ refreshToken),
17335
17756
  /* harmony export */ "refreshTokenV2": () => (/* binding */ refreshTokenV2),
@@ -17361,6 +17782,9 @@ __webpack_require__.r(__webpack_exports__);
17361
17782
  /* harmony export */ "validateSamlDomain": () => (/* binding */ validateSamlDomain),
17362
17783
  /* harmony export */ "verifyChangePhoneNumber": () => (/* binding */ verifyChangePhoneNumber),
17363
17784
  /* harmony export */ "verifyInviteToken": () => (/* binding */ verifyInviteToken),
17785
+ /* harmony export */ "verifyMFAAuthenticatorAppForLogin": () => (/* binding */ verifyMFAAuthenticatorAppForLogin),
17786
+ /* harmony export */ "verifyMFASMSForLogin": () => (/* binding */ verifyMFASMSForLogin),
17787
+ /* harmony export */ "verifyMFAWebAuthnForLogin": () => (/* binding */ verifyMFAWebAuthnForLogin),
17364
17788
  /* harmony export */ "verifyMfa": () => (/* binding */ verifyMfa),
17365
17789
  /* harmony export */ "verifyNewDeviceSession": () => (/* binding */ verifyNewDeviceSession),
17366
17790
  /* harmony export */ "verifyResetPhoneNumber": () => (/* binding */ verifyResetPhoneNumber),
@@ -17513,6 +17937,39 @@ async function verifyMfa(body) {
17513
17937
  async function disableMfa(body) {
17514
17938
  return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Post)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.identity.users.v1}/mfa/disable`, body);
17515
17939
  }
17940
+ async function preEnrollMFAAuthenticatorAppForLogin(body) {
17941
+ return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Post)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.identity.auth.v1}/user/mfa/authenticator/enroll`, body);
17942
+ }
17943
+ async function enrollMFAAuthenticatorAppForLogin(body) {
17944
+ return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Post)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.identity.auth.v1}/user/mfa/authenticator/enroll/verify`, body);
17945
+ }
17946
+ async function verifyMFAAuthenticatorAppForLogin(deviceId, body) {
17947
+ return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Post)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.identity.auth.v1}/user/mfa/authenticator/${deviceId}/verify`, body);
17948
+ }
17949
+ async function preEnrollMFASMSForLogin(body) {
17950
+ return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Post)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.identity.auth.v1}/user/mfa/sms/enroll`, body);
17951
+ }
17952
+ async function enrollMFASMSForLogin(body) {
17953
+ return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Post)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.identity.auth.v1}/user/mfa/sms/enroll/verify`, body);
17954
+ }
17955
+ async function preVerifyMFASMSForLogin(deviceId, body) {
17956
+ return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Post)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.identity.auth.v1}/user/mfa/sms/${deviceId}`, body);
17957
+ }
17958
+ async function verifyMFASMSForLogin(deviceId, body) {
17959
+ return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Post)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.identity.auth.v1}/user/mfa/sms/${deviceId}/verify`, body);
17960
+ }
17961
+ async function preEnrollMFAWebAuthnForLogin(body) {
17962
+ return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Post)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.identity.auth.v1}/user/mfa/webauthn/enroll`, body);
17963
+ }
17964
+ async function enrollMFAWebAuthnForLogin(body) {
17965
+ return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Post)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.identity.auth.v1}/user/mfa/webauthn/enroll/verify`, body);
17966
+ }
17967
+ async function preVerifyMFAWebAuthnForLogin(deviceId, body) {
17968
+ return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Post)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.identity.auth.v1}/user/mfa/webauthn/${deviceId}`, body);
17969
+ }
17970
+ async function verifyMFAWebAuthnForLogin(deviceId, body) {
17971
+ return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Post)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.identity.auth.v1}/user/mfa/webauthn/${deviceId}/verify`, body);
17972
+ }
17516
17973
  async function getSamlConfiguration() {
17517
17974
  return (0,_fetch__WEBPACK_IMPORTED_MODULE_5__.Get)(`${_constants__WEBPACK_IMPORTED_MODULE_6__.urls.team.sso.v1}/saml/configurations`);
17518
17975
  }
@@ -17815,8 +18272,10 @@ async function getVendorPublicAuthStrategiesConfig() {
17815
18272
  "use strict";
17816
18273
  __webpack_require__.r(__webpack_exports__);
17817
18274
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
18275
+ /* harmony export */ "MFAStrategyEnum": () => (/* binding */ MFAStrategyEnum),
17818
18276
  /* harmony export */ "RestrictionType": () => (/* reexport safe */ _secutiry_poilicy_interfaces__WEBPACK_IMPORTED_MODULE_0__.RestrictionType),
17819
- /* harmony export */ "SecondaryAuthStrategy": () => (/* binding */ SecondaryAuthStrategy)
18277
+ /* harmony export */ "SecondaryAuthStrategy": () => (/* binding */ SecondaryAuthStrategy),
18278
+ /* harmony export */ "WebAuthnDeviceType": () => (/* binding */ WebAuthnDeviceType)
17820
18279
  /* harmony export */ });
17821
18280
  /* harmony import */ var _secutiry_poilicy_interfaces__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./secutiry-poilicy/interfaces */ "../../node_modules/@frontegg/rest-api/auth/secutiry-poilicy/interfaces.js");
17822
18281
 
@@ -17836,6 +18295,22 @@ let SecondaryAuthStrategy;
17836
18295
  SecondaryAuthStrategy["SmsCode"] = "SmsCode";
17837
18296
  })(SecondaryAuthStrategy || (SecondaryAuthStrategy = {}));
17838
18297
 
18298
+ let WebAuthnDeviceType;
18299
+
18300
+ (function (WebAuthnDeviceType) {
18301
+ WebAuthnDeviceType["Android"] = "Android";
18302
+ WebAuthnDeviceType["USBKey"] = "USBKey";
18303
+ WebAuthnDeviceType["TouchID"] = "TouchID";
18304
+ })(WebAuthnDeviceType || (WebAuthnDeviceType = {}));
18305
+
18306
+ let MFAStrategyEnum;
18307
+
18308
+ (function (MFAStrategyEnum) {
18309
+ MFAStrategyEnum["AuthenticatorApp"] = "AuthenticatorApp";
18310
+ MFAStrategyEnum["WebAuthn"] = "WebAuthn";
18311
+ MFAStrategyEnum["SMS"] = "SMS";
18312
+ })(MFAStrategyEnum || (MFAStrategyEnum = {}));
18313
+
17839
18314
  /***/ }),
17840
18315
 
17841
18316
  /***/ "../../node_modules/@frontegg/rest-api/auth/secutiry-poilicy/index.js":
@@ -18634,12 +19109,14 @@ __webpack_require__.r(__webpack_exports__);
18634
19109
  /* harmony export */ "FronteggContext": () => (/* reexport safe */ _ContextHolder__WEBPACK_IMPORTED_MODULE_18__.FronteggContext),
18635
19110
  /* harmony export */ "ISubscriptionCancellationPolicy": () => (/* reexport safe */ _subscriptions__WEBPACK_IMPORTED_MODULE_21__.ISubscriptionCancellationPolicy),
18636
19111
  /* harmony export */ "ISubscriptionStatus": () => (/* reexport safe */ _subscriptions__WEBPACK_IMPORTED_MODULE_21__.ISubscriptionStatus),
19112
+ /* harmony export */ "MFAStrategyEnum": () => (/* reexport safe */ _auth_interfaces__WEBPACK_IMPORTED_MODULE_0__.MFAStrategyEnum),
18637
19113
  /* harmony export */ "PaymentMethodType": () => (/* reexport safe */ _subscriptions__WEBPACK_IMPORTED_MODULE_21__.PaymentMethodType),
18638
19114
  /* harmony export */ "ProviderType": () => (/* reexport safe */ _subscriptions__WEBPACK_IMPORTED_MODULE_21__.ProviderType),
18639
19115
  /* harmony export */ "RestrictionType": () => (/* reexport safe */ _auth_interfaces__WEBPACK_IMPORTED_MODULE_0__.RestrictionType),
18640
19116
  /* harmony export */ "SecondaryAuthStrategy": () => (/* reexport safe */ _auth_interfaces__WEBPACK_IMPORTED_MODULE_0__.SecondaryAuthStrategy),
18641
19117
  /* harmony export */ "SocialLoginProviders": () => (/* reexport safe */ _auth__WEBPACK_IMPORTED_MODULE_20__.SocialLoginProviders),
18642
19118
  /* harmony export */ "TenantType": () => (/* reexport safe */ _tenants_interfaces__WEBPACK_IMPORTED_MODULE_1__.TenantType),
19119
+ /* harmony export */ "WebAuthnDeviceType": () => (/* reexport safe */ _auth_interfaces__WEBPACK_IMPORTED_MODULE_0__.WebAuthnDeviceType),
18643
19120
  /* harmony export */ "api": () => (/* binding */ api),
18644
19121
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
18645
19122
  /* harmony export */ "fetch": () => (/* reexport module object */ _fetch__WEBPACK_IMPORTED_MODULE_17__),
@@ -18670,7 +19147,7 @@ __webpack_require__.r(__webpack_exports__);
18670
19147
  /* harmony import */ var _routers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./routers */ "../../node_modules/@frontegg/rest-api/routers.js");
18671
19148
  /* harmony import */ var _auth__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./auth */ "../../node_modules/@frontegg/rest-api/auth/enums.js");
18672
19149
  /* harmony import */ var _subscriptions__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./subscriptions */ "../../node_modules/@frontegg/rest-api/subscriptions/enums.js");
18673
- /** @license Frontegg v3.0.34
19150
+ /** @license Frontegg v3.0.36
18674
19151
  *
18675
19152
  * This source code is licensed under the MIT license found in the
18676
19153
  * LICENSE file in the root directory of this source tree.