{"version":3,"file":"static/js/848.c2aba9e2.chunk.js","mappings":"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","sources":["components/Footer.jsx","components/Header.jsx","components/Page.jsx","pages/SignIn.jsx","session_storage.js"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { useHistory } from 'react-router-dom';\nimport styled from 'styled-components';\nimport { useTranslation } from 'react-i18next';\nimport {\n KitFlexRow,\n KitIcon,\n KitLink,\n KitLocalePicker,\n KitUtilCommon,\n KitUtilLocale,\n ThemeColors as colors,\n ThemeConstants,\n} from '@chargepoint/cp-toolkit';\nimport localStorage from '../localStorage';\nimport utils from '../common/utils';\n\nconst { breakpoints, fontSize, spacing } = ThemeConstants;\n\nconst Container = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n @media all and (max-width: ${breakpoints.md}px) {\n flex-direction: column;\n justify-content: center;\n }\n align-items: center;\n background-color: ${colors.gray_10};\n padding: ${spacing.m}rem;\n & * {\n font-size: ${fontSize.text_14}rem;\n }\n`;\n\nconst Copyright = styled.div`\n order: 0;\n @media all and (max-width: ${breakpoints.md}px) {\n order: 1;\n }\n`;\n\nconst Links = styled(KitFlexRow)`\n flex-wrap: wrap;\n justify-content: center;\n align-items: center;\n order: 1;\n @media all and (max-width: ${breakpoints.md}px) {\n order: 0;\n }\n & > * {\n margin-left: ${spacing.m}rem;\n }\n & > *:first-child {\n margin-left: 0;\n }\n`;\n\nconst LocalePickerContainer = styled(KitFlexRow)`\n align-items: center;\n`;\n\nconst LanguageIcon = styled(KitIcon)`\n margin-right: ${spacing.xs}rem;\n`;\n\nfunction Footer() {\n const history = useHistory();\n const { t, i18n } = useTranslation();\n const [showLocalePicker, setShowLocalePicker] = useState(false);\n const [localePickerResult, setLocalePickerResult] = useState(null);\n const [supportedLocales, setSupportedLocales] = useState(undefined);\n\n useEffect(() => {\n const subdomain = utils.getSubdomain();\n const regionCode = KitUtilLocale.getRegionCodeForSSOSubdomain(t, subdomain);\n const defaultLocaleCode = KitUtilLocale.getDefaultLocaleCodeForRegionCode(t, regionCode);\n const localeCode = localStorage.getLocaleCode(defaultLocaleCode);\n setLocalePickerResult(KitLocalePicker.getKitLocalePickerResult(t, regionCode, localeCode));\n }, [t, setLocalePickerResult]);\n\n const footerCopyright = t('footer_copyright', {\n year: new Date().getFullYear(),\n company_name: window.cp_constants.STRING_COMPANY_NAME,\n });\n\n const onLocaleChanged = (result) => {\n setShowLocalePicker(false);\n\n localStorage.setLocaleCode(result.localeCode);\n\n const supportedLocale = KitUtilLocale.getSupportedLocale(result.nosCookieLocale);\n\n i18n.changeLanguage(supportedLocale);\n\n const currentSubdomain = utils.getSubdomain();\n if (currentSubdomain !== result.ssoSubdomain) {\n // Switch subdomain aka NOSLETs\n const queryParamsObject = KitUtilCommon.getQueryObject(window.location.search);\n queryParamsObject.locale = result.localeCode; // Forcing locale to be loaded on new subdomain via query param!!!\n // IMPORTANT: If there's a username query param it should be deleted before redirecting to another NOSLET otherwise\n // backend could force a redirect back to the users proper region NOSLET. Ping pong redirection is bad.\n delete queryParamsObject.username;\n const redirectTo = `${window.location.protocol}//${\n result.ssoSubdomain\n }.${utils.getDomain()}/${KitUtilCommon.getQueryString(queryParamsObject)}`;\n window.location = redirectTo;\n } else {\n // IMPORTANT:\n // Need to remove the \"locale\" query param and refresh page.\n // Otherwise, that \"locale\" query param will take priority over users selected region/locale.\n let path = window.location.pathname;\n const redirectQueryParam = KitUtilCommon.getQueryParam(window.location.search, 'redirect');\n if (redirectQueryParam) {\n path += KitUtilCommon.getQueryString({\n redirect: redirectQueryParam,\n });\n }\n history.push(path);\n }\n };\n\n let corpAboutUrl;\n let corpContactUrl;\n let privacyPolicyUrl;\n if (localePickerResult) {\n corpAboutUrl = `https://${localePickerResult.corporateUrl}/about`;\n corpContactUrl = `https://${localePickerResult.corporateUrl}/support`;\n privacyPolicyUrl = utils.makePrivacyPolicyUrl(localePickerResult);\n }\n\n let californiaPrivacyNoticeLink;\n if (localePickerResult && localePickerResult.displayCaliforniaPrivacy) {\n const policyUrl = utils.makeCaliforniaPrivacyUrl(localePickerResult);\n californiaPrivacyNoticeLink = (\n \n {t('california_privacy_notice')}\n \n );\n }\n\n const currentLocalizedLanguageName = localePickerResult?.localizedLanguageName || 'English';\n const localePickerAriaLabel = t('footer_language_picker_link_aria_label', {\n language: currentLocalizedLanguageName,\n });\n\n const getSupportedLocales = () => {\n return fetch(\n `https://account.${window.cp_constants.ENV_DOMAIN}/account/v1/metadata/languages`,\n {\n method: 'GET',\n }\n )\n .then((response) => {\n return response.json();\n })\n .then((languages) => {\n return languages.filter((l) => l.locale !== '').map((l) => l.locale);\n });\n };\n\n const openLocalePicker = async () => {\n try {\n setSupportedLocales(await getSupportedLocales());\n setShowLocalePicker(true);\n } catch (err) {\n console.error(err);\n }\n };\n\n return (\n \n {footerCopyright}\n \n \n \n \n {currentLocalizedLanguageName}\n \n \n \n {t('about_us')}\n \n \n {t('contact_us')}\n \n \n {t('privacy_policy')}\n \n {californiaPrivacyNoticeLink}\n \n setShowLocalePicker(false)}\n onSelect={onLocaleChanged}\n t={t}\n supportedLocales={supportedLocales}\n />\n \n );\n}\n\nexport default Footer;\n","import React from 'react';\nimport styled from 'styled-components';\nimport { useTranslation } from 'react-i18next';\nimport { ThemeConstants, ThemeColors, KitFlexRow, CPLogo } from '@chargepoint/cp-toolkit';\n\nconst Container = styled(KitFlexRow)`\n justify-content: flex-start;\n align-items: center;\n background-color: ${ThemeColors.gray_10};\n height: 64px;\n padding-left: ${ThemeConstants.spacing.m}rem;\n padding-right: ${ThemeConstants.spacing.m}rem;\n`;\n\nfunction Header() {\n const { t } = useTranslation();\n return (\n \n \n \n );\n}\n\nexport default Header;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useTranslation } from 'react-i18next';\nimport { KitPage, KitAppLayout } from '@chargepoint/cp-toolkit';\nimport Footer from './Footer';\nimport Header from './Header';\n\n// eslint-disable-next-line react/prop-types\nfunction Page({ title, children }) {\n const { i18n } = useTranslation();\n\n return (\n \n \n \n \n {children}\n \n \n \n \n );\n}\n\nPage.propTypes = {\n children: PropTypes.node,\n};\n\nPage.defaultProps = {\n children: undefined,\n};\n\nexport default Page;\n","import React, { useEffect, useRef, useState } from 'react';\nimport { Link, useHistory, useLocation } from 'react-router-dom';\nimport { useTranslation } from 'react-i18next';\nimport styled from 'styled-components';\nimport {\n KitButton,\n KitFlexCol,\n KitFlexRow,\n KitFlexRowCentered,\n KitFlexRowEnd,\n KitLink,\n KitModal,\n KitRadio,\n KitSpinner,\n KitInput,\n KitForm,\n KitUtilCommon,\n KitUtilLocale,\n KitLocalePicker,\n ThemeConstants,\n} from '@chargepoint/cp-toolkit';\nimport Page from '../components/Page';\nimport { setLoginPath, setUserLogin } from '../session_storage';\nimport utils from '../common/utils';\nimport banner from '../images/web-signup-header-min.png';\nimport localStorage from '../localStorage';\n\nconst BannerImg = styled.img`\n max-width: 100%;\n margin-bottom: ${ThemeConstants.spacing.l}rem;\n`;\n\nconst Title = styled.h1`\n text-align: center;\n font-weight: normal;\n margin-bottom: ${ThemeConstants.spacing.m}rem;\n`;\n\nconst StyledForm = styled.form`\n min-width: 476px;\n @media all and (max-width: ${ThemeConstants.breakpoints.md}px) {\n min-width: 300px;\n }\n`;\n\nconst CenteredDiv = styled.div`\n text-align: center;\n`;\n\nconst ForgotFlexRow = styled(KitFlexRow)`\n margin-top: ${ThemeConstants.spacing.s}rem;\n`;\n\nconst SubmitFlexRowCentered = styled(KitFlexRowCentered)`\n margin-top: ${ThemeConstants.spacing.xl}rem;\n margin-bottom: ${ThemeConstants.spacing.xl}rem;\n`;\n\nconst SubmitButton = styled(KitButton)`\n min-width: 120px;\n`;\n\nconst ValidatedUsernameDiv = styled.div`\n display: ${(props) => (props.show ? 'block' : 'none')};\n margin-bottom: ${ThemeConstants.spacing.m}rem;\n`;\n\nconst SignupLine = styled.div`\n margin-top: ${ThemeConstants.spacing.m}rem;\n`;\n\nconst SignInState = {\n username_validation: 0,\n username_validating: 1,\n username_validation_error: 2,\n username_validation_success: 3,\n password_validating: 4,\n password_validation_error: 5,\n password_validation_success: 6,\n select_usernames: 7,\n};\nObject.freeze(SignInState);\n\nfunction SignIn() {\n const { t, i18n } = useTranslation();\n const history = useHistory();\n const usernameQueryParam = KitUtilCommon.getQueryParam(window.location.search, 'username');\n const [username, setUsername] = useState(usernameQueryParam ? usernameQueryParam : '');\n const [password, setPassword] = useState('');\n const [selectUsernames, setSelectUsernames] = useState([]);\n const [selectedUsernameIndex, setSelectedUsernameIndex] = useState(0);\n const [signInState, setSignInState] = useState(SignInState.username_validation);\n const [lastErrorMessage, setLastErrorMessage] = useState('');\n const [localePickerResult, setLocalePickerResult] = useState(null);\n const usernameRef = useRef(null);\n const passwordRef = useRef(null);\n const { search } = useLocation()\n\n useEffect(() => {\n const subdomain = utils.getSubdomain();\n const regionCode = KitUtilLocale.getRegionCodeForSSOSubdomain(t, subdomain);\n const defaultLocaleCode = KitUtilLocale.getDefaultLocaleCodeForRegionCode(t, regionCode);\n const localeCode = localStorage.getLocaleCode(defaultLocaleCode);\n setLocalePickerResult(KitLocalePicker.getKitLocalePickerResult(t, regionCode, localeCode));\n }, [t, setLocalePickerResult]);\n\n useEffect(() => {\n let loginPath = window.location.pathname;\n const redirectQueryParam = KitUtilCommon.getQueryParam(window.location.search, 'redirect');\n if (redirectQueryParam) {\n loginPath += KitUtilCommon.getQueryString({\n redirect: redirectQueryParam,\n });\n }\n setLoginPath(loginPath);\n }, []);\n\n useEffect(() => {\n if (signInState === SignInState.username_validation) {\n // Initial state should set focus to username input\n usernameRef.current.focus();\n }\n if (signInState === SignInState.username_validation_success) {\n // Username is validated... set focus to password input\n passwordRef.current.focus();\n }\n }, [signInState]);\n\n const changeUsernameClicked = () => {\n setSignInState(SignInState.username_validation);\n };\n\n const displayUnknownError = () => {\n const unknown = t('error_ids.unknown');\n setLastErrorMessage(\n t('error_with_message', {\n message: unknown,\n })\n );\n };\n\n const checkForAlreadyLoggedInUser = async () => {\n try {\n const requestHeaders = utils.getCommonRequestHeaders(i18n);\n\n let apiUrl = utils.makeSsoApiUrl('/v1/user/current');\n const redirectQueryParam = KitUtilCommon.getQueryParam(window.location.search, 'redirect');\n if (redirectQueryParam) {\n apiUrl += `?redirect=${encodeURIComponent(redirectQueryParam)}`;\n }\n\n const response = await fetch(apiUrl, {\n method: 'GET',\n credentials: 'include',\n headers: requestHeaders,\n });\n const data = await response.json();\n\n const { hasOwnProperty } = Object.prototype;\n\n switch (response.status) {\n case 200:\n if (hasOwnProperty.call(data, 'challenge_response')) {\n const { challenge_response: challengeResponse } = data;\n if (challengeResponse === 'LANDING_PAGE_REDIRECT') {\n window.location = data.redirect_url;\n }\n }\n break;\n default:\n // Just drop to the SSO login\n break;\n }\n } catch (err) {\n console.error(`Unknown Error: ${err}`);\n }\n };\n\n const validateUsername = async () => {\n try {\n const requestHeaders = utils.getCommonRequestHeaders(i18n);\n\n const requestBody = {\n username,\n timezone_offset: new Date().getTimezoneOffset(),\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,\n };\n\n const redirectQueryParam = KitUtilCommon.getQueryParam(window.location.search, 'redirect');\n if (redirectQueryParam) {\n requestBody.redirect = redirectQueryParam;\n }\n\n const apiUrl = utils.makeSsoApiUrl('/v1/user/login');\n const response = await fetch(apiUrl, {\n method: 'POST',\n credentials: 'include',\n headers: requestHeaders,\n body: JSON.stringify(requestBody),\n });\n const data = await response.json();\n\n const { hasOwnProperty } = Object.prototype;\n\n switch (response.status) {\n case 200:\n if (hasOwnProperty.call(data, 'challenge_response')) {\n setUserLogin(username);\n const { challenge_response: challengeResponse } = data;\n if (challengeResponse === 'PASSWORD') {\n setSignInState(SignInState.username_validation_success);\n } else if (\n challengeResponse === 'IDP_LOGIN' ||\n challengeResponse === 'NOSLET_REDIRECT'\n ) {\n window.location = data.redirect_url;\n } else {\n displayUnknownError();\n console.error(`Unexpected challenge response: ${challengeResponse}`);\n setSignInState(SignInState.username_validation_error);\n }\n } else {\n setLastErrorMessage('Error validating user: Missing challenge response');\n setSignInState(SignInState.username_validation_error);\n }\n break;\n default:\n if (hasOwnProperty.call(data, 'error_message')) {\n // Returned error_message will be localized by SSO backend\n setLastErrorMessage(data.error_message);\n } else {\n setLastErrorMessage(\n t('error_with_message', {\n message: `[${response.status}] ${response.statusText}`,\n })\n );\n }\n setSignInState(SignInState.username_validation_error);\n break;\n }\n } catch (err) {\n displayUnknownError();\n console.error(`Unknown Error: ${err}`);\n setSignInState(SignInState.username_validation_error);\n }\n };\n\n useEffect(() => {\n async function performStartupChecks() {\n await checkForAlreadyLoggedInUser();\n\n if (usernameQueryParam) {\n // This will skip directly to password entry as the username query param is present.\n // IMPORTANT: Needs to call validateUsername in the edge case this user account is in a separate region/noslet.\n // See NOSLET_REDIRECT challenge response!!!\n setSignInState(SignInState.username_validating);\n await validateUsername();\n }\n }\n\n performStartupChecks();\n }, []);\n\n const attemptLogin = async () => {\n try {\n const requestHeaders = utils.getCommonRequestHeaders(i18n);\n\n const requestBody = {\n username,\n password,\n timezone_offset: new Date().getTimezoneOffset(),\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,\n };\n\n const redirectQueryParam = KitUtilCommon.getQueryParam(window.location.search, 'redirect');\n if (redirectQueryParam) {\n requestBody.redirect = redirectQueryParam;\n }\n\n const apiUrl = utils.makeSsoApiUrl('/v1/user/login');\n const response = await fetch(apiUrl, {\n method: 'POST',\n credentials: 'include',\n headers: requestHeaders,\n body: JSON.stringify(requestBody),\n });\n const data = await response.json();\n\n const { hasOwnProperty } = Object.prototype;\n\n switch (response.status) {\n case 200:\n if (hasOwnProperty.call(data, 'challenge_response')) {\n const { challenge_response: challengeResponse } = data;\n if (challengeResponse === 'SELECT_USERNAMES') {\n const { data: usernamesData } = data;\n if (usernamesData.length > 0) {\n setSelectUsernames(usernamesData);\n setUsername(usernamesData[0]);\n setSignInState(SignInState.select_usernames);\n } else {\n displayUnknownError();\n console.error('SELECT_USERNAMES challenge missing usernames');\n setSignInState(SignInState.username_validation_error);\n }\n } else if (challengeResponse === 'NOSLET_REDIRECT') {\n window.location = data.redirect_url;\n } else if (challengeResponse === 'LANDING_PAGE_REDIRECT') {\n if (data.redirect_url.indexOf(window.location.origin) !== -1) {\n history.push(data.redirect_url.replace(window.location.origin, ''));\n } else {\n window.location = data.redirect_url;\n }\n } else {\n displayUnknownError();\n console.error(`Unexpected challenge response: ${challengeResponse}`);\n setSignInState(SignInState.username_validation_error);\n }\n } else if (hasOwnProperty.call(data, 'redirect_url')) {\n setSignInState(SignInState.password_validation_success);\n window.location = data.redirect_url;\n } else {\n setLastErrorMessage('Missing redirect_url');\n setSignInState(SignInState.password_validation_error);\n }\n break;\n default:\n if (hasOwnProperty.call(data, 'error_message')) {\n // Returned error_message will be localized by SSO backend\n setLastErrorMessage(data.error_message);\n } else {\n setLastErrorMessage(\n t('error_with_message', {\n message: `[${response.status}] ${response.statusText}`,\n })\n );\n }\n setSignInState(SignInState.password_validation_error);\n break;\n }\n } catch (err) {\n displayUnknownError();\n console.error(`Unknown Error: ${err}`);\n setSignInState(SignInState.password_validation_error);\n }\n };\n\n const handleSubmit = (e) => {\n e.preventDefault();\n switch (signInState) {\n case SignInState.username_validation:\n case SignInState.username_validation_error:\n setSignInState(SignInState.username_validating);\n validateUsername();\n break;\n case SignInState.username_validation_success:\n case SignInState.password_validation_error:\n setSignInState(SignInState.password_validating);\n attemptLogin();\n break;\n default:\n break;\n }\n };\n\n const [signupText, signupLink] = utils.getSignupLinkWithText(search, localePickerResult)\n\n let buttonDisabled = false;\n let buttonTitle = t('next');\n if (signInState >= SignInState.username_validation_success) {\n buttonTitle = t('login_button');\n }\n\n if (\n signInState === SignInState.username_validating ||\n signInState === SignInState.password_validating\n ) {\n buttonDisabled = true;\n buttonTitle = ;\n }\n\n const forgotUsernamePath = '/forgot-username';\n\n let forgotPasswordPath = '/forgot-password';\n forgotPasswordPath += KitUtilCommon.getQueryString({\n username,\n });\n\n let usernameError;\n if (signInState === SignInState.username_validation_error) {\n usernameError = lastErrorMessage;\n }\n\n let passwordError;\n if (signInState === SignInState.password_validation_error) {\n passwordError = lastErrorMessage;\n }\n\n let selectUsernameModal;\n if (signInState === SignInState.select_usernames) {\n const radios = [];\n\n const onSelectUsername = (i) => {\n setSelectedUsernameIndex(i);\n setUsername(selectUsernames[i]);\n };\n\n for (let i = 0; i < selectUsernames.length; i += 1) {\n const uname = selectUsernames[i];\n const radioId = `radio_${uname}`;\n radios.push(\n onSelectUsername(i)}\n />\n );\n }\n\n const onContinue = () => {\n setSelectedUsernameIndex(0);\n setSignInState(SignInState.password_validating);\n attemptLogin();\n };\n\n selectUsernameModal = (\n \n \n {t('multiple_usernames_found')}\n \n \n {t('select_username_to_continue_logging_in')}\n {radios}\n \n \n \n \n {t('continue')}\n \n \n \n \n );\n }\n\n return (\n \n \n \n \n \n {t('login_title')}\n \n \n = SignInState.username_validation_success ? 1 : 0}\n >\n {username}\n \n \n {t('change')}\n \n \n \n {signInState < SignInState.username_validation_success && (\n <>\n \n setUsername(e.target.value)}\n isError={!!usernameError}\n />\n \n \n \n {t('forgot_username')}\n \n \n >\n )}\n {signInState >= SignInState.username_validation_success && (\n <>\n \n setPassword(e.target.value)}\n isError={!!passwordError}\n />\n \n \n \n {t('forgot_password')}\n \n \n >\n )}\n \n \n {buttonTitle}\n \n \n \n \n {signupText}{' '}\n \n {t('sign_up')}\n \n \n \n \n \n \n {selectUsernameModal}\n \n );\n}\n\nexport default SignIn;\n","const LOGIN_PATH_KEY = 'login_path';\nconst USER_LOGIN_KEY = 'user_login';\n\nexport const setLoginPath = (url) => {\n window.sessionStorage.setItem(LOGIN_PATH_KEY, url);\n};\n\nexport const getLoginPath = () => {\n let loginPath = window.sessionStorage.getItem(LOGIN_PATH_KEY);\n if (!loginPath) {\n // At a minimum if we don't know where to redirect to just go to \"/\" login page route.\n loginPath = '/';\n }\n return loginPath;\n};\n\nexport const setUserLogin = (login) => {\n window.sessionStorage.setItem(USER_LOGIN_KEY, login);\n};\n\nexport const getUserLogin = () => {\n const userLogin = window.sessionStorage.getItem(USER_LOGIN_KEY);\n return userLogin ? userLogin : '';\n};\n"],"names":["breakpoints","ThemeConstants","fontSize","spacing","Container","styled","div","md","colors","gray_10","m","text_14","Copyright","Links","KitFlexRow","LocalePickerContainer","LanguageIcon","KitIcon","xs","history","useHistory","useTranslation","t","i18n","useState","showLocalePicker","setShowLocalePicker","localePickerResult","setLocalePickerResult","undefined","supportedLocales","setSupportedLocales","useEffect","subdomain","utils","getSubdomain","regionCode","KitUtilLocale","getRegionCodeForSSOSubdomain","defaultLocaleCode","getDefaultLocaleCodeForRegionCode","localeCode","localStorage","getLocaleCode","KitLocalePicker","getKitLocalePickerResult","corpAboutUrl","corpContactUrl","privacyPolicyUrl","californiaPrivacyNoticeLink","footerCopyright","year","Date","getFullYear","company_name","window","cp_constants","STRING_COMPANY_NAME","corporateUrl","makePrivacyPolicyUrl","displayCaliforniaPrivacy","policyUrl","makeCaliforniaPrivacyUrl","href","target","rel","currentLocalizedLanguageName","localizedLanguageName","localePickerAriaLabel","language","openLocalePicker","fetch","ENV_DOMAIN","method","then","response","json","languages","filter","l","locale","map","console","error","onClick","icon","size","iconSize","fill","blue_55","selectedLocale","show","onHide","onSelect","result","setLocaleCode","supportedLocale","getSupportedLocale","nosCookieLocale","changeLanguage","ssoSubdomain","queryParamsObject","KitUtilCommon","getQueryObject","location","search","username","redirectTo","protocol","getDomain","getQueryString","path","pathname","redirectQueryParam","getQueryParam","redirect","push","ThemeColors","width","Page","title","children","Header","Body","Footer","defaultProps","BannerImg","img","Title","h1","StyledForm","form","CenteredDiv","ForgotFlexRow","s","SubmitFlexRowCentered","KitFlexRowCentered","xl","SubmitButton","KitButton","ValidatedUsernameDiv","props","SignupLine","SignInState","username_validation","username_validating","username_validation_error","username_validation_success","password_validating","password_validation_error","password_validation_success","select_usernames","Object","freeze","usernameQueryParam","setUsername","password","setPassword","selectUsernames","setSelectUsernames","selectedUsernameIndex","setSelectedUsernameIndex","signInState","setSignInState","lastErrorMessage","setLastErrorMessage","usernameRef","useRef","passwordRef","useLocation","loginPath","setLoginPath","current","focus","displayUnknownError","unknown","message","checkForAlreadyLoggedInUser","requestHeaders","getCommonRequestHeaders","apiUrl","makeSsoApiUrl","encodeURIComponent","credentials","headers","data","hasOwnProperty","prototype","status","call","challenge_response","redirect_url","validateUsername","requestBody","timezone_offset","getTimezoneOffset","timezone","Intl","DateTimeFormat","resolvedOptions","timeZone","body","JSON","stringify","setUserLogin","challengeResponse","error_message","statusText","performStartupChecks","attemptLogin","usernamesData","length","indexOf","origin","replace","getSignupLinkWithText","signupText","signupLink","buttonDisabled","buttonTitle","usernameError","passwordError","selectUsernameModal","forgotPasswordPath","radios","i","uname","radioId","checked","name","label","value","onChange","onSelectUsername","closeOnClickOutside","position","src","banner","alt","onSubmit","e","preventDefault","noValidate","Label","text","htmlFor","id","ref","type","disabled","isError","InfoText","to","variant","LOGIN_PATH_KEY","USER_LOGIN_KEY","url","sessionStorage","setItem","getLoginPath","getItem","login","getUserLogin","userLogin"],"sourceRoot":""}
{t('select_username_to_continue_logging_in')}