diff --git a/package-lock.json b/package-lock.json index 8745266..7f3bcfa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,6 +12,7 @@ "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", "antd": "^5.21.2", + "lucide-react": "^0.454.0", "react": "^18.3.1", "react-dom": "^18.3.1", "react-router-dom": "^6.26.2", @@ -13858,6 +13859,15 @@ "yallist": "^3.0.2" } }, + "node_modules/lucide-react": { + "version": "0.454.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.454.0.tgz", + "integrity": "sha512-hw7zMDwykCLnEzgncEEjHeA6+45aeEzRYuKHuyRSOPkhko+J3ySGjGIzu+mmMfDFG1vazHepMaYFYHbTFAZAAQ==", + "license": "ISC", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc" + } + }, "node_modules/lz-string": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz", diff --git a/package.json b/package.json index 3b9ae8a..91d4c3f 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,7 @@ "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", "antd": "^5.21.2", + "lucide-react": "^0.454.0", "react": "^18.3.1", "react-dom": "^18.3.1", "react-router-dom": "^6.26.2", diff --git a/src/assets/images/sklad.jpg b/src/assets/images/sklad.jpg new file mode 100644 index 0000000..ea07f22 Binary files /dev/null and b/src/assets/images/sklad.jpg differ diff --git a/src/components/Carusel.js b/src/components/Carusel.js new file mode 100644 index 0000000..1064b22 --- /dev/null +++ b/src/components/Carusel.js @@ -0,0 +1,56 @@ +// components/SimpleCarousel.jsx +import React, { useState, useEffect } from 'react'; +import { ChevronLeft, ChevronRight } from 'lucide-react'; + +const SimpleCarousel = () => { + const brands = [ + "Caterpillar", "Komatsu", "Cummins", "Hitachi", "Liebherr", + "Shantui", "Shacman", "Shaanxi", "Howo", "Volvo", + "John Deere", "Atlas Copco/Epiroc" + ]; + + const [current, setCurrent] = useState(0); + + const next = () => { + setCurrent(current === brands.length - 1 ? 0 : current + 1); + }; + + const prev = () => { + setCurrent(current === 0 ? brands.length - 1 : current - 1); + }; + + useEffect(() => { + const timer = setInterval(next, 3000); + return () => clearInterval(timer); + }, [current]); + + return ( +