AIUseCaseModuleEditor (698 LOC) → thin orchestrator (187) + constants (29) + barrel tabs (4) + tabs implementation split into SystemData (261), PurposeAct (149), RisksReview (219). DataPointCatalog (658 LOC) → main (291) + helpers (190) + CategoryGroup (124) + Row (108). ProjectSelector (656 LOC) → main (211) + CreateProjectDialog (169) + ProjectActionDialog (140) + ProjectCard (128). All files now under 300 LOC soft target and 500 LOC hard cap. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
30 lines
1.3 KiB
TypeScript
30 lines
1.3 KiB
TypeScript
import { AIModuleReviewTriggerType } from '@/lib/sdk/dsfa/ai-use-case-types'
|
|
|
|
export const TABS = [
|
|
{ id: 1, label: 'System', icon: '🖥️' },
|
|
{ id: 2, label: 'Daten', icon: '📊' },
|
|
{ id: 3, label: 'Zweck & Art. 22', icon: '⚖️' },
|
|
{ id: 4, label: 'KI-Kriterien', icon: '🔍' },
|
|
{ id: 5, label: 'Risiken', icon: '⚠️' },
|
|
{ id: 6, label: 'Maßnahmen', icon: '🛡️' },
|
|
{ id: 7, label: 'Review', icon: '🔄' },
|
|
]
|
|
|
|
export const REVIEW_TRIGGER_TYPES: { value: AIModuleReviewTriggerType; label: string; icon: string }[] = [
|
|
{ value: 'model_update', label: 'Modell-Update', icon: '🔄' },
|
|
{ value: 'data_drift', label: 'Datendrift', icon: '📉' },
|
|
{ value: 'accuracy_drop', label: 'Genauigkeitsabfall', icon: '📊' },
|
|
{ value: 'new_use_case', label: 'Neuer Anwendungsfall', icon: '🎯' },
|
|
{ value: 'regulatory_change', label: 'Regulatorische Änderung', icon: '📜' },
|
|
{ value: 'incident', label: 'Sicherheitsvorfall', icon: '🚨' },
|
|
{ value: 'periodic', label: 'Regelmäßig (zeitbasiert)', icon: '📅' },
|
|
]
|
|
|
|
export const LEGAL_BASES = [
|
|
'Art. 6 Abs. 1 lit. a DSGVO (Einwilligung)',
|
|
'Art. 6 Abs. 1 lit. b DSGVO (Vertragserfüllung)',
|
|
'Art. 6 Abs. 1 lit. c DSGVO (Rechtliche Verpflichtung)',
|
|
'Art. 6 Abs. 1 lit. f DSGVO (Berechtigtes Interesse)',
|
|
'Art. 9 Abs. 2 lit. a DSGVO (Ausdrückliche Einwilligung)',
|
|
]
|