From 388e8ac06e9140de485479f83c6192ae63d57c1a Mon Sep 17 00:00:00 2001 From: Kirk Swenson Date: Tue, 16 Jul 2024 14:05:30 -0700 Subject: [PATCH] fix: can't hide last attribute of collection (#1350) --- .../case-table/attribute-menu/attribute-menu-list.tsx | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/v3/src/components/case-table/attribute-menu/attribute-menu-list.tsx b/v3/src/components/case-table/attribute-menu/attribute-menu-list.tsx index eb2cf689a..a1e922864 100644 --- a/v3/src/components/case-table/attribute-menu/attribute-menu-list.tsx +++ b/v3/src/components/case-table/attribute-menu/attribute-menu-list.tsx @@ -42,6 +42,13 @@ const AttributeMenuListComp = forwardRef( isClosable: true, }) } + + // can't hide last attribute of collection + const collection = data?.getCollectionForAttribute(columnId) + const visibleAttributes = collection?.attributes + .reduce((sum, attr) => attr && !caseMetadata?.isHidden(attr.id) ? sum + 1 : sum, 0) ?? 0 + const disableHideAttribute = visibleAttributes <= 1 + const handleHideAttribute = () => { caseMetadata?.applyModelChange( () => caseMetadata?.setIsHidden(column.key, true), @@ -136,7 +143,7 @@ const AttributeMenuListComp = forwardRef( handleMenuItemClick("Sort Descending")}> {t("DG.TableController.headerMenuItems.sortDescending")} - + {t("DG.TableController.headerMenuItems.hideAttribute")} handleDeleteAttribute()} isDisabled={disableDeleteAttribute}>