import type { Metadata } from "next"; import { ArrowRight, BriefcaseBusiness, GraduationCap, Layers3, MapPin, Sparkles, Wrench } from "lucide-react"; 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 { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; 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 workItems = [ { period: t("workOnePeriod"), role: t("workOneRole"), company: t("workOneCompany"), text: t("workOneText"), }, { period: t("workTwoPeriod"), role: t("workTwoRole"), company: t("workTwoCompany"), text: t("workTwoText"), }, { period: t("workThreePeriod"), role: t("workThreeRole"), company: t("workThreeCompany"), text: t("workThreeText"), }, ]; const educationItems = [ { title: t("educationOneTitle"), place: t("educationOnePlace"), text: t("educationOneText"), }, { title: t("educationTwoTitle"), place: t("educationTwoPlace"), text: t("educationTwoText"), }, ]; const skillItems = [t("skillOne"), t("skillTwo"), t("skillThree"), t("skillFour"), t("skillFive"), t("skillSix")]; const toolItems = [t("toolOne"), t("toolTwo"), t("toolThree"), t("toolFour")]; const focusItems = [t("focusOne"), t("focusTwo"), t("focusThree")]; return ( <>
{t("storyEyebrow")}

{t("storyTitle")}

{t("storyTextOne")}

{t("storyTextTwo")}

{focusItems.map((item) => (
{item}
))}
{t("experienceEyebrow")}

{t("experienceTitle")}

{workItems.map((item, index) => (

{item.period}

{item.role}

{item.company}

{item.text}

))}
{t("educationEyebrow")}

{t("educationTitle")}

{t("educationIntro")}

{educationItems.map((item) => (

{item.place}

{item.title}

{item.text}

))}
{t("skillsEyebrow")}

{t("skillsTitle")}

{t("skillsIntro")}

{skillItems.map((item) => ( {item} ))}
{t("toolsEyebrow")}
{toolItems.map((item) => (
{item}
))}
{t("focusEyebrow")}
{focusItems.map((item) => (
{item}
))}
); }