import { notFound, redirect } from 'next/navigation' import Link from 'next/link' import { asAdmin } from '@/lib/db/with-user' import { getSession } from '@/lib/auth/get-session' import { incidents } from '@/lib/db/schema' import { eq } from 'drizzle-orm' import { CapaForm } from '@/components/capa/capa-form' interface Props { params: Promise<{ id: string }> } export default async function NewCapaPage({ params }: Props) { const { id } = await params const session = await getSession() if (!session) redirect(`/login?redirect=/hse/incidents/${id}/capa/new`) if (!['hse', 'admin'].includes(session.role)) redirect('/hse/incidents') const [incident] = await asAdmin(db => db.select({ id: incidents.id, referenceNo: incidents.referenceNo, status: incidents.status, }) .from(incidents) .where(eq(incidents.id, id)) .limit(1) ) if (!incident) notFound() return (
← Back to incident

Add CAPA Action

{incident.referenceNo ?? id}

) }