diff --git a/package-lock.json b/package-lock.json index b618842..ddc2dca 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,13 +17,16 @@ "@types/react-dom": "^18.0.10", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-modal": "^3.16.1", "react-scripts": "5.0.1", "typescript": "^4.9.4", "web-vitals": "^2.1.4" }, "devDependencies": { + "@types/react-modal": "^3.13.1", "formik": "^2.2.9", "node-sass": "^8.0.0", + "react-text-mask": "^5.5.0", "sass": "^1.57.1", "scss": "^0.2.4", "yup": "^0.32.11" @@ -3929,6 +3932,15 @@ "@types/react": "*" } }, + "node_modules/@types/react-modal": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/@types/react-modal/-/react-modal-3.13.1.tgz", + "integrity": "sha512-iY/gPvTDIy6Z+37l+ibmrY+GTV4KQTHcCyR5FIytm182RQS69G5ps4PH2FxtC7bAQ2QRHXMevsBgck7IQruHNg==", + "dev": true, + "dependencies": { + "@types/react": "*" + } + }, "node_modules/@types/resolve": { "version": "1.17.1", "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", @@ -7831,6 +7843,11 @@ "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, + "node_modules/exenv": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz", + "integrity": "sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw==" + }, "node_modules/exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", @@ -15208,6 +15225,29 @@ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" }, + "node_modules/react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + }, + "node_modules/react-modal": { + "version": "3.16.1", + "resolved": "https://registry.npmjs.org/react-modal/-/react-modal-3.16.1.tgz", + "integrity": "sha512-VStHgI3BVcGo7OXczvnJN7yT2TWHJPDXZWyI/a0ssFNhGZWsPmB8cF0z33ewDXq4VfYMO1vXgiv/g8Nj9NDyWg==", + "dependencies": { + "exenv": "^1.2.0", + "prop-types": "^15.7.2", + "react-lifecycles-compat": "^3.0.0", + "warning": "^4.0.3" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "react": "^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18", + "react-dom": "^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18" + } + }, "node_modules/react-refresh": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.11.0.tgz", @@ -15288,6 +15328,18 @@ } } }, + "node_modules/react-text-mask": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/react-text-mask/-/react-text-mask-5.5.0.tgz", + "integrity": "sha512-SLJlJQxa0uonMXsnXRpv5abIepGmHz77ylQcra0GNd7Jtk4Wj2Mtp85uGQHv1avba2uI8ZvRpIEQPpJKsqRGYw==", + "dev": true, + "dependencies": { + "prop-types": "^15.5.6" + }, + "peerDependencies": { + "react": "^0.14.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0" + } + }, "node_modules/read-cache": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", @@ -17600,6 +17652,14 @@ "makeerror": "1.0.12" } }, + "node_modules/warning": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", + "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", + "dependencies": { + "loose-envify": "^1.0.0" + } + }, "node_modules/watchpack": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", @@ -21247,6 +21307,15 @@ "@types/react": "*" } }, + "@types/react-modal": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/@types/react-modal/-/react-modal-3.13.1.tgz", + "integrity": "sha512-iY/gPvTDIy6Z+37l+ibmrY+GTV4KQTHcCyR5FIytm182RQS69G5ps4PH2FxtC7bAQ2QRHXMevsBgck7IQruHNg==", + "dev": true, + "requires": { + "@types/react": "*" + } + }, "@types/resolve": { "version": "1.17.1", "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", @@ -24118,6 +24187,11 @@ "strip-final-newline": "^2.0.0" } }, + "exenv": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz", + "integrity": "sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw==" + }, "exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", @@ -29345,6 +29419,22 @@ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" }, + "react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + }, + "react-modal": { + "version": "3.16.1", + "resolved": "https://registry.npmjs.org/react-modal/-/react-modal-3.16.1.tgz", + "integrity": "sha512-VStHgI3BVcGo7OXczvnJN7yT2TWHJPDXZWyI/a0ssFNhGZWsPmB8cF0z33ewDXq4VfYMO1vXgiv/g8Nj9NDyWg==", + "requires": { + "exenv": "^1.2.0", + "prop-types": "^15.7.2", + "react-lifecycles-compat": "^3.0.0", + "warning": "^4.0.3" + } + }, "react-refresh": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.11.0.tgz", @@ -29405,6 +29495,15 @@ "workbox-webpack-plugin": "^6.4.1" } }, + "react-text-mask": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/react-text-mask/-/react-text-mask-5.5.0.tgz", + "integrity": "sha512-SLJlJQxa0uonMXsnXRpv5abIepGmHz77ylQcra0GNd7Jtk4Wj2Mtp85uGQHv1avba2uI8ZvRpIEQPpJKsqRGYw==", + "dev": true, + "requires": { + "prop-types": "^15.5.6" + } + }, "read-cache": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", @@ -31145,6 +31244,14 @@ "makeerror": "1.0.12" } }, + "warning": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", + "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", + "requires": { + "loose-envify": "^1.0.0" + } + }, "watchpack": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", diff --git a/package.json b/package.json index ff0dc5a..eff619f 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ "@types/react-dom": "^18.0.10", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-modal": "^3.16.1", "react-scripts": "5.0.1", "typescript": "^4.9.4", "web-vitals": "^2.1.4" @@ -41,8 +42,10 @@ ] }, "devDependencies": { + "@types/react-modal": "^3.13.1", "formik": "^2.2.9", "node-sass": "^8.0.0", + "react-text-mask": "^5.5.0", "sass": "^1.57.1", "scss": "^0.2.4", "yup": "^0.32.11" diff --git a/src/assets/img/arrow-point-to-right.png b/src/assets/img/arrow-point-to-right.png new file mode 100644 index 0000000..516567c Binary files /dev/null and b/src/assets/img/arrow-point-to-right.png differ diff --git a/src/assets/img/home.png b/src/assets/img/home.png new file mode 100644 index 0000000..caa8648 Binary files /dev/null and b/src/assets/img/home.png differ diff --git a/src/assets/img/menu-hamburguer.png b/src/assets/img/menu-hamburguer.png new file mode 100644 index 0000000..d69b4a8 Binary files /dev/null and b/src/assets/img/menu-hamburguer.png differ diff --git a/src/components/main/Main.tsx b/src/components/main/Main.tsx new file mode 100644 index 0000000..205429d --- /dev/null +++ b/src/components/main/Main.tsx @@ -0,0 +1,19 @@ +import React from 'react'; +import Institucional from '../../pages/institucional/Institucional'; +import Home from '../../assets/img/home.png' +import Arrow from '../../assets/img/arrow-point-to-right.png' + +const Main = () => { + return( +
+
+ home + arrow +

Institucional

+
+ +
+ ) +} + +export default Main diff --git a/src/index.tsx b/src/index.tsx index 4277aef..608f505 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -1,20 +1,23 @@ -import React from 'react'; +import React, { useState } from 'react'; import ReactDOM from 'react-dom/client'; import './styles/global.scss'; import Header from './components/header/Header'; -import Institucional from './pages/institucional/Institucional'; import Footer from './components/footer/Footer'; +import Main from './components/main/Main'; +import Menu from './components/header/Menu'; const root = ReactDOM.createRoot( document.getElementById('root') as HTMLElement ); function App() { + const [openModal, setOpenModal] = useState(false) return (
-
- +
setOpenModal(true)}/> + setOpenModal(false)}/> +
); diff --git a/src/pages/contato/Contato.tsx b/src/pages/contato/Contato.tsx new file mode 100644 index 0000000..fc0f338 --- /dev/null +++ b/src/pages/contato/Contato.tsx @@ -0,0 +1,104 @@ +import React from "react"; + +import {Formik, Form, Field, ErrorMessage, FormikHelpers} from "formik" +// import MaskedInput from 'react-text-mask' + +import Schema from "../../schema/schema"; + +import styles from "../../styles/Contato.module.scss"; + +interface IFormikValues { + name: string; + email: string; + cpf: string; + data: string; + telefone: string; + instagram: string; +} + +const initialValues = { + name: "", + email: "", + cpf: "", + data: "", + telefone: "", + instagram: "", +}; + +const onSubmit = (values: IFormikValues, actions: FormikHelpers) => { + actions.setSubmitting(true); + actions.resetForm() + +} + + +function Contato() { + return ( +
+

PREENCHA O FORMULÁRIO

+ + + {({ errors, touched}) => ( +
+
+ + + +
+
+ + + +
+
+ + + +
+
+ + + +
+
+ + + +
+
+ + + +
+ +
+ + +
+ + + +
+ )} + +
+ +
+ + ) +} + + +export default Contato; diff --git a/src/pages/devolução/Devolucao.tsx b/src/pages/devolução/Devolucao.tsx new file mode 100644 index 0000000..fc0dded --- /dev/null +++ b/src/pages/devolução/Devolucao.tsx @@ -0,0 +1,15 @@ +import React from 'react'; +import styles from '../../styles/Devolucao.module.scss' + +const Devolucao = () => { + return( +
+

Troca e Devolução

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

+ Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.

+ Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?

+
+ ) +} + +export default Devolucao diff --git a/src/pages/entrega/Entrega.tsx b/src/pages/entrega/Entrega.tsx new file mode 100644 index 0000000..77567cf --- /dev/null +++ b/src/pages/entrega/Entrega.tsx @@ -0,0 +1,17 @@ +import React from 'react'; +import styles from '../../styles/Entrega.module.scss' + +const Entrega = () => { + return( +
+

Entrega

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

+ Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.

+ Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?

+ +
+ + ) +} + +export default Entrega diff --git a/src/pages/institucional/Institucional.tsx b/src/pages/institucional/Institucional.tsx index f98309c..5b924e2 100644 --- a/src/pages/institucional/Institucional.tsx +++ b/src/pages/institucional/Institucional.tsx @@ -1,9 +1,55 @@ -import React from 'react'; +import React, { useState } from "react"; -const Institucional = () => { - return( -
Institucional
- ) +import styles from "../../styles/Institucional.module.scss"; + +import Sobre from "../sobre/Sobre"; +import Pagamento from "../pagamento/Pagamento"; +import Entrega from "../entrega/Entrega"; +import Devolucao from "../devolução/Devolucao"; +import Seguranca from "../segurança/Seguranca"; +import Contato from "../contato/Contato"; + +function Institucional() { + const [step, setStep] = useState(""); + + function render() { + switch (step) { + case "sobre": + return ; + case "pagamento": + return ; + case "entrega": + return ; + case "devolucao": + return ; + case "seguranca": + return ; + case "contato": + return ; + default: + return ; + } + } + + return ( +
+

institucional

+
    +
  • setStep("sobre")}>Sobre
  • +
  • setStep("pagamento")}>Forma de Pagamento
  • +
  • setStep("entrega")}>Entrega
  • +
  • setStep("devolucao")}>Troca e Devolução
  • +
  • setStep("seguranca")}>Segurança e Privacidade
  • +
  • setStep("contato")}>Contato
  • +
+
+

institucional

+
{render()}
+
+ + +
+ ); } -export default Institucional \ No newline at end of file +export default Institucional; diff --git a/src/pages/pagamento/Pagamento.tsx b/src/pages/pagamento/Pagamento.tsx new file mode 100644 index 0000000..ae27a91 --- /dev/null +++ b/src/pages/pagamento/Pagamento.tsx @@ -0,0 +1,17 @@ +import React from 'react'; +import styles from '../../styles/Pagamento.module.scss' + +const Pagamento = () => { + return( +
+

Forma de Pagamento

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

+ Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.

+ Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?

+ + +
+ ) +} + +export default Pagamento diff --git a/src/pages/segurança/Seguranca.tsx b/src/pages/segurança/Seguranca.tsx new file mode 100644 index 0000000..cbe4489 --- /dev/null +++ b/src/pages/segurança/Seguranca.tsx @@ -0,0 +1,16 @@ +import React from 'react'; +import styles from '../../styles/Seguranca.module.scss' + +const Seguranca = () => { + return( +
+

Segurança e Privacidade

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

+ Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.

+ Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?

+
+ + ) +} + +export default Seguranca diff --git a/src/pages/sobre/Sobre.tsx b/src/pages/sobre/Sobre.tsx new file mode 100644 index 0000000..fec1246 --- /dev/null +++ b/src/pages/sobre/Sobre.tsx @@ -0,0 +1,16 @@ +import React from 'react'; +import styles from '../../styles/Sobre.module.scss' + +const Sobre = () => { + return( +
+

Sobre

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

+ Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.

+ Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?

+
+ + ) +} + +export default Sobre diff --git a/src/schema/schema.tsx b/src/schema/schema.tsx index 9851191..10ced79 100644 --- a/src/schema/schema.tsx +++ b/src/schema/schema.tsx @@ -1,10 +1,10 @@ import * as Yup from "yup"; export default Yup.object().shape({ - name: Yup.string().required("Campo obrigatório"), + name: Yup.string().min(3).required("Campo obrigatório"), email: Yup.string().required("Campo obrigatório").email("Email inválido"), cpf: Yup.string().required("Campo obrigatório"), data: Yup.string().required("Campo obrigatório"), tel: Yup.string().required("Campo obrigatório"), - insta: Yup.string().required("Campo obrigatório"), + insta: Yup.string(), }); diff --git a/src/styles/Contato.module.scss b/src/styles/Contato.module.scss new file mode 100644 index 0000000..f723f09 --- /dev/null +++ b/src/styles/Contato.module.scss @@ -0,0 +1,107 @@ +.contato__title { + font-family: 'Roboto', sans-serif; + font-style: normal; + font-weight: 400; + font-size: 24px; + line-height: 23px; + color: #110D0F; + margin-bottom: 12px; +} + + +form { + max-width: 391px; + margin-top: 33px; +} + +input::placeholder { + font-family: 'Roboto', sans-serif; + font-style: normal; + font-weight: 400; + font-size: 14px; + line-height: 23px; + color: #B9B7B7; +} + +.form__container { + position: relative; + +} + +.form__container label { + display: flex; + font-family: 'Roboto', sans-serif; + font-weight: 400; + font-size: 14px; + line-height: 23px; + color: #100D0E; + padding-bottom: 4px; + padding-top: 12px; + +} + +.form__container input { + font-family: 'Roboto', sans-serif; + font-weight: 400; + font-size: 14px; + line-height: 23px; + color: #B9B7B7; + background: #FFFFFF; + border: 1px solid #100D0E; + border-radius: 25px; + padding: 11px 227px 10px 28px; +} + +.form__check { + display: flex; + align-items: center; + justify-content: center; + gap: 8px; + padding: 21px 0 21px; + font-weight: 400; + font-size: 14px; + line-height: 23px; + text-decoration-line: underline; + color: #100D0E; + +} + +.form__button { + width: 391.49px; + height: 52.47px; + left: 500px; + top: 979px; + background: #000000; + border-radius: 25px; + font-style: normal; + font-weight: 700; + font-size: 16px; + line-height: 34px; + letter-spacing: 0.05em; + color: #FFFFFF; + border: #000000; + margin-bottom: 117px; +} + +button:hover { + background-color: #000000; +} + +button:active { + background-color: #000000; +} + +.form__invalid { + display: flex; + font-family: 'Roboto', sans-serif; + font-weight: 400; + font-size: 12px; + color: red; + position: absolute; +} + +.form__container input.invalid { + border: 1px solid red; +} + + diff --git a/src/styles/Devolucao.module.scss b/src/styles/Devolucao.module.scss new file mode 100644 index 0000000..4e76957 --- /dev/null +++ b/src/styles/Devolucao.module.scss @@ -0,0 +1,22 @@ +.devolucao__title { + font-family: 'Roboto', sans-serif; + font-style: normal; + font-weight: 700; + font-size: 24px; + line-height: 28px; + color: #292929; + text-align: left; + padding-bottom: 12px; +} +.devolucao__description { + font-family: 'Roboto', sans-serif; + font-style: normal; + font-weight: 400; + font-size: 13px; + line-height: 15px; + color: #7D7D7D; + text-align: left; + max-width: 715px; + padding-bottom: 171px; +} + diff --git a/src/styles/Entrega.module.scss b/src/styles/Entrega.module.scss new file mode 100644 index 0000000..a1b9020 --- /dev/null +++ b/src/styles/Entrega.module.scss @@ -0,0 +1,22 @@ +.entrega__title { + font-family: 'Roboto', sans-serif; + font-style: normal; + font-weight: 700; + font-size: 24px; + line-height: 28px; + color: #292929; + text-align: left; + padding-bottom: 12px; +} +.entrega__description { + font-family: 'Roboto', sans-serif; + font-style: normal; + font-weight: 400; + font-size: 13px; + line-height: 15px; + color: #7D7D7D; + text-align: left; + max-width: 715px; + padding-bottom: 171px; +} + diff --git a/src/styles/Institucional.module.scss b/src/styles/Institucional.module.scss index 1457087..22bcf9e 100644 --- a/src/styles/Institucional.module.scss +++ b/src/styles/Institucional.module.scss @@ -1,3 +1,114 @@ -* { - padding: 0; + +@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap'); + + +.main__container { + display: flex; + justify-content: center; + max-width: 80%; +} + +.main__container ul { + border-right: 1px solid #E5E5E5; + margin: 150px 32px 78px 118px; + list-style: none; + max-height: 270px; + max-width: 270px; +} + +.main__container li { + font-family: 'Roboto', sans-serif; + font-weight: 400; + font-size: 16px; + line-height: 19px; + color: #7D7D7D; + text-align: left; + margin-bottom: 24px; + margin-right: 78px; + height: 39px; + +} + +.main__container li:hover { + background-color: #000000; + cursor: pointer; + font-family: 'Roboto', sans-serif; + font-weight: 700; + font-size: 16px; + line-height: 19px; + color: #FFFFFF; + padding: 10px 16px; +} + +.title__desktop { + font-weight: 300; + font-size: 24px; + line-height: 29px; + letter-spacing: 0.1em; + text-transform: uppercase; + color: #292929; + margin-bottom: 51px; + margin-top: 80px; +} + +@media screen and (max-width: 1080px) { + .main__container { + max-width: 80%; + } +} + +@media screen and (max-width: 768px) { + .main__container { + flex-direction: column; + align-items: center; + max-width: 343px; + margin: 0 auto; + } + + .main__container ul { + margin: 33px 25px 22px 7px; + display: flex; + flex-direction: column; + align-items: flex-end; + } + + .main__contato-subtitle { + margin-top: 22px; + } + + .title__desktop { + display: none; + } + + .title__mobile { + + font-style: normal; + font-weight: 300; + font-size: 24px; + line-height: 29px; + letter-spacing: 0.1em; + text-transform: uppercase; + color: #292929; + margin: 75px 92px 33px 83px; + + } +} + +@media screen and (min-width: 769px) { + .title__mobile { + display: none + } +} + +@media screen and (max-width: 475px) { + .main__container ul { + align-items: center; + } +} + +@media screen and (max-width: 375px) { + .main__container ul { + max-width: 70%; + margin: 0 auto; + } } diff --git a/src/styles/Pagamento.module.scss b/src/styles/Pagamento.module.scss new file mode 100644 index 0000000..c070043 --- /dev/null +++ b/src/styles/Pagamento.module.scss @@ -0,0 +1,22 @@ +.pagamento__title { + font-family: 'Roboto', sans-serif; + font-style: normal; + font-weight: 700; + font-size: 24px; + line-height: 28px; + color: #292929; + text-align: left; + padding-bottom: 12px; +} +.pagamento__description { + font-family: 'Roboto', sans-serif; + font-style: normal; + font-weight: 400; + font-size: 13px; + line-height: 15px; + color: #7D7D7D; + text-align: left; + max-width: 715px; + padding-bottom: 171px; +} + diff --git a/src/styles/Seguranca.module.scss b/src/styles/Seguranca.module.scss new file mode 100644 index 0000000..c81cf1b --- /dev/null +++ b/src/styles/Seguranca.module.scss @@ -0,0 +1,23 @@ +.seguranca__title { + font-family: 'Roboto', sans-serif; + font-style: normal; + font-weight: 700; + font-size: 24px; + line-height: 28px; + color: #292929; + text-align: left; + padding-bottom: 12px; +} +.seguranca__description { + font-family: 'Roboto', sans-serif; + font-style: normal; + font-weight: 400; + font-size: 13px; + line-height: 15px; + color: #7D7D7D; + text-align: left; + max-width: 715px; + padding-bottom: 171px; +} + + diff --git a/src/styles/Sobre.module.scss b/src/styles/Sobre.module.scss new file mode 100644 index 0000000..aa461e1 --- /dev/null +++ b/src/styles/Sobre.module.scss @@ -0,0 +1,23 @@ +.sobre__title { + font-family: 'Roboto', sans-serif; + font-style: normal; + font-weight: 700; + font-size: 24px; + line-height: 28px; + color: #292929; + text-align: left; + padding-bottom: 12px; +} +.sobre__description { + font-family: 'Roboto', sans-serif; + font-style: normal; + font-weight: 400; + font-size: 13px; + line-height: 15px; + color: #7D7D7D; + text-align: left; + max-width: 715px; + padding-bottom: 171px; +} + +