From 7a1b3ece79c1eb718fea98cb5a604766a35b3674 Mon Sep 17 00:00:00 2001 From: Hugo Oliveira Date: Thu, 1 Feb 2024 11:40:00 +0000 Subject: [PATCH] Update #2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ajuste a nivel de visual e mais alguns updates nas validações do formulário --- high-green-power/src/App.tsx | 20 +++++--------------- high-green-power/src/DadosPessoais.tsx | 16 +++++++--------- high-green-power/src/PessoaContacto.tsx | 2 +- 3 files changed, 13 insertions(+), 25 deletions(-) diff --git a/high-green-power/src/App.tsx b/high-green-power/src/App.tsx index 6f6e966..070e53e 100644 --- a/high-green-power/src/App.tsx +++ b/high-green-power/src/App.tsx @@ -54,16 +54,6 @@ const initialValues: dados = { } -// , - -// Menos importante - validação Codigo-Postal e Cidade - -/* Updates: Validação de telemovel e definiçaõ default de portugal, - Variavel "nomecartao1" é agora um array, - Definido um link na "Política de Privacidade", - Acrescimo dos país através da API com Portugal a valor default, -*/ - function App() { const steps = ["Dados Pessoais", "Pessoa de Contacto", "Cartões"]; @@ -73,21 +63,21 @@ function App() { const schemaStep1 = yup.object({ empresa: yup.string().required("*Por favor insira um nome válido"), - nif: yup.number().integer(), + nif: yup.string().matches(/^[0-9]+$/, "*Por favor insira um NIF válido").length(9, "*O NIF deve ser composto por 9 dígitos"), representante: yup.string().required("*Por favor insira um representante válido"), telemovelDP: yup.string() - .required("*Por favor insira um número de telemóvel válido") - .test('is-valid-phone', '*Por favor insira um número de telemóvel válido', (value) => { + .required(' ') + .test('is-valid-phone', "*Por favor insira um número de telemóvel válido", (value) => { return matchIsValidTel(value); }), emailDP: yup.string() .email("*Por favor insira um email válido") .required("*Por favor insira um email válido"), morada: yup.string(), - andar: yup.number().integer(), + andar: yup.string().matches(/^[0-9]+$/, "*Por favor insira um Andar válido"), cidade: yup.string(), pais: yup.string(), - codigoPostal: yup.number().integer() + codigoPostal: yup.string() }); diff --git a/high-green-power/src/DadosPessoais.tsx b/high-green-power/src/DadosPessoais.tsx index 082d392..ce3c659 100644 --- a/high-green-power/src/DadosPessoais.tsx +++ b/high-green-power/src/DadosPessoais.tsx @@ -33,15 +33,14 @@ export const DadosPessoais = ( {formik}: any ) => { if (!isValid) { formik.setFieldError('telemovelDP', 'Por favor insira um número de telemóvel válido'); } else { - formik.setFieldError('telemovelDP', ''); // Clear error if valid + formik.setFieldError('telemovelDP', ''); } }; const [countries, setCountries] = useState([]); useEffect(() => { - // Fetch countries data from the API - axios.get('https://restcountries.com/v3.1/all?fields=name,flags,postalCode') + axios.get('https://restcountries.com/v3.1/all?fields=name,flags') .then(response => { const sortedCountries = response.data.sort((a, b) => a.name.common.localeCompare(b.name.common)); setCountries(sortedCountries); @@ -74,7 +73,7 @@ export const DadosPessoais = ( {formik}: any ) => { { { ))} - + { variant="standard" /> - + diff --git a/high-green-power/src/PessoaContacto.tsx b/high-green-power/src/PessoaContacto.tsx index d442606..bd2e39f 100644 --- a/high-green-power/src/PessoaContacto.tsx +++ b/high-green-power/src/PessoaContacto.tsx @@ -12,7 +12,7 @@ export const PessoaContacto = ( {formik}: any ) => { if (!isValid) { formik.setFieldError('telemovelPC', 'Por favor insira um número de telemóvel válido'); } else { - formik.setFieldError('telemovelPC', ''); // Clear error if valid + formik.setFieldError('telemovelPC', ''); } };