{"version":3,"file":"dashboardGrid.cjs","sources":["../../../../src/themes/GlobalStyles/dashboardGrid.ts"],"sourcesContent":["import { css } from '@emotion/react';\n\nimport { GrafanaTheme2 } from '@grafana/data';\n\nexport function getDashboardGridStyles(theme: GrafanaTheme2) {\n  return css({\n    '.react-resizable-handle': {\n      // this needs to use visibility and not display none in order not to cause resize flickering\n      visibility: 'hidden',\n    },\n\n    '.react-grid-item, #grafana-portal-container': {\n      touchAction: 'initial !important',\n\n      '&:hover': {\n        '.react-resizable-handle': {\n          visibility: 'visible',\n        },\n      },\n    },\n\n    '.dragging-active': {\n      '*': {\n        cursor: 'move',\n        userSelect: 'none',\n      },\n    },\n\n    [theme.breakpoints.down('md')]: {\n      '.react-grid-layout': {\n        height: 'unset !important',\n      },\n      '.react-grid-item': {\n        display: 'block !important',\n        transitionProperty: 'none !important',\n        // can't avoid type assertion here due to !important\n        // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n        position: 'unset !important' as 'unset',\n        transform: 'translate(0px, 0px) !important',\n        marginBottom: theme.spacing(2),\n      },\n      '.panel-repeater-grid-item': {\n        height: 'auto !important',\n      },\n    },\n\n    '.react-grid-item.react-grid-placeholder': {\n      boxShadow: `0 0 4px ${theme.colors.primary.border} !important`,\n      background: `${theme.colors.primary.transparent} !important`,\n      zIndex: '-1 !important',\n      opacity: 'unset !important',\n    },\n\n    '.react-grid-item > .react-resizable-handle::after': {\n      borderRight: `2px solid ${theme.isDark ? theme.v1.palette.gray1 : theme.v1.palette.gray3} !important`,\n      borderBottom: `2px solid ${theme.isDark ? theme.v1.palette.gray1 : theme.v1.palette.gray3} !important`,\n    },\n\n    // Hack for preventing panel menu overlapping.\n    '.react-grid-item.resizing.panel, .react-grid-item.panel.dropdown-menu-open, .react-grid-item.react-draggable-dragging.panel':\n      {\n        zIndex: theme.zIndex.dropdown,\n      },\n\n    // Disable animation on initial rendering and enable it when component has been mounted.\n    '.react-grid-item.cssTransforms': {\n      // eslint-disable-next-line @grafana/no-unreduced-motion\n      transitionProperty: 'none !important',\n    },\n\n    [theme.transitions.handleMotion('no-preference')]: {\n      '.react-grid-layout--enable-move-animations': {\n        '.react-grid-item.cssTransforms': {\n          transitionProperty: 'transform !important',\n        },\n      },\n    },\n\n    '.dashboard-selected-element': {\n      outline: `1px dashed ${theme.colors.primary.border}`,\n      outlineOffset: '0px',\n      borderRadius: theme.shape.radius.default,\n    },\n\n    '.dashboard-selectable-element': {\n      '&:hover': {\n        outline: `1px dashed ${theme.colors.border.strong}`,\n        outlineOffset: '0px',\n        borderRadius: theme.shape.radius.default,\n        backgroundColor: theme.colors.emphasize(theme.colors.background.canvas, 0.08),\n      },\n    },\n\n    '.dashboard-canvas-controls': {\n      opacity: 0,\n\n      '@media (hover: none) and (pointer: coarse)': {\n        '&': {\n          opacity: 1,\n        },\n      },\n\n      [theme.transitions.handleMotion('no-preference', 'reduce')]: {\n        transition: theme.transitions.create('opacity'),\n      },\n\n      '&:hover, :focus-within': {\n        opacity: 1,\n      },\n    },\n\n    '.dashboard-visible-hidden-element': {\n      position: 'relative',\n    },\n\n    // Universal style for marking drop targets when dragging between layouts\n    '.dashboard-drop-target': {\n      // Setting same options for hovered and not hovered to overwrite any conflicting styles\n      // There was a race condition with selectable elements styles\n      '&:is(:hover),&:not(:hover)': {\n        outline: `2px solid ${theme.colors.primary.border}`,\n        outlineOffset: '0px',\n        borderRadius: theme.shape.radius.default,\n      },\n    },\n\n    // Body style for preventing selection when dragging\n    '.dashboard-draggable-transparent-selection': {\n      '*::selection': {\n        all: 'inherit',\n      },\n    },\n\n    '.react-draggable-dragging': {\n      opacity: 0.8,\n    },\n  });\n}\n"],"names":["css"],"mappings":"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"}