From b1da3dd202cd642628334de9222affbe87d2e564 Mon Sep 17 00:00:00 2001 From: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com> Date: Mon, 12 Jun 2023 17:25:38 +0200 Subject: [PATCH] Chore: Remove some SASS classnames from SubMenu (#69302) Remove classNames from SubMenu --- .../dashboard/components/SubMenu/SubMenu.tsx | 43 +++++++++++++------ 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/public/app/features/dashboard/components/SubMenu/SubMenu.tsx b/public/app/features/dashboard/components/SubMenu/SubMenu.tsx index 125c8c731aa..6f0488ec342 100644 --- a/public/app/features/dashboard/components/SubMenu/SubMenu.tsx +++ b/public/app/features/dashboard/components/SubMenu/SubMenu.tsx @@ -2,7 +2,8 @@ import { css } from '@emotion/css'; import React, { PureComponent } from 'react'; import { connect, MapStateToProps } from 'react-redux'; -import { AnnotationQuery, DataQuery } from '@grafana/data'; +import { AnnotationQuery, DataQuery, GrafanaTheme2 } from '@grafana/data'; +import { stylesFactory, Themeable2, withTheme2 } from '@grafana/ui'; import { StoreState } from '../../../../types'; import { getSubMenuVariables, getVariablesState } from '../../../variables/state/selectors'; @@ -14,7 +15,7 @@ import { Annotations } from './Annotations'; import { DashboardLinks } from './DashboardLinks'; import { SubMenuItems } from './SubMenuItems'; -interface OwnProps { +interface OwnProps extends Themeable2 { dashboard: DashboardModel; links: DashboardLink[]; annotations: AnnotationQuery[]; @@ -43,7 +44,9 @@ class SubMenuUnConnected extends PureComponent { }; render() { - const { dashboard, variables, links, annotations } = this.props; + const { dashboard, variables, links, annotations, theme } = this.props; + + const styles = getStyles(theme); if (!dashboard.isSubMenuVisible()) { return null; @@ -52,8 +55,8 @@ class SubMenuUnConnected extends PureComponent { const readOnlyVariables = dashboard.meta.isSnapshot ?? false; return ( -
-
+
+ { onAnnotationChanged={this.onAnnotationStateChanged} events={dashboard.events} /> -
+
{dashboard && }
); @@ -76,12 +79,28 @@ const mapStateToProps: MapStateToProps = ( }; }; -const styles = css` - display: flex; - flex-wrap: wrap; - display: contents; -`; +const getStyles = stylesFactory((theme: GrafanaTheme2) => { + return { + formStyles: css` + display: flex; + flex-wrap: wrap; + display: contents; + `, + submenu: css` + display: flex; + flex-direction: row; + flex-wrap: wrap; + align-content: flex-start; + align-items: flex-start; + gap: ${theme.spacing(1)} ${theme.spacing(2)}; + padding: 0 0 ${theme.spacing(1)} 0; + `, + spacer: css({ + flexGrow: 1, + }), + }; +}); -export const SubMenu = connect(mapStateToProps)(SubMenuUnConnected); +export const SubMenu = withTheme2(connect(mapStateToProps)(SubMenuUnConnected)); SubMenu.displayName = 'SubMenu';