@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.
@@ -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` | Column-visibility menu (a thin TanStack adapter over the `TableViewOptions` primitive). Pass `iconOnly` for the cog trigger that belongs in the trailing settings column. |
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 wrap onto multiple lines instead of
102
- truncating, mirroring the `Table` primitives' `wrap` prop.
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 instead of truncating, mirroring the `Table` primitives' `wrap` prop. |
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 toolbar's view-options menu
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 instead of truncating
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
@@ -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` | Show/hide-columns dropdown driven by a plain columns array. `iconOnly` gives the cog trigger that fits `TableSettingsCell`. |
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 instead of truncating
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 iconOnly columns={columns} onToggle={toggleColumn} />
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 instead of truncating. |
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
- | `menu-label` | `ReactNode` | `'Toggle columns'` | no | On the view-options part — the dropdown heading. |
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 instead of truncating it
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.0
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
  }