UNPKG

@grafana/ui

Version:
1 lines 11 kB
{"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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"}