"use client"; import { ArrowLeft, ArrowUpLeft, BriefcaseBusiness, Camera, ChevronLeft, ChevronRight, CircleUserRound, FlaskConical, Gauge, Globe2, Link as LinkIcon, Mail, MapPin, Menu, MessageCircle, Phone, Search, Settings, ShieldCheck, SlidersHorizontal, Sparkles, X, } from "lucide-react"; import NextLink from "next/link"; import type { FormEvent } from "react"; import { useEffect, useMemo, useRef, useState } from "react"; import { cssAspectRatio, fetchHomeStaticImageSlots, fetchLatestProducts, productPath, type Product, type StaticImageSlot, } from "./lib/meshkee"; import HeaderNavigation from "./components/HeaderNavigation"; const assetBase = "/assets"; type HeroSlide = { image: string; eyebrow: string; title: string; text: string; linkUrl?: string; aspectRatio?: string; }; const heroSlides: HeroSlide[] = [ { image: `${assetBase}/i8SsUDDMLv.jpg`, eyebrow: "WIRE & CABLE MACHINERY", title: "تجربه‌ای مطمئن در تأمین ماشین‌آلات صنعتی", text: "راهکارهای تخصصی برای خطوط تولید سیم و کابل؛ از انتخاب و خرید تا نصب و راه‌اندازی.", }, { image: `${assetBase}/s9zJRbKrhE.jpg`, eyebrow: "ENGINEERING THE FUTURE", title: "مهندسی دقیق، عملکرد ماندگار", text: "دسترسی به برندهای معتبر جهانی و مشاوره فنی متناسب با نیاز خط تولید شما.", }, { image: `${assetBase}/ZLxH2tZ4dR.jpg`, eyebrow: "SAMAN ANDISH CO.", title: "یک مسیر کوتاه‌تر تا خط تولید بهتر", text: "ماشین‌آلات نو و کارکرده، مواد اولیه و خدمات مهندسی در یک مجموعه تخصصی.", }, ]; const categories = [ { title: "ماشین‌آلات", en: "MACHINERY", image: `${assetBase}/MDJVsqMgHe.jpg`, count: "+۱۲۰ دستگاه", }, { title: "خدمات فنی و مهندسی", en: "TECHNICAL SERVICES", image: `${assetBase}/68atRerNly.jpg`, count: "از طراحی تا اجرا", }, { title: "مواد اولیه", en: "RAW MATERIALS", image: `${assetBase}/yxEFuyUDrT.jpg`, count: "تأمین تخصصی", }, ]; type DisplayProduct = { id: string; title: string; en: string; category: string; image: string; code: string; href: string; }; const fallbackProducts: DisplayProduct[] = [ { id: "fallback-1", title: "دستگاه کوادینگ ۶۰۰ میلی‌متر", en: "600mm Quadding Machine | QUA-21 | LESMO", category: "دستگاه تابنده", image: `${assetBase}/product-quadding.jpg`, code: "LESMO / QUA-21", href: "#products", }, { id: "fallback-2", title: "بریدر ۱۶ کریر", en: "16 Carriers Braider | 16N4 | SPIRKA", category: "دستگاه بافنده", image: `${assetBase}/product-braider.jpg`, code: "SPIRKA / 16N4", href: "#products", }, { id: "fallback-3", title: "خط کشش ۰.۵–۰.۱۵ میلی‌متر", en: "0.15–0.5 SQmm Drawing Line | TRB3 | SAMP", category: "دستگاه کشش", image: `${assetBase}/product-drawing-line.jpg`, code: "SAMP / TRB3", href: "#products", }, { id: "fallback-4", title: "پی‌آف ۶۰۰ میلی‌متر", en: "600mm Pay Off | TAP D-0800 | KDM", category: "دستگاه پی‌آف", image: `${assetBase}/product-payoff.jpg`, code: "KDM / TAP D-0800", href: "#products", }, ]; function toDisplayProduct(product: Product, index: number): DisplayProduct { const fallback = fallbackProducts[index % fallbackProducts.length]; const brand = typeof product.brand === "string" ? product.brand : product.brand?.nameFa || product.brand?.name; return { id: product.id, title: product.nameFa || product.title, en: product.title, category: product.categoryNameFa || product.categoryName || "ماشین‌آلات صنعتی", image: product.thumbnailUrl || product.thumbnail || product.image || fallback.image, code: brand || product.categoryName || "SAMAN ANDISH", href: productPath(product), }; } const news = [ { title: "شرکت مهندسی، مشاوره و بازرگانی HService", date: "۰۸ خرداد ۱۴۰۲", image: `${assetBase}/news-hservice.jpg`, tag: "همکاری تجاری", }, { title: "نمایشگاه‌های تجاری پیشرو Wire و Tube", date: "۲۴ اردیبهشت ۱۴۰۲", image: `${assetBase}/news-wire-tube.jpg`, tag: "رویداد", }, { title: "انرژی پاک و بازار گواهی انرژی تجدیدپذیر", date: "۱۲ اردیبهشت ۱۴۰۲", image: `${assetBase}/news-green-energy.jpg`, tag: "دانش فنی", }, ]; const customerLogos = [ "JkHpH80NQA.png", "StBGKS3FHm.png", "GAQiN0WIK5.png", "lRkE9W3Pi0.png", "mTdHxPHztj.png", "JcGMFJ8Tv5.png", "WIvmqxoUPv.png", "XhaGH9MU5o.png", "PypItIBoI0.png", "0Y6asKSTsI.png", ]; function SectionTitle({ eyebrow, title, light = false, }: { eyebrow: string; title: string; light?: boolean; }) { return (
{eyebrow}

{title}

); } export default function Home() { const [mobileOpen, setMobileOpen] = useState(false); const [activeSlide, setActiveSlide] = useState(0); const [query, setQuery] = useState(""); const [searchOpen, setSearchOpen] = useState(false); const [staticImageSlots, setStaticImageSlots] = useState([]); const [displayProducts, setDisplayProducts] = useState(fallbackProducts); const searchInput = useRef(null); const slotsByKey = useMemo( () => new Map(staticImageSlots.map((slot) => [slot.key, slot])), [staticImageSlots], ); const activeHeroSlides = useMemo(() => { const slot = slotsByKey.get("slider"); if (!slot?.images.length) return heroSlides; return slot.images.map((image, index) => { const fallback = heroSlides[index % heroSlides.length]; return { image: image.url || fallback.image, eyebrow: image.titleEn || fallback.eyebrow, title: image.titleFa || fallback.title, text: image.subtext || fallback.text, linkUrl: image.linkUrl || undefined, aspectRatio: cssAspectRatio(slot.aspectRatio), }; }); }, [slotsByKey]); const activeCategories = useMemo(() => { const slot = slotsByKey.get("three-categories"); return categories.map((fallback, index) => { const image = slot?.images[index]; if (!image) { return { ...fallback, linkUrl: undefined, aspectRatio: undefined, }; } return { ...fallback, image: image.url || fallback.image, title: image.titleFa || fallback.title, en: image.titleEn || fallback.en, count: image.subtext || fallback.count, linkUrl: image.linkUrl || undefined, aspectRatio: cssAspectRatio(slot?.aspectRatio), }; }); }, [slotsByKey]); const aboutImages = slotsByKey.get("about-us-images"); const aboutMainImage = aboutImages?.images[0]; const aboutSecondaryImage = aboutImages?.images[1]; const activeHeroIndex = activeSlide % activeHeroSlides.length; const activeHero = activeHeroSlides[activeHeroIndex]; useEffect(() => { const controller = new AbortController(); fetchHomeStaticImageSlots(controller.signal) .then(setStaticImageSlots) .catch(() => { // Keep the local image fallbacks when the API is unavailable. }); fetchLatestProducts(4, controller.signal) .then((items) => { if (items.length) setDisplayProducts(items.map(toDisplayProduct)); }) .catch(() => { // Keep the local product fallbacks when the API is unavailable. }); return () => controller.abort(); }, []); useEffect(() => { if (activeHeroSlides.length <= 1) return; const timer = window.setInterval( () => setActiveSlide((current) => (current + 1) % activeHeroSlides.length), 6500, ); return () => window.clearInterval(timer); }, [activeHeroSlides.length]); const results = useMemo(() => { const normalized = query.trim().toLowerCase(); if (!normalized) return displayProducts.slice(0, 3); return displayProducts.filter((product) => [product.title, product.en, product.category, product.code] .join(" ") .toLowerCase() .includes(normalized), ); }, [displayProducts, query]); const focusSearch = () => { document.getElementById("smart-search")?.scrollIntoView({ behavior: "smooth", block: "center", }); window.setTimeout(() => { searchInput.current?.focus(); setSearchOpen(true); }, 500); }; const submitSearch = (event: FormEvent) => { event.preventDefault(); setSearchOpen(true); }; return (

شریک تخصصی صنعت سیم و کابل ایران

سامان اندیش setMobileOpen(false)} />
درخواست مشاوره
{activeHeroSlides.map((slide, index) => (
{slide.linkUrl ? ( {slide.title} ) : ( {slide.title} )}
))}

{activeHero.eyebrow}

{activeHero.title}

{activeHero.text}

مشاهده محصولات درباره سامان اندیش
25+ YEARS EXPERIENCE
120+ INDUSTRIAL MACHINES
{activeHeroSlides.map((slide, index) => (
{activeCategories.map((category, index) => ( {category.title}
مشاهده همه محصولات
{displayProducts.map((product) => ( ))}
{aboutMainImage?.linkUrl ? ( {aboutMainImage.titleFa ) : ( {aboutMainImage?.titleFa )}
{aboutSecondaryImage?.linkUrl ? ( {aboutSecondaryImage.titleFa ) : ( { )}
۲۵ سال تجربه تخصصی

سامان اندیش، همراه فنی و تجاری تولیدکنندگان سیم و کابل در انتخاب هوشمندانه تجهیزات و توسعه خطوط تولید است.

با تکیه بر تجربه اجرایی، شبکه بین‌المللی و شناخت دقیق فرآیندهای تولید، راهکاری متناسب با ظرفیت، بودجه و اهداف هر کارخانه ارائه می‌کنیم.

تضمین اصالت ارزیابی فنی پیش از خرید
پشتیبانی اجرایی نصب، راه‌اندازی و آموزش
بیشتر درباره ما
{[ [Globe2, "رقابت در بازار جهانی", "GLOBAL COMPETITION"], [Gauge, "کیفیت استاندارد", "STANDARD QUALITY"], [BriefcaseBusiness, "مهندسی نوآورانه", "SMART ENGINEERING"], [FlaskConical, "تکنولوژی پیشرفته", "ADVANCED TECHNOLOGY"], ].map(([Icon, title, en], index) => { const ValueIcon = Icon as typeof Globe2; return (
0{index + 1}

{title as string}

{en as string}

); })}
{news.map((item, index) => (
{item.title}
{item.tag}

{item.title}

تازه‌ترین تحولات، فناوری‌ها و رویدادهای تخصصی صنعت سیم و کابل را با تحلیل کارشناسان سامان اندیش دنبال کنید.

ادامه مطلب
))}
{[...customerLogos, ...customerLogos].map((logo, index) => ( نشان مشتری سامان اندیش ))}
برای ارتقای خط تولید آماده‌اید؟ ماشین مناسب را با کمک متخصصان ما پیدا کنید.
شروع گفتگو
); }