├── src
├── an1.webp
├── an2.png
├── an3.png
├── an4.webp
├── an5.jpg
├── an6.png
├── an7.png
├── pen1.png
├── pen3.png
├── pen5.png
├── pen6.png
├── pen7.png
├── pul1.png
├── pul2.png
├── pul3.png
├── pul4.png
├── pul5.png
├── pul6.jpg
├── pul7.png
├── pen2.webp
├── pen4.webp
├── setupTests.js
├── App.test.js
├── index.css
├── reportWebVitals.js
├── index.js
├── Buttons.js
├── Home.js
├── App.js
├── ContactUs.js
├── Jewelry.js
├── About.js
├── App.css
├── ContactCss.css
├── AboutUs.css
└── data.js
├── public
├── icon.png
├── favicon.ico
├── robots.txt
├── manifest.json
└── index.html
├── README.md
├── .gitignore
└── package.json
/src/an1.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/an1.webp
--------------------------------------------------------------------------------
/src/an2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/an2.png
--------------------------------------------------------------------------------
/src/an3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/an3.png
--------------------------------------------------------------------------------
/src/an4.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/an4.webp
--------------------------------------------------------------------------------
/src/an5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/an5.jpg
--------------------------------------------------------------------------------
/src/an6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/an6.png
--------------------------------------------------------------------------------
/src/an7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/an7.png
--------------------------------------------------------------------------------
/src/pen1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pen1.png
--------------------------------------------------------------------------------
/src/pen3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pen3.png
--------------------------------------------------------------------------------
/src/pen5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pen5.png
--------------------------------------------------------------------------------
/src/pen6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pen6.png
--------------------------------------------------------------------------------
/src/pen7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pen7.png
--------------------------------------------------------------------------------
/src/pul1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pul1.png
--------------------------------------------------------------------------------
/src/pul2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pul2.png
--------------------------------------------------------------------------------
/src/pul3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pul3.png
--------------------------------------------------------------------------------
/src/pul4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pul4.png
--------------------------------------------------------------------------------
/src/pul5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pul5.png
--------------------------------------------------------------------------------
/src/pul6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pul6.jpg
--------------------------------------------------------------------------------
/src/pul7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pul7.png
--------------------------------------------------------------------------------
/src/pen2.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pen2.webp
--------------------------------------------------------------------------------
/src/pen4.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/src/pen4.webp
--------------------------------------------------------------------------------
/public/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/public/icon.png
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NatachaKey/jewelry-shop/HEAD/public/favicon.ico
--------------------------------------------------------------------------------
/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Website made with React, React hooks, React router, CSS3, JSX. Responsive for all mobile devices.
2 |
3 | ## In the project directory, you can run:
4 |
5 | ## npm i
6 | ## npm start
7 |
--------------------------------------------------------------------------------
/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import '@testing-library/jest-dom';
6 |
--------------------------------------------------------------------------------
/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from '@testing-library/react';
2 | import App from './App';
3 |
4 | test('renders learn react link', () => {
5 | render( );
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/.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 |
--------------------------------------------------------------------------------
/src/index.css:
--------------------------------------------------------------------------------
1 | body {
2 | margin: 0;
3 | font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
4 | 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
5 | sans-serif;
6 | -webkit-font-smoothing: antialiased;
7 | -moz-osx-font-smoothing: grayscale;
8 | }
9 |
10 | code {
11 | font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
12 | monospace;
13 | }
14 |
--------------------------------------------------------------------------------
/src/reportWebVitals.js:
--------------------------------------------------------------------------------
1 | const reportWebVitals = onPerfEntry => {
2 | if (onPerfEntry && onPerfEntry instanceof Function) {
3 | import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {
4 | getCLS(onPerfEntry);
5 | getFID(onPerfEntry);
6 | getFCP(onPerfEntry);
7 | getLCP(onPerfEntry);
8 | getTTFB(onPerfEntry);
9 | });
10 | }
11 | };
12 |
13 | export default reportWebVitals;
14 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ReactDOM from 'react-dom/client';
3 | import './index.css';
4 | import App from './App';
5 | import reportWebVitals from './reportWebVitals';
6 |
7 | const root = ReactDOM.createRoot(document.getElementById('root'));
8 | root.render(
9 |
10 |
11 |
12 | );
13 |
14 | // If you want to start measuring performance in your app, pass a function
15 | // to log results (for example: reportWebVitals(console.log))
16 | // or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
17 | reportWebVitals();
18 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/src/Buttons.js:
--------------------------------------------------------------------------------
1 | import { useState } from "react";
2 | import { data } from "./data";
3 |
4 | function Buttons({ filteredJewelry }){
5 | const [products, setProducts] = useState(data);
6 |
7 | return(
8 |
9 |
10 | filteredJewelry("anillo") }>Anillos
11 | filteredJewelry("pendientes") }>Pendientes
12 | filteredJewelry("pulsera") }>Pulseras
13 |
14 | )
15 | }
16 |
17 | export default Buttons;
18 |
19 |
--------------------------------------------------------------------------------
/src/Home.js:
--------------------------------------------------------------------------------
1 | import { useState } from "react";
2 | import { data } from "./data";
3 | import Buttons from "./Buttons";
4 | import Jewelry from "./Jewelry";
5 |
6 | function Home(){
7 |
8 | const [jewelry, setJewelry]= useState(data);
9 |
10 | const chosenJewelry = (searchTerm) =>{
11 | const newJewelry = data.filter(element=>element.searchTerm === searchTerm);
12 | setJewelry(newJewelry);
13 | }
14 |
15 | return(
16 |
17 |
Envío gratuito para los pedidos superiores a 2000$
18 |
19 |
20 |
21 |
22 |
23 | )
24 | }
25 |
26 | export default Home;
27 |
--------------------------------------------------------------------------------
/src/App.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import {
3 | BrowserRouter as Router,
4 | Routes,
5 | Route,
6 | Link
7 | } from "react-router-dom";
8 | import Home from "./Home";
9 | import About from "./About";
10 | import ContactUs from "./ContactUs";
11 | import './App.css';
12 |
13 | function App() {
14 | return
15 |
16 | Alta Joyería
17 | Sobre nosotros
18 | Contactar
19 |
20 |
21 |
22 | } />
23 | } />
24 | }/>
25 |
26 |
27 |
28 |
29 | }
30 |
31 | export default App;
32 |
--------------------------------------------------------------------------------
/src/ContactUs.js:
--------------------------------------------------------------------------------
1 | import './ContactCss.css'
2 |
3 | function ContactUs(){
4 | return
5 |
25 |
26 |
27 |
28 | }
29 | export default ContactUs;
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jewelry",
3 | "version": "0.1.0",
4 | "private": true,
5 | "dependencies": {
6 | "@testing-library/jest-dom": "^5.16.5",
7 | "@testing-library/react": "^13.4.0",
8 | "@testing-library/user-event": "^13.5.0",
9 | "react": "^18.2.0",
10 | "react-dom": "^18.2.0",
11 | "react-router": "^6.4.1",
12 | "react-router-dom": "^6.4.1",
13 | "react-scripts": "5.0.1",
14 | "web-vitals": "^2.1.4"
15 | },
16 | "scripts": {
17 | "start": "react-scripts start",
18 | "build": "react-scripts build",
19 | "test": "react-scripts test",
20 | "eject": "react-scripts eject"
21 | },
22 | "eslintConfig": {
23 | "extends": [
24 | "react-app",
25 | "react-app/jest"
26 | ]
27 | },
28 | "browserslist": {
29 | "production": [
30 | ">0.2%",
31 | "not dead",
32 | "not op_mini all"
33 | ],
34 | "development": [
35 | "last 1 chrome version",
36 | "last 1 firefox version",
37 | "last 1 safari version"
38 | ]
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/src/Jewelry.js:
--------------------------------------------------------------------------------
1 | import { useState } from "react";
2 | import { Link } from 'react-router-dom';
3 | import ContactUs from "./ContactUs";
4 |
5 | function Jewelry({password}){
6 | const [showText,setShowText] = useState(false);
7 |
8 | const showTextClick = (element) => {
9 | element.showMore=!element.showMore
10 | setShowText(!showText)
11 | }
12 |
13 | return(
14 | {password.map((element=>{
15 | const { id, name, price, image, description, showMore }= element;
16 | return(
17 |
18 |
19 |
{ name }
20 |
€ { price }
21 |
{ showMore ? description : description.substring(0, 40)}
22 |
showTextClick(element)}>{ showMore ? "Ver menos" : "Ver más"}
23 |
24 |
Pedir cita
25 |
26 |
27 |
)
28 | }
29 | ))}
30 |
)
31 | }
32 |
33 | export default Jewelry;
34 |
--------------------------------------------------------------------------------
/src/About.js:
--------------------------------------------------------------------------------
1 | import './AboutUs.css'
2 | function About(){
3 | return
4 |
5 |
6 |
7 |
8 |
9 |
10 | Sobre nosotros
11 |
Joyeros desde 1872
12 |
13 |
ALTA JOYERÍA es diseño, maestría y buen hacer. Los únicos joyeros españoles que realizan todo el proceso de creación de una joya, de forma completamente artesanal, en nuestros talleres.
14 |
15 | Alta calidad
16 | Estilo personalizado
17 | Atención postventa
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 | }
29 | export default About;
30 |
--------------------------------------------------------------------------------
/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
12 |
13 |
17 |
18 |
19 |
20 |
21 |
30 | ALTA JOYERÍA
31 |
32 |
33 | You need to enable JavaScript to run this app.
34 |
35 |
45 |
46 |
47 |
--------------------------------------------------------------------------------
/src/App.css:
--------------------------------------------------------------------------------
1 | .link{
2 | padding: 10px 40px;
3 | text-decoration: none;
4 | text-transform: uppercase;
5 | color: #000000;
6 | }
7 | .link:hover{
8 | font-weight: bolder;
9 | }
10 | nav{
11 | display: flex;
12 | justify-content: center;
13 | padding: 10px;
14 | background: #f5f5f5;
15 | font-size: 20px;
16 | text-align: center;
17 | }
18 | .products {
19 | display: flex;
20 | justify-content: space-evenly;
21 | flex-wrap: wrap;
22 | }
23 | .productCard {
24 | text-align: center;
25 | width:32%;
26 | }
27 | body {
28 | background-color: #fff;
29 | }
30 | .cont {
31 | display: flex;
32 | justify-content: center;
33 | }
34 | .back {
35 | background-color: rgb(241,234,217);
36 | flex:1;
37 | text-align: center;
38 | font-size: 15px;
39 | padding: 10px;
40 | margin-top:0;
41 | font-family: 'Roboto', sans-serif;
42 | }
43 | .change {
44 | background-color: #efefef;
45 | color: #212121;
46 | padding: 15px;
47 | border: none;
48 | font-family: 'Roboto', sans-serif;
49 | }
50 | .change:hover{
51 | background-color: #efefef;
52 | color: rgb(133, 128, 128) ;
53 | cursor: pointer;
54 | }
55 | h3, h4 {
56 | font-family: 'Roboto', sans-serif;
57 | font-weight: lighter;
58 | color:#000000;
59 | }
60 | button {
61 | margin: 15px;
62 | font-family: 'Roboto', sans-serif;
63 | }
64 | img{
65 | border:rgb(230, 224, 224) 1px solid;
66 | margin-top: 30px;
67 | }
68 | .seeMore{
69 | border: none;
70 | background-color: #f5f5f5 ;
71 | color:#000000;
72 | padding: 8px;
73 | margin-bottom: 30px;
74 | cursor: pointer;
75 | }
76 | p{
77 | font-size:12px;
78 | }
79 | .bigger:hover{
80 | transform: scale(1.1);
81 | margin: 10px;
82 | border: none;
83 | }
84 | .ctaBtn{
85 | background-color: #000000 ;
86 | color:#fff;
87 | border: none;
88 | padding:8px;
89 | }
90 |
91 | @media all and (max-width:500px){
92 | nav{
93 | font-size: 12px;
94 | font-weight:bold;
95 | }
96 | .products {
97 | display: flex;
98 | flex-direction: column;
99 | }
100 | .productCard{
101 | width:auto;
102 | }
103 | nav{
104 | padding: 0px;
105 | }
106 | img{
107 | border:none;
108 | margin-top: 30px;
109 | }
110 | .back {
111 | font-size: 10px;
112 | }
113 |
114 | }
115 |
--------------------------------------------------------------------------------
/src/ContactCss.css:
--------------------------------------------------------------------------------
1 | @import url(https://fonts.googleapis.com/css?family=Roboto:400,300,600,400italic);
2 | * {
3 | margin: 0;
4 | padding: 0;
5 | box-sizing: border-box;
6 | -webkit-box-sizing: border-box;
7 | -moz-box-sizing: border-box;
8 | -webkit-font-smoothing: antialiased;
9 | -moz-font-smoothing: antialiased;
10 | -o-font-smoothing: antialiased;
11 | text-rendering: optimizeLegibility;
12 | }
13 |
14 | body {
15 | font-family: "Roboto", Helvetica, Arial, sans-serif;
16 | font-weight: 100;
17 | font-size: 12px;
18 | line-height: 30px;
19 | color: #777;
20 | background: #efefef;
21 | }
22 |
23 | .container {
24 | max-width: 400px;
25 | width: 100%;
26 | margin: 0 auto;
27 | position: relative;
28 | }
29 |
30 | #contact input[type="text"],
31 | #contact input[type="email"],
32 | #contact input[type="tel"],
33 | #contact input[type="url"],
34 | #contact textarea,
35 | #contact button[type="submit"] {
36 | font: 400 12px/16px "Roboto", Helvetica, Arial, sans-serif;
37 | }
38 |
39 | #contact {
40 | background: #F9F9F9;
41 | padding: 25px;
42 | margin: 150px 0;
43 | box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);
44 | }
45 |
46 | #contact h3 {
47 | display: block;
48 | font-size: 30px;
49 | font-weight: 300;
50 | margin-bottom: 10px;
51 | }
52 |
53 | #contact h4 {
54 | margin: 5px 0 15px;
55 | display: block;
56 | font-size: 13px;
57 | font-weight: 400;
58 | }
59 |
60 | fieldset {
61 | border: medium none !important;
62 | margin: 0 0 10px;
63 | min-width: 100%;
64 | padding: 0;
65 | width: 100%;
66 | }
67 |
68 | #contact input[type="text"],
69 | #contact input[type="email"],
70 | #contact input[type="tel"],
71 | #contact input[type="url"],
72 | #contact textarea {
73 | width: 100%;
74 | border: 1px solid #ccc;
75 | background: #FFF;
76 | margin: 0 0 5px;
77 | padding: 10px;
78 | }
79 |
80 | #contact input[type="text"]:hover,
81 | #contact input[type="email"]:hover,
82 | #contact input[type="tel"]:hover,
83 | #contact input[type="url"]:hover,
84 | #contact textarea:hover {
85 | -webkit-transition: border-color 0.3s ease-in-out;
86 | -moz-transition: border-color 0.3s ease-in-out;
87 | transition: border-color 0.3s ease-in-out;
88 | border: 1px solid #aaa;
89 | }
90 |
91 | #contact textarea {
92 | height: 100px;
93 | max-width: 100%;
94 | resize: none;
95 | }
96 |
97 | #contact button[type="submit"] {
98 | cursor: pointer;
99 | width: 100%;
100 | border: none;
101 | background: rgb(241,234,217);
102 | color: #000000;
103 | margin: 0 0 5px;
104 | padding: 10px;
105 | font-size: 15px;
106 | }
107 |
108 | #contact button[type="submit"]:hover {
109 | background: #212121;
110 | color:#fff;
111 | transition: background-color 0.3s ease-in-out;
112 | }
113 |
114 | #contact button[type="submit"]:active {
115 | box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.5);
116 | }
117 |
118 | .copyright {
119 | text-align: center;
120 | }
121 |
122 | #contact input:focus,
123 | #contact textarea:focus {
124 | outline: 0;
125 | border: 1px solid #aaa;
126 | }
127 |
128 | ::-webkit-input-placeholder {
129 | color: #888;
130 | }
131 |
132 | :-moz-placeholder {
133 | color: #888;
134 | }
135 |
136 | ::-moz-placeholder {
137 | color: #888;
138 | }
139 |
140 | :-ms-input-placeholder {
141 | color: #888;
142 | }
143 |
144 | h3, h4{
145 | text-align: center;
146 | }
147 |
--------------------------------------------------------------------------------
/src/AboutUs.css:
--------------------------------------------------------------------------------
1 | h1,
2 | h2,
3 | h3,
4 | h4,
5 | h5,
6 | h6 {}
7 | a,
8 | a:hover,
9 | a:focus,
10 | a:active {
11 | text-decoration: none;
12 | outline: none;
13 | }
14 |
15 | a,
16 | a:active,
17 | a:focus {
18 | color: #6f6f6f;
19 | text-decoration: none;
20 | transition-timing-function: ease-in-out;
21 | -ms-transition-timing-function: ease-in-out;
22 | -moz-transition-timing-function: ease-in-out;
23 | -webkit-transition-timing-function: ease-in-out;
24 | -o-transition-timing-function: ease-in-out;
25 | transition-duration: .2s;
26 | -ms-transition-duration: .2s;
27 | -moz-transition-duration: .2s;
28 | -webkit-transition-duration: .2s;
29 | -o-transition-duration: .2s;
30 | }
31 |
32 | ul {
33 | margin: 0;
34 | padding: 0;
35 | list-style: none;
36 | }
37 | img {
38 | max-width: 100%;
39 | height: auto;
40 | }
41 | section {
42 | padding: 60px 0;
43 | }
44 |
45 | .sec-title{
46 | position:relative;
47 | z-index: 1;
48 | margin-bottom:60px;
49 | }
50 |
51 | .sec-title .title{
52 | position: relative;
53 | display: block;
54 | font-size: 18px;
55 | line-height: 24px;
56 | color: #ff2222;
57 | font-weight: 500;
58 | margin-bottom: 15px;
59 | }
60 |
61 | .sec-title h2{
62 | position: relative;
63 | display: block;
64 | font-size:40px;
65 | line-height: 1.28em;
66 | color: #222222;
67 | font-weight: 600;
68 | padding-bottom:18px;
69 | }
70 |
71 | .sec-title h2:before{
72 | position:absolute;
73 | content:'';
74 | left:0px;
75 | bottom:0px;
76 | width:50px;
77 | height:3px;
78 | background-color:#d1d2d6;
79 | }
80 |
81 | .sec-title .text{
82 | position: relative;
83 | font-size: 16px;
84 | line-height: 26px;
85 | color: #848484;
86 | font-weight: 400;
87 | margin-top: 35px;
88 | }
89 |
90 | .sec-title.light h2{
91 | color: #ffffff;
92 | }
93 |
94 | .sec-title.text-center h2:before{
95 | left:50%;
96 | margin-left: -25px;
97 | }
98 |
99 | .list-style-one{
100 | position:relative;
101 | }
102 |
103 | .list-style-one li{
104 | position:relative;
105 | font-size:16px;
106 | line-height:26px;
107 | color: #222222;
108 | font-weight:400;
109 | padding-left:35px;
110 | margin-bottom: 12px;
111 | }
112 |
113 | .list-style-one li:before {
114 | content: "\f058";
115 | position: absolute;
116 | left: 0;
117 | top: 0px;
118 | display: block;
119 | font-size: 18px;
120 | padding: 0px;
121 | text-align: center;
122 | font-weight: 600;
123 | -moz-font-smoothing: grayscale;
124 | -webkit-font-smoothing: antialiased;
125 | font-style: normal;
126 | font-variant: normal;
127 | text-rendering: auto;
128 | line-height: 1.6;
129 | font-family: "Font Awesome 5 Free";
130 | }
131 |
132 | .list-style-one li a:hover{
133 | color: #44bce2;
134 | }
135 |
136 | .btn-style-one{
137 | position: relative;
138 | display: inline-block;
139 | font-size: 17px;
140 | line-height: 30px;
141 | color: #ffffff;
142 | padding: 10px 30px;
143 | font-weight: 600;
144 | overflow: hidden;
145 | letter-spacing: 0.02em;
146 | background-color: #ff2222;
147 | }
148 |
149 | .btn-style-one:hover{
150 | background-color: #001e57;
151 | color: #ffffff;
152 | }
153 | .about-section{
154 | position: relative;
155 | padding: 120px 0 70px;
156 | }
157 |
158 | .about-section .sec-title{
159 | margin-bottom: 45px;
160 | }
161 |
162 | .about-section .content-column{
163 | position: relative;
164 | margin-bottom: 50px;
165 | }
166 |
167 | .about-section .content-column .inner-column{
168 | position: relative;
169 | padding-left: 30px;
170 | }
171 |
172 | .about-section .text{
173 | margin-bottom: 40px;
174 | font-size: 16px;
175 | line-height: 26px;
176 | color: #848484;
177 | font-weight: 400;
178 | }
179 |
180 | .about-section .list-style-one{
181 | margin-bottom: 45px;
182 | }
183 |
184 | .about-section .btn-box{
185 | position: relative;
186 | }
187 |
188 | .about-section .btn-box a{
189 | padding: 15px 50px;
190 | }
191 |
192 | .about-section .image-column{
193 | position: relative;
194 | }
195 |
196 | .about-section .image-column .text-layer{
197 | position: absolute;
198 | right: -110px;
199 | top: 50%;
200 | font-size: 325px;
201 | line-height: 1em;
202 | color: #ffffff;
203 | margin-top: -175px;
204 | font-weight: 500;
205 | }
206 |
207 | .about-section .image-column .inner-column{
208 | position: relative;
209 | padding-left: 120px;
210 | padding-bottom: 125px;
211 | }
212 |
213 | .about-section .image-column .inner-column:before{
214 | position: absolute;
215 | left: -75px;
216 | top: 65px;
217 | height: 520px;
218 | width: 520px;
219 | background-image:url(https://i.ibb.co/fxJ1jtC/about-circle-1.png);
220 | content: "";
221 | }
222 |
223 | .about-section .image-column .image-1{
224 | position: relative;
225 | }
226 |
227 | .about-section .image-column .image-2{
228 | position: absolute;
229 | left: 0;
230 | bottom: 0;
231 | }
232 |
233 | .about-section .image-column .image-2 img,
234 | .about-section .image-column .image-1 img{
235 | box-shadow: 0 30px 50px rgba(8,13,62,.15);
236 | }
237 |
238 | .about-section .image-column .video-link{
239 | position: absolute;
240 | left: 70px;
241 | top: 170px;
242 | }
243 |
244 | .about-section .image-column .video-link .link{
245 | position: relative;
246 | display: block;
247 | font-size: 22px;
248 | color: #191e34;
249 | font-weight: 400;
250 | text-align: center;
251 | height: 100px;
252 | width: 100px;
253 | line-height: 100px;
254 | background-color: #ffffff;
255 | border-radius: 50%;
256 | box-shadow: 0 30px 50px rgba(8,13,62,.15);
257 | -webkit-transition: all 300ms ease;
258 | -moz-transition: all 300ms ease;
259 | -ms-transition: all 300ms ease;
260 | -o-transition: all 300ms ease;
261 | transition: all 300ms ease;
262 | }
263 |
264 | .about-section .image-column .video-link .link:hover{
265 | background-color: #191e34;
266 | color: #fff;
267 | }
268 |
--------------------------------------------------------------------------------
/src/data.js:
--------------------------------------------------------------------------------
1 | import an1 from './an1.webp';
2 | import an2 from './an2.png';
3 | import an3 from './an3.png';
4 | import an4 from './an4.webp';
5 | import an5 from './an5.jpg';
6 | import an6 from './an6.png';
7 | import an7 from './an7.png';
8 | import pen1 from './pen1.png';
9 | import pen2 from './pen2.webp';
10 | import pen3 from './pen3.png';
11 | import pen4 from './pen4.webp';
12 | import pen5 from './pen5.png';
13 | import pen6 from './pen6.png';
14 | import pen7 from './pen7.png';
15 | import pul1 from './pul1.png';
16 | import pul2 from './pul2.png';
17 | import pul3 from './pul3.png';
18 | import pul4 from './pul4.png';
19 | import pul5 from './pul5.png';
20 | import pul6 from './pul6.jpg';
21 | import pul7 from './pul7.png';
22 |
23 | export const data = [
24 |
25 | {
26 |
27 | id: 1,
28 |
29 | name: "ANILLO NEW BERN",
30 |
31 | searchTerm: "anillo",
32 |
33 | price: 2500,
34 |
35 | showMore: false,
36 | description: "Anillo de oro blanco de 18 quilates con esmeralda verde central en talla esmeralda de 1,18 quilates y 32 diamantes en talla redonda con un peso total de 0,38 quilates. ",
37 |
38 | image: an1
39 | },
40 |
41 | {
42 |
43 | id: 2,
44 |
45 | name: "PENDIENTES DE GRANDES ESPERANZAS",
46 |
47 | searchTerm: "pendientes",
48 |
49 | price: 2100,
50 | showMore: false,
51 | description: "Pendientes de oro blanco de 18 quilates con 2 zafiros azules en talla redonda con un peso total de 0,47 quilates y 16 diamantes blancos en talla redonda con un peso total de 0,45 quilates. ",
52 |
53 | image: pen1
54 |
55 | },
56 |
57 |
58 |
59 | {
60 |
61 | id: 3,
62 |
63 | name: "PULSERA RIVIERE",
64 |
65 | searchTerm: "pulsera",
66 |
67 | price: 1900,
68 | showMore: false,
69 | description: "Pulsera de oro blanco de 18 quilates con corazón de diamantes talla brillante con un total de 0,06 quilates. ",
70 |
71 | image: pul1
72 |
73 | },
74 |
75 |
76 |
77 | {
78 |
79 | id: 4,
80 |
81 | name: "ANILLO ROMERIA",
82 |
83 | searchTerm: "anillo",
84 |
85 | price: 3400,
86 | showMore: false,
87 | description: "Anillo de oro blanco de 18 quilates con esmeralda verde central en talla esmeralda de 1,18 quilates y 32 diamantes en talla redonda con un peso total de 0,38 quilates. ",
88 |
89 | image: an2
90 |
91 | },
92 |
93 |
94 |
95 | {
96 |
97 | id: 5,
98 |
99 | name: "PENDIENTES DE GRACE",
100 |
101 | searchTerm: "pendientes",
102 |
103 | price: 1650,
104 | showMore: false,
105 | description: "Pendientes de oro blanco de 18 quilates con 2 zafiros azules en talla redonda con un peso total de 0,47 quilates y 16 diamantes blancos en talla redonda con un peso total de 0,45 quilates. ",
106 |
107 | image: pen2
108 |
109 | },
110 |
111 | {
112 |
113 | id: 6,
114 |
115 | name: "PULSERA LA DECO",
116 |
117 | searchTerm: "pulsera",
118 |
119 | price: 2600,
120 | showMore: false,
121 | description: "Pulsera de oro blanco de 18 quilates con corazón de diamantes talla brillante con un total de 0,06 quilates. ",
122 |
123 | image: pul2
124 |
125 | },
126 |
127 | {
128 |
129 | id: 7,
130 |
131 | name: "ANILLO DE VERIS",
132 |
133 | searchTerm: "anillo",
134 |
135 | price: 2100,
136 | showMore: false,
137 | description: "Anillo de oro blanco de 18 quilates con esmeralda verde central en talla esmeralda de 1,18 quilates y 32 diamantes en talla redonda con un peso total de 0,38 quilates. ",
138 |
139 | image: an3
140 |
141 | },
142 |
143 | {
144 |
145 | id: 8,
146 |
147 | name: "PENDIENTES DE IDALIA",
148 |
149 | searchTerm: "pendientes",
150 |
151 | price: 3500,
152 | showMore: false,
153 | description: " Pendientes de oro blanco de 18 quilates con 2 zafiros azules en talla redonda con un peso total de 0,47 quilates y 16 diamantes blancos en talla redonda con un peso total de 0,45 quilates.",
154 |
155 | image: pen3
156 |
157 | },
158 |
159 | {
160 |
161 | id: 9,
162 |
163 | name: "PULSERA DE IDALIA",
164 |
165 | searchTerm: "pulsera",
166 |
167 | price: 6000,
168 | showMore: false,
169 | description: "Pulsera de oro blanco de 18 quilates con corazón de diamantes talla brillante con un total de 0,06 quilates. ",
170 |
171 | image: pul3
172 |
173 | },
174 |
175 | {
176 |
177 | id: 10,
178 |
179 | name: "ANILLO DE IDALIA",
180 |
181 | searchTerm: "anillo",
182 |
183 | price: 1200,
184 | showMore: false,
185 | description: " Anillo de oro blanco de 18 quilates con esmeralda verde central en talla esmeralda de 1,18 quilates y 32 diamantes en talla redonda con un peso total de 0,38 quilates.",
186 |
187 | image: an4
188 |
189 | },
190 |
191 | {
192 |
193 | id: 11,
194 |
195 | name: "PENDIENTES DE GERIAS",
196 |
197 | searchTerm: "pendientes",
198 |
199 | price: 9500,
200 | showMore: false,
201 | description: " Pendientes de oro blanco de 18 quilates con 2 zafiros azules en talla redonda con un peso total de 0,47 quilates y 16 diamantes blancos en talla redonda con un peso total de 0,45 quilates.",
202 |
203 | image: pen4
204 |
205 | },
206 |
207 | {
208 |
209 | id: 12,
210 |
211 | name: "PULSERA DE GRACE",
212 |
213 | searchTerm: "pulsera",
214 |
215 | price: 7500,
216 | showMore: false,
217 | description: "Pulsera de oro blanco de 18 quilates con corazón de diamantes talla brillante con un total de 0,06 quilates. ",
218 |
219 | image: pul4
220 |
221 | },
222 |
223 | {
224 |
225 | id: 13,
226 |
227 | name: "ANILLO DE ORION",
228 |
229 | searchTerm: "anillo",
230 |
231 | price: 1400,
232 | showMore: false,
233 | description: "Anillo de oro blanco de 18 quilates con esmeralda verde central en talla esmeralda de 1,18 quilates y 32 diamantes en talla redonda con un peso total de 0,38 quilates. ",
234 |
235 | image: an5
236 |
237 | },
238 |
239 | {
240 |
241 | id: 14,
242 |
243 | name: "PENDIENTES DE VERIS",
244 |
245 | searchTerm: "pendientes",
246 |
247 | price: 9000,
248 | showMore: false,
249 | description: "Pendientes de oro blanco de 18 quilates con 2 zafiros azules en talla redonda con un peso total de 0,47 quilates y 16 diamantes blancos en talla redonda con un peso total de 0,45 quilates. ",
250 |
251 | image: pen5
252 |
253 | },
254 |
255 | {
256 |
257 | id: 15,
258 |
259 | name: "PULSERA DE ORION",
260 |
261 | searchTerm: "pulsera",
262 |
263 | price: 3200,
264 | showMore: false,
265 | description: " Pulsera de oro blanco de 18 quilates con corazón de diamantes talla brillante con un total de 0,06 quilates.",
266 |
267 | image: pul5
268 |
269 | },
270 |
271 | {
272 |
273 | id: 16,
274 |
275 | name: "ANILLO DE ORION",
276 |
277 | searchTerm: "anillo",
278 |
279 | price: 1400,
280 | showMore: false,
281 | description: "Anillo de oro blanco de 18 quilates con esmeralda verde central en talla esmeralda de 1,18 quilates y 32 diamantes en talla redonda con un peso total de 0,38 quilates. ",
282 |
283 | image: an6
284 |
285 | },
286 |
287 | {
288 |
289 | id: 17,
290 |
291 | name: "PENDIENTES DE VERIS",
292 |
293 | searchTerm: "pendientes",
294 |
295 | price: 9000,
296 | showMore: false,
297 | description: " Pendientes de oro blanco de 18 quilates con 2 zafiros azules en talla redonda con un peso total de 0,47 quilates y 16 diamantes blancos en talla redonda con un peso total de 0,45 quilates.",
298 |
299 | image: pen6
300 |
301 | },
302 |
303 | {
304 |
305 | id: 18,
306 |
307 | name: "PULSERA DE ORION",
308 |
309 | searchTerm: "pulsera",
310 |
311 | price: 3200,
312 | showMore: false,
313 | description: "Pulsera de oro blanco de 18 quilates con corazón de diamantes talla brillante con un total de 0,06 quilates. ",
314 |
315 | image: pul6
316 |
317 | },
318 |
319 | {
320 |
321 | id: 19,
322 |
323 | name: "ANILLO DE ORION",
324 |
325 | searchTerm: "anillo",
326 | showMore: false,
327 | description: "Anillo de oro blanco de 18 quilates con esmeralda verde central en talla esmeralda de 1,18 quilates y 32 diamantes en talla redonda con un peso total de 0,38 quilates. ",
328 |
329 | price: 1400,
330 |
331 | image: an7
332 |
333 | },
334 |
335 | {
336 |
337 | id: 20,
338 |
339 | name: "PENDIENTES DE VERIS",
340 |
341 | searchTerm: "pendientes",
342 |
343 | price: 9000,
344 | showMore: false,
345 | description: "Pendientes de oro blanco de 18 quilates con 2 zafiros azules en talla redonda con un peso total de 0,47 quilates y 16 diamantes blancos en talla redonda con un peso total de 0,45 quilates. ",
346 |
347 | image: pen7
348 |
349 | },
350 |
351 | {
352 |
353 | id: 21,
354 |
355 | name: "PULSERA DE ORION",
356 |
357 | searchTerm: "pulsera",
358 |
359 | price: 3200,
360 | showMore: false,
361 | description: "Pulsera de oro blanco de 18 quilates con corazón de diamantes talla brillante con un total de 0,06 quilates. ",
362 |
363 | image: pul7
364 |
365 | }
366 | ]
367 |
368 |
--------------------------------------------------------------------------------