{"version":3,"file":"chunks/9325.chunk.b9b810273dfed8cc8e18.js","mappings":"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","sources":["webpack://northern-tuna-portal/./common/react/components/Forms/ConfirmationCodeInput/ConfirmationCodeInput.tsx","webpack://northern-tuna-portal/./common/react/components/Forms/PhoneOrEmailInput/PhoneOrEmailInput.tsx","webpack://northern-tuna-portal/./common/react/components/Pages/Login/SendCodeButton.tsx","webpack://northern-tuna-portal/./common/react/components/Pages/Login/Login.tsx"],"sourcesContent":["import * as React from 'react';\nimport MaskedInput from 'react-text-mask';\n\nimport { FieldProps } from 'formik';\n\nimport '@common/react/scss/components/confirmationCode.scss';\n\ninterface Props {\n\tfieldProps: FieldProps;\n\tdisabled?: boolean;\n\tmask?: any;\n}\n\nexport const ConfirmationCodeInput: React.FC = ({\n\tfieldProps: { field },\n\tdisabled,\n\tmask = [/\\d/, /\\d/, /\\d/, /\\d/],\n}) => {\n\treturn
\n\t\t\n\t\t
;\n};\n","import React from 'react';\nimport MaskedInput from 'react-text-mask';\n\nimport { FieldProps } from 'formik';\nimport * as Yup from 'yup';\n\nimport { phoneRegexp } from '@common/react/utils/validationHelpers';\n\ninterface Props {\n\tplaceholder?: string;\n\tfieldProps: FieldProps;\n\tclassName?: string;\n\tdisabled?: boolean;\n\tallPhoneMask?: boolean;\n}\n\nconst removePhoneMask = (value: string, withOne?: boolean) => (value\n\t? (withOne ? value.replace(/^\\+1/, '') : value).replace(/[+\\(\\)\\-\\s_]/g, '') : '');\n\nconst removeMask = (value: string) => (value\n\t? value.replace(/\\+(.) \\((...)\\) (...)-(...)/g, '$1$2$3$4') : '');\n\nconst allCountriesPhoneMask = ['+', /[1-9]/, ' ', '(', /[\\d]/, /\\d/, /\\d/, ')', ' ', /\\d/, /\\d/, /\\d/, '-', /\\d/, /\\d/, /\\d/, /\\d/];\n\nexport const allPhoneFormat = (phone: string | null | undefined): string => (phone\n\t? phone.replace(/^\\+([1-9])([1-9]\\d{2})(\\d{3})(\\d{4})$/, '+$1 ($2) $3-$4') : '');\n\nexport const emailOrPhoneValidator = Yup.string()\n\t.test(\n\t\t'is-valid',\n\t\t'Enter Valid Phone/Email',\n\t\t(value) => {\n\t\t\tconst emailRegex = /^([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$/;\n\n\t\t\tconst isValidEmail = emailRegex.test(value || '');\n\t\t\tconst isValidPhone = phoneRegexp.test(value || '');\n\n\t\t\treturn isValidEmail || isValidPhone;\n\t\t},\n\t);\n\nconst PhoneOrEmailInput: React.FC = ({\n\tplaceholder = '',\n\tfieldProps: { field, form },\n\tclassName = 'form-control',\n\tallPhoneMask,\n\tdisabled,\n}) => {\n\tconst value = React.useMemo(() => removeMask(field.value), [field.value]);\n\n\tconst pipe = (value, t) => {\n\t\tconst trimRawValue = t.rawValue.trim();\n\t\tif (['_', '+', '-', '(', ')'].includes(trimRawValue)) {\n\t\t\treturn {\n\t\t\t\tvalue: '+1 (',\n\t\t\t\tindexesOfPipedChars: [0, 1, 2, 3, 4],\n\t\t\t};\n\t\t}\n\t\tconst text = ['0', '1'].includes(trimRawValue) ? `+1 (${trimRawValue}` : value;\n\t\tconst withoutPhoneMask = removePhoneMask(value);\n\n\t\tconst hasPhoneMask = text.match(/^\\+/);\n\t\tconst textWithoutMinusMask = hasPhoneMask ? text.replace(/-/, '') : text;\n\t\tconst hasPreviousValuePhoneMask = t.previousConformedValue?.match(/^\\+/);\n\n\t\treturn (withoutPhoneMask.match(/\\D/) || value.trim() === '') && withoutPhoneMask\n\t\t\t? textWithoutMinusMask.replace(hasPreviousValuePhoneMask ? /[+\\(\\)\\s_]/g : /[+\\(\\)\\s]/g, '')\n\t\t\t\t.replace(/^1/, (value) => (hasPreviousValuePhoneMask ? '' : value))\n\t\t\t: text;\n\t};\n\n\tconst handleChange = (e) => {\n\t\tconst value = e.target.value;\n\t\tconst withoutPhoneMask = removePhoneMask(value);\n\t\tform.setFieldValue(field.name, value && !(withoutPhoneMask.match(/\\D/) || value.trim() === '')\n\t\t\t? `+${value.match(/^\\+1/) && !allPhoneMask ? '' : 1}${withoutPhoneMask}` : value);\n\t};\n\n\tconst mask = (value) => {\n\t\tconst withoutPhoneMask = removePhoneMask(value);\n\t\treturn (withoutPhoneMask.match(/\\D/) || value.trim() === '') && value ? value.split('').map((i) => /./) : allCountriesPhoneMask;\n\t};\n\n\treturn ;\n};\n\nexport default PhoneOrEmailInput;\n","import React from 'react';\n\nimport * as Yup from 'yup';\nimport Alert from 'antd/lib/alert';\nimport Modal from 'antd/lib/modal';\n\nimport { ItemProvider } from '@common/react/components/Core/ItemProvider/ItemProvider';\nimport { ItemEditor } from '@common/react/components/Core/ItemEditor/ItemEditor';\nimport FormikField from '@common/react/components/Forms/FormikField/FormikField';\nimport { ConfirmationCodeInput } from '@common/react/components/Forms/ConfirmationCodeInput/ConfirmationCodeInput';\nimport { RequestButton } from '@common/react/components/UI/LoadingButton/LoadingButton';\nimport { phoneRegexp, simpleStringValidator } from '@common/react/utils/validationHelpers';\n\ninterface Props {\n\tphone: string;\n\tafterSubmit?: (res) => void;\n\tauthRequest: string;\n\tsendCodeRequest: string;\n\tresendCodeRequest?: string;\n\topenModal?: boolean;\n}\n\nconst validationSchemaConfirm = Yup.object().shape({\n\tloginCode: simpleStringValidator,\n});\n\nconst SendCodeButton: React.FC = ({\n\tphone,\n\tafterSubmit,\n\tauthRequest = 'authByCode',\n\tsendCodeRequest = 'sendLoginCode',\n\topenModal = false,\n\tresendCodeRequest = sendCodeRequest,\n}) => {\n\tconst [open, setOpen] = React.useState(openModal);\n\tconst isPhoneValid = React.useMemo(() => {\n\t\treturn phoneRegexp.test(phone || '');\n\t}, [phone]);\n\n\tconst [time, setTime] = React.useState(30);\n\tconst ref = React.useRef(null);\n\n\tconst startTimer = () => {\n\t\tref.current = null;\n\t\tsetTime(60);\n\t\tref.current = setInterval(() => {\n\t\t\tsetTime((prev) => {\n\t\t\t\tconst newTime = prev - 1;\n\t\t\t\tif (!newTime && ref.current) {\n\t\t\t\t\tclearInterval(ref.current);\n\t\t\t\t\tref.current = null;\n\t\t\t\t}\n\t\t\t\treturn newTime;\n\t\t\t});\n\t\t}, 1000);\n\t\treturn () => {\n\t\t\tif (ref.current) {\n\t\t\t\tclearInterval(ref.current);\n\t\t\t}\n\t\t};\n\t};\n\n\tReact.useEffect(() => {\n\t\tstartTimer();\n\t}, []);\n\n\tReact.useEffect(() => {\n\t\tif (openModal && !open) {\n\t\t\tsetOpen(openModal);\n\t\t}\n\t}, [openModal]);\n\n\tif (!isPhoneValid) return null;\n\n\treturn <>\n\t\t {\n\t\t\t\tsetOpen(true);\n\t\t\t}}\n\t\t>\n\t\t\tSend Code\n\t\t\n\t\t {\n\t\t\t\tsetOpen(false);\n\t\t\t}}\n\t\t\tdestroyOnClose\n\t\t\twidth={500}\n\t\t\tfooter={null}\n\t\t>\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\tSecurity code has been sent to your phone number.\n\t\t\t\t\t
}\n\t\t\t\t/>\n\t\t\t\n\t\t\t
\n\t\t\t\tDidn't receive a code?\n\t\t\t\t{' '}\n\t\t\t\t{time ? `Resend code in ${time} seconds.`\n\t\t\t\t\t: (\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tstartTimer();\n\t\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonError={(e) => {\n\t\t\t\t\t\t\t\tModal.error({\n\t\t\t\t\t\t\t\t\ttitle: 'Error',\n\t\t\t\t\t\t\t\t\tcontent: e,\n\t\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t\tif (ref.current) {\n\t\t\t\t\t\t\t\t\tclearInterval(ref.current);\n\t\t\t\t\t\t\t\t\tref.current = null;\n\t\t\t\t\t\t\t\t\tsetTime(0);\n\t\t\t\t\t\t\t\t\tstartTimer();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\trequestType={resendCodeRequest}\n\t\t\t\t\t\t\trequestProps={{ phoneNumber: phone }}\n\t\t\t\t\t\t\tsuccessMessage=\"Security code has been successfully sent.\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tResend code\n\t\t\t\t\t\t)}\n\t\t\t
\n\t\t\t\n\t\t\t\tid={-1}\n\t\t\t\tadd={{\n\t\t\t\t\tloginCode: '',\n\t\t\t\t\tlogin: phone,\n\t\t\t\t\tpath: '/',\n\t\t\t\t}}\n\t\t\t\ttype=\"\"\n\t\t\t\tsaveRequest={authRequest}\n\t\t\t\tvalidationSchema={validationSchemaConfirm}\n\t\t\t>\n\t\t\t\t\n\t\t\t\t\twithButtons\n\t\t\t\t\treadonly={false}\n\t\t\t\t\tformikProps={{ enableReinitialize: true }}\n\t\t\t\t\tsuccessMessage=\"\"\n\t\t\t\t\tafterSubmit={(values) => {\n\t\t\t\t\t\tsetOpen(false);\n\t\t\t\t\t\tafterSubmit && afterSubmit({ phone });\n\t\t\t\t\t}}\n\t\t\t\t\tsaveText=\"Send\"\n\t\t\t\t\tedit={() =>
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t
}\n\t\t\t\t/>\n\t\t\t\n\t\t\n\t;\n};\n\nexport default SendCodeButton;\n","import * as React from 'react';\nimport { Link, Redirect, useLocation } from 'react-router-dom';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport * as Yup from 'yup';\n\nimport { simpleStringValidator } from '@common/react/utils/validationHelpers';\nimport FormikField from '@common/react/components/Forms/FormikField/FormikField';\nimport { BaseUser } from '@common/typescript/objects/BaseUser';\nimport { BaseApplicationState } from '@common/react/store';\nimport * as LoginState from '@common/react/store/Login';\nimport PhoneOrEmailInput, { emailOrPhoneValidator } from '@common/react/components/Forms/PhoneOrEmailInput/PhoneOrEmailInput';\nimport ServerPageProvider from '@common/react/components/Core/ServerPageProvider/ServerPageProvider';\nimport { ItemProvider } from '@common/react/components/Core/ItemProvider/ItemProvider';\nimport { ItemEditor } from '@common/react/components/Core/ItemEditor/ItemEditor';\nimport { callWithConnectionOnce } from '@common/react/utils/configureSignarR';\nimport { WithId } from '@common/typescript/objects/WithId';\nimport SendCodeButton from '@common/react/components/Pages/Login/SendCodeButton';\n\nimport '@common/react/scss/components/login.scss';\n\nexport interface LoginFormValues extends WithId {\n\tlogin: string;\n\tpassword: string;\n\tcode: string;\n\tpath: string;\n}\n\nconst validationSchema = Yup.object().shape({\n\tlogin: emailOrPhoneValidator,\n\tpassword: simpleStringValidator,\n});\n\nexport interface AuthCodeComponentProps {\n\tformValues: LoginFormValues;\n\tafterSubmit: (item: LoginFormValues, res: any) => void;\n\tcancelAuthWithCode: () => void;\n}\n\ninterface LoginProps {\n\tcontainerClassName?: string;\n\tafterBaseRedirectUser?: (user: User) => React.ReactNode;\n\trenderAuthWithCode?: (props: AuthCodeComponentProps) => React.ReactNode;\n\tlogo?: React.ReactNode;\n\twithFieldTitle?: boolean;\n\ttitle?: string;\n\twithoutServerPage?: boolean;\n\trequest?: string;\n\tafterSubmit?: (item: LoginFormValues, res: any) => void;\n\tonSaveRequestError?: ((error: string) => void);\n\tcustomReduxActions?: (dispatch, init: any) => void;\n\tbuttons?: React.ReactNode;\n\tafterLogin?: () => void;\n\trecoverPath?: string;\n\tauthByCodeRequest?: string;\n\tsendCodeRequest?: string;\n}\n\nconst Login: (p: LoginProps) => React.ReactElement = (props) => {\n\tconst search = useLocation().search;\n\n\tconst [isVisible, setIsVisible] = React.useState(false);\n\tconst [openLoginCode, setOpenLoginCode] = React.useState(false);\n\tconst [formValues, setFormValues] = React.useState(null);\n\n\tconst loginState: LoginState.LoginState | null = useSelector((state: BaseApplicationState) => state.login);\n\tconst dispatch = useDispatch();\n\tconst loginActions = bindActionCreators(LoginState.getActionCreators(), dispatch);\n\n\tconst {\n\t\tafterBaseRedirectUser,\n\t\trenderAuthWithCode,\n\t\twithFieldTitle,\n\t\tcontainerClassName = '',\n\t\tlogo,\n\t\tbuttons,\n\t\ttitle = 'Login',\n\t\twithoutServerPage,\n\t\trequest = 'auth',\n\t\trecoverPath = '/recover',\n\t\tafterSubmit = (item, res) => {\n\t\t\tconst init = res?.initObject;\n\n\t\t\tif (init && init.user && init.guid) {\n\t\t\t\t!loginState.user && props.customReduxActions && props.customReduxActions(dispatch, init);\n\n\t\t\t\tloginActions.setUserAndSession(init.user as BaseUser, init.guid as string);\n\t\t\t}\n\n\t\t\tsetFormValues(null);\n\t\t},\n\t\tonSaveRequestError = (error) => {\n\t\t\tif (error === '2FA enabled' && renderAuthWithCode) {\n\t\t\t\tsetIsVisible(true);\n\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tif (error === 'The confirmation code has been sent.') {\n\t\t\t\tsetOpenLoginCode(true);\n\n\t\t\t\treturn true;\n\t\t\t}\n\t\t},\n\t\tafterLogin,\n\t\tauthByCodeRequest,\n\t\tsendCodeRequest,\n\t} = props;\n\n\tconst [afterLoginTrigger, setLoginTrigger] = React.useState(false);\n\n\tReact.useEffect(() => {\n\t\tif (loginState.user && !afterLoginTrigger) {\n\t\t\tafterLogin && afterLogin();\n\t\t\tsetLoginTrigger(true);\n\t\t}\n\t}, [!!loginState.user]);\n\n\tconst hostOptions = useSelector((state: BaseApplicationState) => state.hostOptions.item);\n\n\tconst redirectUser = React.useCallback((user: User) => {\n\t\tif (hostOptions?.redirectUrlName) {\n\t\t\tconst redirectUrl = new URLSearchParams(search).get(hostOptions.redirectUrlName);\n\t\t\tif (redirectUrl) {\n\t\t\t\treturn ;\n\t\t\t}\n\t\t}\n\n\t\tif (afterBaseRedirectUser) {\n\t\t\treturn afterBaseRedirectUser(user);\n\t\t}\n\n\t\treturn ;\n\t}, [afterBaseRedirectUser]);\n\n\tconst beforeSubmit = (values, actions, submit) => {\n\t\tsetFormValues(values);\n\n\t\tcallWithConnectionOnce(() => { submit(); });\n\t};\n\n\tconst cancelAuthWithCode = () => {\n\t\tsetIsVisible(false);\n\t};\n\n\treturn (<>\n\t\t{!withoutServerPage\n\t\t\t\t&& }\n\t\t\t\t\tinner={(serverPage) => <>}\n\t\t\t\t/>\n\t\t}\n\t\t
\n\t\t\t{logo}\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\tid={-1}\n\t\t\t\t\ttype={request}\n\t\t\t\t\treadonly={false}\n\t\t\t\t\tadd={{\n\t\t\t\t\t\tlogin: '',\n\t\t\t\t\t\tpassword: '',\n\t\t\t\t\t\tcode: '',\n\t\t\t\t\t\tpath: '/',\n\t\t\t\t\t}}\n\t\t\t\t\tvalidationSchema={validationSchema}\n\t\t\t\t\tonSaveRequestError={onSaveRequestError}\n\t\t\t\t>\n\t\t\t\t\t{renderAuthWithCode && isVisible && !loginState?.user\n\t\t\t\t\t\t? renderAuthWithCode({ formValues, afterSubmit, cancelAuthWithCode })\n\t\t\t\t\t\t:
\n\t\t\t\t\t\t\t{loginState?.user && redirectUser(loginState.user)}\n\t\t\t\t\t\t\t{title &&
\n\t\t\t\t\t\t\t\t

{title}

\n\t\t\t\t\t\t\t
}\n\t\t\t\t\t\t\t <>\n\t\t\t\t\t\t\t\t\t <>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{authByCodeRequest && fieldProps.field.value\n\t\t\t\t\t\t\t\t\t\t\t\t&& \n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{recoverPath &&
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\tForget Password?\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t
\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\n\t);\n};\n\nexport default Login;\n"],"names":["ConfirmationCodeInput","field","fieldProps","disabled","mask","className","type","guide","id","name","htmlFor","removePhoneMask","value","withOne","replace","allCountriesPhoneMask","emailOrPhoneValidator","Yup","test","isValidEmail","isValidPhone","phoneRegexp","placeholder","form","allPhoneMask","React","removeMask","match","trim","split","map","i","pipe","t","trimRawValue","rawValue","includes","indexesOfPipedChars","text","withoutPhoneMask","textWithoutMinusMask","hasPreviousValuePhoneMask","previousConformedValue","onChange","e","target","setFieldValue","onBlur","validationSchemaConfirm","shape","loginCode","simpleStringValidator","phone","afterSubmit","authRequest","sendCodeRequest","openModal","resendCodeRequest","open","setOpen","isPhoneValid","time","setTime","ref","startTimer","current","setInterval","prev","newTime","clearInterval","requestType","requestProps","phoneNumber","onSuccess","res","title","onCancel","destroyOnClose","width","footer","showIcon","style","marginBottom","message","display","marginLeft","beforeAction","onError","Modal","content","successMessage","ItemProvider","add","login","path","saveRequest","validationSchema","ItemEditor","withButtons","readonly","formikProps","enableReinitialize","values","saveText","edit","FormikField","containerClassName","fieldName","render","password","props","search","useLocation","isVisible","setIsVisible","openLoginCode","setOpenLoginCode","formValues","setFormValues","loginState","useSelector","state","dispatch","useDispatch","loginActions","bindActionCreators","LoginState","afterBaseRedirectUser","renderAuthWithCode","withFieldTitle","logo","buttons","withoutServerPage","request","recoverPath","item","init","initObject","user","guid","customReduxActions","setUserAndSession","onSaveRequestError","error","afterLogin","authByCodeRequest","afterLoginTrigger","setLoginTrigger","hostOptions","redirectUser","redirectUrlName","redirectUrl","URLSearchParams","get","Redirect","to","ServerPageProvider","defaultTitle","loader","inner","serverPage","code","cancelAuthWithCode","beforeSubmit","actions","submit","callWithConnectionOnce","formikBag","inputProps","PhoneOrEmailInput","Link"],"sourceRoot":""}