'use client' // ============================================================================= // PII RULE MODALS // NewRuleModal and EditRuleModal extracted from PIIRulesTab for LOC compliance. // ============================================================================= interface PIIRule { id: string name: string description?: string pattern?: string category: string action: string active: boolean created_at: string } export const CATEGORIES = [ { value: 'email', label: 'E-Mail-Adressen' }, { value: 'phone', label: 'Telefonnummern' }, { value: 'iban', label: 'IBAN/Bankdaten' }, { value: 'name', label: 'Personennamen' }, { value: 'address', label: 'Adressen' }, { value: 'id_number', label: 'Ausweisnummern' }, { value: 'health', label: 'Gesundheitsdaten' }, { value: 'other', label: 'Sonstige' }, ] export const ACTIONS = [ { value: 'warn', label: 'Warnung', color: 'bg-amber-100 text-amber-700' }, { value: 'mask', label: 'Maskieren', color: 'bg-orange-100 text-orange-700' }, { value: 'block', label: 'Blockieren', color: 'bg-red-100 text-red-700' }, ] // --------------------------------------------------------------------------- // NewRuleModal // --------------------------------------------------------------------------- export interface NewRuleState { name: string pattern: string category: string action: string active: boolean } interface NewRuleModalProps { newRule: NewRuleState onChange: (rule: NewRuleState) => void onSubmit: () => void onClose: () => void saving: boolean } export function NewRuleModal({ newRule, onChange, onSubmit, onClose, saving }: NewRuleModalProps) { return (