This is an automated email from the ASF dual-hosted git repository. rusackas pushed a commit to branch filter-type-icons-v2 in repository https://gitbox.apache.org/repos/asf/superset.git
commit 6c1a63b7f402969ad45e1f35b124b1cb8fb27b5d Author: Evan Rusackas <[email protected]> AuthorDate: Mon Jan 5 08:25:59 2026 -0800 feat(native filters): add filter type icons in config modal Adds visual icons to distinguish between filters and dividers in the filter configuration modal's left panel. Filters show a filter icon, while dividers show a layout icon (PicCenterOutlined). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <[email protected]> --- .../FiltersConfigModal/FilterTitleContainer.tsx | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FilterTitleContainer.tsx b/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FilterTitleContainer.tsx index 2932a5e745..27eabb3c9f 100644 --- a/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FilterTitleContainer.tsx +++ b/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FilterTitleContainer.tsx @@ -51,6 +51,16 @@ export const FilterTitle = styled.div` `} `; +const StyledFilterIcon = styled(Icons.Filter)` + color: ${({ theme }) => theme.colorIcon}; + margin-right: ${({ theme }) => theme.sizeUnit * 2}px; +`; + +const StyledDividerIcon = styled(Icons.PicCenterOutlined)` + color: ${({ theme }) => theme.colorIcon}; + margin-right: ${({ theme }) => theme.sizeUnit * 2}px; +`; + const StyledWarning = styled(Icons.ExclamationCircleOutlined)` color: ${({ theme }) => theme.colorErrorText}; &.anticon { @@ -75,6 +85,8 @@ interface Props { erroredFilters: string[]; } +const isFilterDivider = (id: string) => id.startsWith('NATIVE_FILTER_DIVIDER'); + const FilterTitleContainer = forwardRef<HTMLDivElement, Props>( ( { @@ -116,6 +128,11 @@ const FilterTitleContainer = forwardRef<HTMLDivElement, Props>( wordBreak: 'break-all', }} > + {isFilterDivider(id) ? ( + <StyledDividerIcon iconSize="m" /> + ) : ( + <StyledFilterIcon iconSize="m" /> + )} {isRemoved ? t('(Removed)') : getFilterTitle(id)} </div> {!removedFilters[id] && isErrored && (
