diff --git a/kivi-cars/package-lock.json b/kivi-cars/package-lock.json
index bade6b5..703494a 100644
--- a/kivi-cars/package-lock.json
+++ b/kivi-cars/package-lock.json
@@ -13,6 +13,7 @@
"@testing-library/user-event": "^13.5.0",
"react": "^17.0.2",
"react-dom": "^17.0.2",
+ "react-hook-form": "^7.29.0",
"react-router-dom": "^6.2.2",
"react-scripts": "5.0.0",
"web-vitals": "^2.1.4"
@@ -13172,6 +13173,21 @@
"resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.10.tgz",
"integrity": "sha512-mKR90fX7Pm5seCOfz8q9F+66VCc1PGsWSBxKbITjfKVQHMNF2zudxHnMdJiB1fRCb+XsbQV9sO9DCkgsMQgBIA=="
},
+ "node_modules/react-hook-form": {
+ "version": "7.29.0",
+ "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.29.0.tgz",
+ "integrity": "sha512-NcJqWRF6el5HMW30fqZRt27s+lorvlCCDbTpAyHoodQeYWXgQCvZJJQLC1kRMKdrJknVH0NIg3At6TUzlZJFOQ==",
+ "engines": {
+ "node": ">=12.22.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/react-hook-form"
+ },
+ "peerDependencies": {
+ "react": "^16.8.0 || ^17 || ^18"
+ }
+ },
"node_modules/react-is": {
"version": "17.0.2",
"resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
@@ -25388,6 +25404,12 @@
"resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.10.tgz",
"integrity": "sha512-mKR90fX7Pm5seCOfz8q9F+66VCc1PGsWSBxKbITjfKVQHMNF2zudxHnMdJiB1fRCb+XsbQV9sO9DCkgsMQgBIA=="
},
+ "react-hook-form": {
+ "version": "7.29.0",
+ "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.29.0.tgz",
+ "integrity": "sha512-NcJqWRF6el5HMW30fqZRt27s+lorvlCCDbTpAyHoodQeYWXgQCvZJJQLC1kRMKdrJknVH0NIg3At6TUzlZJFOQ==",
+ "requires": {}
+ },
"react-is": {
"version": "17.0.2",
"resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
diff --git a/kivi-cars/src/components/Button/StandardBtn.js b/kivi-cars/src/components/Button/StandardBtn.js
index 919232b..c9a664b 100644
--- a/kivi-cars/src/components/Button/StandardBtn.js
+++ b/kivi-cars/src/components/Button/StandardBtn.js
@@ -1,19 +1,21 @@
+import React from 'react'
import './button.css'
const StandardBtn = (props) => {
- const {filtersData, setFiltersData, filter} = props.data
+ const {setData, filter} = props.data
const clickHandler = ( e ) => {
- setFiltersData(prevData => ({
- ...prevData,
- [e.target.name]: e.target.value
+ setData( prevState => ({
+ ...prevState,
+ "Category":{
+ [e.target.name]: e.target.value
+ }
}))
}
return (
-
)
diff --git a/kivi-cars/src/components/ButtonsToolbar/ButtonsToolbar.js b/kivi-cars/src/components/ButtonsToolbar/ButtonsToolbar.js
index e127755..0160e8f 100644
--- a/kivi-cars/src/components/ButtonsToolbar/ButtonsToolbar.js
+++ b/kivi-cars/src/components/ButtonsToolbar/ButtonsToolbar.js
@@ -1,7 +1,7 @@
import './ButtonsToolbar.css';
import { Link } from 'react-router-dom'
import ArrowLeft from '../Button/leftBtn';
-import ArrowRigh from '../Button/rightBtn';
+// import ArrowRigh from '../Button/rightBtn';
const ButtonsToolbar = (props) => {
@@ -12,12 +12,12 @@ const ButtonsToolbar = (props) => {
- */}
)
}
diff --git a/kivi-cars/src/components/CategoryBtns/categorybtns.js b/kivi-cars/src/components/CategoryBtns/categorybtns.js
index 5178413..2ab1f07 100644
--- a/kivi-cars/src/components/CategoryBtns/categorybtns.js
+++ b/kivi-cars/src/components/CategoryBtns/categorybtns.js
@@ -1,6 +1,7 @@
import './categorybtns.css'
import StandardBtn from '../Button/StandardBtn'
import { Link } from 'react-router-dom';
+import { useEffect, useState } from 'react';
const CategoryBtns = (props) => {
@@ -10,16 +11,20 @@ const CategoryBtns = (props) => {
let kamion = 'Kamion';
let filter = 'Vozilo'
- const {filtersData, setFiltersData} = props.data;
+ const {data, setData} = props.data;
return (
-
+
+
+
+
+
+
+
-
-
)
diff --git a/kivi-cars/src/components/Filters/Advanced-filters.js b/kivi-cars/src/components/Filters/Advanced-filters.js
index 25ad906..324f955 100644
--- a/kivi-cars/src/components/Filters/Advanced-filters.js
+++ b/kivi-cars/src/components/Filters/Advanced-filters.js
@@ -1,6 +1,8 @@
import React from "react";
import "./Filters.css";
import Filter from "./Filter/Filter";
+import TitleBtn from "../Button/TitleBtn";
+import {Link} from 'react-router-dom';
import Color from '../../data/color';
import AirCondition from "../../data/air-condition";
import Seats from "../../data/seats";
@@ -13,8 +15,8 @@ import CheckBox from "../../data/checkbox";
const AdvancedFilters = (props) => {
- const {filtersData, setFiltersData} = props.data
- const data = [Color, AirCondition, Seats, Gearbox, Sensors, Lights]
+ const {filters, setFilters} = props.data
+ const data1 = [Color, AirCondition, Seats, Gearbox, Sensors, Lights]
let index = 0
@@ -22,10 +24,10 @@ const AdvancedFilters = (props) => {
{
- data.map(item => {
+ data1.map(item => {
index += 1;
return(
-
+
)
})
}
@@ -35,11 +37,17 @@ const AdvancedFilters = (props) => {
CheckBox.map(item => {
index += 1;
return(
-
+
)
})
}
+
+
+
+
+
+
)
}
diff --git a/kivi-cars/src/components/Filters/Filter/Checkbox.js b/kivi-cars/src/components/Filters/Filter/Checkbox.js
index 04541c3..ec91239 100644
--- a/kivi-cars/src/components/Filters/Filter/Checkbox.js
+++ b/kivi-cars/src/components/Filters/Filter/Checkbox.js
@@ -1,15 +1,15 @@
-import React, { useEffect, useState } from "react";
-import './Checkbox.css';
+import React, { useState } from "react";
+import './css/Checkbox.css';
const Checkbox = (props) => {
- const {filtersData, setFiltersData} = props.data
- const [isChecked, setIsChecked] = useState(false)
+ const {setFilters} = props.data
+ const [isChecked, setIsChecked] = useState(true)
const changeHandler = ( event ) => {
- setFiltersData(prevData => ({
+ setFilters(prevData => ({
...prevData,
[event.target.name]: isChecked
}))
diff --git a/kivi-cars/src/components/Filters/Filter/DoubleFilter.js b/kivi-cars/src/components/Filters/Filter/DoubleFilter.js
index 3bf64e2..8686107 100644
--- a/kivi-cars/src/components/Filters/Filter/DoubleFilter.js
+++ b/kivi-cars/src/components/Filters/Filter/DoubleFilter.js
@@ -1,21 +1,20 @@
import React, {useEffect, useState} from "react";
-import "./DoubleFilter.css";
+import "./css/DoubleFilter.css";
const DoubleFilter = (props) => {
- const defaultV = 0
- const {filtersData, setFiltersData} = props.data
+ const {setFilters} = props.data
const [doubleFilterData, setDoubleFilterData] = useState({})
const changeHandler = ( e ) => {
setDoubleFilterData(prevData => ({
...prevData,
- [e.target.name]: e.target.value
+ [e.target.name]: e.target.value
}))
}
useEffect(() => {
- setFiltersData(prevData => ({
+ setFilters(prevData => ({
...prevData,
[props.title]: doubleFilterData
}))
@@ -31,7 +30,7 @@ const DoubleFilter = (props) => {
- changeHandler(e)}/>
+ changeHandler(e)}/>
diff --git a/kivi-cars/src/components/Filters/Filter/Filter.js b/kivi-cars/src/components/Filters/Filter/Filter.js
index 3c0381e..c1e9cce 100644
--- a/kivi-cars/src/components/Filters/Filter/Filter.js
+++ b/kivi-cars/src/components/Filters/Filter/Filter.js
@@ -1,21 +1,22 @@
-import React from "react";
-import './Filter.css';
+import React, { useEffect, useState } from "react";
+import './css/Filter.css';
const Filter = (props) => {
- const {filtersData, setFiltersData} = props.data
+ const {filters, setFilters} = props.data
+ const [filtersData, setFiltersData] = useState({})
- const changeHandler = ( event ) => {
- setFiltersData( prevData => ({
+ const changeHandler = ( e ) => {
+ setFilters( prevData => ({
...prevData,
- [event.target.name]: event.target.value
+ [e.target.name]: e.target.value
}))
}
return(
-
-
-
+
+