{"version":3,"file":"chunks/RecoverPage.chunk.e51ca2ed73144da8c04c.js","mappings":"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","sources":["webpack://northern-tuna-portal/./common/react/components/Forms/Captcha.tsx","webpack://northern-tuna-portal/./common/react/components/Pages/Recover/SetPassword.tsx","webpack://northern-tuna-portal/./common/react/components/Pages/Recover/Recover.tsx","webpack://northern-tuna-portal/./ClientApp/components/Pages/Recover/Recover.tsx","webpack://northern-tuna-portal/./common/react/components/Forms/PhoneOrEmailInput/PhoneOrEmailInput.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { generateGUID } from '@common/react/utils/utils';\n\ninterface CaptchaProps {\n\tupdate: any;\n\twithGuid?: boolean;\n\ticonClassName?: string;\n\tcounter?: number;\n\tpath?: string;\n}\n\nconst Captcha: React.FC<CaptchaProps> = (props) => {\n\tconst {\n\t\ticonClassName = 'icon-refresh icons',\n\t\tupdate,\n\t\twithGuid = true,\n\t\tcounter,\n\t\tpath = 'captcha',\n\t} = props;\n\n\tconst getSrc = (): string => {\n\t\treturn `${path}?${withGuid ? `guid=${code}` : 'id='}&refresh=${new Date().getTime()}`;\n\t};\n\n\tconst [code, setCode] = React.useState(() => generateGUID());\n\tconst [src, setSrc] = React.useState(getSrc());\n\tconst [currentCounter, setCurrentCounter] = React.useState(counter);\n\n\tconst reload = (event: any) => {\n\t\tevent.preventDefault();\n\t\tsetSrc(getSrc());\n\t};\n\n\tReact.useEffect(() => {\n\t\tupdate(code);\n\t}, []);\n\n\tReact.useEffect(() => {\n\t\tif (counter !== currentCounter) {\n\t\t\tsetCurrentCounter(counter);\n\t\t\tsetSrc(getSrc());\n\t\t}\n\t}, [counter]);\n\n\treturn <div className=\"captcha-component\">\n\t\t<img src={src} alt=\"captcha\" />\n\t\t<button className=\"captcha-component__reload\" tabIndex={-1} type=\"button\" onClick={reload}>\n\t\t\t<i className={`captcha-component__icon ${iconClassName}`} />\n\t\t</button>\n\t</div>;\n};\n\nexport default Captcha;\n","import React from 'react';\nimport { Link } from 'react-router-dom';\n\nimport * as Yup from 'yup';\n\nimport Modal from 'antd/lib/modal';\n\nimport { FieldProps, FormikProps } from 'formik';\n\nimport FormikField from '@common/react/components/Forms/FormikField/FormikField';\nimport { ConfirmationCodeInput } from '@common/react/components/Forms/ConfirmationCodeInput/ConfirmationCodeInput';\nimport { PreventDefaultButton } from '@common/react/components/Forms/Button';\nimport { simpleStringValidator } from '@common/react/utils/validationHelpers';\nimport { ItemProvider } from '@common/react/components/Core/ItemProvider/ItemProvider';\nimport { ItemEditor } from '@common/react/components/Core/ItemEditor/ItemEditor';\nimport { WithId } from '@common/typescript/objects/WithId';\nimport { RequestButton } from '@common/react/components/UI/LoadingButton/LoadingButton';\nimport { BaseUser } from '@common/typescript/objects/BaseUser';\nimport { useApplicationContext } from '@common/react/components/Core/Application/Application';\n\ninterface Props {\n\tphoneNumber: string;\n\tsetPasswordByPhoneRequest?: string;\n\tresendSetPasswordByPhoneCodeRequest?: string;\n\ttopMessage?: string;\n\twithFieldTitle?: boolean;\n\tonBack?: () => void;\n\tafterLoginPath?: string;\n\trecoverPath?: string;\n}\n\ninterface ConfirmCode extends WithId {\n\tpath: string;\n\tpassword: string;\n\trepeat: string;\n\tcode: string;\n\tphoneNumber: string;\n}\n\nconst validationSchema = Yup.object().shape({\n\tcode: simpleStringValidator,\n\tpassword: simpleStringValidator,\n\trepeat: Yup.string().oneOf([Yup.ref('password'), null], 'Passwords are not equal').required(),\n});\n\nconst SetPassword: <User extends BaseUser>(p: Props) => React.ReactElement<User> = <User extends BaseUser, >(props) => {\n\tconst {\n\t\tphoneNumber,\n\t\tsetPasswordByPhoneRequest = 'setPasswordAndLoginByPhoneNumber',\n\t\tresendSetPasswordByPhoneCodeRequest = 'resendRecoverByPhoneCode',\n\t\ttopMessage = 'A phone number verification message has been sent to your current phone number.',\n\t\twithFieldTitle,\n\t\tonBack,\n\t\tafterLoginPath = '/dashboard',\n\t\trecoverPath = '/recover',\n\t} = props;\n\tconst [time, setTime] = React.useState(30);\n\tconst ref = React.useRef<any>(null);\n\n\tconst [success, setSuccess] = React.useState<boolean>(false);\n\n\tconst { handleLogin } = useApplicationContext();\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\tif (success) {\n\t\treturn (\n\t\t\t<div className=\"text-center\">\n\t\t\t\t<h4 style={{ marginTop: 0, fontSize: 16, lineHeight: 1.4 }}>\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<i className=\"fa fa-check-circle-o\" style={{ fontSize: 90, marginBottom: 10 }} />\n\t\t\t\t\t</div>\n\t\t\t\t\tYour password has been successfully changed\n\t\t\t\t</h4>\n\t\t\t\t<br />\n\t\t\t\t<Link to={afterLoginPath} className=\"btn btn-primary\">Login</Link>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<div className=\"clearfix\">\n\t\t\t\t<div className=\"site-headline text-center\">\n\t\t\t\t\t<h1>Setup password</h1>\n\t\t\t\t</div>\n\t\t\t\t<p className=\"text-center\">\n\t\t\t\t\t{topMessage}\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t\t<ItemProvider<ConfirmCode>\n\t\t\t\tid={-1}\n\t\t\t\ttype={setPasswordByPhoneRequest}\n\t\t\t\tadd={{\n\t\t\t\t\tpath: '/',\n\t\t\t\t\tcode: '',\n\t\t\t\t\tpassword: '',\n\t\t\t\t\trepeat: '',\n\t\t\t\t\tphoneNumber,\n\t\t\t\t}}\n\t\t\t\tvalidationSchema={validationSchema}\n\t\t\t\ttransformAfterSave={() => ({\n\t\t\t\t\tpath: '/',\n\t\t\t\t\tcode: '',\n\t\t\t\t\tpassword: '',\n\t\t\t\t\trepeat: '',\n\t\t\t\t\tphoneNumber,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t<ItemEditor<ConfirmCode>\n\t\t\t\t\tsuccessMessage=\"\"\n\t\t\t\t\tafterSubmit={(item, res) => {\n\t\t\t\t\t\thandleLogin(res?.initObject);\n\n\t\t\t\t\t\tsetSuccess(true);\n\t\t\t\t\t\t// history.push('/login');\n\t\t\t\t\t}}\n\t\t\t\t\tedit={(formikBag: FormikProps<ConfirmCode>, _, { loading }) => <>\n\t\t\t\t\t\t<div className=\"row\">\n\t\t\t\t\t\t\t<FormikField\n\t\t\t\t\t\t\t\tfieldName=\"password\"\n\t\t\t\t\t\t\t\tinputProps={{ placeholder: withFieldTitle ? '' : 'New Password*', type: 'password' }}\n\t\t\t\t\t\t\t\tcontainerClassName=\"col-sm-12 form-group\"\n\t\t\t\t\t\t\t\ttitle={withFieldTitle ? 'New Password*' : ''}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<FormikField\n\t\t\t\t\t\t\t\tfieldName=\"repeat\"\n\t\t\t\t\t\t\t\tinputProps={{ placeholder: 'Repeat New Password*', type: 'password' }}\n\t\t\t\t\t\t\t\tcontainerClassName=\"col-sm-12 form-group\"\n\t\t\t\t\t\t\t\ttitle={withFieldTitle ? 'Repeat New Password*' : ''}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t<FormikField\n\t\t\t\t\t\t\t\tcontainerClassName=\"col-sm-12 form-group mt10\"\n\t\t\t\t\t\t\t\tfieldName=\"code\"\n\t\t\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\t\t\trender={(fieldProps: FieldProps) =>\n\t\t\t\t\t\t\t\t\t<div className=\"text-center\">\n\t\t\t\t\t\t\t\t\t\t<label htmlFor=\"code\">Code</label>\n\t\t\t\t\t\t\t\t\t\t<ConfirmationCodeInput\n\t\t\t\t\t\t\t\t\t\t\tfieldProps={fieldProps}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"clearfix\" style={{ marginTop: 15, marginBottom: 15 }}>\n\t\t\t\t\t\t\t<PreventDefaultButton\n\t\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\t\tclassName=\"btn btn-primary col-sm-6 col-sm-offset-3\"\n\t\t\t\t\t\t\t\tisLoading={loading}\n\t\t\t\t\t\t\t\tonClick={formikBag.handleSubmit}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tConfirm\n\t\t\t\t\t\t\t</PreventDefaultButton>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</>}\n\t\t\t\t/>\n\t\t\t\t<div className=\"text-center\">\n\t\t\t\t\tDidn't receive a code?\n\t\t\t\t\t{' '}\n\t\t\t\t\t{time ? `Resend code in ${time} seconds.`\n\t\t\t\t\t\t: (\n\t\t\t\t\t\t\t<RequestButton\n\t\t\t\t\t\t\t\tclassName=\"recover-page__resend\"\n\t\t\t\t\t\t\t\tbeforeAction={() => {\n\t\t\t\t\t\t\t\t\tstartTimer();\n\t\t\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tonError={(e) => {\n\t\t\t\t\t\t\t\t\tModal.error({\n\t\t\t\t\t\t\t\t\t\ttitle: 'Error',\n\t\t\t\t\t\t\t\t\t\tcontent: e,\n\t\t\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t\t\tif (ref.current) {\n\t\t\t\t\t\t\t\t\t\tclearInterval(ref.current);\n\t\t\t\t\t\t\t\t\t\tref.current = null;\n\t\t\t\t\t\t\t\t\t\tsetTime(0);\n\t\t\t\t\t\t\t\t\t\tstartTimer();\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\trequestType={resendSetPasswordByPhoneCodeRequest}\n\t\t\t\t\t\t\t\trequestProps={{ phoneNumber }}\n\t\t\t\t\t\t\t\tsuccessMessage=\"The confirmation code has been successfully sent.\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tResend code\n\t\t\t\t\t\t\t</RequestButton>)}\n\t\t\t\t\t<div className=\"mb10\" />\n\t\t\t\t\t{onBack ? <a onClick={onBack}>Try another method</a> : <Link to={recoverPath}>\n\t\t\t\t\t\tTry another method\n\t\t\t\t\t</Link>}\n\t\t\t\t</div>\n\t\t\t</ItemProvider>\n\t\t</>\n\t);\n};\n\nexport default SetPassword;\n","import * as React from 'react';\nimport { Link } from 'react-router-dom';\n\nimport * as Yup from 'yup';\n\nimport Button from '@common/react/components/Forms/Button';\nimport Captcha from '@common/react/components/Forms/Captcha';\nimport { simpleStringValidator } from '@common/react/utils/validationHelpers';\nimport FormikField from '@common/react/components/Forms/FormikField/FormikField';\nimport PhoneOrEmailInput, { emailOrPhoneValidator } from '@common/react/components/Forms/PhoneOrEmailInput/PhoneOrEmailInput';\nimport SetPassword from '@common/react/components/Pages/Recover/SetPassword';\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 { WithId } from '@common/typescript/objects/WithId';\nimport { RequestButton } from '@common/react/components/UI/LoadingButton/LoadingButton';\nimport { BaseUser } from '@common/typescript/objects/BaseUser';\n\nimport '@common/react/scss/components/recover.scss';\n\ninterface FormValues extends WithId {\n\tinfo: string;\n\tcaptcha: string;\n\tcode: string;\n}\n\ninterface Props {\n\tpath?: string;\n\tloginPath?: string;\n\tinfo?: boolean;\n\tlogo?: React.ReactNode;\n\tcontainerClassName?: string;\n\twithFieldTitle?: boolean;\n\twithResend?: boolean;\n\trecoverByPhoneRequest?: string;\n\trecoverByEmailRequest?: string;\n\tsetPasswordByPhoneRequest?: string;\n\tresendSetPasswordByPhoneCodeRequest?: string;\n}\n\nconst validationSchema = Yup.object().shape({\n\tinfo: emailOrPhoneValidator,\n\tcaptcha: simpleStringValidator,\n});\n\nconst Recover: <User extends BaseUser>(p: Props) => React.ReactElement<User> = <User extends BaseUser, >(props) => {\n\tconst {\n\t\tpath = '/recover',\n\t\tloginPath = '/login',\n\t\tinfo = 'Enter the email or phone number you provided during registration'\n\t\t\t+ ' and we will send you a password reset email or confirmation code',\n\t\tlogo,\n\t\tcontainerClassName = 'recover-page',\n\t\twithFieldTitle,\n\t\twithResend = false,\n\t\trecoverByPhoneRequest = 'recoverByPhone',\n\t\trecoverByEmailRequest = 'recover',\n\t\tsetPasswordByPhoneRequest,\n\t\tresendSetPasswordByPhoneCodeRequest,\n\t} = props;\n\tconst [success, setSuccess] = React.useState<boolean>(false);\n\tconst [counter, setCounter] = React.useState<number>(0);\n\tconst [phoneNumber, setPhoneNumber] = React.useState('');\n\tconst [visibleConfirm, setVisibleConfirm] = React.useState(false);\n\tconst [savedValues, setSavedValues] = React.useState<FormValues>();\n\n\tconst innerRender = () => {\n\t\tif (success) {\n\t\t\treturn <div className=\"enter-page__form general-form\">\n\t\t\t\t{visibleConfirm ? <SetPassword<User>\n\t\t\t\t\trecoverPath={path}\n\t\t\t\t\tphoneNumber={phoneNumber}\n\t\t\t\t\twithFieldTitle={withFieldTitle}\n\t\t\t\t\tsetPasswordByPhoneRequest={setPasswordByPhoneRequest}\n\t\t\t\t\tresendSetPasswordByPhoneCodeRequest={resendSetPasswordByPhoneCodeRequest}\n\t\t\t\t\tonBack={() => {\n\t\t\t\t\t\tsetSuccess(false);\n\t\t\t\t\t\tsetPhoneNumber('');\n\t\t\t\t\t\tsetVisibleConfirm(false);\n\t\t\t\t\t}}\n\t\t\t\t/> : <div className=\"text-center\">\n\t\t\t\t\t<div><i className=\"fa fa-envelope\" style={{ fontSize: 70, marginBottom: 30 }} /></div>\n\t\t\t\t\t<h1 style={{ fontWeight: 'bold', fontSize: 35 }}>Email confirmation</h1>\n\t\t\t\t\t<h4 style={{ fontSize: 16, lineHeight: 1.4 }}>\n\t\t\t\t\t\tWe have sent email to\n\t\t\t\t\t\t{' '}\n\t\t\t\t\t\t<span style={{ color: '#33c088' }}>{savedValues?.info}</span>\n\t\t\t\t\t\t&nbsp;to confirm the validity of email address. After receiving the email follow\n\t\t\t\t\t\tthe link provided to complete recover.\n\t\t\t\t\t</h4>\n\t\t\t\t\t{withResend && <>\n\t\t\t\t\t\t<hr style={{ padding: '0 10px', margin: '30px 30px 20px' }} />\n\t\t\t\t\t\t<h4 style={{ fontSize: 16, lineHeight: 1.4 }}>\n\t\t\t\t\t\t\tIf you not get any mail\n\t\t\t\t\t\t\t{' '}\n\t\t\t\t\t\t\t<RequestButton\n\t\t\t\t\t\t\t\tclassName=\"recover-page__resend\"\n\t\t\t\t\t\t\t\tbeforeAction={() => {\n\t\t\t\t\t\t\t\t\treturn !!(success && savedValues && savedValues.info.includes('@'));\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\trequestType={recoverByEmailRequest}\n\t\t\t\t\t\t\t\trequestProps={{ email: savedValues?.info }}\n\t\t\t\t\t\t\t\tsuccessMessage=\"The confirmation email has been successfully sent.\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tResend confirmation mail\n\t\t\t\t\t\t\t</RequestButton>\n\t\t\t\t\t\t</h4>\n\t\t\t\t\t</>}\n\t\t\t\t</div>}\n\t\t\t</div>;\n\t\t}\n\n\t\treturn (\n\t\t\t<div>\n\t\t\t\t<div className=\"enter-page__form general-form\">\n\t\t\t\t\t<div className=\"site-headline text-center\">\n\t\t\t\t\t\t<h1>Recover password</h1>\n\t\t\t\t\t</div>\n\t\t\t\t\t<p className=\"text-center\">\n\t\t\t\t\t\t{info}\n\t\t\t\t\t</p>\n\t\t\t\t\t<ItemProvider<FormValues>\n\t\t\t\t\t\tid={-1}\n\t\t\t\t\t\ttype=\"\"\n\t\t\t\t\t\tvalidationSchema={validationSchema}\n\t\t\t\t\t\tadd={{\n\t\t\t\t\t\t\tinfo: '',\n\t\t\t\t\t\t\tcaptcha: '',\n\t\t\t\t\t\t\tcode: '',\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ttransformAfterSave={() => ({\n\t\t\t\t\t\t\tinfo: '',\n\t\t\t\t\t\t\tcaptcha: '',\n\t\t\t\t\t\t\tcode: '',\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tclearForSubmit={(values) => {\n\t\t\t\t\t\t\treturn values.info.includes('@') ? {\n\t\t\t\t\t\t\t\temail: values.info,\n\t\t\t\t\t\t\t\tcaptcha: values.captcha,\n\t\t\t\t\t\t\t\tcode: values.code,\n\t\t\t\t\t\t\t} : {\n\t\t\t\t\t\t\t\tphoneNumber: values.info,\n\t\t\t\t\t\t\t\tcaptcha: values.captcha,\n\t\t\t\t\t\t\t\tcode: values.code,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonRequestError={() => setCounter((prev) => prev + 1)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ItemEditor<FormValues>\n\t\t\t\t\t\t\tsuccessMessage=\"\"\n\t\t\t\t\t\t\tafterSubmit={() => {\n\t\t\t\t\t\t\t\tsetSuccess(true);\n\t\t\t\t\t\t\t\tsetCounter((prev) => prev + 1);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tresetFormAfterSubmit\n\t\t\t\t\t\t\tbeforeSubmit={(values, actions, submit) => {\n\t\t\t\t\t\t\t\treturn submit()\n\t\t\t\t\t\t\t\t\t.then(() => {\n\t\t\t\t\t\t\t\t\t\tconst isEmail = values.info.includes('@');\n\t\t\t\t\t\t\t\t\t\tsetVisibleConfirm(!isEmail);\n\t\t\t\t\t\t\t\t\t\tsetPhoneNumber(!isEmail ? values.info : '');\n\t\t\t\t\t\t\t\t\t\tsetSavedValues(values);\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tgetRequestName={(values) => (values.info.includes('@') ? recoverByEmailRequest : recoverByPhoneRequest)}\n\t\t\t\t\t\t\tedit={(formikBag, _, { loading }) => (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<FormikField\n\t\t\t\t\t\t\t\t\t\tfieldName=\"info\"\n\t\t\t\t\t\t\t\t\t\ttitle={withFieldTitle ? 'Email or Phone Number*' : ''}\n\t\t\t\t\t\t\t\t\t\tcontainerClassName=\"form-group\"\n\t\t\t\t\t\t\t\t\t\trender={(fieldProps, inputProps) =>\n\t\t\t\t\t\t\t\t\t\t\t<PhoneOrEmailInput\n\t\t\t\t\t\t\t\t\t\t\t\tfieldProps={fieldProps}\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"form-control\"\n\t\t\t\t\t\t\t\t\t\t\t\tplaceholder={withFieldTitle ? '' : 'Email or Phone Number*'}\n\t\t\t\t\t\t\t\t\t\t\t\t{...inputProps}\n\t\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<FormikField\n\t\t\t\t\t\t\t\t\t\tfieldName=\"captcha\"\n\t\t\t\t\t\t\t\t\t\tcontainerClassName=\"form-group\"\n\t\t\t\t\t\t\t\t\t\ttitle={withFieldTitle ? 'Bot Protection Code*' : ''}\n\t\t\t\t\t\t\t\t\t\trender={({ field }) => <div className=\"input-with-captcha\">\n\t\t\t\t\t\t\t\t\t\t\t<Captcha\n\t\t\t\t\t\t\t\t\t\t\t\ticonClassName=\"fa fa-refresh\"\n\t\t\t\t\t\t\t\t\t\t\t\tupdate={(value) => formikBag.setFieldValue('code', value)}\n\t\t\t\t\t\t\t\t\t\t\t\tcounter={counter}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"form-control\"\n\t\t\t\t\t\t\t\t\t\t\t\tid=\"captcha\"\n\t\t\t\t\t\t\t\t\t\t\t\tplaceholder={withFieldTitle ? '' : 'Bot Protection Code*'}\n\t\t\t\t\t\t\t\t\t\t\t\t{...field}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</div>}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<div className=\"clearfix mb10\">\n\t\t\t\t\t\t\t\t\t\t<Link className=\"pull-right\" to={loginPath}>Back</Link>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t<div className=\"text-center\">\n\t\t\t\t\t\t\t\t\t\t<Button className=\"btn btn-primary\" isLoading={loading}>Recover</Button>\n\t\t\t\t\t\t\t\t\t</div>\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</ItemProvider>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t};\n\n\treturn (\n\t\t<div className={`recover-page__main ${containerClassName}`}>\n\t\t\t<ServerPageProvider\n\t\t\t\tpath=\"recover\"\n\t\t\t\tdefaultTitle=\"Recover\"\n\t\t\t\tloader={<></>}\n\t\t\t\tinner={(serverPage) => <></>}\n\t\t\t/>\n\t\t\t{logo}\n\t\t\t<div className=\"enter-page__container container\">\n\t\t\t\t{innerRender()}\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default Recover;\n","import * as React from 'react';\n\nimport RecoverPage from '@common/react/components/Pages/Recover/Recover';\n\nimport '@app/scss/pages/login.scss';\nimport '@app/scss/pages/recover.scss';\n\nconst Recover: React.FC = () => {\n\treturn (\n\t\t<RecoverPage\n\t\t\tcontainerClassName=\"recover-page portal-form-center enter-page\"\n\t\t\twithFieldTitle\n\t\t/>\n\t);\n};\n\nexport default Recover;\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<Props> = ({\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 <MaskedInput\n\t\tmask={mask}\n\t\tclassName={className}\n\t\tplaceholder={placeholder}\n\t\tpipe={pipe}\n\t\tguide\n\t\tid={field.name}\n\t\tonChange={handleChange}\n\t\tonBlur={field.onBlur}\n\t\tvalue={value}\n\t\tdisabled={disabled}\n\t/>;\n};\n\nexport default PhoneOrEmailInput;\n"],"names":["props","iconClassName","update","withGuid","counter","path","getSrc","code","Date","getTime","React","generateGUID","src","setSrc","currentCounter","setCurrentCounter","className","alt","tabIndex","type","onClick","event","preventDefault","validationSchema","Yup","shape","simpleStringValidator","password","repeat","oneOf","required","phoneNumber","setPasswordByPhoneRequest","resendSetPasswordByPhoneCodeRequest","topMessage","withFieldTitle","onBack","afterLoginPath","recoverPath","time","setTime","ref","success","setSuccess","handleLogin","useApplicationContext","startTimer","current","setInterval","prev","newTime","clearInterval","style","marginTop","fontSize","lineHeight","marginBottom","Link","to","ItemProvider","id","add","transformAfterSave","ItemEditor","successMessage","afterSubmit","item","res","initObject","edit","formikBag","_","loading","FormikField","fieldName","inputProps","placeholder","containerClassName","title","render","fieldProps","htmlFor","ConfirmationCodeInput","isLoading","handleSubmit","beforeAction","onError","e","Modal","content","requestType","requestProps","info","emailOrPhoneValidator","captcha","loginPath","logo","withResend","recoverByPhoneRequest","recoverByEmailRequest","setCounter","setPhoneNumber","visibleConfirm","setVisibleConfirm","savedValues","setSavedValues","ServerPageProvider","defaultTitle","loader","inner","serverPage","fontWeight","color","padding","margin","includes","email","clearForSubmit","values","onRequestError","resetFormAfterSubmit","beforeSubmit","actions","submit","then","isEmail","getRequestName","PhoneOrEmailInput","field","value","setFieldValue","Button","removePhoneMask","withOne","replace","allCountriesPhoneMask","test","isValidEmail","isValidPhone","phoneRegexp","form","allPhoneMask","disabled","removeMask","mask","match","trim","split","map","i","pipe","t","trimRawValue","rawValue","indexesOfPipedChars","text","withoutPhoneMask","textWithoutMinusMask","hasPreviousValuePhoneMask","previousConformedValue","guide","name","onChange","target","onBlur"],"sourceRoot":""}