diff --git a/.betterer.results b/.betterer.results index c35064cb70b..f21634e845d 100644 --- a/.betterer.results +++ b/.betterer.results @@ -7810,7 +7810,6 @@ exports[`no gf-form usage`] = { [0, 0, 0, "gf-form usage has been deprecated. Use a component from @grafana/ui or custom CSS instead.", "5381"], [0, 0, 0, "gf-form usage has been deprecated. Use a component from @grafana/ui or custom CSS instead.", "5381"], [0, 0, 0, "gf-form usage has been deprecated. Use a component from @grafana/ui or custom CSS instead.", "5381"], - [0, 0, 0, "gf-form usage has been deprecated. Use a component from @grafana/ui or custom CSS instead.", "5381"], [0, 0, 0, "gf-form usage has been deprecated. Use a component from @grafana/ui or custom CSS instead.", "5381"] ], "public/app/features/variables/adhoc/picker/AdHocFilter.tsx:5381": [ diff --git a/packages/grafana-ui/src/themes/GlobalStyles/GlobalStyles.tsx b/packages/grafana-ui/src/themes/GlobalStyles/GlobalStyles.tsx index 6434df3cdb6..0aacc8db438 100644 --- a/packages/grafana-ui/src/themes/GlobalStyles/GlobalStyles.tsx +++ b/packages/grafana-ui/src/themes/GlobalStyles/GlobalStyles.tsx @@ -23,6 +23,7 @@ import { getRcTimePickerStyles } from './rcTimePicker'; import { getSkeletonStyles } from './skeletonStyles'; import { getSlateStyles } from './slate'; import { getUplotStyles } from './uPlot'; +import { getUtilityClassStyles } from './utilityClasses'; /** @internal */ export function GlobalStyles() { @@ -51,6 +52,7 @@ export function GlobalStyles() { getSkeletonStyles(theme), getSlateStyles(theme), getUplotStyles(theme), + getUtilityClassStyles(theme), getLegacySelectStyles(theme), ]} /> diff --git a/packages/grafana-ui/src/themes/GlobalStyles/utilityClasses.ts b/packages/grafana-ui/src/themes/GlobalStyles/utilityClasses.ts new file mode 100644 index 00000000000..f931952116c --- /dev/null +++ b/packages/grafana-ui/src/themes/GlobalStyles/utilityClasses.ts @@ -0,0 +1,42 @@ +import { css } from '@emotion/react'; + +import { GrafanaTheme2 } from '@grafana/data'; + +export function getUtilityClassStyles(theme: GrafanaTheme2) { + return css({ + '.highlight-word': { + color: theme.v1.palette.orange, + }, + '.hide': { + display: 'none', + }, + '.show': { + display: 'block', + }, + '.invisible': { + // can't avoid type assertion here due to !important + // eslint-disable-next-line @typescript-eslint/consistent-type-assertions + visibility: 'hidden !important' as 'hidden', + }, + '.absolute': { + position: 'absolute', + }, + '.flex-grow-1': { + flexGrow: 1, + }, + '.flex-shrink-1': { + flexShrink: 1, + }, + '.flex-shrink-0': { + flexShrink: 0, + }, + '.center-vh': { + height: '100%', + display: 'flex', + flexDirection: 'column', + alignItems: 'center', + justifyContent: 'center', + justifyItems: 'center', + }, + }); +} diff --git a/public/app/core/components/Login/LoginServiceButtons.tsx b/public/app/core/components/Login/LoginServiceButtons.tsx index 0cc28c6eb83..ae52e23a73c 100644 --- a/public/app/core/components/Login/LoginServiceButtons.tsx +++ b/public/app/core/components/Login/LoginServiceButtons.tsx @@ -108,20 +108,17 @@ const getServiceStyles = (theme: GrafanaTheme2) => { const LoginDivider = () => { const styles = useStyles2(getServiceStyles); return ( - <> -
-
-
-
-
- {!config.disableLoginForm && or} -
-
-
-
+
+
+
-
- +
+ {!config.disableLoginForm && or} +
+
+
+
+
); }; diff --git a/public/app/features/query/components/QueryGroupOptions.tsx b/public/app/features/query/components/QueryGroupOptions.tsx index 7d73aa3fac1..8fc36b47e1e 100644 --- a/public/app/features/query/components/QueryGroupOptions.tsx +++ b/public/app/features/query/components/QueryGroupOptions.tsx @@ -3,7 +3,7 @@ import { PureComponent, ChangeEvent, FocusEvent } from 'react'; import * as React from 'react'; import { rangeUtil, PanelData, DataSourceApi } from '@grafana/data'; -import { Switch, Input, InlineFormLabel, stylesFactory } from '@grafana/ui'; +import { Input, InlineFormLabel, stylesFactory, InlineFieldRow, InlineSwitch } from '@grafana/ui'; import { QueryOperationRow } from 'app/core/components/QueryOperationRow/QueryOperationRow'; import { config } from 'app/core/config'; import { QueryGroupOptions } from 'app/types'; @@ -408,10 +408,10 @@ export class QueryGroupOptionsEditor extends PureComponent { />
{(timeShift || relativeTime) && ( -
+ Hide time info - -
+ + )} ); diff --git a/public/sass/_angular.scss b/public/sass/_angular.scss index d6e75e4d31b..b5a5605fedf 100644 --- a/public/sass/_angular.scss +++ b/public/sass/_angular.scss @@ -2312,3 +2312,42 @@ div.flot-text { color: $text-color; } } + +.clearfix { + &::after { + content: ''; + display: table; + clear: both; + } +} + +// Close icons +// -------------------------------------------------- +.close { + opacity: 0.2; + float: right; + font-size: 20px; + font-weight: bold; + line-height: $line-height-base; + color: $black; + text-shadow: 0 1px 0 rgba(255, 255, 255, 1); + + &:hover, + &:focus { + color: $black; + text-decoration: none; + cursor: pointer; + opacity: 0.4; + } +} + +// Additional properties for button version +// iOS requires the button element instead of an anchor tag. +// If you want the anchor version, it requires `href="#"`. +button.close { + padding: 0; + cursor: pointer; + background: transparent; + border: 0; + -webkit-appearance: none; +} diff --git a/public/sass/_grafana.scss b/public/sass/_grafana.scss index 127d6ead988..524357a008c 100644 --- a/public/sass/_grafana.scss +++ b/public/sass/_grafana.scss @@ -5,7 +5,6 @@ @import 'base/font_awesome'; // UTILS -@import 'utils/utils'; @import 'utils/widths'; // COMPONENTS diff --git a/public/sass/utils/_utils.scss b/public/sass/utils/_utils.scss deleted file mode 100644 index 586cce5dc0b..00000000000 --- a/public/sass/utils/_utils.scss +++ /dev/null @@ -1,119 +0,0 @@ -.clearfix { - &::after { - content: ''; - display: table; - clear: both; - } -} - -.highlight-word { - color: $brand-primary; -} - -.emphasis-word { - font-weight: $font-weight-semi-bold; - color: $text-color-emphasis; -} - -// Close icons -// -------------------------------------------------- -.close { - opacity: 0.2; - float: right; - font-size: 20px; - font-weight: bold; - line-height: $line-height-base; - color: $black; - text-shadow: 0 1px 0 rgba(255, 255, 255, 1); - - &:hover, - &:focus { - color: $black; - text-decoration: none; - cursor: pointer; - opacity: 0.4; - } -} - -// Additional properties for button version -// iOS requires the button element instead of an anchor tag. -// If you want the anchor version, it requires `href="#"`. -button.close { - padding: 0; - cursor: pointer; - background: transparent; - border: 0; - -webkit-appearance: none; -} - -// -// Utility classes -// -------------------------------------------------- - -// Quick floats -.pull-right { - float: right !important; -} - -.pull-left { - float: left !important; -} - -// Toggling content -.hide { - display: none; -} - -.show { - display: block; -} - -// Visibility -.invisible { - visibility: hidden !important; -} - -// For Affix plugin -.affix { - position: fixed; -} - -.d-inline-block { - display: inline-block; -} - -.absolute { - position: absolute; -} - -.flex-grow-1 { - flex-grow: 1; -} - -.flex-shrink-1 { - flex-shrink: 1; -} - -.flex-shrink-0 { - flex-shrink: 0; -} - -.flex-flow-column-nowrap { - display: flex; - flex-flow: column nowrap; -} - -.center-vh { - height: 100%; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - justify-items: center; -} - -.align-items-center { - display: flex; - flex-direction: row nowrap; - align-items: center; -}