Components / Foundations
FileInputBase
The native <input type="file"> for Cynosure, and the only module allowed to render one. It is a foundation: no visual opinions, so composites style or hide it.
Who uses itLink to "Who uses it"
When to use it directlyLink to "When to use it directly"
Only when building a new composite that picks files.
Use a component instead when you want people to add files: FileDrop gives a drop zone, a picker button, checks and messages.
UsageLink to "Usage"
tsx
import { FileInputBase, setInputFiles } from "@arshad-shah/cynosure";
<FileInputBase name="attachment" accept="image/*" multiple onFiles={(files) => …} />
// Files that arrived another way (a drop) can be put into the input, so forms submit them:
setInputFiles(input, droppedFiles);PropsLink to "Props"
| Prop | What it does | Type | Default |
|---|---|---|---|
onFiles | Called with the files picked (an empty array when the picker is cleared). | ((files: File[]) => void) |
Generated from the type definitions in @arshad-shah/cynosure 0.5.0.
BehaviourLink to "Behaviour"
onFilesreceives an array ofFiles; an empty array when the selection is cleared.setInputFilesreplaces the input's files, soFormDataand form submission include them.- A disabled input picks nothing and is not submitted.
These examples run Cynosure 0.5.0 (commit 50ce30b), the version on npm.