Button
File Picker Button
A file picker over a real input[type=file]: click, Tab and Enter work on their own, and JS is added only for the file name, its weight and drag and drop.
What you can change
- the caption through the label prop and the constraints line through hint
- the allowed formats through the accept prop
- the reset caption through the resetLabel prop
A link for your AI agent: preview, code and instructions.
Preview
Use it with AI
- 1. Copy the link.
- 2. Write to your agent in your own words and drop the link into the sentence.
- 3. The agent opens the link and installs the component from the registry.
put this on the home page as the hero:
https://vibeui.ru/c/button-031?lang=en&theme=dark
Not sure where to paste it? Step-by-step guide
Show the full instructions
What the link says, spelled out. Use it when your agent cannot open links — paste this text instead.
Loading…
For developers
The install command lives in the “Component source” block below — a signed link that stays valid for 24 hours.
Technical notes
The component is self-contained: one file, no dependencies, its own palette in the local --vibeui-button-031-* variables. Client component: the name and the weight of the chosen file are held in state, and the file is reported outwards through onFileChange. The hidden input lies inside a label, so the browser opens the dialog with no handlers; the focus ring is drawn on the plate through :has(input:focus-visible). On a drop the file is placed into the input itself through a ref, so that the form submits the ordinary way.
Tags
- button
- upload
- file
- drag-drop
Component source
The same file your agent installs. Here in case you would rather copy it by hand.
Loading…