/** * Dynamic custom field renderer. * Renders the appropriate input element based on field_type. */ import React, { useId } from 'react'; import { Input } from '@/components/ui/Input'; import { Select } from '@/components/ui/Select'; import { Badge } from '@/components/ui/Badge'; import { X } from 'lucide-react'; import type { CustomFieldDefinition } from '@/api/customFieldDefinitions'; export interface CustomFieldRendererProps { definition: CustomFieldDefinition; value: any; onChange: (value: any) => void; } export function CustomFieldRenderer({ definition, value, onChange }: CustomFieldRendererProps) { const generatedId = useId(); const fieldId = `cf-${definition.id || generatedId}`; const { field_type, options, required } = definition; // --- Boolean: checkbox --- if (field_type === 'boolean') { return (
Keine Optionen verfügbar
) : (Alle Optionen ausgewählt
)}