{"version":3,"file":"static/chunks/pages/forgot-password-87417d8597ba611c.js","mappings":"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","sources":["webpack://_N_E/?67b2","webpack://_N_E/./src/modules/auth/components/Header/styles.ts","webpack://_N_E/./src/modules/auth/components/Header/index.tsx","webpack://_N_E/./src/modules/auth/components/Link/styles.ts","webpack://_N_E/./src/modules/auth/components/Link/index.tsx","webpack://_N_E/./src/modules/auth/pages/ForgotPassword/styles.ts","webpack://_N_E/./src/modules/auth/components/ButtonLink/styles.ts","webpack://_N_E/./src/modules/auth/components/ButtonLink/index.tsx","webpack://_N_E/./src/modules/auth/pages/ForgotPassword/index.tsx","webpack://_N_E/./src/pages/forgot-password.tsx","webpack://_N_E/"],"sourcesContent":["\n (window.__NEXT_P = window.__NEXT_P || []).push([\n \"/forgot-password\",\n function () {\n return require(\"private-next-pages/forgot-password.tsx\");\n }\n ]);\n if(module.hot) {\n module.hot.dispose(function () {\n window.__NEXT_P.push([\"/forgot-password\"])\n });\n }\n ","import styled from 'styled-components';\n\nexport const Container = styled.header`\n width: 100%;\n display: flex;\n align-items: center;\n flex-direction: column;\n\n margin-bottom: ${({ theme }) => theme.spacing.xs};\n margin-top: -${({ theme }) => theme.spacing.lg};\n\n h2 {\n color: ${({ theme }) => theme.colors.primary};\n font-weight: 700;\n font-size: 30px;\n font-weight: 700;\n text-align: center;\n\n & + p {\n margin-top: ${({ theme }) => theme.spacing.xxs};\n }\n }\n\n p {\n color: ${({ theme }) => theme.colors.onSurface};\n font-size: 16px;\n text-align: center;\n line-height: 24px;\n }\n`;\n","import { FC } from 'react';\n\nimport { Container } from './styles';\n\ninterface HeaderProps {\n title?: string;\n subtitle: string;\n extraSubtitle?: string;\n}\n\nexport const Header: FC = ({ title, subtitle, extraSubtitle }) => {\n return (\n \n {!!title &&

{title}

}\n\n

{subtitle}

\n {extraSubtitle && {extraSubtitle}}\n
\n );\n};\n","import Link from 'next/link';\nimport styled from 'styled-components';\n\nexport const Container = styled(Link)`\n display: flex;\n align-items: center;\n margin-right: auto;\n\n color: ${({ theme }) => theme.colors.secondary};\n\n transition: all 0.3s;\n\n span {\n font-size: 14px;\n font-weight: 600;\n }\n\n svg {\n margin-right: ${({ theme }) => theme.spacing.xs};\n height: 18px;\n width: 18px;\n }\n\n &:hover {\n opacity: 0.7;\n }\n\n & + a,\n & + button {\n margin-top: ${({ theme }) => theme.spacing.sm};\n }\n` as any;\n","import { FC } from 'react';\n\nimport { IconType } from 'react-icons';\n\nimport { LinkProps as NextLinkProps } from 'next/link';\n\nimport { Container } from './styles';\n\ninterface LinkProps extends NextLinkProps {\n title: string;\n icon?: IconType;\n target?: string;\n rel?: string;\n}\n\nexport const Link: FC = ({\n title,\n icon: Icon,\n href,\n target,\n rel,\n ...props\n}) => {\n return (\n \n {!!Icon && }\n\n {title}\n \n );\n};\n","import styled from 'styled-components';\n\nexport const AccountRecoveryOptions = styled.div`\n width: 100%;\n display: flex;\n flex-direction: column;\n`;\n","import styled from 'styled-components';\n\nexport const Container = styled.button`\n display: flex;\n align-items: center;\n margin-right: auto;\n\n color: ${({ theme }) => theme.colors.secondary};\n\n transition: all 0.3s;\n\n span {\n font-size: 14px;\n font-weight: 600;\n }\n\n svg {\n margin-right: ${({ theme }) => theme.spacing.xs};\n height: 18px;\n width: 18px;\n }\n\n &:hover {\n opacity: 0.7;\n }\n\n & + a,\n & + button {\n margin-top: ${({ theme }) => theme.spacing.sm};\n }\n`;\n","import { ButtonHTMLAttributes, FC } from 'react';\n\nimport { IconType } from 'react-icons';\n\nimport { Container } from './styles';\n\ninterface ButtonLinkProps extends ButtonHTMLAttributes {\n title: string;\n icon?: IconType;\n}\n\nexport const ButtonLink: FC = ({\n title,\n icon: Icon,\n ...props\n}) => {\n return (\n \n {!!Icon && }\n\n {title}\n \n );\n};\n","import { ChangeEvent, FC, FormEvent, useState } from 'react';\n\nimport {\n IoArrowBack,\n IoLogoWhatsapp,\n IoMailOutline,\n IoPhonePortraitOutline,\n IoOptions,\n} from 'react-icons/io5';\n\nimport { useRouter } from 'next/router';\n\nimport * as Yup from 'yup';\nimport { useToast } from '@chakra-ui/react';\n\nimport { maskCellPhone, unmask } from '~/shared/utils/masks';\nimport { routes } from '~/shared/constants/routes';\nimport { Input, InputProps } from '~/shared/components/Form/Input';\nimport { FormGroup } from '~/shared/components/Form/FormGroup';\nimport { Button } from '~/shared/components/Form/Button';\n\nimport { AccountRecoveryOptions } from './styles';\nimport { AccountRecoveryOption, useAuth } from '../../hooks/auth';\nimport { Link } from '../../components/Link';\nimport { Header } from '../../components/Header';\nimport { ButtonLink } from '../../components/ButtonLink';\n\nexport const ForgotPassword: FC = () => {\n const { sendRecoveryAccountLink } = useAuth();\n\n const toast = useToast();\n const router = useRouter();\n\n const [accountRecoveryOption, setAccountRecoveryOption] =\n useState(null);\n const [inputOptions, setInputOptions] = useState({} as InputProps);\n const [inputValue, setInputValue] = useState('');\n const [inputError, setInputError] = useState('');\n\n const [isRecoveringAccount, setIsRecoveringAccount] = useState(false);\n\n function handleSelectAccountRecoveryOption(\n option: AccountRecoveryOption\n ): void {\n setAccountRecoveryOption(option);\n\n switch (option) {\n case 'email':\n setInputOptions({\n placeholder: 'Digite seu e-mail',\n name: 'email',\n autoComplete: 'email',\n startIcon: IoMailOutline,\n });\n break;\n\n case 'sms':\n setInputOptions({\n name: 'sms',\n placeholder: 'Digite seu número de celular',\n autoComplete: 'tel',\n maxLength: 16,\n startIcon: IoPhonePortraitOutline,\n });\n break;\n\n case 'whatsapp':\n setInputOptions({\n name: 'whatsapp',\n placeholder: 'Digite seu número de celular',\n autoComplete: 'tel',\n startIcon: IoLogoWhatsapp,\n maxLength: 16,\n });\n break;\n\n default:\n break;\n }\n }\n\n function handleChangeAccountRecoveryOption(): void {\n setAccountRecoveryOption(null);\n setInputValue('');\n setInputOptions({} as InputProps);\n }\n\n function handleChangeInput(event: ChangeEvent): void {\n const { value } = event.target;\n\n let newValue = value;\n\n if (accountRecoveryOption !== 'email') {\n newValue = unmask(newValue);\n }\n\n setInputError('');\n\n setInputValue(newValue);\n }\n\n async function handleRecoveryAccount(\n event: FormEvent\n ): Promise {\n event.preventDefault();\n\n if (!accountRecoveryOption) return;\n\n try {\n setIsRecoveringAccount(true);\n\n if (accountRecoveryOption === 'email') {\n await Yup.string()\n .email('e-mail inválido')\n .required('e-mail é obrigatório')\n .validate(inputValue);\n } else {\n await Yup.string()\n .required('número de celular é obrigatório')\n .validate(inputValue);\n }\n\n await sendRecoveryAccountLink({\n option: accountRecoveryOption,\n value: inputValue,\n });\n\n let description = 'Abra o link que enviamos por SMS.';\n\n if (accountRecoveryOption === 'email') {\n description = 'Abra o link que enviamos no seu e-mail.';\n }\n\n if (accountRecoveryOption === 'whatsapp') {\n description = 'Abra o link que enviamos no seu Whatsapp.';\n }\n\n toast({\n title: 'Boa, seu link de recuperação foi enviado!',\n description,\n status: 'success',\n isClosable: true,\n position: 'top-right',\n });\n\n router.push(routes.auth.signIn);\n } catch (error) {\n setIsRecoveringAccount(false);\n\n if (error instanceof Yup.ValidationError) {\n setInputError(error.message);\n\n return;\n }\n\n if (error.response?.status === 404) {\n setInputError(\n accountRecoveryOption === 'email'\n ? 'e-mail não cadastrado'\n : 'celular não cadastrado'\n );\n\n return;\n }\n\n toast({\n title: 'Ops, ocorreu um erro ao enviar o link de recuperação!',\n description: 'Recarregue a página e tente novamente.',\n status: 'error',\n isClosable: true,\n position: 'top-right',\n });\n }\n }\n\n return (\n <>\n
\n \n\n {accountRecoveryOption ? (\n <>\n \n \n \n\n \n \n Recuperar\n \n \n \n ) : (\n \n \n handleSelectAccountRecoveryOption('whatsapp')}\n backgroundColor=\"secondary\"\n textColor=\"onSecondary\"\n >\n Receber pelo Whatsapp\n \n \n\n \n handleSelectAccountRecoveryOption('email')}\n backgroundColor=\"secondary\"\n textColor=\"onSecondary\"\n >\n Receber por e-mail\n \n \n\n \n handleSelectAccountRecoveryOption('sms')}\n backgroundColor=\"secondary\"\n textColor=\"onSecondary\"\n >\n Receber por SMS\n \n \n \n )}\n \n\n {accountRecoveryOption && (\n \n )}\n\n \n \n );\n};\n","import { NextPage } from 'next';\n\nimport { ForgotPassword } from '~/modules/auth/pages/ForgotPassword';\n\nimport { withSSRGuest } from '~/shared/utils/withSSRGuest';\n\nexport const getServerSideProps = withSSRGuest(async () => {\n return {\n props: {},\n };\n});\n\nconst ForgotPasswordPage: NextPage = () => {\n return ;\n};\n\nexport default ForgotPasswordPage;\n","(self[\"webpackChunk_N_E\"] = self[\"webpackChunk_N_E\"] || []).push([[9742],{\n\n/***/ 27627:\n/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {\n\n\n (window.__NEXT_P = window.__NEXT_P || []).push([\n \"/forgot-password\",\n function () {\n return __webpack_require__(66762);\n }\n ]);\n if(false) {}\n \n\n/***/ }),\n\n/***/ 15601:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"h\": function() { return /* binding */ Header; }\n});\n\n// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js\nvar jsx_runtime = __webpack_require__(85893);\n// EXTERNAL MODULE: ./node_modules/@swc/helpers/src/_tagged_template_literal.mjs\nvar _tagged_template_literal = __webpack_require__(7297);\n// EXTERNAL MODULE: ./node_modules/styled-components/dist/styled-components.browser.esm.js + 2 modules\nvar styled_components_browser_esm = __webpack_require__(186);\n;// CONCATENATED MODULE: ./src/modules/auth/components/Header/styles.ts\n\nfunction _templateObject() {\n const data = (0,_tagged_template_literal/* default */.Z)([\n \"\\n width: 100%;\\n display: flex;\\n align-items: center;\\n flex-direction: column;\\n\\n margin-bottom: \",\n \";\\n margin-top: -\",\n \";\\n\\n h2 {\\n color: \",\n \";\\n font-weight: 700;\\n font-size: 30px;\\n font-weight: 700;\\n text-align: center;\\n\\n & + p {\\n margin-top: \",\n \";\\n }\\n }\\n\\n p {\\n color: \",\n \";\\n font-size: 16px;\\n text-align: center;\\n line-height: 24px;\\n }\\n\"\n ]);\n _templateObject = function() {\n return data;\n };\n return data;\n}\n\nconst Container = styled_components_browser_esm/* default.header.withConfig */.ZP.header.withConfig({\n componentId: \"sc-a26e7196-0\"\n})(_templateObject(), (param)=>{\n let { theme } = param;\n return theme.spacing.xs;\n}, (param)=>{\n let { theme } = param;\n return theme.spacing.lg;\n}, (param)=>{\n let { theme } = param;\n return theme.colors.primary;\n}, (param)=>{\n let { theme } = param;\n return theme.spacing.xxs;\n}, (param)=>{\n let { theme } = param;\n return theme.colors.onSurface;\n});\n\n;// CONCATENATED MODULE: ./src/modules/auth/components/Header/index.tsx\n\n\nconst Header = (param)=>{\n let { title , subtitle , extraSubtitle } = param;\n return /*#__PURE__*/ (0,jsx_runtime.jsxs)(Container, {\n children: [\n !!title && /*#__PURE__*/ (0,jsx_runtime.jsx)(\"h2\", {\n children: title\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(\"p\", {\n children: subtitle\n }),\n extraSubtitle && /*#__PURE__*/ (0,jsx_runtime.jsx)(\"small\", {\n children: extraSubtitle\n })\n ]\n });\n};\n\n\n/***/ }),\n\n/***/ 77879:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"r\": function() { return /* binding */ Link; }\n});\n\n// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js\nvar jsx_runtime = __webpack_require__(85893);\n// EXTERNAL MODULE: ./node_modules/@swc/helpers/src/_tagged_template_literal.mjs\nvar _tagged_template_literal = __webpack_require__(7297);\n// EXTERNAL MODULE: ./node_modules/next/link.js\nvar next_link = __webpack_require__(41664);\nvar link_default = /*#__PURE__*/__webpack_require__.n(next_link);\n// EXTERNAL MODULE: ./node_modules/styled-components/dist/styled-components.browser.esm.js + 2 modules\nvar styled_components_browser_esm = __webpack_require__(186);\n;// CONCATENATED MODULE: ./src/modules/auth/components/Link/styles.ts\n\nfunction _templateObject() {\n const data = (0,_tagged_template_literal/* default */.Z)([\n \"\\n display: flex;\\n align-items: center;\\n margin-right: auto;\\n\\n color: \",\n \";\\n\\n transition: all 0.3s;\\n\\n span {\\n font-size: 14px;\\n font-weight: 600;\\n }\\n\\n svg {\\n margin-right: \",\n \";\\n height: 18px;\\n width: 18px;\\n }\\n\\n &:hover {\\n opacity: 0.7;\\n }\\n\\n & + a,\\n & + button {\\n margin-top: \",\n \";\\n }\\n\"\n ]);\n _templateObject = function() {\n return data;\n };\n return data;\n}\n\n\nconst Container = (0,styled_components_browser_esm/* default */.ZP)((link_default())).withConfig({\n componentId: \"sc-13e9561f-0\"\n})(_templateObject(), (param)=>{\n let { theme } = param;\n return theme.colors.secondary;\n}, (param)=>{\n let { theme } = param;\n return theme.spacing.xs;\n}, (param)=>{\n let { theme } = param;\n return theme.spacing.sm;\n});\n\n;// CONCATENATED MODULE: ./src/modules/auth/components/Link/index.tsx\n\n\nconst Link = (param)=>{\n let { title , icon: Icon , href , target , rel , ...props } = param;\n return /*#__PURE__*/ (0,jsx_runtime.jsxs)(Container, {\n href: href,\n passHref: true,\n ...props,\n target: target,\n rel: rel,\n children: [\n !!Icon && /*#__PURE__*/ (0,jsx_runtime.jsx)(Icon, {}),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(\"span\", {\n children: title\n })\n ]\n });\n};\n\n\n/***/ }),\n\n/***/ 66762:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n// ESM COMPAT FLAG\n__webpack_require__.r(__webpack_exports__);\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"__N_SSP\": function() { return /* binding */ __N_SSP; },\n \"default\": function() { return /* binding */ forgot_password; }\n});\n\n// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js\nvar jsx_runtime = __webpack_require__(85893);\n// EXTERNAL MODULE: ./node_modules/react/index.js\nvar react = __webpack_require__(67294);\n// EXTERNAL MODULE: ./node_modules/react-icons/io5/index.mjs\nvar io5 = __webpack_require__(18318);\n// EXTERNAL MODULE: ./node_modules/next/router.js\nvar next_router = __webpack_require__(11163);\n// EXTERNAL MODULE: ./node_modules/yup/es/index.js + 25 modules\nvar es = __webpack_require__(74231);\n// EXTERNAL MODULE: ./node_modules/@chakra-ui/react/node_modules/@chakra-ui/toast/dist/chunk-JFERWNZE.mjs\nvar chunk_JFERWNZE = __webpack_require__(9691);\n// EXTERNAL MODULE: ./src/shared/utils/masks.ts\nvar masks = __webpack_require__(33613);\n// EXTERNAL MODULE: ./src/shared/constants/routes.ts\nvar routes = __webpack_require__(224);\n// EXTERNAL MODULE: ./src/shared/components/Form/Input/index.tsx\nvar Input = __webpack_require__(72169);\n// EXTERNAL MODULE: ./src/shared/components/Form/FormGroup/index.tsx + 1 modules\nvar FormGroup = __webpack_require__(24293);\n// EXTERNAL MODULE: ./src/shared/components/Form/Button/index.tsx + 1 modules\nvar Button = __webpack_require__(52409);\n// EXTERNAL MODULE: ./node_modules/@swc/helpers/src/_tagged_template_literal.mjs\nvar _tagged_template_literal = __webpack_require__(7297);\n// EXTERNAL MODULE: ./node_modules/styled-components/dist/styled-components.browser.esm.js + 2 modules\nvar styled_components_browser_esm = __webpack_require__(186);\n;// CONCATENATED MODULE: ./src/modules/auth/pages/ForgotPassword/styles.ts\n\nfunction _templateObject() {\n const data = (0,_tagged_template_literal/* default */.Z)([\n \"\\n width: 100%;\\n display: flex;\\n flex-direction: column;\\n\"\n ]);\n _templateObject = function() {\n return data;\n };\n return data;\n}\n\nconst AccountRecoveryOptions = styled_components_browser_esm/* default.div.withConfig */.ZP.div.withConfig({\n componentId: \"sc-9a4b4d51-0\"\n})(_templateObject());\n\n// EXTERNAL MODULE: ./src/modules/auth/hooks/auth.tsx + 1 modules\nvar auth = __webpack_require__(30317);\n// EXTERNAL MODULE: ./src/modules/auth/components/Link/index.tsx + 1 modules\nvar Link = __webpack_require__(77879);\n// EXTERNAL MODULE: ./src/modules/auth/components/Header/index.tsx + 1 modules\nvar Header = __webpack_require__(15601);\n;// CONCATENATED MODULE: ./src/modules/auth/components/ButtonLink/styles.ts\n\nfunction styles_templateObject() {\n const data = (0,_tagged_template_literal/* default */.Z)([\n \"\\n display: flex;\\n align-items: center;\\n margin-right: auto;\\n\\n color: \",\n \";\\n\\n transition: all 0.3s;\\n\\n span {\\n font-size: 14px;\\n font-weight: 600;\\n }\\n\\n svg {\\n margin-right: \",\n \";\\n height: 18px;\\n width: 18px;\\n }\\n\\n &:hover {\\n opacity: 0.7;\\n }\\n\\n & + a,\\n & + button {\\n margin-top: \",\n \";\\n }\\n\"\n ]);\n styles_templateObject = function() {\n return data;\n };\n return data;\n}\n\nconst Container = styled_components_browser_esm/* default.button.withConfig */.ZP.button.withConfig({\n componentId: \"sc-ffbf5a68-0\"\n})(styles_templateObject(), (param)=>{\n let { theme } = param;\n return theme.colors.secondary;\n}, (param)=>{\n let { theme } = param;\n return theme.spacing.xs;\n}, (param)=>{\n let { theme } = param;\n return theme.spacing.sm;\n});\n\n;// CONCATENATED MODULE: ./src/modules/auth/components/ButtonLink/index.tsx\n\n\nconst ButtonLink = (param)=>{\n let { title , icon: Icon , ...props } = param;\n return /*#__PURE__*/ (0,jsx_runtime.jsxs)(Container, {\n ...props,\n children: [\n !!Icon && /*#__PURE__*/ (0,jsx_runtime.jsx)(Icon, {}),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(\"span\", {\n children: title\n })\n ]\n });\n};\n\n;// CONCATENATED MODULE: ./src/modules/auth/pages/ForgotPassword/index.tsx\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst ForgotPassword = ()=>{\n const { sendRecoveryAccountLink } = (0,auth/* useAuth */.aC)();\n const toast = (0,chunk_JFERWNZE/* useToast */.p)();\n const router = (0,next_router.useRouter)();\n const [accountRecoveryOption, setAccountRecoveryOption] = (0,react.useState)(null);\n const [inputOptions, setInputOptions] = (0,react.useState)({});\n const [inputValue, setInputValue] = (0,react.useState)(\"\");\n const [inputError, setInputError] = (0,react.useState)(\"\");\n const [isRecoveringAccount, setIsRecoveringAccount] = (0,react.useState)(false);\n function handleSelectAccountRecoveryOption(option) {\n setAccountRecoveryOption(option);\n switch(option){\n case \"email\":\n setInputOptions({\n placeholder: \"Digite seu e-mail\",\n name: \"email\",\n autoComplete: \"email\",\n startIcon: io5/* IoMailOutline */.WNJ\n });\n break;\n case \"sms\":\n setInputOptions({\n name: \"sms\",\n placeholder: \"Digite seu n\\xfamero de celular\",\n autoComplete: \"tel\",\n maxLength: 16,\n startIcon: io5/* IoPhonePortraitOutline */.T1V\n });\n break;\n case \"whatsapp\":\n setInputOptions({\n name: \"whatsapp\",\n placeholder: \"Digite seu n\\xfamero de celular\",\n autoComplete: \"tel\",\n startIcon: io5/* IoLogoWhatsapp */.ff9,\n maxLength: 16\n });\n break;\n default:\n break;\n }\n }\n function handleChangeAccountRecoveryOption() {\n setAccountRecoveryOption(null);\n setInputValue(\"\");\n setInputOptions({});\n }\n function handleChangeInput(event) {\n const { value } = event.target;\n let newValue = value;\n if (accountRecoveryOption !== \"email\") {\n newValue = (0,masks/* unmask */.ec)(newValue);\n }\n setInputError(\"\");\n setInputValue(newValue);\n }\n async function handleRecoveryAccount(event) {\n event.preventDefault();\n if (!accountRecoveryOption) return;\n try {\n setIsRecoveringAccount(true);\n if (accountRecoveryOption === \"email\") {\n await es/* string */.Z_().email(\"e-mail inv\\xe1lido\").required(\"e-mail \\xe9 obrigat\\xf3rio\").validate(inputValue);\n } else {\n await es/* string */.Z_().required(\"n\\xfamero de celular \\xe9 obrigat\\xf3rio\").validate(inputValue);\n }\n await sendRecoveryAccountLink({\n option: accountRecoveryOption,\n value: inputValue\n });\n let description = \"Abra o link que enviamos por SMS.\";\n if (accountRecoveryOption === \"email\") {\n description = \"Abra o link que enviamos no seu e-mail.\";\n }\n if (accountRecoveryOption === \"whatsapp\") {\n description = \"Abra o link que enviamos no seu Whatsapp.\";\n }\n toast({\n title: \"Boa, seu link de recupera\\xe7\\xe3o foi enviado!\",\n description,\n status: \"success\",\n isClosable: true,\n position: \"top-right\"\n });\n router.push(routes/* routes.auth.signIn */._.auth.signIn);\n } catch (error) {\n var _error_response;\n setIsRecoveringAccount(false);\n if (error instanceof es/* ValidationError */.p8) {\n setInputError(error.message);\n return;\n }\n if (((_error_response = error.response) === null || _error_response === void 0 ? void 0 : _error_response.status) === 404) {\n setInputError(accountRecoveryOption === \"email\" ? \"e-mail n\\xe3o cadastrado\" : \"celular n\\xe3o cadastrado\");\n return;\n }\n toast({\n title: \"Ops, ocorreu um erro ao enviar o link de recupera\\xe7\\xe3o!\",\n description: \"Recarregue a p\\xe1gina e tente novamente.\",\n status: \"error\",\n isClosable: true,\n position: \"top-right\"\n });\n }\n }\n return /*#__PURE__*/ (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsxs)(\"form\", {\n onSubmit: handleRecoveryAccount,\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Header/* Header */.h, {\n subtitle: !accountRecoveryOption ? \"selecione uma op\\xe7\\xe3o abaixo para enviarmos o c\\xf3digo de recupera\\xe7\\xe3o.\" : accountRecoveryOption !== \"email\" ? \"digite seu n\\xfamero de celular para recuperar sua conta.\" : \"digite seu e-mail para recuperar sua conta.\"\n }),\n accountRecoveryOption ? /*#__PURE__*/ (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(FormGroup/* FormGroup */.c, {\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Input/* Input */.I, {\n onChange: handleChangeInput,\n variant: \"default\",\n error: inputError,\n value: accountRecoveryOption !== \"email\" ? (0,masks/* maskCellPhone */.JQ)(inputValue) : inputValue,\n ...inputOptions\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(FormGroup/* FormGroup */.c, {\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Button/* Button */.z, {\n disabledTooltip: inputOptions.placeholder,\n isLoading: isRecoveringAccount,\n type: \"submit\",\n disabled: !!inputError || (accountRecoveryOption !== \"email\" ? inputValue.length < 11 : !inputValue),\n children: \"Recuperar\"\n })\n })\n ]\n }) : /*#__PURE__*/ (0,jsx_runtime.jsxs)(AccountRecoveryOptions, {\n children: [\n /*#__PURE__*/ (0,jsx_runtime.jsx)(FormGroup/* FormGroup */.c, {\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Button/* Button */.z, {\n onClick: ()=>handleSelectAccountRecoveryOption(\"whatsapp\"),\n backgroundColor: \"secondary\",\n textColor: \"onSecondary\",\n children: \"Receber pelo Whatsapp\"\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(FormGroup/* FormGroup */.c, {\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Button/* Button */.z, {\n onClick: ()=>handleSelectAccountRecoveryOption(\"email\"),\n backgroundColor: \"secondary\",\n textColor: \"onSecondary\",\n children: \"Receber por e-mail\"\n })\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(FormGroup/* FormGroup */.c, {\n children: /*#__PURE__*/ (0,jsx_runtime.jsx)(Button/* Button */.z, {\n onClick: ()=>handleSelectAccountRecoveryOption(\"sms\"),\n backgroundColor: \"secondary\",\n textColor: \"onSecondary\",\n children: \"Receber por SMS\"\n })\n })\n ]\n })\n ]\n }),\n accountRecoveryOption && /*#__PURE__*/ (0,jsx_runtime.jsx)(ButtonLink, {\n onClick: handleChangeAccountRecoveryOption,\n title: \"trocar op\\xe7\\xe3o de recupera\\xe7\\xe3o\",\n icon: io5/* IoOptions */.whI\n }),\n /*#__PURE__*/ (0,jsx_runtime.jsx)(Link/* Link */.r, {\n href: routes/* routes.auth.signIn */._.auth.signIn,\n title: \"entrar com a minha conta\",\n icon: io5/* IoArrowBack */.O8Q\n })\n ]\n });\n};\n\n;// CONCATENATED MODULE: ./src/pages/forgot-password.tsx\n\n\nconst ForgotPasswordPage = ()=>{\n return /*#__PURE__*/ (0,jsx_runtime.jsx)(ForgotPassword, {});\n};\nvar __N_SSP = true;\n/* harmony default export */ var forgot_password = (ForgotPasswordPage);\n\n\n/***/ })\n\n},\n/******/ function(__webpack_require__) { // webpackRuntimeModules\n/******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }\n/******/ __webpack_require__.O(0, [939,4231,9774,2888,179], function() { return __webpack_exec__(27627); });\n/******/ var __webpack_exports__ = __webpack_require__.O();\n/******/ _N_E = __webpack_exports__;\n/******/ }\n]);"],"names":["self","push","__unused_webpack_module","__unused_webpack_exports","__webpack_require__","window","__NEXT_P","__webpack_exports__","d","Header","jsx_runtime","_tagged_template_literal","styled_components_browser_esm","_templateObject","data","Z","Container","ZP","header","withConfig","componentId","theme","param","spacing","xs","lg","colors","primary","xxs","onSurface","title","subtitle","extraSubtitle","jsxs","children","jsx","Link","next_link","link_default","n","secondary","sm","icon","Icon","href","target","rel","props","passHref","r","__N_SSP","forgot_password","react","io5","next_router","es","chunk_JFERWNZE","masks","routes","Input","FormGroup","Button","AccountRecoveryOptions","div","auth","styles_templateObject","button","ButtonLink","ForgotPassword","sendRecoveryAccountLink","aC","toast","p","router","useRouter","accountRecoveryOption","setAccountRecoveryOption","useState","inputOptions","setInputOptions","inputValue","setInputValue","inputError","setInputError","isRecoveringAccount","setIsRecoveringAccount","handleSelectAccountRecoveryOption","option","placeholder","name","autoComplete","startIcon","WNJ","maxLength","T1V","ff9","handleRecoveryAccount","event","preventDefault","Z_","email","required","validate","value","description","status","isClosable","position","_","signIn","error","_error_response","p8","message","response","Fragment","onSubmit","h","c","I","onChange","newValue","ec","variant","JQ","z","disabledTooltip","isLoading","type","disabled","length","onClick","backgroundColor","textColor","whI","O8Q","ForgotPasswordPage","O","s","_N_E"],"sourceRoot":""}