UNPKG

@atlaskit/dynamic-table

Version:

A dynamic table displays rows of data with built-in pagination, sorting, and re-ordering functionality.

54 lines (52 loc) 2.04 kB
import _extends from "@babel/runtime/helpers/extends"; /** * @jsxRuntime classic * @jsx jsx */ import { forwardRef } from 'react'; // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766 import { css, jsx } from '@emotion/react'; import { tableRowCSSVars as cssVars } from './dynamic-table'; const rowStyles = css({ backgroundColor: "var(--ds-background-neutral-subtle, transparent)", '&:focus-visible': { outline: `2px solid ${`var(--ds-border-focused, ${ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766 `var(${cssVars.CSS_VAR_HOVER_BACKGROUND})`})`}`, outlineOffset: `-2px` } }); const rowBackgroundStyles = css({ '&:hover': { backgroundColor: `var(--ds-background-neutral-subtle-hovered, ${ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766 `var(${cssVars.CSS_VAR_HOVER_BACKGROUND})`})` } }); const rowHighlightedBackgroundStyles = css({ backgroundColor: `var(--ds-background-selected, ${ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766 `var(${cssVars.CSS_VAR_HIGHLIGHTED_BACKGROUND})`})`, '&:hover': { backgroundColor: `var(--ds-background-selected-hovered, ${ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766 `var(${cssVars.CSS_VAR_HOVER_HIGHLIGHTED_BACKGROUND})`})` } }); // eslint-disable-next-line @repo/internal/react/require-jsdoc export const TableBodyRow = /*#__PURE__*/forwardRef(({ isHighlighted, children, style, testId, ...rest }, ref) => { return jsx("tr", _extends({ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766 style: style, css: [rowStyles, isHighlighted ? rowHighlightedBackgroundStyles : rowBackgroundStyles] }, rest, { ref: ref, "data-testid": testId }), children); });