Merge pull request 'feat: adiciona header desktop e telas superiores' (#2) from feature/header into main

Reviewed-on: #2
This commit is contained in:
Thiago Bronisio Damascena 2022-12-30 18:32:46 +00:00
commit f9502ce567
17 changed files with 350 additions and 25 deletions

View File

@ -8,10 +8,12 @@
name="description"
content="Web site created using create-react-app"
/>
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Roboto&display=swap" rel="stylesheet">
<title>React App</title>
<title>M3 Academy</title>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>

12
src/assets/cart.svg Normal file
View File

@ -0,0 +1,12 @@
<svg width="55" height="55" viewBox="0 0 55 55" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_3754_1375)">
<path d="M54.3344 7.95273C54.0351 7.57862 53.5819 7.36086 53.1027 7.36086H11.1231L9.9492 2.27412C9.78398 1.55848 9.14672 1.05151 8.41228 1.05151H1.57728C0.706248 1.05151 0 1.75776 0 2.6289C0 3.50004 0.706248 4.20619 1.57728 4.20619H7.15753L15.1259 38.7358C15.291 39.4515 15.9283 39.9585 16.6628 39.9585H48.2656C49.1367 39.9585 49.8428 39.2522 49.8428 38.3812C49.8428 37.51 49.1366 36.8039 48.2656 36.8039H17.9176L16.7044 31.5462H48.3709C49.1086 31.5462 49.7478 31.0348 49.9097 30.3151L54.6416 9.28438C54.7467 8.81682 54.6338 8.32694 54.3344 7.95273Z" fill="white"/>
<path d="M23.1336 42.0615C19.9446 42.0615 17.3501 44.6559 17.3501 47.845C17.3501 51.0341 19.9445 53.6285 23.1336 53.6285C26.3225 53.6285 28.9171 51.0341 28.9171 47.845C28.9171 44.6559 26.3226 42.0615 23.1336 42.0615Z" fill="white"/>
<path d="M42.0613 42.0615C38.8724 42.0615 36.2778 44.6559 36.2778 47.845C36.2778 51.0341 38.8723 53.6285 42.0613 53.6285C45.2503 53.6285 47.8448 51.0341 47.8448 47.845C47.8448 44.6559 45.2504 42.0615 42.0613 42.0615Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_3754_1375">
<rect width="54.68" height="54.68" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
src/assets/logo-m3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

10
src/assets/search.svg Normal file
View File

@ -0,0 +1,10 @@
<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_3751_533)">
<path d="M25.7949 22.6886C27.5246 20.3265 28.5592 17.4252 28.5592 14.2799C28.5592 6.40637 22.1531 0.000244141 14.2796 0.000244141C6.40606 0.000244141 0 6.40637 0 14.2799C0 22.1534 6.40613 28.5596 14.2797 28.5596C17.4249 28.5596 20.3266 27.5248 22.6886 25.7951L32.0435 35.15L35.15 32.0436C35.15 32.0435 25.7949 22.6886 25.7949 22.6886V22.6886ZM14.2797 24.1658C8.82824 24.1658 4.39377 19.7313 4.39377 14.2799C4.39377 8.82848 8.82824 4.39401 14.2797 4.39401C19.7311 4.39401 24.1655 8.82848 24.1655 14.2799C24.1655 19.7313 19.731 24.1658 14.2797 24.1658Z" fill="#292929"/>
</g>
<defs>
<clipPath id="clip0_3751_533">
<rect width="35.15" height="35.15" rx="5" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 829 B

View File

@ -1,9 +0,0 @@
import React from "react"
export function Footer() {
return (
<>
<h1>Footer</h1>
</>
)
}

View File

@ -0,0 +1,13 @@
.container-footer {
position: relative;
min-height: 100vh;
.footer-wrapper {
position: absolute;
bottom: 0;
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
}
}

View File

@ -0,0 +1,80 @@
import React from "react"
import styleFooter from "./Footer.module.scss"
export function Footer() {
return (
<footer className={styleFooter["container-footer"]}>
<div className={styleFooter["footer-wrapper"]}>
<div>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor</p>
</div>
<div>
<ul>
<li>
<figure>
<img src="#" alt="#" />
</figure>
</li>
<li>
<figure>
<img src="#" alt="#" />
</figure>
</li>
<li>
<figure>
<img src="#" alt="#" />
</figure>
</li>
<li>
<figure>
<img src="#" alt="#" />
</figure>
</li>
<li>
<figure>
<img src="#" alt="#" />
</figure>
</li>
<li>
<figure>
<img src="#" alt="#" />
</figure>
</li>
<li>
<figure>
<img src="#" alt="#" />
</figure>
</li>
<li>
<figure>
<img src="#" alt="#" />
</figure>
</li>
</ul>
</div>
<div>
<div>
<p></p>
<img src="#" alt="#" />
</div>
<div>
<p></p>
<img src="#" alt="#" />
</div>
</div>
</div>
</footer>
)
}

View File

@ -1,9 +0,0 @@
import React from "react";
export function Header() {
return (
<>
<h1>Header</h1>
</>
)
}

View File

@ -0,0 +1,168 @@
.container-header {
.header-wrapper {
display: flex;
align-items: center;
justify-content: space-between;
padding: 22px 100.32px 22px 100px;
background-color: var(--black);
border-bottom: 1px solid var(--gray-100);
&__container-logo {
width: 12.597%;
height: 25.86px;
@media screen and (min-width: 2500px) {
width: 11.55%;
height: 50.5px;
}
a {
display: flex;
align-items: center;
.logo-m3 {
width: 100%;
@media screen and (min-width: 2500px) {
height: 50.5px;
}
}
}
}
&__container-input-busca {
position: relative;
width: 24.452%;
@media screen and (min-width: 2500px) {
width: 22.421%;
}
.input-busca {
width: 100%;
height: 32px;
padding: 8px 44px 8px 16px;
background: var(--white);
border: 2px solid var(--white-100);
border-radius: 5px;
font-style: normal;
font-weight: 400;
font-size: 14px;
line-height: 16.41px;
font-family: var(--font-roboto);
//font-family: roboto;
@media screen and (min-width: 2500px) {
height: 57px;
font-style: normal;
font-weight: 400;
font-size: 28px;
line-height: 33px;
}
&::placeholder {
color: var(--gray-100);
}
}
.button-search {
position: absolute;
z-index: 10;
border: none;
background: transparent;
outline: none;
top: 7px;
right: 17px;
cursor: pointer;
@media screen and (min-width: 2500px) {
width: 35.15px;
height: 35.15px;
top: 10px;
right: 17px;
}
img {
height: 18px;
width: 18px;
@media screen and (min-width: 2500px) {
width: 35.15px;
height: 35.15px;
}
}
}
}
&__container-login-cart {
display: flex;
p {
display: flex;
margin-right: 55px;
font-style: normal;
font-weight: 400;
font-size: 14px;
line-height: 16px;
align-items: center;
color: var(--white);
font-family: var(--font-roboto);
cursor: pointer;
@media screen and (min-width: 2500px) {
font-weight: 400;
font-size: 28px;
line-height: 33px;
}
}
img {
width: 28px;
height: 28px;
@media screen and (min-width: 2500px) {
width: 54.68px;
height: 54.68px;
}
}
}
}
.container-nav {
background-color: var(--black);
padding: 14px 100.32px 14px 100px;
ul {
display: flex;
list-style: none;
li {
font-style: normal;
font-weight: 400;
font-size: 14px;
line-height: 16px;
color: var(--white);
font-family: var(--font-roboto);
@media screen and (min-width: 2500px) {
font-weight: 500;
font-size: 28px;
line-height: 33px;
}
a {
text-decoration: none;
color: var(--white);
}
}
li:nth-child(2) {
margin: 0 55px;
@media screen and (min-width: 2500px) {
margin: 0 55.92px 0 55.71px;
}
}
}
}
}

View File

@ -0,0 +1,47 @@
import React from "react";
import styleHeader from "./Header.module.scss"
import logo from "../assets/logo-m3.png"
import cart from "../assets/cart.svg"
import search from "../assets/search.svg"
export function Header() {
return (
<header className={styleHeader["container-header"]}>
<div className={styleHeader["header-wrapper"]}>
<div className={styleHeader["header-wrapper__container-logo"]}>
<a href="teste">
<img className={styleHeader["logo-m3"]} src={logo} alt="Logo M3 Academy" />
</a>
</div>
<div className={styleHeader["header-wrapper__container-input-busca"]}>
<input
className={styleHeader["input-busca"]}
placeholder="Buscar...">
</input>
<button className={styleHeader["button-search"]}>
<img src={search} alt="Lupa de pesquisa" />
</button>
</div>
<div className={styleHeader["header-wrapper__container-login-cart"]}>
<p>ENTRAR</p>
<img src={cart} alt="Carrinho" />
</div>
</div>
<nav className={styleHeader["container-nav"]}>
<ul>
<li><a href="teste">CURSOS</a></li>
<li><a href="teste">SAIBA MAIS</a></li>
<li><a href="teste">INSTITUCIONAIS</a></li>
</ul>
</nav>
</header>
)
}

View File

@ -0,0 +1 @@
import react from "react"

View File

@ -0,0 +1 @@
import react from "react"

View File

@ -1,5 +1,13 @@
//VARIABLES
:root {
--font-roboto: "Roboto", sans-serif;
--black: #000000;
--white: #ffffff;
--white-100: #f0f0f0;
--gray-100: #c4c4c4;
}
* {

3
src/index.d.ts vendored Normal file
View File

@ -0,0 +1,3 @@
declare module '*.png'
declare module '*.jpg'
declare module '*.svg'

View File

@ -1,8 +1,6 @@
import React from "react";
import { Footer } from "../components/Footer";
import { Header } from "../components/Header"
import { Footer } from "../components/Footer/Footer";
import { Header } from "../components/Header/Header"
const Home = () => {
return (