{"version":3,"file":"app_login.074eca6d54ab84de3d2f.js","mappings":"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","sources":["webpack:///./helpers/userAgent.js","webpack:///./actions/loginActions.ts","webpack:///./components/session/ExternalLoginsListPartial.tsx","webpack:///./components/toasts/snackbar.tsx","webpack:///./components/session/Login.tsx","webpack:///./apps/app_login.tsx","webpack:///./reducers/forgotPassword.ts","webpack:///./reducers/login.ts","webpack:///./reducers/resetPassword.ts","webpack:///../node_modules/react-redux/es/hooks/useSelector.js"],"sourcesContent":["/**\r\n * Gets the browser info based on user agent.\r\n * @returns {any} - Returns browser name and version.\r\n */\r\nexport const getBrowser = () => {\r\n let userAgent = navigator.userAgent;\r\n let temp,\r\n browser = null;\r\n let match = userAgent.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n\r\n if (match && match[1]) {\r\n // Check for IE browser engine\r\n if (match[1].includes(\"trident\")) {\r\n temp = /\\brv[ :]+(\\d+)/g.exec(userAgent) || [];\r\n return { name: \"IE\", version: temp[1] || \"\" };\r\n\r\n // Check for Opera/Edge\r\n } else if (match[1].includes(\"Chrome\")) {\r\n temp = userAgent.match(/\\bOPR|Edge|Edg\\/(\\d+)/);\r\n\r\n if (temp != null) {\r\n if (temp[0].includes(\"Edge\") || temp[0].includes(\"Edg\")) {\r\n return { name: \"Edge\", version: temp[1] };\r\n } else if (temp[0].includes(\"OPR\")) {\r\n return { name: \"Opera\", version: temp[1] };\r\n } else {\r\n return { name: temp[0], version: temp[1] };\r\n }\r\n }\r\n }\r\n\r\n browser = match[2] ? [match[1], match[2]] : [navigator.appName, navigator.appVersion];\r\n }\r\n\r\n return {\r\n name: browser && browser[0] ? browser[0] : \"\",\r\n version: browser && browser[1] ? browser[1] : \"\",\r\n };\r\n};\r\n\r\n/**\r\n * An array of supported browsers\r\n */\r\nexport const supportedBrowsers = [\"Chrome\"];\r\n","import { Dispatch } from \"redux\";\r\nimport h from \"../helpers\";\r\nimport { IProvider, ISetExternalProviders } from \"../types/stores/login\";\r\nimport { SET_EXTERNAL_PROVIDERS } from \"../reducers/login\";\r\n\r\nexport const setProviders = (providers: Array): ISetExternalProviders => ({\r\n type: SET_EXTERNAL_PROVIDERS,\r\n providers,\r\n});\r\n\r\nexport const getLoginProviders =\r\n () =>\r\n (dispatch: Dispatch): void => {\r\n const url = \"../../../../Account/LoginProviders\";\r\n fetch(url, { credentials: \"same-origin\", method: \"GET\" })\r\n .then(h.checkStatus)\r\n .then(h.toJson)\r\n .then(response => {\r\n const data = response as unknown as Array;\r\n dispatch(setProviders(data));\r\n })\r\n .catch(error => {\r\n h.error(\"Error getting Log in Providers.\", error);\r\n });\r\n };\r\n\r\nexport const externalLogin = (authenticationType: string): void => {\r\n let form = document.createElement(\"form\");\r\n let provider = document.createElement(\"input\");\r\n let forgeryToken = document.createElement(\"input\");\r\n form.method = \"POST\";\r\n form.action = \"../../../../Account/ExternalLogin\";\r\n provider.value = authenticationType;\r\n provider.name = \"provider\";\r\n forgeryToken.value = (document.getElementsByName(\"__RequestVerificationToken\")[0]).value;\r\n forgeryToken.name = \"__RequestVerificationToken\";\r\n\r\n form.appendChild(provider);\r\n form.appendChild(forgeryToken);\r\n document.body.appendChild(form);\r\n form.submit();\r\n};\r\n\r\nexport const termsAndConditionsResponse = (accepted: boolean, email: string): void => {\r\n // Get the Anti-forgery Token to pass in the headers\r\n let token = \"\";\r\n if (document.getElementsByName(\"__RequestVerificationToken\").length > 0) {\r\n let element = document.getElementsByName(\"__RequestVerificationToken\")[0];\r\n if (element instanceof HTMLInputElement) {\r\n token = element.value;\r\n }\r\n }\r\n\r\n fetch(\"../Account/TermsAndConditions\", {\r\n credentials: \"same-origin\",\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=utf-8\",\r\n __RequestVerificationToken: token,\r\n },\r\n body: JSON.stringify({\r\n Accepted: accepted,\r\n Email: email,\r\n ReturnUrl: null,\r\n }),\r\n })\r\n .then(h.checkStatus)\r\n .then(h.toJson)\r\n .then(() => {\r\n window.location.href = \"/\";\r\n })\r\n .catch(error => {\r\n h.error(\"Error\", error);\r\n });\r\n};\r\n","import React, { useEffect } from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { getLoginProviders, externalLogin } from \"../../actions/loginActions\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport { IAppState } from \"../../types/stores\";\r\n\r\nconst ExternalLoginsListPartial: React.FC = () => {\r\n const dispatch = useDispatch();\r\n\r\n const providers = useSelector((state: IAppState) => state.login.providers);\r\n\r\n useEffect(() => {\r\n dispatch(getLoginProviders());\r\n }, [dispatch]);\r\n\r\n let externalLoginOption: Array = [];\r\n\r\n if (providers.length != 0) {\r\n for (let i = 0; i < providers.length; i++) {\r\n if (providers[i].Properties) {\r\n if (providers[i].Properties!.AuthenticationType == \"OpenIdConnect\") {\r\n externalLoginOption.push(\r\n \r\n externalLogin(providers[i].Properties!.AuthenticationType)}\r\n className={\"external-login-button\"}\r\n >\r\n Experian SSO\r\n \r\n \r\n );\r\n } else if (providers[i].Properties!.AuthenticationType == \"OpenIdConnectB2B\") {\r\n externalLoginOption.push(\r\n \r\n externalLogin(providers[i].Properties!.AuthenticationType)}\r\n className={\"external-login-button\"}\r\n >\r\n Client SSO\r\n \r\n \r\n );\r\n } else {\r\n externalLoginOption.push(\r\n externalLogin(providers[i].Properties!.AuthenticationType)}\r\n className={\"external-login-button\"}\r\n >\r\n {providers[i].Properties!.AuthenticationType}\r\n \r\n );\r\n }\r\n }\r\n }\r\n }\r\n\r\n return externalLoginOption.length > 0 ? (\r\n
\r\n

Or use another service to log in

\r\n {externalLoginOption}\r\n
\r\n ) : null;\r\n};\r\n\r\nexport default ExternalLoginsListPartial;\r\n","import React, { useEffect, useState, createRef } from \"react\";\r\n\r\ntype Props = {\r\n type: string;\r\n text?: string;\r\n};\r\n\r\n/** TODO: probably extend this to support a collection of snacks that stack vertically if we need it */\r\nconst Snackbar: React.FC = ({ type, text = \"\" }: Props) => {\r\n const snackbarRef = createRef();\r\n //State\r\n const [showSnackbar, setShowSnackbar] = useState(false);\r\n const [showDismiss, setShowDismiss] = useState(false);\r\n const [textValue, setText] = useState(\"\");\r\n\r\n /**\r\n * Depending on the type of snack bar we may have specific text and settings/options.\r\n * In a default type of snackbar (with no type prop passed in, just text), we timeout instead like a toast would.\r\n */\r\n useEffect(() => {\r\n switch (type) {\r\n case \"browser\":\r\n setShowSnackbar(\r\n Boolean(\r\n sessionStorage.getItem(\"browser-snackbar\")\r\n ? sessionStorage.getItem(\"browser-snackbar\") == \"true\"\r\n : true\r\n )\r\n );\r\n setShowDismiss(true);\r\n setText(\"You are using an unsupported browser. For optimal experience, please use Chrome.\");\r\n break;\r\n default:\r\n setShowSnackbar(true);\r\n setText(text);\r\n\r\n setTimeout(() => {\r\n setShowSnackbar(false);\r\n }, 5000);\r\n break;\r\n }\r\n }, [type, text]);\r\n\r\n /**\r\n * We dismiss and set one-off states via local storage(?) based on snackbar type.\r\n */\r\n const dismiss = () => {\r\n switch (type) {\r\n case \"browser\":\r\n setShowSnackbar(false);\r\n setText(\"You are using an unsupported browser. For optimal experience, please use Chrome.\");\r\n sessionStorage.setItem(\"browser-snackbar\", \"false\");\r\n break;\r\n default:\r\n break;\r\n }\r\n };\r\n\r\n return showSnackbar ? (\r\n
\r\n
\r\n {textValue}\r\n {showDismiss && (\r\n \r\n )}\r\n
\r\n
\r\n ) : null;\r\n};\r\n\r\nexport default Snackbar;\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport h from \"../../helpers\";\r\nimport { SiteCustomizations } from \"../../helpers/constants\";\r\nimport siteCustomization from \"../../helpers/siteCustomization\";\r\nimport { getBrowser, supportedBrowsers } from \"../../helpers/userAgent\";\r\nimport ExternalLoginsListPartial from \"./ExternalLoginsListPartial\";\r\nimport CircularLoading from \"../loading/CircularLoading\";\r\nimport { requestSessionInfo } from \"../../actions/sessionActions\";\r\nimport Snackbar from \"../toasts/snackbar\";\r\n\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\nimport { IAppState } from \"../../types/stores/index\";\r\n\r\nconst Login: React.FC = () => {\r\n const dispatch = useDispatch();\r\n\r\n const [email, setEmail] = useState(\"\");\r\n const [password, setPassword] = useState(\"\");\r\n const [showAccountStatus, setShowAccountStatus] = useState(\"\");\r\n const [submitting, setIsSubmitting] = useState(false);\r\n const [errorEmail, setErrorEmail] = useState(\"\");\r\n const [errorPassword, setErrorPassword] = useState(\"\");\r\n\r\n const site = useSelector((state: IAppState) => state.session.site);\r\n const siteCustomizations = useSelector((state: IAppState) => state.session.customizations);\r\n\r\n useEffect(() => {\r\n dispatch(requestSessionInfo());\r\n }, [dispatch]);\r\n\r\n let siteName = \"Our site\";\r\n if (site == \"AudienceEngine\") {\r\n siteName = siteCustomization(SiteCustomizations.AEname, \"Audience Engine\", siteCustomizations);\r\n }\r\n\r\n let invalidCredentials = \"\";\r\n switch (showAccountStatus) {\r\n case \"InvalidCredentials\":\r\n invalidCredentials = \"Invalid login credentials, please try again.\";\r\n break;\r\n case \"UserInactive\":\r\n invalidCredentials = \"This account is not active. Please contact your administrator for assistance.\";\r\n break;\r\n case \"UserConfigError\":\r\n invalidCredentials =\r\n \"This account needs to be configured. Please contact your administrator for assistance.\";\r\n break;\r\n case \"Lockout\":\r\n invalidCredentials =\r\n \"This account has been locked for security reasons. Please contact your administrator for assistance in unlocking your account\";\r\n break;\r\n default:\r\n invalidCredentials = \"\";\r\n break;\r\n }\r\n\r\n const loginErrors = invalidCredentials ? (\r\n
\r\n error_outline\r\n {invalidCredentials}\r\n
\r\n ) : null;\r\n\r\n const browser = getBrowser();\r\n\r\n const handleEmail = e => {\r\n setEmail(e.target.value);\r\n emailValidation(e.target.value);\r\n };\r\n\r\n const handlePasswordChange = e => {\r\n setPassword(e.target.value);\r\n passwordValidation(e.target.value);\r\n };\r\n\r\n const loginEnter = e => {\r\n e.preventDefault();\r\n login();\r\n };\r\n\r\n const loginWithSSO = (providerValue: string) => {\r\n let form = document.createElement(\"form\");\r\n let provider = document.createElement(\"input\");\r\n let forgeryToken = document.createElement(\"input\");\r\n form.method = \"POST\";\r\n form.action = \"../../../../Account/ExternalLogin\";\r\n provider.value = providerValue;\r\n provider.name = \"provider\";\r\n forgeryToken.value = (document.getElementsByName(\"__RequestVerificationToken\")[0] as HTMLInputElement).value;\r\n forgeryToken.name = \"__RequestVerificationToken\";\r\n form.appendChild(provider);\r\n form.appendChild(forgeryToken);\r\n document.body.appendChild(form);\r\n form.submit();\r\n };\r\n\r\n const loginWithUserPass = () => {\r\n const hasEmailError = emailValidation(email);\r\n const hasPasswordError = passwordValidation(password);\r\n\r\n if (hasEmailError || hasPasswordError) {\r\n setIsSubmitting(false);\r\n return;\r\n }\r\n\r\n let urlParams = new URLSearchParams(window.location.search);\r\n let logData = new FormData();\r\n const url = \"/Account/Login\";\r\n let returnUrl: string = \"/\";\r\n let token = \"\";\r\n\r\n logData.append(\"email\", email);\r\n logData.append(\"password\", password);\r\n if (urlParams.get(\"returnUrl\") != null) {\r\n returnUrl = urlParams.get(\"returnUrl\")!;\r\n if (returnUrl) {\r\n returnUrl = returnUrl.split(\"~\")[1];\r\n }\r\n }\r\n\r\n logData.append(\"ReturnUrl\", returnUrl);\r\n if (document.getElementsByName(\"__RequestVerificationToken\").length > 0) {\r\n token = (document.getElementsByName(\"__RequestVerificationToken\")[0] as HTMLInputElement).value;\r\n }\r\n\r\n fetch(url, {\r\n credentials: \"same-origin\",\r\n method: \"POST\",\r\n headers: {\r\n Accept: \"application/json\",\r\n __RequestVerificationToken: token,\r\n },\r\n body: logData,\r\n })\r\n .then(h.checkStatus)\r\n .then(h.toJson)\r\n .then(data => {\r\n const response = data as unknown as { redirecturl: string; message: string };\r\n if (response) {\r\n if (response.redirecturl) {\r\n window.location.href = response.redirecturl;\r\n } else {\r\n setIsSubmitting(false);\r\n setShowAccountStatus(response.message);\r\n }\r\n }\r\n })\r\n .catch(error => {\r\n h.error(\"Error during log in.\", error);\r\n setIsSubmitting(false);\r\n });\r\n };\r\n\r\n const login = () => {\r\n setIsSubmitting(true);\r\n\r\n // Check to see if we should login with SSO or Username/Pass\r\n fetch(\"/Account/GetSSOStatus\", {\r\n method: \"POST\",\r\n credentials: \"same-origin\",\r\n headers: {\r\n Accept: \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n email,\r\n }),\r\n })\r\n .then(h.checkStatus)\r\n .then(h.toJson)\r\n .then(data => {\r\n const response = data as unknown as { isSSO: boolean; status: string };\r\n if (response.isSSO) {\r\n loginWithSSO(response.status);\r\n } else {\r\n loginWithUserPass();\r\n }\r\n })\r\n .catch(error => {\r\n h.error(\"Error getting SSO.\", error);\r\n });\r\n };\r\n\r\n const passwordValidation = password => {\r\n let hasError = false;\r\n if (password == null || password == \"\") {\r\n hasError = true;\r\n setErrorPassword(\"Password is required.\");\r\n } else {\r\n hasError = false;\r\n setErrorPassword(\"\");\r\n }\r\n return hasError;\r\n };\r\n\r\n const emailValidation = email => {\r\n let hasError = false;\r\n if (email == null || email == \"\") {\r\n hasError = true;\r\n setErrorEmail(\"Email address is required.\");\r\n } else if (email.search(/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/)) {\r\n hasError = true;\r\n setErrorEmail(\"Email address is not valid.\");\r\n } else {\r\n hasError = false;\r\n setErrorEmail(\"\");\r\n }\r\n return hasError;\r\n };\r\n\r\n const goToForgotPassword = () => {\r\n window.location.href = \"/account/forgotpassword\";\r\n };\r\n\r\n const submitDisabled = () => submitting || errorEmail != \"\" || errorPassword != \"\";\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n
\r\n

{siteName}

\r\n {loginErrors}\r\n {\r\n if (!submitDisabled()) {\r\n return loginEnter(e);\r\n }\r\n }}\r\n noValidate\r\n >\r\n \r\n \r\n
\r\n \r\n Forgot your password?\r\n \r\n
\r\n \r\n
\r\n {submitting ? : null}\r\n Log In\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n {browser && !supportedBrowsers.includes(browser.name) && }\r\n \r\n );\r\n};\r\n\r\nexport default Login;\r\n","import React from \"react\";\r\nimport { render } from \"react-dom\";\r\n\r\nimport { Provider } from \"react-redux\";\r\nimport store from \"../store\";\r\n\r\nimport Login from \"../components/session/Login\";\r\n\r\nconst LoginApp = (\r\n \r\n \r\n \r\n);\r\n\r\nrender(LoginApp, document.getElementById(\"root\"));\r\n","import { ForgotPasswordActions, IForgotPasswordStore } from \"../types/stores/forgotPassword\";\r\n\r\nexport const FORGOT_PASSWORD = \"FORGOT_PASSWORD\";\r\nexport const FORGOT_PASSWORD_COMPLETED = \"FORGOT_PASSWORD_COMPLETED\";\r\n\r\nfunction forgotPassword(\r\n state: IForgotPasswordStore = {\r\n submit: false,\r\n success: false,\r\n passwordErrors: [],\r\n },\r\n action: ForgotPasswordActions\r\n): IForgotPasswordStore {\r\n switch (action.type) {\r\n case FORGOT_PASSWORD:\r\n return Object.assign({}, state, {\r\n submit: action.submit,\r\n passwordErrors: [],\r\n });\r\n case FORGOT_PASSWORD_COMPLETED: {\r\n return Object.assign({}, state, {\r\n submit: false,\r\n success: action.success,\r\n passwordErrors: action.errors,\r\n });\r\n }\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport default forgotPassword;\r\n","import { ILoginState, LoginActions } from \"../types/stores/login\";\r\nexport const SET_EXTERNAL_PROVIDERS = \"SET_EXTERNAL_PROVIDERS\";\r\n\r\nfunction loadingStates(\r\n state: ILoginState = {\r\n providers: [],\r\n },\r\n action: LoginActions\r\n): ILoginState {\r\n switch (action.type) {\r\n case SET_EXTERNAL_PROVIDERS:\r\n return Object.assign({}, state, {\r\n providers: action.providers,\r\n });\r\n\r\n default:\r\n return state;\r\n }\r\n}\r\nexport default loadingStates;\r\n","import { IResetPasswordStore, ResetPasswordActions } from \"../types/stores/resetPassword\";\r\n\r\nexport const RESETTING_PASSWORD = \"RESETTING_PASSWORD\";\r\nexport const RESETTING_PASSWORD_SUCCESS = \"RESETTING_PASSWORD_SUCCESS\";\r\n\r\nfunction resetPassword(\r\n state: IResetPasswordStore = {\r\n passwordIsSaving: false,\r\n passwordErrors: [],\r\n success: false,\r\n },\r\n action: ResetPasswordActions\r\n): IResetPasswordStore {\r\n switch (action.type) {\r\n case RESETTING_PASSWORD:\r\n return Object.assign({}, state, {\r\n passwordIsSaving: action.isSaving,\r\n });\r\n case RESETTING_PASSWORD_SUCCESS:\r\n return Object.assign({}, state, {\r\n passwordIsSaving: false,\r\n success: action.success,\r\n passwordErrors: action.errors,\r\n });\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport default resetPassword;\r\n","import { useReducer, useRef, useMemo, useContext, useDebugValue } from 'react';\nimport { useReduxContext as useDefaultReduxContext } from './useReduxContext';\nimport { createSubscription } from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\nimport { ReactReduxContext } from '../components/Context';\n\nvar refEquality = function refEquality(a, b) {\n return a === b;\n};\n\nfunction useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub) {\n var _useReducer = useReducer(function (s) {\n return s + 1;\n }, 0),\n forceRender = _useReducer[1];\n\n var subscription = useMemo(function () {\n return createSubscription(store, contextSub);\n }, [store, contextSub]);\n var latestSubscriptionCallbackError = useRef();\n var latestSelector = useRef();\n var latestStoreState = useRef();\n var latestSelectedState = useRef();\n var storeState = store.getState();\n var selectedState;\n\n try {\n if (selector !== latestSelector.current || storeState !== latestStoreState.current || latestSubscriptionCallbackError.current) {\n var newSelectedState = selector(storeState); // ensure latest selected state is reused so that a custom equality function can result in identical references\n\n if (latestSelectedState.current === undefined || !equalityFn(newSelectedState, latestSelectedState.current)) {\n selectedState = newSelectedState;\n } else {\n selectedState = latestSelectedState.current;\n }\n } else {\n selectedState = latestSelectedState.current;\n }\n } catch (err) {\n if (latestSubscriptionCallbackError.current) {\n err.message += \"\\nThe error may be correlated with this previous error:\\n\" + latestSubscriptionCallbackError.current.stack + \"\\n\\n\";\n }\n\n throw err;\n }\n\n useIsomorphicLayoutEffect(function () {\n latestSelector.current = selector;\n latestStoreState.current = storeState;\n latestSelectedState.current = selectedState;\n latestSubscriptionCallbackError.current = undefined;\n });\n useIsomorphicLayoutEffect(function () {\n function checkForUpdates() {\n try {\n var newStoreState = store.getState(); // Avoid calling selector multiple times if the store's state has not changed\n\n if (newStoreState === latestStoreState.current) {\n return;\n }\n\n var _newSelectedState = latestSelector.current(newStoreState);\n\n if (equalityFn(_newSelectedState, latestSelectedState.current)) {\n return;\n }\n\n latestSelectedState.current = _newSelectedState;\n latestStoreState.current = newStoreState;\n } catch (err) {\n // we ignore all errors here, since when the component\n // is re-rendered, the selectors are called again, and\n // will throw again, if neither props nor store state\n // changed\n latestSubscriptionCallbackError.current = err;\n }\n\n forceRender();\n }\n\n subscription.onStateChange = checkForUpdates;\n subscription.trySubscribe();\n checkForUpdates();\n return function () {\n return subscription.tryUnsubscribe();\n };\n }, [store, subscription]);\n return selectedState;\n}\n/**\r\n * Hook factory, which creates a `useSelector` hook bound to a given context.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your ``.\r\n * @returns {Function} A `useSelector` hook bound to the specified context.\r\n */\n\n\nexport function createSelectorHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useReduxContext = context === ReactReduxContext ? useDefaultReduxContext : function () {\n return useContext(context);\n };\n return function useSelector(selector, equalityFn) {\n if (equalityFn === void 0) {\n equalityFn = refEquality;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (!selector) {\n throw new Error(\"You must pass a selector to useSelector\");\n }\n\n if (typeof selector !== 'function') {\n throw new Error(\"You must pass a function as a selector to useSelector\");\n }\n\n if (typeof equalityFn !== 'function') {\n throw new Error(\"You must pass a function as an equality function to useSelector\");\n }\n }\n\n var _useReduxContext = useReduxContext(),\n store = _useReduxContext.store,\n contextSub = _useReduxContext.subscription;\n\n var selectedState = useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub);\n useDebugValue(selectedState);\n return selectedState;\n };\n}\n/**\r\n * A hook to access the redux store's state. This hook takes a selector function\r\n * as an argument. The selector is called with the store state.\r\n *\r\n * This hook takes an optional equality comparison function as the second parameter\r\n * that allows you to customize the way the selected state is compared to determine\r\n * whether the component needs to be re-rendered.\r\n *\r\n * @param {Function} selector the selector function\r\n * @param {Function=} equalityFn the function that will be used to determine equality\r\n *\r\n * @returns {any} the selected state\r\n *\r\n * @example\r\n *\r\n * import React from 'react'\r\n * import { useSelector } from 'react-redux'\r\n *\r\n * export const CounterComponent = () => {\r\n * const counter = useSelector(state => state.counter)\r\n * return
{counter}
\r\n * }\r\n */\n\nexport var useSelector = /*#__PURE__*/createSelectorHook();"],"names":["supportedBrowsers","getLoginProviders","dispatch","fetch","credentials","method","then","h","checkStatus","toJson","response","providers","type","SET_EXTERNAL_PROVIDERS","catch","error","externalLogin","authenticationType","form","document","createElement","provider","forgeryToken","action","value","name","getElementsByName","appendChild","body","submit","ExternalLoginsListPartial","useDispatch","useSelector","state","login","useEffect","externalLoginOption","length","i","Properties","AuthenticationType","push","_jsx","Tooltip","title","onClick","className","_p","_ref","text","snackbarRef","createRef","showSnackbar","setShowSnackbar","useState","showDismiss","setShowDismiss","textValue","setText","Boolean","sessionStorage","getItem","setTimeout","_jsxs","ref","children","setItem","Login","email","setEmail","password","setPassword","showAccountStatus","setShowAccountStatus","submitting","setIsSubmitting","errorEmail","setErrorEmail","errorPassword","setErrorPassword","site","session","siteCustomizations","customizations","requestSessionInfo","siteName","siteCustomization","SiteCustomizations","AEname","invalidCredentials","loginErrors","Icon","style","marginRight","position","top","browser","getBrowser","temp","userAgent","navigator","match","includes","exec","version","appName","appVersion","headers","Accept","JSON","stringify","data","isSSO","providerValue","loginWithSSO","status","loginWithUserPass","hasEmailError","emailValidation","hasPasswordError","passwordValidation","urlParams","URLSearchParams","window","location","search","logData","FormData","returnUrl","token","append","get","split","__RequestVerificationToken","redirecturl","href","message","hasError","_Fragment","_div","onSubmit","e","preventDefault","loginEnter","noValidate","TextField","id","label","required","helperText","onChange","target","goToForgotPassword","Button","variant","color","disabled","_CircularLoading","CircularLoading","size","saved","_ExternalLoginsListPa","_div2","_Snackbar","Snackbar","LoginApp","Provider","store","render","getElementById","arguments","undefined","success","passwordErrors","_extends","errors","passwordIsSaving","isSaving","refEquality","a","b","createSelectorHook","context","useReduxContext","useContext","selector","equalityFn","_useReduxContext","selectedState","contextSub","forceRender","useReducer","s","subscription","useMemo","latestSubscriptionCallbackError","useRef","latestSelector","latestStoreState","latestSelectedState","storeState","getState","current","newSelectedState","err","stack","checkForUpdates","newStoreState","_newSelectedState","onStateChange","trySubscribe","tryUnsubscribe","useSelectorWithStoreAndSubscription","useDebugValue"],"sourceRoot":""}