@acronis-platform/ui-react 5.3.0 → 5.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/ui/data-table/data-table-bulk-actions-bar.js +1 -1
- package/dist/components/ui/data-table/data-table-bulk-actions-bar.js.map +1 -1
- package/dist/components/ui/data-table/data-table-view-options.js +3 -2
- package/dist/components/ui/data-table/data-table-view-options.js.map +1 -1
- package/dist/components/ui/data-table/data-table.js +136 -132
- package/dist/components/ui/data-table/data-table.js.map +1 -1
- package/dist/components/ui/table/table-view-options.js +88 -33
- package/dist/components/ui/table/table-view-options.js.map +1 -1
- package/dist/components/ui/table/table.js.map +1 -1
- package/dist/llms/data-table.md +33 -7
- package/dist/llms/table.md +56 -23
- package/dist/llms.txt +1 -1
- package/dist/src/components/ui/data-table/data-table-view-options.d.ts +1 -1
- package/dist/src/components/ui/data-table/data-table.d.ts +11 -1
- package/dist/src/components/ui/data-table/data-table.docs.d.ts +6 -0
- package/dist/src/components/ui/table/table-view-options.d.ts +9 -1
- package/dist/ui-react.css +1 -1
- package/package.json +3 -3
package/dist/llms/data-table.md
CHANGED
|
@@ -47,7 +47,7 @@ optional row expansion, column resizing, and sticky (pinned) columns.
|
|
|
47
47
|
| `DataTableColumnHeader` | A sortable column header — single-click toggle (↑/↓/↕). Use in a column's `header`. |
|
|
48
48
|
| `DataTableToolbar` | Search box + per-column filters + applied-filter chips. Takes a `table` instance. |
|
|
49
49
|
| `DataTablePagination` | Selection count, rows-per-page, page controls. Takes a `table`. |
|
|
50
|
-
| `DataTableViewOptions` |
|
|
50
|
+
| `DataTableViewOptions` | Searchable, categorized column-visibility menu (a thin TanStack adapter over `TableViewOptions`). Pass `iconOnly` for the cog trigger in the trailing settings column. |
|
|
51
51
|
| `DataTableExpandTrigger` | A chevron toggle wired to a row's expansion state, placed inside a column's `cell` render function. |
|
|
52
52
|
| `DataTableBulkActionsBar` | A selection-aware bar above the grid: the consumer's bulk actions in a `<fieldset>` disabled until a selection is active, plus the selection summary and a Deselect control (or `loadedLabel` when nothing is selected). Takes a `table`. |
|
|
53
53
|
| `isBulkSelectionActive` | The single predicate for the bulk-selection threshold (one or more rows selected). Pass it to `TableActionsCell`'s `bulkSelectionActive` rather than re-deriving it. |
|
|
@@ -96,10 +96,15 @@ from it too (see **Server-driven usage** below).
|
|
|
96
96
|
`columnResizing`). Pass `onColumnSizingChange` to persist widths.
|
|
97
97
|
- **Sticky (pinned) columns** — set `meta.pin: 'left' | 'right'` on a
|
|
98
98
|
`ColumnDef`. DataTable drives TanStack's native column-pinning and renders the
|
|
99
|
-
column as `position: sticky` cells with an opaque row background.
|
|
99
|
+
column as `position: sticky` cells with an opaque row background. The built-in
|
|
100
|
+
trailing settings/actions column is pinned right by default.
|
|
100
101
|
- **Wrapping columns** — set `meta.wrap: true` on a `ColumnDef` to let that
|
|
101
|
-
column's header and cell content
|
|
102
|
-
|
|
102
|
+
column's header and cell content drop the fixed row height and wrap onto
|
|
103
|
+
multiple lines, mirroring the `Table` primitives' `wrap` prop.
|
|
104
|
+
- **Visibility labels and categories** — set `meta.label` for the text shown in
|
|
105
|
+
the visibility dropdown and `meta.category` to group related columns under a
|
|
106
|
+
labelled section with a Show all action. Labels fall back to a string header,
|
|
107
|
+
then the column id.
|
|
103
108
|
- **Expandable column** — put a `DataTableExpandTrigger` in a column's `cell`
|
|
104
109
|
render function so the expand affordance sits in a real column instead of a
|
|
105
110
|
whole-row click. It reads `row.getCanExpand()` / `getIsExpanded()` and calls
|
|
@@ -164,10 +169,15 @@ as `children` of the toolbar for per-column filtering.
|
|
|
164
169
|
| `renderRowActions` | `(row: Row<TData>) => ReactNode` | — | no | Renders the content of a row's overflow-actions menu (e.g. Edit/Delete items), opened from the ellipsis trigger in the trailing action column. Omit to render that row without a trigger — the 48px column is still reserved. Suppressed (like the trigger itself) while a bulk selection is active, per `TableActionsCell`. |
|
|
165
170
|
| `rowActionsLabel` | `string` | `'Row actions'` | no | Accessible name of a row's overflow-actions trigger. Override to localize. |
|
|
166
171
|
| `columnSettingsLabel` | `string` | — | no | Accessible name of the action column's column-visibility trigger. Override to localize; falls through to the view-options part's own default ("Column settings") when omitted. |
|
|
172
|
+
| `columnSearchPlaceholder` | `string` | `'Search columns'` | no | Placeholder and accessible name of the built-in column-visibility search field. Override to localize. |
|
|
173
|
+
| `showAllColumnsLabel` | `ReactNode` | `'Show all'` | no | Visible label of each category action that reveals every hidden column in that category. Override to localize. |
|
|
174
|
+
| `noColumnsFoundLabel` | `ReactNode` | `'No columns found.'` | no | Empty state shown when the column-visibility search has no matches. Override to localize. |
|
|
167
175
|
| `headerHints` | `Partial<DataTableHeaderHints>` | `{ sort: { label: 'Sort column', action: 'Click' }, reorder: { label: 'Reorder column', action: 'Drag' }, resize: { label: 'Resize column', action: 'Drag border' } }` | no | Copy of the tooltip shown while a header cell is hovered/focused — one `{ label, action }` line per capability that column actually has (`sort` / `reorder` / `resize`). Merged over the defaults, so any subset can be overridden to localize; a column with no capability shows no tooltip at all. |
|
|
168
176
|
| `bulkSelectionActive` | `boolean` | `false` | no | On the `TableActionsCell` part — suppress this row's actions because a *bulk* selection is in play. The cell still reserves its 48px column but renders no children and no hover/press tint. Pass `isBulkSelectionActive(table)` (exported alongside DataTable) rather than re-deriving the threshold: **one or more rows selected**, including exactly one. |
|
|
169
177
|
| `meta.pin` | `'left' | 'right'` | — | no | Set on a `ColumnDef.meta` (not a DataTable prop) — pins the column to a table edge. DataTable drives TanStack's native column-pinning and renders the column as `position: sticky` cells with an opaque row background. |
|
|
170
|
-
| `meta.wrap` | `boolean` | — | no | Set on a `ColumnDef.meta` (not a DataTable prop) — allows a column's header and cell content to wrap onto multiple lines
|
|
178
|
+
| `meta.wrap` | `boolean` | — | no | Set on a `ColumnDef.meta` (not a DataTable prop) — allows a column's header and cell content to wrap onto multiple lines and drop the fixed row height, mirroring the `Table` primitives' `wrap` prop. |
|
|
179
|
+
| `meta.label` | `string` | — | no | Human-readable label shown for the column in the visibility dropdown. Falls back to a string header and then the column id. |
|
|
180
|
+
| `meta.category` | `string` | — | no | Optional visibility-dropdown category. Columns with the same value are grouped under a labelled section with a per-category Show all action. |
|
|
171
181
|
| `children` | `ReactNode` | — | no | On DataTableToolbar — filter fields rendered inside a `FilterSearchFilters` popover (wire each to a column via `useFilterSearchFilters()` keyed by column id). When provided, the toolbar renders the filter popover plus a `FilterSearchAppliedFilters` chip row below it. |
|
|
172
182
|
| `filtersLabel` | `ReactNode` | `'Filters'` | no | On DataTableToolbar — label for the filters trigger button. |
|
|
173
183
|
| `getFilterChipLabel` | `(key: string, value: unknown) => ReactNode` | — | no | On DataTableToolbar — formats an applied-filter chip's label (defaults to "<id>: <value>"). |
|
|
@@ -293,11 +303,27 @@ Scenario: Sort a column in a single click
|
|
|
293
303
|
|
|
294
304
|
```gherkin
|
|
295
305
|
Scenario: Hide a column
|
|
296
|
-
Given the
|
|
306
|
+
Given the view-options menu opened from the trailing settings cog
|
|
297
307
|
When the user unchecks the column
|
|
298
308
|
Then that column is removed from the grid
|
|
299
309
|
```
|
|
300
310
|
|
|
311
|
+
```gherkin
|
|
312
|
+
Scenario: Search and group visible columns
|
|
313
|
+
Given columns with meta.label and meta.category values
|
|
314
|
+
When the user opens the trailing settings cog
|
|
315
|
+
Then the visibility menu uses the metadata labels and groups matching categories
|
|
316
|
+
When the user searches
|
|
317
|
+
Then only matching column labels remain in the internally scrolling popup
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
```gherkin
|
|
321
|
+
Scenario: Reveal a category
|
|
322
|
+
Given a category with multiple hidden columns
|
|
323
|
+
When the user activates that category's Show all action
|
|
324
|
+
Then every hidden column in that category becomes visible
|
|
325
|
+
```
|
|
326
|
+
|
|
301
327
|
```gherkin
|
|
302
328
|
Scenario: Filter via the toolbar
|
|
303
329
|
Given a DataTableToolbar with searchKey="email"
|
|
@@ -394,7 +420,7 @@ Scenario: Sticky (pinned) columns
|
|
|
394
420
|
```gherkin
|
|
395
421
|
Scenario: Wrapping columns
|
|
396
422
|
Given a column with meta.wrap = true
|
|
397
|
-
Then that column's header and cell content wrap onto multiple lines
|
|
423
|
+
Then that column's header and cell content drop the fixed row height and wrap onto multiple lines
|
|
398
424
|
```
|
|
399
425
|
|
|
400
426
|
```gherkin
|
package/dist/llms/table.md
CHANGED
|
@@ -73,21 +73,21 @@ sort and URL-synced state.
|
|
|
73
73
|
|
|
74
74
|
## Parts
|
|
75
75
|
|
|
76
|
-
| Part | Element | Purpose
|
|
77
|
-
| ------------------- | --------- |
|
|
78
|
-
| `Table` | `table` | The table, in a horizontally scrollable container.
|
|
79
|
-
| `TableHeader` | `thead` | Column-header section.
|
|
80
|
-
| `TableBody` | `tbody` | Data rows section.
|
|
81
|
-
| `TableFooter` | `tfoot` | Summary section with a top divider.
|
|
82
|
-
| `TableRow` | `tr` | A row; `selected` applies the active state.
|
|
83
|
-
| `TableHead` | `th` | Column header; `sortable` + `sortDirection` + `onSort`; `wrap`.
|
|
84
|
-
| `TableCell` | `td` | A data cell; `wrap` lets it grow to fit multi-line content.
|
|
85
|
-
| `TableSelectCell` | `td`/`th` | 32px leading selection cell for a `Checkbox`; `header` renders the select-all `th`.
|
|
86
|
-
| `TableActionsCell` | `td` | 48px trailing cell for a row's overflow trigger; owns the hover/press tint and focus ring.
|
|
87
|
-
| `TableSettingsCell` | `th` | 48px trailing header cell for the column-settings trigger.
|
|
88
|
-
| `TableCaption` | `caption` | Optional caption below the table.
|
|
89
|
-
| `TablePagination` | `div` | Plain-prop pagination bar (no TanStack dependency).
|
|
90
|
-
| `TableViewOptions` | `div` |
|
|
76
|
+
| Part | Element | Purpose |
|
|
77
|
+
| ------------------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
78
|
+
| `Table` | `table` | The table, in a horizontally scrollable container. |
|
|
79
|
+
| `TableHeader` | `thead` | Column-header section. |
|
|
80
|
+
| `TableBody` | `tbody` | Data rows section. |
|
|
81
|
+
| `TableFooter` | `tfoot` | Summary section with a top divider. |
|
|
82
|
+
| `TableRow` | `tr` | A row; `selected` applies the active state. |
|
|
83
|
+
| `TableHead` | `th` | Column header; `sortable` + `sortDirection` + `onSort`; `wrap`. |
|
|
84
|
+
| `TableCell` | `td` | A data cell; `wrap` lets it grow to fit multi-line content. |
|
|
85
|
+
| `TableSelectCell` | `td`/`th` | 32px leading selection cell for a `Checkbox`; `header` renders the select-all `th`. |
|
|
86
|
+
| `TableActionsCell` | `td` | 48px trailing cell for a row's overflow trigger; owns the hover/press tint and focus ring. |
|
|
87
|
+
| `TableSettingsCell` | `th` | 48px trailing header cell for the column-settings trigger. |
|
|
88
|
+
| `TableCaption` | `caption` | Optional caption below the table. |
|
|
89
|
+
| `TablePagination` | `div` | Plain-prop pagination bar (no TanStack dependency). |
|
|
90
|
+
| `TableViewOptions` | `div` | Searchable, internally scrolling show/hide-columns dropdown. Optional `category` values create labelled sections with per-category Show all actions; `iconOnly` fits `TableSettingsCell`. |
|
|
91
91
|
|
|
92
92
|
## Hooks
|
|
93
93
|
|
|
@@ -132,7 +132,7 @@ const { sortedData, getSortDirection, toggleSort } = useSortState({ data });
|
|
|
132
132
|
Name
|
|
133
133
|
</TableHead>
|
|
134
134
|
|
|
135
|
-
// Wrappable cell — grows to fit multi-line content
|
|
135
|
+
// Wrappable cell — drops the fixed row height and grows to fit multi-line content
|
|
136
136
|
<TableCell wrap>{longDescription}</TableCell>
|
|
137
137
|
|
|
138
138
|
// Header row — select-all cell leading, column-settings cell trailing
|
|
@@ -142,7 +142,11 @@ const { sortedData, getSortDirection, toggleSort } = useSortState({ data });
|
|
|
142
142
|
</TableSelectCell>
|
|
143
143
|
<TableHead>Name</TableHead>
|
|
144
144
|
<TableSettingsCell>
|
|
145
|
-
<TableViewOptions
|
|
145
|
+
<TableViewOptions
|
|
146
|
+
iconOnly
|
|
147
|
+
columns={columns}
|
|
148
|
+
onToggle={toggleColumn}
|
|
149
|
+
/>
|
|
146
150
|
</TableSettingsCell>
|
|
147
151
|
</TableRow>
|
|
148
152
|
|
|
@@ -176,7 +180,7 @@ const { sortedData, getSortDirection, toggleSort } = useSortState({ data });
|
|
|
176
180
|
| `selected` | `boolean` | `false` | no | On a row — marks it selected (active row token + `data-state="selected"`). |
|
|
177
181
|
| `sortable` | `boolean` | `false` | no | On a column header — renders a focusable sort affordance and exposes `aria-sort`. |
|
|
178
182
|
| `sort-direction` | `'asc' | 'desc' | false` | `false` | no | On a sortable column header — the current sort direction (`false` = sortable but unsorted). Drives the sort icon and `aria-sort`. |
|
|
179
|
-
| `wrap` | `boolean` | `false` | no | On a cell or column header — allow the content to wrap onto multiple lines (`whitespace-normal`) and drop the fixed row height so the cell grows to fit multi-line content
|
|
183
|
+
| `wrap` | `boolean` | `false` | no | On a cell or column header — allow the content to wrap onto multiple lines (`whitespace-normal`) and drop the fixed row height so the cell grows to fit multi-line content. Default cells retain native table auto-layout; truncation is opt-in through a constrained cell or class. |
|
|
180
184
|
| `header` | `boolean` | `false` | no | On the select-cell — render the header's select-all cell (`<th>`) instead of a row's selection cell (`<td>`). |
|
|
181
185
|
| `bulk-selection-active` | `boolean` | `false` | no | On the actions-cell — suppress this row's actions because a *bulk* selection is in play: the cell keeps its 48px column (so the grid doesn't reflow) but renders no children and no hover/press tint. The threshold is one or more rows being selected — a single selected row is already a bulk selection and loses its row actions. With a TanStack table, pass `isBulkSelectionActive(table)` (from the data-table part) instead of re-deriving it. |
|
|
182
186
|
| `page-index` | `number` | — | yes | On the pagination part — the zero-based index of the current page. |
|
|
@@ -185,7 +189,7 @@ const { sortedData, getSortDirection, toggleSort } = useSortState({ data });
|
|
|
185
189
|
| `page-size-options` | `number[]` | `[10, 20, 30, 40, 50]` | no | On the pagination part — the page-size options offered in the rows-per-page select. |
|
|
186
190
|
| `total-rows` | `number` | — | no | On the pagination part — total rows across all pages (drives the summary text). |
|
|
187
191
|
| `selected-rows` | `number` | — | no | On the pagination part — number of currently selected rows (drives the selection summary text). |
|
|
188
|
-
| `columns` | `{ id: string; label: string; hidden: boolean }[]` | — | yes | On the view-options part — the toggleable columns and their current visibility. |
|
|
192
|
+
| `columns` | `{ id: string; label: string; hidden: boolean; category?: string }[]` | — | yes | On the view-options part — the toggleable columns and their current visibility. Columns with the same optional category render in a labelled section with a per-category action that reveals every hidden column. |
|
|
189
193
|
| `rows-per-page-label` | `string` | `'Rows per page'` | no | On the pagination part — label of the rows-per-page select (also its accessible name). Override to localize. |
|
|
190
194
|
| `first-page-label` | `string` | `'Go to first page'` | no | On the pagination part — accessible name of the first-page control. |
|
|
191
195
|
| `previous-page-label` | `string` | `'Go to previous page'` | no | On the pagination part — accessible name of the previous-page control. |
|
|
@@ -196,7 +200,9 @@ const { sortedData, getSortDirection, toggleSort } = useSortState({ data });
|
|
|
196
200
|
| `trigger-label` | `ReactNode` | `'View'` | no | On the view-options part — the trigger button label. Ignored when `icon-only` is set. |
|
|
197
201
|
| `icon-only` | `boolean` | `false` | no | On the view-options part — render the trigger as a cog-only icon button instead of a labelled button: the shape that fits the 48px `TableSettingsCell` column. |
|
|
198
202
|
| `trigger-aria-label` | `string` | `'Column settings'` | no | On the view-options part — accessible name of the `icon-only` trigger. Override to localize. |
|
|
199
|
-
| `
|
|
203
|
+
| `search-placeholder` | `string` | `'Search columns'` | no | On the view-options part — placeholder and accessible name of the in-dropdown column filter. Override to localize. |
|
|
204
|
+
| `show-all-label` | `ReactNode` | `'Show all'` | no | On the view-options part — visible label of each category action that reveals every hidden column in that category. Its accessible name also includes the category label. |
|
|
205
|
+
| `no-results-label` | `ReactNode` | `'No columns found.'` | no | On the view-options part — empty state shown when no column label matches the search query. Override to localize. |
|
|
200
206
|
|
|
201
207
|
## Events
|
|
202
208
|
|
|
@@ -311,7 +317,7 @@ Scenario: A wrapping cell grows the row
|
|
|
311
317
|
Given a TableCell (or TableHead) with wrap = true holding multi-line content
|
|
312
318
|
When it renders
|
|
313
319
|
Then it uses whitespace-normal and drops the fixed row height
|
|
314
|
-
And the row grows to fit the content
|
|
320
|
+
And the row grows to fit the content
|
|
315
321
|
```
|
|
316
322
|
|
|
317
323
|
### Pagination (TablePagination)
|
|
@@ -345,12 +351,36 @@ Scenario: Selection summary
|
|
|
345
351
|
|
|
346
352
|
```gherkin
|
|
347
353
|
Scenario: Toggling column visibility
|
|
348
|
-
Given a TableViewOptions with a { id, label, hidden }[] of columns
|
|
354
|
+
Given a TableViewOptions with a { id, label, hidden, category? }[] of columns
|
|
349
355
|
When the user toggles a column's checkbox in the dropdown
|
|
350
356
|
Then the toggle event fires with that column's id
|
|
351
357
|
And the consumer updates the column's hidden flag
|
|
352
358
|
```
|
|
353
359
|
|
|
360
|
+
```gherkin
|
|
361
|
+
Scenario: Searching columns
|
|
362
|
+
Given an open TableViewOptions
|
|
363
|
+
When the user types into the column search field
|
|
364
|
+
Then only columns whose labels contain the query remain
|
|
365
|
+
And an overridable empty state renders when no labels match
|
|
366
|
+
```
|
|
367
|
+
|
|
368
|
+
```gherkin
|
|
369
|
+
Scenario: Categorized columns
|
|
370
|
+
Given columns sharing a category
|
|
371
|
+
Then they render in a group programmatically named by that category
|
|
372
|
+
And the category's Show all action is also named with the category
|
|
373
|
+
When the user activates Show all
|
|
374
|
+
Then the toggle event fires once for every hidden column in that category
|
|
375
|
+
```
|
|
376
|
+
|
|
377
|
+
```gherkin
|
|
378
|
+
Scenario: A long column list scrolls inside the dropdown
|
|
379
|
+
Given the open column list is taller than the available viewport height
|
|
380
|
+
Then the 300px dropdown is capped to the available height
|
|
381
|
+
And the dropdown itself scrolls vertically
|
|
382
|
+
```
|
|
383
|
+
|
|
354
384
|
```gherkin
|
|
355
385
|
Scenario: The icon-only trigger fits the settings cell
|
|
356
386
|
Given a TableViewOptions with icon-only = true
|
|
@@ -425,7 +455,10 @@ headers natively. Use the parts as their elements intend.
|
|
|
425
455
|
items; each row shows a presentational checkbox box beside the column name and
|
|
426
456
|
the row itself carries `role="menuitemcheckbox"` + `aria-checked`. The trigger
|
|
427
457
|
has a visible "View" label, or — with `iconOnly` — is a cog-only icon button
|
|
428
|
-
named by `triggerAriaLabel` (default "Column settings").
|
|
458
|
+
named by `triggerAriaLabel` (default "Column settings"). Each categorized
|
|
459
|
+
group is named by its visible heading, and each repeated Show all action
|
|
460
|
+
combines its localized visible label with that category so assistive
|
|
461
|
+
technology can distinguish the actions.
|
|
429
462
|
|
|
430
463
|
## Contrast
|
|
431
464
|
|
package/dist/llms.txt
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Acronis UI Kit for React — LLM Reference
|
|
2
2
|
|
|
3
|
-
> `@acronis-platform/ui-react` v5.3.
|
|
3
|
+
> `@acronis-platform/ui-react` v5.3.1
|
|
4
4
|
|
|
5
5
|
Machine-readable component reference compiled from framework-agnostic specs.
|
|
6
6
|
Each entry links to a self-contained markdown file with props, behavior,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Table } from '@tanstack/react-table';
|
|
2
2
|
import { TableViewOptionsProps } from '../table';
|
|
3
|
-
interface DataTableViewOptionsProps<TData> extends Pick<TableViewOptionsProps, 'triggerLabel' | 'iconOnly' | 'triggerAriaLabel'> {
|
|
3
|
+
interface DataTableViewOptionsProps<TData> extends Pick<TableViewOptionsProps, 'triggerLabel' | 'iconOnly' | 'triggerAriaLabel' | 'searchPlaceholder' | 'showAllLabel' | 'noResultsLabel'> {
|
|
4
4
|
table: Table<TData>;
|
|
5
5
|
}
|
|
6
6
|
export declare function DataTableViewOptions<TData>({ table, ...triggerProps }: DataTableViewOptionsProps<TData>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -9,6 +9,10 @@ declare module '@tanstack/react-table' {
|
|
|
9
9
|
* row height); mirrors the `Table` primitives' `wrap` prop on TableHead/TableCell.
|
|
10
10
|
*/
|
|
11
11
|
wrap?: boolean;
|
|
12
|
+
/** Label shown for this column in the visibility dropdown. */
|
|
13
|
+
label?: string;
|
|
14
|
+
/** Optional visibility-dropdown category for this column. */
|
|
15
|
+
category?: string;
|
|
12
16
|
}
|
|
13
17
|
}
|
|
14
18
|
export declare function getPinnedStyle<TData>(column: Column<TData, unknown>): CSSProperties | undefined;
|
|
@@ -237,6 +241,12 @@ interface DataTableOwnProps<TData> {
|
|
|
237
241
|
* Override to localize.
|
|
238
242
|
*/
|
|
239
243
|
columnSettingsLabel?: string;
|
|
244
|
+
/** Placeholder and accessible name of the column-visibility search field. */
|
|
245
|
+
columnSearchPlaceholder?: string;
|
|
246
|
+
/** Label of the per-category action that reveals every column. */
|
|
247
|
+
showAllColumnsLabel?: ReactNode;
|
|
248
|
+
/** Empty state shown when the column search has no matches. */
|
|
249
|
+
noColumnsFoundLabel?: ReactNode;
|
|
240
250
|
/**
|
|
241
251
|
* Copy of the tooltip shown while a header cell is hovered/focused — one
|
|
242
252
|
* line per capability that column actually has (sort/reorder/resize).
|
|
@@ -246,5 +256,5 @@ interface DataTableOwnProps<TData> {
|
|
|
246
256
|
headerHints?: Partial<DataTableHeaderHints>;
|
|
247
257
|
}
|
|
248
258
|
export type DataTableProps<TData, TValue = unknown> = DataTableOwnProps<TData> & DataTableDataSourceProps<TData, TValue>;
|
|
249
|
-
export declare function DataTable<TData, TValue = unknown>({ columns, data, table: externalTable, getRowCanExpand, renderExpandedRow, striped, bordered, highlightCurrentRow, skeleton, skeletonRows, enableColumnResizing, onColumnSizingChange, enableColumnReordering, columnOrder: controlledColumnOrder, onColumnOrderChange, columnVisibility: controlledColumnVisibility, onColumnVisibilityChange, rowSelection: controlledRowSelection, onRowSelectionChange, manualSorting, sorting: controlledSorting, onSortingChange, renderRow, renderEmptyState, paginationMode, onLoadMore, loadMoreRootMargin, hasNextPage, resizeColumnLabel, emptyLabel, isLoadingMore, hideActionColumn, renderRowActions, rowActionsLabel, columnSettingsLabel, headerHints, }: DataTableProps<TData, TValue>): import("react/jsx-runtime").JSX.Element;
|
|
259
|
+
export declare function DataTable<TData, TValue = unknown>({ columns, data, table: externalTable, getRowCanExpand, renderExpandedRow, striped, bordered, highlightCurrentRow, skeleton, skeletonRows, enableColumnResizing, onColumnSizingChange, enableColumnReordering, columnOrder: controlledColumnOrder, onColumnOrderChange, columnVisibility: controlledColumnVisibility, onColumnVisibilityChange, rowSelection: controlledRowSelection, onRowSelectionChange, manualSorting, sorting: controlledSorting, onSortingChange, renderRow, renderEmptyState, paginationMode, onLoadMore, loadMoreRootMargin, hasNextPage, resizeColumnLabel, emptyLabel, isLoadingMore, hideActionColumn, renderRowActions, rowActionsLabel, columnSettingsLabel, columnSearchPlaceholder, showAllColumnsLabel, noColumnsFoundLabel, headerHints, }: DataTableProps<TData, TValue>): import("react/jsx-runtime").JSX.Element;
|
|
250
260
|
export {};
|
|
@@ -152,6 +152,12 @@ export interface DataTableProps {
|
|
|
152
152
|
rowActionsLabel?: string;
|
|
153
153
|
/** Accessible name of the action column's column-visibility trigger. */
|
|
154
154
|
columnSettingsLabel?: string;
|
|
155
|
+
/** Placeholder and accessible name of the column-visibility search field. */
|
|
156
|
+
columnSearchPlaceholder?: string;
|
|
157
|
+
/** Label of the per-category action that reveals every column. */
|
|
158
|
+
showAllColumnsLabel?: ReactNode;
|
|
159
|
+
/** Empty state shown when the column search has no matches. */
|
|
160
|
+
noColumnsFoundLabel?: ReactNode;
|
|
155
161
|
/**
|
|
156
162
|
* Copy of the tooltip shown while a header cell is hovered/focused — one
|
|
157
163
|
* `{ label, action }` line per capability that column actually has. Merged
|
|
@@ -6,6 +6,8 @@ export interface TableColumnVisibility {
|
|
|
6
6
|
label: string;
|
|
7
7
|
/** Whether the column is currently hidden. */
|
|
8
8
|
hidden: boolean;
|
|
9
|
+
/** Optional section name used to group related columns in the dropdown. */
|
|
10
|
+
category?: string;
|
|
9
11
|
}
|
|
10
12
|
export interface TableViewOptionsProps {
|
|
11
13
|
/** The toggleable columns and their current visibility. */
|
|
@@ -21,8 +23,14 @@ export interface TableViewOptionsProps {
|
|
|
21
23
|
iconOnly?: boolean;
|
|
22
24
|
/** Accessible name of the `iconOnly` trigger. Override to localize. */
|
|
23
25
|
triggerAriaLabel?: string;
|
|
26
|
+
/** Placeholder and accessible name of the column filter. */
|
|
27
|
+
searchPlaceholder?: string;
|
|
28
|
+
/** Label of the action that reveals every column in a category. */
|
|
29
|
+
showAllLabel?: React.ReactNode;
|
|
30
|
+
/** Empty state shown when no column matches the search query. */
|
|
31
|
+
noResultsLabel?: React.ReactNode;
|
|
24
32
|
}
|
|
25
|
-
declare function TableViewOptions({ columns, onToggle, triggerLabel, iconOnly, triggerAriaLabel, }: TableViewOptionsProps): import("react/jsx-runtime").JSX.Element;
|
|
33
|
+
declare function TableViewOptions({ columns, onToggle, triggerLabel, iconOnly, triggerAriaLabel, searchPlaceholder, showAllLabel, noResultsLabel, }: TableViewOptionsProps): import("react/jsx-runtime").JSX.Element;
|
|
26
34
|
declare namespace TableViewOptions {
|
|
27
35
|
var displayName: string;
|
|
28
36
|
}
|