'use client'; import { useState } from 'react'; import { useQuery } from '@tanstack/react-query'; import { TransmittalList } from '@/components/transmittal/transmittal-list'; import { transmittalService } from '@/lib/services/transmittal.service'; import { projectService } from '@/lib/services/project.service'; import { Button } from '@/components/ui/button'; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select'; import { Plus, RefreshCw } from 'lucide-react'; import Link from 'next/link'; import { TransmittalListResponse } from '@/types/transmittal'; export default function TransmittalPage() { // ADR-019: Dynamic project selection via UUID const [selectedProjectUuid, setSelectedProjectUuid] = useState(''); const { data: projectsData } = useQuery({ queryKey: ['projects-for-transmittals'], queryFn: () => projectService.getAll(), }); const projects = projectsData?.data || projectsData || []; const { data, isLoading, error, refetch } = useQuery({ queryKey: ['transmittals', selectedProjectUuid], queryFn: () => transmittalService.getAll({ projectId: selectedProjectUuid }), enabled: !!selectedProjectUuid, }); return (

Transmittals

Manage document transmittal slips

{/* ADR-019: Project filter */}
Project:
{error && (
Failed to load transmittals.
)} {isLoading ? (
) : ( )}
); }