# Files components

> 6 Files components for React, shadcn, Vue 3, Laravel Blade and HTML + Alpine.js: ExportButton, FileExplorer, FileUpload, ImportWizard, TrashBin, VersionHistory.

Source: https://docs.nasaqui.com/components/groups/files

- [ExportButton](https://docs.nasaqui.com/components/export-action): A button or menu that exports table data as CSV, XLSX or JSON, and PDF through a callback, with column choice, a rows scope of selected, filtered or all, a progress state and pure serializers with no dependency.
- [FileExplorer](https://docs.nasaqui.com/components/file-explorer): A file browser with a folder tree, breadcrumbs, a sortable list or a grid, a preview pane, upload by button or drop, new folder and delete. It has no storage, your callbacks do the work.
- [FileUpload](https://docs.nasaqui.com/components/file-upload): Dropzone with type, size and count validation, a file list with per-file progress, remove and retry, and a single-image upload with a thumbnail. You run the upload; it holds the state.
- [ImportWizard](https://docs.nasaqui.com/components/import-wizard): A four step wizard that imports rows from a CSV or pasted text. It maps columns to fields, previews and validates rows, then commits the valid ones.
- [TrashBin](https://docs.nasaqui.com/components/trash-bin): The trash of an app, listing deleted items with who deleted them and a retention countdown, with restore, delete forever and empty trash behind confirmations, built on EntityList.
- [VersionHistory](https://docs.nasaqui.com/components/version-history): Saved versions newest first with a read-only preview, a line diff against the previous, current or any other version, and a confirmed restore that saves as a new version.
