@grafana/ui
Version:
Grafana Components Library
1 lines • 11 kB
Source Map (JSON)
{"version":3,"file":"utilityClasses.mjs","sources":["../../../../src/themes/GlobalStyles/utilityClasses.ts"],"sourcesContent":["import { css } from '@emotion/react';\nimport { CSSInterpolation } from '@emotion/serialize';\n\nimport { GrafanaTheme2 } from '@grafana/data';\n\nfunction buttonBackgroundMixin(\n startColor: string,\n endColor: string,\n textColor = '#fff',\n textShadow = '0px 1px 0 rgba(0, 0, 0, 0.1)'\n) {\n return {\n backgroundColor: startColor,\n backgroundImage: `linear-gradient(to bottom, ${startColor}, ${endColor})`,\n backgroundRepeat: 'repeat-x',\n color: textColor,\n textShadow: textShadow,\n borderColor: startColor,\n\n // in these cases the gradient won't cover the background, so we override\n '&:hover, &:focus, &:active, &.active, &.disabled, &[disabled]': {\n color: textColor,\n backgroundImage: 'none',\n backgroundColor: startColor,\n },\n };\n}\n\nfunction buttonSizeMixin(paddingY: string, paddingX: string, fontSize: string, borderRadius: string) {\n return {\n padding: `${paddingY} ${paddingX}`,\n fontSize: fontSize,\n borderRadius: borderRadius,\n };\n}\n\nfunction widthMixin(theme: GrafanaTheme2, max: number) {\n let result: CSSInterpolation = {};\n for (let i = 1; i <= max; i++) {\n const width = `${theme.spacing(2 * i)} !important`;\n result[`.width-${i}`] = {\n width,\n };\n result[`.max-width-${i}`] = {\n maxWidth: width,\n flexGrow: 1,\n };\n result[`.min-width-${i}`] = {\n minWidth: width,\n };\n result[`.offset-width-${i}`] = {\n marginLeft: width,\n };\n }\n return result;\n}\n\nexport function getUtilityClassStyles(theme: GrafanaTheme2) {\n return css({\n '.highlight-word': {\n color: theme.v1.palette.orange,\n },\n '.hide': {\n display: 'none',\n },\n '.show': {\n display: 'block',\n },\n '.invisible': {\n // can't avoid type assertion here due to !important\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n visibility: 'hidden !important' as 'hidden',\n },\n '.absolute': {\n position: 'absolute',\n },\n '.flex-grow-1': {\n flexGrow: 1,\n },\n '.flex-shrink-1': {\n flexShrink: 1,\n },\n '.flex-shrink-0': {\n flexShrink: 0,\n },\n '.center-vh': {\n height: '100%',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n justifyItems: 'center',\n },\n '.btn': {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n fontWeight: theme.typography.fontWeightMedium,\n lineHeight: theme.typography.body.lineHeight,\n textAlign: 'center',\n verticalAlign: 'middle',\n cursor: 'pointer',\n border: 'none',\n height: `${theme.spacing.gridSize * theme.components.height.md}px`,\n ...buttonSizeMixin(\n theme.spacing(0),\n theme.spacing(2),\n `${theme.typography.fontSize}px`,\n theme.shape.radius.default\n ),\n\n '&, &:active, &.active': {\n '&:focus, &.focus': {\n outline: 'none',\n },\n },\n '&:focus, &:hover': {\n textDecoration: 'none',\n },\n '&.focus': {\n textDecoration: 'none',\n },\n '&:active, &.active': {\n backgroundImage: 'none',\n outline: 0,\n },\n '&.disabled, &[disabled], &:disabled': {\n cursor: 'not-allowed',\n opacity: 0.65,\n boxShadow: 'none',\n pointerEvents: 'none',\n },\n },\n '.btn-small': {\n ...buttonSizeMixin(theme.spacing(0.5), theme.spacing(1), theme.typography.size.sm, theme.shape.radius.default),\n height: `${theme.spacing.gridSize * theme.components.height.sm}px`,\n },\n // Deprecated, only used by old plugins\n '.btn-mini': {\n ...buttonSizeMixin(theme.spacing(0.5), theme.spacing(1), theme.typography.size.sm, theme.shape.radius.default),\n height: `${theme.spacing.gridSize * theme.components.height.sm}px`,\n },\n '.btn-success, .btn-primary': {\n ...buttonBackgroundMixin(theme.colors.primary.main, theme.colors.primary.shade),\n },\n '.btn-danger': {\n ...buttonBackgroundMixin(theme.colors.error.main, theme.colors.error.shade),\n },\n '.btn-secondary': {\n ...buttonBackgroundMixin(theme.colors.secondary.main, theme.colors.secondary.shade, theme.colors.text.primary),\n },\n '.btn-inverse': {\n ...buttonBackgroundMixin(\n theme.isDark ? theme.v1.palette.dark6 : theme.v1.palette.gray5,\n theme.isDark ? theme.v1.palette.dark5 : theme.v1.palette.gray4,\n theme.colors.text.primary\n ),\n '&': {\n boxShadow: 'none',\n },\n },\n '.typeahead': {\n zIndex: theme.zIndex.typeahead,\n },\n ...widthMixin(theme, 30),\n '.row': {\n display: 'flex',\n flexWrap: 'wrap',\n marginLeft: `calc(${theme.spacing(4)} / -2)`,\n marginRight: `calc(${theme.spacing(4)} / -2)`,\n },\n '.container': {\n marginLeft: 'auto',\n marginRight: 'auto',\n paddingLeft: `calc(${theme.spacing(4)} / 2)`,\n paddingRight: `calc(${theme.spacing(4)} / 2)`,\n [theme.breakpoints.up('sm')]: {\n maxWidth: theme.breakpoints.values.sm,\n },\n [theme.breakpoints.up('md')]: {\n maxWidth: theme.breakpoints.values.md,\n },\n [theme.breakpoints.up('lg')]: {\n maxWidth: theme.breakpoints.values.lg,\n },\n [theme.breakpoints.up('xl')]: {\n maxWidth: theme.breakpoints.values.xl,\n },\n },\n });\n}\n"],"names":[],"mappings":"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"}