diff --git a/app/(app)/sessions/[id]/page.tsx b/app/(app)/sessions/[id]/page.tsx index cb2d3e3..805c9a1 100644 --- a/app/(app)/sessions/[id]/page.tsx +++ b/app/(app)/sessions/[id]/page.tsx @@ -1,10 +1,12 @@ import Link from "next/link"; import { notFound } from "next/navigation"; import type { Metadata } from "next"; +import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { SessionTimelineChart } from "@/components/sessions/SessionTimelineChart"; import { SessionTitleEditor } from "@/components/sessions/SessionTitleEditor"; +import { STATUS_VARIANT } from "@/components/sessions/SessionsTable"; import { getSessionDetail, getSessionName } from "@/lib/db/queries/sessions"; import { getSessionTimeline } from "@/lib/db/queries/stats"; import { Play } from "lucide-react"; @@ -36,8 +38,9 @@ export default async function SessionDetailPage({ params }: { params: Promise<{
-

- {detail.session.status} · {formatDuration(detail.session.durationMs)} +

+ {detail.session.status} + · {formatDuration(detail.session.durationMs)} {detail.session.kind === "replay" && detail.replayedFromName !== undefined && ( <> · replayed from {detail.replayedFromName ?? `session #${detail.session.replayedSessionId}`} )} @@ -50,7 +53,7 @@ export default async function SessionDetailPage({ params }: { params: Promise<{ )}

{detail.session.description && ( -

{detail.session.description}

+

{detail.session.description}

)}
{canReplay && ( diff --git a/components/sessions/SessionTitleEditor.tsx b/components/sessions/SessionTitleEditor.tsx index ff95372..95fd294 100644 --- a/components/sessions/SessionTitleEditor.tsx +++ b/components/sessions/SessionTitleEditor.tsx @@ -46,13 +46,13 @@ export function SessionTitleEditor({ sessionId, initialName }: { sessionId: numb }, [status]); return ( -
+
setValue(e.target.value)} placeholder={`Session #${sessionId}`} aria-label="Session name" - className="min-w-0 max-w-full border-b-2 border-transparent bg-transparent px-1.5 py-0.5 font-heading text-2xl font-semibold text-foreground outline-none transition-colors placeholder:text-muted-foreground/70 hover:border-b-border focus:border-b-primary [field-sizing:content]" + className="min-w-0 max-w-full border-b-2 border-transparent bg-transparent font-heading text-2xl font-semibold text-foreground outline-none transition-colors placeholder:text-muted-foreground/70 hover:border-b-border focus:border-b-primary [field-sizing:content]" />