'use client' import { useState } from 'react' import { setMatrixEntry } from '@/lib/sdk/training/api' import type { TrainingModule } from '@/lib/sdk/training/types' export function MatrixAddModal({ roleCode, modules, onClose, onSaved }: { roleCode: string modules: TrainingModule[] onClose: () => void onSaved: () => void }) { const activeModules = modules.filter(m => m.is_active).sort((a, b) => a.module_code.localeCompare(b.module_code)) const [moduleId, setModuleId] = useState(activeModules[0]?.id || '') const [isMandatory, setIsMandatory] = useState(true) const [priority, setPriority] = useState(1) const [saving, setSaving] = useState(false) const [error, setError] = useState(null) const handleSave = async () => { if (!moduleId) return setSaving(true) setError(null) try { await setMatrixEntry({ role_code: roleCode, module_id: moduleId, is_mandatory: isMandatory, priority }) onSaved() } catch (e) { setError(e instanceof Error ? e.message : 'Fehler beim Hinzufuegen') } finally { setSaving(false) } } return (

Modul zu Rolle hinzufuegen

Rolle: {roleCode}

setPriority(Number(e.target.value))} className="w-24 px-3 py-2 border border-gray-300 rounded-lg text-sm focus:ring-2 focus:ring-blue-500 focus:border-blue-500" />
{error &&

{error}

}
) }