From c0a75fbb2ccbbec7dd16a3582581093216c3a98b Mon Sep 17 00:00:00 2001 From: Cee Chen Date: Fri, 30 Aug 2024 10:53:58 -0700 Subject: [PATCH 1/9] Clean up and convert EuiDataGridPagination - move it to its own folder, it's a fairly top-level component in the DOM (similar to the controls/toolbar) - simplify some of its rendering logic to a separate util (allows less conditional hooks shenanigans). Also allows us to remove the duplicate `useEuiTablePaginationDefaults()` logic, which is already done once at the topmost EuiDataGrid level - clean up types - no need to have internal props in the top-level types file --- .../src/components/datagrid/_data_grid.scss | 12 ---- .../eui/src/components/datagrid/data_grid.tsx | 10 +-- .../components/datagrid/data_grid_types.ts | 7 -- .../pagination/data_grid_pagination.styles.ts | 29 ++++++++ .../data_grid_pagination.test.tsx | 72 ++++++++----------- .../data_grid_pagination.tsx | 71 +++++++++--------- .../components/datagrid/pagination/index.ts | 12 ++++ 7 files changed, 116 insertions(+), 97 deletions(-) create mode 100644 packages/eui/src/components/datagrid/pagination/data_grid_pagination.styles.ts rename packages/eui/src/components/datagrid/{utils => pagination}/data_grid_pagination.test.tsx (57%) rename packages/eui/src/components/datagrid/{utils => pagination}/data_grid_pagination.tsx (55%) create mode 100644 packages/eui/src/components/datagrid/pagination/index.ts diff --git a/packages/eui/src/components/datagrid/_data_grid.scss b/packages/eui/src/components/datagrid/_data_grid.scss index 1d5be87f64c..722576f10e9 100644 --- a/packages/eui/src/components/datagrid/_data_grid.scss +++ b/packages/eui/src/components/datagrid/_data_grid.scss @@ -15,12 +15,6 @@ bottom: 0; z-index: $euiZDataGrid; background: $euiColorEmptyShade; - - .euiDataGrid__pagination { - padding-bottom: $euiSizeXS; - background: $euiColorLightestShade; - box-shadow: $euiBorderWidthThin 0 0 $euiBorderWidthThin $euiBorderColor; // Use box-shadow instead of border-top to avoid duplicating the border-bottom on grid cells - } } .euiDataGrid__content { @@ -42,12 +36,6 @@ overflow: auto; } -.euiDataGrid__pagination { - z-index: 2; // Sits above the content above it - padding-top: $euiSizeXS; - flex-grow: 0; -} - // This is used to remove extra scrollbars on the body when fullscreen is enabled // and tweak any components that account for fixed headers .euiDataGrid__restrictBody { diff --git a/packages/eui/src/components/datagrid/data_grid.tsx b/packages/eui/src/components/datagrid/data_grid.tsx index ba5fa160971..a5176b0041f 100644 --- a/packages/eui/src/components/datagrid/data_grid.tsx +++ b/packages/eui/src/components/datagrid/data_grid.tsx @@ -36,6 +36,7 @@ import { checkOrDefaultToolBarDisplayOptions, EuiDataGridToolbar, } from './controls'; +import { EuiDataGridPagination, shouldRenderPagination } from './pagination'; import { DataGridSortedContext, useSorting } from './utils/sorting'; import { DataGridFocusContext, @@ -49,7 +50,6 @@ import { } from './utils/in_memory'; import { DataGridCellPopoverContext, useCellPopover } from './body/cell'; import { computeVisibleRows } from './utils/row_count'; -import { EuiDataGridPaginationRenderer } from './utils/data_grid_pagination'; import { schemaDetectors as providedSchemaDetectors, useMergedSchema, @@ -152,6 +152,8 @@ export const EuiDataGrid = memo( } : _pagination; }, [_pagination, paginationDefaults]); + const showPagination = + pagination && shouldRenderPagination(rowCount, pagination); const gridStyleWithDefaults = useMemo( () => ({ ...startingStyles, ...gridStyle }), @@ -510,13 +512,13 @@ export const EuiDataGrid = memo( renderCustomGridBody={renderCustomGridBody} /> - {pagination && props['aria-labelledby'] && ( + {showPagination && props['aria-labelledby'] && ( )} - {pagination && ( - ({ + euiDataGrid__pagination: css` + z-index: 2; /* Sits above the content above it */ + flex-grow: 0; + ${logicalCSS('padding-top', euiTheme.size.xs)} + + .euiDataGrid--fullScreen & { + ${logicalCSS('padding-bottom', euiTheme.size.xs)} + background-color: ${euiTheme.colors.lightestShade}; + + /* Use box-shadow instead of border-top to avoid duplicating the border-bottom on grid cells */ + box-shadow: ${euiTheme.border.width.thin} 0 0 + ${euiTheme.border.width.thin} ${euiTheme.border.color}; + } + `, +}); diff --git a/packages/eui/src/components/datagrid/utils/data_grid_pagination.test.tsx b/packages/eui/src/components/datagrid/pagination/data_grid_pagination.test.tsx similarity index 57% rename from packages/eui/src/components/datagrid/utils/data_grid_pagination.test.tsx rename to packages/eui/src/components/datagrid/pagination/data_grid_pagination.test.tsx index 2c176b702ed..8ca16f97050 100644 --- a/packages/eui/src/components/datagrid/utils/data_grid_pagination.test.tsx +++ b/packages/eui/src/components/datagrid/pagination/data_grid_pagination.test.tsx @@ -10,17 +10,34 @@ import React from 'react'; import { fireEvent } from '@testing-library/react'; import { render } from '../../../test/rtl'; -import { DataGridFocusContext } from './focus'; -import { mockFocusContext } from './__mocks__/focus_context'; -import { EuiDataGridPaginationRenderer } from './data_grid_pagination'; +import { DataGridFocusContext } from '../utils/focus'; +import { mockFocusContext } from '../utils/__mocks__/focus_context'; +import { + shouldRenderPagination, + EuiDataGridPagination, +} from './data_grid_pagination'; -describe('EuiDataGridPaginationRenderer', () => { +const mockPagination = { + pageIndex: 0, + pageSize: 25, + pageSizeOptions: [25], + onChangePage: () => {}, + onChangeItemsPerPage: () => {}, +}; + +describe('shouldRenderPagination', () => { + it('returns false if there are fewer rows than the smallest page size option', () => { + expect(shouldRenderPagination(2, mockPagination)).toEqual(false); + }); + + it('returns true if there are more rows than the current or smallest page size', () => { + expect(shouldRenderPagination(30, mockPagination)).toEqual(true); + }); +}); + +describe('EuiDataGridPagination', () => { const props = { - pageIndex: 0, - pageSize: 25, - pageSizeOptions: [25], - onChangePage: jest.fn(), - onChangeItemsPerPage: jest.fn(), + ...mockPagination, rowCount: 100, controls: 'data-grid-id', }; @@ -29,7 +46,7 @@ describe('EuiDataGridPaginationRenderer', () => { it('renders', () => { const { container, getByText } = render( - + ); expect(container.firstChild).toHaveClass('euiDataGrid__pagination'); fireEvent.click(getByText('Rows per page: 25')); @@ -39,7 +56,7 @@ describe('EuiDataGridPaginationRenderer', () => { it('renders a detailed aria-label', () => { const { getAllByLabelText } = render( - + ); expect( getAllByLabelText('Pagination for preceding grid: Test Grid') @@ -48,7 +65,7 @@ describe('EuiDataGridPaginationRenderer', () => { it('hides the page size selection if pageSizeOptions is empty', () => { const { queryByTestSubject, queryByText } = render( - + ); expect(queryByTestSubject('tablePaginationPopoverButton')).toBeFalsy(); expect(queryByText('Rows per page:')).toBeFalsy(); @@ -56,7 +73,7 @@ describe('EuiDataGridPaginationRenderer', () => { it('handles the "show all" page size option', () => { const { getByText } = render( - { expect(getByText('Showing all rows')).toBeTruthy(); }); - it('does not render if there are fewer rows than the smallest page size option', () => { - const { container } = render( - - ); - expect(container).toBeEmptyDOMElement(); - }); - it('focuses the first data cell on page change', () => { const { getByTestSubject } = render( - + ); fireEvent.click(getByTestSubject('pagination-button-2')); expect(mockFocusContext.setFocusedCell).toHaveBeenCalledWith([0, 0]); }); - - describe('EuiProvider component defaults', () => { - it('falls back to EuiTablePagination defaults if pageSize and pageSizeOptions are undefined', () => { - const { getByText } = render( - - ); - fireEvent.click(getByText('Rows per page: 10')); - expect(getByText('10 rows')).toBeTruthy(); - expect(getByText('25 rows')).toBeTruthy(); - expect(getByText('50 rows')).toBeTruthy(); - }); - }); }); diff --git a/packages/eui/src/components/datagrid/utils/data_grid_pagination.tsx b/packages/eui/src/components/datagrid/pagination/data_grid_pagination.tsx similarity index 55% rename from packages/eui/src/components/datagrid/utils/data_grid_pagination.tsx rename to packages/eui/src/components/datagrid/pagination/data_grid_pagination.tsx index 25ed1771b17..1a34dfedaa9 100644 --- a/packages/eui/src/components/datagrid/utils/data_grid_pagination.tsx +++ b/packages/eui/src/components/datagrid/pagination/data_grid_pagination.tsx @@ -6,32 +6,47 @@ * Side Public License, v 1. */ -import React, { useCallback, useContext } from 'react'; +import React, { useCallback, useContext, AriaAttributes } from 'react'; -import { useEuiI18n } from '../../i18n'; // Note: this file must be named data_grid_pagination to match i18n tokens -import { - EuiTablePagination, - useEuiTablePaginationDefaults, -} from '../../table/table_pagination'; -import { - EuiDataGridPaginationProps, - EuiDataGridPaginationRendererProps, -} from '../data_grid_types'; -import { DataGridFocusContext } from './focus'; +import { useEuiMemoizedStyles } from '../../../services'; +import { useEuiI18n } from '../../i18n'; +import { EuiTablePagination } from '../../table/table_pagination'; +import { EuiDataGridPaginationProps } from '../data_grid_types'; +import { DataGridFocusContext } from '../utils/focus'; -export const EuiDataGridPaginationRenderer = ({ +import { euiDataGridPaginationStyles } from './data_grid_pagination.styles'; + +type _EuiDataGridPaginationProps = Required & { + // Internal EUI props + rowCount: number; + controls: string; + 'aria-label'?: AriaAttributes['aria-label']; +}; + +/** + * Do not render the pagination when: + * 1. Rows count is less than min pagination option (rows per page) + * 2. Rows count is less than pageSize (the case when there are no pageSizeOptions provided) + */ +export const shouldRenderPagination = ( + rowCount: number, + { pageSize, pageSizeOptions }: Required +) => { + const minSizeOption = [...pageSizeOptions].sort((a, b) => a - b)[0]; + return !(rowCount < (minSizeOption || pageSize)); +}; + +export const EuiDataGridPagination = ({ pageIndex, - pageSize: _pageSize, - pageSizeOptions: _pageSizeOptions, + pageSize, + pageSizeOptions, onChangePage: _onChangePage, onChangeItemsPerPage, rowCount, controls, 'aria-label': ariaLabel, -}: EuiDataGridPaginationRendererProps) => { - const defaults = useEuiTablePaginationDefaults(); - const pageSize = _pageSize ?? defaults.itemsPerPage; - const pageSizeOptions = _pageSizeOptions ?? defaults.itemsPerPageOptions; +}: _EuiDataGridPaginationProps) => { + const styles = useEuiMemoizedStyles(euiDataGridPaginationStyles); const detailedPaginationLabel = useEuiI18n( 'euiDataGridPagination.detailedPaginationLabel', @@ -54,28 +69,18 @@ export const EuiDataGridPaginationRenderer = ({ ); const pageCount = pageSize ? Math.ceil(rowCount / pageSize) : 1; - const minSizeOption = [...pageSizeOptions].sort((a, b) => a - b)[0]; - - if (rowCount < (minSizeOption || pageSize)) { - /** - * Do not render the pagination when: - * 1. Rows count is less than min pagination option (rows per page) - * 2. Rows count is less than pageSize (the case when there are no pageSizeOptions provided) - */ - return null; - } - - // Hide select rows per page if pageSizeOptions is an empty array - const hidePerPageOptions = pageSizeOptions.length === 0; return ( -
+
0} pageCount={pageCount} onChangePage={onChangePage} onChangeItemsPerPage={onChangeItemsPerPage} diff --git a/packages/eui/src/components/datagrid/pagination/index.ts b/packages/eui/src/components/datagrid/pagination/index.ts new file mode 100644 index 00000000000..f143fd2926e --- /dev/null +++ b/packages/eui/src/components/datagrid/pagination/index.ts @@ -0,0 +1,12 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0 and the Server Side Public License, v 1; you may not use this file except + * in compliance with, at your election, the Elastic License 2.0 or the Server + * Side Public License, v 1. + */ + +export { + shouldRenderPagination, + EuiDataGridPagination, +} from './data_grid_pagination'; From 889ed4b9a018033223915517f26606ae9820de7b Mon Sep 17 00:00:00 2001 From: Cee Chen Date: Fri, 30 Aug 2024 11:26:48 -0700 Subject: [PATCH 2/9] Convert fullscreen CSS to Emotion + requires vanilla Emotion CSS/classNames + delete variables, not used anywhere else and can be contained here --- .../src/components/datagrid/_data_grid.scss | 32 ------------- .../src/components/datagrid/_variables.scss | 2 - .../controls/fullscreen_selector.styles.ts | 48 +++++++++++++++++++ .../controls/fullscreen_selector.test.tsx | 10 ++++ .../datagrid/controls/fullscreen_selector.tsx | 20 ++++++-- .../eui/src/components/datagrid/data_grid.tsx | 2 + 6 files changed, 76 insertions(+), 38 deletions(-) create mode 100644 packages/eui/src/components/datagrid/controls/fullscreen_selector.styles.ts diff --git a/packages/eui/src/components/datagrid/_data_grid.scss b/packages/eui/src/components/datagrid/_data_grid.scss index 722576f10e9..768ff25507e 100644 --- a/packages/eui/src/components/datagrid/_data_grid.scss +++ b/packages/eui/src/components/datagrid/_data_grid.scss @@ -6,17 +6,6 @@ height: 100%; } -.euiDataGrid--fullScreen { - height: 100%; - position: fixed; - top: 0; - left: 0; - right: 0; - bottom: 0; - z-index: $euiZDataGrid; - background: $euiColorEmptyShade; -} - .euiDataGrid__content { flex-grow: 1; height: 100%; @@ -36,27 +25,6 @@ overflow: auto; } -// This is used to remove extra scrollbars on the body when fullscreen is enabled -// and tweak any components that account for fixed headers -.euiDataGrid__restrictBody { - height: 100vh; - overflow: hidden; - - .euiHeader[data-fixed-header] { - // !important needed to override header inline styles - z-index: $euiZHeaderBelowDataGrid !important; // stylelint-disable-line declaration-no-important - } - - .euiOverlayMask[data-relative-to-header='below'] { - top: 0; - } - - .euiFlyout { - top: 0; - height: 100%; - } -} - .euiDataGrid__focusWrap { height: 100%; } diff --git a/packages/eui/src/components/datagrid/_variables.scss b/packages/eui/src/components/datagrid/_variables.scss index 3e95b6a68ee..66ae88d4c6b 100644 --- a/packages/eui/src/components/datagrid/_variables.scss +++ b/packages/eui/src/components/datagrid/_variables.scss @@ -1,5 +1,3 @@ -$euiZDataGrid: $euiZHeader - 1; -$euiZHeaderBelowDataGrid: $euiZHeader - 2; $euiZDataGridCellPopover: $euiZHeader; // Same z-index as EuiFlyout mask overlays - cell popovers should be under both modal and flyout overlays $euiDataGridColumnResizerWidth: 3px; // Odd number because it straddles a border diff --git a/packages/eui/src/components/datagrid/controls/fullscreen_selector.styles.ts b/packages/eui/src/components/datagrid/controls/fullscreen_selector.styles.ts new file mode 100644 index 00000000000..c5c00246190 --- /dev/null +++ b/packages/eui/src/components/datagrid/controls/fullscreen_selector.styles.ts @@ -0,0 +1,48 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0 and the Server Side Public License, v 1; you may not use this file except + * in compliance with, at your election, the Elastic License 2.0 or the Server + * Side Public License, v 1. + */ + +import { css } from '@emotion/css'; + +import { UseEuiTheme } from '../../../services'; +import { logicalCSS } from '../../../global_styling'; + +export const euiDataGridFullScreenStyles = (euiThemeContext: UseEuiTheme) => { + const { euiTheme } = euiThemeContext; + + const fullScreenZIndex = Number(euiTheme.levels.header) - 1; + + return { + 'euiDataGrid--fullScreen': css` + z-index: ${fullScreenZIndex}; + position: fixed; + inset: 0; + background-color: ${euiTheme.colors.emptyShade}; + `, + // This is a vanilla className applied to the when fullscreen is enabled. + // It removes extra scrollbars + tweaks components to account for fixed headers + euiDataGrid__restrictBody: css` + ${logicalCSS('height', '100vh')} + overflow: hidden; + + .euiHeader[data-fixed-header] { + /* !important needed to override header inline styles */ + /* stylelint-disable-next-line declaration-no-important */ + z-index: ${fullScreenZIndex - 1} !important; + } + + .euiOverlayMask[data-relative-to-header='below'] { + ${logicalCSS('top', '0')} + } + + .euiFlyout { + ${logicalCSS('top', '0')} + ${logicalCSS('height', '100%')} + } + `, + }; +}; diff --git a/packages/eui/src/components/datagrid/controls/fullscreen_selector.test.tsx b/packages/eui/src/components/datagrid/controls/fullscreen_selector.test.tsx index f0dd674df29..a5f70d84ed2 100644 --- a/packages/eui/src/components/datagrid/controls/fullscreen_selector.test.tsx +++ b/packages/eui/src/components/datagrid/controls/fullscreen_selector.test.tsx @@ -106,4 +106,14 @@ describe('useDataGridFullScreenSelector', () => { ).toBe(false); }); }); + + describe('fullScreenStyles', () => { + it('returns an Emotion fullscreen className to apply to the EuiDataGrid', () => { + const { fullScreenStyles } = renderHook(() => + useDataGridFullScreenSelector() + ).result.current; + + expect(fullScreenStyles).toContain('euiDataGrid--fullScreen'); + }); + }); }); diff --git a/packages/eui/src/components/datagrid/controls/fullscreen_selector.tsx b/packages/eui/src/components/datagrid/controls/fullscreen_selector.tsx index d151e7f2f59..29c4b5f5eda 100644 --- a/packages/eui/src/components/datagrid/controls/fullscreen_selector.tsx +++ b/packages/eui/src/components/datagrid/controls/fullscreen_selector.tsx @@ -16,11 +16,13 @@ import React, { KeyboardEventHandler, } from 'react'; -import { keys } from '../../../services'; +import { keys, useEuiMemoizedStyles } from '../../../services'; import { EuiToolTip } from '../../tool_tip'; import { EuiButtonIcon } from '../../button'; import { useEuiI18n } from '../../i18n'; +import { euiDataGridFullScreenStyles } from './fullscreen_selector.styles'; + const GRID_IS_FULLSCREEN_CLASSNAME = 'euiDataGrid__restrictBody'; export const useDataGridFullScreenSelector = (): { @@ -28,6 +30,7 @@ export const useDataGridFullScreenSelector = (): { setIsFullScreen: (isFullScreen: boolean) => void; fullScreenSelector: ReactNode; handleGridKeyDown: KeyboardEventHandler; + fullScreenStyles: string; } => { const [isFullScreen, setIsFullScreen] = useState(false); @@ -80,21 +83,30 @@ export const useDataGridFullScreenSelector = (): { [isFullScreen] ); + const styles = useEuiMemoizedStyles(euiDataGridFullScreenStyles); + useEffect(() => { // When the data grid is fullscreen, we add a class to the body to remove the extra scrollbar and stay above any fixed headers if (isFullScreen) { - document.body.classList.add(GRID_IS_FULLSCREEN_CLASSNAME); + document.body.classList.add( + GRID_IS_FULLSCREEN_CLASSNAME, + styles.euiDataGrid__restrictBody + ); return () => { - document.body.classList.remove(GRID_IS_FULLSCREEN_CLASSNAME); + document.body.classList.remove( + GRID_IS_FULLSCREEN_CLASSNAME, + styles.euiDataGrid__restrictBody + ); }; } - }, [isFullScreen]); + }, [isFullScreen, styles.euiDataGrid__restrictBody]); return { isFullScreen, setIsFullScreen, fullScreenSelector, handleGridKeyDown, + fullScreenStyles: styles['euiDataGrid--fullScreen'], }; }; diff --git a/packages/eui/src/components/datagrid/data_grid.tsx b/packages/eui/src/components/datagrid/data_grid.tsx index a5176b0041f..f3c7341df39 100644 --- a/packages/eui/src/components/datagrid/data_grid.tsx +++ b/packages/eui/src/components/datagrid/data_grid.tsx @@ -319,6 +319,7 @@ export const EuiDataGrid = memo( setIsFullScreen, fullScreenSelector, handleGridKeyDown, + fullScreenStyles, } = useDataGridFullScreenSelector(); /** @@ -356,6 +357,7 @@ export const EuiDataGrid = memo( }, { 'euiDataGrid--fullScreen': isFullScreen, + [fullScreenStyles]: isFullScreen, }, { 'euiDataGrid--noControls': !toolbarVisibility, From d91a75c900e011cbd2a1690ba10a66ef89e1733f Mon Sep 17 00:00:00 2001 From: Cee Chen Date: Tue, 3 Sep 2024 21:31:45 -0700 Subject: [PATCH 3/9] Add VRT screenshots of expected fullscreen styles --- ..._FullscreenVRT_Full_Screen_With_Flyout.png | Bin 0 -> 52840 bytes ..._FullscreenVRT_Full_Screen_With_Header.png | Bin 0 -> 31419 bytes ..._FullscreenVRT_Full_Screen_With_Flyout.png | Bin 0 -> 54126 bytes ..._FullscreenVRT_Full_Screen_With_Header.png | Bin 0 -> 48995 bytes .../controls/full_screen_selector.stories.tsx | 95 ++++++++++++++++++ 5 files changed, 95 insertions(+) create mode 100644 packages/eui/.loki/reference/chrome_desktop_Tabular_Content_EuiDataGrid_FullscreenVRT_Full_Screen_With_Flyout.png create mode 100644 packages/eui/.loki/reference/chrome_desktop_Tabular_Content_EuiDataGrid_FullscreenVRT_Full_Screen_With_Header.png create mode 100644 packages/eui/.loki/reference/chrome_mobile_Tabular_Content_EuiDataGrid_FullscreenVRT_Full_Screen_With_Flyout.png create mode 100644 packages/eui/.loki/reference/chrome_mobile_Tabular_Content_EuiDataGrid_FullscreenVRT_Full_Screen_With_Header.png create mode 100644 packages/eui/src/components/datagrid/controls/full_screen_selector.stories.tsx diff --git a/packages/eui/.loki/reference/chrome_desktop_Tabular_Content_EuiDataGrid_FullscreenVRT_Full_Screen_With_Flyout.png b/packages/eui/.loki/reference/chrome_desktop_Tabular_Content_EuiDataGrid_FullscreenVRT_Full_Screen_With_Flyout.png new file mode 100644 index 0000000000000000000000000000000000000000..e37ce718880a63ea2ee62ee0dfb7cd6900e4101a GIT binary patch literal 52840 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
D- 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 literal 0 HcmV?d00001 diff --git a/packages/eui/.loki/reference/chrome_mobile_Tabular_Content_EuiDataGrid_FullscreenVRT_Full_Screen_With_Flyout.png b/packages/eui/.loki/reference/chrome_mobile_Tabular_Content_EuiDataGrid_FullscreenVRT_Full_Screen_With_Flyout.png new file mode 100644 index 0000000000000000000000000000000000000000..5e60f5820aad2273720de9191810ee772ea39344 GIT binary patch literal 54126 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 literal 0 HcmV?d00001 diff --git a/packages/eui/.loki/reference/chrome_mobile_Tabular_Content_EuiDataGrid_FullscreenVRT_Full_Screen_With_Header.png b/packages/eui/.loki/reference/chrome_mobile_Tabular_Content_EuiDataGrid_FullscreenVRT_Full_Screen_With_Header.png new file mode 100644 index 0000000000000000000000000000000000000000..595f3e634cb69862144b375928eb2f6acc56f239 GIT binary patch literal 48995 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%0ARopvAohs-EJ3YTH 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 = { + title: 'Tabular Content/EuiDataGrid/FullscreenVRT', + component: EuiDataGrid, +}; + +export default meta; +type Story = StoryObj; + +const dataGridProps: EuiDataGridProps = { + 'aria-label': 'Test', + columns: [{ id: 'Test' }], + rowCount: 100, + pagination: { + pageIndex: 0, + pageSize: 50, + pageSizeOptions: [1], + onChangePage: () => {}, + onChangeItemsPerPage: () => {}, + }, + renderCellValue: () => 'Test', + columnVisibility: { + visibleColumns: ['Test'], + setVisibleColumns: () => {}, + }, +}; + +export const FullScreenWithHeader: Story = { + tags: ['vrt-only'], + parameters: { + loki: { chromeSelector: LOKI_SELECTORS.body }, + }, + render: () => ( + <> + + + + + + ), + play: async ({ canvasElement }: PlayFunctionContext) => { + const canvas = within(canvasElement); + await fireEvent.click(canvas.getByLabelText('Enter fullscreen')); + }, +}; + +export const FullScreenWithFlyout: Story = { + ...FullScreenWithHeader, + tags: ['vrt-only'], + render: function Render() { + const [openFlyout, setOpenFlyout] = useState(true); + return ( + <> + + + ( + + )} + /> + + {openFlyout && ( + setOpenFlyout(false)}> + Flyout should not be below header in full screen mode + + )} + + ); + }, +}; From 70e283f29e6cd0917071adc7b801a73e51042190 Mon Sep 17 00:00:00 2001 From: Cee Chen Date: Fri, 30 Aug 2024 11:50:00 -0700 Subject: [PATCH 4/9] Convert scrollbar styles + convert inline styles to logical CSS, clean up CSS slightly --- .../src/components/datagrid/_data_grid.scss | 42 -------------- .../datagrid/utils/scrolling.styles.ts | 56 +++++++++++++++++++ .../datagrid/utils/scrolling.test.tsx | 14 ++--- .../components/datagrid/utils/scrolling.tsx | 21 ++++++- 4 files changed, 81 insertions(+), 52 deletions(-) create mode 100644 packages/eui/src/components/datagrid/utils/scrolling.styles.ts diff --git a/packages/eui/src/components/datagrid/_data_grid.scss b/packages/eui/src/components/datagrid/_data_grid.scss index 768ff25507e..7f7cad9af85 100644 --- a/packages/eui/src/components/datagrid/_data_grid.scss +++ b/packages/eui/src/components/datagrid/_data_grid.scss @@ -33,45 +33,3 @@ @include euiScrollBar($euiColorDarkShade, $euiColorEmptyShade); scroll-padding: 0; } - -.euiDataGrid__scrollOverlay { - position: absolute; - top: -1 * $euiBorderWidthThin; // Overlaps the toolbar border - right: 0; - bottom: 0; - left: 0; - - // Ensure the underlying grid is still interactable - pointer-events: none; - - // Ensure the scrolling data grid body always has border edges - // regardless of cell position - box-shadow: inset 0 0 0 $euiBorderWidthThin $euiBorderColor; - // Note that this *must* be an inset `box-shadow` and not `border`, because - // border will affect the relative position of the child scroll bar overlays - // and cause them to be off by the width of the border - - // For grids with horizontal-only borders, only render a bottom 'border' - .euiDataGrid--bordersHorizontal & { - box-shadow: inset 0 (-2 * $euiBorderWidthThin) 0 (-1 * $euiBorderWidthThin) $euiBorderColor; - } - - // Ensure the horizontal scrollbar has a top border - .euiDataGrid__scrollBarOverlayBottom { - position: absolute; - width: 100%; - height: $euiBorderWidthThin; - background-color: $euiBorderColor; - } - - // Ensure the vertical scrollbar has a left border - .euiDataGrid__scrollBarOverlayRight { - position: absolute; - height: 100%; - width: $euiBorderWidthThin; - background-color: $euiBorderColor; - } - - // Note: Scroll bar border positions are set via JS inline style, since - // JS has access to the exact OS scrollbar width/height and CSS doesn't -} diff --git a/packages/eui/src/components/datagrid/utils/scrolling.styles.ts b/packages/eui/src/components/datagrid/utils/scrolling.styles.ts new file mode 100644 index 00000000000..640b1544c5e --- /dev/null +++ b/packages/eui/src/components/datagrid/utils/scrolling.styles.ts @@ -0,0 +1,56 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0 and the Server Side Public License, v 1; you may not use this file except + * in compliance with, at your election, the Elastic License 2.0 or the Server + * Side Public License, v 1. + */ + +import { css } from '@emotion/react'; + +import { UseEuiTheme } from '../../../services'; +import { logicalCSS, mathWithUnits } from '../../../global_styling'; + +export const euiDataGridScrollBarStyles = (euiThemeContext: UseEuiTheme) => { + const { euiTheme } = euiThemeContext; + + // Note that 'borders' *must* be rendered with inset box-shadow, because actual + // `border` CSS will affect the relative position of the child scroll bar overlays + // and cause them to be off by the width of the border + const borderWidth = euiTheme.border.width.thin; + const borderColor = euiTheme.border.color; + + return { + euiDataGrid__scrollOverlay: css` + position: absolute; + inset: 0; + ${logicalCSS('top', `-${borderWidth}`)} /* Overlaps the toolbar border */ + + /* Ensure the underlying grid is still interactable */ + pointer-events: none; + + /* Ensure the scrolling data grid body always has border edges regardless of cell position */ + box-shadow: inset 0 0 0 ${borderWidth} ${borderColor}; + + .euiDataGrid--bordersHorizontal & { + box-shadow: inset 0 -${mathWithUnits(borderWidth, (x) => x * 2)} 0 -${borderWidth} + ${borderColor}; + } + `, + // Ensure the horizontal scrollbar has a top border + euiDataGrid__scrollBarOverlayBottom: css` + position: absolute; + inset-inline: 0; + ${logicalCSS('height', borderWidth)} + background-color: ${borderColor}; + `, + // Ensure the vertical scrollbar has a left border + euiDataGrid__scrollBarOverlayRight: css` + position: absolute; + ${logicalCSS('width', borderWidth)} + background-color: ${borderColor}; + `, + // Note: Scroll bar border positions are set via JS inline style, since + // JS has access to the exact OS scrollbar width/height and CSS doesn't + }; +}; diff --git a/packages/eui/src/components/datagrid/utils/scrolling.test.tsx b/packages/eui/src/components/datagrid/utils/scrolling.test.tsx index e4c95d9583e..12b3c477003 100644 --- a/packages/eui/src/components/datagrid/utils/scrolling.test.tsx +++ b/packages/eui/src/components/datagrid/utils/scrolling.test.tsx @@ -465,7 +465,7 @@ describe('useScrollBars', () => { expect(container.firstChild).toMatchInlineSnapshot(`