'use client';
import { useState } from 'react';
import { Card, CardContent, CardHeader } from '@/components/ui/card';
import { Badge } from '@/components/ui/badge';
import { Button } from '@/components/ui/button';
import { cn } from '@/lib/utils';
import {
type Behandelstructuur,
type Evaluatiemoment,
type Veiligheidsplan,
EVALUATION_STATUSES,
} from '@/lib/types/behandelplan';
import {
ChevronDown,
ChevronRight,
Calendar,
Clock,
Shield,
AlertTriangle,
Phone,
CheckCircle2,
} from 'lucide-react';
interface PlanningSectionProps {
behandelstructuur: Behandelstructuur | null;
evaluatiemomenten: Evaluatiemoment[] | null;
veiligheidsplan: Veiligheidsplan | null;
className?: string;
}
/**
* Blok 3: Planning & Evaluatie
* Collapsed by default, bevat:
* - Evaluatiemomenten
* - Behandelstructuur
* - Veiligheidsplan (indien aanwezig)
*/
export function PlanningSection({
behandelstructuur,
evaluatiemomenten,
veiligheidsplan,
className,
}: PlanningSectionProps) {
const [isExpanded, setIsExpanded] = useState(false);
const evaluatiesCount = evaluatiemomenten?.length || 0;
const hasVeiligheidsplan = !!veiligheidsplan;
// Count pending evaluations
const pendingEvaluaties =
evaluatiemomenten?.filter((e) => e.status === 'gepland').length || 0;
return (
Behandelstructuur
Evaluatiemomenten
Week {evaluatie.weekNumber}: {typeLabel}
{evaluatie.plannedDate && ({new Date(evaluatie.plannedDate).toLocaleDateString('nl-NL', { day: 'numeric', month: 'short', })}
)}
Coping strategieën
{contact.naam}
{contact.rol}
{contact.telefoon}