import React, { forwardRef } from "react"; import { Slot } from "../../../utils/components/slot/Slot"; import { FileUploadBaseProps } from "../FileUpload.types"; import { useFileUpload } from "../hooks/useFileUpload"; interface FileUploadTriggerProps extends Omit< FileUploadBaseProps, "fileLimit" > { children: React.ReactNode; } const FileUploadTrigger = forwardRef( ( { children, multiple = true, accept, onSelect, validator, maxSizeInBytes, }: FileUploadTriggerProps, ref, ) => { const { onChange, inputRef, mergedRef } = useFileUpload({ ref, onSelect, validator, accept, maxSizeInBytes, disabled: false, }); return ( <> inputRef.current?.click()}>{children} ); }, ); export default FileUploadTrigger; export { FileUploadTrigger }; export type { FileUploadTriggerProps };