{"ast":null,"code":"import { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\n\nvar _jsxFileName = \"/home/sonia/VisualStudioCode/Proyecto-React-Firebase/client/src/pages/auth/register.tsx\",\n _s = $RefreshSig$();\n\nimport React, { useState } from 'react';\nimport { useHistory } from 'react-router-dom';\nimport AuthContainer from '../../components/AuthContainer';\nimport { auth } from '../../config/firebase';\nimport logging from '../../config/logging';\n\nconst RegisterPage = props => {\n _s();\n\n // Variables:\n // registering == será booleana y su estado por defeto sera false:\n const [registering, setRegistering] = useState(false); // Las demás serán string y son las que necesitaremos para el registro:\n\n const [email, setEmail] = useState('');\n const [password, setPassword] = useState('');\n const [confirm, setConfirm] = useState('');\n const [error, setError] = useState(''); // history = A la devolución de la llamada del historial de uso de (react-router-dom), esto nos permitirá cambiar a la página con el comando en lugar\n // de devolver una redirección:\n\n const history = useHistory(); // Función de registro: (Constante con correo electronico y contraseña) No es asincrónica\n\n const signUpWithEmailAndPassword = () => {\n // Si da error la autotentificación\n if (password !== confirm) {\n setError('Please make sure your passwords match.');\n return;\n } // Establecer el error en vacío para que no aparezcan de nuevo \n\n\n if (error !== '') setError(''); // Registro igual a verdadero\n\n setRegistering(true); // Importamos auth y hacemos una autentificación con el email y la password\n\n auth.createUserWithEmailAndPassword(email, password) // Devolvemos un bloque de then \n .then(result => {\n // En el login le añadimos al history el resultado para iniciar la sesion \n // (Si hay exito esto nos redirigira a la página de inicio directamente)\n logging.info(result);\n history.push('/login');\n }).catch(error => {\n // Error si no nos redirige\n logging.error(error); //Miramos los tipos de errores:\n\n if (error.code.includes('auth/weak-password')) {\n //Contraseña debil:\n setError('Please enter a stronger password.');\n } else if (error.code.includes('auth/email-already-in-use')) {\n // El correo ya esta en uso:\n setError('Email already in use.');\n } else {\n // Error del sistema (base de datos, etc...)\n setError('Unable to register. Please try again later.');\n } // Si da false nos devolverá directamente a la página de inicio:\n\n\n setRegistering(false);\n });\n };\n\n return (\n /*#__PURE__*/\n // LLamamos al contenedor creado para los diferentes componentes\n _jsxDEV(AuthContainer, {\n header: \"Register\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 77,\n columnNumber: 9\n }, this)\n );\n};\n\n_s(RegisterPage, \"fuIV3JDq3pO+vQ/0Lb/q6MZ5NZo=\", false, function () {\n return [useHistory];\n});\n\n_c = RegisterPage;\nexport default RegisterPage;\n\nvar _c;\n\n$RefreshReg$(_c, \"RegisterPage\");","map":{"version":3,"sources":["/home/sonia/VisualStudioCode/Proyecto-React-Firebase/client/src/pages/auth/register.tsx"],"names":["React","useState","useHistory","AuthContainer","auth","logging","RegisterPage","props","registering","setRegistering","email","setEmail","password","setPassword","confirm","setConfirm","error","setError","history","signUpWithEmailAndPassword","createUserWithEmailAndPassword","then","result","info","push","catch","code","includes"],"mappings":";;;;;AAAA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AACA,SAAeC,UAAf,QAAiC,kBAAjC;AAEA,OAAOC,aAAP,MAA0B,gCAA1B;AAEA,SAASC,IAAT,QAAqB,uBAArB;AACA,OAAOC,OAAP,MAAoB,sBAApB;;AAGA,MAAMC,YAAiD,GAAGC,KAAK,IAAI;AAAA;;AAC/D;AACA;AACA,QAAM,CAACC,WAAD,EAAcC,cAAd,IAAgCR,QAAQ,CAAU,KAAV,CAA9C,CAH+D,CAI/D;;AACA,QAAM,CAACS,KAAD,EAAQC,QAAR,IAAoBV,QAAQ,CAAS,EAAT,CAAlC;AACA,QAAM,CAACW,QAAD,EAAWC,WAAX,IAA0BZ,QAAQ,CAAS,EAAT,CAAxC;AACA,QAAM,CAACa,OAAD,EAAUC,UAAV,IAAwBd,QAAQ,CAAS,EAAT,CAAtC;AACA,QAAM,CAACe,KAAD,EAAQC,QAAR,IAAoBhB,QAAQ,CAAS,EAAT,CAAlC,CAR+D,CAU/D;AACA;;AACA,QAAMiB,OAAO,GAAGhB,UAAU,EAA1B,CAZ+D,CAc/D;;AACA,QAAMiB,0BAA0B,GAAG,MAAM;AAErC;AACA,QAAIP,QAAQ,KAAKE,OAAjB,EACA;AACIG,MAAAA,QAAQ,CAAC,wCAAD,CAAR;AACA;AACH,KAPoC,CASrC;;;AACA,QAAID,KAAK,KAAK,EAAd,EAAkBC,QAAQ,CAAC,EAAD,CAAR,CAVmB,CAYrC;;AACAR,IAAAA,cAAc,CAAC,IAAD,CAAd,CAbqC,CAerC;;AACAL,IAAAA,IAAI,CAACgB,8BAAL,CAAoCV,KAApC,EAA2CE,QAA3C,EACA;AADA,KAECS,IAFD,CAEMC,MAAM,IAAI;AACZ;AACA;AACAjB,MAAAA,OAAO,CAACkB,IAAR,CAAaD,MAAb;AACAJ,MAAAA,OAAO,CAACM,IAAR,CAAa,QAAb;AACH,KAPD,EAQCC,KARD,CAQOT,KAAK,IAAI;AACZ;AACAX,MAAAA,OAAO,CAACW,KAAR,CAAcA,KAAd,EAFY,CAIZ;;AACA,UAAIA,KAAK,CAACU,IAAN,CAAWC,QAAX,CAAoB,oBAApB,CAAJ,EACA;AACI;AACAV,QAAAA,QAAQ,CAAC,mCAAD,CAAR;AACH,OAJD,MAKK,IAAID,KAAK,CAACU,IAAN,CAAWC,QAAX,CAAoB,2BAApB,CAAJ,EACL;AACI;AACAV,QAAAA,QAAQ,CAAC,uBAAD,CAAR;AACH,OAJI,MAML;AACI;AACAA,QAAAA,QAAQ,CAAC,8CAAD,CAAR;AACH,OAnBW,CAqBZ;;;AACAR,MAAAA,cAAc,CAAC,KAAD,CAAd;AACH,KA/BD;AAgCH,GAhDD;;AAkDA;AAAA;AACI;AACA,YAAC,aAAD;AAAe,MAAA,MAAM,EAAC;AAAtB;AAAA;AAAA;AAAA;AAAA;AAFJ;AAMH,CAvED;;GAAMH,Y;UAYcJ,U;;;KAZdI,Y;AAyEN,eAAeA,YAAf","sourcesContent":["import React, { useState } from 'react';\nimport { Link, useHistory } from 'react-router-dom';\nimport { Button, FormGroup, Input } 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';\n\nconst RegisterPage: React.FunctionComponent<IPageProps> = props => {\n // Variables:\n // registering == será booleana y su estado por defeto sera false:\n const [registering, setRegistering] = useState<boolean>(false);\n // Las demás serán string y son las que necesitaremos para el registro:\n const [email, setEmail] = useState<string>('');\n const [password, setPassword] = useState<string>('');\n const [confirm, setConfirm] = useState<string>('');\n const [error, setError] = useState<string>('');\n\n // history = A la devolución de la llamada del historial de uso de (react-router-dom), esto nos permitirá cambiar a la página con el comando en lugar\n // de devolver una redirección:\n const history = useHistory();\n\n // Función de registro: (Constante con correo electronico y contraseña) No es asincrónica\n const signUpWithEmailAndPassword = () => {\n\n // Si da error la autotentificación\n if (password !== confirm)\n {\n setError('Please make sure your passwords match.');\n return;\n }\n\n // Establecer el error en vacío para que no aparezcan de nuevo \n if (error !== '') setError('');\n\n // Registro igual a verdadero\n setRegistering(true);\n\n // Importamos auth y hacemos una autentificación con el email y la password\n auth.createUserWithEmailAndPassword(email, password)\n // Devolvemos un bloque de then \n .then(result => {\n // En el login le añadimos al history el resultado para iniciar la sesion \n // (Si hay exito esto nos redirigira a la página de inicio directamente)\n logging.info(result);\n history.push('/login');\n })\n .catch(error => {\n // Error si no nos redirige\n logging.error(error);\n\n //Miramos los tipos de errores:\n if (error.code.includes('auth/weak-password'))\n {\n //Contraseña debil:\n setError('Please enter a stronger password.');\n }\n else if (error.code.includes('auth/email-already-in-use'))\n {\n // El correo ya esta en uso:\n setError('Email already in use.');\n }\n else\n {\n // Error del sistema (base de datos, etc...)\n setError('Unable to register. Please try again later.')\n }\n\n // Si da false nos devolverá directamente a la página de inicio:\n setRegistering(false);\n });\n }\n\n return (\n // LLamamos al contenedor creado para los diferentes componentes\n <AuthContainer header=\"Register\">\n \n </AuthContainer>\n );\n}\n\nexport default RegisterPage;"]},"metadata":{},"sourceType":"module"}