@azure/msal-browser 4.24.0 → 4.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (477) hide show
  1. package/dist/app/IPublicClientApplication.mjs +1 -1
  2. package/dist/app/PublicClientApplication.mjs +1 -1
  3. package/dist/app/PublicClientNext.mjs +1 -1
  4. package/dist/broker/nativeBroker/NativeStatusCodes.mjs +1 -1
  5. package/dist/broker/nativeBroker/PlatformAuthDOMHandler.mjs +1 -1
  6. package/dist/broker/nativeBroker/PlatformAuthExtensionHandler.mjs +1 -1
  7. package/dist/broker/nativeBroker/PlatformAuthProvider.mjs +1 -1
  8. package/dist/cache/AccountManager.mjs +1 -1
  9. package/dist/cache/AsyncMemoryStorage.mjs +1 -1
  10. package/dist/cache/BrowserCacheManager.mjs +1 -1
  11. package/dist/cache/CacheHelpers.mjs +1 -1
  12. package/dist/cache/CacheKeys.mjs +1 -1
  13. package/dist/cache/CookieStorage.mjs +1 -1
  14. package/dist/cache/DatabaseStorage.mjs +1 -1
  15. package/dist/cache/EncryptedData.mjs +1 -1
  16. package/dist/cache/LocalStorage.mjs +1 -1
  17. package/dist/cache/MemoryStorage.mjs +1 -1
  18. package/dist/cache/SessionStorage.mjs +1 -1
  19. package/dist/cache/TokenCache.mjs +1 -1
  20. package/dist/config/Configuration.mjs +1 -1
  21. package/dist/controllers/ControllerFactory.mjs +1 -1
  22. package/dist/controllers/NestedAppAuthController.mjs +1 -1
  23. package/dist/controllers/StandardController.d.ts.map +1 -1
  24. package/dist/controllers/StandardController.mjs +2 -1
  25. package/dist/controllers/StandardController.mjs.map +1 -1
  26. package/dist/controllers/UnknownOperatingContextController.mjs +1 -1
  27. package/dist/crypto/BrowserCrypto.mjs +1 -1
  28. package/dist/crypto/CryptoOps.mjs +1 -1
  29. package/dist/crypto/PkceGenerator.mjs +1 -1
  30. package/dist/crypto/SignedHttpRequest.mjs +1 -1
  31. package/dist/custom-auth-path/app/PublicClientApplication.mjs +1 -1
  32. package/dist/custom-auth-path/broker/nativeBroker/NativeStatusCodes.mjs +1 -1
  33. package/dist/custom-auth-path/broker/nativeBroker/PlatformAuthDOMHandler.mjs +1 -1
  34. package/dist/custom-auth-path/broker/nativeBroker/PlatformAuthExtensionHandler.mjs +1 -1
  35. package/dist/custom-auth-path/broker/nativeBroker/PlatformAuthProvider.mjs +1 -1
  36. package/dist/custom-auth-path/cache/AccountManager.mjs +1 -1
  37. package/dist/custom-auth-path/cache/AsyncMemoryStorage.mjs +1 -1
  38. package/dist/custom-auth-path/cache/BrowserCacheManager.mjs +1 -1
  39. package/dist/custom-auth-path/cache/CacheHelpers.mjs +1 -1
  40. package/dist/custom-auth-path/cache/CacheKeys.mjs +1 -1
  41. package/dist/custom-auth-path/cache/CookieStorage.mjs +1 -1
  42. package/dist/custom-auth-path/cache/DatabaseStorage.mjs +1 -1
  43. package/dist/custom-auth-path/cache/EncryptedData.mjs +1 -1
  44. package/dist/custom-auth-path/cache/LocalStorage.mjs +1 -1
  45. package/dist/custom-auth-path/cache/MemoryStorage.mjs +1 -1
  46. package/dist/custom-auth-path/cache/SessionStorage.mjs +1 -1
  47. package/dist/custom-auth-path/cache/TokenCache.mjs +1 -1
  48. package/dist/custom-auth-path/config/Configuration.mjs +1 -1
  49. package/dist/custom-auth-path/controllers/ControllerFactory.mjs +1 -1
  50. package/dist/custom-auth-path/controllers/StandardController.d.ts.map +1 -1
  51. package/dist/custom-auth-path/controllers/StandardController.mjs +2 -1
  52. package/dist/custom-auth-path/controllers/StandardController.mjs.map +1 -1
  53. package/dist/custom-auth-path/crypto/BrowserCrypto.mjs +1 -1
  54. package/dist/custom-auth-path/crypto/CryptoOps.mjs +1 -1
  55. package/dist/custom-auth-path/crypto/PkceGenerator.mjs +1 -1
  56. package/dist/custom-auth-path/custom_auth/CustomAuthConstants.d.ts +1 -1
  57. package/dist/custom-auth-path/custom_auth/CustomAuthConstants.mjs +1 -1
  58. package/dist/custom-auth-path/custom_auth/CustomAuthPublicClientApplication.mjs +1 -1
  59. package/dist/custom-auth-path/custom_auth/controller/CustomAuthStandardController.d.ts +1 -0
  60. package/dist/custom-auth-path/custom_auth/controller/CustomAuthStandardController.d.ts.map +1 -1
  61. package/dist/custom-auth-path/custom_auth/controller/CustomAuthStandardController.mjs +25 -2
  62. package/dist/custom-auth-path/custom_auth/controller/CustomAuthStandardController.mjs.map +1 -1
  63. package/dist/custom-auth-path/custom_auth/core/CustomAuthAuthority.mjs +1 -1
  64. package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowErrorBase.d.ts.map +1 -1
  65. package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowErrorBase.mjs +6 -6
  66. package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowErrorBase.mjs.map +1 -1
  67. package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowResultBase.mjs +1 -1
  68. package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowState.mjs +1 -1
  69. package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/error_type/AuthMethodRegistrationError.mjs +1 -1
  70. package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/result/AuthMethodRegistrationChallengeMethodResult.mjs +1 -1
  71. package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/result/AuthMethodRegistrationSubmitChallengeResult.mjs +1 -1
  72. package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/state/AuthMethodRegistrationCompletedState.mjs +1 -1
  73. package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/state/AuthMethodRegistrationFailedState.mjs +1 -1
  74. package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/state/AuthMethodRegistrationState.mjs +1 -1
  75. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts +5 -0
  76. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts.map +1 -1
  77. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/error_type/MfaError.mjs +42 -0
  78. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/error_type/MfaError.mjs.map +1 -0
  79. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/result/MfaRequestChallengeResult.mjs +45 -0
  80. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/result/MfaRequestChallengeResult.mjs.map +1 -0
  81. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/result/MfaSubmitChallengeResult.mjs +45 -0
  82. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/result/MfaSubmitChallengeResult.mjs.map +1 -0
  83. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaCompletedState.mjs +16 -0
  84. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaCompletedState.mjs.map +1 -0
  85. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaFailedState.mjs +16 -0
  86. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaFailedState.mjs.map +1 -0
  87. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaState.mjs +125 -0
  88. package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaState.mjs.map +1 -0
  89. package/dist/custom-auth-path/custom_auth/core/error/CustomAuthApiError.mjs +1 -1
  90. package/dist/custom-auth-path/custom_auth/core/error/CustomAuthError.mjs +1 -1
  91. package/dist/custom-auth-path/custom_auth/core/error/HttpError.mjs +1 -1
  92. package/dist/custom-auth-path/custom_auth/core/error/HttpErrorCodes.mjs +1 -1
  93. package/dist/custom-auth-path/custom_auth/core/error/InvalidArgumentError.mjs +1 -1
  94. package/dist/custom-auth-path/custom_auth/core/error/InvalidConfigurationError.mjs +1 -1
  95. package/dist/custom-auth-path/custom_auth/core/error/InvalidConfigurationErrorCodes.mjs +1 -1
  96. package/dist/custom-auth-path/custom_auth/core/error/MethodNotImplementedError.mjs +1 -1
  97. package/dist/custom-auth-path/custom_auth/core/error/MsalCustomAuthError.mjs +1 -1
  98. package/dist/custom-auth-path/custom_auth/core/error/NoCachedAccountFoundError.mjs +1 -1
  99. package/dist/custom-auth-path/custom_auth/core/error/ParsedUrlError.mjs +1 -1
  100. package/dist/custom-auth-path/custom_auth/core/error/ParsedUrlErrorCodes.mjs +1 -1
  101. package/dist/custom-auth-path/custom_auth/core/error/UnexpectedError.mjs +1 -1
  102. package/dist/custom-auth-path/custom_auth/core/error/UnsupportedEnvironmentError.mjs +1 -1
  103. package/dist/custom-auth-path/custom_auth/core/error/UserAccountAttributeError.mjs +1 -1
  104. package/dist/custom-auth-path/custom_auth/core/error/UserAlreadySignedInError.mjs +1 -1
  105. package/dist/custom-auth-path/custom_auth/core/interaction_client/CustomAuthInteractionClientBase.mjs +1 -1
  106. package/dist/custom-auth-path/custom_auth/core/interaction_client/CustomAuthInterationClientFactory.mjs +1 -1
  107. package/dist/custom-auth-path/custom_auth/core/interaction_client/jit/JitClient.mjs +1 -1
  108. package/dist/custom-auth-path/custom_auth/core/interaction_client/jit/result/JitActionResult.mjs +1 -1
  109. package/dist/custom-auth-path/custom_auth/core/interaction_client/mfa/MfaClient.mjs +85 -0
  110. package/dist/custom-auth-path/custom_auth/core/interaction_client/mfa/MfaClient.mjs.map +1 -0
  111. package/dist/custom-auth-path/custom_auth/core/interaction_client/mfa/result/MfaActionResult.mjs +24 -0
  112. package/dist/custom-auth-path/custom_auth/core/interaction_client/mfa/result/MfaActionResult.mjs.map +1 -0
  113. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/BaseApiClient.mjs +1 -1
  114. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiClient.d.ts.map +1 -1
  115. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiClient.mjs +2 -2
  116. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiClient.mjs.map +1 -1
  117. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.mjs +1 -1
  118. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/RegisterApiClient.mjs +1 -1
  119. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/ResetPasswordApiClient.mjs +1 -1
  120. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/SignInApiClient.mjs +1 -1
  121. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/SignupApiClient.mjs +1 -1
  122. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.d.ts +1 -0
  123. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.d.ts.map +1 -1
  124. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.mjs +4 -3
  125. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.mjs.map +1 -1
  126. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts +1 -0
  127. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts.map +1 -1
  128. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.mjs +4 -3
  129. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.mjs.map +1 -1
  130. package/dist/custom-auth-path/custom_auth/core/network_client/http_client/FetchHttpClient.mjs +1 -1
  131. package/dist/custom-auth-path/custom_auth/core/network_client/http_client/IHttpClient.mjs +1 -1
  132. package/dist/custom-auth-path/custom_auth/core/telemetry/PublicApiId.mjs +6 -3
  133. package/dist/custom-auth-path/custom_auth/core/telemetry/PublicApiId.mjs.map +1 -1
  134. package/dist/custom-auth-path/custom_auth/core/utils/ArgumentValidator.mjs +1 -1
  135. package/dist/custom-auth-path/custom_auth/core/utils/UrlUtils.mjs +1 -1
  136. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/CustomAuthAccountData.mjs +1 -1
  137. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/error_type/GetAccountError.mjs +1 -1
  138. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/result/GetAccessTokenResult.mjs +1 -1
  139. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/result/GetAccountResult.mjs +1 -1
  140. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/result/SignOutResult.mjs +1 -1
  141. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/state/GetAccessTokenState.mjs +1 -1
  142. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/state/GetAccountState.mjs +1 -1
  143. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/state/SignOutState.mjs +1 -1
  144. package/dist/custom-auth-path/custom_auth/get_account/interaction_client/CustomAuthSilentCacheClient.d.ts.map +1 -1
  145. package/dist/custom-auth-path/custom_auth/get_account/interaction_client/CustomAuthSilentCacheClient.mjs +15 -13
  146. package/dist/custom-auth-path/custom_auth/get_account/interaction_client/CustomAuthSilentCacheClient.mjs.map +1 -1
  147. package/dist/custom-auth-path/custom_auth/index.d.ts +7 -0
  148. package/dist/custom-auth-path/custom_auth/index.d.ts.map +1 -1
  149. package/dist/custom-auth-path/custom_auth/index.mjs +7 -1
  150. package/dist/custom-auth-path/custom_auth/index.mjs.map +1 -1
  151. package/dist/custom-auth-path/custom_auth/operating_context/CustomAuthOperatingContext.mjs +1 -1
  152. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/error_type/ResetPasswordError.mjs +1 -1
  153. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordResendCodeResult.mjs +1 -1
  154. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordStartResult.mjs +1 -1
  155. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordSubmitCodeResult.mjs +1 -1
  156. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordSubmitPasswordResult.mjs +1 -1
  157. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordCodeRequiredState.d.ts.map +1 -1
  158. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordCodeRequiredState.mjs +3 -1
  159. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordCodeRequiredState.mjs.map +1 -1
  160. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordCompletedState.mjs +1 -1
  161. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordFailedState.mjs +1 -1
  162. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordPasswordRequiredState.d.ts.map +1 -1
  163. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordPasswordRequiredState.mjs +2 -1
  164. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordPasswordRequiredState.mjs.map +1 -1
  165. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordState.mjs +1 -1
  166. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordStateParameters.d.ts +2 -0
  167. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordStateParameters.d.ts.map +1 -1
  168. package/dist/custom-auth-path/custom_auth/reset_password/interaction_client/ResetPasswordClient.mjs +1 -1
  169. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/SignInScenario.mjs +1 -1
  170. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/error_type/SignInError.mjs +1 -1
  171. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInResendCodeResult.mjs +1 -1
  172. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInResult.d.ts +10 -1
  173. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInResult.d.ts.map +1 -1
  174. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInResult.mjs +9 -1
  175. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInResult.mjs.map +1 -1
  176. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.d.ts +19 -1
  177. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.d.ts.map +1 -1
  178. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.mjs +17 -1
  179. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.mjs.map +1 -1
  180. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.d.ts +10 -1
  181. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.d.ts.map +1 -1
  182. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.mjs +9 -1
  183. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.mjs.map +1 -1
  184. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.d.ts.map +1 -1
  185. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.mjs +6 -13
  186. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.mjs.map +1 -1
  187. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInCompletedState.mjs +1 -1
  188. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInContinuationState.d.ts.map +1 -1
  189. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInContinuationState.mjs +5 -33
  190. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInContinuationState.mjs.map +1 -1
  191. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInFailedState.mjs +1 -1
  192. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInPasswordRequiredState.d.ts.map +1 -1
  193. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInPasswordRequiredState.mjs +5 -30
  194. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInPasswordRequiredState.mjs.map +1 -1
  195. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInState.d.ts +16 -0
  196. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInState.d.ts.map +1 -1
  197. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInState.mjs +68 -1
  198. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInState.mjs.map +1 -1
  199. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInStateParameters.d.ts +2 -0
  200. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInStateParameters.d.ts.map +1 -1
  201. package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/SignInClient.mjs +1 -1
  202. package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/result/SignInActionResult.mjs +1 -1
  203. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/error_type/SignUpError.mjs +1 -1
  204. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpResendCodeResult.mjs +1 -1
  205. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpResult.mjs +1 -1
  206. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpSubmitAttributesResult.mjs +1 -1
  207. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpSubmitCodeResult.mjs +1 -1
  208. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpSubmitPasswordResult.mjs +1 -1
  209. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpAttributesRequiredState.d.ts.map +1 -1
  210. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpAttributesRequiredState.mjs +2 -1
  211. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpAttributesRequiredState.mjs.map +1 -1
  212. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpCodeRequiredState.d.ts.map +1 -1
  213. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpCodeRequiredState.mjs +5 -1
  214. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpCodeRequiredState.mjs.map +1 -1
  215. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpCompletedState.mjs +1 -1
  216. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpFailedState.mjs +1 -1
  217. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpPasswordRequiredState.d.ts.map +1 -1
  218. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpPasswordRequiredState.mjs +3 -1
  219. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpPasswordRequiredState.mjs.map +1 -1
  220. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpState.mjs +1 -1
  221. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpStateParameters.d.ts +2 -0
  222. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpStateParameters.d.ts.map +1 -1
  223. package/dist/custom-auth-path/custom_auth/sign_up/interaction_client/SignUpClient.mjs +1 -1
  224. package/dist/custom-auth-path/custom_auth/sign_up/interaction_client/result/SignUpActionResult.mjs +1 -1
  225. package/dist/custom-auth-path/encode/Base64Decode.mjs +1 -1
  226. package/dist/custom-auth-path/encode/Base64Encode.mjs +1 -1
  227. package/dist/custom-auth-path/error/BrowserAuthError.mjs +1 -1
  228. package/dist/custom-auth-path/error/BrowserAuthErrorCodes.mjs +1 -1
  229. package/dist/custom-auth-path/error/BrowserConfigurationAuthError.mjs +1 -1
  230. package/dist/custom-auth-path/error/BrowserConfigurationAuthErrorCodes.mjs +1 -1
  231. package/dist/custom-auth-path/error/NativeAuthError.d.ts.map +1 -1
  232. package/dist/custom-auth-path/error/NativeAuthError.mjs +3 -2
  233. package/dist/custom-auth-path/error/NativeAuthError.mjs.map +1 -1
  234. package/dist/custom-auth-path/error/NativeAuthErrorCodes.d.ts +1 -0
  235. package/dist/custom-auth-path/error/NativeAuthErrorCodes.d.ts.map +1 -1
  236. package/dist/custom-auth-path/error/NativeAuthErrorCodes.mjs +3 -2
  237. package/dist/custom-auth-path/error/NativeAuthErrorCodes.mjs.map +1 -1
  238. package/dist/custom-auth-path/event/EventHandler.mjs +1 -1
  239. package/dist/custom-auth-path/event/EventType.mjs +1 -1
  240. package/dist/custom-auth-path/interaction_client/BaseInteractionClient.mjs +1 -1
  241. package/dist/custom-auth-path/interaction_client/HybridSpaAuthorizationCodeClient.mjs +1 -1
  242. package/dist/custom-auth-path/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
  243. package/dist/custom-auth-path/interaction_client/PlatformAuthInteractionClient.mjs +2 -1
  244. package/dist/custom-auth-path/interaction_client/PlatformAuthInteractionClient.mjs.map +1 -1
  245. package/dist/custom-auth-path/interaction_client/PopupClient.mjs +1 -1
  246. package/dist/custom-auth-path/interaction_client/RedirectClient.mjs +1 -1
  247. package/dist/custom-auth-path/interaction_client/SilentAuthCodeClient.mjs +1 -1
  248. package/dist/custom-auth-path/interaction_client/SilentCacheClient.mjs +1 -1
  249. package/dist/custom-auth-path/interaction_client/SilentIframeClient.mjs +1 -1
  250. package/dist/custom-auth-path/interaction_client/SilentRefreshClient.mjs +1 -1
  251. package/dist/custom-auth-path/interaction_client/StandardInteractionClient.mjs +1 -1
  252. package/dist/custom-auth-path/interaction_handler/InteractionHandler.mjs +1 -1
  253. package/dist/custom-auth-path/interaction_handler/SilentHandler.mjs +1 -1
  254. package/dist/custom-auth-path/navigation/NavigationClient.mjs +1 -1
  255. package/dist/custom-auth-path/network/FetchClient.mjs +1 -1
  256. package/dist/custom-auth-path/operatingcontext/BaseOperatingContext.mjs +1 -1
  257. package/dist/custom-auth-path/operatingcontext/StandardOperatingContext.mjs +1 -1
  258. package/dist/custom-auth-path/packageMetadata.d.ts +1 -1
  259. package/dist/custom-auth-path/packageMetadata.mjs +2 -2
  260. package/dist/custom-auth-path/protocol/Authorize.mjs +1 -1
  261. package/dist/custom-auth-path/request/RequestHelpers.mjs +1 -1
  262. package/dist/custom-auth-path/response/ResponseHandler.mjs +1 -1
  263. package/dist/custom-auth-path/utils/BrowserConstants.mjs +1 -1
  264. package/dist/custom-auth-path/utils/BrowserProtocolUtils.mjs +1 -1
  265. package/dist/custom-auth-path/utils/BrowserUtils.mjs +1 -1
  266. package/dist/custom-auth-path/utils/Helpers.mjs +1 -1
  267. package/dist/custom-auth-path/utils/MsalFrameStatsUtils.mjs +1 -1
  268. package/dist/custom_auth/CustomAuthConstants.d.ts +1 -1
  269. package/dist/custom_auth/controller/CustomAuthStandardController.d.ts +1 -0
  270. package/dist/custom_auth/controller/CustomAuthStandardController.d.ts.map +1 -1
  271. package/dist/custom_auth/core/auth_flow/AuthFlowErrorBase.d.ts.map +1 -1
  272. package/dist/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts +5 -0
  273. package/dist/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts.map +1 -1
  274. package/dist/custom_auth/core/network_client/custom_auth_api/CustomAuthApiClient.d.ts.map +1 -1
  275. package/dist/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.d.ts +1 -0
  276. package/dist/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.d.ts.map +1 -1
  277. package/dist/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts +1 -0
  278. package/dist/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts.map +1 -1
  279. package/dist/custom_auth/get_account/interaction_client/CustomAuthSilentCacheClient.d.ts.map +1 -1
  280. package/dist/custom_auth/index.d.ts +7 -0
  281. package/dist/custom_auth/index.d.ts.map +1 -1
  282. package/dist/custom_auth/reset_password/auth_flow/state/ResetPasswordCodeRequiredState.d.ts.map +1 -1
  283. package/dist/custom_auth/reset_password/auth_flow/state/ResetPasswordPasswordRequiredState.d.ts.map +1 -1
  284. package/dist/custom_auth/reset_password/auth_flow/state/ResetPasswordStateParameters.d.ts +2 -0
  285. package/dist/custom_auth/reset_password/auth_flow/state/ResetPasswordStateParameters.d.ts.map +1 -1
  286. package/dist/custom_auth/sign_in/auth_flow/result/SignInResult.d.ts +10 -1
  287. package/dist/custom_auth/sign_in/auth_flow/result/SignInResult.d.ts.map +1 -1
  288. package/dist/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.d.ts +19 -1
  289. package/dist/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.d.ts.map +1 -1
  290. package/dist/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.d.ts +10 -1
  291. package/dist/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.d.ts.map +1 -1
  292. package/dist/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.d.ts.map +1 -1
  293. package/dist/custom_auth/sign_in/auth_flow/state/SignInContinuationState.d.ts.map +1 -1
  294. package/dist/custom_auth/sign_in/auth_flow/state/SignInPasswordRequiredState.d.ts.map +1 -1
  295. package/dist/custom_auth/sign_in/auth_flow/state/SignInState.d.ts +16 -0
  296. package/dist/custom_auth/sign_in/auth_flow/state/SignInState.d.ts.map +1 -1
  297. package/dist/custom_auth/sign_in/auth_flow/state/SignInStateParameters.d.ts +2 -0
  298. package/dist/custom_auth/sign_in/auth_flow/state/SignInStateParameters.d.ts.map +1 -1
  299. package/dist/custom_auth/sign_up/auth_flow/state/SignUpAttributesRequiredState.d.ts.map +1 -1
  300. package/dist/custom_auth/sign_up/auth_flow/state/SignUpCodeRequiredState.d.ts.map +1 -1
  301. package/dist/custom_auth/sign_up/auth_flow/state/SignUpPasswordRequiredState.d.ts.map +1 -1
  302. package/dist/custom_auth/sign_up/auth_flow/state/SignUpStateParameters.d.ts +2 -0
  303. package/dist/custom_auth/sign_up/auth_flow/state/SignUpStateParameters.d.ts.map +1 -1
  304. package/dist/encode/Base64Decode.mjs +1 -1
  305. package/dist/encode/Base64Encode.mjs +1 -1
  306. package/dist/error/BrowserAuthError.mjs +1 -1
  307. package/dist/error/BrowserAuthErrorCodes.mjs +1 -1
  308. package/dist/error/BrowserConfigurationAuthError.mjs +1 -1
  309. package/dist/error/BrowserConfigurationAuthErrorCodes.mjs +1 -1
  310. package/dist/error/NativeAuthError.d.ts.map +1 -1
  311. package/dist/error/NativeAuthError.mjs +3 -2
  312. package/dist/error/NativeAuthError.mjs.map +1 -1
  313. package/dist/error/NativeAuthErrorCodes.d.ts +1 -0
  314. package/dist/error/NativeAuthErrorCodes.d.ts.map +1 -1
  315. package/dist/error/NativeAuthErrorCodes.mjs +3 -2
  316. package/dist/error/NativeAuthErrorCodes.mjs.map +1 -1
  317. package/dist/error/NestedAppAuthError.mjs +1 -1
  318. package/dist/event/EventHandler.mjs +1 -1
  319. package/dist/event/EventMessage.mjs +1 -1
  320. package/dist/event/EventType.mjs +1 -1
  321. package/dist/index.mjs +1 -1
  322. package/dist/interaction_client/BaseInteractionClient.mjs +1 -1
  323. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs +1 -1
  324. package/dist/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
  325. package/dist/interaction_client/PlatformAuthInteractionClient.mjs +2 -1
  326. package/dist/interaction_client/PlatformAuthInteractionClient.mjs.map +1 -1
  327. package/dist/interaction_client/PopupClient.mjs +1 -1
  328. package/dist/interaction_client/RedirectClient.mjs +1 -1
  329. package/dist/interaction_client/SilentAuthCodeClient.mjs +1 -1
  330. package/dist/interaction_client/SilentCacheClient.mjs +1 -1
  331. package/dist/interaction_client/SilentIframeClient.mjs +1 -1
  332. package/dist/interaction_client/SilentRefreshClient.mjs +1 -1
  333. package/dist/interaction_client/StandardInteractionClient.mjs +1 -1
  334. package/dist/interaction_handler/InteractionHandler.mjs +1 -1
  335. package/dist/interaction_handler/SilentHandler.mjs +1 -1
  336. package/dist/naa/BridgeError.mjs +1 -1
  337. package/dist/naa/BridgeProxy.mjs +1 -1
  338. package/dist/naa/BridgeStatusCode.mjs +1 -1
  339. package/dist/naa/mapping/NestedAppAuthAdapter.mjs +1 -1
  340. package/dist/navigation/NavigationClient.mjs +1 -1
  341. package/dist/network/FetchClient.mjs +1 -1
  342. package/dist/operatingcontext/BaseOperatingContext.mjs +1 -1
  343. package/dist/operatingcontext/NestedAppOperatingContext.mjs +1 -1
  344. package/dist/operatingcontext/StandardOperatingContext.mjs +1 -1
  345. package/dist/operatingcontext/UnknownOperatingContext.mjs +1 -1
  346. package/dist/packageMetadata.d.ts +1 -1
  347. package/dist/packageMetadata.mjs +2 -2
  348. package/dist/protocol/Authorize.mjs +1 -1
  349. package/dist/request/RequestHelpers.mjs +1 -1
  350. package/dist/response/ResponseHandler.mjs +1 -1
  351. package/dist/telemetry/BrowserPerformanceClient.mjs +1 -1
  352. package/dist/telemetry/BrowserPerformanceMeasurement.mjs +1 -1
  353. package/dist/utils/BrowserConstants.mjs +1 -1
  354. package/dist/utils/BrowserProtocolUtils.mjs +1 -1
  355. package/dist/utils/BrowserUtils.mjs +1 -1
  356. package/dist/utils/Helpers.mjs +1 -1
  357. package/dist/utils/MsalFrameStatsUtils.mjs +1 -1
  358. package/lib/custom-auth-path/msal-custom-auth.cjs +894 -468
  359. package/lib/custom-auth-path/msal-custom-auth.cjs.map +1 -1
  360. package/lib/custom-auth-path/types/controllers/StandardController.d.ts.map +1 -1
  361. package/lib/custom-auth-path/types/custom_auth/CustomAuthConstants.d.ts +1 -1
  362. package/lib/custom-auth-path/types/custom_auth/controller/CustomAuthStandardController.d.ts +1 -0
  363. package/lib/custom-auth-path/types/custom_auth/controller/CustomAuthStandardController.d.ts.map +1 -1
  364. package/lib/custom-auth-path/types/custom_auth/core/auth_flow/AuthFlowErrorBase.d.ts.map +1 -1
  365. package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts +5 -0
  366. package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts.map +1 -1
  367. package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/CustomAuthApiClient.d.ts.map +1 -1
  368. package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.d.ts +1 -0
  369. package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.d.ts.map +1 -1
  370. package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts +1 -0
  371. package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts.map +1 -1
  372. package/lib/custom-auth-path/types/custom_auth/get_account/interaction_client/CustomAuthSilentCacheClient.d.ts.map +1 -1
  373. package/lib/custom-auth-path/types/custom_auth/index.d.ts +7 -0
  374. package/lib/custom-auth-path/types/custom_auth/index.d.ts.map +1 -1
  375. package/lib/custom-auth-path/types/custom_auth/reset_password/auth_flow/state/ResetPasswordCodeRequiredState.d.ts.map +1 -1
  376. package/lib/custom-auth-path/types/custom_auth/reset_password/auth_flow/state/ResetPasswordPasswordRequiredState.d.ts.map +1 -1
  377. package/lib/custom-auth-path/types/custom_auth/reset_password/auth_flow/state/ResetPasswordStateParameters.d.ts +2 -0
  378. package/lib/custom-auth-path/types/custom_auth/reset_password/auth_flow/state/ResetPasswordStateParameters.d.ts.map +1 -1
  379. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/result/SignInResult.d.ts +10 -1
  380. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/result/SignInResult.d.ts.map +1 -1
  381. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.d.ts +19 -1
  382. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.d.ts.map +1 -1
  383. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.d.ts +10 -1
  384. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.d.ts.map +1 -1
  385. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.d.ts.map +1 -1
  386. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/state/SignInContinuationState.d.ts.map +1 -1
  387. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/state/SignInPasswordRequiredState.d.ts.map +1 -1
  388. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/state/SignInState.d.ts +16 -0
  389. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/state/SignInState.d.ts.map +1 -1
  390. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/state/SignInStateParameters.d.ts +2 -0
  391. package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/state/SignInStateParameters.d.ts.map +1 -1
  392. package/lib/custom-auth-path/types/custom_auth/sign_up/auth_flow/state/SignUpAttributesRequiredState.d.ts.map +1 -1
  393. package/lib/custom-auth-path/types/custom_auth/sign_up/auth_flow/state/SignUpCodeRequiredState.d.ts.map +1 -1
  394. package/lib/custom-auth-path/types/custom_auth/sign_up/auth_flow/state/SignUpPasswordRequiredState.d.ts.map +1 -1
  395. package/lib/custom-auth-path/types/custom_auth/sign_up/auth_flow/state/SignUpStateParameters.d.ts +2 -0
  396. package/lib/custom-auth-path/types/custom_auth/sign_up/auth_flow/state/SignUpStateParameters.d.ts.map +1 -1
  397. package/lib/custom-auth-path/types/error/NativeAuthError.d.ts.map +1 -1
  398. package/lib/custom-auth-path/types/error/NativeAuthErrorCodes.d.ts +1 -0
  399. package/lib/custom-auth-path/types/error/NativeAuthErrorCodes.d.ts.map +1 -1
  400. package/lib/custom-auth-path/types/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
  401. package/lib/custom-auth-path/types/packageMetadata.d.ts +1 -1
  402. package/lib/msal-browser.cjs +70 -66
  403. package/lib/msal-browser.cjs.map +1 -1
  404. package/lib/msal-browser.js +70 -66
  405. package/lib/msal-browser.js.map +1 -1
  406. package/lib/msal-browser.min.js +60 -60
  407. package/lib/types/controllers/StandardController.d.ts.map +1 -1
  408. package/lib/types/custom_auth/CustomAuthConstants.d.ts +1 -1
  409. package/lib/types/custom_auth/controller/CustomAuthStandardController.d.ts +1 -0
  410. package/lib/types/custom_auth/controller/CustomAuthStandardController.d.ts.map +1 -1
  411. package/lib/types/custom_auth/core/auth_flow/AuthFlowErrorBase.d.ts.map +1 -1
  412. package/lib/types/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts +5 -0
  413. package/lib/types/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts.map +1 -1
  414. package/lib/types/custom_auth/core/network_client/custom_auth_api/CustomAuthApiClient.d.ts.map +1 -1
  415. package/lib/types/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.d.ts +1 -0
  416. package/lib/types/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.d.ts.map +1 -1
  417. package/lib/types/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts +1 -0
  418. package/lib/types/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts.map +1 -1
  419. package/lib/types/custom_auth/get_account/interaction_client/CustomAuthSilentCacheClient.d.ts.map +1 -1
  420. package/lib/types/custom_auth/index.d.ts +7 -0
  421. package/lib/types/custom_auth/index.d.ts.map +1 -1
  422. package/lib/types/custom_auth/reset_password/auth_flow/state/ResetPasswordCodeRequiredState.d.ts.map +1 -1
  423. package/lib/types/custom_auth/reset_password/auth_flow/state/ResetPasswordPasswordRequiredState.d.ts.map +1 -1
  424. package/lib/types/custom_auth/reset_password/auth_flow/state/ResetPasswordStateParameters.d.ts +2 -0
  425. package/lib/types/custom_auth/reset_password/auth_flow/state/ResetPasswordStateParameters.d.ts.map +1 -1
  426. package/lib/types/custom_auth/sign_in/auth_flow/result/SignInResult.d.ts +10 -1
  427. package/lib/types/custom_auth/sign_in/auth_flow/result/SignInResult.d.ts.map +1 -1
  428. package/lib/types/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.d.ts +19 -1
  429. package/lib/types/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.d.ts.map +1 -1
  430. package/lib/types/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.d.ts +10 -1
  431. package/lib/types/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.d.ts.map +1 -1
  432. package/lib/types/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.d.ts.map +1 -1
  433. package/lib/types/custom_auth/sign_in/auth_flow/state/SignInContinuationState.d.ts.map +1 -1
  434. package/lib/types/custom_auth/sign_in/auth_flow/state/SignInPasswordRequiredState.d.ts.map +1 -1
  435. package/lib/types/custom_auth/sign_in/auth_flow/state/SignInState.d.ts +16 -0
  436. package/lib/types/custom_auth/sign_in/auth_flow/state/SignInState.d.ts.map +1 -1
  437. package/lib/types/custom_auth/sign_in/auth_flow/state/SignInStateParameters.d.ts +2 -0
  438. package/lib/types/custom_auth/sign_in/auth_flow/state/SignInStateParameters.d.ts.map +1 -1
  439. package/lib/types/custom_auth/sign_up/auth_flow/state/SignUpAttributesRequiredState.d.ts.map +1 -1
  440. package/lib/types/custom_auth/sign_up/auth_flow/state/SignUpCodeRequiredState.d.ts.map +1 -1
  441. package/lib/types/custom_auth/sign_up/auth_flow/state/SignUpPasswordRequiredState.d.ts.map +1 -1
  442. package/lib/types/custom_auth/sign_up/auth_flow/state/SignUpStateParameters.d.ts +2 -0
  443. package/lib/types/custom_auth/sign_up/auth_flow/state/SignUpStateParameters.d.ts.map +1 -1
  444. package/lib/types/error/NativeAuthError.d.ts.map +1 -1
  445. package/lib/types/error/NativeAuthErrorCodes.d.ts +1 -0
  446. package/lib/types/error/NativeAuthErrorCodes.d.ts.map +1 -1
  447. package/lib/types/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
  448. package/lib/types/packageMetadata.d.ts +1 -1
  449. package/package.json +1 -1
  450. package/src/controllers/StandardController.ts +1 -0
  451. package/src/custom_auth/controller/CustomAuthStandardController.ts +33 -0
  452. package/src/custom_auth/core/auth_flow/AuthFlowErrorBase.ts +3 -5
  453. package/src/custom_auth/core/auth_flow/mfa/error_type/MfaError.ts +8 -0
  454. package/src/custom_auth/core/network_client/custom_auth_api/CustomAuthApiClient.ts +2 -1
  455. package/src/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.ts +1 -0
  456. package/src/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.ts +1 -0
  457. package/src/custom_auth/get_account/interaction_client/CustomAuthSilentCacheClient.ts +17 -15
  458. package/src/custom_auth/index.ts +22 -0
  459. package/src/custom_auth/reset_password/auth_flow/state/ResetPasswordCodeRequiredState.ts +2 -0
  460. package/src/custom_auth/reset_password/auth_flow/state/ResetPasswordPasswordRequiredState.ts +1 -0
  461. package/src/custom_auth/reset_password/auth_flow/state/ResetPasswordStateParameters.ts +2 -0
  462. package/src/custom_auth/sign_in/auth_flow/result/SignInResult.ts +12 -1
  463. package/src/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.ts +27 -1
  464. package/src/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.ts +14 -1
  465. package/src/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.ts +12 -22
  466. package/src/custom_auth/sign_in/auth_flow/state/SignInContinuationState.ts +8 -50
  467. package/src/custom_auth/sign_in/auth_flow/state/SignInPasswordRequiredState.ts +12 -49
  468. package/src/custom_auth/sign_in/auth_flow/state/SignInState.ts +108 -0
  469. package/src/custom_auth/sign_in/auth_flow/state/SignInStateParameters.ts +2 -0
  470. package/src/custom_auth/sign_up/auth_flow/state/SignUpAttributesRequiredState.ts +1 -0
  471. package/src/custom_auth/sign_up/auth_flow/state/SignUpCodeRequiredState.ts +4 -0
  472. package/src/custom_auth/sign_up/auth_flow/state/SignUpPasswordRequiredState.ts +2 -0
  473. package/src/custom_auth/sign_up/auth_flow/state/SignUpStateParameters.ts +2 -0
  474. package/src/error/NativeAuthError.ts +1 -0
  475. package/src/error/NativeAuthErrorCodes.ts +1 -0
  476. package/src/interaction_client/PlatformAuthInteractionClient.ts +1 -0
  477. package/src/packageMetadata.ts +1 -1
@@ -31,6 +31,7 @@ import {
31
31
  SIGN_IN_PASSWORD_REQUIRED_RESULT_TYPE,
32
32
  SIGN_IN_COMPLETED_RESULT_TYPE,
33
33
  SIGN_IN_JIT_REQUIRED_RESULT_TYPE,
34
+ SIGN_IN_MFA_REQUIRED_RESULT_TYPE,
34
35
  } from "../sign_in/interaction_client/result/SignInActionResult.js";
35
36
  import { SignUpClient } from "../sign_up/interaction_client/SignUpClient.js";
36
37
  import { CustomAuthInterationClientFactory } from "../core/interaction_client/CustomAuthInterationClientFactory.js";
@@ -43,6 +44,7 @@ import { CustomAuthApiClient } from "../core/network_client/custom_auth_api/Cust
43
44
  import { FetchHttpClient } from "../core/network_client/http_client/FetchHttpClient.js";
44
45
  import { ResetPasswordClient } from "../reset_password/interaction_client/ResetPasswordClient.js";
45
46
  import { JitClient } from "../core/interaction_client/jit/JitClient.js";
47
+ import { MfaClient } from "../core/interaction_client/mfa/MfaClient.js";
46
48
  import { NoCachedAccountFoundError } from "../core/error/NoCachedAccountFoundError.js";
47
49
  import * as ArgumentValidator from "../core/utils/ArgumentValidator.js";
48
50
  import { UserAlreadySignedInError } from "../core/error/UserAlreadySignedInError.js";
@@ -52,6 +54,7 @@ import { SignInCodeRequiredState } from "../sign_in/auth_flow/state/SignInCodeRe
52
54
  import { SignInPasswordRequiredState } from "../sign_in/auth_flow/state/SignInPasswordRequiredState.js";
53
55
  import { SignInCompletedState } from "../sign_in/auth_flow/state/SignInCompletedState.js";
54
56
  import { AuthMethodRegistrationRequiredState } from "../core/auth_flow/jit/state/AuthMethodRegistrationState.js";
57
+ import { MfaAwaitingState } from "../core/auth_flow/mfa/state/MfaState.js";
55
58
  import { SignUpCodeRequiredState } from "../sign_up/auth_flow/state/SignUpCodeRequiredState.js";
56
59
  import { SignUpPasswordRequiredState } from "../sign_up/auth_flow/state/SignUpPasswordRequiredState.js";
57
60
  import { ResetPasswordCodeRequiredState } from "../reset_password/auth_flow/state/ResetPasswordCodeRequiredState.js";
@@ -68,6 +71,7 @@ export class CustomAuthStandardController
68
71
  private readonly signUpClient: SignUpClient;
69
72
  private readonly resetPasswordClient: ResetPasswordClient;
70
73
  private readonly jitClient: JitClient;
74
+ private readonly mfaClient: MfaClient;
71
75
  private readonly cacheClient: CustomAuthSilentCacheClient;
72
76
  private readonly customAuthConfig: CustomAuthBrowserConfiguration;
73
77
  private readonly authority: CustomAuthAuthority;
@@ -129,6 +133,7 @@ export class CustomAuthStandardController
129
133
  this.resetPasswordClient =
130
134
  interactionClientFactory.create(ResetPasswordClient);
131
135
  this.jitClient = interactionClientFactory.create(JitClient);
136
+ this.mfaClient = interactionClientFactory.create(MfaClient);
132
137
  this.cacheClient = interactionClientFactory.create(
133
138
  CustomAuthSilentCacheClient
134
139
  );
@@ -242,6 +247,7 @@ export class CustomAuthStandardController
242
247
  signInClient: this.signInClient,
243
248
  cacheClient: this.cacheClient,
244
249
  jitClient: this.jitClient,
250
+ mfaClient: this.mfaClient,
245
251
  username: signInInputs.username,
246
252
  codeLength: startResult.codeLength,
247
253
  scopes: signInInputs.scopes ?? [],
@@ -272,6 +278,7 @@ export class CustomAuthStandardController
272
278
  signInClient: this.signInClient,
273
279
  cacheClient: this.cacheClient,
274
280
  jitClient: this.jitClient,
281
+ mfaClient: this.mfaClient,
275
282
  username: signInInputs.username,
276
283
  scopes: signInInputs.scopes ?? [],
277
284
  claims: signInInputs.claims,
@@ -344,6 +351,29 @@ export class CustomAuthStandardController
344
351
  claims: signInInputs.claims,
345
352
  })
346
353
  );
354
+ } else if (
355
+ submitPasswordResult.type ===
356
+ SIGN_IN_MFA_REQUIRED_RESULT_TYPE
357
+ ) {
358
+ // MFA is required - create MfaAwaitingState
359
+ this.logger.verbose(
360
+ "MFA required for sign-in.",
361
+ correlationId
362
+ );
363
+
364
+ return new SignInResult(
365
+ new MfaAwaitingState({
366
+ correlationId: correlationId,
367
+ continuationToken:
368
+ submitPasswordResult.continuationToken,
369
+ logger: this.logger,
370
+ config: this.customAuthConfig,
371
+ mfaClient: this.mfaClient,
372
+ cacheClient: this.cacheClient,
373
+ scopes: signInInputs.scopes ?? [],
374
+ authMethods: submitPasswordResult.authMethods ?? [],
375
+ })
376
+ );
347
377
  } else {
348
378
  // Unexpected result type
349
379
  const result = submitPasswordResult as { type: string };
@@ -437,6 +467,7 @@ export class CustomAuthStandardController
437
467
  signUpClient: this.signUpClient,
438
468
  cacheClient: this.cacheClient,
439
469
  jitClient: this.jitClient,
470
+ mfaClient: this.mfaClient,
440
471
  username: signUpInputs.username,
441
472
  codeLength: startResult.codeLength,
442
473
  codeResendInterval: startResult.interval,
@@ -461,6 +492,7 @@ export class CustomAuthStandardController
461
492
  signUpClient: this.signUpClient,
462
493
  cacheClient: this.cacheClient,
463
494
  jitClient: this.jitClient,
495
+ mfaClient: this.mfaClient,
464
496
  username: signUpInputs.username,
465
497
  })
466
498
  );
@@ -531,6 +563,7 @@ export class CustomAuthStandardController
531
563
  resetPasswordClient: this.resetPasswordClient,
532
564
  cacheClient: this.cacheClient,
533
565
  jitClient: this.jitClient,
566
+ mfaClient: this.mfaClient,
534
567
  username: resetPasswordInputs.username,
535
568
  codeLength: startResult.codeLength,
536
569
  })
@@ -153,11 +153,9 @@ export abstract class AuthFlowErrorBase {
153
153
  protected isVerificationContactBlockedError(): boolean {
154
154
  return (
155
155
  this.errorData instanceof CustomAuthApiError &&
156
- this.errorData.error === CustomAuthApiErrorCode.INVALID_REQUEST &&
157
- this.errorData.errorCodes?.includes(550024) === true &&
158
- this.errorData.errorDescription?.includes(
159
- "multi-factor authentication method is blocked"
160
- ) === true
156
+ this.errorData.error === CustomAuthApiErrorCode.ACCESS_DENIED &&
157
+ this.errorData.subError ===
158
+ CustomAuthApiSuberror.PROVIDER_BLOCKED_BY_REPUTATION
161
159
  );
162
160
  }
163
161
  }
@@ -16,6 +16,14 @@ export class MfaRequestChallengeError extends AuthActionErrorBase {
16
16
  isInvalidInput(): boolean {
17
17
  return this.isInvalidInputError();
18
18
  }
19
+
20
+ /**
21
+ * Checks if the error is due to the verification contact (e.g., phone number or email) being blocked. Consider contacting customer support for assistance.
22
+ * @returns true if the error is due to the verification contact being blocked, false otherwise.
23
+ */
24
+ isVerificationContactBlocked(): boolean {
25
+ return this.isVerificationContactBlockedError();
26
+ }
19
27
  }
20
28
 
21
29
  /**
@@ -47,7 +47,8 @@ export class CustomAuthApiClient implements ICustomAuthApiClient {
47
47
  this.registerApi = new RegisterApiClient(
48
48
  customAuthApiBaseUrl,
49
49
  clientId,
50
- httpClient
50
+ httpClient,
51
+ customAuthApiQueryParams
51
52
  );
52
53
  }
53
54
  }
@@ -24,3 +24,4 @@ export const PASSWORD_CHANGE_FAILED = "password_change_failed";
24
24
  export const PASSWORD_RESET_TIMEOUT = "password_reset_timeout";
25
25
  export const CLIENT_INFO_MISSING = "client_info_missing";
26
26
  export const EXPIRED_TOKEN = "expired_token";
27
+ export const ACCESS_DENIED = "access_denied";
@@ -14,3 +14,4 @@ export const ATTRIBUTE_VALIATION_FAILED = "attribute_validation_failed";
14
14
  export const NATIVEAUTHAPI_DISABLED = "nativeauthapi_disabled";
15
15
  export const REGISTRATION_REQUIRED = "registration_required";
16
16
  export const MFA_REQUIRED = "mfa_required";
17
+ export const PROVIDER_BLOCKED_BY_REPUTATION = "provider_blocked_by_rep";
@@ -37,12 +37,14 @@ export class CustomAuthSilentCacheClient extends CustomAuthInteractionClientBase
37
37
  override async acquireToken(
38
38
  silentRequest: CommonSilentFlowRequest
39
39
  ): Promise<AuthenticationResult> {
40
+ const correlationId = silentRequest.correlationId || this.correlationId;
40
41
  const telemetryManager = this.initializeServerTelemetryManager(
41
42
  PublicApiId.ACCOUNT_GET_ACCESS_TOKEN
42
43
  );
43
44
  const clientConfig = this.getCustomAuthClientConfiguration(
44
45
  telemetryManager,
45
- this.customAuthAuthority
46
+ this.customAuthAuthority,
47
+ correlationId
46
48
  );
47
49
  const silentFlowClient = new SilentFlowClient(
48
50
  clientConfig,
@@ -52,7 +54,7 @@ export class CustomAuthSilentCacheClient extends CustomAuthInteractionClientBase
52
54
  try {
53
55
  this.logger.verbose(
54
56
  "Starting silent flow to acquire token from cache",
55
- this.correlationId
57
+ correlationId
56
58
  );
57
59
 
58
60
  const result = await silentFlowClient.acquireCachedToken(
@@ -61,7 +63,7 @@ export class CustomAuthSilentCacheClient extends CustomAuthInteractionClientBase
61
63
 
62
64
  this.logger.verbose(
63
65
  "Silent flow to acquire token from cache is completed and token is found",
64
- this.correlationId
66
+ correlationId
65
67
  );
66
68
 
67
69
  return result[0] as AuthenticationResult;
@@ -72,7 +74,7 @@ export class CustomAuthSilentCacheClient extends CustomAuthInteractionClientBase
72
74
  ) {
73
75
  this.logger.verbose(
74
76
  "Token refresh is required to acquire token silently",
75
- this.correlationId
77
+ correlationId
76
78
  );
77
79
 
78
80
  const refreshTokenClient = new RefreshTokenClient(
@@ -82,7 +84,7 @@ export class CustomAuthSilentCacheClient extends CustomAuthInteractionClientBase
82
84
 
83
85
  this.logger.verbose(
84
86
  "Starting refresh flow to refresh token",
85
- this.correlationId
87
+ correlationId
86
88
  );
87
89
 
88
90
  const refreshTokenResult =
@@ -92,7 +94,7 @@ export class CustomAuthSilentCacheClient extends CustomAuthInteractionClientBase
92
94
 
93
95
  this.logger.verbose(
94
96
  "Refresh flow to refresh token is completed",
95
- this.correlationId
97
+ correlationId
96
98
  );
97
99
 
98
100
  return refreshTokenResult as AuthenticationResult;
@@ -103,18 +105,17 @@ export class CustomAuthSilentCacheClient extends CustomAuthInteractionClientBase
103
105
  }
104
106
 
105
107
  override async logout(logoutRequest?: ClearCacheRequest): Promise<void> {
108
+ const correlationId =
109
+ logoutRequest?.correlationId || this.correlationId;
106
110
  const validLogoutRequest = this.initializeLogoutRequest(logoutRequest);
107
111
 
108
112
  // Clear the cache
109
- this.logger.verbose(
110
- "Start to clear the cache",
111
- logoutRequest?.correlationId
112
- );
113
+ this.logger.verbose("Start to clear the cache", correlationId);
113
114
  await this.clearCacheOnLogout(
114
- validLogoutRequest.correlationId,
115
+ correlationId,
115
116
  validLogoutRequest?.account
116
117
  );
117
- this.logger.verbose("Cache cleared", logoutRequest?.correlationId);
118
+ this.logger.verbose("Cache cleared", correlationId);
118
119
 
119
120
  const postLogoutRedirectUri = this.config.auth.postLogoutRedirectUri;
120
121
 
@@ -126,7 +127,7 @@ export class CustomAuthSilentCacheClient extends CustomAuthInteractionClientBase
126
127
 
127
128
  this.logger.verbose(
128
129
  "Post logout redirect uri is set, redirecting to uri",
129
- logoutRequest?.correlationId
130
+ correlationId
130
131
  );
131
132
 
132
133
  // Redirect to post logout redirect uri
@@ -173,7 +174,8 @@ export class CustomAuthSilentCacheClient extends CustomAuthInteractionClientBase
173
174
 
174
175
  private getCustomAuthClientConfiguration(
175
176
  serverTelemetryManager: ServerTelemetryManager,
176
- customAuthAuthority: CustomAuthAuthority
177
+ customAuthAuthority: CustomAuthAuthority,
178
+ correlationId: string
177
179
  ): ClientConfiguration {
178
180
  const logger = this.config.system.loggerOptions;
179
181
 
@@ -193,7 +195,7 @@ export class CustomAuthSilentCacheClient extends CustomAuthInteractionClientBase
193
195
  loggerCallback: logger.loggerCallback,
194
196
  piiLoggingEnabled: logger.piiLoggingEnabled,
195
197
  logLevel: logger.logLevel,
196
- correlationId: this.correlationId,
198
+ correlationId: correlationId,
197
199
  },
198
200
  cacheOptions: {
199
201
  claimsBasedCachingEnabled:
@@ -212,5 +212,27 @@ export {
212
212
  // Auth Method Registration Types
213
213
  export { AuthMethodDetails } from "./core/auth_flow/jit/AuthMethodDetails.js";
214
214
 
215
+ // MFA State
216
+ export { MfaAwaitingState } from "./core/auth_flow/mfa/state/MfaState.js";
217
+ export { MfaVerificationRequiredState } from "./core/auth_flow/mfa/state/MfaState.js";
218
+ export { MfaCompletedState } from "./core/auth_flow/mfa/state/MfaCompletedState.js";
219
+ export { MfaFailedState } from "./core/auth_flow/mfa/state/MfaFailedState.js";
220
+
221
+ // MFA Results
222
+ export {
223
+ MfaRequestChallengeResult,
224
+ MfaRequestChallengeResultState,
225
+ } from "./core/auth_flow/mfa/result/MfaRequestChallengeResult.js";
226
+ export {
227
+ MfaSubmitChallengeResult,
228
+ MfaSubmitChallengeResultState,
229
+ } from "./core/auth_flow/mfa/result/MfaSubmitChallengeResult.js";
230
+
231
+ // MFA Errors
232
+ export {
233
+ MfaRequestChallengeError,
234
+ MfaSubmitChallengeError,
235
+ } from "./core/auth_flow/mfa/error_type/MfaError.js";
236
+
215
237
  // Components from msal_browser
216
238
  export { LogLevel } from "@azure/msal-common/browser";
@@ -56,6 +56,7 @@ export class ResetPasswordCodeRequiredState extends ResetPasswordState<ResetPass
56
56
  signInClient: this.stateParameters.signInClient,
57
57
  cacheClient: this.stateParameters.cacheClient,
58
58
  jitClient: this.stateParameters.jitClient,
59
+ mfaClient: this.stateParameters.mfaClient,
59
60
  username: this.stateParameters.username,
60
61
  })
61
62
  );
@@ -108,6 +109,7 @@ export class ResetPasswordCodeRequiredState extends ResetPasswordState<ResetPass
108
109
  signInClient: this.stateParameters.signInClient,
109
110
  cacheClient: this.stateParameters.cacheClient,
110
111
  jitClient: this.stateParameters.jitClient,
112
+ mfaClient: this.stateParameters.mfaClient,
111
113
  username: this.stateParameters.username,
112
114
  codeLength: result.codeLength,
113
115
  })
@@ -59,6 +59,7 @@ export class ResetPasswordPasswordRequiredState extends ResetPasswordState<Reset
59
59
  signInClient: this.stateParameters.signInClient,
60
60
  cacheClient: this.stateParameters.cacheClient,
61
61
  jitClient: this.stateParameters.jitClient,
62
+ mfaClient: this.stateParameters.mfaClient,
62
63
  signInScenario: SignInScenario.SignInAfterPasswordReset,
63
64
  })
64
65
  );
@@ -8,6 +8,7 @@ import { SignInClient } from "../../../sign_in/interaction_client/SignInClient.j
8
8
  import { CustomAuthSilentCacheClient } from "../../../get_account/interaction_client/CustomAuthSilentCacheClient.js";
9
9
  import { AuthFlowActionRequiredStateParameters } from "../../../core/auth_flow/AuthFlowState.js";
10
10
  import { JitClient } from "../../../core/interaction_client/jit/JitClient.js";
11
+ import { MfaClient } from "../../../core/interaction_client/mfa/MfaClient.js";
11
12
 
12
13
  export interface ResetPasswordStateParameters
13
14
  extends AuthFlowActionRequiredStateParameters {
@@ -16,6 +17,7 @@ export interface ResetPasswordStateParameters
16
17
  signInClient: SignInClient;
17
18
  cacheClient: CustomAuthSilentCacheClient;
18
19
  jitClient: JitClient;
20
+ mfaClient: MfaClient;
19
21
  }
20
22
 
21
23
  export type ResetPasswordPasswordRequiredStateParameters =
@@ -11,6 +11,7 @@ import { SignInPasswordRequiredState } from "../state/SignInPasswordRequiredStat
11
11
  import { SignInFailedState } from "../state/SignInFailedState.js";
12
12
  import { SignInCompletedState } from "../state/SignInCompletedState.js";
13
13
  import { AuthMethodRegistrationRequiredState } from "../../../core/auth_flow/jit/state/AuthMethodRegistrationState.js";
14
+ import { MfaAwaitingState } from "../../../core/auth_flow/mfa/state/MfaState.js";
14
15
 
15
16
  /*
16
17
  * Result of a sign-in operation.
@@ -81,6 +82,14 @@ export class SignInResult extends AuthFlowResultBase<
81
82
  } {
82
83
  return this.state instanceof AuthMethodRegistrationRequiredState;
83
84
  }
85
+
86
+ /**
87
+ * Checks if the result requires MFA.
88
+ * @warning This API is experimental. It may be changed in the future without notice. Do not use in production applications.
89
+ */
90
+ isMfaRequired(): this is SignInResult & { state: MfaAwaitingState } {
91
+ return this.state instanceof MfaAwaitingState;
92
+ }
84
93
  }
85
94
 
86
95
  /**
@@ -91,10 +100,12 @@ export class SignInResult extends AuthFlowResultBase<
91
100
  * - SignInFailedState: The sign-in process has failed.
92
101
  * - SignInCompletedState: The sign-in process is completed.
93
102
  * - AuthMethodRegistrationRequiredState: The sign-in process requires authentication method registration.
103
+ * - MfaAwaitingState: The sign-in process requires MFA.
94
104
  */
95
105
  export type SignInResultState =
96
106
  | SignInCodeRequiredState
97
107
  | SignInPasswordRequiredState
98
108
  | SignInFailedState
99
109
  | SignInCompletedState
100
- | AuthMethodRegistrationRequiredState;
110
+ | AuthMethodRegistrationRequiredState
111
+ | MfaAwaitingState;
@@ -8,6 +8,8 @@ import { SignInCompletedState } from "../state/SignInCompletedState.js";
8
8
  import { SignInFailedState } from "../state/SignInFailedState.js";
9
9
  import { AuthFlowResultBase } from "../../../core/auth_flow/AuthFlowResultBase.js";
10
10
  import { CustomAuthAccountData } from "../../../get_account/auth_flow/CustomAuthAccountData.js";
11
+ import { AuthMethodRegistrationRequiredState } from "../../../core/auth_flow/jit/state/AuthMethodRegistrationState.js";
12
+ import { MfaAwaitingState } from "../../../core/auth_flow/mfa/state/MfaState.js";
11
13
 
12
14
  /*
13
15
  * Result of a sign-in submit code operation.
@@ -46,6 +48,26 @@ export class SignInSubmitCodeResult extends AuthFlowResultBase<
46
48
  } {
47
49
  return this.state instanceof SignInCompletedState;
48
50
  }
51
+
52
+ /**
53
+ * Checks if the result requires authentication method registration.
54
+ * @warning This API is experimental. It may be changed in the future without notice. Do not use in production applications.
55
+ */
56
+ isAuthMethodRegistrationRequired(): this is SignInSubmitCodeResult & {
57
+ state: AuthMethodRegistrationRequiredState;
58
+ } {
59
+ return this.state instanceof AuthMethodRegistrationRequiredState;
60
+ }
61
+
62
+ /**
63
+ * Checks if the result requires MFA.
64
+ * @warning This API is experimental. It may be changed in the future without notice. Do not use in production applications.
65
+ */
66
+ isMfaRequired(): this is SignInSubmitCodeResult & {
67
+ state: MfaAwaitingState;
68
+ } {
69
+ return this.state instanceof MfaAwaitingState;
70
+ }
49
71
  }
50
72
 
51
73
  /**
@@ -53,7 +75,11 @@ export class SignInSubmitCodeResult extends AuthFlowResultBase<
53
75
  * This includes:
54
76
  * - SignInCompletedState: The sign-in process has completed successfully.
55
77
  * - SignInFailedState: The sign-in process has failed.
78
+ * - AuthMethodRegistrationRequiredState: The user needs to register an authentication method.
79
+ * - MfaAwaitingState: The user is in a multi-factor authentication (MFA) waiting state.
56
80
  */
57
81
  export type SignInSubmitCodeResultState =
58
82
  | SignInCompletedState
59
- | SignInFailedState;
83
+ | SignInFailedState
84
+ | AuthMethodRegistrationRequiredState
85
+ | MfaAwaitingState;
@@ -9,6 +9,7 @@ import { SignInFailedState } from "../state/SignInFailedState.js";
9
9
  import { AuthFlowResultBase } from "../../../core/auth_flow/AuthFlowResultBase.js";
10
10
  import { CustomAuthAccountData } from "../../../get_account/auth_flow/CustomAuthAccountData.js";
11
11
  import { AuthMethodRegistrationRequiredState } from "../../../core/auth_flow/jit/state/AuthMethodRegistrationState.js";
12
+ import { MfaAwaitingState } from "../../../core/auth_flow/mfa/state/MfaState.js";
12
13
 
13
14
  /*
14
15
  * Result of a sign-in submit password operation.
@@ -54,6 +55,16 @@ export class SignInSubmitPasswordResult extends AuthFlowResultBase<
54
55
  } {
55
56
  return this.state instanceof AuthMethodRegistrationRequiredState;
56
57
  }
58
+
59
+ /**
60
+ * Checks if the result requires MFA.
61
+ * @warning This API is experimental. It may be changed in the future without notice. Do not use in production applications.
62
+ */
63
+ isMfaRequired(): this is SignInSubmitPasswordResult & {
64
+ state: MfaAwaitingState;
65
+ } {
66
+ return this.state instanceof MfaAwaitingState;
67
+ }
57
68
  }
58
69
 
59
70
  /**
@@ -62,8 +73,10 @@ export class SignInSubmitPasswordResult extends AuthFlowResultBase<
62
73
  * - SignInCompletedState: The sign-in process has completed successfully.
63
74
  * - SignInFailedState: The sign-in process has failed.
64
75
  * - AuthMethodRegistrationRequiredState: The sign-in process requires authentication method registration.
76
+ * - MfaAwaitingState: The sign-in process requires MFA.
65
77
  */
66
78
  export type SignInSubmitPasswordResultState =
67
79
  | SignInCompletedState
68
80
  | SignInFailedState
69
- | AuthMethodRegistrationRequiredState;
81
+ | AuthMethodRegistrationRequiredState
82
+ | MfaAwaitingState;
@@ -3,7 +3,6 @@
3
3
  * Licensed under the MIT License.
4
4
  */
5
5
 
6
- import { CustomAuthAccountData } from "../../../get_account/auth_flow/CustomAuthAccountData.js";
7
6
  import {
8
7
  SignInResendCodeParams,
9
8
  SignInSubmitCodeParams,
@@ -12,8 +11,6 @@ import { SignInResendCodeResult } from "../result/SignInResendCodeResult.js";
12
11
  import { SignInSubmitCodeResult } from "../result/SignInSubmitCodeResult.js";
13
12
  import { SignInCodeRequiredStateParameters } from "./SignInStateParameters.js";
14
13
  import { SignInState } from "./SignInState.js";
15
- import { SignInCompletedState } from "./SignInCompletedState.js";
16
- import { SIGN_IN_COMPLETED_RESULT_TYPE } from "../../interaction_client/result/SignInActionResult.js";
17
14
 
18
15
  /*
19
16
  * Sign-in code required state.
@@ -56,27 +53,19 @@ export class SignInCodeRequiredState extends SignInState<SignInCodeRequiredState
56
53
  this.stateParameters.correlationId
57
54
  );
58
55
 
59
- if (submitCodeResult.type === SIGN_IN_COMPLETED_RESULT_TYPE) {
60
- const accountInfo = new CustomAuthAccountData(
61
- submitCodeResult.authenticationResult.account,
62
- this.stateParameters.config,
63
- this.stateParameters.cacheClient,
64
- this.stateParameters.logger,
65
- this.stateParameters.correlationId
66
- );
56
+ const nextState = this.handleSignInResult(
57
+ submitCodeResult,
58
+ this.stateParameters.scopes
59
+ );
67
60
 
68
- return new SignInSubmitCodeResult(
69
- new SignInCompletedState(),
70
- accountInfo
71
- );
72
- } else {
73
- // Unexpected result type
74
- const result = submitCodeResult as { type: string };
75
- const error = new Error(
76
- `Unexpected result type: ${result.type}`
77
- );
78
- return SignInSubmitCodeResult.createWithError(error);
61
+ if (nextState.error) {
62
+ return SignInSubmitCodeResult.createWithError(nextState.error);
79
63
  }
64
+
65
+ return new SignInSubmitCodeResult(
66
+ nextState.state,
67
+ nextState.accountInfo
68
+ );
80
69
  } catch (error) {
81
70
  this.stateParameters.logger.errorPii(
82
71
  `Failed to submit code for sign-in. Error: ${error}.`,
@@ -125,6 +114,7 @@ export class SignInCodeRequiredState extends SignInState<SignInCodeRequiredState
125
114
  signInClient: this.stateParameters.signInClient,
126
115
  cacheClient: this.stateParameters.cacheClient,
127
116
  jitClient: this.stateParameters.jitClient,
117
+ mfaClient: this.stateParameters.mfaClient,
128
118
  username: this.stateParameters.username,
129
119
  codeLength: result.codeLength,
130
120
  scopes: this.stateParameters.scopes,
@@ -3,18 +3,11 @@
3
3
  * Licensed under the MIT License.
4
4
  */
5
5
 
6
- import { CustomAuthAccountData } from "../../../get_account/auth_flow/CustomAuthAccountData.js";
7
6
  import { SignInContinuationTokenParams } from "../../interaction_client/parameter/SignInParams.js";
8
7
  import { SignInResult } from "../result/SignInResult.js";
9
8
  import { SignInWithContinuationTokenInputs } from "../../../CustomAuthActionInputs.js";
10
9
  import { SignInContinuationStateParameters } from "./SignInStateParameters.js";
11
10
  import { SignInState } from "./SignInState.js";
12
- import { SignInCompletedState } from "./SignInCompletedState.js";
13
- import {
14
- SIGN_IN_JIT_REQUIRED_RESULT_TYPE,
15
- SIGN_IN_COMPLETED_RESULT_TYPE,
16
- } from "../../interaction_client/result/SignInActionResult.js";
17
- import { AuthMethodRegistrationRequiredState } from "../../../core/auth_flow/jit/state/AuthMethodRegistrationState.js";
18
11
  import * as ArgumentValidator from "../../../core/utils/ArgumentValidator.js";
19
12
 
20
13
  /*
@@ -65,51 +58,16 @@ export class SignInContinuationState extends SignInState<SignInContinuationState
65
58
  this.stateParameters.correlationId
66
59
  );
67
60
 
68
- if (signInResult.type === SIGN_IN_COMPLETED_RESULT_TYPE) {
69
- // Sign-in completed successfully
70
- const accountInfo = new CustomAuthAccountData(
71
- signInResult.authenticationResult.account,
72
- this.stateParameters.config,
73
- this.stateParameters.cacheClient,
74
- this.stateParameters.logger,
75
- this.stateParameters.correlationId
76
- );
77
-
78
- return new SignInResult(
79
- new SignInCompletedState(),
80
- accountInfo
81
- );
82
- } else if (signInResult.type === SIGN_IN_JIT_REQUIRED_RESULT_TYPE) {
83
- // JIT is required
84
- this.stateParameters.logger.warning(
85
- "Auth method registration required during continuation token sign-in.",
86
- this.stateParameters.correlationId
87
- );
88
-
89
- // Return AuthMethodRegistrationRequiredState to handle JIT scenario
90
- const authMethodRegistrationState =
91
- new AuthMethodRegistrationRequiredState({
92
- correlationId: this.stateParameters.correlationId,
93
- continuationToken: signInResult.continuationToken,
94
- logger: this.stateParameters.logger,
95
- config: this.stateParameters.config,
96
- jitClient: this.stateParameters.jitClient,
97
- cacheClient: this.stateParameters.cacheClient,
98
- authMethods: signInResult.authMethods,
99
- username: this.stateParameters.username,
100
- scopes: signInWithContinuationTokenInputs?.scopes ?? [],
101
- claims: this.stateParameters.claims,
102
- });
61
+ const nextState = this.handleSignInResult(
62
+ signInResult,
63
+ signInWithContinuationTokenInputs?.scopes
64
+ );
103
65
 
104
- return new SignInResult(authMethodRegistrationState);
105
- } else {
106
- // Unexpected result type
107
- const result = signInResult as { type: string };
108
- const error = new Error(
109
- `Unexpected result type: ${result.type}`
110
- );
111
- return SignInResult.createWithError(error);
66
+ if (nextState.error) {
67
+ return SignInResult.createWithError(nextState.error);
112
68
  }
69
+
70
+ return new SignInResult(nextState.state, nextState.accountInfo);
113
71
  } catch (error) {
114
72
  this.stateParameters.logger.errorPii(
115
73
  `Failed to sign in with continuation token. Error: ${error}.`,