From 0537bee45712945bd97d28f6d28118f7589a6840 Mon Sep 17 00:00:00 2001 From: Stephen Smith Date: Wed, 25 May 2022 21:23:22 -0400 Subject: [PATCH] 18984: Add indeterminate ui for process type filters Arvados-DCO-1.1-Signed-off-by: Stephen Smith --- src/components/data-table-filters/data-table-filters-tree.tsx | 2 ++ src/components/tree/tree.tsx | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/components/data-table-filters/data-table-filters-tree.tsx b/src/components/data-table-filters/data-table-filters-tree.tsx index 6514078d..659a385d 100644 --- a/src/components/data-table-filters/data-table-filters-tree.tsx +++ b/src/components/data-table-filters/data-table-filters-tree.tsx @@ -83,6 +83,7 @@ const filterToTreeItem = (filters: DataTableFilters) => const node = getNode(id)(filters) || initTreeNode({ id: '', value: 'InvalidNode' }); const items = getNodeChildrenIds(node.id)(filters) .map(filterToTreeItem(filters)); + const isIndeterminate = !node.selected && items.some(i => i.selected || i.indeterminate); return { active: node.active, @@ -91,6 +92,7 @@ const filterToTreeItem = (filters: DataTableFilters) => items: items.length > 0 ? items : undefined, open: node.expanded, selected: node.selected, + indeterminate: isIndeterminate, status: TreeItemStatus.LOADED, }; }; diff --git a/src/components/tree/tree.tsx b/src/components/tree/tree.tsx index 3ae884b6..6e562dfa 100644 --- a/src/components/tree/tree.tsx +++ b/src/components/tree/tree.tsx @@ -97,6 +97,7 @@ export interface TreeItem { open: boolean; active: boolean; selected?: boolean; + indeterminate?: boolean; flatTree?: boolean; status: TreeItemStatus; items?: Array>; @@ -292,6 +293,7 @@ export const Tree = withStyles(styles)( {showSelection(it) && !useRadioButtons && } -- 2.30.2