Compare commits
No commits in common. "main" and "feature/Images" have entirely different histories.
main
...
feature/Im
@ -114,7 +114,7 @@ export const ContactForm = () => {
|
||||
|
||||
<div className="checkbox_wrapper">
|
||||
<label htmlFor="checkbox">Declaro que li e aceito</label>
|
||||
<span className="check-error">
|
||||
<span className="error">
|
||||
<ErrorMessage name="checkbox" className="form-ivalid-feedback" />
|
||||
</span>
|
||||
<Field
|
||||
|
@ -1,45 +0,0 @@
|
||||
import Vtex from "../assets/imgs/SVGs/Vtex-logo.svg";
|
||||
import M3 from "../assets/imgs/SVGs/M3-logo.svg";
|
||||
|
||||
import Master from "../assets/imgs/SVGs/credit-cards/Master.svg";
|
||||
import Visa from "../assets/imgs/SVGs/credit-cards/Visa.svg";
|
||||
import Diners from "../assets/imgs/SVGs/credit-cards/Diners.svg";
|
||||
import Elo from "../assets/imgs/SVGs/credit-cards/Elo.svg";
|
||||
import Hiper from "../assets/imgs/SVGs/credit-cards/Hiper.svg";
|
||||
import Pagseguro from "../assets/imgs/SVGs/credit-cards/Pagseguro.svg";
|
||||
import Boleto from "../assets/imgs/SVGs/credit-cards/Boleto.svg";
|
||||
import vtex from "../assets/imgs/SVGs/credit-cards/vtex-pci-200.svg";
|
||||
|
||||
export const BottomFooter = () => {
|
||||
return (
|
||||
<>
|
||||
<div className="Bottom_Wrapper">
|
||||
<span className="corporateName">
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
|
||||
eiusmod tempor
|
||||
</span>
|
||||
|
||||
<div className="Payment_methods">
|
||||
<img className="carts_icons" src={Master} alt="Master-icon" />
|
||||
<img className="carts_icons" src={Visa} alt="Visa-icon" />
|
||||
<img className="carts_icons" src={Diners} alt="Diners-icon" />
|
||||
<img className="carts_icons" src={Elo} alt="Elo-icon" />
|
||||
<img className="carts_icons" src={Hiper} alt="Hiper-icon" />
|
||||
<img className="carts_icons" src={Pagseguro} alt="Pagseguro-icon" />
|
||||
<img className="carts_icons" src={Boleto} alt="Boleto-icon" />
|
||||
|
||||
<span className="div_icons"> </span>
|
||||
<img className="vtex_icon" src={vtex} alt="vtex-icon" />
|
||||
</div>
|
||||
|
||||
<div className="Authors">
|
||||
<span className="Powered_by"> Powered by </span>
|
||||
<img className="vtex_logo" src={Vtex} alt="Vtex-logo" />
|
||||
|
||||
<span className="Developed_by"> Developed by </span>
|
||||
<img className="m3_logo" src={M3} alt="M3-logo" />
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,62 +0,0 @@
|
||||
import { MenuList1, MenuList2, MenuList3 } from "./MenuListFooter";
|
||||
import { useState } from "react";
|
||||
|
||||
export const Contact = () => {
|
||||
const [isOpened, setIsOpened] = useState(false);
|
||||
const [isOpened2, setIsOpened2] = useState(false);
|
||||
const [isOpened3, setIsOpened3] = useState(false);
|
||||
if (window.innerWidth > 1024) {
|
||||
return (
|
||||
<>
|
||||
<div className="Contact_wrapper">
|
||||
<div className="Menu_folder">
|
||||
<h5> Institucional </h5>
|
||||
<MenuList1 />
|
||||
</div>
|
||||
<div className="Menu_folder">
|
||||
<h5> Dúvidas </h5>
|
||||
<MenuList2 />
|
||||
</div>
|
||||
<div className="Menu_folder">
|
||||
<h5> Fale Conosco </h5>
|
||||
<MenuList3 />
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
} else {
|
||||
return (
|
||||
<>
|
||||
<div className="Contact_wrapper">
|
||||
<div
|
||||
className="Menu_folder"
|
||||
onClick={() => {
|
||||
setIsOpened(!isOpened);
|
||||
}}
|
||||
>
|
||||
<h5> Institucional </h5>
|
||||
{isOpened && <MenuList1 />}
|
||||
</div>
|
||||
<div
|
||||
className="Menu_folder"
|
||||
onClick={() => {
|
||||
setIsOpened2(!isOpened2);
|
||||
}}
|
||||
>
|
||||
<h5> Dúvidas </h5>
|
||||
{isOpened2 && <MenuList2 />}
|
||||
</div>
|
||||
<div
|
||||
className="Menu_folder"
|
||||
onClick={() => {
|
||||
setIsOpened3(!isOpened3);
|
||||
}}
|
||||
>
|
||||
<h5> Fale Conosco </h5>
|
||||
{isOpened3 && <MenuList3 />}
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
}
|
||||
};
|
@ -1,536 +0,0 @@
|
||||
@import "../Variables.scss";
|
||||
|
||||
.Footer_container {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
.Newsletter_Container {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
border-top: 1px solid $color-black;
|
||||
border-bottom: 1px solid $color-black;
|
||||
padding: 16px;
|
||||
|
||||
@media (min-width: 1025px) {
|
||||
padding: 16px 31.485%;
|
||||
}
|
||||
|
||||
.Newsletter_wrapper {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex-wrap: wrap;
|
||||
|
||||
.News_title {
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
font-size: 18px;
|
||||
line-height: 21px;
|
||||
letter-spacing: 0.05em;
|
||||
font-variant: small-caps;
|
||||
color: $color-gray-700;
|
||||
margin: 0 0 16px 0;
|
||||
text-transform: uppercase;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
font-weight: 500;
|
||||
font-size: 36px;
|
||||
line-height: 42px;
|
||||
}
|
||||
|
||||
@media (min-width: 1025px) {
|
||||
margin: 0 0 8px 0;
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
}
|
||||
}
|
||||
|
||||
.Submite_wrapper {
|
||||
display: flex;
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
flex-direction: column;
|
||||
gap: 16px;
|
||||
}
|
||||
|
||||
@media (min-width: 1025px) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.Input_News {
|
||||
padding: 13px 16px;
|
||||
border: 1px solid $color-white-500;
|
||||
border-radius: 4px;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
color: $color-gray;
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
height: 14px;
|
||||
}
|
||||
|
||||
@media (max-width: 375px) {
|
||||
height: 14px;
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
padding: 17px 16px;
|
||||
}
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
height: 31px !important;
|
||||
width: 68.486% !important;
|
||||
font-weight: 400;
|
||||
font-size: 28px;
|
||||
line-height: 33px;
|
||||
}
|
||||
|
||||
@media (min-width: 1025px) {
|
||||
height: 14px;
|
||||
margin-right: 8px;
|
||||
width: 24.376%;
|
||||
min-width: 306px;
|
||||
}
|
||||
|
||||
&::placeholder {
|
||||
color: $color-gray;
|
||||
}
|
||||
}
|
||||
.Button_News {
|
||||
padding: 14px 20px;
|
||||
background: $color-black;
|
||||
box-shadow: 0px 4px 4px rgba($color-black, 0.25);
|
||||
border-radius: 4px;
|
||||
border: none;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
font-size: 12px;
|
||||
line-height: 14px;
|
||||
color: $color-white;
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
padding: 17px 0;
|
||||
font-weight: 700;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
letter-spacing: 0.05em;
|
||||
}
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
width: 26.574% !important;
|
||||
height: 59px !important;
|
||||
font-weight: 700;
|
||||
font-size: 24px;
|
||||
line-height: 28px;
|
||||
}
|
||||
|
||||
@media (min-width: 1025px) {
|
||||
height: 42px;
|
||||
width: 9.844%;
|
||||
min-width: 126px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.Footer_top {
|
||||
display: flex;
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
flex-direction: column;
|
||||
padding: 24px 16px;
|
||||
}
|
||||
|
||||
@media (min-width: 1025px) {
|
||||
position: relative;
|
||||
padding: 50px 0;
|
||||
}
|
||||
|
||||
.Contact_wrapper {
|
||||
display: flex;
|
||||
gap: 121px;
|
||||
width: 55.235%;
|
||||
margin: 0 12.11% 0 100px;
|
||||
@media (max-width: 1024px) {
|
||||
flex-direction: column;
|
||||
gap: 0;
|
||||
margin: 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
gap: 293px;
|
||||
margin: 0 15.16% 0 100px;
|
||||
width: 61.24%;
|
||||
}
|
||||
|
||||
.Menu_folder {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
min-width: 20.51%;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
min-width: 20.575%;
|
||||
}
|
||||
|
||||
h5 {
|
||||
margin-top: 0;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
color: $color-gray-700;
|
||||
text-transform: uppercase;
|
||||
@media (max-width: 1024px) {
|
||||
margin-bottom: 12px;
|
||||
text-transform: capitalize;
|
||||
&::after {
|
||||
content: "+";
|
||||
float: right;
|
||||
font-size: 14px;
|
||||
}
|
||||
}
|
||||
@media (min-width: 2500px) {
|
||||
font-weight: 500;
|
||||
font-size: 28px;
|
||||
line-height: 33px;
|
||||
}
|
||||
}
|
||||
|
||||
.links_footer {
|
||||
transform: 0.4s;
|
||||
transition: 0.4s;
|
||||
text-decoration: none;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 12px;
|
||||
line-height: 14px;
|
||||
text-transform: capitalize;
|
||||
color: $color-gray-700;
|
||||
margin-bottom: 12px;
|
||||
width: 155px;
|
||||
@media (max-width: 1024px) {
|
||||
color: $color-gray-500;
|
||||
}
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
width: 100%;
|
||||
font-weight: 400;
|
||||
font-size: 24px;
|
||||
line-height: 28px;
|
||||
}
|
||||
}
|
||||
|
||||
.last {
|
||||
text-decoration-line: underline;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.SocialMedia {
|
||||
.Img_wrappers {
|
||||
display: flex;
|
||||
gap: 10px;
|
||||
margin-bottom: 12px;
|
||||
|
||||
img {
|
||||
@media (min-width: 2500px) {
|
||||
width: 70px;
|
||||
height: 70px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.Site {
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
color: $color-gray-700;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
font-weight: 400;
|
||||
font-size: 28px;
|
||||
line-height: 33px;
|
||||
}
|
||||
}
|
||||
|
||||
.Wpp-Icon {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 1px;
|
||||
position: fixed;
|
||||
right: 16px;
|
||||
bottom: 51px;
|
||||
|
||||
@media (max-width: 375px) {
|
||||
bottom: 26px !important;
|
||||
right: 14px;
|
||||
}
|
||||
|
||||
@media (min-width: 1025px) {
|
||||
right: 16px;
|
||||
bottom: 210px;
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
bottom: 46px;
|
||||
}
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
.Chat_button img,
|
||||
.button_wrapper {
|
||||
width: 66px;
|
||||
height: 66px;
|
||||
}
|
||||
right: 16px;
|
||||
bottom: 275px;
|
||||
}
|
||||
|
||||
.button_wrapper {
|
||||
position: relative;
|
||||
img {
|
||||
@media (min-width: 2500px) {
|
||||
width: 70px;
|
||||
height: 70px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.button_wrapper::after {
|
||||
content: " ";
|
||||
width: 13px;
|
||||
height: 7px;
|
||||
top: 33%;
|
||||
right: 31%;
|
||||
position: absolute;
|
||||
background-image: url("../assets/imgs/SVGs/Vector.svg");
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
background-repeat: no-repeat;
|
||||
height: 24.14px;
|
||||
width: 24.14px;
|
||||
background-size: contain;
|
||||
top: 37%;
|
||||
}
|
||||
}
|
||||
|
||||
.button {
|
||||
display: flex;
|
||||
background-image: url("../assets/imgs/SVGs/Vector.svg");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.Bottom_Wrapper {
|
||||
justify-content: space-between;
|
||||
display: flex;
|
||||
padding: 15px;
|
||||
background: $color-black;
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
flex-direction: column;
|
||||
gap: 15px;
|
||||
padding: 15px 16px;
|
||||
}
|
||||
|
||||
@media (min-width: 1025px) {
|
||||
padding: 15px 100px;
|
||||
}
|
||||
|
||||
.corporateName {
|
||||
display: flex;
|
||||
align-self: center;
|
||||
width: 236px;
|
||||
height: 24px;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 10px;
|
||||
line-height: 12px;
|
||||
color: $color-white;
|
||||
text-transform: capitalize;
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
align-self: baseline;
|
||||
}
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
font-weight: 400;
|
||||
font-size: 20px;
|
||||
line-height: 23px;
|
||||
width: 471px;
|
||||
height: 47px;
|
||||
}
|
||||
}
|
||||
|
||||
.Payment_methods {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
gap: 12px;
|
||||
|
||||
@media (max-width: 374px) {
|
||||
gap: 7px !important;
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
order: -1;
|
||||
}
|
||||
|
||||
@media (max-width: 570px) {
|
||||
gap: 11px;
|
||||
}
|
||||
|
||||
.carts_icons {
|
||||
width: 36px;
|
||||
height: 20px;
|
||||
|
||||
@media (max-width: 374px) {
|
||||
width: 22px !important;
|
||||
}
|
||||
|
||||
@media (max-width: 570px) {
|
||||
width: 30px;
|
||||
}
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
width: 70px;
|
||||
height: 39.27px;
|
||||
}
|
||||
}
|
||||
|
||||
.div_icons {
|
||||
content: "";
|
||||
border: 1px solid $color-gray;
|
||||
transform: rotate(90deg);
|
||||
width: 22px;
|
||||
height: 0px;
|
||||
|
||||
@media (max-width: 374px) {
|
||||
width: 0 !important;
|
||||
}
|
||||
|
||||
@media (max-width: 375px) {
|
||||
transform: rotate(180deg);
|
||||
height: 18px;
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
width: 22px;
|
||||
}
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
width: 22px;
|
||||
}
|
||||
}
|
||||
|
||||
.vtex_icon {
|
||||
width: 54.61px;
|
||||
height: 34px;
|
||||
|
||||
@media (max-width: 374px) {
|
||||
width: 34px !important;
|
||||
}
|
||||
|
||||
@media (max-width: 570px) {
|
||||
width: 45px;
|
||||
height: 28px;
|
||||
}
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
width: 106px;
|
||||
height: 66px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.Authors {
|
||||
display: flex;
|
||||
gap: 13px;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
width: 406px;
|
||||
}
|
||||
|
||||
.Powered_by {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
width: 53px;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 10px;
|
||||
line-height: 12px;
|
||||
text-transform: capitalize;
|
||||
color: $color-white;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
font-weight: 400;
|
||||
font-size: 20px;
|
||||
line-height: 23px;
|
||||
width: 110px;
|
||||
}
|
||||
}
|
||||
|
||||
.Developed_by {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
width: 61px;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 10px;
|
||||
line-height: 12px;
|
||||
text-transform: capitalize;
|
||||
color: $color-white;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
font-weight: 400;
|
||||
font-size: 20px;
|
||||
line-height: 23px;
|
||||
width: 125px;
|
||||
}
|
||||
}
|
||||
|
||||
.vtex_logo {
|
||||
display: flex;
|
||||
align-self: center;
|
||||
width: 44.92px;
|
||||
height: 16px;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
font-weight: 400;
|
||||
font-size: 20px;
|
||||
line-height: 23px;
|
||||
width: 84.22px;
|
||||
height: 30px;
|
||||
}
|
||||
}
|
||||
|
||||
.m3_logo {
|
||||
display: flex;
|
||||
align-self: center;
|
||||
width: 28.66px;
|
||||
height: 15.65px;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
width: 54.95px;
|
||||
height: 30px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,21 +0,0 @@
|
||||
import { Newsletter } from "./Newsletter";
|
||||
import { Contact } from "./ContactFooter";
|
||||
import { SocialMedia } from "./SocialMedia";
|
||||
import { BottomFooter } from "./BottomFooter";
|
||||
|
||||
import "./FooterMain.modules.scss";
|
||||
|
||||
export const MainFooter = () => {
|
||||
return (
|
||||
<>
|
||||
<section className="Footer_container">
|
||||
<Newsletter />
|
||||
<div className="Footer_top">
|
||||
<Contact />
|
||||
<SocialMedia />
|
||||
</div>
|
||||
<BottomFooter />
|
||||
</section>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,63 +0,0 @@
|
||||
import { NavLink } from "react-router-dom";
|
||||
|
||||
interface MenuFooterProps {
|
||||
isOpened: boolean;
|
||||
setIsOpened: React.Dispatch<React.SetStateAction<boolean>>;
|
||||
}
|
||||
|
||||
export const MenuList1 = () => {
|
||||
return (
|
||||
<>
|
||||
<NavLink className={`links_footer`} to={"/"}>
|
||||
Quem Somos
|
||||
</NavLink>
|
||||
<NavLink className={"links_footer"} to={"/"}>
|
||||
Política de Privacidade
|
||||
</NavLink>
|
||||
<NavLink className={"links_footer"} to={"/"}>
|
||||
Segurança
|
||||
</NavLink>
|
||||
<NavLink className={"links_footer last"} to={"/"}>
|
||||
Seja um Revendedor
|
||||
</NavLink>
|
||||
</>
|
||||
);
|
||||
};
|
||||
|
||||
export const MenuList2 = () => {
|
||||
return (
|
||||
<>
|
||||
<NavLink className={"links_footer"} to={"/"}>
|
||||
Entrega
|
||||
</NavLink>
|
||||
<NavLink className={"links_footer"} to={"/"}>
|
||||
Pagamento
|
||||
</NavLink>
|
||||
<NavLink className={"links_footer"} to={"/"}>
|
||||
Trocas e Devoluções
|
||||
</NavLink>
|
||||
<NavLink className={"links_footer last"} to={"/"}>
|
||||
Dúvidas Frequentes
|
||||
</NavLink>
|
||||
</>
|
||||
);
|
||||
};
|
||||
|
||||
export const MenuList3 = () => {
|
||||
return (
|
||||
<>
|
||||
<NavLink className={"links_footer"} to={"/"}>
|
||||
Atendimento ao Consumidor
|
||||
</NavLink>
|
||||
<NavLink className={"links_footer"} to={"/"}>
|
||||
(11) 4159-9504
|
||||
</NavLink>
|
||||
<NavLink className={"links_footer"} to={"/"}>
|
||||
Atendimento Online
|
||||
</NavLink>
|
||||
<NavLink className={"links_footer last"} to={"/"}>
|
||||
(11) 99433-8825
|
||||
</NavLink>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,16 +0,0 @@
|
||||
export const Newsletter = () => {
|
||||
return (
|
||||
<>
|
||||
<section className="Newsletter_Container">
|
||||
<div className="Newsletter_wrapper">
|
||||
<h4 className="News_title"> Assine nossa Newsletter </h4>
|
||||
|
||||
<div className="Submite_wrapper">
|
||||
<input className="Input_News" type="text" placeholder="E-mail" />
|
||||
<button className="Button_News"> ENVIAR </button>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,26 +0,0 @@
|
||||
import Facebook from "../assets/imgs/SVGs/Facebook.svg";
|
||||
import Instagram from "../assets/imgs/SVGs/Instagram.svg";
|
||||
import Twitter from "../assets/imgs/SVGs/Twitter.svg";
|
||||
import YouTube from "../assets/imgs/SVGs/YouTube.svg";
|
||||
import Linkedin from "../assets/imgs/SVGs/Linkedin.svg";
|
||||
|
||||
import { WppIcon } from "./wpp";
|
||||
|
||||
export const SocialMedia = () => {
|
||||
return (
|
||||
<>
|
||||
<div className="SocialMedia">
|
||||
<div className="Img_wrappers">
|
||||
<img src={Facebook} alt="Facebook-logo" />
|
||||
<img src={Instagram} alt="Instagram-logo" />
|
||||
<img src={Twitter} alt="Twitter-logo" />
|
||||
<img src={YouTube} alt="YouTube-logo" />
|
||||
<img src={Linkedin} alt="Linkedin-logo" />
|
||||
</div>
|
||||
<span className="Site"> www.loremipsum.com </span>
|
||||
<WppIcon />
|
||||
{/* <div>{window.innerWidth > 1024 ? <WppIcon /> : ""}</div> */}
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,30 +0,0 @@
|
||||
import Wpp from "../assets/imgs/SVGs/whatsapp.svg";
|
||||
import Ellipse from "../assets/imgs/SVGs/Ellipse.svg";
|
||||
import { useEffect } from "react";
|
||||
|
||||
export const WppIcon = () => {
|
||||
return (
|
||||
<>
|
||||
<div className="Wpp-Icon">
|
||||
<a
|
||||
className="Chat_button"
|
||||
href="https://wa.me/0000000000"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<img src={Wpp} alt="Wpp-logo" />
|
||||
</a>
|
||||
<div className="button_wrapper">
|
||||
<img
|
||||
className="Button_wpp"
|
||||
src={Ellipse}
|
||||
alt="Ellipse-logo"
|
||||
onClick={(e) => {
|
||||
window.scrollTo(0, 0);
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,19 +0,0 @@
|
||||
import { NavLink } from "react-router-dom";
|
||||
|
||||
export const ContentMenuHeader = () => {
|
||||
return (
|
||||
<>
|
||||
<div className="ContentHeader_wrapper">
|
||||
<NavLink to={"/"}>
|
||||
<button>CURSOS</button>
|
||||
</NavLink>
|
||||
<NavLink to={"/"}>
|
||||
<button>SAIBA MAIS</button>
|
||||
</NavLink>
|
||||
<NavLink to={"/"}>
|
||||
<button>INSTITUCIONAIS</button>
|
||||
</NavLink>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,148 +0,0 @@
|
||||
@import "../Variables.scss";
|
||||
|
||||
.HeaderDesktop {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
height: 31px;
|
||||
padding: 22px 100px;
|
||||
background: $color-black;
|
||||
font-family: $fontFamily;
|
||||
border-bottom: 1px solid $color-gray;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
height: 56px;
|
||||
}
|
||||
|
||||
.m3LogoWrapper {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
.M3Logo {
|
||||
width: 100%;
|
||||
@media (min-width: 2500px) {
|
||||
width: 265.62px;
|
||||
height: 50.5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.Search_Header_wrapper {
|
||||
position: relative;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
width: 24.445%;
|
||||
max-width: 515px;
|
||||
|
||||
.Search_Header {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 12px;
|
||||
padding: 8px 16px;
|
||||
border: 2px solid $color-white-100;
|
||||
border-radius: 5px;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
color: $color-gray;
|
||||
|
||||
&::placeholder {
|
||||
color: $color-gray;
|
||||
}
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
height: 29px;
|
||||
padding: 12px 16px;
|
||||
font-weight: 400;
|
||||
font-size: 28px;
|
||||
line-height: 33px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.Search_Header_wrapper::after {
|
||||
position: absolute;
|
||||
content: "";
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
top: 7px;
|
||||
right: 16px;
|
||||
background-image: url("../assets/imgs/SVGs/search-icon-desktop.svg");
|
||||
background-repeat: no-repeat;
|
||||
cursor: pointer;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
width: 35.15px;
|
||||
height: 35.15px;
|
||||
background-size: contain;
|
||||
top: 10px;
|
||||
}
|
||||
}
|
||||
.Headerlinks {
|
||||
display: flex;
|
||||
gap: 55px;
|
||||
|
||||
.EnterLink {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
color: $color-white;
|
||||
text-decoration: none;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
font-size: 28px;
|
||||
line-height: 33px;
|
||||
}
|
||||
}
|
||||
|
||||
.CartIcon_Wrapper {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
a {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.CartIcon {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.ContentHeader_wrapper {
|
||||
padding: 14px 100px;
|
||||
background: $color-black;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
gap: 55px;
|
||||
display: flex;
|
||||
height: 16px;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
height: 33px;
|
||||
}
|
||||
|
||||
button {
|
||||
padding: 0;
|
||||
background: $color-black;
|
||||
border: none;
|
||||
color: $color-white;
|
||||
cursor: pointer;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
text-transform: uppercase;
|
||||
font-family: $fontFamily;
|
||||
@media (min-width: 2500px) {
|
||||
font-weight: 500;
|
||||
font-size: 28px;
|
||||
line-height: 33px;
|
||||
}
|
||||
}
|
||||
}
|
@ -1,44 +0,0 @@
|
||||
import React from "react";
|
||||
import { NavLink } from "react-router-dom";
|
||||
|
||||
import LogoM3 from "../assets/imgs/SVGs/M3Logo_desktop.svg";
|
||||
import CartIcon from "../assets/imgs/SVGs/CartIcon_desktop.svg";
|
||||
|
||||
import { ContentMenuHeader } from "./ContentMenuHeader";
|
||||
|
||||
import "./HeaderDesktop.modules.scss";
|
||||
|
||||
export const HeaderDesktop = () => {
|
||||
return (
|
||||
<>
|
||||
<section className="HeaderDesktop">
|
||||
<div className="m3LogoWrapper">
|
||||
<NavLink to={"/"}>
|
||||
<img src={LogoM3} alt="LogoM3" className="M3Logo" />
|
||||
</NavLink>
|
||||
</div>
|
||||
<div className="Search_Header_wrapper">
|
||||
<input
|
||||
name="Search_Header"
|
||||
className="Search_Header"
|
||||
placeholder="Buscar..."
|
||||
/>
|
||||
<label className="InconWrapper" htmlFor={"Search_Header"}></label>
|
||||
</div>
|
||||
<div className="Headerlinks">
|
||||
<NavLink to={"/"} className="EnterLink">
|
||||
ENTRAR
|
||||
</NavLink>
|
||||
<div className="CartIcon_Wrapper">
|
||||
<NavLink to={"/"}>
|
||||
<img src={CartIcon} alt="Cart-Icon" className="CartIcon" />
|
||||
</NavLink>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<div className="Header_botom">
|
||||
<ContentMenuHeader />
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,141 +0,0 @@
|
||||
@import "../Variables.scss";
|
||||
|
||||
.HeaderMobile {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding: 25px 16px;
|
||||
background: $color-black;
|
||||
|
||||
.topHeaderMobile {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
padding-bottom: 25px;
|
||||
|
||||
.ModalWrapper {
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: 0;
|
||||
|
||||
pointer-events: none;
|
||||
opacity: 0;
|
||||
transition: all 0.2s ease-in-out;
|
||||
|
||||
.ModalContent {
|
||||
z-index: 8;
|
||||
|
||||
.ContentHeader_wrapper {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
height: 585px;
|
||||
background: $color-white;
|
||||
padding: 31px 16px;
|
||||
gap: 12px;
|
||||
z-index: 8;
|
||||
|
||||
button {
|
||||
color: $color-gray;
|
||||
background: $color-white;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.Modaltop {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
padding: 31px 16px;
|
||||
background: $color-black;
|
||||
color: $color-white;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
z-index: 8;
|
||||
|
||||
.CloseButton {
|
||||
border: none;
|
||||
background: $color-black;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.ModalWrapper.opened {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
width: calc(100% - 36px);
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: 0;
|
||||
z-index: 8;
|
||||
|
||||
pointer-events: all;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.ModalOuverlay {
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: 1;
|
||||
|
||||
background-color: rgba(69, 69, 69, 0.7);
|
||||
}
|
||||
}
|
||||
|
||||
.MenuIcon {
|
||||
background: $color-black;
|
||||
border: none;
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
padding-left: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.Search_Header_wrapper {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
|
||||
@media (max-width: 374px) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.Search_Header {
|
||||
width: 96.372%;
|
||||
border: 2px solid $color-white-100;
|
||||
border-radius: 5px;
|
||||
padding: 10px 16px;
|
||||
color: $color-black;
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
height: 12px;
|
||||
width: calc(100% - 36px);
|
||||
}
|
||||
|
||||
@media (max-width: 375px) {
|
||||
width: 89.508%;
|
||||
height: 12px;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
}
|
||||
|
||||
&::placeholder {
|
||||
color: $color-gray;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.Search_Header_wrapper::after {
|
||||
position: absolute;
|
||||
content: "";
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
right: 16px;
|
||||
top: 10px;
|
||||
background-image: url("../assets/imgs/SVGs/search-icon-desktop.svg");
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
import { useState } from "react";
|
||||
import { NavLink } from "react-router-dom";
|
||||
|
||||
import LogoM3 from "../assets/imgs/SVGs/Logo-M3Academy_mobile.svg";
|
||||
import CartIcon from "../assets/imgs/SVGs/minicart_mobile.svg";
|
||||
import MenuHamburguer from "../assets/imgs/SVGs/MenuHamburguer.svg";
|
||||
import { MenuHeader } from "../MenuHeader";
|
||||
|
||||
import "./HeaderMobile.modules.scss";
|
||||
|
||||
export const HeaderMobile = () => {
|
||||
const [isOpened, setIsOpened] = useState(false);
|
||||
return (
|
||||
<>
|
||||
<section className="HeaderMobile">
|
||||
<div className="topHeaderMobile">
|
||||
<MenuHeader isOpened={isOpened} setIsOpened={setIsOpened} />
|
||||
<button className="MenuIcon" onClick={() => setIsOpened(true)}>
|
||||
<img src={MenuHamburguer} alt="" />
|
||||
</button>
|
||||
<div>
|
||||
<NavLink to={"/"}>
|
||||
<img src={LogoM3} alt="LogoM3" className="M3Logo" />
|
||||
</NavLink>
|
||||
</div>
|
||||
<div>
|
||||
<NavLink to={"/"}>
|
||||
<img src={CartIcon} alt="CartIcon" className="CartIcon" />
|
||||
</NavLink>
|
||||
</div>
|
||||
</div>
|
||||
<div className="Search_Header_wrapper">
|
||||
<input className="Search_Header" placeholder="Buscar..." />
|
||||
</div>
|
||||
</section>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,9 +0,0 @@
|
||||
export const phoneNumber =
|
||||
/^\(?[1-9]{2}\)? ?(?:[2-8]|9[1-9])[0-9]{3}\-?[0-9]{4}$/;
|
||||
|
||||
// export const cpfNumber = /\d{3}.\d{3}.\d{3}-\d{2}/;
|
||||
export const cpfNumber =
|
||||
/^([0-9]{3}\.?[0-9]{3}\.?[0-9]{3}\-?[0-9]{2}|[0-9]{2}\.?[0-9]{3}\.?[0-9]{3}\/?[0-9]{4}\-?[0-9]{2})$/;
|
||||
|
||||
export const insta =
|
||||
/(?:^|[^\w])(?:@)([\w-](?:(?:[\w-]|(?:\.(?!\.))){0,28}(?:[\w-]))?)/;
|
@ -1,20 +0,0 @@
|
||||
import * as Yup from "yup";
|
||||
|
||||
import { phoneNumber, cpfNumber, insta } from "./CustonValidationsRegex";
|
||||
|
||||
export default Yup.object().shape({
|
||||
name: Yup.string().required("*Campo Obrigatório"),
|
||||
email: Yup.string()
|
||||
.email()
|
||||
.required("*Campo Obrigatório")
|
||||
.email("E-mail inválido"),
|
||||
cpf: Yup.string()
|
||||
.matches(cpfNumber, "CPF inválido")
|
||||
.required("*Campo Obrigatório"),
|
||||
telefone: Yup.string()
|
||||
.matches(phoneNumber, "numero inválido")
|
||||
.required("*Campo Obrigatório"),
|
||||
instagram: Yup.string().matches(insta, "conta inválida"),
|
||||
data: Yup.date().required("*Campo Obrigatório"),
|
||||
checkbox: Yup.boolean().oneOf([true], "*"),
|
||||
});
|
@ -1,12 +0,0 @@
|
||||
import { MainText } from "../components/Container-menu/TextContainer";
|
||||
|
||||
export const About = () => {
|
||||
return (
|
||||
<>
|
||||
<div className="Main_textArea">
|
||||
<h2>Sobre</h2>
|
||||
<MainText />
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,162 +0,0 @@
|
||||
@import "../components/Variables.scss";
|
||||
|
||||
form {
|
||||
position: relative;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding: 16px;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
@media (min-width: 1025px) {
|
||||
width: 100%;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
.form-entryes {
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
position: relative;
|
||||
|
||||
label {
|
||||
color: $color-black-800;
|
||||
margin: 12px 0 12px 15px;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
font-weight: 400;
|
||||
font-size: 28px;
|
||||
line-height: 33px;
|
||||
}
|
||||
}
|
||||
|
||||
input {
|
||||
width: calc(100% - 42px);
|
||||
height: 14px;
|
||||
padding: 15px 20px;
|
||||
border: 1px solid $color-black-800;
|
||||
border-radius: 25px;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
color: $color-gray-300;
|
||||
margin: 0;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
height: 31px;
|
||||
font-weight: 400;
|
||||
font-size: 28px;
|
||||
line-height: 33px;
|
||||
}
|
||||
|
||||
&::placeholder {
|
||||
color: $color-gray-300;
|
||||
}
|
||||
}
|
||||
}
|
||||
.error {
|
||||
display: flex;
|
||||
justify-content: end;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 12px;
|
||||
line-height: 14px;
|
||||
color: $color-red;
|
||||
position: absolute;
|
||||
align-self: flex-end;
|
||||
top: 25px;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
font-weight: 400;
|
||||
font-size: 24px;
|
||||
line-height: 28px;
|
||||
}
|
||||
}
|
||||
|
||||
.checkbox_wrapper {
|
||||
margin: 12px 0;
|
||||
position: relative;
|
||||
span {
|
||||
display: flex;
|
||||
justify-content: flex-start !important;
|
||||
margin-left: 13px;
|
||||
margin-right: 2px;
|
||||
color: #ff0000;
|
||||
@media (min-width: 2500px) {
|
||||
font-size: 26px;
|
||||
}
|
||||
}
|
||||
label {
|
||||
margin-left: 0;
|
||||
text-decoration: underline;
|
||||
@media (min-width: 2500px) {
|
||||
font-weight: 400;
|
||||
font-size: 28px;
|
||||
line-height: 33px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
button {
|
||||
height: 52.44px;
|
||||
letter-spacing: 0.05em;
|
||||
font-family: $fontFamily;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 16px;
|
||||
line-height: 19px;
|
||||
padding: 17px;
|
||||
background: $color-black;
|
||||
border-radius: 25px;
|
||||
color: $color-white;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
height: 71px;
|
||||
font-weight: 400;
|
||||
font-size: 32px;
|
||||
line-height: 38px;
|
||||
padding: 16px 17px 17px 17px;
|
||||
}
|
||||
}
|
||||
div {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
label {
|
||||
order: 2;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
}
|
||||
|
||||
input {
|
||||
order: 3;
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
border: 1px solid $color-black;
|
||||
border-radius: 3px;
|
||||
margin: 0 4px 3px;
|
||||
|
||||
@media (min-width: 2500px) {
|
||||
width: 36.4px;
|
||||
height: 35.15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
h2 {
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
}
|
@ -1,13 +0,0 @@
|
||||
import { ContactForm } from "../components/ContactForm";
|
||||
import "./Contact.modules.scss";
|
||||
|
||||
export const Form = () => {
|
||||
return (
|
||||
<>
|
||||
<div className="Main_textArea">
|
||||
<h2>Preencha o formulário </h2>
|
||||
<ContactForm />
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,12 +0,0 @@
|
||||
import { MainText } from "../components/Container-menu/TextContainer";
|
||||
|
||||
export const Delivery = () => {
|
||||
return (
|
||||
<>
|
||||
<div className="Main_textArea">
|
||||
<h2>Entrega</h2>
|
||||
<MainText />
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,12 +0,0 @@
|
||||
import { MainText } from "../components/Container-menu/TextContainer";
|
||||
|
||||
export const Payments = () => {
|
||||
return (
|
||||
<>
|
||||
<div className="Main_textArea">
|
||||
<h2>Pagamentos</h2>
|
||||
<MainText />
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,12 +0,0 @@
|
||||
import { MainText } from "../components/Container-menu/TextContainer";
|
||||
|
||||
export const Privacy = () => {
|
||||
return (
|
||||
<>
|
||||
<div className="Main_textArea">
|
||||
<h2>Seguraça e Privacidade</h2>
|
||||
<MainText />
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
};
|
@ -1,12 +0,0 @@
|
||||
import { MainText } from "../components/Container-menu/TextContainer";
|
||||
|
||||
export const Refund = () => {
|
||||
return (
|
||||
<>
|
||||
<div className="Main_textArea">
|
||||
<h2>Troca ou Devolução</h2>
|
||||
<MainText />
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
};
|
Loading…
Reference in New Issue
Block a user