{"version":3,"sources":["components/Header.js","components/Error.js","components/Formulario.js","components/Clima.js","App.js","reportWebVitals.js","index.js"],"names":["Header","titulo","className","href","Error","mensaje","Formulario","busqueda","guardarBusqueda","guardarConsultar","useState","error","guardarError","ciudad","pais","handleChange","e","target","name","value","onSubmit","preventDefault","trim","type","id","onChange","htmlFor","Clima","resultado","main","kelvin","parseFloat","temp","toFixed","temp_max","temp_min","App","componente","consultar","guardarResultado","useEffect","a","url","fetch","respuesta","json","cod","consultarAPI","reportWebVitals","onPerfEntry","Function","then","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","render","StrictMode","document","getElementById"],"mappings":"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","file":"static/js/main.e7ee985e.chunk.js","sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\n\r\nconst Header = ({titulo}) => {\r\n return ( \r\n \r\n );\r\n}\r\n\r\nHeader.propTypes = {\r\n titulo: PropTypes.string.isRequired\r\n}\r\nexport default Header;","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst Error = ({mensaje}) => {\r\n return ( \r\n
{mensaje}
\r\n );\r\n}\r\n\r\nError.propTypes = {\r\n mensaje: PropTypes.string.isRequired\r\n} \r\nexport default Error;","import React, { useState } from 'react';\r\nimport Error from './Error'\r\nimport PropTypes from 'prop-types';\r\n\r\nconst Formulario = ({busqueda, guardarBusqueda, guardarConsultar}) => { \r\n\r\n const [ error, guardarError ] = useState(false);\r\n\r\n //extraer ciudad y pais\r\n const { ciudad, pais } = busqueda;\r\n\r\n //Funcion que coloca los elementos en el state\r\n const handleChange = e =>{\r\n //actualizar el state\r\n guardarBusqueda({\r\n ...busqueda,\r\n [e.target.name]:e.target.value\r\n });\r\n }\r\n\r\n //cuando el usuario presiona guardar\r\n const handleSubmit = e =>{\r\n e.preventDefault()\r\n\r\n //Validar\r\n if(ciudad.trim() ===''|| pais.trim() ===''){\r\n guardarError(true); \r\n return;\r\n }\r\n guardarError(false);\r\n \r\n guardarConsultar(true);\r\n }\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\nFormulario.propTypes = {\r\n busqueda: PropTypes.object.isRequired,\r\n guardarBusqueda: PropTypes.func.isRequired,\r\n guardarConsultar: PropTypes.func.isRequired\r\n \r\n}\r\nexport default Formulario;","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst Clima = ({resultado}) => {\r\n\r\n const { name, main } = resultado;\r\n\r\n const kelvin =273.15;\r\n\r\n if(!name) return null;\r\n return ( \r\n\r\n {parseFloat(main.temp - kelvin,10).toFixed(2)} ℃\r\n
\r\nTemperatura máxima: \r\n {parseFloat(main.temp_max - kelvin,10).toFixed(2)} ℃\r\n
\r\nTemperatura mínima:\r\n {parseFloat(main.temp_min - kelvin,10).toFixed(2)} ℃\r\n
\r\n