UNPKG

@nish1896/rhf-mui-components

Version:

A suite of 20+ production-ready react-hook-form components built with material-ui. Fully typed, tree-shakable, and optimized for enterprise-grade forms.

54 lines (53 loc) 1.75 kB
import { FileInputProps, FileUploadError } from "../../types/file-uploader.js"; import { FormHelperTextProps, FormLabelProps } from "../../types/mui.js"; import { ChangeEvent, ReactNode } from "react"; import * as react_jsx_runtime0 from "react/jsx-runtime"; import { Control, FieldValues, Path, RegisterOptions } from "react-hook-form"; //#region src/mui/file-uploader/index.d.ts type RHFFileUploaderProps<T extends FieldValues> = { fieldName: Path<T>; control: Control<T>; registerOptions?: RegisterOptions<T, Path<T>>; required?: boolean; showFileSize?: boolean; hideFileList?: boolean; renderUploadButton?: (fileInput: ReactNode) => ReactNode; renderFileItem?: (file: File, index: number) => ReactNode; onValueChange?: (acceptedFiles: File | File[] | null, event: ChangeEvent<HTMLInputElement>) => void; onUploadError?: (errors: FileUploadError[], rejectedFiles: File[]) => void; label?: ReactNode; showLabelAboveFormField?: boolean; formLabelProps?: FormLabelProps; errorMessage?: ReactNode; helperText?: ReactNode; hideErrorMessage?: boolean; formHelperTextProps?: FormHelperTextProps; fullWidth?: boolean; } & FileInputProps; declare const RHFFileUploader: <T extends FieldValues>({ fieldName, control, registerOptions, accept, multiple, maxFiles, maxSize, hideFileList, showFileSize, renderUploadButton, renderFileItem, onValueChange, disabled: muiDisabled, onUploadError, label, showLabelAboveFormField, formLabelProps, required, helperText, errorMessage, hideErrorMessage, formHelperTextProps, fullWidth }: RHFFileUploaderProps<T>) => react_jsx_runtime0.JSX.Element; //#endregion export { type FileUploadError, RHFFileUploaderProps, RHFFileUploader as default };