From: Eric Biagiotti Date: Wed, 4 Dec 2019 18:29:07 +0000 (-0500) Subject: 15672: Adds mutually exclusive data explorer column filters X-Git-Tag: 2.0.0~15^2~25 X-Git-Url: https://git.arvados.org/arvados-workbench2.git/commitdiff_plain/8c47c51f1f72135217df614cfa53e379ff68151b 15672: Adds mutually exclusive data explorer column filters Arvados-DCO-1.1-Signed-off-by: Eric Biagiotti --- diff --git a/src/components/data-table-filters/data-table-filters-popover.tsx b/src/components/data-table-filters/data-table-filters-popover.tsx index 3bd7991c..670afa95 100644 --- a/src/components/data-table-filters/data-table-filters-popover.tsx +++ b/src/components/data-table-filters/data-table-filters-popover.tsx @@ -73,6 +73,11 @@ export interface DataTableFilterProps { filters: DataTableFilters; onChange?: (filters: DataTableFilters) => void; + /** + * When set to true, only one filter can be selected at a time. + */ + mutuallyExclusive?: boolean; + /** * By default `all` filters selection means that label should be grayed out. * Use `none` when label is supposed to be grayed out when no filter is selected. @@ -110,7 +115,7 @@ export const DataTableFiltersPopover = withStyles(styles)( onClick={this.open} disableRipple> {children} - + @@ -131,7 +136,10 @@ export const DataTableFiltersPopover = withStyles(styles)( this.setState({ filters })} /> + mutuallyExclusive={this.props.mutuallyExclusive} + onChange={filters => { + this.setState({ filters }); + }} />