Skip to content

Release v4.14.0

Choose a tag to compare

@github-actions github-actions released this 24 Sep 13:51
dd3a7c8

Added

  • Column.filterOptions supplies the values a column can be filtered by, rendered as a list instead of a free-form input, with the match modes narrowed to equals/not equals.
  • selectionMode='multiple' on the data tables and DataPage, with a checkbox per row, a select-all header checkbox, and selectedItems/onSelectedItemsChange.
  • dataTable.selectAllRows message for localizing the select-all accessible name.

Fixed

  • The column filter trigger rendered U+2315 TELEPHONE RECORDER in a span at the ambient font size, so it showed as a tiny mark that does not read as a filter. It is now a funnel SVG sized against the header row.

Notes

A column whose values come from a known set — a status, a kind, an enum rendered as text — could previously only be filtered by typing. ColumnFilterMenu picked its value input from dataType alone, and boolean was the only case that listed values. An enum column declared dataType='numeric' therefore asked the user to type the underlying number while the cell showed the word, which is indistinguishable from the filter not working.

Multiple selection is additive rather than a change to the existing single-selection contract: selection/onSelectionChange keep their current types, and the new set is reported through selectedItems/onSelectedItemsChange. Nothing that compiles today changes meaning.

Select-all covers the rows the filter currently leaves visible, not the whole loaded page — a bulk action that silently included rows hidden behind a filter would act on more than it showed.

Consumed by Cratis/Chronicle#4140 and Cratis/Chronicle#4141.