Files
clienthub/src/components/phase-timeline.tsx
T
simone 11870e15d3 feat: Client Portal redesign to Quiet Luxury + milestone stepper
- New MilestoneStepper primitive (horizontal per-phase progress)
- Token-migrate portal shell, phase cards, sidebar cards, kanban to dual-theme
- Soft-tint status pills (emerald/amber/muted) replacing solid badges
- embedded prop on ClientDashboard fixes double-header in multi-project tabs

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-10 22:54:58 +02:00

24 lines
720 B
TypeScript

import type { ClientView } from '@/lib/client-view';
import { PhaseCard } from './client/PhaseCard';
interface PhaseTimelineProps {
phases: ClientView['phases'];
token: string;
}
export function PhaseTimeline({ phases, token }: PhaseTimelineProps) {
if (phases.length === 0) {
return <p className="text-sm text-muted-foreground italic">Nessuna fase ancora configurata.</p>;
}
return (
<div className="space-y-6">
{phases.map((phase) => {
// done phases start collapsed; active and upcoming start expanded
const defaultOpen = phase.status !== 'done';
return <PhaseCard key={phase.id} phase={phase} token={token} defaultOpen={defaultOpen} />;
})}
</div>
);
}