@elastic/eui 95.10.1 → 95.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -69
- package/dist/eui_theme_dark.css +0 -924
- package/dist/eui_theme_dark.min.css +1 -1
- package/dist/eui_theme_light.css +0 -924
- package/dist/eui_theme_light.min.css +1 -1
- package/es/components/basic_table/basic_table.js +43 -35
- package/es/components/basic_table/collapsed_item_actions.js +24 -31
- package/es/components/datagrid/body/cell/data_grid_cell.js +212 -94
- package/es/components/datagrid/body/cell/data_grid_cell.styles.js +110 -0
- package/es/components/datagrid/body/cell/data_grid_cell_actions.js +13 -3
- package/es/components/datagrid/body/cell/data_grid_cell_actions.styles.js +33 -0
- package/es/components/datagrid/body/cell/data_grid_cell_popover.js +21 -12
- package/es/components/datagrid/body/cell/data_grid_cell_popover.styles.js +19 -0
- package/es/components/datagrid/body/cell/focus_utils.js +18 -20
- package/es/components/datagrid/body/data_grid_body.js +20 -4
- package/es/components/datagrid/body/data_grid_body.styles.js +26 -0
- package/es/components/datagrid/body/data_grid_body_custom.js +23 -8
- package/es/components/datagrid/body/data_grid_body_virtualized.js +23 -8
- package/es/components/datagrid/body/footer/data_grid_footer.styles.js +24 -0
- package/es/components/datagrid/body/footer/data_grid_footer_row.js +24 -11
- package/es/components/datagrid/body/header/column_actions.js +16 -4
- package/es/components/datagrid/body/header/data_grid_column_resizer.js +14 -7
- package/es/components/datagrid/body/header/data_grid_column_resizer.styles.js +36 -0
- package/es/components/datagrid/body/header/data_grid_control_header_cell.js +6 -5
- package/es/components/datagrid/body/header/data_grid_header_cell.js +42 -66
- package/es/components/datagrid/body/header/data_grid_header_cell.styles.js +27 -0
- package/es/components/datagrid/body/header/data_grid_header_cell_wrapper.js +9 -3
- package/es/components/datagrid/body/header/data_grid_header_cell_wrapper.styles.js +27 -0
- package/es/components/datagrid/body/header/data_grid_header_row.js +12 -2
- package/es/components/datagrid/body/header/data_grid_header_row.styles.js +21 -0
- package/es/components/datagrid/controls/column_selector.js +17 -8
- package/es/components/datagrid/controls/column_selector.styles.js +22 -0
- package/es/components/datagrid/controls/column_sorting.js +7 -2
- package/es/components/datagrid/controls/column_sorting.styles.js +35 -0
- package/es/components/datagrid/controls/column_sorting_draggable.js +19 -14
- package/es/components/datagrid/controls/data_grid_toolbar.js +8 -1
- package/es/components/datagrid/controls/data_grid_toolbar.styles.js +18 -0
- package/es/components/datagrid/controls/data_grid_toolbar_control.js +27 -27
- package/es/components/datagrid/controls/display_selector.js +14 -3
- package/es/components/datagrid/controls/fullscreen_selector.js +8 -5
- package/es/components/datagrid/controls/fullscreen_selector.styles.js +20 -0
- package/es/components/datagrid/controls/keyboard_shortcuts.js +7 -3
- package/es/components/datagrid/controls/keyboard_shortcuts.styles.js +18 -0
- package/es/components/datagrid/data_grid.a11y.js +1 -0
- package/es/components/datagrid/data_grid.js +17 -9
- package/es/components/datagrid/data_grid.stories.utils.js +1422 -0
- package/es/components/datagrid/data_grid.styles.js +88 -0
- package/es/components/datagrid/{utils → pagination}/data_grid_pagination.js +30 -30
- package/es/components/datagrid/pagination/data_grid_pagination.styles.js +16 -0
- package/es/components/datagrid/pagination/index.js +9 -0
- package/es/components/datagrid/utils/row_heights.js +10 -36
- package/es/components/datagrid/utils/scrolling.js +14 -7
- package/es/components/datagrid/utils/scrolling.styles.js +30 -0
- package/es/components/date_picker/date_picker.js +1 -1
- package/es/components/flyout/flyout_resizable.js +6 -2
- package/es/components/flyout/flyout_resizable.styles.js +34 -5
- package/es/components/popover/popover.js +1 -1
- package/es/components/provider/provider.js +16 -13
- package/es/components/provider/system_color_mode/index.js +9 -0
- package/es/components/provider/system_color_mode/system_color_mode_provider.js +49 -0
- package/es/components/resizable_container/resizable_button.js +9 -2
- package/es/components/resizable_container/resizable_button.styles.js +19 -6
- package/es/components/table/table_header_cell.js +10 -3
- package/es/components/table/table_header_cell_checkbox.js +5 -3
- package/es/components/table/table_row_cell.js +10 -3
- package/es/components/table/table_row_cell_checkbox.js +5 -3
- package/es/components/text/text.js +25 -9
- package/es/components/text/text_align.js +19 -6
- package/es/components/text/text_color.js +14 -11
- package/es/components/text/types.js +1 -0
- package/es/services/copy/index.js +10 -0
- package/es/services/copy/tabular_copy.js +103 -0
- package/es/services/index.js +1 -1
- package/eui.d.ts +692 -124
- package/i18ntokens.json +432 -396
- package/lib/components/basic_table/basic_table.js +42 -34
- package/lib/components/basic_table/collapsed_item_actions.js +23 -30
- package/lib/components/datagrid/body/cell/data_grid_cell.js +209 -91
- package/lib/components/datagrid/body/cell/data_grid_cell.styles.js +114 -0
- package/lib/components/datagrid/body/cell/data_grid_cell_actions.js +13 -3
- package/lib/components/datagrid/body/cell/data_grid_cell_actions.styles.js +38 -0
- package/lib/components/datagrid/body/cell/data_grid_cell_popover.js +20 -11
- package/lib/components/datagrid/body/cell/data_grid_cell_popover.styles.js +24 -0
- package/lib/components/datagrid/body/cell/focus_utils.js +17 -19
- package/lib/components/datagrid/body/data_grid_body.js +20 -4
- package/lib/components/datagrid/body/data_grid_body.styles.js +30 -0
- package/lib/components/datagrid/body/data_grid_body_custom.js +23 -8
- package/lib/components/datagrid/body/data_grid_body_virtualized.js +23 -8
- package/lib/components/datagrid/body/footer/data_grid_footer.styles.js +30 -0
- package/lib/components/datagrid/body/footer/data_grid_footer_row.js +23 -10
- package/lib/components/datagrid/body/header/column_actions.js +16 -4
- package/lib/components/datagrid/body/header/data_grid_column_resizer.js +14 -7
- package/lib/components/datagrid/body/header/data_grid_column_resizer.styles.js +39 -0
- package/lib/components/datagrid/body/header/data_grid_control_header_cell.js +6 -5
- package/lib/components/datagrid/body/header/data_grid_header_cell.js +49 -74
- package/lib/components/datagrid/body/header/data_grid_header_cell.styles.js +32 -0
- package/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.js +8 -2
- package/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.styles.js +32 -0
- package/lib/components/datagrid/body/header/data_grid_header_row.js +12 -2
- package/lib/components/datagrid/body/header/data_grid_header_row.styles.js +27 -0
- package/lib/components/datagrid/controls/column_selector.js +17 -8
- package/lib/components/datagrid/controls/column_selector.styles.js +28 -0
- package/lib/components/datagrid/controls/column_sorting.js +7 -2
- package/lib/components/datagrid/controls/column_sorting.styles.js +41 -0
- package/lib/components/datagrid/controls/column_sorting_draggable.js +19 -14
- package/lib/components/datagrid/controls/data_grid_toolbar.js +8 -1
- package/lib/components/datagrid/controls/data_grid_toolbar.styles.js +24 -0
- package/lib/components/datagrid/controls/data_grid_toolbar_control.js +27 -27
- package/lib/components/datagrid/controls/display_selector.js +13 -2
- package/lib/components/datagrid/controls/fullscreen_selector.js +7 -4
- package/lib/components/datagrid/controls/fullscreen_selector.styles.js +26 -0
- package/lib/components/datagrid/controls/keyboard_shortcuts.js +6 -2
- package/lib/components/datagrid/controls/keyboard_shortcuts.styles.js +24 -0
- package/lib/components/datagrid/data_grid.a11y.js +1 -0
- package/lib/components/datagrid/data_grid.js +16 -8
- package/lib/components/datagrid/data_grid.stories.utils.js +1426 -0
- package/lib/components/datagrid/data_grid.styles.js +94 -0
- package/lib/components/datagrid/{utils → pagination}/data_grid_pagination.js +30 -30
- package/lib/components/datagrid/pagination/data_grid_pagination.styles.js +22 -0
- package/lib/components/datagrid/pagination/index.js +18 -0
- package/lib/components/datagrid/utils/row_heights.js +11 -36
- package/lib/components/datagrid/utils/scrolling.js +14 -7
- package/lib/components/datagrid/utils/scrolling.styles.js +36 -0
- package/lib/components/date_picker/date_picker.js +1 -1
- package/lib/components/flyout/flyout_resizable.js +6 -2
- package/lib/components/flyout/flyout_resizable.styles.js +34 -5
- package/lib/components/popover/popover.js +1 -1
- package/lib/components/provider/provider.js +16 -13
- package/lib/components/provider/system_color_mode/index.js +12 -0
- package/lib/components/provider/system_color_mode/system_color_mode_provider.js +54 -0
- package/lib/components/resizable_container/resizable_button.js +9 -2
- package/lib/components/resizable_container/resizable_button.styles.js +19 -6
- package/lib/components/table/table_header_cell.js +10 -3
- package/lib/components/table/table_header_cell_checkbox.js +5 -3
- package/lib/components/table/table_row_cell.js +10 -3
- package/lib/components/table/table_row_cell_checkbox.js +5 -3
- package/lib/components/text/text.js +25 -9
- package/lib/components/text/text_align.js +19 -6
- package/lib/components/text/text_color.js +14 -11
- package/lib/components/text/types.js +5 -0
- package/lib/services/copy/index.js +25 -0
- package/lib/services/copy/tabular_copy.js +111 -0
- package/lib/services/index.js +12 -8
- package/optimize/es/components/basic_table/basic_table.js +43 -35
- package/optimize/es/components/basic_table/collapsed_item_actions.js +24 -31
- package/optimize/es/components/datagrid/body/cell/data_grid_cell.js +98 -88
- package/optimize/es/components/datagrid/body/cell/data_grid_cell.styles.js +110 -0
- package/optimize/es/components/datagrid/body/cell/data_grid_cell_actions.js +13 -3
- package/optimize/es/components/datagrid/body/cell/data_grid_cell_actions.styles.js +33 -0
- package/optimize/es/components/datagrid/body/cell/data_grid_cell_popover.js +21 -12
- package/optimize/es/components/datagrid/body/cell/data_grid_cell_popover.styles.js +19 -0
- package/optimize/es/components/datagrid/body/cell/focus_utils.js +18 -20
- package/optimize/es/components/datagrid/body/data_grid_body.js +9 -2
- package/optimize/es/components/datagrid/body/data_grid_body.styles.js +26 -0
- package/optimize/es/components/datagrid/body/data_grid_body_custom.js +12 -6
- package/optimize/es/components/datagrid/body/data_grid_body_virtualized.js +12 -6
- package/optimize/es/components/datagrid/body/footer/data_grid_footer.styles.js +24 -0
- package/optimize/es/components/datagrid/body/footer/data_grid_footer_row.js +24 -11
- package/optimize/es/components/datagrid/body/header/column_actions.js +16 -4
- package/optimize/es/components/datagrid/body/header/data_grid_column_resizer.js +14 -7
- package/optimize/es/components/datagrid/body/header/data_grid_column_resizer.styles.js +36 -0
- package/optimize/es/components/datagrid/body/header/data_grid_control_header_cell.js +5 -5
- package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +42 -61
- package/optimize/es/components/datagrid/body/header/data_grid_header_cell.styles.js +27 -0
- package/optimize/es/components/datagrid/body/header/data_grid_header_cell_wrapper.js +8 -3
- package/optimize/es/components/datagrid/body/header/data_grid_header_cell_wrapper.styles.js +27 -0
- package/optimize/es/components/datagrid/body/header/data_grid_header_row.js +12 -2
- package/optimize/es/components/datagrid/body/header/data_grid_header_row.styles.js +21 -0
- package/optimize/es/components/datagrid/controls/column_selector.js +17 -8
- package/optimize/es/components/datagrid/controls/column_selector.styles.js +22 -0
- package/optimize/es/components/datagrid/controls/column_sorting.js +7 -2
- package/optimize/es/components/datagrid/controls/column_sorting.styles.js +35 -0
- package/optimize/es/components/datagrid/controls/column_sorting_draggable.js +19 -14
- package/optimize/es/components/datagrid/controls/data_grid_toolbar.js +8 -1
- package/optimize/es/components/datagrid/controls/data_grid_toolbar.styles.js +18 -0
- package/optimize/es/components/datagrid/controls/data_grid_toolbar_control.js +27 -27
- package/optimize/es/components/datagrid/controls/display_selector.js +14 -3
- package/optimize/es/components/datagrid/controls/fullscreen_selector.js +8 -5
- package/optimize/es/components/datagrid/controls/fullscreen_selector.styles.js +20 -0
- package/optimize/es/components/datagrid/controls/keyboard_shortcuts.js +7 -3
- package/optimize/es/components/datagrid/controls/keyboard_shortcuts.styles.js +18 -0
- package/optimize/es/components/datagrid/data_grid.a11y.js +1 -0
- package/optimize/es/components/datagrid/data_grid.js +17 -9
- package/optimize/es/components/datagrid/data_grid.stories.utils.js +369 -0
- package/optimize/es/components/datagrid/data_grid.styles.js +88 -0
- package/optimize/es/components/datagrid/{utils → pagination}/data_grid_pagination.js +30 -30
- package/optimize/es/components/datagrid/pagination/data_grid_pagination.styles.js +16 -0
- package/optimize/es/components/datagrid/pagination/index.js +9 -0
- package/optimize/es/components/datagrid/utils/row_heights.js +10 -36
- package/optimize/es/components/datagrid/utils/scrolling.js +14 -7
- package/optimize/es/components/datagrid/utils/scrolling.styles.js +30 -0
- package/optimize/es/components/date_picker/date_picker.js +1 -1
- package/optimize/es/components/flyout/flyout_resizable.js +6 -2
- package/optimize/es/components/flyout/flyout_resizable.styles.js +34 -5
- package/optimize/es/components/popover/popover.js +1 -1
- package/optimize/es/components/provider/provider.js +16 -13
- package/optimize/es/components/provider/system_color_mode/index.js +9 -0
- package/optimize/es/components/provider/system_color_mode/system_color_mode_provider.js +40 -0
- package/optimize/es/components/resizable_container/resizable_button.js +3 -2
- package/optimize/es/components/resizable_container/resizable_button.styles.js +19 -6
- package/optimize/es/components/table/table_header_cell.js +3 -2
- package/optimize/es/components/table/table_header_cell_checkbox.js +3 -2
- package/optimize/es/components/table/table_row_cell.js +4 -3
- package/optimize/es/components/table/table_row_cell_checkbox.js +3 -2
- package/optimize/es/components/text/text.js +9 -4
- package/optimize/es/components/text/text_align.js +4 -2
- package/optimize/es/components/text/text_color.js +1 -2
- package/optimize/es/components/text/types.js +1 -0
- package/optimize/es/services/copy/index.js +10 -0
- package/optimize/es/services/copy/tabular_copy.js +103 -0
- package/optimize/es/services/index.js +1 -1
- package/optimize/lib/components/basic_table/basic_table.js +42 -34
- package/optimize/lib/components/basic_table/collapsed_item_actions.js +23 -30
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell.js +95 -85
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell.styles.js +114 -0
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell_actions.js +13 -3
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell_actions.styles.js +39 -0
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell_popover.js +20 -11
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell_popover.styles.js +25 -0
- package/optimize/lib/components/datagrid/body/cell/focus_utils.js +17 -19
- package/optimize/lib/components/datagrid/body/data_grid_body.js +9 -2
- package/optimize/lib/components/datagrid/body/data_grid_body.styles.js +30 -0
- package/optimize/lib/components/datagrid/body/data_grid_body_custom.js +12 -6
- package/optimize/lib/components/datagrid/body/data_grid_body_virtualized.js +12 -6
- package/optimize/lib/components/datagrid/body/footer/data_grid_footer.styles.js +30 -0
- package/optimize/lib/components/datagrid/body/footer/data_grid_footer_row.js +22 -9
- package/optimize/lib/components/datagrid/body/header/column_actions.js +16 -4
- package/optimize/lib/components/datagrid/body/header/data_grid_column_resizer.js +14 -7
- package/optimize/lib/components/datagrid/body/header/data_grid_column_resizer.styles.js +39 -0
- package/optimize/lib/components/datagrid/body/header/data_grid_control_header_cell.js +5 -5
- package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +45 -63
- package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.styles.js +32 -0
- package/optimize/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.js +7 -2
- package/optimize/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.styles.js +32 -0
- package/optimize/lib/components/datagrid/body/header/data_grid_header_row.js +12 -2
- package/optimize/lib/components/datagrid/body/header/data_grid_header_row.styles.js +27 -0
- package/optimize/lib/components/datagrid/controls/column_selector.js +17 -8
- package/optimize/lib/components/datagrid/controls/column_selector.styles.js +28 -0
- package/optimize/lib/components/datagrid/controls/column_sorting.js +7 -2
- package/optimize/lib/components/datagrid/controls/column_sorting.styles.js +41 -0
- package/optimize/lib/components/datagrid/controls/column_sorting_draggable.js +19 -14
- package/optimize/lib/components/datagrid/controls/data_grid_toolbar.js +8 -1
- package/optimize/lib/components/datagrid/controls/data_grid_toolbar.styles.js +24 -0
- package/optimize/lib/components/datagrid/controls/data_grid_toolbar_control.js +27 -27
- package/optimize/lib/components/datagrid/controls/display_selector.js +13 -2
- package/optimize/lib/components/datagrid/controls/fullscreen_selector.js +7 -4
- package/optimize/lib/components/datagrid/controls/fullscreen_selector.styles.js +26 -0
- package/optimize/lib/components/datagrid/controls/keyboard_shortcuts.js +6 -2
- package/optimize/lib/components/datagrid/controls/keyboard_shortcuts.styles.js +24 -0
- package/optimize/lib/components/datagrid/data_grid.a11y.js +1 -0
- package/optimize/lib/components/datagrid/data_grid.js +16 -8
- package/optimize/lib/components/datagrid/data_grid.stories.utils.js +374 -0
- package/optimize/lib/components/datagrid/data_grid.styles.js +94 -0
- package/{test-env/components/datagrid/utils → optimize/lib/components/datagrid/pagination}/data_grid_pagination.js +29 -31
- package/optimize/lib/components/datagrid/pagination/data_grid_pagination.styles.js +22 -0
- package/optimize/lib/components/datagrid/pagination/index.js +18 -0
- package/optimize/lib/components/datagrid/utils/row_heights.js +11 -36
- package/optimize/lib/components/datagrid/utils/scrolling.js +14 -7
- package/optimize/lib/components/datagrid/utils/scrolling.styles.js +36 -0
- package/optimize/lib/components/date_picker/date_picker.js +1 -1
- package/optimize/lib/components/flyout/flyout_resizable.js +6 -2
- package/optimize/lib/components/flyout/flyout_resizable.styles.js +34 -5
- package/optimize/lib/components/popover/popover.js +1 -1
- package/optimize/lib/components/provider/provider.js +16 -13
- package/optimize/lib/components/provider/system_color_mode/index.js +12 -0
- package/optimize/lib/components/provider/system_color_mode/system_color_mode_provider.js +47 -0
- package/optimize/lib/components/resizable_container/resizable_button.js +3 -2
- package/optimize/lib/components/resizable_container/resizable_button.styles.js +19 -6
- package/optimize/lib/components/table/table_header_cell.js +3 -2
- package/optimize/lib/components/table/table_header_cell_checkbox.js +3 -2
- package/optimize/lib/components/table/table_row_cell.js +4 -3
- package/optimize/lib/components/table/table_row_cell_checkbox.js +3 -2
- package/optimize/lib/components/text/text.js +9 -4
- package/optimize/lib/components/text/text_align.js +4 -2
- package/optimize/lib/components/text/text_color.js +1 -2
- package/optimize/lib/components/text/types.js +5 -0
- package/optimize/lib/services/copy/index.js +25 -0
- package/optimize/lib/services/copy/tabular_copy.js +111 -0
- package/optimize/lib/services/index.js +12 -8
- package/package.json +3 -3
- package/src/themes/amsterdam/theme_dark.scss +0 -7
- package/src/themes/amsterdam/theme_light.scss +0 -7
- package/test-env/components/basic_table/basic_table.js +42 -34
- package/test-env/components/basic_table/collapsed_item_actions.js +23 -30
- package/test-env/components/datagrid/body/cell/data_grid_cell.js +204 -91
- package/test-env/components/datagrid/body/cell/data_grid_cell.styles.js +114 -0
- package/test-env/components/datagrid/body/cell/data_grid_cell_actions.js +13 -3
- package/test-env/components/datagrid/body/cell/data_grid_cell_actions.styles.js +39 -0
- package/test-env/components/datagrid/body/cell/data_grid_cell_popover.js +20 -11
- package/test-env/components/datagrid/body/cell/data_grid_cell_popover.styles.js +25 -0
- package/test-env/components/datagrid/body/cell/focus_utils.js +17 -19
- package/test-env/components/datagrid/body/data_grid_body.js +20 -4
- package/test-env/components/datagrid/body/data_grid_body.styles.js +30 -0
- package/test-env/components/datagrid/body/data_grid_body_custom.js +23 -8
- package/test-env/components/datagrid/body/data_grid_body_virtualized.js +23 -8
- package/test-env/components/datagrid/body/footer/data_grid_footer.styles.js +30 -0
- package/test-env/components/datagrid/body/footer/data_grid_footer_row.js +22 -9
- package/test-env/components/datagrid/body/header/column_actions.js +16 -4
- package/test-env/components/datagrid/body/header/data_grid_column_resizer.js +14 -7
- package/test-env/components/datagrid/body/header/data_grid_column_resizer.styles.js +39 -0
- package/test-env/components/datagrid/body/header/data_grid_control_header_cell.js +6 -5
- package/test-env/components/datagrid/body/header/data_grid_header_cell.js +45 -67
- package/test-env/components/datagrid/body/header/data_grid_header_cell.styles.js +32 -0
- package/test-env/components/datagrid/body/header/data_grid_header_cell_wrapper.js +8 -2
- package/test-env/components/datagrid/body/header/data_grid_header_cell_wrapper.styles.js +32 -0
- package/test-env/components/datagrid/body/header/data_grid_header_row.js +12 -2
- package/test-env/components/datagrid/body/header/data_grid_header_row.styles.js +27 -0
- package/test-env/components/datagrid/controls/column_selector.js +17 -8
- package/test-env/components/datagrid/controls/column_selector.styles.js +28 -0
- package/test-env/components/datagrid/controls/column_sorting.js +7 -2
- package/test-env/components/datagrid/controls/column_sorting.styles.js +41 -0
- package/test-env/components/datagrid/controls/column_sorting_draggable.js +19 -14
- package/test-env/components/datagrid/controls/data_grid_toolbar.js +8 -1
- package/test-env/components/datagrid/controls/data_grid_toolbar.styles.js +24 -0
- package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +27 -27
- package/test-env/components/datagrid/controls/display_selector.js +13 -2
- package/test-env/components/datagrid/controls/fullscreen_selector.js +7 -4
- package/test-env/components/datagrid/controls/fullscreen_selector.styles.js +26 -0
- package/test-env/components/datagrid/controls/keyboard_shortcuts.js +6 -2
- package/test-env/components/datagrid/controls/keyboard_shortcuts.styles.js +24 -0
- package/test-env/components/datagrid/data_grid.a11y.js +1 -0
- package/test-env/components/datagrid/data_grid.js +16 -8
- package/test-env/components/datagrid/data_grid.stories.utils.js +1419 -0
- package/test-env/components/datagrid/data_grid.styles.js +94 -0
- package/{optimize/lib/components/datagrid/utils → test-env/components/datagrid/pagination}/data_grid_pagination.js +29 -31
- package/test-env/components/datagrid/pagination/data_grid_pagination.styles.js +22 -0
- package/test-env/components/datagrid/pagination/index.js +18 -0
- package/test-env/components/datagrid/utils/row_heights.js +11 -36
- package/test-env/components/datagrid/utils/scrolling.js +14 -7
- package/test-env/components/datagrid/utils/scrolling.styles.js +36 -0
- package/test-env/components/date_picker/date_picker.js +1 -1
- package/test-env/components/flyout/flyout_resizable.js +6 -2
- package/test-env/components/flyout/flyout_resizable.styles.js +34 -5
- package/test-env/components/popover/popover.js +1 -1
- package/test-env/components/provider/provider.js +16 -13
- package/test-env/components/provider/system_color_mode/index.js +12 -0
- package/test-env/components/provider/system_color_mode/system_color_mode_provider.js +51 -0
- package/test-env/components/resizable_container/resizable_button.js +9 -2
- package/test-env/components/resizable_container/resizable_button.styles.js +19 -6
- package/test-env/components/table/table_header_cell.js +10 -3
- package/test-env/components/table/table_header_cell_checkbox.js +5 -3
- package/test-env/components/table/table_row_cell.js +10 -3
- package/test-env/components/table/table_row_cell_checkbox.js +5 -3
- package/test-env/components/text/text.js +25 -9
- package/test-env/components/text/text_align.js +19 -6
- package/test-env/components/text/text_color.js +14 -11
- package/test-env/components/text/types.js +5 -0
- package/test-env/services/copy/index.js +25 -0
- package/test-env/services/copy/tabular_copy.js +30 -0
- package/test-env/services/index.js +12 -8
- package/src/components/datagrid/_data_grid.scss +0 -121
- package/src/components/datagrid/_data_grid_data_row.scss +0 -303
- package/src/components/datagrid/_index.scss +0 -12
- package/src/components/datagrid/_mixins.scss +0 -84
- package/src/components/datagrid/_variables.scss +0 -11
- package/src/components/datagrid/body/footer/_data_grid_footer_row.scss +0 -47
- package/src/components/datagrid/body/header/_data_grid_column_resizer.scss +0 -48
- package/src/components/datagrid/body/header/_data_grid_header_row.scss +0 -221
- package/src/components/datagrid/controls/_data_grid_column_selector.scss +0 -19
- package/src/components/datagrid/controls/_data_grid_column_sorting.scss +0 -43
- package/src/components/datagrid/controls/_data_grid_display.scss +0 -3
- package/src/components/datagrid/controls/_data_grid_keyboard_shortcuts.scss +0 -11
- package/src/components/datagrid/controls/_data_grid_toolbar.scss +0 -55
- package/src/components/index.scss +0 -3
- package/src/themes/amsterdam/overrides/_data_grid.scss +0 -5
- package/src/themes/amsterdam/overrides/_index.scss +0 -1
- /package/es/services/{copy_to_clipboard.js → copy/copy_to_clipboard.js} +0 -0
- /package/lib/services/{copy_to_clipboard.js → copy/copy_to_clipboard.js} +0 -0
- /package/optimize/es/services/{copy_to_clipboard.js → copy/copy_to_clipboard.js} +0 -0
- /package/optimize/lib/services/{copy_to_clipboard.js → copy/copy_to_clipboard.js} +0 -0
- /package/test-env/services/{copy_to_clipboard.js → copy/copy_to_clipboard.js} +0 -0
|
@@ -12,6 +12,7 @@ var _excluded = ["id", "display", "direction", "index", "sorting", "schema", "sc
|
|
|
12
12
|
|
|
13
13
|
import React, { useCallback } from 'react';
|
|
14
14
|
import classNames from 'classnames';
|
|
15
|
+
import { useEuiMemoizedStyles } from '../../../services';
|
|
15
16
|
import { EuiScreenReaderOnly } from '../../accessibility';
|
|
16
17
|
import { EuiButtonGroup, EuiButtonIcon } from '../../button';
|
|
17
18
|
import { EuiDraggable } from '../../drag_and_drop';
|
|
@@ -21,6 +22,7 @@ import { EuiIcon } from '../../icon';
|
|
|
21
22
|
import { EuiText } from '../../text';
|
|
22
23
|
import { EuiToken } from '../../token';
|
|
23
24
|
import { getDetailsForSchema } from '../utils/data_grid_schema';
|
|
25
|
+
import { euiDataGridColumnSortingStyles } from './column_sorting.styles';
|
|
24
26
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
25
27
|
export var defaultSortAscLabel = ___EmotionJSX(EuiI18n, {
|
|
26
28
|
token: "euiColumnSortingDraggable.defaultSortAsc",
|
|
@@ -75,16 +77,22 @@ export var EuiDataGridColumnSortingDraggable = function EuiDataGridColumnSorting
|
|
|
75
77
|
});
|
|
76
78
|
sorting.onSort(nextColumns);
|
|
77
79
|
}, [id, sorting]);
|
|
80
|
+
var styles = useEuiMemoizedStyles(euiDataGridColumnSortingStyles);
|
|
78
81
|
return ___EmotionJSX(EuiDraggable, _extends({
|
|
79
82
|
draggableId: id,
|
|
80
83
|
index: index,
|
|
81
84
|
hasInteractiveChildren: true,
|
|
82
85
|
customDragHandle: true
|
|
83
86
|
}, rest), function (provided, state) {
|
|
84
|
-
return ___EmotionJSX(
|
|
87
|
+
return ___EmotionJSX(EuiFlexGroup, {
|
|
88
|
+
css: styles.euiDataGridColumnSorting__item,
|
|
85
89
|
className: classNames('euiDataGridColumnSorting__item', {
|
|
86
90
|
'euiDataGridColumnSorting__item-isDragging': state.isDragging
|
|
87
|
-
})
|
|
91
|
+
}),
|
|
92
|
+
gutterSize: "xs",
|
|
93
|
+
alignItems: "center",
|
|
94
|
+
responsive: false,
|
|
95
|
+
"data-test-subj": "euiDataGridColumnSorting-sortColumn-".concat(id)
|
|
88
96
|
}, ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", null, ___EmotionJSX(EuiI18n, {
|
|
89
97
|
token: "euiColumnSortingDraggable.activeSortLabel",
|
|
90
98
|
default: "{display} is sorting this data grid",
|
|
@@ -93,12 +101,7 @@ export var EuiDataGridColumnSortingDraggable = function EuiDataGridColumnSorting
|
|
|
93
101
|
}
|
|
94
102
|
}, function (activeSortLabel) {
|
|
95
103
|
return activeSortLabel;
|
|
96
|
-
}))), ___EmotionJSX(
|
|
97
|
-
gutterSize: "xs",
|
|
98
|
-
alignItems: "center",
|
|
99
|
-
responsive: false,
|
|
100
|
-
"data-test-subj": "euiDataGridColumnSorting-sortColumn-".concat(id)
|
|
101
|
-
}, ___EmotionJSX(EuiFlexItem, {
|
|
104
|
+
}))), ___EmotionJSX(EuiFlexItem, {
|
|
102
105
|
grow: false
|
|
103
106
|
}, ___EmotionJSX(EuiI18n, {
|
|
104
107
|
token: "euiColumnSortingDraggable.removeSortLabel",
|
|
@@ -114,10 +117,12 @@ export var EuiDataGridColumnSortingDraggable = function EuiDataGridColumnSorting
|
|
|
114
117
|
iconType: "cross",
|
|
115
118
|
onClick: removeSort
|
|
116
119
|
});
|
|
117
|
-
})), ___EmotionJSX(EuiFlexItem
|
|
120
|
+
})), ___EmotionJSX(EuiFlexItem
|
|
121
|
+
// This extra column name flex item affords the column more grabbable real estate
|
|
122
|
+
// for mouse users, while hiding repetition for keyboard/screen reader users
|
|
123
|
+
, _extends({
|
|
124
|
+
css: styles.euiDataGridColumnSorting__name,
|
|
118
125
|
className: "euiDataGridColumnSorting__name"
|
|
119
|
-
// This extra column name flex item affords the column more grabbable real estate
|
|
120
|
-
// for mouse users, while hiding repetition for keyboard/screen reader users
|
|
121
126
|
}, provided.dragHandleProps, {
|
|
122
127
|
tabIndex: -1,
|
|
123
128
|
"aria-hidden": true
|
|
@@ -132,7 +137,7 @@ export var EuiDataGridColumnSortingDraggable = function EuiDataGridColumnSorting
|
|
|
132
137
|
iconType: schemaDetails != null ? schemaDetails.icon : 'tokenString'
|
|
133
138
|
})), ___EmotionJSX(EuiFlexItem, null, ___EmotionJSX(EuiText, {
|
|
134
139
|
size: "xs"
|
|
135
|
-
},
|
|
140
|
+
}, display)))), ___EmotionJSX(EuiFlexItem, null, ___EmotionJSX(EuiI18n, {
|
|
136
141
|
token: "euiColumnSortingDraggable.toggleLegend",
|
|
137
142
|
default: "Select sorting method for {display}",
|
|
138
143
|
values: {
|
|
@@ -141,10 +146,10 @@ export var EuiDataGridColumnSortingDraggable = function EuiDataGridColumnSorting
|
|
|
141
146
|
}, function (toggleLegend) {
|
|
142
147
|
return ___EmotionJSX(EuiButtonGroup, {
|
|
143
148
|
legend: toggleLegend,
|
|
144
|
-
name: id,
|
|
145
149
|
isFullWidth: true,
|
|
146
150
|
options: toggleOptions,
|
|
147
151
|
buttonSize: "compressed",
|
|
152
|
+
css: styles.euiDataGridColumnSorting__order,
|
|
148
153
|
className: "euiDataGridColumnSorting__order",
|
|
149
154
|
idSelected: direction === 'asc' ? "".concat(id, "Asc") : "".concat(id, "Desc"),
|
|
150
155
|
onChange: toggleLegendHandler
|
|
@@ -156,6 +161,6 @@ export var EuiDataGridColumnSortingDraggable = function EuiDataGridColumnSorting
|
|
|
156
161
|
}), ___EmotionJSX(EuiIcon, {
|
|
157
162
|
type: "grab",
|
|
158
163
|
color: "subdued"
|
|
159
|
-
})))
|
|
164
|
+
})));
|
|
160
165
|
});
|
|
161
166
|
};
|
|
@@ -8,8 +8,10 @@ import _typeof from "@babel/runtime/helpers/typeof";
|
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
import React, { isValidElement } from 'react';
|
|
11
|
-
import { EuiScreenReaderOnly } from '../../accessibility';
|
|
12
11
|
import { IS_JEST_ENVIRONMENT } from '../../../utils';
|
|
12
|
+
import { useEuiMemoizedStyles } from '../../../services';
|
|
13
|
+
import { EuiScreenReaderOnly } from '../../accessibility';
|
|
14
|
+
import { euiDataGridToolbarStyles } from './data_grid_toolbar.styles';
|
|
13
15
|
|
|
14
16
|
// When below this number the grid only shows the right control icon buttons
|
|
15
17
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
@@ -26,6 +28,8 @@ export var EuiDataGridToolbar = function EuiDataGridToolbar(_ref) {
|
|
|
26
28
|
columnSelector = _ref.columnSelector,
|
|
27
29
|
columnSorting = _ref.columnSorting,
|
|
28
30
|
renderCustomToolbar = _ref.renderCustomToolbar;
|
|
31
|
+
var styles = useEuiMemoizedStyles(euiDataGridToolbarStyles);
|
|
32
|
+
|
|
29
33
|
// Enables/disables grid controls based on available width
|
|
30
34
|
var hasRoomForGridControls = IS_JEST_ENVIRONMENT ? true : gridWidth > minSizeForControls || isFullScreen;
|
|
31
35
|
var columnControl = checkOrDefaultToolBarDisplayOptions(toolbarVisibility, 'showColumnSelector') ? columnSelector : null;
|
|
@@ -46,11 +50,14 @@ export var EuiDataGridToolbar = function EuiDataGridToolbar(_ref) {
|
|
|
46
50
|
});
|
|
47
51
|
}
|
|
48
52
|
return ___EmotionJSX("div", {
|
|
53
|
+
css: styles.euiDataGrid__controls,
|
|
49
54
|
className: "euiDataGrid__controls",
|
|
50
55
|
"data-test-subj": "dataGridControls"
|
|
51
56
|
}, hasRoomForGridControls && ___EmotionJSX("div", {
|
|
57
|
+
css: styles.euiDataGrid__leftControls,
|
|
52
58
|
className: "euiDataGrid__leftControls"
|
|
53
59
|
}, renderAdditionalControls(toolbarVisibility, 'left.prepend'), columnControl, columnSortingControl, renderAdditionalControls(toolbarVisibility, 'left.append')), ___EmotionJSX("div", {
|
|
60
|
+
css: styles.euiDataGrid__rightControls,
|
|
54
61
|
className: "euiDataGrid__rightControls"
|
|
55
62
|
}, renderAdditionalControls(toolbarVisibility, 'right'), keyboardShortcutsControl, displayControl, fullScreenControl));
|
|
56
63
|
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { css } from '@emotion/react';
|
|
10
|
+
import { logicalCSS } from '../../../global_styling';
|
|
11
|
+
export var euiDataGridToolbarStyles = function euiDataGridToolbarStyles(_ref) {
|
|
12
|
+
var euiTheme = _ref.euiTheme;
|
|
13
|
+
return {
|
|
14
|
+
euiDataGrid__controls: /*#__PURE__*/css("z-index:2;position:relative;display:flex;justify-content:space-between;align-items:center;gap:", euiTheme.size.base, ";", logicalCSS('padding-vertical', euiTheme.size.xs), " background-color:", euiTheme.colors.emptyShade, ";;label:euiDataGrid__controls;"),
|
|
15
|
+
euiDataGrid__rightControls: /*#__PURE__*/css("display:flex;justify-content:flex-end;flex-wrap:wrap;column-gap:", euiTheme.size.s, ";", logicalCSS('padding-right', euiTheme.size.xs), "&:only-child{", logicalCSS('margin-left', 'auto'), ";};label:euiDataGrid__rightControls;"),
|
|
16
|
+
euiDataGrid__leftControls: /*#__PURE__*/css("display:flex;flex-wrap:wrap;gap:", euiTheme.size.xxs, ";;label:euiDataGrid__leftControls;")
|
|
17
|
+
};
|
|
18
|
+
};
|
|
@@ -17,28 +17,12 @@ import { EuiButtonEmpty } from '../../button';
|
|
|
17
17
|
import { EuiNotificationBadge } from '../../badge';
|
|
18
18
|
import { useEuiI18n } from '../../i18n';
|
|
19
19
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
27
|
-
};
|
|
28
|
-
var _ref2 = process.env.NODE_ENV === "production" ? {
|
|
29
|
-
name: "8fsqop-EuiDataGridToolbarControl",
|
|
30
|
-
styles: "&:focus,&:hover:not(:disabled){text-decoration:none;.euiDataGridToolbarControl__text{text-decoration:underline;}};label:EuiDataGridToolbarControl;"
|
|
31
|
-
} : {
|
|
32
|
-
name: "8fsqop-EuiDataGridToolbarControl",
|
|
33
|
-
styles: "&:focus,&:hover:not(:disabled){text-decoration:none;.euiDataGridToolbarControl__text{text-decoration:underline;}};label:EuiDataGridToolbarControl;",
|
|
34
|
-
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
35
|
-
};
|
|
36
|
-
export var EuiDataGridToolbarControl = function EuiDataGridToolbarControl(_ref3) {
|
|
37
|
-
var children = _ref3.children,
|
|
38
|
-
className = _ref3.className,
|
|
39
|
-
badgeContent = _ref3.badgeContent,
|
|
40
|
-
textProps = _ref3.textProps,
|
|
41
|
-
rest = _objectWithoutProperties(_ref3, _excluded);
|
|
20
|
+
export var EuiDataGridToolbarControl = function EuiDataGridToolbarControl(_ref) {
|
|
21
|
+
var children = _ref.children,
|
|
22
|
+
className = _ref.className,
|
|
23
|
+
badgeContent = _ref.badgeContent,
|
|
24
|
+
textProps = _ref.textProps,
|
|
25
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
42
26
|
var classes = classNames('euiDataGridToolbarControl', className);
|
|
43
27
|
var badgeAriaLabel = useEuiI18n('euiDataGridToolbarControl.badgeAriaLabel', 'Active: {count}', {
|
|
44
28
|
count: typeof badgeContent === 'string' ? betterScreenReaderSlashes(badgeContent) : badgeContent
|
|
@@ -47,15 +31,13 @@ export var EuiDataGridToolbarControl = function EuiDataGridToolbarControl(_ref3)
|
|
|
47
31
|
className: classes,
|
|
48
32
|
size: "xs",
|
|
49
33
|
color: "text",
|
|
50
|
-
textProps: false
|
|
51
|
-
|
|
52
|
-
,
|
|
53
|
-
css: _ref2
|
|
34
|
+
textProps: false,
|
|
35
|
+
css: underlineStyles
|
|
54
36
|
}, rest), ___EmotionJSX("span", _extends({}, textProps, {
|
|
55
37
|
className: classNames('euiDataGridToolbarControl__text', 'eui-textTruncate', textProps && textProps.className)
|
|
56
38
|
}), children), Boolean(badgeContent) && ___EmotionJSX(EuiNotificationBadge, {
|
|
57
39
|
className: "euiDataGridToolbarControl__badge",
|
|
58
|
-
css:
|
|
40
|
+
css: badgeStyles,
|
|
59
41
|
color: "subdued",
|
|
60
42
|
"aria-label": "- ".concat(badgeAriaLabel) // Punctuation helps add pauses for screen readers
|
|
61
43
|
,
|
|
@@ -67,4 +49,22 @@ export var EuiDataGridToolbarControl = function EuiDataGridToolbarControl(_ref3)
|
|
|
67
49
|
// are being hidden. We can make this a bit more legible to SRs with this quick util
|
|
68
50
|
var betterScreenReaderSlashes = function betterScreenReaderSlashes(badgeContent) {
|
|
69
51
|
return badgeContent.replaceAll('/', ' out of ');
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
// Underline actual text, but not the badge
|
|
55
|
+
var underlineStyles = process.env.NODE_ENV === "production" ? {
|
|
56
|
+
name: "128tp1b-underlineStyles",
|
|
57
|
+
styles: "&:focus,&:hover:not(:disabled){text-decoration:none;.euiDataGridToolbarControl__text{text-decoration:underline;}};label:underlineStyles;"
|
|
58
|
+
} : {
|
|
59
|
+
name: "128tp1b-underlineStyles",
|
|
60
|
+
styles: "&:focus,&:hover:not(:disabled){text-decoration:none;.euiDataGridToolbarControl__text{text-decoration:underline;}};label:underlineStyles;",
|
|
61
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
62
|
+
};
|
|
63
|
+
var badgeStyles = process.env.NODE_ENV === "production" ? {
|
|
64
|
+
name: "1968nw3-badgeStyles",
|
|
65
|
+
styles: "cursor:inherit;label:badgeStyles;"
|
|
66
|
+
} : {
|
|
67
|
+
name: "1968nw3-badgeStyles",
|
|
68
|
+
styles: "cursor:inherit;label:badgeStyles;",
|
|
69
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
70
70
|
};
|
|
@@ -15,11 +15,13 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
17
|
import React, { useState, useMemo, useCallback, useEffect } from 'react';
|
|
18
|
-
import {
|
|
18
|
+
import { logicalStyle, mathWithUnits } from '../../../global_styling';
|
|
19
|
+
import { useUpdateEffect, useEuiTheme } from '../../../services';
|
|
19
20
|
import { EuiI18n, useEuiI18n } from '../../i18n';
|
|
20
21
|
import { EuiPopover, EuiPopoverFooter } from '../../popover';
|
|
21
22
|
import { EuiButtonIcon, EuiButtonGroup, EuiButtonEmpty } from '../../button';
|
|
22
23
|
import { EuiFormRow, EuiRange } from '../../form';
|
|
24
|
+
import { euiFormMaxWidth } from '../../form/form.styles';
|
|
23
25
|
import { EuiFlexGroup, EuiFlexItem } from '../../flex';
|
|
24
26
|
import { EuiToolTip } from '../../tool_tip';
|
|
25
27
|
import { getNestedObjectOptions } from './data_grid_toolbar';
|
|
@@ -194,7 +196,13 @@ export var useDataGridDisplaySelector = function useDataGridDisplaySelector(show
|
|
|
194
196
|
}, []);
|
|
195
197
|
var buttonLabel = useEuiI18n('euiDisplaySelector.buttonText', 'Display options');
|
|
196
198
|
var resetButtonLabel = useEuiI18n('euiDisplaySelector.resetButtonText', 'Reset to default');
|
|
199
|
+
var euiTheme = useEuiTheme();
|
|
197
200
|
var displaySelector = useMemo(function () {
|
|
201
|
+
var paddingSize = 's';
|
|
202
|
+
var formMaxWidth = euiFormMaxWidth(euiTheme);
|
|
203
|
+
var popoverWidth = mathWithUnits([formMaxWidth, euiTheme.euiTheme.size[paddingSize]], function (x, y) {
|
|
204
|
+
return x + y * 2;
|
|
205
|
+
});
|
|
198
206
|
return showDensityControls || showRowHeightControls || additionalDisplaySettings ? ___EmotionJSX(EuiPopover, {
|
|
199
207
|
"data-test-subj": "dataGridDisplaySelectorPopover",
|
|
200
208
|
isOpen: isOpen,
|
|
@@ -202,7 +210,10 @@ export var useDataGridDisplaySelector = function useDataGridDisplaySelector(show
|
|
|
202
210
|
return setIsOpen(false);
|
|
203
211
|
},
|
|
204
212
|
anchorPosition: "downRight",
|
|
205
|
-
panelPaddingSize:
|
|
213
|
+
panelPaddingSize: paddingSize,
|
|
214
|
+
panelProps: {
|
|
215
|
+
css: logicalStyle('width', popoverWidth)
|
|
216
|
+
},
|
|
206
217
|
panelClassName: "euiDataGrid__displayPopoverPanel",
|
|
207
218
|
button: ___EmotionJSX(EuiToolTip, {
|
|
208
219
|
content: buttonLabel,
|
|
@@ -303,6 +314,6 @@ export var useDataGridDisplaySelector = function useDataGridDisplaySelector(show
|
|
|
303
314
|
onClick: resetToInitialState,
|
|
304
315
|
"data-test-subj": "resetDisplaySelector"
|
|
305
316
|
}, resetButtonLabel)))))) : null;
|
|
306
|
-
}, [additionalDisplaySettings, buttonLabel, isOpen, resetButtonLabel, showDensityControls, showResetButton, showRowHeightControls, gridDensity, rowHeightSelection, lineCountInput, setGridStyles, setRowHeight, setLineCountHeight, resetToInitialState]);
|
|
317
|
+
}, [euiTheme, additionalDisplaySettings, buttonLabel, isOpen, resetButtonLabel, showDensityControls, showResetButton, showRowHeightControls, gridDensity, rowHeightSelection, lineCountInput, setGridStyles, setRowHeight, setLineCountHeight, resetToInitialState]);
|
|
307
318
|
return [displaySelector, gridStyles, rowHeightsOptions];
|
|
308
319
|
};
|
|
@@ -8,10 +8,11 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
import React, { useState, useEffect, useMemo, useCallback } from 'react';
|
|
11
|
-
import { keys } from '../../../services';
|
|
11
|
+
import { keys, useEuiMemoizedStyles } from '../../../services';
|
|
12
12
|
import { EuiToolTip } from '../../tool_tip';
|
|
13
13
|
import { EuiButtonIcon } from '../../button';
|
|
14
14
|
import { useEuiI18n } from '../../i18n';
|
|
15
|
+
import { euiDataGridFullScreenStyles } from './fullscreen_selector.styles';
|
|
15
16
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
16
17
|
var GRID_IS_FULLSCREEN_CLASSNAME = 'euiDataGrid__restrictBody';
|
|
17
18
|
export var useDataGridFullScreenSelector = function useDataGridFullScreenSelector() {
|
|
@@ -49,19 +50,21 @@ export var useDataGridFullScreenSelector = function useDataGridFullScreenSelecto
|
|
|
49
50
|
break;
|
|
50
51
|
}
|
|
51
52
|
}, [isFullScreen]);
|
|
53
|
+
var styles = useEuiMemoizedStyles(euiDataGridFullScreenStyles);
|
|
52
54
|
useEffect(function () {
|
|
53
55
|
// When the data grid is fullscreen, we add a class to the body to remove the extra scrollbar and stay above any fixed headers
|
|
54
56
|
if (isFullScreen) {
|
|
55
|
-
document.body.classList.add(GRID_IS_FULLSCREEN_CLASSNAME);
|
|
57
|
+
document.body.classList.add(GRID_IS_FULLSCREEN_CLASSNAME, styles.euiDataGrid__restrictBody);
|
|
56
58
|
return function () {
|
|
57
|
-
document.body.classList.remove(GRID_IS_FULLSCREEN_CLASSNAME);
|
|
59
|
+
document.body.classList.remove(GRID_IS_FULLSCREEN_CLASSNAME, styles.euiDataGrid__restrictBody);
|
|
58
60
|
};
|
|
59
61
|
}
|
|
60
|
-
}, [isFullScreen]);
|
|
62
|
+
}, [isFullScreen, styles.euiDataGrid__restrictBody]);
|
|
61
63
|
return {
|
|
62
64
|
isFullScreen: isFullScreen,
|
|
63
65
|
setIsFullScreen: setIsFullScreen,
|
|
64
66
|
fullScreenSelector: fullScreenSelector,
|
|
65
|
-
handleGridKeyDown: handleGridKeyDown
|
|
67
|
+
handleGridKeyDown: handleGridKeyDown,
|
|
68
|
+
fullScreenStyles: styles['euiDataGrid--fullScreen']
|
|
66
69
|
};
|
|
67
70
|
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { css } from '@emotion/css';
|
|
10
|
+
import { logicalCSS } from '../../../global_styling';
|
|
11
|
+
export var euiDataGridFullScreenStyles = function euiDataGridFullScreenStyles(euiThemeContext) {
|
|
12
|
+
var euiTheme = euiThemeContext.euiTheme;
|
|
13
|
+
var fullScreenZIndex = Number(euiTheme.levels.header) - 1;
|
|
14
|
+
return {
|
|
15
|
+
'euiDataGrid--fullScreen': /*#__PURE__*/css("z-index:", fullScreenZIndex, ";position:fixed;inset:0;background-color:", euiTheme.colors.emptyShade, ";;label:euiDataGrid--fullScreen;"),
|
|
16
|
+
// This is a vanilla className applied to the <body> when fullscreen is enabled.
|
|
17
|
+
// It removes extra scrollbars + tweaks components to account for fixed headers
|
|
18
|
+
euiDataGrid__restrictBody: /*#__PURE__*/css(logicalCSS('height', '100vh'), " overflow:hidden;.euiHeader[data-fixed-header]{z-index:", fullScreenZIndex - 1, "!important;}.euiOverlayMask[data-relative-to-header='below']{", logicalCSS('top', '0'), ";}.euiFlyout{", logicalCSS('top', '0'), " ", logicalCSS('height', '100%'), ";};label:euiDataGrid__restrictBody;")
|
|
19
|
+
};
|
|
20
|
+
};
|
|
@@ -8,13 +8,14 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
import React, { useState, useMemo } from 'react';
|
|
11
|
-
import { useGeneratedHtmlId } from '../../../services';
|
|
11
|
+
import { useGeneratedHtmlId, useEuiMemoizedStyles } from '../../../services';
|
|
12
12
|
import { EuiButtonIcon } from '../../button';
|
|
13
13
|
import { EuiToolTip } from '../../tool_tip';
|
|
14
14
|
import { EuiPopover, EuiPopoverTitle } from '../../popover';
|
|
15
15
|
import { EuiDescriptionList } from '../../description_list';
|
|
16
16
|
import { EuiText } from '../../text';
|
|
17
17
|
import { useEuiI18n, EuiI18n } from '../../i18n';
|
|
18
|
+
import { euiDataGridKeyboardShortcutsStyles } from './keyboard_shortcuts.styles';
|
|
18
19
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
19
20
|
export var useDataGridKeyboardShortcuts = function useDataGridKeyboardShortcuts() {
|
|
20
21
|
var _useState = useState(false),
|
|
@@ -23,6 +24,7 @@ export var useDataGridKeyboardShortcuts = function useDataGridKeyboardShortcuts(
|
|
|
23
24
|
setIsOpen = _useState2[1];
|
|
24
25
|
var title = useEuiI18n('euiKeyboardShortcuts.title', 'Keyboard shortcuts');
|
|
25
26
|
var titleId = useGeneratedHtmlId();
|
|
27
|
+
var styles = useEuiMemoizedStyles(euiDataGridKeyboardShortcutsStyles);
|
|
26
28
|
var keyboardShortcuts = useMemo(function () {
|
|
27
29
|
return ___EmotionJSX(EuiPopover, {
|
|
28
30
|
"data-test-subj": "dataGridKeyboardShortcutsPopover",
|
|
@@ -31,6 +33,7 @@ export var useDataGridKeyboardShortcuts = function useDataGridKeyboardShortcuts(
|
|
|
31
33
|
return setIsOpen(false);
|
|
32
34
|
},
|
|
33
35
|
anchorPosition: "downRight",
|
|
36
|
+
panelPaddingSize: "none",
|
|
34
37
|
button: ___EmotionJSX(EuiToolTip, {
|
|
35
38
|
content: title,
|
|
36
39
|
delay: "long"
|
|
@@ -49,12 +52,13 @@ export var useDataGridKeyboardShortcuts = function useDataGridKeyboardShortcuts(
|
|
|
49
52
|
}, ___EmotionJSX("h2", {
|
|
50
53
|
id: titleId
|
|
51
54
|
}, title)), ___EmotionJSX(EuiText, {
|
|
55
|
+
css: styles.euiDataGrid__keyboardShortcuts,
|
|
52
56
|
className: "euiDataGrid__keyboardShortcuts",
|
|
53
57
|
size: "xs"
|
|
54
58
|
}, ___EmotionJSX(EuiDescriptionList, {
|
|
55
59
|
"aria-labelledby": titleId,
|
|
56
60
|
type: "column",
|
|
57
|
-
columnWidths: [
|
|
61
|
+
columnWidths: ['auto', 'auto'],
|
|
58
62
|
align: "center",
|
|
59
63
|
compressed: true,
|
|
60
64
|
listItems: [{
|
|
@@ -173,7 +177,7 @@ export var useDataGridKeyboardShortcuts = function useDataGridKeyboardShortcuts(
|
|
|
173
177
|
})
|
|
174
178
|
}]
|
|
175
179
|
})));
|
|
176
|
-
}, [isOpen, title, titleId]);
|
|
180
|
+
}, [isOpen, title, titleId, styles]);
|
|
177
181
|
return {
|
|
178
182
|
keyboardShortcuts: keyboardShortcuts
|
|
179
183
|
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { css } from '@emotion/react';
|
|
10
|
+
import { euiYScroll, logicalCSS, mathWithUnits } from '../../../global_styling';
|
|
11
|
+
export var euiDataGridKeyboardShortcutsStyles = function euiDataGridKeyboardShortcutsStyles(euiThemeContext) {
|
|
12
|
+
var euiTheme = euiThemeContext.euiTheme;
|
|
13
|
+
return {
|
|
14
|
+
euiDataGrid__keyboardShortcuts: /*#__PURE__*/css(logicalCSS('max-height', '80vh'), " ", logicalCSS('max-width', mathWithUnits(euiTheme.size.xxl, function (x) {
|
|
15
|
+
return x * 10;
|
|
16
|
+
})), " padding:", euiTheme.size.m, ";", euiYScroll(euiThemeContext), " .euiDescriptionList{row-gap:0;};label:euiDataGrid__keyboardShortcuts;")
|
|
17
|
+
};
|
|
18
|
+
};
|
|
@@ -215,6 +215,7 @@ describe('EuiDataGrid', function () {
|
|
|
215
215
|
});
|
|
216
216
|
it('has zero violations on sort and when the columns sorting menu is open', function () {
|
|
217
217
|
cy.get('.euiDataGridHeaderCell').last().realHover();
|
|
218
|
+
cy.wait(200); // Wait for transition
|
|
218
219
|
cy.get('button.euiDataGridHeaderCell__button').last().realClick();
|
|
219
220
|
cy.get('button.euiListGroupItem__button').contains('Sort Alma to Debian').should('exist').realClick();
|
|
220
221
|
cy.get('div[data-test-subj="dataGridColumnSortingPopover"] button').realClick();
|
|
@@ -16,7 +16,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
16
16
|
|
|
17
17
|
import classNames from 'classnames';
|
|
18
18
|
import React, { forwardRef, useMemo, useRef, useState, memo, useCallback } from 'react';
|
|
19
|
-
import { useGeneratedHtmlId } from '../../services';
|
|
19
|
+
import { useGeneratedHtmlId, useEuiMemoizedStyles, OverrideCopiedTabularContent } from '../../services';
|
|
20
20
|
import { useEuiTablePaginationDefaults } from '../table/table_pagination';
|
|
21
21
|
import { EuiFocusTrap } from '../focus_trap';
|
|
22
22
|
import { EuiI18n, useEuiI18n } from '../i18n';
|
|
@@ -24,15 +24,16 @@ import { useMutationObserver } from '../observer/mutation_observer';
|
|
|
24
24
|
import { useResizeObserver } from '../observer/resize_observer';
|
|
25
25
|
import { EuiDataGridBody } from './body';
|
|
26
26
|
import { useDataGridColumnSelector, useDataGridColumnSorting, useDataGridDisplaySelector, startingStyles, useDataGridFullScreenSelector, useDataGridKeyboardShortcuts, checkOrDefaultToolBarDisplayOptions, EuiDataGridToolbar } from './controls';
|
|
27
|
+
import { EuiDataGridPagination, shouldRenderPagination } from './pagination';
|
|
27
28
|
import { DataGridSortedContext, useSorting } from './utils/sorting';
|
|
28
29
|
import { DataGridFocusContext, useFocus, createKeyDownHandler, preventTabbing } from './utils/focus';
|
|
29
30
|
import { useInMemoryValues, EuiDataGridInMemoryRenderer } from './utils/in_memory';
|
|
30
31
|
import { DataGridCellPopoverContext, useCellPopover } from './body/cell';
|
|
31
32
|
import { computeVisibleRows } from './utils/row_count';
|
|
32
|
-
import { EuiDataGridPaginationRenderer } from './utils/data_grid_pagination';
|
|
33
33
|
import { schemaDetectors as providedSchemaDetectors, useMergedSchema } from './utils/data_grid_schema';
|
|
34
34
|
import { useImperativeGridRef } from './utils/ref';
|
|
35
35
|
import { emptyControlColumns } from './data_grid_types';
|
|
36
|
+
import { euiDataGridStyles } from './data_grid.styles';
|
|
36
37
|
|
|
37
38
|
// Each gridStyle object above sets a specific CSS select to .euiGrid
|
|
38
39
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
@@ -105,6 +106,7 @@ export var EuiDataGrid = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (pr
|
|
|
105
106
|
pageSizeOptions: paginationDefaults.itemsPerPageOptions
|
|
106
107
|
}, _pagination) : _pagination;
|
|
107
108
|
}, [_pagination, paginationDefaults]);
|
|
109
|
+
var showPagination = pagination && shouldRenderPagination(rowCount, pagination);
|
|
108
110
|
var gridStyleWithDefaults = useMemo(function () {
|
|
109
111
|
return _objectSpread(_objectSpread({}, startingStyles), gridStyle);
|
|
110
112
|
}, [gridStyle]);
|
|
@@ -238,7 +240,8 @@ export var EuiDataGrid = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (pr
|
|
|
238
240
|
isFullScreen = _useDataGridFullScree.isFullScreen,
|
|
239
241
|
setIsFullScreen = _useDataGridFullScree.setIsFullScreen,
|
|
240
242
|
fullScreenSelector = _useDataGridFullScree.fullScreenSelector,
|
|
241
|
-
handleGridKeyDown = _useDataGridFullScree.handleGridKeyDown
|
|
243
|
+
handleGridKeyDown = _useDataGridFullScree.handleGridKeyDown,
|
|
244
|
+
fullScreenStyles = _useDataGridFullScree.fullScreenStyles;
|
|
242
245
|
|
|
243
246
|
/**
|
|
244
247
|
* Expose certain internal APIs as ref to consumer
|
|
@@ -262,9 +265,9 @@ export var EuiDataGrid = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (pr
|
|
|
262
265
|
'euiDataGrid--stripes': gridStyles.stripes
|
|
263
266
|
}, {
|
|
264
267
|
'euiDataGrid--stickyFooter': gridStyles.footer && gridStyles.stickyFooter
|
|
265
|
-
}, {
|
|
268
|
+
}, _defineProperty({
|
|
266
269
|
'euiDataGrid--fullScreen': isFullScreen
|
|
267
|
-
}, {
|
|
270
|
+
}, fullScreenStyles, isFullScreen), {
|
|
268
271
|
'euiDataGrid--noControls': !toolbarVisibility
|
|
269
272
|
}, className);
|
|
270
273
|
|
|
@@ -309,6 +312,8 @@ export var EuiDataGrid = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (pr
|
|
|
309
312
|
focusContext: focusContext
|
|
310
313
|
})(event);
|
|
311
314
|
}, [focusContext, visibleColCount, visibleRowCount, rowCount, pagination, renderFooterCellValue]);
|
|
315
|
+
var styles = useEuiMemoizedStyles(euiDataGridStyles);
|
|
316
|
+
var cssStyles = [styles.euiDataGrid, styles.cellPadding[gridStyles.cellPadding], styles.fontSize[gridStyles.fontSize], styles.borders[gridStyles.border]];
|
|
312
317
|
return ___EmotionJSX(DataGridFocusContext.Provider, {
|
|
313
318
|
value: focusContext
|
|
314
319
|
}, ___EmotionJSX(DataGridCellPopoverContext.Provider, {
|
|
@@ -317,8 +322,10 @@ export var EuiDataGrid = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (pr
|
|
|
317
322
|
value: sortedContext
|
|
318
323
|
}, ___EmotionJSX(EuiFocusTrap, {
|
|
319
324
|
disabled: !isFullScreen,
|
|
320
|
-
className: "euiDataGrid__focusWrap"
|
|
325
|
+
className: "euiDataGrid__focusWrap",
|
|
326
|
+
css: styles.euiDataGrid__focusWrap
|
|
321
327
|
}, ___EmotionJSX("div", _extends({
|
|
328
|
+
css: cssStyles,
|
|
322
329
|
className: classes,
|
|
323
330
|
onKeyDown: handleGridKeyDown,
|
|
324
331
|
style: isFullScreen ? undefined : {
|
|
@@ -352,11 +359,12 @@ export var EuiDataGrid = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (pr
|
|
|
352
359
|
ref: contentRef,
|
|
353
360
|
onKeyDown: onKeyDown,
|
|
354
361
|
"data-test-subj": "euiDataGridBody",
|
|
362
|
+
css: styles.euiDataGrid__content,
|
|
355
363
|
className: "euiDataGrid__content",
|
|
356
364
|
role: "grid",
|
|
357
365
|
"aria-rowcount": rowCount,
|
|
358
366
|
id: gridId
|
|
359
|
-
}, wrappingDivFocusProps, gridAriaProps), ___EmotionJSX(EuiDataGridBody, {
|
|
367
|
+
}, wrappingDivFocusProps, gridAriaProps), ___EmotionJSX(OverrideCopiedTabularContent, null, ___EmotionJSX(EuiDataGridBody, {
|
|
360
368
|
columns: orderedVisibleColumns,
|
|
361
369
|
visibleColCount: visibleColCount,
|
|
362
370
|
leadingControlColumns: leadingControlColumns,
|
|
@@ -384,10 +392,10 @@ export var EuiDataGrid = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (pr
|
|
|
384
392
|
gridItemsRendered: gridItemsRendered,
|
|
385
393
|
wrapperRef: contentRef,
|
|
386
394
|
renderCustomGridBody: renderCustomGridBody
|
|
387
|
-
})),
|
|
395
|
+
}))), showPagination && props['aria-labelledby'] && ___EmotionJSX("p", {
|
|
388
396
|
id: ariaLabelledById,
|
|
389
397
|
hidden: true
|
|
390
|
-
}, ariaLabelledBy),
|
|
398
|
+
}, ariaLabelledBy), showPagination && ___EmotionJSX(EuiDataGridPagination, _extends({}, pagination, {
|
|
391
399
|
rowCount: rowCount,
|
|
392
400
|
controls: gridId,
|
|
393
401
|
"aria-label": props['aria-label']
|