refactor(consulting): reorder sections, remove Performance, testimonial-style consultants
This commit is contained in:
+77
-79
@@ -1,7 +1,6 @@
|
||||
import { AspectRatio } from '@/components/ui/aspect-ratio'
|
||||
import { Button } from '@/components/ui/button'
|
||||
import { Card, CardContent } from '@/components/ui/card'
|
||||
import { Badge } from '@/components/ui/badge'
|
||||
import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar'
|
||||
import {
|
||||
Accordion,
|
||||
@@ -14,11 +13,11 @@ import {
|
||||
Plug2,
|
||||
Sparkles,
|
||||
Database,
|
||||
Gauge,
|
||||
Shield,
|
||||
Layout,
|
||||
BarChart3,
|
||||
HelpCircle,
|
||||
Quote,
|
||||
} from 'lucide-react'
|
||||
import Link from 'next/link'
|
||||
|
||||
@@ -65,11 +64,6 @@ const domains = [
|
||||
description: 'سامانههای بازیابی و تولید پاسخ مبتنی بر دانش',
|
||||
icon: Database,
|
||||
},
|
||||
{
|
||||
title: 'Performance',
|
||||
description: 'بهینهسازی عملکرد، مقیاسپذیری و پاسخگویی',
|
||||
icon: Gauge,
|
||||
},
|
||||
{
|
||||
title: 'امنیت',
|
||||
description: 'امنیت داده، احراز هویت و کنترل دسترسی',
|
||||
@@ -168,52 +162,13 @@ export default function ConsultingPage() {
|
||||
</div>
|
||||
</section>
|
||||
|
||||
{/* Section 2: مشاوران */}
|
||||
<section className="bg-muted/30 py-16 md:py-24" id="consultants">
|
||||
<div className="mx-auto max-w-6xl px-4 md:px-6">
|
||||
<div className="mx-auto max-w-2xl text-center mb-12">
|
||||
<h2 className="text-3xl font-bold md:text-4xl">چه کسانی مشاوره میدهند؟</h2>
|
||||
<p className="mt-4 text-muted-foreground">
|
||||
تیم مشاوره ما متشکل از متخصصان با تجربه در حوزههای مختلف فناوری است.
|
||||
</p>
|
||||
</div>
|
||||
<div className="grid gap-8 md:grid-cols-3">
|
||||
{consultants.map((person) => (
|
||||
<Card key={person.fallback} className="overflow-hidden">
|
||||
<CardContent className="pt-6">
|
||||
<div className="flex flex-col items-center text-center space-y-4">
|
||||
<Avatar className="h-24 w-24">
|
||||
<AvatarImage src={person.image} alt={person.name} />
|
||||
<AvatarFallback className="text-xl">{person.fallback}</AvatarFallback>
|
||||
</Avatar>
|
||||
<div>
|
||||
<h3 className="font-bold text-lg">{person.name}</h3>
|
||||
<div className="flex flex-wrap justify-center gap-1.5 mt-2">
|
||||
{person.expertise.map((e) => (
|
||||
<Badge key={e} variant="secondary" className="text-xs">
|
||||
{e}
|
||||
</Badge>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
<p className="text-sm text-muted-foreground leading-relaxed">
|
||||
{person.description}
|
||||
</p>
|
||||
</div>
|
||||
</CardContent>
|
||||
</Card>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
{/* Section 3: حوزههای مشاوره */}
|
||||
<section className="bg-background py-16 md:py-24" id="domains">
|
||||
{/* Section 2: حوزههای مشاوره (جابجا شده با مشاوران) */}
|
||||
<section className="bg-muted/30 py-16 md:py-24" id="domains">
|
||||
<div className="mx-auto max-w-6xl px-4 md:px-6">
|
||||
<div className="mx-auto max-w-2xl text-center mb-12">
|
||||
<h2 className="text-3xl font-bold md:text-4xl">در چه حوزههایی مشاوره میدهیم؟</h2>
|
||||
<p className="mt-4 text-muted-foreground">
|
||||
از اینتگریشن و هوشمندسازی تا RAG و بهینهسازی عملکرد
|
||||
از اینتگریشن و هوشمندسازی تا RAG و معماری نرمافزار
|
||||
</p>
|
||||
</div>
|
||||
<div className="grid gap-6 sm:grid-cols-2 lg:grid-cols-3">
|
||||
@@ -241,8 +196,79 @@ export default function ConsultingPage() {
|
||||
</div>
|
||||
</section>
|
||||
|
||||
{/* Section 4: فرم درخواست مشاوره */}
|
||||
<section className="bg-muted/30 py-16 md:py-24" id="consulting-form">
|
||||
{/* Section 3: چه کسانی مشاوره میدهند؟ — سبک Testimonial */}
|
||||
<section className="bg-background py-16 md:py-24" id="consultants">
|
||||
<div className="mx-auto max-w-6xl px-4 md:px-6">
|
||||
<div className="mx-auto max-w-2xl text-center mb-12">
|
||||
<h2 className="text-3xl font-bold md:text-4xl">چه کسانی مشاوره میدهند؟</h2>
|
||||
<p className="mt-4 text-muted-foreground">
|
||||
تیم مشاوره ما متشکل از متخصصان با تجربه در حوزههای مختلف فناوری است.
|
||||
</p>
|
||||
</div>
|
||||
<div className="grid gap-8 md:grid-cols-3">
|
||||
{consultants.map((person) => (
|
||||
<Card key={person.fallback} className="overflow-hidden border-border/60 shadow-sm">
|
||||
<CardContent className="p-6 md:p-8">
|
||||
<Quote className="size-10 text-primary/30 mb-4" aria-hidden />
|
||||
<blockquote className="text-muted-foreground leading-relaxed mb-6">
|
||||
{person.description}
|
||||
</blockquote>
|
||||
<div className="flex items-center gap-4">
|
||||
<Avatar className="h-14 w-14 shrink-0 border-2 border-background shadow">
|
||||
<AvatarImage src={person.image} alt={person.name} />
|
||||
<AvatarFallback className="text-lg bg-primary/10 text-primary">
|
||||
{person.fallback}
|
||||
</AvatarFallback>
|
||||
</Avatar>
|
||||
<div>
|
||||
<h3 className="font-bold text-foreground">{person.name}</h3>
|
||||
<div className="flex flex-wrap gap-1.5 mt-1">
|
||||
{person.expertise.map((e) => (
|
||||
<span key={e} className="text-xs text-muted-foreground">
|
||||
{e}
|
||||
{e !== person.expertise[person.expertise.length - 1] ? ' · ' : ''}
|
||||
</span>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</CardContent>
|
||||
</Card>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
{/* Section 4: سوالات متداول (جابجا شده با فرم) */}
|
||||
<section className="bg-muted/30 py-16 md:py-24" id="faq">
|
||||
<div className="mx-auto max-w-3xl px-4 md:px-6">
|
||||
<div className="mx-auto max-w-xl text-center mb-12">
|
||||
<h2 className="text-3xl font-bold md:text-4xl">سوالات متداول</h2>
|
||||
<p className="mt-4 text-muted-foreground">
|
||||
پاسخ سوالات رایج درباره مشاوره سازمانی
|
||||
</p>
|
||||
</div>
|
||||
<Accordion type="single" collapsible className="w-full rounded-2xl border bg-background/80 p-1 shadow-sm">
|
||||
{faqItems.map((item) => (
|
||||
<AccordionItem
|
||||
key={item.id}
|
||||
value={item.id}
|
||||
className="rounded-xl border-none px-4 data-[state=open]:bg-muted/50 data-[state=open]:shadow-sm"
|
||||
>
|
||||
<AccordionTrigger className="text-start hover:no-underline py-5">
|
||||
{item.question}
|
||||
</AccordionTrigger>
|
||||
<AccordionContent>
|
||||
<p className="text-muted-foreground leading-relaxed pb-2">{item.answer}</p>
|
||||
</AccordionContent>
|
||||
</AccordionItem>
|
||||
))}
|
||||
</Accordion>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
{/* Section 5: فرم درخواست مشاوره (جابجا شده با FAQ) */}
|
||||
<section className="bg-background py-16 md:py-24" id="consulting-form">
|
||||
<div className="mx-auto max-w-6xl px-4 md:px-6">
|
||||
<div className="mx-auto max-w-xl">
|
||||
<div className="text-center mb-10">
|
||||
@@ -259,34 +285,6 @@ export default function ConsultingPage() {
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
{/* Section 5: سوالات متداول */}
|
||||
<section className="bg-background py-16 md:py-24">
|
||||
<div className="mx-auto max-w-3xl px-4 md:px-6">
|
||||
<div className="mx-auto max-w-xl text-center mb-12">
|
||||
<h2 className="text-3xl font-bold md:text-4xl">سوالات متداول</h2>
|
||||
<p className="mt-4 text-muted-foreground">
|
||||
پاسخ سوالات رایج درباره مشاوره سازمانی
|
||||
</p>
|
||||
</div>
|
||||
<Accordion type="single" collapsible className="w-full rounded-2xl border bg-muted/30 p-1">
|
||||
{faqItems.map((item) => (
|
||||
<AccordionItem
|
||||
key={item.id}
|
||||
value={item.id}
|
||||
className="rounded-xl border-none px-4 data-[state=open]:bg-card data-[state=open]:shadow-sm"
|
||||
>
|
||||
<AccordionTrigger className="text-start hover:no-underline py-5">
|
||||
{item.question}
|
||||
</AccordionTrigger>
|
||||
<AccordionContent>
|
||||
<p className="text-muted-foreground leading-relaxed pb-2">{item.answer}</p>
|
||||
</AccordionContent>
|
||||
</AccordionItem>
|
||||
))}
|
||||
</Accordion>
|
||||
</div>
|
||||
</section>
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user