Standard Data
Export Button With Progress
A single export button that turns into a determinate progress bar while the job runs, then resolves into a download link or an inline retryable error — so long exports never leave users staring at a frozen button.
$ velocityx add standard-export-button-with-progress
Built for react.
Needs react already installed
as a peer dependency.
An Astro-only project needs @astrojs/react wired up first — this won't run on its own in plain Astro.
Full docs for Export Button With Progress →
Needs a licence key —
subscribe here, then
velocityx loginonce.
Props
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| onExport | function | No | () => Promise.resolve({ url: "", filename: "export.csv" }) | |
| label | string | No | "Export data" | |
| exportingLabel | string | No | "Exporting…" | |
| doneLabel | string | No | "Download ready" | |
| errorLabel | string | No | "Export failed" | |
| className | string | No | "" |
No `Props:` JSDoc comment found — types are undocumented in source, only names/defaults are known.
File this creates
The CLI writes this path into your project, relative to its root — nothing else moves.
components/velocity/standard-export-button-with-progress/ExportButtonWithProgress.jsx Using the Export Button With Progress component
Install it with velocityx add standard-export-button-with-progress.
The CLI writes the source straight into your project — no runtime dependency, no registry
lock-in, and it themes itself from the same primary-*/accent-* scale as the rest of the library.
Related components
More from Standard Data.
A query-builder for data tables — stack field/operator/value condition rows and combine them with a shared AND/OR joiner, so users compose multi-condition filters without writing a query language.
reactCheckbox row selection for a data table with a correctly indeterminate select-all, a live selected count, and a contextual action bar that appears only once something is selected, so bulk edit, export, or delete never need a separate mode.
reactTurns a truncated table cell into a focus-trapped popover showing the full value with a one-click copy button, so long IDs, JSON blobs or notes never need their own column width.
reactA settings popover for showing or hiding table columns, with the chosen layout remembered between visits so people don't have to rebuild their view every time they come back.
react