UNPKG

finform-react-builder

Version:

A powerful, flexible React form builder with dynamic field rendering, custom validation, multi-step forms, Material-UI integration, image component support, toggle/radio buttons, switches, autocomplete, and advanced button positioning

42 lines (41 loc) 1.09 kB
export interface DocumentUploadConfig { id: string; title: string; fileTypes: string[]; description?: string; maxSize?: number; required?: boolean; multiple?: boolean; accept?: string; placeholder?: string; helperText?: string; customValidation?: (file: File) => string | null | Promise<string | null>; submitButton?: { text: string; position: 'left' | 'center' | 'right'; disabled?: boolean; loading?: boolean; }; } export interface UploadedFile { id: string; file: File; preview?: string; progress: number; status: 'pending' | 'uploading' | 'success' | 'error'; error?: any; uploadedAt: Date; } export interface DocumentUploadProps { config: DocumentUploadConfig; value?: UploadedFile[]; onChange?: (files: UploadedFile[]) => void; onSubmit?: (files: UploadedFile[]) => void; disabled?: boolean; className?: string; style?: React.CSSProperties; } export interface FilePreviewProps { file: UploadedFile; onRemove: (id: string) => void; }