Create Saman Andish industrial website
Build a responsive Persian Next.js experience with product discovery and dedicated company contact pages. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+15
@@ -0,0 +1,15 @@
|
|||||||
|
# dependencies
|
||||||
|
/node_modules
|
||||||
|
|
||||||
|
# Next.js build output
|
||||||
|
/.next
|
||||||
|
/out
|
||||||
|
|
||||||
|
# local files
|
||||||
|
.DS_Store
|
||||||
|
*.log
|
||||||
|
.env*
|
||||||
|
|
||||||
|
# TypeScript
|
||||||
|
*.tsbuildinfo
|
||||||
|
next-env.d.ts
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
<!-- BEGIN:nextjs-agent-rules -->
|
||||||
|
|
||||||
|
# This is NOT the Next.js you know
|
||||||
|
|
||||||
|
This version has breaking changes — APIs, conventions, and file structure may all differ from your training data. Read the relevant guide in `node_modules/next/dist/docs/` (resolved from this file's directory; in monorepos the `next` package may not be visible from the repo root) before writing any code. Heed deprecation notices.
|
||||||
|
|
||||||
|
This block is written and re-added by `next dev` — verify at `node_modules/next/dist/server/lib/generate-agent-files.js`. Removing it from a diff only re-creates the uncommitted change; committing it with your work keeps the tree clean.
|
||||||
|
|
||||||
|
<!-- END:nextjs-agent-rules -->
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
Create a website from this website
|
||||||
|
https://www.samanandish.co/
|
||||||
|
Website is about heavy machinery seller and company, mainly in wire and cable industry
|
||||||
|
Website is not ssl but its ok to pass it
|
||||||
|
|
||||||
|
You can use content and images
|
||||||
|
Lang:fa
|
||||||
|
Directions: rtl
|
||||||
|
Use next js
|
||||||
|
Design only homepage
|
||||||
|
|
||||||
|
Use the same font for Persian font and cool industrial en font
|
||||||
|
Sections are the same
|
||||||
|
search is very important for this website
|
||||||
|
|
||||||
|
I will connect product to backend later
|
||||||
@@ -0,0 +1,211 @@
|
|||||||
|
import type { Metadata } from "next";
|
||||||
|
import {
|
||||||
|
ArrowLeft,
|
||||||
|
Award,
|
||||||
|
CheckCircle2,
|
||||||
|
Factory,
|
||||||
|
Gauge,
|
||||||
|
Globe2,
|
||||||
|
Handshake,
|
||||||
|
Target,
|
||||||
|
Users,
|
||||||
|
} from "lucide-react";
|
||||||
|
import Link from "next/link";
|
||||||
|
import { InteriorFooter, InteriorHeader } from "../components/InteriorShell";
|
||||||
|
|
||||||
|
const assetBase =
|
||||||
|
"https://meshkee-templates.sas.amin.parminstorage.ir/sites/user_themes/SamanAndish_OcHaRXRqAo/assets/files";
|
||||||
|
|
||||||
|
export const metadata: Metadata = {
|
||||||
|
title: "درباره سامان اندیش | تجربه تخصصی صنعت سیم و کابل",
|
||||||
|
description:
|
||||||
|
"با تاریخچه، ارزشها و توانمندیهای تخصصی شرکت سامان اندیش در تأمین ماشینآلات صنعت سیم و کابل آشنا شوید.",
|
||||||
|
};
|
||||||
|
|
||||||
|
export default function AboutUsPage() {
|
||||||
|
return (
|
||||||
|
<main>
|
||||||
|
<InteriorHeader active="about" />
|
||||||
|
|
||||||
|
<section
|
||||||
|
className="inner-hero"
|
||||||
|
style={{ backgroundImage: `url("${assetBase}/s9zJRbKrhE.jpg")` }}
|
||||||
|
>
|
||||||
|
<div className="inner-hero__shade" />
|
||||||
|
<div className="container inner-hero__content">
|
||||||
|
<span>ABOUT SAMAN ANDISH</span>
|
||||||
|
<h1>درباره سامان اندیش</h1>
|
||||||
|
<p>
|
||||||
|
بیش از دو دهه تجربه در پیوند فناوری جهانی با صنعت سیم و کابل ایران
|
||||||
|
</p>
|
||||||
|
<div>
|
||||||
|
<Link href="/">صفحه اصلی</Link>
|
||||||
|
<i>/</i>
|
||||||
|
<strong>درباره ما</strong>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="about-intro">
|
||||||
|
<div className="container about-intro__grid">
|
||||||
|
<div className="about-intro__visual">
|
||||||
|
<img
|
||||||
|
src={`${assetBase}/trEfzlNgmz.jpg`}
|
||||||
|
alt="ماشینآلات صنعت سیم و کابل"
|
||||||
|
/>
|
||||||
|
<div>
|
||||||
|
<strong dir="ltr">25+</strong>
|
||||||
|
<span>سال تجربه تخصصی</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="about-intro__copy">
|
||||||
|
<span className="inner-eyebrow">WHO WE ARE</span>
|
||||||
|
<h2>همراه صنعت، از انتخاب تا بهرهبرداری</h2>
|
||||||
|
<p className="lead">
|
||||||
|
سامان اندیش یک مجموعه مهندسی و بازرگانی تخصصی در حوزه ماشینآلات،
|
||||||
|
مواد اولیه و خدمات فنی صنعت سیم و کابل است.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
ما با شناخت عمیق از فرآیندهای تولید و همکاری با سازندگان معتبر
|
||||||
|
بینالمللی، به کارخانهها کمک میکنیم مناسبترین راهکار را بر اساس
|
||||||
|
ظرفیت تولید، بودجه و برنامه توسعه خود انتخاب کنند. همکاری ما با
|
||||||
|
فروش دستگاه پایان نمییابد؛ ارزیابی فنی، حمل، نصب، راهاندازی و
|
||||||
|
پشتیبانی، بخش جداییناپذیر تعهد ماست.
|
||||||
|
</p>
|
||||||
|
<div className="about-checks">
|
||||||
|
{[
|
||||||
|
"ارزیابی فنی پیش از خرید",
|
||||||
|
"شبکه تأمین بینالمللی",
|
||||||
|
"نصب و راهاندازی تخصصی",
|
||||||
|
"پشتیبانی بلندمدت",
|
||||||
|
].map((item) => (
|
||||||
|
<span key={item}>
|
||||||
|
<CheckCircle2 />
|
||||||
|
{item}
|
||||||
|
</span>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="about-stats">
|
||||||
|
<div className="container about-stats__grid">
|
||||||
|
{[
|
||||||
|
["۲۵+", "سال تجربه"],
|
||||||
|
["۱۲۰+", "ماشینآلات تأمینشده"],
|
||||||
|
["۴۰+", "برند بینالمللی"],
|
||||||
|
["۸۰+", "مشتری صنعتی"],
|
||||||
|
].map(([number, label]) => (
|
||||||
|
<div key={label}>
|
||||||
|
<strong>{number}</strong>
|
||||||
|
<span>{label}</span>
|
||||||
|
</div>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="mission">
|
||||||
|
<div className="container">
|
||||||
|
<div className="inner-section-title">
|
||||||
|
<span>OUR PURPOSE</span>
|
||||||
|
<h2>آنچه مسیر ما را میسازد</h2>
|
||||||
|
</div>
|
||||||
|
<div className="mission__grid">
|
||||||
|
<article>
|
||||||
|
<span>
|
||||||
|
<Target />
|
||||||
|
</span>
|
||||||
|
<small>01</small>
|
||||||
|
<h3>ماموریت ما</h3>
|
||||||
|
<p>
|
||||||
|
ارائه راهکارهای صنعتی قابل اتکا که بهرهوری، کیفیت و پایداری
|
||||||
|
خطوط تولید مشتریان را افزایش دهد.
|
||||||
|
</p>
|
||||||
|
</article>
|
||||||
|
<article>
|
||||||
|
<span>
|
||||||
|
<Globe2 />
|
||||||
|
</span>
|
||||||
|
<small>02</small>
|
||||||
|
<h3>چشمانداز ما</h3>
|
||||||
|
<p>
|
||||||
|
تبدیل شدن به مرجع نخست تأمین و مهندسی ماشینآلات سیم و کابل در
|
||||||
|
بازار ایران و منطقه.
|
||||||
|
</p>
|
||||||
|
</article>
|
||||||
|
<article>
|
||||||
|
<span>
|
||||||
|
<Handshake />
|
||||||
|
</span>
|
||||||
|
<small>03</small>
|
||||||
|
<h3>تعهد ما</h3>
|
||||||
|
<p>
|
||||||
|
ساختن همکاری شفاف و بلندمدت؛ از نخستین مشاوره تا سالها پس از
|
||||||
|
بهرهبرداری تجهیزات.
|
||||||
|
</p>
|
||||||
|
</article>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="why-us">
|
||||||
|
<div className="container why-us__grid">
|
||||||
|
<div className="why-us__copy">
|
||||||
|
<span className="inner-eyebrow">WHY SAMAN ANDISH</span>
|
||||||
|
<h2>تخصصی که به تصمیم بهتر تبدیل میشود</h2>
|
||||||
|
<p>
|
||||||
|
هر پروژه را با شناخت دقیق نیاز تولید آغاز میکنیم و با ترکیب دانش
|
||||||
|
فنی، تجربه بازار و دسترسی به تأمینکنندگان جهانی، ریسک انتخاب و
|
||||||
|
خرید را کاهش میدهیم.
|
||||||
|
</p>
|
||||||
|
<div>
|
||||||
|
{[
|
||||||
|
[Factory, "شناخت فرآیند تولید", "تحلیل دقیق نیاز هر خط"],
|
||||||
|
[Gauge, "تمرکز بر بهرهوری", "انتخاب اقتصادی و پایدار"],
|
||||||
|
[Award, "کیفیت قابل ارزیابی", "بازرسی و مستندسازی فنی"],
|
||||||
|
[Users, "تیم همراه", "پاسخگویی در تمام مراحل"],
|
||||||
|
].map(([Icon, title, text]) => {
|
||||||
|
const FeatureIcon = Icon as typeof Factory;
|
||||||
|
return (
|
||||||
|
<article key={title as string}>
|
||||||
|
<FeatureIcon />
|
||||||
|
<span>
|
||||||
|
<strong>{title as string}</strong>
|
||||||
|
<small>{text as string}</small>
|
||||||
|
</span>
|
||||||
|
</article>
|
||||||
|
);
|
||||||
|
})}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="why-us__image">
|
||||||
|
<img
|
||||||
|
src={`${assetBase}/rhipZeVqzD.jpg`}
|
||||||
|
alt="خدمات مهندسی سامان اندیش"
|
||||||
|
/>
|
||||||
|
<div>
|
||||||
|
<strong>راهکار مناسب،</strong>
|
||||||
|
<span>برای خط تولید شما</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="inner-cta">
|
||||||
|
<div className="container">
|
||||||
|
<div>
|
||||||
|
<span>شروع یک همکاری مطمئن</span>
|
||||||
|
<h2>برای توسعه خط تولید خود با ما گفتگو کنید.</h2>
|
||||||
|
</div>
|
||||||
|
<Link className="button button--white" href="/contact-us">
|
||||||
|
تماس با کارشناسان
|
||||||
|
<ArrowLeft size={18} />
|
||||||
|
</Link>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<InteriorFooter />
|
||||||
|
</main>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -0,0 +1,187 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import {
|
||||||
|
ArrowUpLeft,
|
||||||
|
Camera,
|
||||||
|
ChevronLeft,
|
||||||
|
CircleUserRound,
|
||||||
|
Link as LinkIcon,
|
||||||
|
Mail,
|
||||||
|
MapPin,
|
||||||
|
Menu,
|
||||||
|
MessageCircle,
|
||||||
|
Phone,
|
||||||
|
Search,
|
||||||
|
Sparkles,
|
||||||
|
X,
|
||||||
|
} from "lucide-react";
|
||||||
|
import Link from "next/link";
|
||||||
|
import { useState } from "react";
|
||||||
|
|
||||||
|
const assetBase =
|
||||||
|
"https://meshkee-templates.sas.amin.parminstorage.ir/sites/user_themes/SamanAndish_OcHaRXRqAo/assets/files";
|
||||||
|
|
||||||
|
const navItems = [
|
||||||
|
{ label: "صفحه اصلی", href: "/" },
|
||||||
|
{ label: "محصولات", href: "/#products" },
|
||||||
|
{ label: "خدمات", href: "/#services" },
|
||||||
|
{ label: "اخبار", href: "/#news" },
|
||||||
|
{ label: "درباره ما", href: "/about-us", key: "about" },
|
||||||
|
{ label: "تماس با ما", href: "/contact-us", key: "contact" },
|
||||||
|
];
|
||||||
|
|
||||||
|
export function InteriorHeader({
|
||||||
|
active,
|
||||||
|
}: {
|
||||||
|
active?: "about" | "contact";
|
||||||
|
}) {
|
||||||
|
const [mobileOpen, setMobileOpen] = useState(false);
|
||||||
|
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<div className="topbar">
|
||||||
|
<div className="container topbar__inner">
|
||||||
|
<p>
|
||||||
|
<Sparkles size={14} />
|
||||||
|
شریک تخصصی صنعت سیم و کابل ایران
|
||||||
|
</p>
|
||||||
|
<div>
|
||||||
|
<a href="mailto:info@samanandish.com">
|
||||||
|
<Mail size={14} />
|
||||||
|
info@samanandish.com
|
||||||
|
</a>
|
||||||
|
<span />
|
||||||
|
<a href="tel:+982188530256" dir="ltr">
|
||||||
|
<Phone size={14} />
|
||||||
|
+98 21 8853 0256
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<header className="header">
|
||||||
|
<div className="container header__inner">
|
||||||
|
<Link className="logo" href="/" aria-label="سامان اندیش">
|
||||||
|
<img src={`${assetBase}/KN83Drb6oI.png`} alt="سامان اندیش" />
|
||||||
|
</Link>
|
||||||
|
<nav className="desktop-nav" aria-label="ناوبری اصلی">
|
||||||
|
{navItems.map((item) => (
|
||||||
|
<Link
|
||||||
|
className={item.key === active ? "active" : ""}
|
||||||
|
href={item.href}
|
||||||
|
key={item.label}
|
||||||
|
>
|
||||||
|
{item.label}
|
||||||
|
</Link>
|
||||||
|
))}
|
||||||
|
</nav>
|
||||||
|
<div className="header__actions">
|
||||||
|
<Link className="icon-button" href="/#smart-search" aria-label="جستجو">
|
||||||
|
<Search size={22} />
|
||||||
|
</Link>
|
||||||
|
<button className="icon-button user-button" aria-label="حساب کاربری">
|
||||||
|
<CircleUserRound size={22} />
|
||||||
|
</button>
|
||||||
|
<Link className="header__cta" href="/contact-us">
|
||||||
|
درخواست مشاوره
|
||||||
|
<ArrowUpLeft size={17} />
|
||||||
|
</Link>
|
||||||
|
<button
|
||||||
|
className="mobile-toggle"
|
||||||
|
onClick={() => setMobileOpen((open) => !open)}
|
||||||
|
aria-label="منو"
|
||||||
|
>
|
||||||
|
{mobileOpen ? <X /> : <Menu />}
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{mobileOpen && (
|
||||||
|
<nav className="mobile-nav">
|
||||||
|
{navItems.map((item) => (
|
||||||
|
<Link
|
||||||
|
href={item.href}
|
||||||
|
key={item.label}
|
||||||
|
onClick={() => setMobileOpen(false)}
|
||||||
|
>
|
||||||
|
{item.label}
|
||||||
|
<ChevronLeft size={17} />
|
||||||
|
</Link>
|
||||||
|
))}
|
||||||
|
</nav>
|
||||||
|
)}
|
||||||
|
</header>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export function InteriorFooter() {
|
||||||
|
return (
|
||||||
|
<footer className="footer">
|
||||||
|
<div className="footer__pattern" />
|
||||||
|
<div className="container footer__grid">
|
||||||
|
<div className="footer__brand">
|
||||||
|
<img src={`${assetBase}/4eEq8S7FxV.png`} alt="سامان اندیش" />
|
||||||
|
<p>
|
||||||
|
تأمینکننده تخصصی ماشینآلات و راهکارهای فنی صنعت سیم و کابل، با
|
||||||
|
تمرکز بر کیفیت، بهرهوری و همکاری بلندمدت.
|
||||||
|
</p>
|
||||||
|
<div>
|
||||||
|
<a href="#" aria-label="اینستاگرام">
|
||||||
|
<Camera />
|
||||||
|
</a>
|
||||||
|
<a href="#" aria-label="لینکدین">
|
||||||
|
<LinkIcon />
|
||||||
|
</a>
|
||||||
|
<a href="#" aria-label="تلگرام">
|
||||||
|
<MessageCircle />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="footer__links">
|
||||||
|
<h3>دسترسی سریع</h3>
|
||||||
|
<Link href="/">صفحه اصلی</Link>
|
||||||
|
<Link href="/#products">ماشینآلات</Link>
|
||||||
|
<Link href="/about-us">درباره ما</Link>
|
||||||
|
<Link href="/contact-us">تماس با ما</Link>
|
||||||
|
</div>
|
||||||
|
<div className="footer__links">
|
||||||
|
<h3>خدمات ما</h3>
|
||||||
|
<Link href="/#services">تأمین ماشینآلات</Link>
|
||||||
|
<Link href="/#services">خدمات فنی و مهندسی</Link>
|
||||||
|
<Link href="/#services">مواد اولیه</Link>
|
||||||
|
<Link href="/contact-us">مشاوره خرید</Link>
|
||||||
|
</div>
|
||||||
|
<div className="footer__contact">
|
||||||
|
<h3>با ما در ارتباط باشید</h3>
|
||||||
|
<a href="tel:+982188530256">
|
||||||
|
<span>
|
||||||
|
<Phone />
|
||||||
|
</span>
|
||||||
|
<div>
|
||||||
|
<small>شماره تماس</small>
|
||||||
|
<strong dir="ltr">021 8853 0256</strong>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
<a href="mailto:info@samanandish.com">
|
||||||
|
<span>
|
||||||
|
<Mail />
|
||||||
|
</span>
|
||||||
|
<div>
|
||||||
|
<small>ایمیل</small>
|
||||||
|
<strong>info@samanandish.com</strong>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
<div className="address">
|
||||||
|
<span>
|
||||||
|
<MapPin />
|
||||||
|
</span>
|
||||||
|
<p>تهران، خیابان مطهری، خیابان ترکمنستان</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="container footer__bottom">
|
||||||
|
<p>© ۱۴۰۵ سامان اندیش — تمامی حقوق محفوظ است.</p>
|
||||||
|
<span dir="ltr">ENGINEERED FOR INDUSTRY</span>
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -0,0 +1,86 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ArrowLeft, CheckCircle2 } from "lucide-react";
|
||||||
|
import type { FormEvent } from "react";
|
||||||
|
import { useState } from "react";
|
||||||
|
|
||||||
|
export default function ContactForm() {
|
||||||
|
const [submitted, setSubmitted] = useState(false);
|
||||||
|
|
||||||
|
const submit = (event: FormEvent<HTMLFormElement>) => {
|
||||||
|
event.preventDefault();
|
||||||
|
setSubmitted(true);
|
||||||
|
};
|
||||||
|
|
||||||
|
if (submitted) {
|
||||||
|
return (
|
||||||
|
<div className="contact-success">
|
||||||
|
<CheckCircle2 />
|
||||||
|
<h3>پیام شما ثبت شد</h3>
|
||||||
|
<p>کارشناسان سامان اندیش در اولین فرصت با شما تماس خواهند گرفت.</p>
|
||||||
|
<button onClick={() => setSubmitted(false)}>ارسال پیام دیگر</button>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
return (
|
||||||
|
<form className="contact-form" onSubmit={submit}>
|
||||||
|
<div className="form-row">
|
||||||
|
<label>
|
||||||
|
نام و نام خانوادگی
|
||||||
|
<input name="name" placeholder="نام شما" required />
|
||||||
|
</label>
|
||||||
|
<label>
|
||||||
|
شماره تماس
|
||||||
|
<input
|
||||||
|
name="phone"
|
||||||
|
inputMode="tel"
|
||||||
|
placeholder="09xx xxx xxxx"
|
||||||
|
dir="ltr"
|
||||||
|
required
|
||||||
|
/>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
<div className="form-row">
|
||||||
|
<label>
|
||||||
|
ایمیل
|
||||||
|
<input
|
||||||
|
name="email"
|
||||||
|
type="email"
|
||||||
|
placeholder="name@company.com"
|
||||||
|
dir="ltr"
|
||||||
|
/>
|
||||||
|
</label>
|
||||||
|
<label>
|
||||||
|
موضوع درخواست
|
||||||
|
<select name="subject" defaultValue="">
|
||||||
|
<option value="" disabled>
|
||||||
|
انتخاب کنید
|
||||||
|
</option>
|
||||||
|
<option>خرید ماشینآلات</option>
|
||||||
|
<option>خدمات فنی و مهندسی</option>
|
||||||
|
<option>تأمین مواد اولیه</option>
|
||||||
|
<option>همکاری تجاری</option>
|
||||||
|
<option>سایر موارد</option>
|
||||||
|
</select>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
<label>
|
||||||
|
پیام شما
|
||||||
|
<textarea
|
||||||
|
name="message"
|
||||||
|
rows={6}
|
||||||
|
placeholder="درباره دستگاه، برند، ظرفیت تولید یا خدمات مورد نیاز توضیح دهید..."
|
||||||
|
required
|
||||||
|
/>
|
||||||
|
</label>
|
||||||
|
<button type="submit">
|
||||||
|
ارسال درخواست
|
||||||
|
<ArrowLeft size={18} />
|
||||||
|
</button>
|
||||||
|
<small>
|
||||||
|
با ارسال فرم، کارشناسان ما برای تکمیل اطلاعات با شما تماس میگیرند.
|
||||||
|
</small>
|
||||||
|
</form>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -0,0 +1,158 @@
|
|||||||
|
import type { Metadata } from "next";
|
||||||
|
import {
|
||||||
|
Clock3,
|
||||||
|
ExternalLink,
|
||||||
|
Mail,
|
||||||
|
MapPin,
|
||||||
|
MessageCircle,
|
||||||
|
Phone,
|
||||||
|
} from "lucide-react";
|
||||||
|
import Link from "next/link";
|
||||||
|
import { InteriorFooter, InteriorHeader } from "../components/InteriorShell";
|
||||||
|
import ContactForm from "./ContactForm";
|
||||||
|
|
||||||
|
const assetBase =
|
||||||
|
"https://meshkee-templates.sas.amin.parminstorage.ir/sites/user_themes/SamanAndish_OcHaRXRqAo/assets/files";
|
||||||
|
|
||||||
|
export const metadata: Metadata = {
|
||||||
|
title: "تماس با سامان اندیش | مشاوره ماشینآلات صنعتی",
|
||||||
|
description:
|
||||||
|
"برای مشاوره خرید ماشینآلات، خدمات فنی و تأمین مواد اولیه صنعت سیم و کابل با کارشناسان سامان اندیش تماس بگیرید.",
|
||||||
|
};
|
||||||
|
|
||||||
|
export default function ContactUsPage() {
|
||||||
|
return (
|
||||||
|
<main>
|
||||||
|
<InteriorHeader active="contact" />
|
||||||
|
|
||||||
|
<section
|
||||||
|
className="inner-hero inner-hero--contact"
|
||||||
|
style={{ backgroundImage: `url("${assetBase}/ZLxH2tZ4dR.jpg")` }}
|
||||||
|
>
|
||||||
|
<div className="inner-hero__shade" />
|
||||||
|
<div className="container inner-hero__content">
|
||||||
|
<span>GET IN TOUCH</span>
|
||||||
|
<h1>تماس با ما</h1>
|
||||||
|
<p>برای انتخاب بهترین راهکار صنعتی، کنار شما هستیم</p>
|
||||||
|
<div>
|
||||||
|
<Link href="/">صفحه اصلی</Link>
|
||||||
|
<i>/</i>
|
||||||
|
<strong>تماس با ما</strong>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="contact-info">
|
||||||
|
<div className="container contact-info__grid">
|
||||||
|
<a href="tel:+982188530256">
|
||||||
|
<span>
|
||||||
|
<Phone />
|
||||||
|
</span>
|
||||||
|
<div>
|
||||||
|
<small>تماس مستقیم</small>
|
||||||
|
<strong dir="ltr">021 8853 0256</strong>
|
||||||
|
<p>پاسخگویی شنبه تا چهارشنبه</p>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
<a href="mailto:info@samanandish.com">
|
||||||
|
<span>
|
||||||
|
<Mail />
|
||||||
|
</span>
|
||||||
|
<div>
|
||||||
|
<small>ایمیل سازمانی</small>
|
||||||
|
<strong>info@samanandish.com</strong>
|
||||||
|
<p>برای ارسال مشخصات فنی و پیشنهادات</p>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
<div>
|
||||||
|
<span>
|
||||||
|
<MapPin />
|
||||||
|
</span>
|
||||||
|
<div>
|
||||||
|
<small>دفتر مرکزی</small>
|
||||||
|
<strong>تهران، خیابان مطهری</strong>
|
||||||
|
<p>خیابان ترکمنستان، دفتر سامان اندیش</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="contact-main">
|
||||||
|
<div className="container contact-main__grid">
|
||||||
|
<div className="contact-main__copy">
|
||||||
|
<span className="inner-eyebrow">SEND A MESSAGE</span>
|
||||||
|
<h2>درخواست خود را با ما در میان بگذارید</h2>
|
||||||
|
<p>
|
||||||
|
برای استعلام ماشینآلات، دریافت مشاوره فنی یا شروع همکاری، فرم را
|
||||||
|
تکمیل کنید. اطلاعات شما مستقیماً به تیم مرتبط ارجاع میشود.
|
||||||
|
</p>
|
||||||
|
<ContactForm />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<aside className="contact-aside">
|
||||||
|
<div className="contact-aside__image">
|
||||||
|
<img src={`${assetBase}/rf3fNjazCx.png`} alt="موقعیت سامان اندیش" />
|
||||||
|
<a
|
||||||
|
href="https://www.google.com/maps/place/Saman+Andish/@35.7424283,51.4396725,17z"
|
||||||
|
target="_blank"
|
||||||
|
rel="noreferrer"
|
||||||
|
>
|
||||||
|
مشاهده در نقشه
|
||||||
|
<ExternalLink size={16} />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div className="office-hours">
|
||||||
|
<h3>
|
||||||
|
<Clock3 />
|
||||||
|
ساعت کاری
|
||||||
|
</h3>
|
||||||
|
<div>
|
||||||
|
<span>شنبه تا چهارشنبه</span>
|
||||||
|
<strong>۸:۳۰ تا ۱۷:۰۰</strong>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<span>پنجشنبه</span>
|
||||||
|
<strong>با هماهنگی قبلی</strong>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<span>جمعه</span>
|
||||||
|
<strong>تعطیل</strong>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<a className="quick-contact" href="tel:+982188530256">
|
||||||
|
<MessageCircle />
|
||||||
|
<span>
|
||||||
|
<small>نیاز به پاسخ سریع دارید؟</small>
|
||||||
|
<strong>همین حالا تماس بگیرید</strong>
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
</aside>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="contact-departments">
|
||||||
|
<div className="container">
|
||||||
|
<div className="inner-section-title">
|
||||||
|
<span>DIRECT CONTACT</span>
|
||||||
|
<h2>ارتباط با واحدهای تخصصی</h2>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
{[
|
||||||
|
["فروش ماشینآلات", "machinery@samanandish.com", "داخلی ۱۰۱"],
|
||||||
|
["خدمات فنی", "service@samanandish.com", "داخلی ۱۰۲"],
|
||||||
|
["همکاری تجاری", "commerce@samanandish.com", "داخلی ۱۰۳"],
|
||||||
|
].map(([title, email, extension]) => (
|
||||||
|
<article key={title}>
|
||||||
|
<small>{extension}</small>
|
||||||
|
<h3>{title}</h3>
|
||||||
|
<a href={`mailto:${email}`}>{email}</a>
|
||||||
|
</article>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<InteriorFooter />
|
||||||
|
</main>
|
||||||
|
);
|
||||||
|
}
|
||||||
+3038
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,20 @@
|
|||||||
|
import type { Metadata } from "next";
|
||||||
|
import "./globals.css";
|
||||||
|
|
||||||
|
export const metadata: Metadata = {
|
||||||
|
title: "سامان اندیش | ماشینآلات صنعت سیم و کابل",
|
||||||
|
description:
|
||||||
|
"تامین ماشینآلات، مواد اولیه و خدمات فنی مهندسی صنعت سیم و کابل",
|
||||||
|
};
|
||||||
|
|
||||||
|
export default function RootLayout({
|
||||||
|
children,
|
||||||
|
}: Readonly<{
|
||||||
|
children: React.ReactNode;
|
||||||
|
}>) {
|
||||||
|
return (
|
||||||
|
<html lang="fa" dir="rtl">
|
||||||
|
<body>{children}</body>
|
||||||
|
</html>
|
||||||
|
);
|
||||||
|
}
|
||||||
+701
@@ -0,0 +1,701 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import {
|
||||||
|
ArrowLeft,
|
||||||
|
ArrowUpLeft,
|
||||||
|
BriefcaseBusiness,
|
||||||
|
Camera,
|
||||||
|
ChevronDown,
|
||||||
|
ChevronLeft,
|
||||||
|
ChevronRight,
|
||||||
|
CircleUserRound,
|
||||||
|
FlaskConical,
|
||||||
|
Gauge,
|
||||||
|
Globe2,
|
||||||
|
Link,
|
||||||
|
Mail,
|
||||||
|
MapPin,
|
||||||
|
Menu,
|
||||||
|
MessageCircle,
|
||||||
|
Phone,
|
||||||
|
Search,
|
||||||
|
Settings,
|
||||||
|
ShieldCheck,
|
||||||
|
SlidersHorizontal,
|
||||||
|
Sparkles,
|
||||||
|
X,
|
||||||
|
} from "lucide-react";
|
||||||
|
import type { FormEvent } from "react";
|
||||||
|
import { useEffect, useMemo, useRef, useState } from "react";
|
||||||
|
|
||||||
|
const assetBase =
|
||||||
|
"https://meshkee-templates.sas.amin.parminstorage.ir/sites/user_themes/SamanAndish_OcHaRXRqAo/assets/files";
|
||||||
|
|
||||||
|
const heroSlides = [
|
||||||
|
{
|
||||||
|
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: "تأمین تخصصی",
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
const products = [
|
||||||
|
{
|
||||||
|
id: 1,
|
||||||
|
title: "دستگاه کوادینگ ۶۰۰ میلیمتر",
|
||||||
|
en: "600mm Quadding Machine | QUA-21 | LESMO",
|
||||||
|
category: "دستگاه تابنده",
|
||||||
|
image:
|
||||||
|
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/b597976c3ce6012f3a07e9f5c71a3c8c/conversions/WhatsApp-Image-2021-11-13-at-16.48.24-thumbnail.jpg",
|
||||||
|
code: "LESMO / QUA-21",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 2,
|
||||||
|
title: "بریدر ۱۶ کریر",
|
||||||
|
en: "16 Carriers Braider | 16N4 | SPIRKA",
|
||||||
|
category: "دستگاه بافنده",
|
||||||
|
image:
|
||||||
|
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/24128c84241513596a1be1534a791c3b/conversions/IMG_20210911_125416-thumbnail.jpg",
|
||||||
|
code: "SPIRKA / 16N4",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 3,
|
||||||
|
title: "خط کشش ۰.۵–۰.۱۵ میلیمتر",
|
||||||
|
en: "0.15–0.5 SQmm Drawing Line | TRB3 | SAMP",
|
||||||
|
category: "دستگاه کشش",
|
||||||
|
image:
|
||||||
|
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/74e48c1a38cb4022d50c45dbd3be1f9a/conversions/WhatsApp-Image-2021-11-13-at-13.48.57-thumbnail.jpg",
|
||||||
|
code: "SAMP / TRB3",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 4,
|
||||||
|
title: "پیآف ۶۰۰ میلیمتر",
|
||||||
|
en: "600mm Pay Off | TAP D-0800 | KDM",
|
||||||
|
category: "دستگاه پیآف",
|
||||||
|
image:
|
||||||
|
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/86a2ebc1d9ebc0d693437b61502e03ce/conversions/Picture1-thumbnail.jpg",
|
||||||
|
code: "KDM / TAP D-0800",
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
const news = [
|
||||||
|
{
|
||||||
|
title: "شرکت مهندسی، مشاوره و بازرگانی HService",
|
||||||
|
date: "۰۸ خرداد ۱۴۰۲",
|
||||||
|
image:
|
||||||
|
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/2f19d9aa2413f3265b58d130ca4865ea/conversions/SATV---Weblog-Cover-thumbnail.jpg",
|
||||||
|
tag: "همکاری تجاری",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "نمایشگاههای تجاری پیشرو Wire و Tube",
|
||||||
|
date: "۲۴ اردیبهشت ۱۴۰۲",
|
||||||
|
image:
|
||||||
|
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/2434bffa9a1ba2b3f857680a8fbb5b4f/conversions/SATV---Blog-Cover---Wire-&-Tube-2022-thumbnail.jpg",
|
||||||
|
tag: "رویداد",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "انرژی پاک و بازار گواهی انرژی تجدیدپذیر",
|
||||||
|
date: "۱۲ اردیبهشت ۱۴۰۲",
|
||||||
|
image:
|
||||||
|
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/862690c612c4c41a2ddceb9bf7a5c848/conversions/SATV---Blog-Cover---Green-Energy-thumbnail.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 (
|
||||||
|
<div className={`section-title ${light ? "section-title--light" : ""}`}>
|
||||||
|
<span>{eyebrow}</span>
|
||||||
|
<h2>{title}</h2>
|
||||||
|
<i />
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default function Home() {
|
||||||
|
const [mobileOpen, setMobileOpen] = useState(false);
|
||||||
|
const [activeSlide, setActiveSlide] = useState(0);
|
||||||
|
const [query, setQuery] = useState("");
|
||||||
|
const [searchOpen, setSearchOpen] = useState(false);
|
||||||
|
const searchInput = useRef<HTMLInputElement>(null);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
const timer = window.setInterval(
|
||||||
|
() => setActiveSlide((current) => (current + 1) % heroSlides.length),
|
||||||
|
6500,
|
||||||
|
);
|
||||||
|
return () => window.clearInterval(timer);
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
const results = useMemo(() => {
|
||||||
|
const normalized = query.trim().toLowerCase();
|
||||||
|
if (!normalized) return products.slice(0, 3);
|
||||||
|
return products.filter((product) =>
|
||||||
|
[product.title, product.en, product.category, product.code]
|
||||||
|
.join(" ")
|
||||||
|
.toLowerCase()
|
||||||
|
.includes(normalized),
|
||||||
|
);
|
||||||
|
}, [query]);
|
||||||
|
|
||||||
|
const focusSearch = () => {
|
||||||
|
document.getElementById("smart-search")?.scrollIntoView({
|
||||||
|
behavior: "smooth",
|
||||||
|
block: "center",
|
||||||
|
});
|
||||||
|
window.setTimeout(() => {
|
||||||
|
searchInput.current?.focus();
|
||||||
|
setSearchOpen(true);
|
||||||
|
}, 500);
|
||||||
|
};
|
||||||
|
|
||||||
|
const submitSearch = (event: FormEvent<HTMLFormElement>) => {
|
||||||
|
event.preventDefault();
|
||||||
|
setSearchOpen(true);
|
||||||
|
};
|
||||||
|
|
||||||
|
return (
|
||||||
|
<main>
|
||||||
|
<div className="topbar">
|
||||||
|
<div className="container topbar__inner">
|
||||||
|
<p>
|
||||||
|
<Sparkles size={14} />
|
||||||
|
شریک تخصصی صنعت سیم و کابل ایران
|
||||||
|
</p>
|
||||||
|
<div>
|
||||||
|
<a href="mailto:info@samanandish.com">
|
||||||
|
<Mail size={14} />
|
||||||
|
info@samanandish.com
|
||||||
|
</a>
|
||||||
|
<span />
|
||||||
|
<a href="tel:+982188530256" dir="ltr">
|
||||||
|
<Phone size={14} />
|
||||||
|
+98 21 8853 0256
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<header className="header">
|
||||||
|
<div className="container header__inner">
|
||||||
|
<a className="logo" href="#" aria-label="سامان اندیش">
|
||||||
|
<img src={`${assetBase}/KN83Drb6oI.png`} alt="سامان اندیش" />
|
||||||
|
</a>
|
||||||
|
<nav className="desktop-nav" aria-label="ناوبری اصلی">
|
||||||
|
<a className="active" href="#">
|
||||||
|
صفحه اصلی
|
||||||
|
</a>
|
||||||
|
<a href="#products">
|
||||||
|
محصولات
|
||||||
|
<ChevronDown size={14} />
|
||||||
|
</a>
|
||||||
|
<a href="#services">خدمات</a>
|
||||||
|
<a href="#news">اخبار</a>
|
||||||
|
<a href="/about-us">درباره ما</a>
|
||||||
|
<a href="/contact-us">تماس با ما</a>
|
||||||
|
</nav>
|
||||||
|
<div className="header__actions">
|
||||||
|
<button className="icon-button" onClick={focusSearch} aria-label="جستجو">
|
||||||
|
<Search size={22} />
|
||||||
|
</button>
|
||||||
|
<button className="icon-button user-button" aria-label="حساب کاربری">
|
||||||
|
<CircleUserRound size={22} />
|
||||||
|
</button>
|
||||||
|
<a className="header__cta" href="/contact-us">
|
||||||
|
درخواست مشاوره
|
||||||
|
<ArrowUpLeft size={17} />
|
||||||
|
</a>
|
||||||
|
<button
|
||||||
|
className="mobile-toggle"
|
||||||
|
onClick={() => setMobileOpen((open) => !open)}
|
||||||
|
aria-label="منو"
|
||||||
|
>
|
||||||
|
{mobileOpen ? <X /> : <Menu />}
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{mobileOpen && (
|
||||||
|
<nav className="mobile-nav">
|
||||||
|
{[
|
||||||
|
["صفحه اصلی", "#"],
|
||||||
|
["محصولات", "#products"],
|
||||||
|
["خدمات", "#services"],
|
||||||
|
["اخبار", "#news"],
|
||||||
|
["درباره ما", "/about-us"],
|
||||||
|
["تماس با ما", "/contact-us"],
|
||||||
|
].map(([label, href]) => (
|
||||||
|
<a key={label} href={href} onClick={() => setMobileOpen(false)}>
|
||||||
|
{label}
|
||||||
|
<ChevronLeft size={17} />
|
||||||
|
</a>
|
||||||
|
))}
|
||||||
|
</nav>
|
||||||
|
)}
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<section className="hero">
|
||||||
|
{heroSlides.map((slide, index) => (
|
||||||
|
<div
|
||||||
|
className={`hero__slide ${index === activeSlide ? "is-active" : ""}`}
|
||||||
|
key={slide.image}
|
||||||
|
style={{ backgroundImage: `url("${slide.image}")` }}
|
||||||
|
/>
|
||||||
|
))}
|
||||||
|
<div className="hero__overlay" />
|
||||||
|
<div className="hero__pattern" />
|
||||||
|
<div className="container hero__content">
|
||||||
|
<div className="hero__copy">
|
||||||
|
<p className="eyebrow">{heroSlides[activeSlide].eyebrow}</p>
|
||||||
|
<h1>{heroSlides[activeSlide].title}</h1>
|
||||||
|
<p className="hero__description">{heroSlides[activeSlide].text}</p>
|
||||||
|
<div className="hero__buttons">
|
||||||
|
<a className="button button--red" href="#products">
|
||||||
|
مشاهده محصولات
|
||||||
|
<ArrowLeft size={19} />
|
||||||
|
</a>
|
||||||
|
<a className="button button--glass" href="/about-us">
|
||||||
|
درباره سامان اندیش
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="hero__stats" dir="ltr">
|
||||||
|
<div>
|
||||||
|
<strong>25+</strong>
|
||||||
|
<span>YEARS EXPERIENCE</span>
|
||||||
|
</div>
|
||||||
|
<i />
|
||||||
|
<div>
|
||||||
|
<strong>120+</strong>
|
||||||
|
<span>INDUSTRIAL MACHINES</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="hero__controls">
|
||||||
|
<button
|
||||||
|
onClick={() =>
|
||||||
|
setActiveSlide(
|
||||||
|
(activeSlide - 1 + heroSlides.length) % heroSlides.length,
|
||||||
|
)
|
||||||
|
}
|
||||||
|
aria-label="اسلاید قبلی"
|
||||||
|
>
|
||||||
|
<ChevronRight />
|
||||||
|
</button>
|
||||||
|
<div>
|
||||||
|
{heroSlides.map((slide, index) => (
|
||||||
|
<button
|
||||||
|
className={index === activeSlide ? "active" : ""}
|
||||||
|
key={slide.image}
|
||||||
|
onClick={() => setActiveSlide(index)}
|
||||||
|
aria-label={`اسلاید ${index + 1}`}
|
||||||
|
/>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
<button
|
||||||
|
onClick={() => setActiveSlide((activeSlide + 1) % heroSlides.length)}
|
||||||
|
aria-label="اسلاید بعدی"
|
||||||
|
>
|
||||||
|
<ChevronLeft />
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="search-panel" id="smart-search">
|
||||||
|
<div className="container">
|
||||||
|
<div className="search-card">
|
||||||
|
<div className="search-card__title">
|
||||||
|
<span>
|
||||||
|
<Search size={26} />
|
||||||
|
</span>
|
||||||
|
<div>
|
||||||
|
<strong>دنبال چه دستگاهی هستید؟</strong>
|
||||||
|
<small>نام، مدل، برند یا دستهبندی را وارد کنید</small>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<form onSubmit={submitSearch}>
|
||||||
|
<input
|
||||||
|
ref={searchInput}
|
||||||
|
type="search"
|
||||||
|
value={query}
|
||||||
|
onChange={(event) => {
|
||||||
|
setQuery(event.target.value);
|
||||||
|
setSearchOpen(true);
|
||||||
|
}}
|
||||||
|
onFocus={() => setSearchOpen(true)}
|
||||||
|
placeholder="مثلاً اکسترودر، دستگاه کشش یا Maillefer..."
|
||||||
|
/>
|
||||||
|
<button type="submit">
|
||||||
|
جستجوی محصولات
|
||||||
|
<Search size={18} />
|
||||||
|
</button>
|
||||||
|
</form>
|
||||||
|
<div className="quick-search">
|
||||||
|
<span>جستجوی سریع:</span>
|
||||||
|
{["اکسترودر", "دستگاه کشش", "تیکآپ", "پیآف"].map((item) => (
|
||||||
|
<button
|
||||||
|
key={item}
|
||||||
|
onClick={() => {
|
||||||
|
setQuery(item);
|
||||||
|
setSearchOpen(true);
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
{item}
|
||||||
|
</button>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
{searchOpen && (
|
||||||
|
<div className="search-results">
|
||||||
|
<div className="search-results__head">
|
||||||
|
<span>{results.length} نتیجه پیشنهادی</span>
|
||||||
|
<button onClick={() => setSearchOpen(false)} aria-label="بستن">
|
||||||
|
<X size={17} />
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
{results.length ? (
|
||||||
|
results.map((product) => (
|
||||||
|
<a href="#products" key={product.id}>
|
||||||
|
<img src={product.image} alt="" />
|
||||||
|
<div>
|
||||||
|
<strong>{product.title}</strong>
|
||||||
|
<small dir="ltr">{product.en}</small>
|
||||||
|
</div>
|
||||||
|
<span>{product.category}</span>
|
||||||
|
<ChevronLeft size={18} />
|
||||||
|
</a>
|
||||||
|
))
|
||||||
|
) : (
|
||||||
|
<div className="empty-result">
|
||||||
|
دستگاهی با این مشخصات پیدا نشد؛ برای راهنمایی با ما تماس بگیرید.
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="categories" id="services">
|
||||||
|
<div className="container">
|
||||||
|
<SectionTitle
|
||||||
|
eyebrow="OUR EXPERTISE"
|
||||||
|
title="سه مسیر، یک راهکار کامل صنعتی"
|
||||||
|
/>
|
||||||
|
<div className="category-grid">
|
||||||
|
{categories.map((category, index) => (
|
||||||
|
<a className="category-card" href="#" key={category.title}>
|
||||||
|
<img src={category.image} alt={category.title} />
|
||||||
|
<div className="category-card__shade" />
|
||||||
|
<span className="category-card__number">0{index + 1}</span>
|
||||||
|
<div className="category-card__content">
|
||||||
|
<small>{category.en}</small>
|
||||||
|
<h3>{category.title}</h3>
|
||||||
|
<p>{category.count}</p>
|
||||||
|
</div>
|
||||||
|
<i>
|
||||||
|
<ArrowUpLeft />
|
||||||
|
</i>
|
||||||
|
</a>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="products section-gray" id="products">
|
||||||
|
<div className="container">
|
||||||
|
<div className="section-heading-row">
|
||||||
|
<SectionTitle eyebrow="SPECIAL MACHINERY" title="ماشینآلات منتخب" />
|
||||||
|
<a className="text-link" href="#">
|
||||||
|
مشاهده همه محصولات
|
||||||
|
<ArrowLeft size={18} />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div className="product-grid">
|
||||||
|
{products.map((product) => (
|
||||||
|
<article className="product-card" key={product.id}>
|
||||||
|
<a className="product-card__image" href="#">
|
||||||
|
<img src={product.image} alt={product.title} />
|
||||||
|
<span>فروش ویژه</span>
|
||||||
|
<i>
|
||||||
|
<ArrowUpLeft />
|
||||||
|
</i>
|
||||||
|
</a>
|
||||||
|
<div className="product-card__body">
|
||||||
|
<small>{product.category}</small>
|
||||||
|
<h3>{product.title}</h3>
|
||||||
|
<p dir="ltr">{product.en}</p>
|
||||||
|
<div>
|
||||||
|
<code>{product.code}</code>
|
||||||
|
<a href="tel:+982188530256">
|
||||||
|
استعلام قیمت
|
||||||
|
<Phone size={15} />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</article>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="about" id="about">
|
||||||
|
<div className="container about__grid">
|
||||||
|
<div className="about__visual">
|
||||||
|
<img src={`${assetBase}/trEfzlNgmz.jpg`} alt="تجهیزات صنعتی سامان اندیش" />
|
||||||
|
<div className="about__small-image">
|
||||||
|
<img src={`${assetBase}/rhipZeVqzD.jpg`} alt="ماشینآلات صنعت کابل" />
|
||||||
|
</div>
|
||||||
|
<div className="experience-badge">
|
||||||
|
<strong>۲۵</strong>
|
||||||
|
<span>سال تجربه تخصصی</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="about__content">
|
||||||
|
<SectionTitle eyebrow="ABOUT SAMAN ANDISH" title="فراتر از تأمینکننده ماشینآلات" />
|
||||||
|
<p className="about__lead">
|
||||||
|
سامان اندیش، همراه فنی و تجاری تولیدکنندگان سیم و کابل در انتخاب
|
||||||
|
هوشمندانه تجهیزات و توسعه خطوط تولید است.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
با تکیه بر تجربه اجرایی، شبکه بینالمللی و شناخت دقیق فرآیندهای
|
||||||
|
تولید، راهکاری متناسب با ظرفیت، بودجه و اهداف هر کارخانه ارائه
|
||||||
|
میکنیم.
|
||||||
|
</p>
|
||||||
|
<div className="about__features">
|
||||||
|
<div>
|
||||||
|
<ShieldCheck />
|
||||||
|
<span>
|
||||||
|
<strong>تضمین اصالت</strong>
|
||||||
|
ارزیابی فنی پیش از خرید
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<Settings />
|
||||||
|
<span>
|
||||||
|
<strong>پشتیبانی اجرایی</strong>
|
||||||
|
نصب، راهاندازی و آموزش
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<a className="button button--navy" href="/about-us">
|
||||||
|
بیشتر درباره ما
|
||||||
|
<ArrowLeft size={18} />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="values">
|
||||||
|
<div className="container values__grid">
|
||||||
|
{[
|
||||||
|
[Globe2, "رقابت در بازار جهانی", "GLOBAL COMPETITION"],
|
||||||
|
[Gauge, "کیفیت استاندارد", "STANDARD QUALITY"],
|
||||||
|
[BriefcaseBusiness, "مهندسی نوآورانه", "SMART ENGINEERING"],
|
||||||
|
[FlaskConical, "تکنولوژی پیشرفته", "ADVANCED TECHNOLOGY"],
|
||||||
|
].map(([Icon, title, en], index) => {
|
||||||
|
const ValueIcon = Icon as typeof Globe2;
|
||||||
|
return (
|
||||||
|
<div className="value-card" key={title as string}>
|
||||||
|
<span>0{index + 1}</span>
|
||||||
|
<ValueIcon />
|
||||||
|
<h3>{title as string}</h3>
|
||||||
|
<p>{en as string}</p>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
})}
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="news" id="news">
|
||||||
|
<div className="container">
|
||||||
|
<div className="section-heading-row">
|
||||||
|
<SectionTitle eyebrow="INSIGHTS & NEWS" title="دانش روز صنعت" />
|
||||||
|
<a className="text-link" href="#">
|
||||||
|
مشاهده همه اخبار
|
||||||
|
<ArrowLeft size={18} />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div className="news-grid">
|
||||||
|
{news.map((item, index) => (
|
||||||
|
<article className={`news-card ${index === 0 ? "news-card--featured" : ""}`} key={item.title}>
|
||||||
|
<a className="news-card__image" href="#">
|
||||||
|
<img src={item.image} alt={item.title} />
|
||||||
|
</a>
|
||||||
|
<div className="news-card__body">
|
||||||
|
<div>
|
||||||
|
<span>{item.tag}</span>
|
||||||
|
<time>{item.date}</time>
|
||||||
|
</div>
|
||||||
|
<h3>{item.title}</h3>
|
||||||
|
<p>
|
||||||
|
تازهترین تحولات، فناوریها و رویدادهای تخصصی صنعت سیم و
|
||||||
|
کابل را با تحلیل کارشناسان سامان اندیش دنبال کنید.
|
||||||
|
</p>
|
||||||
|
<a href="#">
|
||||||
|
ادامه مطلب
|
||||||
|
<ArrowLeft size={17} />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</article>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="customers">
|
||||||
|
<div className="container">
|
||||||
|
<SectionTitle eyebrow="TRUSTED BY INDUSTRY" title="مشتریان ما" />
|
||||||
|
<div className="logo-marquee">
|
||||||
|
<div>
|
||||||
|
{[...customerLogos, ...customerLogos].map((logo, index) => (
|
||||||
|
<span key={`${logo}-${index}`}>
|
||||||
|
<img src={`${assetBase}/${logo}`} alt="نشان مشتری سامان اندیش" />
|
||||||
|
</span>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section className="cta-strip">
|
||||||
|
<div className="container cta-strip__inner">
|
||||||
|
<div>
|
||||||
|
<SlidersHorizontal />
|
||||||
|
<span>
|
||||||
|
<small>برای ارتقای خط تولید آمادهاید؟</small>
|
||||||
|
<strong>ماشین مناسب را با کمک متخصصان ما پیدا کنید.</strong>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<a className="button button--white" href="/contact-us">
|
||||||
|
شروع گفتگو
|
||||||
|
<ArrowLeft size={18} />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<footer className="footer" id="contact">
|
||||||
|
<div className="footer__pattern" />
|
||||||
|
<div className="container footer__grid">
|
||||||
|
<div className="footer__brand">
|
||||||
|
<img src={`${assetBase}/4eEq8S7FxV.png`} alt="سامان اندیش" />
|
||||||
|
<p>
|
||||||
|
تأمینکننده تخصصی ماشینآلات و راهکارهای فنی صنعت سیم و کابل، با
|
||||||
|
تمرکز بر کیفیت، بهرهوری و همکاری بلندمدت.
|
||||||
|
</p>
|
||||||
|
<div>
|
||||||
|
<a href="#" aria-label="اینستاگرام">
|
||||||
|
<Camera />
|
||||||
|
</a>
|
||||||
|
<a href="#" aria-label="لینکدین">
|
||||||
|
<Link />
|
||||||
|
</a>
|
||||||
|
<a href="#" aria-label="تلگرام">
|
||||||
|
<MessageCircle />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="footer__links">
|
||||||
|
<h3>دسترسی سریع</h3>
|
||||||
|
<a href="#">صفحه اصلی</a>
|
||||||
|
<a href="#products">ماشینآلات</a>
|
||||||
|
<a href="#news">اخبار و مقالات</a>
|
||||||
|
<a href="/about-us">درباره ما</a>
|
||||||
|
<a href="/contact-us">تماس با ما</a>
|
||||||
|
</div>
|
||||||
|
<div className="footer__links">
|
||||||
|
<h3>خدمات ما</h3>
|
||||||
|
<a href="#">تأمین ماشینآلات</a>
|
||||||
|
<a href="#">خدمات فنی و مهندسی</a>
|
||||||
|
<a href="#">مواد اولیه</a>
|
||||||
|
<a href="/contact-us">مشاوره خرید</a>
|
||||||
|
</div>
|
||||||
|
<div className="footer__contact">
|
||||||
|
<h3>با ما در ارتباط باشید</h3>
|
||||||
|
<a href="tel:+982188530256">
|
||||||
|
<span>
|
||||||
|
<Phone />
|
||||||
|
</span>
|
||||||
|
<div>
|
||||||
|
<small>شماره تماس</small>
|
||||||
|
<strong dir="ltr">021 8853 0256</strong>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
<a href="mailto:info@samanandish.com">
|
||||||
|
<span>
|
||||||
|
<Mail />
|
||||||
|
</span>
|
||||||
|
<div>
|
||||||
|
<small>ایمیل</small>
|
||||||
|
<strong>info@samanandish.com</strong>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
<div className="address">
|
||||||
|
<span>
|
||||||
|
<MapPin />
|
||||||
|
</span>
|
||||||
|
<p>تهران، خیابان مطهری، خیابان ترکمنستان</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="container footer__bottom">
|
||||||
|
<p>© ۱۴۰۵ سامان اندیش — تمامی حقوق محفوظ است.</p>
|
||||||
|
<span dir="ltr">ENGINEERED FOR INDUSTRY</span>
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
|
</main>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
import { defineConfig, globalIgnores } from "eslint/config";
|
||||||
|
import nextVitals from "eslint-config-next/core-web-vitals";
|
||||||
|
import nextTypescript from "eslint-config-next/typescript";
|
||||||
|
|
||||||
|
export default defineConfig([
|
||||||
|
...nextVitals,
|
||||||
|
...nextTypescript,
|
||||||
|
{
|
||||||
|
rules: {
|
||||||
|
"@next/next/no-img-element": "off",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
globalIgnores([".next/**", "node_modules/**"]),
|
||||||
|
]);
|
||||||
Generated
+6259
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"name": "saman-andish",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"private": true,
|
||||||
|
"description": "Saman Andish industrial machinery homepage",
|
||||||
|
"scripts": {
|
||||||
|
"dev": "next dev",
|
||||||
|
"build": "next build",
|
||||||
|
"start": "next start",
|
||||||
|
"lint": "eslint ."
|
||||||
|
},
|
||||||
|
"keywords": [
|
||||||
|
"nextjs",
|
||||||
|
"industrial-machinery"
|
||||||
|
],
|
||||||
|
"dependencies": {
|
||||||
|
"lucide-react": "^1.33.0",
|
||||||
|
"next": "^16.3.2",
|
||||||
|
"react": "^19.2.8",
|
||||||
|
"react-dom": "^19.2.8"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@types/node": "^26.2.0",
|
||||||
|
"@types/react": "^19.2.18",
|
||||||
|
"@types/react-dom": "^19.2.5",
|
||||||
|
"eslint": "^9.39.5",
|
||||||
|
"eslint-config-next": "^16.3.2",
|
||||||
|
"typescript": "^6.0.3"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
"compilerOptions": {
|
||||||
|
"target": "ES2017",
|
||||||
|
"lib": ["dom", "dom.iterable", "esnext"],
|
||||||
|
"allowJs": false,
|
||||||
|
"skipLibCheck": true,
|
||||||
|
"strict": true,
|
||||||
|
"noEmit": true,
|
||||||
|
"esModuleInterop": true,
|
||||||
|
"module": "esnext",
|
||||||
|
"moduleResolution": "bundler",
|
||||||
|
"resolveJsonModule": true,
|
||||||
|
"isolatedModules": true,
|
||||||
|
"jsx": "react-jsx",
|
||||||
|
"incremental": true,
|
||||||
|
"plugins": [{ "name": "next" }],
|
||||||
|
"paths": {
|
||||||
|
"@/*": ["./*"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"include": [
|
||||||
|
"next-env.d.ts",
|
||||||
|
"**/*.ts",
|
||||||
|
"**/*.tsx",
|
||||||
|
".next/types/**/*.ts",
|
||||||
|
".next/dev/types/**/*.ts"
|
||||||
|
],
|
||||||
|
"exclude": ["node_modules"]
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user