import type { Metadata } from "next"; import { ArrowRight, Blocks, BriefcaseBusiness, Compass, Layers3, MessageSquareMore, Sparkles, Workflow, } from "lucide-react"; import Image from "next/image"; import Link from "next/link"; import { getTranslations } from "next-intl/server"; import { Container } from "@/components/layout/container"; import { PageHero } from "@/components/layout/page-hero"; import { SiteLogo } from "@/components/layout/site-logo"; import { MotionFade } from "@/components/motion-fade"; import { AppCard } from "@/components/ui/app-card"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { CardContent } from "@/components/ui/card"; import { getSiteSettings, getSiteSettingsMediaBindings } from "@/lib/app-config"; import { getLocalizedPath, resolveLocale } from "@/lib/locale"; import { buildLocalizedMetadata } from "@/lib/metadata"; type AboutPageProps = { params: { locale: string; }; }; export const dynamic = "force-dynamic"; export async function generateMetadata({ params: { locale }, }: AboutPageProps): Promise { const localeKey = resolveLocale(locale); const t = await getTranslations({ locale: localeKey, namespace: "aboutPage" }); return await buildLocalizedMetadata({ locale: localeKey, pathname: "/about", title: t("title"), description: t("intro"), }); } export default async function AboutPage({ params: { locale } }: AboutPageProps) { const localeKey = resolveLocale(locale); const [t, siteSettings, mediaBindings] = await Promise.all([ getTranslations({ locale: localeKey, namespace: "aboutPage" }), getSiteSettings(), getSiteSettingsMediaBindings(), ]); const siteName = siteSettings.locales[localeKey].siteName; const valueItems = [ { icon: Compass, title: t("valueA"), text: t("valueAText"), }, { icon: Layers3, title: t("valueB"), text: t("valueBText"), }, { icon: MessageSquareMore, title: t("valueC"), text: t("valueCText"), }, ]; const processItems = [ { icon: Sparkles, title: t("processOne"), text: t("processOneText"), }, { icon: Blocks, title: t("processTwo"), text: t("processTwoText"), }, { icon: Workflow, title: t("processThree"), text: t("processThreeText"), }, ]; const statItems = [ { value: t("statOneValue"), label: t("statOneLabel"), text: t("statOneText"), }, { value: t("statTwoValue"), label: t("statTwoLabel"), text: t("statTwoText"), }, { value: t("statThreeValue"), label: t("statThreeLabel"), text: t("statThreeText"), }, ]; const highlightItems = [t("highlightOne"), t("highlightTwo"), t("highlightThree")]; return ( <>
{t("storyEyebrow")}

{t("storyTitle")}

{t("storyTextOne")}

{t("storyTextTwo")}

{highlightItems.map((item) => ( {item} ))}

{t("logoEyebrow")}

{t("logoText")}

{t("galleryAltOne")}
{t("availabilityLabel")}

{t("availabilityText")}

{t("galleryAltTwo")}
{t("valuesEyebrow")}

{t("valuesTitle")}

{t("valuesIntro")}

{valueItems.map((item) => { const Icon = item.icon; return (

{item.title}

{item.text}

); })}
{t("processEyebrow")}

{t("processTitle")}

{t("processIntro")}

{statItems.map((item) => (

{item.value}

{item.label}

{item.text}

))}
{processItems.map((item, index) => { const Icon = item.icon; const isWide = index === 0; return (
0{index + 1}

{item.title}

{item.text}

); })}
); }