{"ast":null,"code":"import { Fragment as _Fragment } from \"react/jsx-dev-runtime\";\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\n\nvar _jsxFileName = \"/home/sonia/VisualStudioCode/Poryecto-Propio/Proyecto-React-Firebase/src/pages/auth/reset.tsx\",\n _s = $RefreshSig$();\n\nimport React, { useEffect, useState } from 'react';\nimport { useHistory } from 'react-router-dom';\nimport { Button, FormGroup, Input, Spinner } from 'reactstrap';\nimport AuthContainer from '../../components/AuthContainer';\nimport ErrorText from '../../components/ErrorText';\nimport { auth } from '../../config/firebase';\nimport logging from '../../config/logging';\nimport queryString from 'querystring';\n\nconst ResetPasswordPage = props => {\n _s();\n\n const [verifying, setVerifying] = useState(true);\n const [verified, setVerified] = useState(false);\n const [changing, setChanging] = useState(false);\n const [password, setPassword] = useState('');\n const [confirm, setConfirm] = useState('');\n const [oobCode, setOobCode] = useState('');\n const [error, setError] = useState('');\n const history = useHistory();\n useEffect(() => {\n logging.info('Extracting code');\n let stringParams = queryString.parse(props.location.search);\n\n if (stringParams) {\n let oobCode = stringParams.oobCode;\n\n if (oobCode) {\n logging.info('Code found');\n verifyPasswordResetLink(oobCode);\n } else {\n logging.error('Unable to find code');\n setVerified(false);\n setVerifying(false);\n }\n } else {\n logging.error('Unable to find code');\n setVerified(false);\n setVerifying(false);\n } // eslint-disable-next-line\n\n }, []);\n\n const verifyPasswordResetLink = _oobCode => {\n auth.verifyPasswordResetCode(_oobCode).then(result => {\n logging.info(result);\n setOobCode(_oobCode);\n setVerified(true);\n setVerifying(false);\n }).catch(error => {\n logging.error(error);\n setVerified(false);\n setVerifying(false);\n });\n };\n\n const passwordResetRequest = () => {\n if (password !== confirm) {\n setError('Make sure your passwords are matching');\n return;\n }\n\n if (error !== '') setError('');\n setChanging(true);\n auth.confirmPasswordReset(oobCode, password).then(() => {\n history.push('/login');\n }).catch(error => {\n logging.error(error);\n setError(error.message);\n setChanging(false);\n });\n };\n\n return /*#__PURE__*/_jsxDEV(AuthContainer, {\n header: \"Reset Password\",\n children: verifying ? /*#__PURE__*/_jsxDEV(Spinner, {\n color: \"info\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 92,\n columnNumber: 17\n }, this) : /*#__PURE__*/_jsxDEV(_Fragment, {\n children: verified ? /*#__PURE__*/_jsxDEV(_Fragment, {\n children: [/*#__PURE__*/_jsxDEV(\"p\", {\n children: \"Please enter a strong password.\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 97,\n columnNumber: 29\n }, this), /*#__PURE__*/_jsxDEV(FormGroup, {\n children: /*#__PURE__*/_jsxDEV(Input, {\n autoComplete: \"new-password\",\n type: \"password\",\n name: \"password\",\n id: \"password\",\n placeholder: \"Enter Password\",\n onChange: event => setPassword(event.target.value),\n value: password\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 99,\n columnNumber: 33\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 98,\n columnNumber: 29\n }, this), /*#__PURE__*/_jsxDEV(FormGroup, {\n children: /*#__PURE__*/_jsxDEV(Input, {\n autoComplete: \"new-password\",\n type: \"password\",\n name: \"confirm\",\n id: \"confirm\",\n placeholder: \"Confirm Password\",\n onChange: event => setConfirm(event.target.value),\n value: confirm\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 110,\n columnNumber: 33\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 109,\n columnNumber: 29\n }, this), /*#__PURE__*/_jsxDEV(Button, {\n disabled: changing,\n color: \"success\",\n block: true,\n onClick: () => passwordResetRequest(),\n children: \"Reset Password\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 120,\n columnNumber: 29\n }, this), /*#__PURE__*/_jsxDEV(ErrorText, {\n error: error\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 128,\n columnNumber: 29\n }, this)]\n }, void 0, true) : /*#__PURE__*/_jsxDEV(\"p\", {\n children: \"Invalid link.\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 131,\n columnNumber: 25\n }, this)\n }, void 0, false)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 90,\n columnNumber: 9\n }, this);\n};\n\n_s(ResetPasswordPage, \"nHZc8bOI1aeXRez+b9dcDaCjawE=\", false, function () {\n return [useHistory];\n});\n\n_c = ResetPasswordPage;\nexport default ResetPasswordPage;\n\nvar _c;\n\n$RefreshReg$(_c, \"ResetPasswordPage\");","map":{"version":3,"sources":["/home/sonia/VisualStudioCode/Poryecto-Propio/Proyecto-React-Firebase/src/pages/auth/reset.tsx"],"names":["React","useEffect","useState","useHistory","Button","FormGroup","Input","Spinner","AuthContainer","ErrorText","auth","logging","queryString","ResetPasswordPage","props","verifying","setVerifying","verified","setVerified","changing","setChanging","password","setPassword","confirm","setConfirm","oobCode","setOobCode","error","setError","history","info","stringParams","parse","location","search","verifyPasswordResetLink","_oobCode","verifyPasswordResetCode","then","result","catch","passwordResetRequest","confirmPasswordReset","push","message","event","target","value"],"mappings":"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","sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { RouteComponentProps, useHistory } from 'react-router-dom';\nimport { Button, FormGroup, Input, Spinner } from 'reactstrap';\nimport AuthContainer from '../../components/AuthContainer';\nimport ErrorText from '../../components/ErrorText';\nimport { auth } from '../../config/firebase';\nimport logging from '../../config/logging';\nimport IPageProps from '../../interfaces/page';\nimport queryString from 'querystring';\n\nconst ResetPasswordPage: React.FunctionComponent = props => {\n const [verifying, setVerifying] = useState(true);\n const [verified, setVerified] = useState(false);\n const [changing, setChanging] = useState(false);\n const [password, setPassword] = useState('');\n const [confirm, setConfirm] = useState('');\n const [oobCode, setOobCode] = useState('');\n const [error, setError] = useState('');\n\n const history = useHistory();\n\n useEffect(() => {\n logging.info('Extracting code');\n\n let stringParams = queryString.parse(props.location.search);\n\n if (stringParams)\n {\n let oobCode = stringParams.oobCode as string;\n\n if (oobCode)\n {\n logging.info('Code found');\n verifyPasswordResetLink(oobCode);\n }\n else\n {\n logging.error('Unable to find code');\n setVerified(false);\n setVerifying(false);\n }\n }\n else\n {\n logging.error('Unable to find code');\n setVerified(false);\n setVerifying(false);\n }\n // eslint-disable-next-line\n }, []);\n\n const verifyPasswordResetLink = (_oobCode: string) => {\n auth.verifyPasswordResetCode(_oobCode)\n .then(result => {\n logging.info(result);\n setOobCode(_oobCode);\n setVerified(true);\n setVerifying(false);\n })\n .catch(error => {\n logging.error(error);\n setVerified(false);\n setVerifying(false);\n });\n }\n\n const passwordResetRequest = () => {\n if (password !== confirm)\n {\n setError('Make sure your passwords are matching');\n return;\n }\n\n if (error !== '') setError('');\n\n setChanging(true);\n\n auth.confirmPasswordReset(oobCode, password)\n .then(() => {\n history.push('/login');\n })\n .catch(error => {\n logging.error(error);\n setError(error.message);\n setChanging(false);\n })\n }\n\n return (\n \n {verifying ?\n \n :\n <>\n {verified ?\n <>\n

Please enter a strong password.

\n \n setPassword(event.target.value)}\n value={password}\n />\n \n \n setConfirm(event.target.value)}\n value={confirm}\n />\n \n passwordResetRequest()}\n >\n Reset Password\n \n \n \n :\n

Invalid link.

\n }\n \n }\n
\n );\n}\n\nexport default ResetPasswordPage;"]},"metadata":{},"sourceType":"module"}