Repository navigation
Release v4.14.0
Added
Column.filterOptionssupplies 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 andDataPage, with a checkbox per row, a select-all header checkbox, andselectedItems/onSelectedItemsChange.dataTable.selectAllRowsmessage for localizing the select-all accessible name.
Fixed
- The column filter trigger rendered
U+2315 TELEPHONE RECORDERin aspanat 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.