├── .gitignore
├── .gitpod.yml
├── README.md
├── package-lock.json
├── package.json
├── public
├── favicon.ico
├── index.html
├── manifest.json
└── robots.txt
└── src
├── App.jsx
├── Pages
├── Cadastro
│ ├── index.jsx
│ └── style.css
├── Categorias
│ ├── Bones
│ │ ├── bones.js
│ │ └── index.js
│ ├── Calca
│ │ └── index.js
│ ├── Calcas
│ │ └── calca.js
│ ├── Camisetas
│ │ ├── camisetas.js
│ │ └── index.js
│ ├── Headphones
│ │ ├── head.js
│ │ └── index.js
│ ├── Tenis
│ │ └── index.js
│ └── Trabalhe
│ │ └── index.js
├── Criar
│ └── index.js
├── DetalhesProduto
│ └── index.js
├── Home
│ └── index.js
├── Informacao
│ ├── Blog
│ │ └── index.js
│ ├── MeusPedidos
│ │ └── index.js
│ ├── Seguranca
│ │ └── index.js
│ ├── SobreDripStore
│ │ └── index.js
│ ├── TrabalheConosco
│ │ └── index.js
│ └── Wishlist
│ │ └── index.js
├── Login
│ └── index.js
├── MeusPedidos
│ └── index.js
├── NotFound
│ ├── imagem.svg
│ └── index.jsx
├── PaginaConstrucao
│ ├── imagem.svg
│ └── index.jsx
└── TodosProdutos
│ ├── index.jsx
│ └── styles.css
├── components
├── BannerFooter
│ ├── circulo.png
│ ├── index.js
│ ├── styles.css
│ └── tenis.png
├── CarrocaDetalhesProduto
│ ├── Carroca.css
│ ├── Carroca.js
│ ├── TenisBranco.png
│ └── TenisBrancoMaior.png
├── DetalhesProduto
│ ├── DetalhesProduto.css
│ ├── DetalhesProduto.js
│ └── TenisBranco.png
├── Footer
│ ├── index.js
│ └── logo.svg
├── Header
│ ├── Buscar
│ │ ├── index.css
│ │ └── index.js
│ ├── Carrinho
│ │ └── index.js
│ ├── Nav
│ │ ├── index.css
│ │ └── index.js
│ ├── index.js
│ └── style.css
├── Login
│ ├── Criar
│ │ └── index.js
│ ├── img
│ │ ├── LogoDigital.png
│ │ ├── Original.png
│ │ ├── gmail.png
│ │ ├── photothumb.db
│ │ ├── tenis1.png
│ │ └── tenis2.png
│ ├── index.css
│ └── index.js
├── Produto
│ ├── Collection
│ │ ├── Linkicons
│ │ │ ├── Linkicons.js
│ │ │ └── index.css
│ │ ├── img
│ │ │ ├── Desconto.png
│ │ │ ├── FrameC.png
│ │ │ ├── FrameCa.png
│ │ │ ├── FrameH.png
│ │ │ ├── FrameS.png
│ │ │ ├── Headset.png
│ │ │ ├── Supreme.png
│ │ │ └── Tenis.png
│ │ ├── index.css
│ │ └── index.js
│ ├── Comprar
│ │ └── index.js
│ ├── index.js
│ ├── skeakers.png
│ └── styles.css
├── Produtos
│ ├── Bones
│ │ └── index.js
│ ├── Calcas
│ │ └── index.js
│ ├── Camisetas
│ │ └── index.js
│ ├── Headphones
│ │ └── index.js
│ ├── Tenis
│ │ └── index.js
│ └── index.js
├── ProdutosAlta
│ ├── produtosAlta.css
│ ├── produtosAlta.js
│ └── skeakers.png
└── carrossel
│ ├── img
│ ├── bola.png
│ └── tenis.png
│ ├── index.js
│ └── style.css
├── css
└── app.css
├── img
├── Digital.png
├── LogoDigital.png
├── Stroke 5.png
├── White-Sneakers-PNG-Clipart 1.png
├── logo.png
└── photothumb.db
└── index.js
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # production
12 | /build
13 |
14 | # misc
15 | .DS_Store
16 | .env.local
17 | .env.development.local
18 | .env.test.local
19 | .env.production.local
20 |
21 | npm-debug.log*
22 | yarn-debug.log*
23 | yarn-error.log*
24 |
--------------------------------------------------------------------------------
/.gitpod.yml:
--------------------------------------------------------------------------------
1 | # This configuration file was automatically generated by Gitpod.
2 | # Please adjust to your needs (see https://www.gitpod.io/docs/config-gitpod-file)
3 | # and commit this file to your remote git repository to share the goodness with others.
4 |
5 | tasks:
6 | - init: npm install && npm run build
7 | command: npm run start
8 |
9 |
10 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ## e-commerce
2 |
3 | # Para poder executar o projeto
4 |
5 | acesse `https://nodejs.org/`, baixe e instale no seu computador.
6 |
7 | ### Para executar o projeto
8 |
9 | No terminal, dentro da pasta da aplicação execute: `npm install`.
10 | E depois execute: `npm start`.
11 |
12 | O projeto sera executado em: `http://localhost:3000/`.
13 | Caso a mesma esteja livre.
14 |
15 | ## Link para o figma do projeto
16 | https://www.figma.com/file/cfb4F7ZXMFQmvmTn3PKI4z/DRIP-STORE---DIGITAL-COLLEGE?node-id=309%3A738
17 |
18 | ## Participantes e responsabilidades
19 |
20 | Adrielly: responsavel pelo Banner do rodapé e pela documentação;
21 |
22 | Elias: responsavel pela pagina detalhes do produto e componente produtos em alta;
23 |
24 | Elvis: responsavel pela Navbar da Home, pagina Todos Produtos, arrumar problemas na home e aprovou os pull request;
25 |
26 | Guilherme: responsavel pelo rodapé e paginas placeholder;
27 |
28 | Mario: responsavel pelo componente LinkIcons, os conteudos dentro da pasta produto e o links de retorno pra home page;
29 |
30 | Carlos: responsavel pelo componente Collections e pelas paginas de login;
31 |
32 | Natan: responsavel pelo carrossel da home page;
33 |
34 | Saor: responsavel pela pagina de cadastro, fazer as rotas em app.js, linkar as paginas na main e resolver os problemas depois dos pulls requests.
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "digital-store",
3 | "version": "0.1.0",
4 | "private": true,
5 | "dependencies": {
6 | "@emotion/react": "^11.10.4",
7 | "@emotion/styled": "^11.10.4",
8 | "@mui/icons-material": "^5.10.9",
9 | "@mui/material": "^5.10.9",
10 | "@testing-library/jest-dom": "^5.16.5",
11 | "@testing-library/react": "^13.4.0",
12 | "@testing-library/user-event": "^13.5.0",
13 | "axios": "^1.1.2",
14 | "bootstrap": "^5.2.2",
15 | "bootstrap-icons": "^1.9.1",
16 | "react": "^18.2.0",
17 | "react-bootstrap": "^2.5.0",
18 | "react-dom": "^18.2.0",
19 | "react-icons": "^4.4.0",
20 | "react-router-dom": "^6.4.2",
21 | "react-scripts": "5.0.1",
22 | "web-vitals": "^2.1.4"
23 | },
24 | "scripts": {
25 | "start": "react-scripts start",
26 | "build": "react-scripts build",
27 | "test": "react-scripts test",
28 | "eject": "react-scripts eject"
29 | },
30 | "eslintConfig": {
31 | "extends": [
32 | "react-app",
33 | "react-app/jest"
34 | ]
35 | },
36 | "browserslist": {
37 | "production": [
38 | ">0.2%",
39 | "not dead",
40 | "not op_mini all"
41 | ],
42 | "development": [
43 | "last 1 chrome version",
44 | "last 1 firefox version",
45 | "last 1 safari version"
46 | ]
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/public/favicon.ico
--------------------------------------------------------------------------------
/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
11 |
12 |
13 | Digital Store
14 |
15 |
16 | You need to enable JavaScript to run this app.
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "React App",
3 | "name": "Create React App Sample",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | },
10 | {
11 | "src": "logo192.png",
12 | "type": "image/png",
13 | "sizes": "192x192"
14 | },
15 | {
16 | "src": "logo512.png",
17 | "type": "image/png",
18 | "sizes": "512x512"
19 | }
20 | ],
21 | "start_url": ".",
22 | "display": "standalone",
23 | "theme_color": "#000000",
24 | "background_color": "#ffffff"
25 | }
26 |
--------------------------------------------------------------------------------
/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/src/App.jsx:
--------------------------------------------------------------------------------
1 | // import Produtos from "./components/Produtos/index.js";
2 | import React, { useState } from "react";
3 | import {Routes, Route} from 'react-router-dom';
4 |
5 | //import Trabalhe from "./Pages/Categorias/Tenis/tenis.js";
6 | import Home from "./Pages/Home/index.js";
7 | import Bones from "./components/Produtos/Bones/";
8 | import Calcas from "./components/Produtos/Calcas";
9 | import Camisetas from "./components/Produtos/Camisetas";
10 | import Headphones from "./components/Produtos/Headphones";
11 | import Tenis from "./components/Produtos/Tenis/";
12 | import Login from "./Pages/Login/index.js";
13 | import Criar from "./Pages/Criar/index.js";
14 | import Cadastro from "./Pages/Cadastro/index.jsx";
15 | import TodosProdutos from "./Pages/TodosProdutos/index.jsx";
16 | import DetalhesProduto from "./components/DetalhesProduto/DetalhesProduto.js";
17 | import Blog from "./Pages/Informacao/Blog/index.js";
18 | import MeusPedidos from "./Pages/Informacao/MeusPedidos/index.js";
19 | import Seguranca from "./Pages/Informacao/Seguranca/index.js";
20 | import SobreDripStore from "./Pages/Informacao/SobreDripStore/index.js";
21 | import TrabalheConosco from "./Pages/Informacao/TrabalheConosco/index.js";
22 | import Wishlist from "./Pages/Informacao/Wishlist/index.js";
23 | import PaginaConstrucao from "./Pages/PaginaConstrucao/index.jsx";
24 | import NotFound from "./Pages/NotFound/index.jsx";
25 |
26 |
27 | export const AppContext = React.createContext();
28 |
29 | export default function App() {
30 | const [carrinho, setCarrinho] = useState([]);
31 |
32 | return (
33 |
34 |
35 |
36 | }/>
37 | }/>
38 | }/>
39 | }/>
40 | }/>
41 | }/>
42 | }/>
43 | }/>
44 | }/>
45 | }/>
46 | }/>
47 | }/>
48 | }/>
49 | }/>
50 | }/>
51 | }/>
52 | }/>
53 | }/>
54 | }/>
55 |
56 | }/>
57 |
58 |
59 |
60 | )
61 | }
62 |
--------------------------------------------------------------------------------
/src/Pages/Cadastro/index.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import Footer from "../../components/Footer";
3 | import Logo from '../../img/LogoDigital.png';
4 | import './style.css';
5 | import { Checkbox } from "@mui/material";
6 | import { pink } from '@mui/material/colors';
7 | import { Link } from "react-router-dom";
8 |
9 | export default function Cadastro() {
10 |
11 | return (
12 |
13 |
14 |
15 |
16 |
17 |
18 | Criar Conta
19 |
20 |
77 |
78 |
79 |
80 | )
81 | }
--------------------------------------------------------------------------------
/src/Pages/Cadastro/style.css:
--------------------------------------------------------------------------------
1 | .logo{
2 | width: 1440px;
3 | height: 80px;
4 | height: 80px;
5 | border-radius: 0px;
6 | padding: 25px 100px 25px 100px;
7 |
8 | }
9 | .criar{
10 | height: 36px;
11 | width: 440px;
12 | margin-left: 344px;
13 | margin-top: 70px;
14 |
15 | }
16 | span.conta{
17 | font-weight: 700;
18 | font-size: 32px;
19 | line-height: 36px;
20 | letter-spacing: 1px;
21 | }
22 | .cad{
23 | background-color: white;
24 | width: 750px;
25 | }
26 | .formu1{
27 | display: flex;
28 | flex-direction: column;
29 | align-items: flex-start;
30 | padding: 30px;
31 | width: 750px;
32 | height: 538px;
33 | background: white;
34 | border-radius: 4px;
35 | margin-top: 22px;
36 | margin-left: 345px;
37 | gap: 20px;
38 | }
39 | .info{
40 | width: 165px;
41 | height: 22px;
42 | font-weight: 700;
43 | font-size: 14px;
44 | letter-spacing: 0.75px;
45 | text-align: center;
46 | color: #474747;
47 | }
48 | .quebra{
49 | width: 690px;
50 | }
51 | .labelNome{
52 | width: 427.53px;
53 | height: 24px;
54 | font-weight: 700;
55 | font-size: 12px;
56 | line-height: 24px;
57 | color: #474747;
58 | }
59 | .inputNome{
60 | border: none;
61 | width: 522.24px;
62 | height: 28px;
63 | color: #666666;
64 | font-weight: 400;
65 | font-size: 16px;
66 | line-height: 28px;
67 | margin-top: 21px;
68 | }
69 | .labelCpf{
70 | width: 427.53px;
71 | height: 24px;
72 | font-weight: 700;
73 | font-size: 12px;
74 | line-height: 24px;
75 | color: #474747;
76 | margin-top: 20px;
77 | }
78 | .inputCpf{
79 | border: none;
80 | width: 522.24px;
81 | height: 28px;
82 | color: #666666;
83 | font-weight: 400;
84 | font-size: 16px;
85 | line-height: 28px;
86 | margin-top: 21px;
87 | }
88 | .labelEmail{
89 | width: 427.53px;
90 | height: 24px;
91 | font-weight: 700;
92 | font-size: 12px;
93 | line-height: 24px;
94 | color: #474747;
95 | margin-top: 20px;
96 | }
97 | .inputEmail{
98 | border: none;
99 | width: 522.24px;
100 | height: 28px;
101 | color: #666666;
102 | font-weight: 400;
103 | font-size: 16px;
104 | line-height: 28px;
105 | margin-top: 21px;
106 | }
107 | .labelCelular{
108 | width: 427.53px;
109 | height: 24px;
110 | font-weight: 700;
111 | font-size: 12px;
112 | line-height: 24px;
113 | color: #474747;
114 | margin-top: 20px;
115 | }
116 | .inputCelular{
117 | border: none;
118 | width: 522.24px;
119 | height: 28px;
120 | color: #666666;
121 | font-weight: 400;
122 | font-size: 16px;
123 | line-height: 28px;
124 | margin-top: 21px;
125 | }
126 | .formu2{
127 | width: 750px;
128 | height: 647px;
129 | display: flex;
130 | flex-direction: column;
131 | align-items: flex-start;
132 | padding: 30px;
133 | gap: 20px;
134 | margin-top: 10px;
135 | margin-left: 345px;
136 | background: white;
137 | border-radius: 4px;
138 | }
139 | .infoE{
140 | width: 179px;
141 | height: 22px;
142 | font-weight: 700;
143 | font-size: 14px;
144 | letter-spacing: 0.75px;
145 | text-align: center;
146 | color: #474747;
147 | }
148 | .labelEndereco{
149 | width: 427.53px;
150 | height: 24px;
151 | font-weight: 700;
152 | font-size: 12px;
153 | line-height: 24px;
154 | color: #474747;
155 | }
156 | .inputEndereco{
157 | border: none;
158 | width: 522.24px;
159 | height: 28px;
160 | color: #666666;
161 | font-weight: 400;
162 | font-size: 16px;
163 | line-height: 28px;
164 | margin-top: 21px;
165 | }
166 | .labelBairro{
167 | width: 427.53px;
168 | height: 24px;
169 | font-weight: 700;
170 | font-size: 12px;
171 | line-height: 24px;
172 | color: #474747;
173 | margin-top: 20px;
174 | }
175 | .inputBairro{
176 | border: none;
177 | width: 522.24px;
178 | height: 28px;
179 | color: #666666;
180 | font-weight: 400;
181 | font-size: 16px;
182 | line-height: 28px;
183 | margin-top: 21px;
184 | }
185 | .labelCidade{
186 | width: 427.53px;
187 | height: 24px;
188 | font-weight: 700;
189 | font-size: 12px;
190 | line-height: 24px;
191 | color: #474747;
192 | margin-top: 20px;
193 | }
194 | .inputCidade{
195 | border: none;
196 | width: 522.24px;
197 | height: 28px;
198 | color: #666666;
199 | font-weight: 400;
200 | font-size: 16px;
201 | line-height: 28px;
202 | margin-top: 21px;
203 | }
204 | .labelCep{
205 | width: 427.53px;
206 | height: 24px;
207 | font-weight: 700;
208 | font-size: 12px;
209 | line-height: 24px;
210 | color: #474747;
211 | margin-top: 20px;
212 | }
213 | .inputCep{
214 | border: none;
215 | width: 522.24px;
216 | height: 28px;
217 | color: #666666;
218 | font-weight: 400;
219 | font-size: 16px;
220 | line-height: 28px;
221 | margin-top: 21px;
222 | }
223 | .labelComp{
224 | width: 427.53px;
225 | height: 24px;
226 | font-weight: 700;
227 | font-size: 12px;
228 | line-height: 24px;
229 | color: #474747;
230 | margin-top: 20px;
231 | }
232 | .inputComp{
233 | border: none;
234 | width: 522.24px;
235 | height: 28px;
236 | color: #666666;
237 | font-weight: 400;
238 | font-size: 16px;
239 | line-height: 28px;
240 | margin-top: 21px;
241 | }
242 | .check{
243 | width: 754px;
244 | margin-left: 344px;
245 | margin-top: 30px;
246 | display: flex;
247 | flex-direction: row;
248 | }
249 | .cBox{
250 | border: 1px solid #C92071;
251 | width: 22px;
252 | height: 22px;
253 | border-radius: 2px;
254 | accent-color: #C92071;
255 | }
256 | .cBoxLabel{
257 | width: 718px;
258 | height: 44px;
259 | margin-left: 10px;
260 | font-weight: 500;
261 | font-size: 14px;
262 | line-height: 22px;
263 | color: #474747;
264 | letter-spacing: 0.25px
265 | }
266 | .btnCad{
267 | display: flex;
268 | align-items: center;
269 | text-align: center;
270 | margin-top: 40px;
271 | margin-left: 344px;
272 | margin-bottom: 153px;
273 |
274 | }
275 | .btnConf{
276 | align-items: center;
277 | text-align: center;
278 | letter-spacing: 0.75px;
279 | color: #F5F5F5;
280 | border: none;
281 | font-weight: 700;
282 | font-size: 16px;
283 | line-height: 24px;
284 | width: 750px;
285 | height: 48px;
286 | background-color: #C92071;
287 | }
--------------------------------------------------------------------------------
/src/Pages/Categorias/Bones/bones.js:
--------------------------------------------------------------------------------
1 | export default function Bones(){
2 | return(
3 |
4 |
5 | BONÉS
6 |
7 |
8 | )
9 | }
--------------------------------------------------------------------------------
/src/Pages/Categorias/Bones/index.js:
--------------------------------------------------------------------------------
1 | export default function Bones(){
2 | return(
3 |
4 |
5 | BONÉS
6 |
7 |
8 | )
9 | }
--------------------------------------------------------------------------------
/src/Pages/Categorias/Calca/index.js:
--------------------------------------------------------------------------------
1 | export default function Calcas(){
2 | return(
3 |
4 |
5 | CALCAS
6 |
7 |
8 | )
9 | }
--------------------------------------------------------------------------------
/src/Pages/Categorias/Calcas/calca.js:
--------------------------------------------------------------------------------
1 | export default function Calcas(){
2 | return(
3 |
4 |
5 | CALÇAS
6 |
7 |
8 | )
9 | }
--------------------------------------------------------------------------------
/src/Pages/Categorias/Camisetas/camisetas.js:
--------------------------------------------------------------------------------
1 | export default function Camisetas(){
2 | return(
3 |
4 |
5 | Camisetas
6 |
7 |
8 | )
9 | }
--------------------------------------------------------------------------------
/src/Pages/Categorias/Camisetas/index.js:
--------------------------------------------------------------------------------
1 | export default function Camisetas(){
2 | return(
3 |
4 |
5 | CAMISETAS
6 |
7 |
8 | )
9 | }
--------------------------------------------------------------------------------
/src/Pages/Categorias/Headphones/head.js:
--------------------------------------------------------------------------------
1 | export default function Headphones(){
2 | return(
3 |
4 |
5 | Headphones
6 |
7 |
8 | )
9 | }
--------------------------------------------------------------------------------
/src/Pages/Categorias/Headphones/index.js:
--------------------------------------------------------------------------------
1 | export default function Headphones(){
2 | return(
3 |
4 |
5 | HEADPHONES
6 |
7 |
8 | )
9 | }
--------------------------------------------------------------------------------
/src/Pages/Categorias/Tenis/index.js:
--------------------------------------------------------------------------------
1 | export default function Tenis(){
2 | return(
3 |
4 |
5 | TÊNIS
6 |
7 |
8 | )
9 | }
--------------------------------------------------------------------------------
/src/Pages/Categorias/Trabalhe/index.js:
--------------------------------------------------------------------------------
1 | export default function Trabalhe(){
2 | return(
3 |
4 |
5 | TÊNIS
6 |
7 |
8 | )
9 | }
--------------------------------------------------------------------------------
/src/Pages/Criar/index.js:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import Footer from "../../components/Footer";
3 | import Criar from "../../components/Login/Criar";
4 |
5 | export default function CriarConta() {
6 | return(
7 |
8 |
9 |
10 |
11 | )
12 | }
--------------------------------------------------------------------------------
/src/Pages/DetalhesProduto/index.js:
--------------------------------------------------------------------------------
1 | import Header from "../../components/Header";
2 | import Footer from "../../components/Footer";
3 | import Carroca from "../../components/CarrocaDetalhesProduto/Carroca";
4 |
5 |
6 | export default function DetalhesProduto() {
7 | return(
8 | <>
9 |
10 |
11 |
12 | >
13 | )
14 | }
--------------------------------------------------------------------------------
/src/Pages/Home/index.js:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import Header from "../../components/Header";
3 | import Footer from "../../components/Footer";
4 | import Collection from "../../components/Produto/Collection"
5 | import Linkicons from "../../components/Produto/Collection/Linkicons/Linkicons.js";
6 | import ProdutosAlta from "../../components/ProdutosAlta/produtosAlta";
7 | import Carrossel from "../../components/carrossel"
8 | import BannerFooter from "../../components/BannerFooter";
9 | let Home = () => {
10 | return(
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | );
21 | }
22 | export default Home;
--------------------------------------------------------------------------------
/src/Pages/Informacao/Blog/index.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom";
2 |
3 | export default function Blog(){
4 | return(
5 |
6 |
7 | BLOG
8 |
9 | Voltar
10 |
11 | )
12 | }
--------------------------------------------------------------------------------
/src/Pages/Informacao/MeusPedidos/index.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom";
2 |
3 | export default function MeusPedidos(){
4 | return(
5 |
6 |
7 | MEUS PEDIDOS
8 |
9 | Voltar
10 |
11 | )
12 | }
--------------------------------------------------------------------------------
/src/Pages/Informacao/Seguranca/index.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom";
2 |
3 | export default function Seguranca(){
4 | return(
5 |
6 |
7 | SEGURANÇA
8 |
9 | Voltar
10 |
11 | )
12 | }
--------------------------------------------------------------------------------
/src/Pages/Informacao/SobreDripStore/index.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom";
2 |
3 | export default function SobreDripStore(){
4 | return(
5 |
6 |
7 | SOBRE DRIP STORE
8 |
9 | Voltar
10 |
11 | )
12 | }
--------------------------------------------------------------------------------
/src/Pages/Informacao/TrabalheConosco/index.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom";
2 |
3 | export default function TrabalheConosco(){
4 | return(
5 |
6 |
7 | TRABALHE CONOSCO
8 |
9 | Voltar
10 |
11 | )
12 | }
--------------------------------------------------------------------------------
/src/Pages/Informacao/Wishlist/index.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom";
2 |
3 | export default function Wishlist(){
4 | return(
5 |
6 |
7 | WISHLIST
8 |
9 | Voltar
10 |
11 | )
12 | }
--------------------------------------------------------------------------------
/src/Pages/Login/index.js:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import Log from "../../components/Login";
3 | import Footer from "../../components/Footer";
4 |
5 | export default function Login() {
6 | return(
7 |
8 |
9 |
10 |
11 | )
12 | }
--------------------------------------------------------------------------------
/src/Pages/MeusPedidos/index.js:
--------------------------------------------------------------------------------
1 | import "bootstrap/dist/css/bootstrap.css"
--------------------------------------------------------------------------------
/src/Pages/NotFound/imagem.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/Pages/NotFound/index.jsx:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom";
2 | import foto from './imagem.svg'
3 |
4 | export default function NotFound(){
5 | return(
6 |
7 |
8 |
Página Não Existe
9 |
10 |
Voltar pro inicio
11 |
12 |
13 | )
14 | }
--------------------------------------------------------------------------------
/src/Pages/PaginaConstrucao/imagem.svg:
--------------------------------------------------------------------------------
1 | under construction
--------------------------------------------------------------------------------
/src/Pages/PaginaConstrucao/index.jsx:
--------------------------------------------------------------------------------
1 | import { React } from "react";
2 | import { Link } from "react-router-dom";
3 | import foto from './imagem.svg'
4 |
5 | export default function PaginaConstrucao(){
6 | return(
7 |
8 |
9 |
Página em Construção
10 |
11 |
Voltar pro inicio
12 |
13 |
14 | )
15 | }
--------------------------------------------------------------------------------
/src/Pages/TodosProdutos/index.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import { Checkbox } from "@mui/material";
3 | import { pink } from '@mui/material/colors';
4 | import Radio from '@mui/material/Radio';
5 | import RadioGroup from '@mui/material/RadioGroup';
6 | import FormControlLabel from '@mui/material/FormControlLabel';
7 | import Autocomplete from '@mui/material/Autocomplete';
8 | import TextField from '@mui/material/TextField';
9 |
10 | import Footer from "../../components/Footer";
11 | import Header from "../../components/Header";
12 | import Produto from "../../components/Produto";
13 | import './styles.css';
14 |
15 | const filtrar = [
16 | { label: 'Mais Relevante' },
17 | { label: 'Maior Valor' },
18 | { label: 'Menor Valor' },
19 | { label: 'Mais Vendidos' },];
20 |
21 | export default function TodosProdutos() {
22 | return (
23 |
24 |
25 |
26 |
27 |
28 | Resultado para "Tênis" - 389 Resultados
29 |
30 |
39 |
40 |
41 |
42 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 | )
165 | }
--------------------------------------------------------------------------------
/src/Pages/TodosProdutos/styles.css:
--------------------------------------------------------------------------------
1 | * {
2 | margin: 0px;
3 | padding: 0px;
4 | box-sizing: border-box;
5 | }
6 |
7 | .body {
8 | display: flex;
9 | flex-direction: column;
10 | align-items: center;
11 | background: #F9F8FE;
12 | width: 100%;
13 | height: 2630px;
14 | }
15 | .div1 {
16 | display: flex;
17 | justify-content: space-between;
18 | align-items: center;
19 | padding: 0 100px;
20 | width: 100%;
21 | height: 100px;
22 | }
23 | .div2 {
24 | display: flex;
25 | padding: 0 100px;
26 | width: 100%;
27 | height: 2100px;
28 |
29 | }
30 | .divConteudo {
31 | display: flex;
32 | flex-flow: wrap row;
33 | justify-content: space-between;
34 | align-content: flex-start;
35 | }
36 | .formTodosProdutos {
37 | display: flex;
38 | flex-direction: column;
39 | padding-left: 30px;
40 | padding-right: 30px;
41 | margin-right: 20px;
42 | width: 308px;
43 | height: 720px;
44 | background: #FFFFFF;
45 | border-radius: 4px;
46 | }
47 |
48 | .customCheck {
49 | padding: 10px;
50 | width: 2.5rem;
51 | height: 28px;
52 | }
53 | .custonStrong {
54 | margin-top: 1rem;
55 | margin-bottom: 0.7rem;
56 | }
57 | .custonStrongFiltrar {
58 | margin-top: 2rem;
59 | margin-bottom: 0.7rem;
60 | }
61 | .customRadio {
62 | padding-left: 0px;
63 | width: 20px;
64 | height: 28px;
65 | }
--------------------------------------------------------------------------------
/src/components/BannerFooter/circulo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/BannerFooter/circulo.png
--------------------------------------------------------------------------------
/src/components/BannerFooter/index.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import './styles.css';
3 | import circulo from '../../components/BannerFooter/circulo.png';
4 | import tenis from '../../components/BannerFooter/tenis.png';
5 | import { Link } from 'react-router-dom';
6 |
7 | export default function BannerFooter() {
8 | return (
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | Oferta especial
22 |
23 |
24 | Air Jordan edição de colecionador
25 |
26 |
27 |
Lorem ipsum dolo sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation laboris nisi ut aliquip
28 |
29 |
30 | Ver Oferta
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 | )
39 | }
--------------------------------------------------------------------------------
/src/components/BannerFooter/styles.css:
--------------------------------------------------------------------------------
1 | *{
2 | margin: 0;
3 | padding: 0;
4 | box-sizing: border-box;
5 | }
6 | .placeholderBF{
7 | background-color: rgb(255, 255, 255);
8 | width: 1440px;
9 | height: 553px;
10 | }
11 | .circuloFundo{
12 | width: 466px;
13 | height: 466px;
14 | margin-top: 87px;
15 | margin-left: 129px;
16 | margin-right: 845px;
17 | margin-bottom: 0px;
18 | }
19 | .tenisFooter{
20 | margin-top: -430px;
21 | margin-left: 60px;
22 | margin-right: 845px;
23 | margin-bottom: 0px;
24 | z-index: 1000px;
25 | }
26 | .r2{
27 | position: absolute;
28 | width: 116px;
29 | height: 22px;
30 | left: 792px;
31 | top: 2798px;
32 | display: flex;
33 |
34 | font-family: 'Inter';
35 | font-style: normal;
36 | font-weight: 700;
37 | font-size: 13.9px;
38 | line-height: 22px;
39 |
40 | letter-spacing: 0.75px;
41 |
42 | color: #C92071;
43 | }
44 |
45 | .r27{
46 | position: absolute;
47 | width: 514px;
48 | height: 100px;
49 | left: 792px;
50 | top: 2830px;
51 |
52 |
53 | font-family: 'Inter';
54 | font-style: normal;
55 | font-weight: 700;
56 | font-size: 48px;
57 | line-height: 50px;
58 |
59 | letter-spacing: 1px;
60 |
61 | color: #474747;
62 | }
63 | .r271{
64 | position: absolute;
65 | width: 589px;
66 | height: 112px;
67 | left: 792px;
68 | top: 2950px;
69 |
70 | font-family: 'Inter';
71 | font-style: normal;
72 | font-weight: 400;
73 | font-size: 16px;
74 | line-height: 28px;
75 |
76 | letter-spacing: 0.75px;
77 |
78 | color: #474747;
79 | }
80 | /* .r273{
81 | position: absolute;
82 | left: 0%;
83 | right: 0%;
84 | top: 0%;
85 | bottom: 0%;
86 |
87 | font-family: 'Inter';
88 | font-style: normal;
89 | font-weight: 700;
90 | font-size: 14px;
91 | line-height: 22px;
92 |
93 | display: flex;
94 | align-items: center;
95 | text-align: center;
96 | letter-spacing: 0.75px;
97 |
98 | color: #F5F5F5;
99 | } */
100 | /* .r273{
101 | left: 696;
102 | top: 5900px;
103 | bottom: 560;
104 | background: #C92071;
105 | border-radius: 8px;
106 | } */
--------------------------------------------------------------------------------
/src/components/BannerFooter/tenis.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/BannerFooter/tenis.png
--------------------------------------------------------------------------------
/src/components/CarrocaDetalhesProduto/Carroca.css:
--------------------------------------------------------------------------------
1 | .carousel-indicators [data-bs-target] {
2 | display: none;
3 | }
4 |
5 | .fundoazul{
6 | height: 37rem;
7 | width: 51rem;
8 | }
9 |
10 |
11 | .fundopastel{
12 | height: 37rem;
13 | width: 51rem;
14 |
15 | }
16 | .fundosalmao{
17 | height: 37rem;
18 | width: 51rem;
19 | }
20 |
21 | .fundomarrom{
22 | height: 37rem;
23 | width: 51rem;
24 | }
25 |
26 | .fundocinza{
27 | height: 37rem;
28 | width: 51rem;
29 | }
30 | .slidTenis{
31 | padding-left: 7rem;
32 | padding-top: 8rem;
33 | }
34 |
35 | .slidTenis{
36 | padding-left: 7rem;
37 | padding-top: 8rem;
38 | }
--------------------------------------------------------------------------------
/src/components/CarrocaDetalhesProduto/Carroca.js:
--------------------------------------------------------------------------------
1 | import Carousel from 'react-bootstrap/Carousel';
2 | import React from 'react';
3 | import TenisBrancoMaior from './TenisBrancoMaior.png'
4 | import './Carroca.css'
5 |
6 |
7 | function Carroca() {
8 | return (
9 |
10 |
11 |
12 |
13 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 | );
91 | }
92 |
93 | export default Carroca;
--------------------------------------------------------------------------------
/src/components/CarrocaDetalhesProduto/TenisBranco.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/CarrocaDetalhesProduto/TenisBranco.png
--------------------------------------------------------------------------------
/src/components/CarrocaDetalhesProduto/TenisBrancoMaior.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/CarrocaDetalhesProduto/TenisBrancoMaior.png
--------------------------------------------------------------------------------
/src/components/DetalhesProduto/DetalhesProduto.css:
--------------------------------------------------------------------------------
1 | @import url('https://fonts.googleapis.com/css2?family=Inter&display=swap');
2 |
3 | .DetalhesProduto{
4 | background-color: #F9F8FE;
5 | font-family: 'Inter', sans-serif;
6 | }
7 |
8 | .Cabecalho{
9 | padding-left: 76px;
10 | background-color: #F9F8FE;
11 | }
12 |
13 | .Cabecalho p{
14 | color: #474747;
15 | font-size: 14px;
16 | }
17 |
18 | .Cabecalho strong{
19 | font-size: 14px;
20 | }
21 |
22 | .tnrHeader{
23 | font-size: 32px;
24 | color: #1F1F1F;
25 | }
26 |
27 | .tnrHeader p{
28 | font-size: 12px;
29 | color:#666666;
30 | }
31 |
32 | .rateButton{
33 | border-radius: 15%;
34 | font-size: 14px;
35 | background-color: #F6AA1C;
36 | font-weight: bold;
37 | color: white;
38 | border: none;
39 | width: 3.5rem;
40 | justify-content: center;
41 | align-items: center;
42 | margin: 10px;
43 | }
44 | .piu p{
45 | font-size: 14px;
46 | color: #8F8F8F;
47 | padding-top: 23px;
48 | }
49 |
50 | .precoAA{
51 | align-items: baseline;
52 |
53 |
54 | }
55 | .descriptionProduct h3{
56 | font-size: 14px;
57 | color: #8F8F8F;
58 | font-weight: bold;
59 | }
60 | .descriptionProduct p{
61 | font-size: 14px;
62 | color:#474747;
63 |
64 |
65 | }
66 | .tamanho button{
67 | height: 40px;
68 | width: 40px;
69 | border-radius: 20%;
70 | margin: 5px;
71 | background-color: white;
72 | border: 1px solid #CCCCCC;
73 | font-size: 15px;
74 |
75 | }
76 |
77 | .tamanho p{
78 | font-size: 14px;
79 | color: #8F8F8F;
80 | margin: 5px;
81 |
82 | }
83 |
84 | .cor .cor1{
85 | background-color: #6FEEFF;
86 | border-radius: 50%;
87 | }
88 |
89 | .cor .cor3{
90 | background-color: #5E5E5E;
91 | border-radius: 50%;
92 | }
93 | .cor .cor4{
94 | background-color: #6D70B7;
95 | border-radius: 50%;
96 | }
97 |
98 | .cor .cor2{
99 | background-color: #FF6969;
100 | border-radius: 50%;
101 | }
102 |
103 | .btnComprar{
104 | height: 50px;
105 | width: 250px;
106 | margin-top: 2rem;
107 | background-color: #F6AA1C;
108 | color: white;
109 | font-weight: bold;
110 | border:none;
111 | border-radius: 8px;
112 | }
113 |
114 | .ProdutosAlta{
115 | font-family: 'Inter', sans-serif;
116 | background-color: #F9F8FE;
117 | padding: 1rem;
118 | margin-top: 9rem;
119 |
120 | }
121 |
122 | h5{
123 | font-size: 18px;
124 | line-height: 34px;
125 | color: #474747;
126 | font-weight: bold;
127 | }
128 |
129 | .VerTodos{
130 | text-decoration: none;
131 | font-size: 0.8rem;
132 | color: #C92071;
133 | padding: 3rem;
134 |
135 |
136 | }
137 |
138 | .cards{
139 | background-color: #F9F8FE;
140 | }
141 |
142 |
143 | .sneakerImg{
144 | width: 230px;
145 | height: 230px
146 | }
147 |
148 | .sneakerP{
149 | color: #8F8F8F;
150 | font-size: 12px;
151 | padding-top: 10px;
152 | }
153 |
154 | .inicialP{
155 | text-decoration: line-through;
156 | }
157 |
158 | .precoInicial{
159 | padding-right: 10px;
160 | color: #8F8F8F;
161 | font-size: 24px;
162 | }
163 |
164 | .precoAtual{
165 | padding-right: 5px;
166 | color: #1F1F1F;
167 | font-weight: bold;
168 | font-size: 24px;
169 | }
170 |
171 | .discount{
172 |
173 | background-color: #E7FF86;
174 | font-weight: bold;
175 | border-radius: 50%;
176 | color: #474747;
177 | font-size: 12px;
178 | border: none;
179 | width: 80px;
180 | height: 30px;
181 | }
182 |
183 | .dis{
184 | position: absolute;
185 | top: 10px;
186 | left: 20px;
187 | z-index: 1000;
188 |
189 | }
190 | .cartao{
191 | position: relative;
192 |
193 | }
194 |
195 | .discount2{
196 | background-color: #E7FF86;
197 | font-weight: bold;
198 | border-radius: 50%;
199 | color: #474747;
200 | font-size: 12px;
201 | border: none;
202 | width: 80px;
203 | height: 30px;
204 | }
205 |
206 |
207 | .preco{
208 | padding-bottom: 2rem;
209 | }
210 |
211 | .tenis1{
212 | background-color: #E2E3FF;
213 | height: 5rem;
214 | width: 7rem;
215 | border-radius: 5px;
216 |
217 | }
218 | .tenis2{
219 | background-color: #FFE8BC;
220 | height: 5rem;
221 | width: 7rem;
222 | border-radius: 5px;
223 |
224 | }
225 | .tenis3{
226 | background-color: #FFC0BC;
227 | height: 5rem;
228 | width: 7rem;
229 | border-radius: 5px;
230 |
231 | }
232 | .tenis4{
233 | background-color: #DEC699;
234 | height: 5rem;
235 | width: 7rem;
236 | border-radius: 5px;
237 |
238 | }
239 | .tenis5{
240 | background-color: #E8DFCF;
241 | height: 5rem;
242 | width: 7rem;
243 | border-radius: 5px;
244 |
245 | }
246 |
247 | .carr{
248 | height: 30rem;
249 | }
250 |
--------------------------------------------------------------------------------
/src/components/DetalhesProduto/DetalhesProduto.js:
--------------------------------------------------------------------------------
1 | import Header from "../../components/Header";
2 | import Footer from "../../components/Footer";
3 | import "./DetalhesProduto.css"
4 | import { Star, StarBorder } from "@mui/icons-material";
5 | import ArrowForwardIcon from '@mui/icons-material/ArrowForward';
6 | import Sneakers from '../ProdutosAlta/skeakers.png'
7 | import Carroca from "../CarrocaDetalhesProduto/Carroca"
8 | import TenisBranco from './TenisBranco.png'
9 |
10 |
11 |
12 |
13 |
14 |
15 | export default function DetalhesProduto() {
16 | function clique(event) {
17 | event.target.style.color='white'
18 | event.target.style.background = '#C92071';
19 | }
20 |
21 | function cliqueCor(event) {
22 | event.target.style.border = '2px solid #C92071';
23 | }
24 |
25 | return(
26 | <>
27 |
28 |
29 |
30 |
31 |
32 |
Home / Produtos / Tênis / Nike / Tênis Nike Revolution 6 Next Nature Masculino
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
Tênis Nike Revolution 6 Next Nature Masculino
58 |
Casual | Nike | REF:38416711
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 | 4.7
69 |
70 |
71 |
(90 avaliações)
72 |
73 |
74 |
75 |
R$
76 |
219 ,00
77 |
219,00
78 |
79 |
80 |
Descrição do Produto
81 |
Lorem ipsum dolor sit amet consectetur, adipisicing elit. Voluptatem voluptatum cupiditate mollitia, architecto optio nobis quia eos dolorem soluta aliquam!
82 |
83 |
84 |
85 |
86 |
Tamanho
87 |
88 | 39
89 | 40
90 | 41
91 | 42
92 | 43
93 |
94 |
Tamanho
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
Comprar
104 |
105 |
106 |
107 |
108 |
109 |
Produtos Selecionados
110 |
111 |
112 |
113 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 | 30%OFF
125 |
126 |
127 |
Tênis
128 |
K-Swiss V8 - Masculino
129 |
130 |
131 | $200 $100
132 |
133 |
134 |
135 |
136 |
137 | 30%OFF
138 |
139 |
140 |
Tênis
141 |
K-Swiss V8 - Masculino
142 |
143 |
144 | $200 $100
145 |
146 |
147 |
148 |
149 |
Tênis
150 |
K-Swiss V8 - Masculino
151 |
152 | $200 $100
153 |
154 |
155 |
156 |
157 |
Tênis
158 |
K-Swiss V8 - Masculino
159 |
160 | $200 $100
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 | >
170 | )
171 | }
--------------------------------------------------------------------------------
/src/components/DetalhesProduto/TenisBranco.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/DetalhesProduto/TenisBranco.png
--------------------------------------------------------------------------------
/src/components/Footer/index.js:
--------------------------------------------------------------------------------
1 | import { BsFacebook, BsInstagram, BsTwitter } from "react-icons/bs";
2 | import 'bootstrap/dist/css/bootstrap.min.css';
3 | import logo from "./logo.svg"
4 | import { Link } from "react-router-dom";
5 |
6 | export default function Footer() {
7 |
8 | return (
9 |
10 |
11 |
12 |
13 |
14 |
Digital Store
15 |
16 |
Lorem ipsum dolor sit amet consectetur, adipisicing elit. Deleniti dolores modi eum optio incidunt similique.
17 |
18 |
19 |
20 |
25 |
26 |
31 |
32 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | Informação
44 | Sobre Drip Store
45 | Segurança
46 | Wishlist
47 | Blog
48 | Trabalhe Conosco
49 | Meus Pedidos
50 |
51 |
52 |
53 |
54 |
Categorias
55 |
56 | Camisetas
57 | Calças
58 | Bonés
59 | Headphones
60 | Tenis
61 |
62 |
63 |
64 |
76 |
77 |
78 | @ 2022 Digital College
79 |
80 |
81 |
82 |
83 | )
84 | }
--------------------------------------------------------------------------------
/src/components/Footer/logo.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/src/components/Header/Buscar/index.css:
--------------------------------------------------------------------------------
1 | .buscarHeader {
2 | display: flex;
3 | justify-content: left;
4 | box-sizing: border-box;
5 | background-color: rgb(225, 225, 225);
6 | border-radius: 8px;
7 | width: 500px;
8 | height: 56px;
9 | }
10 |
11 | .input {
12 | padding-left: 1.5rem;
13 | width: 100%;
14 | border: none;
15 | background-color: transparent;
16 | }
17 |
18 | .iconeLupa {
19 | /* background-color: red; */
20 | z-index: 1000;
21 | font-size: 2rem;
22 | color: #999;
23 | }
--------------------------------------------------------------------------------
/src/components/Header/Buscar/index.js:
--------------------------------------------------------------------------------
1 | import React, { useState } from "react";
2 | import { Search } from "@mui/icons-material";
3 | import "./index.css";
4 |
5 | export default function Buscar(props) {
6 | const [conteudo, setConteudo] = useState("");
7 |
8 | // let classes = "input";
9 | // if (conteudo) {
10 | // classes += " input-expanded";
11 | // }
12 |
13 | // function handleOnChange(event) {
14 | // setConteudo(event.target.value);
15 | // }
16 |
17 | return (
18 |
24 | );
25 | }
--------------------------------------------------------------------------------
/src/components/Header/Carrinho/index.js:
--------------------------------------------------------------------------------
1 | import Badge from '@mui/material/Badge';
2 | import { styled } from '@mui/material/styles';
3 | import IconButton from '@mui/material/IconButton';
4 | import ShoppingCartIcon from '@mui/icons-material/ShoppingCart';
5 |
6 | const StyledBadge = styled(Badge)(({ theme }) => ({
7 | '& .MuiBadge-badge': {
8 | right: -3,
9 | top: 1,
10 | border: `2px solid ${theme.palette.background.paper}`,
11 | padding: '0 4px',
12 | },
13 | }));
14 |
15 | export default function Carrinho() {
16 | const [exibir,setExibir] = useState(true)
17 | let CarrinhoHover = () => {
18 |
19 |
20 | Meu Carrinho
21 | Produto 1
22 | Produto 2
23 | Valor total
24 | Ver Carrinho
25 |
26 |
27 | return(
28 | setExibir(!exibir)} aria-label="cart" data-mui-toggle="dropdown" >
29 |
30 |
31 |
32 |
33 |
34 | )
35 | }}
--------------------------------------------------------------------------------
/src/components/Header/Nav/index.css:
--------------------------------------------------------------------------------
1 | .mx-2{
2 | text-decoration: none;
3 | color: #666;
4 | background-color: transparent;
5 | }
6 | .mx-2 :hover{
7 | text-decoration: dashed;
8 | color: rgb(185, 20, 50);
9 | background-color: transparent;
10 |
11 | }
12 | .home{
13 | width: 47px;
14 | height: 28px;
15 | top: 134px;
16 | left: 101px;
17 | }
18 | .produto{
19 | width: 47px;
20 | height: 28px;
21 | top: 134px;
22 | left: 181px;
23 | }
24 | .cat{
25 | width: 47px;
26 | height: 28px;
27 | top: 134px;
28 | left: 287px;
29 | }
30 | .meus{
31 | width: 47px;
32 | height: 28px;
33 | top: 134px;
34 | left: 408px;
35 | }
--------------------------------------------------------------------------------
/src/components/Header/Nav/index.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom";
2 | import './index.css'
3 |
4 | export default function NavBar() {
5 | return (
6 |
7 | Home
8 | Produtos
9 | Categorias
10 | Meus Pedidos
11 |
12 | )
13 | }
--------------------------------------------------------------------------------
/src/components/Header/index.js:
--------------------------------------------------------------------------------
1 | import NavBar from "./Nav";
2 | import Buscar from "./Buscar";
3 | import { Link } from "react-router-dom";
4 | import Badge from '@mui/material/Badge';
5 | import { styled } from '@mui/material/styles';
6 | import IconButton from '@mui/material/IconButton';
7 | import ShoppingCartIcon from '@mui/icons-material/ShoppingCart';
8 | import React, { Component, useState } from "react";
9 | import LogoDigital from '../../img/LogoDigital.png';
10 | import './style.css';
11 |
12 | const StyledBadge = styled(Badge)(({ theme }) => ({
13 | '& .MuiBadge-badge': {
14 | right: -3,
15 | top: 1,
16 | border: `2px solid ${theme.palette.background.paper}`,
17 | padding: '0 4px',
18 | },
19 | }));
20 | export default function Header() {
21 | const [exibir, setExibir] = useState(true)
22 | let CarrinhoHover = () => {
23 |
24 |
25 | Meu Carrinho
26 | Produto 1
27 | Produto 2
28 | Valor total
29 | Ver Carrinho
30 |
31 |
32 | }
33 | return (
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
Cadastre-se
43 |
Entrar
44 |
45 |
46 | setExibir(!exibir)} aria-label="cart" data-mui-toggle="dropdown" >
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
58 |
59 | )
60 | }
--------------------------------------------------------------------------------
/src/components/Header/style.css:
--------------------------------------------------------------------------------
1 | *{
2 | margin: 0;
3 | padding: 0;
4 | box-sizing: border-box;
5 | }
6 | .headerBase{
7 | display: flex;
8 | flex-direction: column;
9 | justify-content: center;
10 | box-sizing: border-box;
11 | height: 192px;
12 | width: 1440px;
13 | }
14 | .actionsHeader{
15 | display: flex;
16 | align-items: flex-end;
17 | justify-content: start;
18 | height: 96px;
19 | }
20 | .logoHeaderHome{
21 | display: flex;
22 | justify-content: start;
23 | margin-left: 104px;
24 | margin-right: 44px;
25 | width: 260px;
26 | height: 44px;
27 | }
28 | .cadastroHeader{
29 | text-align: center;
30 | color:#333;
31 | width: 104px;
32 | height: 60px;
33 | padding-top: 1rem;
34 | margin: 0px 48px 0px 48px ;
35 | }
36 | .entrarHeader{
37 | width: 120px;
38 | height: 60px;
39 | text-align: center;
40 | padding-top: 0.5rem;
41 | }
42 | .botaoEntrar{
43 | background-color: #C92071;
44 | color: white;
45 | border-radius: 8px;
46 | border: none;
47 | width: 110px;
48 | height: 40px;
49 | }
50 | .carrinho{
51 | color: #C92071;
52 | height: 60px;
53 | text-align: center;
54 | padding-top: 0.5rem;
55 | margin-left: 72px;
56 | margin-right: 100px;
57 | }
58 | .navHeader{
59 | display: flex;
60 | flex-direction: column;
61 | justify-content: end;
62 | height: 96px;
63 | padding-bottom: 20px;
64 | margin-left: 100px;
65 | font-size: 16px;
66 | color: #474747;
67 | }
--------------------------------------------------------------------------------
/src/components/Login/Criar/index.js:
--------------------------------------------------------------------------------
1 | import "../../Login/index.css";
2 | import React from "react";
3 | import Logo from "../img/LogoDigital.png";
4 | import Tenis1 from "../img/tenis1.png";
5 | import Tenis2 from "../img/tenis2.png";
6 | import FacebookRoundedIcon from '@mui/icons-material/FacebookRounded';
7 | import { Link } from "react-router-dom";
8 |
9 | export default function Criar() {
10 | return (
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
45 |
46 |
47 |
48 |
49 |
50 |
51 | )
52 | }
--------------------------------------------------------------------------------
/src/components/Login/img/LogoDigital.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Login/img/LogoDigital.png
--------------------------------------------------------------------------------
/src/components/Login/img/Original.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Login/img/Original.png
--------------------------------------------------------------------------------
/src/components/Login/img/gmail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Login/img/gmail.png
--------------------------------------------------------------------------------
/src/components/Login/img/photothumb.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Login/img/photothumb.db
--------------------------------------------------------------------------------
/src/components/Login/img/tenis1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Login/img/tenis1.png
--------------------------------------------------------------------------------
/src/components/Login/img/tenis2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Login/img/tenis2.png
--------------------------------------------------------------------------------
/src/components/Login/index.css:
--------------------------------------------------------------------------------
1 |
2 |
3 | .navLog img {
4 | height: 25px;
5 | padding-left: 200px;
6 | }
7 |
8 |
9 |
10 | form#formLog {
11 | background-color: white;
12 | margin-top: 90px;
13 | margin-bottom: 100px;
14 | width: 30rem;
15 | }
16 |
17 | form#formLog a {
18 | color: black;
19 | }
20 |
21 | div.d-flex.justify-content-end {
22 | height: 30rem;
23 | }
24 |
25 | div#pagLog {
26 | background: linear-gradient(90deg, rgb(203, 202, 253) 0%, rgb(220, 215, 245) 100%);
27 | }
28 |
29 | form#formLog button {
30 | background-color: #c92071;
31 | color: white;
32 | }
33 | .fb{
34 | color: #1877F2;
35 | width: 24px;
36 | height: 23.85px;
37 | margin-left: 24px;
38 | }
39 | .gmail{
40 | margin-left: 20px;
41 | }
42 |
43 | img.chuchu123 {
44 | margin-bottom: 100px;
45 | height: 30rem;
46 | }
47 |
48 | img.chuchu456 {
49 | margin-top: 100px;
50 | height: 30rem;
51 | }
--------------------------------------------------------------------------------
/src/components/Login/index.js:
--------------------------------------------------------------------------------
1 | import "./index.css";
2 | import React from "react";
3 | import Logo from "./img/LogoDigital.png";
4 | import Tenis1 from "./img/tenis1.png";
5 | import Tenis2 from "./img/tenis2.png";
6 | import FacebookRoundedIcon from '@mui/icons-material/FacebookRounded';
7 | import { Link } from "react-router-dom";
8 |
9 | export default function Login() {
10 | return (
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
52 |
53 |
54 |
55 |
56 |
57 |
58 | )
59 | }
--------------------------------------------------------------------------------
/src/components/Produto/Collection/Linkicons/Linkicons.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom";
2 | import "bootstrap/dist/css/bootstrap.css";
3 | import React from "react";
4 | import { Button} from '@mui/material';
5 | import FrameC from '../img/FrameC.png'
6 | import FrameCa from '../img/FrameCa.png'
7 | import FrameH from '../img/FrameH.png'
8 | import FrameS from '../img/FrameS.png'
9 | import './index.css'
10 | export default function Linkicons(){
11 | return(
12 |
13 |
14 |
Coleções em destaque
15 |
16 |
17 |
18 |
19 |
20 |
21 |
Camisetas
22 |
23 |
24 |
25 |
Calças
26 |
27 |
28 |
29 |
Bonés
30 |
31 |
32 |
33 |
Headphones
34 |
35 |
36 |
37 |
Tênis
38 |
39 |
40 |
41 |
42 | );
43 | }
--------------------------------------------------------------------------------
/src/components/Produto/Collection/Linkicons/index.css:
--------------------------------------------------------------------------------
1 |
2 | .titulo {
3 | margin-top: 100px;
4 | font-family: 'Inter';
5 | font-style: normal;
6 | font-weight: 700;
7 | font-size: 24px;
8 | line-height: 38px;
9 | letter-spacing: 0.75px;
10 | color: #474747;
11 |
12 | }
13 | .botao {
14 | margin-top: 20px;
15 | width: 104px;
16 | height: 104px;
17 | border-radius: 125px;
18 | background: #FFFFFF;
19 | box-shadow: 0px 4px 25px rgba(0, 0, 0, 0.05);
20 | }
21 | .texto {
22 | margin-top: 12px;
23 | font-family: 'Inter';
24 | font-style: normal;
25 | font-weight: 700;
26 | font-size: 14px;
27 | line-height: 22px;
28 | text-align: center;
29 | letter-spacing: 0.75px;
30 | color: #474747;
31 | }
32 | .botao1 {
33 | width: 104px;
34 | height: 104px;
35 | border-radius: 125px;
36 | }
--------------------------------------------------------------------------------
/src/components/Produto/Collection/img/Desconto.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Produto/Collection/img/Desconto.png
--------------------------------------------------------------------------------
/src/components/Produto/Collection/img/FrameC.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Produto/Collection/img/FrameC.png
--------------------------------------------------------------------------------
/src/components/Produto/Collection/img/FrameCa.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Produto/Collection/img/FrameCa.png
--------------------------------------------------------------------------------
/src/components/Produto/Collection/img/FrameH.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Produto/Collection/img/FrameH.png
--------------------------------------------------------------------------------
/src/components/Produto/Collection/img/FrameS.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Produto/Collection/img/FrameS.png
--------------------------------------------------------------------------------
/src/components/Produto/Collection/img/Headset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Produto/Collection/img/Headset.png
--------------------------------------------------------------------------------
/src/components/Produto/Collection/img/Supreme.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Produto/Collection/img/Supreme.png
--------------------------------------------------------------------------------
/src/components/Produto/Collection/img/Tenis.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Produto/Collection/img/Tenis.png
--------------------------------------------------------------------------------
/src/components/Produto/Collection/index.css:
--------------------------------------------------------------------------------
1 | .button {
2 | color:deeppink;
3 | }
4 | .colecaoBase{
5 | margin-left: 100px;
6 | margin-top: 38px;
7 | }
8 | .destaque{
9 | width: 283px;
10 | height: 38px;
11 | margin-bottom: 20px;
12 | }
13 | .dest{
14 | font-weight: 700;
15 | font-size: 24px;
16 | line-height: 38px;
17 | color: #474747;
18 | letter-spacing: 0.75px;
19 | }
20 |
--------------------------------------------------------------------------------
/src/components/Produto/Collection/index.js:
--------------------------------------------------------------------------------
1 | import 'bootstrap/dist/css/bootstrap.min.css';
2 | import React from 'react';
3 | import Desconto from './img/Desconto.png';
4 | import Supreme from './img/Supreme.png';
5 | import Tenis from './img/Tenis.png';
6 | import Headset from './img/Headset.png';
7 |
8 | // IMPORTANTE
9 | export default function Collection() {
10 | return (
11 |
12 |
13 |
14 |
Coleções em destaque
15 |
16 |
17 |
18 |
19 |
20 |
21 |
Novo Drop Supreme
22 |
Comprar
23 |
24 |
25 |
26 |
27 |
28 |
29 |
Coleção Adidas
30 |
Comprar
31 |
32 |
33 |
34 |
35 |
36 |
37 |
Novo Beats Bass
38 |
Comprar
39 |
40 |
41 |
42 |
43 |
44 | )
45 | }
46 |
--------------------------------------------------------------------------------
/src/components/Produto/Comprar/index.js:
--------------------------------------------------------------------------------
1 | import { width } from "@mui/system";
2 | import { useContext } from "react";
3 | import { AppContext } from "../../../App";
4 |
5 | export default function Comprar(props) {
6 | const { carrinho, setCarrinho } = useContext(AppContext);
7 |
8 | function handleComprar() {
9 | setCarrinho([...carrinho, { nome: props.titulo, quantidade: 1 }])
10 | }
11 |
12 | return (
13 | Comprar
14 | )
15 | }
--------------------------------------------------------------------------------
/src/components/Produto/index.js:
--------------------------------------------------------------------------------
1 | import * as React from 'react';
2 | // import Comprar from "./Comprar"
3 | import Sneakers from './skeakers.png'
4 | import './styles.css'
5 |
6 | export default function Produto(props) {
7 | return (
8 |
9 |
10 |
11 |
Tênis
12 |
K-Swiss V8 - Masculino
13 |
$200
14 |
$100
15 |
16 |
17 | {props.titulo}
18 |
19 | {/*
*/}
20 |
21 | );
22 | }
--------------------------------------------------------------------------------
/src/components/Produto/skeakers.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/Produto/skeakers.png
--------------------------------------------------------------------------------
/src/components/Produto/styles.css:
--------------------------------------------------------------------------------
1 | @import url('https://fonts.googleapis.com/css2?family=Inter:wght@700&display=swap');
2 | .produtoBase {
3 | box-sizing: border-box;
4 | width: 292px;
5 | height: 479px;
6 | box-shadow: 6px 16px 30px rgba(105, 98, 98, 0.05);
7 | border-radius: 4px;
8 | margin: 0px 3.5px;
9 | padding: 0px 0px;
10 | }
11 | .cards{
12 | background-color: #F9F8FE;
13 | }
14 | .sneakerImgProdutos{
15 | background-color: #FFF;
16 | border-radius: 4px;
17 | width: 292px;
18 | height: 321px;
19 | }
20 | .sneakerP{
21 | color: #8F8F8F;
22 | font-size: 12px;
23 | padding-top: 10px;
24 | }
25 | .inicialP{
26 | text-decoration: line-through;
27 | }
28 | .precoInicial{
29 | padding-right: 10px;
30 | color: #8F8F8F;
31 | font-size: 24px;
32 | }
33 | .precoAtual{
34 | padding-right: 5px;
35 | color: #1F1F1F;
36 | font-weight: bold;
37 | font-size: 24px;
38 | }
39 | .discount{
40 | background-color: #E7FF86;
41 | font-weight: bold;
42 | border-radius: 50%;
43 | color: #474747;
44 | font-size: 12px;
45 | border: none;
46 | width: 80px;
47 | height: 30px;
48 | }
49 |
50 | .dis{
51 | position: absolute;
52 | top: 10px;
53 | left: 20px;
54 | z-index: 1000;
55 | }
56 | .cartao{
57 | position: relative;
58 | }
59 | .discount2{
60 | background-color: #E7FF86;
61 | font-weight: bold;
62 | border-radius: 50%;
63 | color: #474747;
64 | font-size: 12px;
65 | border: none;
66 | width: 80px;
67 | height: 30px;
68 | }
69 | .preco{
70 | padding-bottom: 2rem;
71 | padding-top: 0px;
72 | margin-top: 0px;
73 | }
74 | .pCustom{
75 | color: #474747;
76 | margin: 0px;
77 | font-size: 20px;
78 | }
79 | .descricaoItem{
80 | padding-top: 10px;
81 |
82 | }
--------------------------------------------------------------------------------
/src/components/Produtos/Bones/index.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom"
2 | import { Button } from '@mui/material'
3 | export default function Bones() {
4 | return (
5 |
6 |
Pagina dos Bonés
7 |
8 |
9 | Voltar pro inicio
10 |
11 |
12 |
13 |
14 |
15 | )
16 | }
--------------------------------------------------------------------------------
/src/components/Produtos/Calcas/index.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom"
2 | import { Button } from '@mui/material'
3 | export default function Calças(){
4 | return (
5 |
6 |
Pagina das Calças
7 |
8 |
9 | Voltar pro inicio
10 |
11 |
12 |
13 | )
14 | }
--------------------------------------------------------------------------------
/src/components/Produtos/Camisetas/index.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom"
2 | import { Button } from '@mui/material'
3 | export default function Camisetas(){
4 | return (
5 |
6 |
Pagina das Camisetas
7 |
8 |
9 | Voltar pro inicio
10 |
11 |
12 | )
13 | }
--------------------------------------------------------------------------------
/src/components/Produtos/Headphones/index.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom"
2 | import { Button } from '@mui/material'
3 | export default function Headphones() {
4 | return (
5 |
6 |
Pagina dos Headphones
7 |
8 | Voltar pro inicio
9 |
10 |
11 |
12 | )
13 | }
--------------------------------------------------------------------------------
/src/components/Produtos/Tenis/index.js:
--------------------------------------------------------------------------------
1 | import { Link } from "react-router-dom"
2 | import { Button } from '@mui/material'
3 |
4 | export default function Tenis() {
5 | return (
6 |
7 |
Pagina dos Tênis
8 |
9 | Voltar pro inicio
10 |
11 |
12 |
13 | )
14 | }
--------------------------------------------------------------------------------
/src/components/Produtos/index.js:
--------------------------------------------------------------------------------
1 | import Produto from "../Produto"
2 |
3 | export default function Produtos(props) {
4 | return (
5 |
10 | );
11 | }
--------------------------------------------------------------------------------
/src/components/ProdutosAlta/produtosAlta.css:
--------------------------------------------------------------------------------
1 | @import url('https://fonts.googleapis.com/css2?family=Inter:wght@700&display=swap');
2 |
3 | .ProdutosAlta{
4 | font-family: 'Inter', sans-serif;
5 | background-color: #F9F8FE;
6 | }
7 |
8 | h5{
9 | font-size: 24px;
10 | line-height: 34px;
11 | color: #474747;
12 | }
13 |
14 | .VerTodos{
15 | text-decoration: none;
16 | font-size: 0.8rem;
17 | color: #C92071;
18 | }
19 |
20 | .cards{
21 | background-color: #F9F8FE;
22 | }
23 |
24 |
25 | .sneakerImg{
26 | width: 292px;
27 | height: 321px;
28 | }
29 |
30 | .sneakerP{
31 | color: #8F8F8F;
32 | font-size: 12px;
33 | padding-top: 10px;
34 | }
35 |
36 | .inicialP{
37 | text-decoration: line-through;
38 | }
39 |
40 | .precoInicial{
41 | padding-right: 10px;
42 | color: #8F8F8F;
43 | font-size: 24px;
44 | }
45 |
46 | .precoAtual{
47 | padding-right: 5px;
48 | color: #1F1F1F;
49 | font-weight: bold;
50 | font-size: 24px;
51 | }
52 |
53 | .discount{
54 | background-color: #E7FF86;
55 | font-weight: bold;
56 | border-radius: 50%;
57 | color: #474747;
58 | font-size: 12px;
59 | border: none;
60 | width: 80px;
61 | height: 30px;
62 | }
63 |
64 | .dis{
65 | top: 10px;
66 | left: 20px;
67 | z-index: 1000;
68 | }
69 | .cartao{
70 | width: 292px;
71 | height: 321px;
72 |
73 | }
74 |
75 | .discount2{
76 | background-color: #E7FF86;
77 | font-weight: bold;
78 | border-radius: 50%;
79 | color: #474747;
80 | font-size: 12px;
81 | border: none;
82 | width: 80px;
83 | height: 30px;
84 | }
85 |
86 |
87 | .preco{
88 | padding-bottom: 2rem;
89 | }
--------------------------------------------------------------------------------
/src/components/ProdutosAlta/produtosAlta.js:
--------------------------------------------------------------------------------
1 | import "./produtosAlta.css";
2 | import ArrowForwardIcon from '@mui/icons-material/ArrowForward';
3 | import Sneakers from './skeakers.png';
4 |
5 | export default function ProdutosAlta() {
6 | return (
7 |
8 |
9 |
10 |
11 |
12 |
Produtos em alta
13 |
14 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 | 30%OFF
25 |
26 |
27 |
Tênis
28 |
K-Swiss V8 - Masculino
29 |
30 |
31 | $200 $100
32 |
33 |
34 |
35 |
36 |
37 | 30%OFF
38 |
39 |
40 |
Tênis
41 |
K-Swiss V8 - Masculino
42 |
43 |
44 | $200 $100
45 |
46 |
47 |
48 |
49 |
Tênis
50 |
K-Swiss V8 - Masculino
51 |
52 | $200 $100
53 |
54 |
55 |
56 |
57 |
Tênis
58 |
K-Swiss V8 - Masculino
59 |
60 | $200 $100
61 |
62 |
63 |
64 |
65 |
66 |
67 |
Tênis
68 |
K-Swiss V8 - Masculino
69 |
70 | $200 $100
71 |
72 |
73 |
74 |
75 |
Tênis
76 |
K-Swiss V8 - Masculino
77 |
78 | $200 $100
79 |
80 |
81 |
82 |
83 |
Tênis
84 |
K-Swiss V8 - Masculino
85 |
86 | $200 $100
87 |
88 |
89 |
90 |
91 |
Tênis
92 |
K-Swiss V8 - Masculino
93 |
94 | $200 $100
95 |
96 |
97 |
98 |
99 |
100 |
101 | )
102 | }
--------------------------------------------------------------------------------
/src/components/ProdutosAlta/skeakers.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/ProdutosAlta/skeakers.png
--------------------------------------------------------------------------------
/src/components/carrossel/img/bola.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/carrossel/img/bola.png
--------------------------------------------------------------------------------
/src/components/carrossel/img/tenis.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/components/carrossel/img/tenis.png
--------------------------------------------------------------------------------
/src/components/carrossel/index.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Link } from "react-router-dom"
3 | import Carousel from 'react-bootstrap/Carousel';
4 | import tenis from "./img/tenis.png"
5 | import bola from "./img/bola.png"
6 | import "./style.css"
7 |
8 | export default function Carrossel() {
9 | return (
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
Melhores ofertas personalizadas
21 |
22 |
23 |
Queima de estoque Nike 🔥
24 |
25 |
26 |
Consequat culpa exercitation mollit nisi excepteur do do tempor laboris eiusmod irure consectetur
27 |
28 |
29 |
30 | Ver Ofertas
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
Melhores ofertas personalizadas
49 |
50 |
51 |
52 |
Queima de estoque Nike 🔥
53 |
54 |
55 |
Consequat culpa exercitation mollit nisi excepteur do do tempor laboris eiusmod irure consectetur
56 |
57 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
Melhores ofertas personalizadas
77 |
78 |
79 |
80 |
Queima de estoque Nike 🔥
81 |
82 |
83 |
Consequat culpa exercitation mollit nisi excepteur do do tempor laboris eiusmod irure consectetur
84 |
85 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
Melhores ofertas personalizadas
105 |
106 |
107 |
108 |
109 | Queima de estoque Nike 🔥
110 |
111 |
112 |
113 |
Consequat culpa exercitation mollit nisi excepteur do do tempor laboris eiusmod irure consectetur
114 |
115 |
120 |
121 |
122 |
123 |
124 |
125 | );
126 | }
--------------------------------------------------------------------------------
/src/components/carrossel/style.css:
--------------------------------------------------------------------------------
1 | .carousel-principal {
2 | height: 681px;
3 | }
4 |
5 | .linha{
6 | display: flex;
7 | flex-direction: row-reverse ;
8 | flex-wrap: wrap;
9 | }
10 |
11 | .textos {
12 | position: relative;
13 | display: flex;
14 | flex-wrap: wrap;
15 | flex-direction: column;
16 | align-content: space-between;
17 | gap: 26px;
18 | margin-bottom: 170px;
19 | right:90px;
20 | }
21 |
22 | .texto1 {
23 | color: #F6AA1C;
24 | font-family: 'Inter', sans-serif;
25 | font-size: 14px;
26 | font-weight: 900;
27 | letter-spacing: 0.75px;
28 | text-align: left;
29 | }
30 |
31 | .texto2 {
32 | color: #1F1F1F;
33 | width: 510px;
34 | height: 132px;
35 | font-weight: 800;
36 | font-size: 60px;
37 | line-height: 70px;
38 | font-family: 'Inter', sans-serif;
39 | letter-spacing: 1px;
40 | text-align: left;
41 | }
42 |
43 | .texto3 {
44 | color: #474747;
45 | font-family: 'Inter';
46 | font-size: 16px;
47 | font-weight: 400;
48 | line-height: 25px;
49 | letter-spacing: 0.75px;
50 | text-align: left;
51 | margin:1px;
52 | }
53 |
54 | .buttonofertas {
55 | height: 48px;
56 | width: 220px;
57 | border: 0;
58 | border-radius: 8px;
59 | background-color: #c92071;
60 | font-family: 'Inter', sans-serif;
61 | font-size: 14px;
62 | font-weight: 700;
63 | line-height: 22px;
64 | letter-spacing: 0.75px;
65 | text-align: center;
66 | color: #f5f5f5;
67 | cursor: pointer;
68 |
69 | }
70 |
71 | .wrapper-button1 {
72 | text-align: left;
73 | }
74 |
75 | .nike {
76 | margin-left: 600px;
77 | }
78 |
79 | .circle {
80 | position: absolute;
81 | margin-top: 78px;
82 | margin-right: 37px;
83 | width: 120px;
84 | height: 120px;
85 | }
86 |
87 | .carousel-indicators [data-bs-target] {
88 | box-sizing: content-box;
89 | flex: 0 1 auto;
90 | width: 10px!important;
91 | height: 10px!important;
92 | padding: 0;
93 | margin-right: 5px!important;
94 | margin-left: 5px!important;
95 | text-indent: -999px;
96 | cursor: pointer;
97 | background-color:#c92071!important;
98 | background-clip: padding-box;
99 | border: 0;
100 | border-radius: 50%;
101 | border-top: 10px solid transparent;
102 | border-bottom: 10px solid transparent;
103 | opacity: .5;
104 | transition: opacity .6s ease;
105 | }
106 |
107 | .carousel-control-prev{
108 | pointer-events: none!important;
109 | }
110 | .carousel-control-prev-icon{
111 | display: none!important;
112 | }
113 |
114 | .carousel-control-next{
115 | pointer-events: none!important;
116 | }
117 | .carousel-control-next-icon{
118 | display: none!important;
119 | }
--------------------------------------------------------------------------------
/src/css/app.css:
--------------------------------------------------------------------------------
1 | @import url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap');
--------------------------------------------------------------------------------
/src/img/Digital.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/img/Digital.png
--------------------------------------------------------------------------------
/src/img/LogoDigital.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/img/LogoDigital.png
--------------------------------------------------------------------------------
/src/img/Stroke 5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/img/Stroke 5.png
--------------------------------------------------------------------------------
/src/img/White-Sneakers-PNG-Clipart 1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/img/White-Sneakers-PNG-Clipart 1.png
--------------------------------------------------------------------------------
/src/img/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/img/logo.png
--------------------------------------------------------------------------------
/src/img/photothumb.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ElvisNascimento/e-commerce-react/01ade26d92bf0d10e2d0c29cb14f0b6e462ef1ec/src/img/photothumb.db
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ReactDOM from 'react-dom/client';
3 | import App from './App';
4 | import '../node_modules/bootstrap/dist/js/bootstrap';
5 | import '../node_modules/bootstrap/dist/css/bootstrap.css';
6 | import '../node_modules/bootstrap/dist/js/bootstrap.bundle';
7 | import { BrowserRouter } from 'react-router-dom';
8 |
9 | const root = ReactDOM.createRoot(document.getElementById('root'));
10 | root.render(
11 |
12 |
13 |
14 |
15 |
16 | );
17 |
--------------------------------------------------------------------------------