diff --git a/public/app/features/dashboard/components/SubMenu/SubMenu.tsx b/public/app/features/dashboard/components/SubMenu/SubMenu.tsx index c31d7ff4cd891..fb72841fc4bd4 100644 --- a/public/app/features/dashboard/components/SubMenu/SubMenu.tsx +++ b/public/app/features/dashboard/components/SubMenu/SubMenu.tsx @@ -1,7 +1,5 @@ import { css } from '@emotion/css'; -import FilterListIcon from '@mui/icons-material/FilterList'; -import { Box, styled } from '@mui/material'; -import React, { FC, PureComponent } from 'react'; +import React, { PureComponent } from 'react'; import { connect, MapStateToProps } from 'react-redux'; import { AnnotationQuery, DataQuery, GrafanaTheme2 } from '@grafana/data'; @@ -63,7 +61,6 @@ class SubMenuUnConnected extends PureComponent { return (
- { export const SubMenu = withTheme2(connect(mapStateToProps)(SubMenuUnConnected)); SubMenu.displayName = 'SubMenu'; - -const FilterWithIcon: FC = () => ( - - - FILTERS - -); - -const FilterWithIconStyled = styled(Box)({ - display: 'flex', - gap: 1, - alignItems: 'center', - color: '#3A785E', - fontWeight: 600, - lineHeight: '160%', - fontSize: 12, -}); diff --git a/public/app/features/dashboard/components/SubMenu/SubMenuItems.tsx b/public/app/features/dashboard/components/SubMenu/SubMenuItems.tsx index 81cd18320311c..92b8561adb259 100644 --- a/public/app/features/dashboard/components/SubMenu/SubMenuItems.tsx +++ b/public/app/features/dashboard/components/SubMenu/SubMenuItems.tsx @@ -1,4 +1,6 @@ -import React, { useEffect, useState } from 'react'; +import FilterListIcon from '@mui/icons-material/FilterList'; +import { Box, styled } from '@mui/material'; +import React, { FC, useEffect, useState } from 'react'; import { selectors } from '@grafana/e2e-selectors'; import { useSelector } from 'app/types'; @@ -17,8 +19,10 @@ export const SubMenuItems = ({ variables, readOnly }: Props) => { const hiddenVariables = useSelector((state) => state.fnGlobalState.hiddenVariables); useEffect(() => { - setVisibleVariables(variables.filter((state) => state.hide !== VariableHide.hideVariable)); - }, [variables]); + setVisibleVariables( + variables.filter((state) => state.hide !== VariableHide.hideVariable && !hiddenVariables?.includes(state.id)) + ); + }, [variables, hiddenVariables]); if (visibleVariables.length === 0) { return null; @@ -26,11 +30,8 @@ export const SubMenuItems = ({ variables, readOnly }: Props) => { return ( <> + {visibleVariables.map((variable) => { - if (hiddenVariables?.includes(variable.id)) { - return null; - } - return (
{ ); }; + +const FilterWithIcon: FC = () => ( + + + FILTERS + +); + +const FilterWithIconStyled = styled(Box)({ + display: 'flex', + gap: 1, + alignItems: 'center', + color: '#3A785E', + fontWeight: 600, + lineHeight: '160%', + fontSize: 12, +});