Skip to content

Commit 18df68d

Browse files
committed
Add filters icon to submenu
1 parent 0f7c9e5 commit 18df68d

File tree

4 files changed

+55
-16
lines changed

4 files changed

+55
-16
lines changed

package.json

+1
Original file line numberDiff line numberDiff line change
@@ -280,6 +280,7 @@
280280
"@locker/near-membrane-dom": "^0.12.15",
281281
"@locker/near-membrane-shared": "^0.12.15",
282282
"@locker/near-membrane-shared-dom": "^0.12.15",
283+
"@mui/icons-material": "^5.14.13",
283284
"@mui/material": "^5.14.13",
284285
"@opentelemetry/api": "1.4.0",
285286
"@opentelemetry/exporter-collector": "0.25.0",

public/app/features/dashboard/components/SubMenu/SubMenu.tsx

+22-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
import { css } from '@emotion/css';
2-
import React, { PureComponent } from 'react';
2+
import FilterListIcon from '@mui/icons-material/FilterList';
3+
import { Box, styled } from '@mui/material';
4+
import React, { FC, PureComponent } from 'react';
35
import { connect, MapStateToProps } from 'react-redux';
46

57
import { AnnotationQuery, DataQuery, GrafanaTheme2 } from '@grafana/data';
@@ -61,6 +63,7 @@ class SubMenuUnConnected extends PureComponent<Props> {
6163
return (
6264
<div className={styles.submenu}>
6365
<form aria-label="Template variables" className={styles.formStyles} onSubmit={this.disableSubmitOnEnter}>
66+
<FilterWithIcon />
6467
<SubMenuItems variables={variables} readOnly={readOnlyVariables} />
6568
</form>
6669
<Annotations
@@ -78,6 +81,7 @@ class SubMenuUnConnected extends PureComponent<Props> {
7881
const mapStateToProps: MapStateToProps<ConnectedProps, OwnProps, StoreState> = (state, ownProps) => {
7982
const { uid } = ownProps.dashboard;
8083
const templatingState = getVariablesState(uid, state);
84+
8185
return {
8286
variables: getSubMenuVariables(uid, templatingState.variables),
8387
};
@@ -108,3 +112,20 @@ const getStyles = stylesFactory((theme: GrafanaTheme2) => {
108112
export const SubMenu = withTheme2(connect(mapStateToProps)(SubMenuUnConnected));
109113

110114
SubMenu.displayName = 'SubMenu';
115+
116+
const FilterWithIcon: FC = () => (
117+
<FilterWithIconStyled>
118+
<FilterListIcon sx={{ color: '#3A785E' }} />
119+
FILTERS
120+
</FilterWithIconStyled>
121+
);
122+
123+
const FilterWithIconStyled = styled(Box)({
124+
display: 'flex',
125+
gap: 1,
126+
alignItems: 'center',
127+
color: '#3A785E',
128+
fontWeight: 600,
129+
lineHeight: '160%',
130+
fontSize: 12,
131+
});

public/app/features/dashboard/containers/DashboardPage.tsx

+15-15
Original file line numberDiff line numberDiff line change
@@ -411,18 +411,18 @@ export class UnthemedDashboardPage extends PureComponent<Props, State> {
411411
scrollRef={this.setScrollRef}
412412
scrollTop={updateScrollTop}
413413
>
414-
{/* {showToolbar && ( */}
415-
<header data-testid={selectors.pages.Dashboard.DashNav.navV2}>
416-
<Box mb={4}>
417-
<ToolbarButtonRow alignment="right">
418-
<DashNavTimeControls
419-
dashboard={dashboard}
420-
onChangeTimeZone={updateTimeZoneForSession}
421-
key="time-controls"
422-
/>
423-
</ToolbarButtonRow>
424-
</Box>
425-
{/* <DashNav
414+
{showToolbar && (
415+
<header data-testid={selectors.pages.Dashboard.DashNav.navV2}>
416+
<Box mb={4}>
417+
<ToolbarButtonRow alignment="right">
418+
<DashNavTimeControls
419+
dashboard={dashboard}
420+
onChangeTimeZone={updateTimeZoneForSession}
421+
key="time-controls"
422+
/>
423+
</ToolbarButtonRow>
424+
</Box>
425+
{/* <DashNav
426426
dashboard={dashboard}
427427
title={dashboard.title}
428428
folderTitle={dashboard.meta.folderTitle}
@@ -431,11 +431,11 @@ export class UnthemedDashboardPage extends PureComponent<Props, State> {
431431
kioskMode={kioskMode}
432432
hideTimePicker={dashboard.timepicker.hidden}
433433
/> */}
434-
</header>
435-
{/* )} */}
434+
</header>
435+
)}
436436
{!FNDashboard && <DashboardPrompt dashboard={dashboard} />}
437437
{initError && <DashboardFailed />}
438-
{showSubMenu && !FNDashboard && (
438+
{showSubMenu && (
439439
<section aria-label={selectors.pages.Dashboard.SubMenu.submenu}>
440440
<SubMenu dashboard={dashboard} annotations={dashboard.annotations.list} links={dashboard.links} />
441441
</section>

yarn.lock

+17
Original file line numberDiff line numberDiff line change
@@ -5578,6 +5578,22 @@ __metadata:
55785578
languageName: node
55795579
linkType: hard
55805580

5581+
"@mui/icons-material@npm:^5.14.13":
5582+
version: 5.14.13
5583+
resolution: "@mui/icons-material@npm:5.14.13"
5584+
dependencies:
5585+
"@babel/runtime": ^7.23.1
5586+
peerDependencies:
5587+
"@mui/material": ^5.0.0
5588+
"@types/react": ^17.0.0 || ^18.0.0
5589+
react: ^17.0.0 || ^18.0.0
5590+
peerDependenciesMeta:
5591+
"@types/react":
5592+
optional: true
5593+
checksum: a25db309d02654d1f2d51887986e11b26fc7aea864a398fdc55ca2f4ffd80bbc7402e7686f6a0aeab04a440993e0733aa52f752db50e083dae03e04c558f7bfd
5594+
languageName: node
5595+
linkType: hard
5596+
55815597
"@mui/material@npm:^5.14.13":
55825598
version: 5.14.13
55835599
resolution: "@mui/material@npm:5.14.13"
@@ -19750,6 +19766,7 @@ __metadata:
1975019766
"@locker/near-membrane-dom": ^0.12.15
1975119767
"@locker/near-membrane-shared": ^0.12.15
1975219768
"@locker/near-membrane-shared-dom": ^0.12.15
19769+
"@mui/icons-material": ^5.14.13
1975319770
"@mui/material": ^5.14.13
1975419771
"@opentelemetry/api": 1.4.0
1975519772
"@opentelemetry/exporter-collector": 0.25.0

0 commit comments

Comments
 (0)