diff --git a/app/[locale]/products/page.tsx b/app/[locale]/products/page.tsx index 007ade3..ee408ba 100644 --- a/app/[locale]/products/page.tsx +++ b/app/[locale]/products/page.tsx @@ -1,10 +1,14 @@ +"use client" import { ProductBanner, Products } from "@/components/pages/products"; +import { useSearchParams } from "next/navigation"; export default function Page() { + const searchParams = useSearchParams() + const category = searchParams.get("category"); return (
- +
); } diff --git a/components/backAnimatsiya/backAnimatsiya.tsx b/components/backAnimatsiya/backAnimatsiya.tsx index eeec628..0ac2c6a 100644 --- a/components/backAnimatsiya/backAnimatsiya.tsx +++ b/components/backAnimatsiya/backAnimatsiya.tsx @@ -2,7 +2,7 @@ import "./back.css"; export default function BackAnimatsiya() { return ( -
+
+
{/* Header */}
@@ -53,57 +26,16 @@ export function Blog() {
{/* Blog Cards Grid */} -
- {/* {blogPosts.map((post) => ( - - ))} */} - {Array(3) - .fill(null) - .map((_, index) => ( - - ))} +
+ {ProductCatalog.map((item, index) => ( + + ))}
diff --git a/components/pages/products/catalog.tsx b/components/pages/products/catalog.tsx new file mode 100644 index 0000000..63fa157 --- /dev/null +++ b/components/pages/products/catalog.tsx @@ -0,0 +1,133 @@ +// import { useTranslations } from "next-intl"; +// import Image from "next/image"; +// import Link from "next/link"; + +// interface CatalogProps { +// image: string; +// title: string; +// slug: string; +// description: string; +// id:string; +// } + +// export default function CatalogCard({ +// image, +// title, +// slug, +// description, +// id, +// }: CatalogProps) { +// const t = useTranslations(); +// return ( +// +//
+//

+// {title} +//

+//

+// {t(`${description}`)} +//

+// image +//
+// +// ); +// } + +// bg-[#444242] +"use client"; +import { useLocale, useTranslations } from "next-intl"; +import Image from "next/image"; +import Link from "next/link"; +import { ArrowUpRight } from "lucide-react"; + +interface CatalogProps { + id: string; + image: string; + title: string; + description: string; +} + +export default function CatalogCard({ + image, + title, + description, + id, +}: CatalogProps) { + const t = useTranslations(); + const locale = useLocale(); + console.log("category id: ", id); + + return ( + + {/* Background glow effect */} +
+ + {/* Decorative corner accent */} +
+ + {/* Content container */} +
+ {/* Title section */} +
+
+

+ {title} +

+
+ +
+
+ + {/* Description */} +

+ {t(description)} +

+
+ + {/* Image container with elegant frame */} +
+ {/* Animated gradient overlay */} +
+ + {/* Image */} +
+ {title} +
+ + {/* Hover shimmer effect */} + {/*
+
+
*/} +
+ + {/* Bottom accent bar */} +
+
+ + {/* Subtle noise texture overlay */} +
+ + ); +} diff --git a/components/pages/products/productCard.tsx b/components/pages/products/productCard.tsx index c12051a..38a3d00 100644 --- a/components/pages/products/productCard.tsx +++ b/components/pages/products/productCard.tsx @@ -2,41 +2,23 @@ import Image from "next/image"; import Link from "next/link"; -import { ArrowRight } from "lucide-react"; interface ProductCardProps { title: string; - name: string; image: string; slug: string; - status: "full" | "empty" | "withOrder"; } export default function ProductCard({ title, - name, image, slug, - status, }: ProductCardProps) { - const statusColor = - status === "full" - ? "text-green-500" - : status === "empty" - ? "text-red-600" - : "text-yellow-800"; - - const statusText = - status === "full" - ? "Sotuvda mavjud" - : status === "empty" - ? "Sotuvda qolmagan" - : "Buyurtma asosida"; return (
{/* Image Container */} -
+
{title} {/* Title */} -

+

{title}

- - {/* Meta Information */} -
- {name} - {statusText} -
- - {/* Read More Link */} - - Read More - -
diff --git a/components/pages/products/products.tsx b/components/pages/products/products.tsx index b70c960..1145797 100644 --- a/components/pages/products/products.tsx +++ b/components/pages/products/products.tsx @@ -1,31 +1,45 @@ +import { ca, lede, slt } from "@/lib/demoData"; import Filter from "./filter"; import FilterInfo from "./filterInfo"; import ProductCard from "./productCard"; -export function Products() { +// slt , ca , lede + +export function Products({ categoryName }: { categoryName: string | null }) { + console.log("category name: ",categoryName) + const getProducts = () => { + switch (categoryName) { + case "slt": + return slt; + case "ca": + return ca; + case "lede": + return lede; + default: + return [...slt, ...ca, ...lede]; + } + }; + + const products = getProducts(); return (
{/* filter part */} - + {/* main products */}
- {Array(9) - .fill(null) - .map((_, index) => ( - - ))} + {products.map((item, index) => ( + + ))}
- +
diff --git a/lib/demoData.ts b/lib/demoData.ts index 8ef646a..b31156a 100644 --- a/lib/demoData.ts +++ b/lib/demoData.ts @@ -1,4 +1,3 @@ - export const DATA = [ { name: "P-0834405", @@ -67,4 +66,100 @@ export const faqItems = [ answer: "Candidates must be at least 18 years old, have a high school diploma or GED, possess a valid drivers license, and pass a background check and medical examination. Physical fitness is essential, and candidates must pass the Candidate Physical Ability Test (CPAT).", }, -]; \ No newline at end of file +]; + +export const ProductCatalog = [ + { + id: "slt", + slug: "slt_blockfire", + title: "SLT Blockfire", + description: "products.catalog.blockdescription", + image: "/images/products/category/slt.png", + }, + { + id: "ca", + slug: "ca_fire_mech", + title: "CA-FIRE | MECH", + description: "products.catalog.cadescription", + image: "/images/products/category/ca.png", + }, + { + id: "lede", + slug: "lede", + title: "LEDE", + description: "products.catalog.lededescription", + image: "/images/products/category/lede.png", + }, +]; + +export const slt = [ + { + id: 1, + slug: "slt_bir_qavatli_quvr", + name: "Bir qavatli PP-R quvuri (SDR 6) SLT BLOCKFIRE", + description: "", + image: "/images/products/slt/slt_blackfirebittalik-removebg-preview.png", + }, + { + id: 2, + slug: "slt_yonginga_qarshi_45_burilish", + name: "Yong‘inga qarshi polipropilenli 45° burilish", + description: "", + image: "/images/products/slt/slt_blackfireburilish-removebg-preview.png", + }, + { + id: 3, + slug: "slt_otish_nuftasi", + name: "SLT BLOCKFIRE PP-R o'tish muftasi BxH", + description: "", + image: "/images/products/slt/slt_blackfireperexodnaya-removebg-preview.png", + }, +]; + +export const ca = [ + { + id: 1, + slug: "takozli_eshik_klapan", + name: "Takozli eshik klapanlari", + description: "", + image: "/images/products/ca/zadviji-removebg-preview.png", + }, + { + id: 2, + slug: "takozli_eshik_klapan", + name: "Bosim Regulyatorlari", + description: "", + image: "/images/products/ca/regulyator-removebg-preview.png", + }, + { + id: 3, + slug: "vites_kapalak_klapan", + name: "Vites qutisi bilan kapalak klapanlar", + description: "", + image: "/images/products/ca/zatvori-removebg-preview.png", + }, +]; + +export const lede = [ + { + id: 1, + slug: "tishli_tirsak", + name: "Tishli tirsak 3j", + description: "", + image: "/images/products/lede/atvot_rezbavoy-removebg-preview.png", + }, + { + id: 2, + slug: "yivli_flanes", + name: "PN16 321 bo'lingan yivli birlashma flanesi", + description: "", + image: "/images/products/lede/flanes_nakidnoy-removebg-preview.png", + }, + { + id: 2, + slug: "qisqartiruvchi_tee", + name: "130R o'yilgan qisqartiruvchi tee", + description: "", + image: "/images/products/lede/troynik_perexadnoy-removebg-preview.png", + }, +]; diff --git a/messages/en.json b/messages/en.json index 623a371..009a4c0 100644 --- a/messages/en.json +++ b/messages/en.json @@ -146,6 +146,11 @@ } }, "products": { + "catalog": { + "blockdescription": "Polypropylene pipes and fittings for automatic fire suppression systems and internal fire water supply", + "cadescription": "Equipment for automatic fire suppression", + "lededescription": "Weld-free coupling connections for installation of water pipelines of any purpose" + }, "banner": { "title": "Products", "subtitle": "Ignum Technology Ready", diff --git a/messages/ru.json b/messages/ru.json index 1e88bc7..115bcd4 100644 --- a/messages/ru.json +++ b/messages/ru.json @@ -146,6 +146,11 @@ } }, "products": { + "catalog": { + "blockdescription": "Полипропиленовые трубы и фитинги для систем автоматического пожаротушения и внутреннего противопожарного водопровода", + "cadescription": "Оборудование для автоматического пожаротушения", + "lededescription": "Безсварные муфтовые соединения для монтажа водяных трубопроводов любого назначения" + }, "banner": { "title": "Продукты", "subtitle": "Технология Ignum Готова", diff --git a/messages/uz.json b/messages/uz.json index dd9d092..796a519 100644 --- a/messages/uz.json +++ b/messages/uz.json @@ -146,6 +146,11 @@ } }, "products": { + "catalog": { + "blockdescription": "Avtomatik yong‘in o‘chirish tizimlari va ichki yong‘inga qarshi suv ta’minoti uchun polipropilen quvurlar va fitinglar", + "cadescription": "Avtomatik yong‘in o‘chirish uchun uskunalar", + "lededescription": "Har qanday maqsaddagi suv quvurlarini o‘rnatish uchun payvandsiz muftali ulanishlar" + }, "banner": { "title": "Mahsulotlar", "subtitle": "Ignum Texnologiyasi Tayyor", @@ -222,6 +227,6 @@ "fotogalereya": "Fotogalereya", "contactTitle": "Bizga raqamingizni yuboring", "contactSubTitle": "Xodimlarimiz siz bilan bog'lanishadi", - "enterPhone":"Telefon raqamingiz kiriting", - "send":"Yuborish" + "enterPhone": "Telefon raqamingiz kiriting", + "send": "Yuborish" } diff --git a/public/images/products/ca/regulyator-removebg-preview.png b/public/images/products/ca/regulyator-removebg-preview.png new file mode 100644 index 0000000..ca683f3 Binary files /dev/null and b/public/images/products/ca/regulyator-removebg-preview.png differ diff --git a/public/images/products/ca/zadviji-removebg-preview.png b/public/images/products/ca/zadviji-removebg-preview.png new file mode 100644 index 0000000..2b474bf Binary files /dev/null and b/public/images/products/ca/zadviji-removebg-preview.png differ diff --git a/public/images/products/ca/zatvori-removebg-preview.png b/public/images/products/ca/zatvori-removebg-preview.png new file mode 100644 index 0000000..20dadf3 Binary files /dev/null and b/public/images/products/ca/zatvori-removebg-preview.png differ diff --git a/public/images/products/category/ca.png b/public/images/products/category/ca.png new file mode 100644 index 0000000..1391b73 Binary files /dev/null and b/public/images/products/category/ca.png differ diff --git a/public/images/products/category/lede.png b/public/images/products/category/lede.png new file mode 100644 index 0000000..ca99f7b Binary files /dev/null and b/public/images/products/category/lede.png differ diff --git a/public/images/products/category/slt.png b/public/images/products/category/slt.png new file mode 100644 index 0000000..3aa5dc5 Binary files /dev/null and b/public/images/products/category/slt.png differ diff --git a/public/images/products/lede/atvot_rezbavoy-removebg-preview.png b/public/images/products/lede/atvot_rezbavoy-removebg-preview.png new file mode 100644 index 0000000..f59fb5a Binary files /dev/null and b/public/images/products/lede/atvot_rezbavoy-removebg-preview.png differ diff --git a/public/images/products/lede/flanes_nakidnoy-removebg-preview.png b/public/images/products/lede/flanes_nakidnoy-removebg-preview.png new file mode 100644 index 0000000..13fc987 Binary files /dev/null and b/public/images/products/lede/flanes_nakidnoy-removebg-preview.png differ diff --git a/public/images/products/lede/troynik_perexadnoy-removebg-preview.png b/public/images/products/lede/troynik_perexadnoy-removebg-preview.png new file mode 100644 index 0000000..2eff35e Binary files /dev/null and b/public/images/products/lede/troynik_perexadnoy-removebg-preview.png differ diff --git a/public/images/products/products.webp b/public/images/products/products.webp deleted file mode 100644 index 6f3c0ec..0000000 Binary files a/public/images/products/products.webp and /dev/null differ diff --git a/public/images/products/products2.webp b/public/images/products/products2.webp deleted file mode 100644 index 0af9df9..0000000 Binary files a/public/images/products/products2.webp and /dev/null differ diff --git a/public/images/products/products3.webp b/public/images/products/products3.webp deleted file mode 100644 index e60cd6d..0000000 Binary files a/public/images/products/products3.webp and /dev/null differ diff --git a/public/images/products/products4.webp b/public/images/products/products4.webp deleted file mode 100644 index 54e688d..0000000 Binary files a/public/images/products/products4.webp and /dev/null differ diff --git a/public/images/products/products5.webp b/public/images/products/products5.webp deleted file mode 100644 index 6a6f359..0000000 Binary files a/public/images/products/products5.webp and /dev/null differ diff --git a/public/images/products/products6.webp b/public/images/products/products6.webp deleted file mode 100644 index 506a358..0000000 Binary files a/public/images/products/products6.webp and /dev/null differ diff --git a/public/images/products/products7.webp b/public/images/products/products7.webp deleted file mode 100644 index af34ef8..0000000 Binary files a/public/images/products/products7.webp and /dev/null differ diff --git a/public/images/products/products8.webp b/public/images/products/products8.webp deleted file mode 100644 index 4fabae4..0000000 Binary files a/public/images/products/products8.webp and /dev/null differ diff --git a/public/images/products/slt/slt_blackfirebittalik-removebg-preview.png b/public/images/products/slt/slt_blackfirebittalik-removebg-preview.png new file mode 100644 index 0000000..16a77f0 Binary files /dev/null and b/public/images/products/slt/slt_blackfirebittalik-removebg-preview.png differ diff --git a/public/images/products/slt/slt_blackfireburilish-removebg-preview.png b/public/images/products/slt/slt_blackfireburilish-removebg-preview.png new file mode 100644 index 0000000..e97ba80 Binary files /dev/null and b/public/images/products/slt/slt_blackfireburilish-removebg-preview.png differ diff --git a/public/images/products/slt/slt_blackfireperexodnaya-removebg-preview.png b/public/images/products/slt/slt_blackfireperexodnaya-removebg-preview.png new file mode 100644 index 0000000..dbd7e9c Binary files /dev/null and b/public/images/products/slt/slt_blackfireperexodnaya-removebg-preview.png differ diff --git a/public/images/products/slt/slt_blockfire_tirsak-removebg-preview.png b/public/images/products/slt/slt_blockfire_tirsak-removebg-preview.png new file mode 100644 index 0000000..d660348 Binary files /dev/null and b/public/images/products/slt/slt_blockfire_tirsak-removebg-preview.png differ diff --git a/public/images/products/slt/slt_blockfirejumrak-removebg-preview.png b/public/images/products/slt/slt_blockfirejumrak-removebg-preview.png new file mode 100644 index 0000000..48f014b Binary files /dev/null and b/public/images/products/slt/slt_blockfirejumrak-removebg-preview.png differ diff --git a/public/images/products/slt/slt_blockfirekambinorivniy_mufta-removebg-preview.png b/public/images/products/slt/slt_blockfirekambinorivniy_mufta-removebg-preview.png new file mode 100644 index 0000000..9f09396 Binary files /dev/null and b/public/images/products/slt/slt_blockfirekambinorivniy_mufta-removebg-preview.png differ diff --git a/public/images/products/slt/slt_blockfirepayvandlanuvchi_sedlo-removebg-preview.png b/public/images/products/slt/slt_blockfirepayvandlanuvchi_sedlo-removebg-preview.png new file mode 100644 index 0000000..cb7a6c5 Binary files /dev/null and b/public/images/products/slt/slt_blockfirepayvandlanuvchi_sedlo-removebg-preview.png differ diff --git a/public/images/products/slt/slt_blockfireshestigronnaya-removebg-preview.png b/public/images/products/slt/slt_blockfireshestigronnaya-removebg-preview.png new file mode 100644 index 0000000..d7b1f98 Binary files /dev/null and b/public/images/products/slt/slt_blockfireshestigronnaya-removebg-preview.png differ diff --git a/public/images/products/slt/slt_flanes_burt-removebg-preview.png b/public/images/products/slt/slt_flanes_burt-removebg-preview.png new file mode 100644 index 0000000..cc774f2 Binary files /dev/null and b/public/images/products/slt/slt_flanes_burt-removebg-preview.png differ diff --git a/public/images/products/slt/slt_kambinoravannaya_shestigrannaya-removebg-preview.png b/public/images/products/slt/slt_kambinoravannaya_shestigrannaya-removebg-preview.png new file mode 100644 index 0000000..6e80e1d Binary files /dev/null and b/public/images/products/slt/slt_kambinoravannaya_shestigrannaya-removebg-preview.png differ diff --git a/public/images/products/slt/slt_kombinirovannaya-removebg-preview.png b/public/images/products/slt/slt_kombinirovannaya-removebg-preview.png new file mode 100644 index 0000000..a907b9f Binary files /dev/null and b/public/images/products/slt/slt_kombinirovannaya-removebg-preview.png differ diff --git a/public/images/products/slt/slt_kombinirovannaya_troynik-removebg-preview.png b/public/images/products/slt/slt_kombinirovannaya_troynik-removebg-preview.png new file mode 100644 index 0000000..2e66d70 Binary files /dev/null and b/public/images/products/slt/slt_kombinirovannaya_troynik-removebg-preview.png differ diff --git a/public/images/products/slt/slt_protivopojarniy-removebg-preview.png b/public/images/products/slt/slt_protivopojarniy-removebg-preview.png new file mode 100644 index 0000000..d3ae9f8 Binary files /dev/null and b/public/images/products/slt/slt_protivopojarniy-removebg-preview.png differ diff --git a/public/images/products/slt/slt_temir_tirsak-removebg-preview.png b/public/images/products/slt/slt_temir_tirsak-removebg-preview.png new file mode 100644 index 0000000..bc2a8c4 Binary files /dev/null and b/public/images/products/slt/slt_temir_tirsak-removebg-preview.png differ diff --git a/public/images/products/slt/slt_traynoy_perexodnik-removebg-preview.png b/public/images/products/slt/slt_traynoy_perexodnik-removebg-preview.png new file mode 100644 index 0000000..f898d8e Binary files /dev/null and b/public/images/products/slt/slt_traynoy_perexodnik-removebg-preview.png differ diff --git a/public/images/products/slt/slt_troynik_protivopojarnik-removebg-preview.png b/public/images/products/slt/slt_troynik_protivopojarnik-removebg-preview.png new file mode 100644 index 0000000..09a5077 Binary files /dev/null and b/public/images/products/slt/slt_troynik_protivopojarnik-removebg-preview.png differ diff --git a/public/images/products/slt/slt_varnoe_Sedlo-removebg-preview.png b/public/images/products/slt/slt_varnoe_Sedlo-removebg-preview.png new file mode 100644 index 0000000..c8b269b Binary files /dev/null and b/public/images/products/slt/slt_varnoe_Sedlo-removebg-preview.png differ