Files
gitlab-instance-0a899031_salon/app/history/page.tsx
2026-03-16 06:53:23 -05:00

85 lines
3.7 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"use client";
import Link from "next/link";
import SessionCoverImage from "../components/SessionCoverImage";
import AddressLink from "../components/AddressLink";
import Header from "../components/Header";
import Footer from "../components/Footer";
import { PAST_SESSIONS } from "@/config/home.config";
import { ACTIVITY_TYPES } from "@/config/home.config";
export default function HistoryPage() {
return (
<div className="min-h-screen bg-[#faf8f5] dark:bg-stone-950">
<Header />
<main className="max-w-[700px] mx-auto px-4 sm:px-6 py-8 sm:py-12">
<h1 className="text-xl sm:text-2xl font-bold text-stone-800 dark:text-stone-100 mb-2">
</h1>
<p className="text-sm text-stone-500 dark:text-stone-400 mb-8">
</p>
<div className="relative">
<div className="absolute left-[11px] sm:left-[15px] top-0 bottom-0 w-px bg-stone-200 dark:bg-stone-700" />
<div className="space-y-0">
{PAST_SESSIONS.map((s, i) => (
<Link
key={s.id}
href={`/history/${s.id}`}
className="group flex gap-4 sm:gap-6 py-6 sm:py-8 relative"
>
<div className="relative z-10 w-6 h-6 sm:w-8 sm:h-8 rounded-full bg-amber-500 shrink-0 mt-1 flex items-center justify-center text-white text-[10px] sm:text-xs font-bold">
{PAST_SESSIONS.length - i}
</div>
<div className="flex-1 min-w-0">
<div className="flex flex-col sm:flex-row sm:items-start gap-3 sm:gap-4">
<div className="relative w-full sm:w-28 sm:h-28 shrink-0 aspect-[4/3] sm:aspect-square rounded-xl overflow-hidden bg-stone-100 dark:bg-stone-800">
{s.coverImage ? (
<SessionCoverImage
src={s.coverImage}
alt={s.title}
type={s.type}
fill
sizes="(max-width: 640px) 100vw, 112px"
className="object-cover"
/>
) : (
<div className="absolute inset-0 flex items-center justify-center text-2xl"></div>
)}
</div>
<div className="min-w-0 flex-1">
<span className="text-[10px] sm:text-xs text-amber-600 dark:text-amber-400/90">
{ACTIVITY_TYPES[s.type]} · {s.city}
</span>
<h2 className="font-semibold text-stone-800 dark:text-stone-100 text-base sm:text-lg mt-0.5 group-hover:text-amber-600 dark:group-hover:text-amber-400">
{s.title}
</h2>
<p className="text-sm text-stone-500 dark:text-stone-400 mt-0.5">
{s.date} {s.time} · <AddressLink place={s.place} city={s.city} />
</p>
<span className="inline-flex items-center gap-1 mt-2 text-amber-600 dark:text-amber-400 text-xs font-medium">
</span>
</div>
</div>
</div>
</Link>
))}
</div>
</div>
<div className="mt-12 pt-8 border-t border-stone-200 dark:border-stone-800">
<Link
href="/"
className="text-sm text-stone-500 dark:text-stone-400 hover:text-amber-600 dark:hover:text-amber-400"
>
</Link>
</div>
</main>
<Footer />
</div>
);
}