@elastic/eui 93.2.0 → 93.4.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/dist/eui_charts_theme.d.ts +9 -0
- package/dist/eui_charts_theme.js +56 -14
- package/dist/eui_charts_theme.js.map +1 -1
- package/dist/eui_theme_dark.css +3 -0
- package/dist/eui_theme_dark.min.css +1 -1
- package/dist/eui_theme_light.css +3 -0
- package/dist/eui_theme_light.min.css +1 -1
- package/es/components/breadcrumbs/_breadcrumb_content.js +362 -0
- package/es/components/breadcrumbs/_breadcrumb_content.styles.js +48 -0
- package/es/components/breadcrumbs/breadcrumb.js +10 -324
- package/es/components/breadcrumbs/breadcrumb.styles.js +5 -27
- package/es/components/breadcrumbs/breadcrumbs.js +8 -6
- package/es/components/breadcrumbs/types.js +1 -0
- package/es/components/button/button_display/_button_display.js +2 -3
- package/es/components/button/button_empty/button_empty.js +2 -3
- package/es/components/button/button_group/button_group.js +19 -7
- package/es/components/button/button_group/button_group.styles.js +11 -14
- package/es/components/button/button_group/button_group_button.js +59 -5
- package/es/components/button/button_group/button_group_button.styles.js +39 -3
- package/es/components/button/button_icon/button_icon.js +4 -5
- package/es/components/button/button_icon/button_icon.styles.js +11 -3
- package/es/components/datagrid/body/cell/data_grid_cell.js +102 -59
- package/es/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
- package/es/components/datagrid/body/cell/data_grid_cell_popover.js +64 -56
- package/es/components/datagrid/body/cell/data_grid_cell_wrapper.js +34 -31
- package/es/components/datagrid/body/cell/index.js +1 -1
- package/es/components/datagrid/body/data_grid_body.js +14 -0
- package/es/components/datagrid/body/data_grid_body_custom.js +54 -35
- package/es/components/datagrid/body/data_grid_body_virtualized.js +87 -56
- package/es/components/datagrid/body/data_grid_row_manager.js +7 -5
- package/es/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
- package/es/components/datagrid/body/header/data_grid_control_header_cell.js +5 -4
- package/es/components/datagrid/body/header/data_grid_header_cell.js +73 -53
- package/es/components/datagrid/body/header/data_grid_header_row.js +15 -551
- package/es/components/datagrid/body/header/use_data_grid_header.js +7 -6
- package/es/components/datagrid/controls/column_selector.js +126 -123
- package/es/components/datagrid/controls/column_sorting.js +605 -103
- package/es/components/datagrid/controls/column_sorting_draggable.js +24 -22
- package/es/components/datagrid/controls/display_selector.js +109 -107
- package/es/components/datagrid/data_grid.a11y.js +13 -12
- package/es/components/datagrid/data_grid.js +47 -22
- package/es/components/datagrid/utils/col_widths.js +12 -8
- package/es/components/datagrid/utils/focus.js +10 -8
- package/es/components/datagrid/utils/grid_height_width.js +31 -30
- package/es/components/datagrid/utils/ref.js +1 -1
- package/es/components/datagrid/utils/row_heights.js +2 -2
- package/es/components/datagrid/utils/sorting.js +29 -27
- package/es/components/date_picker/super_date_picker/super_date_picker.js +9 -0
- package/es/components/date_picker/super_date_picker/super_update_button.js +57 -29
- package/es/components/facet/facet_button.styles.js +1 -2
- package/es/components/flex/flex_grid.js +22 -8
- package/es/components/flex/flex_grid.styles.js +13 -6
- package/es/components/flex/flex_group.js +10 -11
- package/es/components/flex/flex_item.js +9 -11
- package/es/components/flex/flex_item.styles.js +107 -122
- package/es/components/flyout/flyout.js +16 -18
- package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +7 -7
- package/es/components/icon/icon.js +13 -16
- package/es/components/icon/icon.styles.js +6 -9
- package/es/components/link/external_link_icon.js +11 -8
- package/es/components/link/link.js +2 -3
- package/es/components/link/link.styles.js +4 -10
- package/es/components/modal/confirm_modal.js +2 -1
- package/es/components/modal/modal.js +12 -3
- package/es/components/observer/resize_observer/resize_observer.js +15 -24
- package/es/components/page/page_header/page_header_content.js +4 -2
- package/es/components/progress/progress.styles.js +2 -2
- package/es/components/skeleton/skeleton_circle.js +2 -3
- package/es/components/skeleton/skeleton_rectangle.js +2 -3
- package/es/components/skeleton/skeleton_text.js +16 -12
- package/es/components/skeleton/skeleton_title.js +2 -3
- package/es/components/spacer/spacer.js +2 -3
- package/es/components/text/text.js +2 -3
- package/es/components/text/text_align.js +1 -2
- package/es/components/text/text_align.styles.js +5 -7
- package/es/components/text/text_color.js +2 -3
- package/es/components/title/title.js +2 -3
- package/es/components/title/title.styles.js +0 -7
- package/es/components/toast/global_toast_list.js +70 -73
- package/es/components/toast/toast.js +27 -42
- package/es/components/toast/toast.styles.js +2 -17
- package/es/global_styling/mixins/_typography.js +17 -6
- package/es/services/color/eui_palettes.js +21 -13
- package/es/services/color/index.js +1 -1
- package/es/services/hooks/index.js +1 -0
- package/es/services/hooks/useDeepEqual.js +23 -0
- package/es/services/index.js +1 -1
- package/es/services/theme/index.js +1 -1
- package/es/services/theme/style_memoization.js +47 -14
- package/es/themes/amsterdam/global_styling/mixins/button.js +47 -24
- package/eui.d.ts +2862 -2748
- package/i18ntokens.json +267 -267
- package/lib/components/breadcrumbs/_breadcrumb_content.js +372 -0
- package/lib/components/breadcrumbs/_breadcrumb_content.styles.js +55 -0
- package/lib/components/breadcrumbs/breadcrumb.js +11 -328
- package/lib/components/breadcrumbs/breadcrumb.styles.js +5 -29
- package/lib/components/breadcrumbs/breadcrumbs.js +7 -5
- package/lib/components/breadcrumbs/types.js +5 -0
- package/lib/components/button/button_display/_button_display.js +1 -2
- package/lib/components/button/button_empty/button_empty.js +1 -2
- package/lib/components/button/button_group/button_group.js +18 -6
- package/lib/components/button/button_group/button_group.styles.js +11 -14
- package/lib/components/button/button_group/button_group_button.js +59 -5
- package/lib/components/button/button_group/button_group_button.styles.js +45 -11
- package/lib/components/button/button_icon/button_icon.js +3 -4
- package/lib/components/button/button_icon/button_icon.styles.js +10 -2
- package/lib/components/datagrid/body/cell/data_grid_cell.js +100 -58
- package/lib/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
- package/lib/components/datagrid/body/cell/data_grid_cell_popover.js +63 -55
- package/lib/components/datagrid/body/cell/data_grid_cell_wrapper.js +34 -31
- package/lib/components/datagrid/body/cell/index.js +2 -2
- package/lib/components/datagrid/body/data_grid_body.js +14 -0
- package/lib/components/datagrid/body/data_grid_body_custom.js +53 -34
- package/lib/components/datagrid/body/data_grid_body_virtualized.js +86 -55
- package/lib/components/datagrid/body/data_grid_row_manager.js +6 -4
- package/lib/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
- package/lib/components/datagrid/body/header/data_grid_control_header_cell.js +8 -4
- package/lib/components/datagrid/body/header/data_grid_header_cell.js +72 -52
- package/lib/components/datagrid/body/header/data_grid_header_row.js +14 -550
- package/lib/components/datagrid/body/header/use_data_grid_header.js +7 -6
- package/lib/components/datagrid/controls/column_selector.js +126 -123
- package/lib/components/datagrid/controls/column_sorting.js +615 -110
- package/lib/components/datagrid/controls/column_sorting_draggable.js +27 -22
- package/lib/components/datagrid/controls/display_selector.js +109 -107
- package/lib/components/datagrid/data_grid.a11y.js +13 -12
- package/lib/components/datagrid/data_grid.js +45 -20
- package/lib/components/datagrid/utils/col_widths.js +12 -8
- package/lib/components/datagrid/utils/focus.js +10 -8
- package/lib/components/datagrid/utils/grid_height_width.js +29 -28
- package/lib/components/datagrid/utils/ref.js +1 -1
- package/lib/components/datagrid/utils/row_heights.js +1 -1
- package/lib/components/datagrid/utils/sorting.js +31 -29
- package/lib/components/date_picker/super_date_picker/super_date_picker.js +9 -0
- package/lib/components/date_picker/super_date_picker/super_update_button.js +57 -29
- package/lib/components/facet/facet_button.styles.js +1 -2
- package/lib/components/flex/flex_grid.js +23 -7
- package/lib/components/flex/flex_grid.styles.js +13 -6
- package/lib/components/flex/flex_group.js +10 -10
- package/lib/components/flex/flex_item.js +13 -13
- package/lib/components/flex/flex_item.styles.js +107 -122
- package/lib/components/flyout/flyout.js +16 -18
- package/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +7 -7
- package/lib/components/icon/icon.js +12 -15
- package/lib/components/icon/icon.styles.js +5 -8
- package/lib/components/link/external_link_icon.js +10 -7
- package/lib/components/link/link.js +1 -2
- package/lib/components/link/link.styles.js +6 -14
- package/lib/components/modal/confirm_modal.js +2 -1
- package/lib/components/modal/modal.js +12 -3
- package/lib/components/observer/resize_observer/resize_observer.js +15 -24
- package/lib/components/page/page_header/page_header_content.js +4 -2
- package/lib/components/progress/progress.styles.js +1 -1
- package/lib/components/skeleton/skeleton_circle.js +1 -2
- package/lib/components/skeleton/skeleton_rectangle.js +1 -2
- package/lib/components/skeleton/skeleton_text.js +18 -11
- package/lib/components/skeleton/skeleton_title.js +1 -2
- package/lib/components/spacer/spacer.js +1 -2
- package/lib/components/text/text.js +1 -2
- package/lib/components/text/text_align.js +1 -2
- package/lib/components/text/text_align.styles.js +5 -7
- package/lib/components/text/text_color.js +1 -2
- package/lib/components/title/title.js +1 -2
- package/lib/components/title/title.styles.js +2 -10
- package/lib/components/toast/global_toast_list.js +68 -71
- package/lib/components/toast/toast.js +25 -40
- package/lib/components/toast/toast.styles.js +11 -25
- package/lib/global_styling/mixins/_typography.js +27 -19
- package/lib/services/color/eui_palettes.js +24 -14
- package/lib/services/color/index.js +14 -0
- package/lib/services/hooks/index.js +11 -0
- package/lib/services/hooks/useDeepEqual.js +30 -0
- package/lib/services/index.js +15 -1
- package/lib/services/theme/index.js +6 -0
- package/lib/services/theme/style_memoization.js +49 -16
- package/lib/themes/amsterdam/global_styling/mixins/button.js +49 -25
- package/optimize/es/components/breadcrumbs/_breadcrumb_content.js +153 -0
- package/optimize/es/components/breadcrumbs/_breadcrumb_content.styles.js +48 -0
- package/optimize/es/components/breadcrumbs/breadcrumb.js +10 -109
- package/optimize/es/components/breadcrumbs/breadcrumb.styles.js +5 -27
- package/optimize/es/components/breadcrumbs/breadcrumbs.js +4 -4
- package/optimize/es/components/breadcrumbs/types.js +1 -0
- package/optimize/es/components/button/button_display/_button_display.js +2 -3
- package/optimize/es/components/button/button_empty/button_empty.js +2 -3
- package/optimize/es/components/button/button_group/button_group.js +5 -7
- package/optimize/es/components/button/button_group/button_group.styles.js +11 -14
- package/optimize/es/components/button/button_group/button_group_button.js +36 -4
- package/optimize/es/components/button/button_group/button_group_button.styles.js +39 -3
- package/optimize/es/components/button/button_icon/button_icon.js +4 -5
- package/optimize/es/components/button/button_icon/button_icon.styles.js +8 -3
- package/optimize/es/components/datagrid/body/cell/data_grid_cell.js +83 -56
- package/optimize/es/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
- package/optimize/es/components/datagrid/body/cell/data_grid_cell_popover.js +64 -56
- package/optimize/es/components/datagrid/body/cell/data_grid_cell_wrapper.js +34 -31
- package/optimize/es/components/datagrid/body/cell/index.js +1 -1
- package/optimize/es/components/datagrid/body/data_grid_body_custom.js +40 -35
- package/optimize/es/components/datagrid/body/data_grid_body_virtualized.js +71 -49
- package/optimize/es/components/datagrid/body/data_grid_row_manager.js +7 -5
- package/optimize/es/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
- package/optimize/es/components/datagrid/body/header/data_grid_control_header_cell.js +4 -3
- package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +65 -49
- package/optimize/es/components/datagrid/body/header/data_grid_header_row.js +15 -13
- package/optimize/es/components/datagrid/body/header/use_data_grid_header.js +7 -6
- package/optimize/es/components/datagrid/controls/column_selector.js +126 -123
- package/optimize/es/components/datagrid/controls/column_sorting.js +121 -103
- package/optimize/es/components/datagrid/controls/column_sorting_draggable.js +24 -22
- package/optimize/es/components/datagrid/controls/display_selector.js +109 -107
- package/optimize/es/components/datagrid/data_grid.a11y.js +13 -12
- package/optimize/es/components/datagrid/data_grid.js +47 -22
- package/optimize/es/components/datagrid/utils/col_widths.js +9 -5
- package/optimize/es/components/datagrid/utils/focus.js +10 -8
- package/optimize/es/components/datagrid/utils/grid_height_width.js +31 -30
- package/optimize/es/components/datagrid/utils/ref.js +1 -1
- package/optimize/es/components/datagrid/utils/row_heights.js +2 -2
- package/optimize/es/components/datagrid/utils/sorting.js +29 -27
- package/optimize/es/components/date_picker/super_date_picker/super_update_button.js +49 -29
- package/optimize/es/components/facet/facet_button.styles.js +1 -2
- package/optimize/es/components/flex/flex_grid.js +19 -8
- package/optimize/es/components/flex/flex_grid.styles.js +13 -6
- package/optimize/es/components/flex/flex_group.js +9 -10
- package/optimize/es/components/flex/flex_item.js +9 -11
- package/optimize/es/components/flex/flex_item.styles.js +107 -122
- package/optimize/es/components/flyout/flyout.js +16 -18
- package/optimize/es/components/header/header_breadcrumbs/header_breadcrumbs.js +3 -5
- package/optimize/es/components/icon/icon.js +13 -16
- package/optimize/es/components/icon/icon.styles.js +6 -9
- package/optimize/es/components/link/external_link_icon.js +11 -8
- package/optimize/es/components/link/link.js +2 -3
- package/optimize/es/components/link/link.styles.js +4 -10
- package/optimize/es/components/modal/confirm_modal.js +2 -1
- package/optimize/es/components/modal/modal.js +6 -2
- package/optimize/es/components/observer/resize_observer/resize_observer.js +15 -24
- package/optimize/es/components/progress/progress.styles.js +2 -2
- package/optimize/es/components/skeleton/skeleton_circle.js +2 -3
- package/optimize/es/components/skeleton/skeleton_rectangle.js +2 -3
- package/optimize/es/components/skeleton/skeleton_text.js +16 -12
- package/optimize/es/components/skeleton/skeleton_title.js +2 -3
- package/optimize/es/components/spacer/spacer.js +2 -3
- package/optimize/es/components/text/text.js +2 -3
- package/optimize/es/components/text/text_align.js +1 -2
- package/optimize/es/components/text/text_align.styles.js +5 -7
- package/optimize/es/components/text/text_color.js +2 -3
- package/optimize/es/components/title/title.js +2 -3
- package/optimize/es/components/title/title.styles.js +0 -7
- package/optimize/es/components/toast/global_toast_list.js +70 -73
- package/optimize/es/components/toast/toast.js +27 -42
- package/optimize/es/components/toast/toast.styles.js +2 -17
- package/optimize/es/global_styling/mixins/_typography.js +14 -6
- package/optimize/es/services/color/eui_palettes.js +21 -13
- package/optimize/es/services/color/index.js +1 -1
- package/optimize/es/services/hooks/index.js +1 -0
- package/optimize/es/services/hooks/useDeepEqual.js +23 -0
- package/optimize/es/services/index.js +1 -1
- package/optimize/es/services/theme/index.js +1 -1
- package/optimize/es/services/theme/style_memoization.js +47 -14
- package/optimize/es/themes/amsterdam/global_styling/mixins/button.js +47 -24
- package/optimize/lib/components/breadcrumbs/_breadcrumb_content.js +163 -0
- package/optimize/lib/components/breadcrumbs/_breadcrumb_content.styles.js +55 -0
- package/optimize/lib/components/breadcrumbs/breadcrumb.js +10 -112
- package/optimize/lib/components/breadcrumbs/breadcrumb.styles.js +5 -29
- package/optimize/lib/components/breadcrumbs/breadcrumbs.js +3 -3
- package/optimize/lib/components/breadcrumbs/types.js +5 -0
- package/optimize/lib/components/button/button_display/_button_display.js +1 -2
- package/optimize/lib/components/button/button_empty/button_empty.js +1 -2
- package/optimize/lib/components/button/button_group/button_group.js +4 -6
- package/optimize/lib/components/button/button_group/button_group.styles.js +11 -14
- package/optimize/lib/components/button/button_group/button_group_button.js +37 -5
- package/optimize/lib/components/button/button_group/button_group_button.styles.js +45 -11
- package/optimize/lib/components/button/button_icon/button_icon.js +3 -4
- package/optimize/lib/components/button/button_icon/button_icon.styles.js +8 -2
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell.js +81 -55
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell_popover.js +63 -55
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell_wrapper.js +34 -31
- package/optimize/lib/components/datagrid/body/cell/index.js +2 -2
- package/optimize/lib/components/datagrid/body/data_grid_body_custom.js +39 -34
- package/optimize/lib/components/datagrid/body/data_grid_body_virtualized.js +72 -50
- package/optimize/lib/components/datagrid/body/data_grid_row_manager.js +6 -4
- package/optimize/lib/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
- package/optimize/lib/components/datagrid/body/header/data_grid_control_header_cell.js +8 -4
- package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +65 -49
- package/optimize/lib/components/datagrid/body/header/data_grid_header_row.js +14 -12
- package/optimize/lib/components/datagrid/body/header/use_data_grid_header.js +7 -6
- package/optimize/lib/components/datagrid/controls/column_selector.js +126 -123
- package/optimize/lib/components/datagrid/controls/column_sorting.js +125 -107
- package/optimize/lib/components/datagrid/controls/column_sorting_draggable.js +27 -22
- package/optimize/lib/components/datagrid/controls/display_selector.js +109 -107
- package/optimize/lib/components/datagrid/data_grid.a11y.js +13 -12
- package/optimize/lib/components/datagrid/data_grid.js +45 -20
- package/optimize/lib/components/datagrid/utils/col_widths.js +9 -5
- package/optimize/lib/components/datagrid/utils/focus.js +10 -8
- package/optimize/lib/components/datagrid/utils/grid_height_width.js +29 -28
- package/optimize/lib/components/datagrid/utils/ref.js +1 -1
- package/optimize/lib/components/datagrid/utils/row_heights.js +1 -1
- package/optimize/lib/components/datagrid/utils/sorting.js +31 -29
- package/optimize/lib/components/date_picker/super_date_picker/super_update_button.js +49 -29
- package/optimize/lib/components/facet/facet_button.styles.js +1 -2
- package/optimize/lib/components/flex/flex_grid.js +21 -7
- package/optimize/lib/components/flex/flex_grid.styles.js +13 -6
- package/optimize/lib/components/flex/flex_group.js +9 -9
- package/optimize/lib/components/flex/flex_item.js +13 -13
- package/optimize/lib/components/flex/flex_item.styles.js +107 -122
- package/optimize/lib/components/flyout/flyout.js +16 -18
- package/optimize/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +3 -5
- package/optimize/lib/components/icon/icon.js +12 -15
- package/optimize/lib/components/icon/icon.styles.js +5 -8
- package/optimize/lib/components/link/external_link_icon.js +10 -7
- package/optimize/lib/components/link/link.js +1 -2
- package/optimize/lib/components/link/link.styles.js +6 -14
- package/optimize/lib/components/modal/confirm_modal.js +2 -1
- package/optimize/lib/components/modal/modal.js +6 -2
- package/optimize/lib/components/observer/resize_observer/resize_observer.js +15 -24
- package/optimize/lib/components/progress/progress.styles.js +1 -1
- package/optimize/lib/components/skeleton/skeleton_circle.js +1 -2
- package/optimize/lib/components/skeleton/skeleton_rectangle.js +1 -2
- package/optimize/lib/components/skeleton/skeleton_text.js +18 -11
- package/optimize/lib/components/skeleton/skeleton_title.js +1 -2
- package/optimize/lib/components/spacer/spacer.js +1 -2
- package/optimize/lib/components/text/text.js +1 -2
- package/optimize/lib/components/text/text_align.js +1 -2
- package/optimize/lib/components/text/text_align.styles.js +5 -7
- package/optimize/lib/components/text/text_color.js +1 -2
- package/optimize/lib/components/title/title.js +1 -2
- package/optimize/lib/components/title/title.styles.js +2 -10
- package/optimize/lib/components/toast/global_toast_list.js +68 -71
- package/optimize/lib/components/toast/toast.js +25 -40
- package/optimize/lib/components/toast/toast.styles.js +11 -25
- package/optimize/lib/global_styling/mixins/_typography.js +25 -19
- package/optimize/lib/services/color/eui_palettes.js +24 -14
- package/optimize/lib/services/color/index.js +14 -0
- package/optimize/lib/services/hooks/index.js +11 -0
- package/optimize/lib/services/hooks/useDeepEqual.js +30 -0
- package/optimize/lib/services/index.js +15 -1
- package/optimize/lib/services/theme/index.js +6 -0
- package/optimize/lib/services/theme/style_memoization.js +49 -16
- package/optimize/lib/themes/amsterdam/global_styling/mixins/button.js +49 -26
- package/package.json +3 -3
- package/src/components/datagrid/_data_grid_data_row.scss +4 -0
- package/test-env/components/breadcrumbs/_breadcrumb_content.js +363 -0
- package/test-env/components/breadcrumbs/_breadcrumb_content.styles.js +55 -0
- package/test-env/components/breadcrumbs/breadcrumb.js +11 -323
- package/test-env/components/breadcrumbs/breadcrumb.styles.js +5 -29
- package/test-env/components/breadcrumbs/breadcrumbs.js +7 -5
- package/test-env/components/breadcrumbs/types.js +5 -0
- package/test-env/components/button/button_display/_button_display.js +1 -2
- package/test-env/components/button/button_empty/button_empty.js +1 -2
- package/test-env/components/button/button_group/button_group.js +18 -6
- package/test-env/components/button/button_group/button_group.styles.js +11 -14
- package/test-env/components/button/button_group/button_group_button.js +56 -5
- package/test-env/components/button/button_group/button_group_button.styles.js +45 -11
- package/test-env/components/button/button_icon/button_icon.js +3 -4
- package/test-env/components/button/button_icon/button_icon.styles.js +8 -2
- package/test-env/components/datagrid/body/cell/data_grid_cell.js +100 -58
- package/test-env/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
- package/test-env/components/datagrid/body/cell/data_grid_cell_popover.js +63 -55
- package/test-env/components/datagrid/body/cell/data_grid_cell_wrapper.js +34 -31
- package/test-env/components/datagrid/body/cell/index.js +2 -2
- package/test-env/components/datagrid/body/data_grid_body.js +14 -0
- package/test-env/components/datagrid/body/data_grid_body_custom.js +53 -34
- package/test-env/components/datagrid/body/data_grid_body_virtualized.js +86 -55
- package/test-env/components/datagrid/body/data_grid_row_manager.js +6 -4
- package/test-env/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
- package/test-env/components/datagrid/body/header/data_grid_control_header_cell.js +8 -4
- package/test-env/components/datagrid/body/header/data_grid_header_cell.js +72 -52
- package/test-env/components/datagrid/body/header/data_grid_header_row.js +14 -550
- package/test-env/components/datagrid/body/header/use_data_grid_header.js +7 -6
- package/test-env/components/datagrid/controls/column_selector.js +126 -123
- package/test-env/components/datagrid/controls/column_sorting.js +607 -106
- package/test-env/components/datagrid/controls/column_sorting_draggable.js +27 -22
- package/test-env/components/datagrid/controls/display_selector.js +109 -107
- package/test-env/components/datagrid/data_grid.a11y.js +13 -12
- package/test-env/components/datagrid/data_grid.js +45 -20
- package/test-env/components/datagrid/utils/col_widths.js +9 -5
- package/test-env/components/datagrid/utils/focus.js +10 -8
- package/test-env/components/datagrid/utils/grid_height_width.js +29 -28
- package/test-env/components/datagrid/utils/ref.js +1 -1
- package/test-env/components/datagrid/utils/row_heights.js +1 -1
- package/test-env/components/datagrid/utils/sorting.js +31 -29
- package/test-env/components/date_picker/super_date_picker/super_date_picker.js +9 -0
- package/test-env/components/date_picker/super_date_picker/super_update_button.js +57 -29
- package/test-env/components/facet/facet_button.styles.js +1 -2
- package/test-env/components/flex/flex_grid.js +21 -7
- package/test-env/components/flex/flex_grid.styles.js +13 -6
- package/test-env/components/flex/flex_group.js +10 -10
- package/test-env/components/flex/flex_item.js +13 -13
- package/test-env/components/flex/flex_item.styles.js +107 -122
- package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.js +7 -7
- package/test-env/components/icon/icon.styles.js +5 -8
- package/test-env/components/link/external_link_icon.js +10 -7
- package/test-env/components/link/link.js +1 -2
- package/test-env/components/link/link.styles.js +6 -14
- package/test-env/components/modal/confirm_modal.js +2 -1
- package/test-env/components/modal/modal.js +12 -3
- package/test-env/components/page/page_header/page_header_content.js +4 -2
- package/test-env/components/progress/progress.styles.js +1 -1
- package/test-env/components/skeleton/skeleton_circle.js +1 -2
- package/test-env/components/skeleton/skeleton_rectangle.js +1 -2
- package/test-env/components/skeleton/skeleton_text.js +18 -11
- package/test-env/components/skeleton/skeleton_title.js +1 -2
- package/test-env/components/spacer/spacer.js +1 -2
- package/test-env/components/text/text.js +1 -2
- package/test-env/components/text/text_align.js +1 -2
- package/test-env/components/text/text_align.styles.js +5 -7
- package/test-env/components/text/text_color.js +1 -2
- package/test-env/components/title/title.js +1 -2
- package/test-env/components/title/title.styles.js +2 -10
- package/test-env/components/toast/global_toast_list.js +68 -71
- package/test-env/components/toast/toast.js +25 -40
- package/test-env/components/toast/toast.styles.js +11 -25
- package/test-env/global_styling/mixins/_typography.js +25 -19
- package/test-env/services/color/eui_palettes.js +24 -14
- package/test-env/services/color/index.js +14 -0
- package/test-env/services/hooks/index.js +11 -0
- package/test-env/services/hooks/useDeepEqual.js +30 -0
- package/test-env/services/index.js +15 -1
- package/test-env/services/theme/index.js +6 -0
- package/test-env/services/theme/style_memoization.js +49 -16
- package/test-env/themes/amsterdam/global_styling/mixins/button.js +49 -26
- package/src/themes/charts/theme.scss +0 -5
|
@@ -11,7 +11,7 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
|
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
13
|
import classnames from 'classnames';
|
|
14
|
-
import React, { useContext, useState, useRef, useCallback, useMemo } from 'react';
|
|
14
|
+
import React, { useContext, useState, useRef, useCallback, useMemo, memo } from 'react';
|
|
15
15
|
import { tabbable } from 'tabbable';
|
|
16
16
|
import { keys } from '../../../../services';
|
|
17
17
|
import { useGeneratedHtmlId } from '../../../../services/accessibility';
|
|
@@ -20,13 +20,21 @@ import { EuiI18n } from '../../../i18n';
|
|
|
20
20
|
import { EuiIcon } from '../../../icon';
|
|
21
21
|
import { EuiListGroup } from '../../../list_group';
|
|
22
22
|
import { EuiPopover } from '../../../popover';
|
|
23
|
-
import { DataGridSortingContext } from '../../utils/sorting';
|
|
24
23
|
import { DataGridFocusContext } from '../../utils/focus';
|
|
25
24
|
import { getColumnActions } from './column_actions';
|
|
26
25
|
import { EuiDataGridColumnResizer } from './data_grid_column_resizer';
|
|
27
26
|
import { EuiDataGridHeaderCellWrapper } from './data_grid_header_cell_wrapper';
|
|
28
27
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
29
|
-
var
|
|
28
|
+
var CellContent = function CellContent(_ref) {
|
|
29
|
+
var children = _ref.children,
|
|
30
|
+
title = _ref.title,
|
|
31
|
+
arrow = _ref.arrow;
|
|
32
|
+
return ___EmotionJSX(React.Fragment, null, ___EmotionJSX("div", {
|
|
33
|
+
title: title,
|
|
34
|
+
className: "euiDataGridHeaderCell__content"
|
|
35
|
+
}, children), arrow);
|
|
36
|
+
};
|
|
37
|
+
var _ref3 = process.env.NODE_ENV === "production" ? {
|
|
30
38
|
name: "mc0thx-EuiDataGridHeaderCell",
|
|
31
39
|
styles: "margin-inline-start:auto;label:EuiDataGridHeaderCell;"
|
|
32
40
|
} : {
|
|
@@ -34,18 +42,19 @@ var _ref2 = process.env.NODE_ENV === "production" ? {
|
|
|
34
42
|
styles: "margin-inline-start:auto;label:EuiDataGridHeaderCell;",
|
|
35
43
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
36
44
|
};
|
|
37
|
-
export var EuiDataGridHeaderCell = function
|
|
45
|
+
export var EuiDataGridHeaderCell = /*#__PURE__*/memo(function (_ref2) {
|
|
38
46
|
var _classnames;
|
|
39
|
-
var
|
|
40
|
-
|
|
41
|
-
columns =
|
|
42
|
-
columnWidths =
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
47
|
+
var index = _ref2.index,
|
|
48
|
+
column = _ref2.column,
|
|
49
|
+
columns = _ref2.columns,
|
|
50
|
+
columnWidths = _ref2.columnWidths,
|
|
51
|
+
defaultColumnWidth = _ref2.defaultColumnWidth,
|
|
52
|
+
setColumnWidth = _ref2.setColumnWidth,
|
|
53
|
+
setVisibleColumns = _ref2.setVisibleColumns,
|
|
54
|
+
switchColumnPos = _ref2.switchColumnPos,
|
|
55
|
+
sorting = _ref2.sorting,
|
|
56
|
+
schema = _ref2.schema,
|
|
57
|
+
schemaDetectors = _ref2.schemaDetectors;
|
|
49
58
|
var id = column.id,
|
|
50
59
|
display = column.display,
|
|
51
60
|
displayAsText = column.displayAsText,
|
|
@@ -55,25 +64,25 @@ export var EuiDataGridHeaderCell = function EuiDataGridHeaderCell(_ref) {
|
|
|
55
64
|
var _useContext = useContext(DataGridFocusContext),
|
|
56
65
|
setFocusedCell = _useContext.setFocusedCell,
|
|
57
66
|
focusFirstVisibleInteractiveCell = _useContext.focusFirstVisibleInteractiveCell;
|
|
58
|
-
var _useContext2 = useContext(DataGridSortingContext),
|
|
59
|
-
sorting = _useContext2.sorting;
|
|
60
67
|
var _useState = useState(false),
|
|
61
68
|
_useState2 = _slicedToArray(_useState, 2),
|
|
62
69
|
isPopoverOpen = _useState2[0],
|
|
63
70
|
setIsPopoverOpen = _useState2[1];
|
|
64
71
|
var popoverArrowNavigationProps = usePopoverArrowNavigation();
|
|
65
|
-
var columnActions =
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
72
|
+
var columnActions = useMemo(function () {
|
|
73
|
+
return getColumnActions({
|
|
74
|
+
column: column,
|
|
75
|
+
columns: columns,
|
|
76
|
+
schema: schema,
|
|
77
|
+
schemaDetectors: schemaDetectors,
|
|
78
|
+
setVisibleColumns: setVisibleColumns,
|
|
79
|
+
focusFirstVisibleInteractiveCell: focusFirstVisibleInteractiveCell,
|
|
80
|
+
setIsPopoverOpen: setIsPopoverOpen,
|
|
81
|
+
sorting: sorting,
|
|
82
|
+
switchColumnPos: switchColumnPos,
|
|
83
|
+
setFocusedCell: setFocusedCell
|
|
84
|
+
});
|
|
85
|
+
}, [column, columns, schema, schemaDetectors, setVisibleColumns, focusFirstVisibleInteractiveCell, setIsPopoverOpen, sorting, switchColumnPos, setFocusedCell]);
|
|
77
86
|
var showColumnActions = columnActions && columnActions.length > 0;
|
|
78
87
|
var actionsButtonRef = useRef(null);
|
|
79
88
|
var focusActionsButton = useCallback(function () {
|
|
@@ -100,11 +109,9 @@ export var EuiDataGridHeaderCell = function EuiDataGridHeaderCell(_ref) {
|
|
|
100
109
|
prefix: 'euiDataGridCellHeader',
|
|
101
110
|
suffix: 'actions'
|
|
102
111
|
});
|
|
103
|
-
var cellContent = ___EmotionJSX(React.Fragment, null, ___EmotionJSX("div", {
|
|
104
|
-
title: displayAsText || id,
|
|
105
|
-
className: "euiDataGridHeaderCell__content"
|
|
106
|
-
}, display || displayAsText || id), sortingArrow);
|
|
107
112
|
var classes = classnames((_classnames = {}, _defineProperty(_classnames, "euiDataGridHeaderCell--".concat(columnType), columnType), _defineProperty(_classnames, 'euiDataGridHeaderCell--hasColumnActions', showColumnActions), _defineProperty(_classnames, 'euiDataGridHeaderCell--isActionsPopoverOpen', isPopoverOpen), _classnames), displayHeaderCellProps === null || displayHeaderCellProps === void 0 ? void 0 : displayHeaderCellProps.className);
|
|
113
|
+
var title = displayAsText || id;
|
|
114
|
+
var children = display || displayAsText || id;
|
|
108
115
|
return ___EmotionJSX(EuiDataGridHeaderCellWrapper, _extends({}, displayHeaderCellProps, {
|
|
109
116
|
className: classes,
|
|
110
117
|
id: id,
|
|
@@ -118,7 +125,10 @@ export var EuiDataGridHeaderCell = function EuiDataGridHeaderCell(_ref) {
|
|
|
118
125
|
columnId: id,
|
|
119
126
|
columnWidth: width,
|
|
120
127
|
setColumnWidth: setColumnWidth
|
|
121
|
-
}) : null, !showColumnActions ? ___EmotionJSX(React.Fragment, null,
|
|
128
|
+
}) : null, !showColumnActions ? ___EmotionJSX(React.Fragment, null, ___EmotionJSX(CellContent, {
|
|
129
|
+
title: title,
|
|
130
|
+
arrow: sortingArrow
|
|
131
|
+
}, children), sortingScreenReaderText && ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", null, sortingScreenReaderText))) : ___EmotionJSX(React.Fragment, null, ___EmotionJSX("button", {
|
|
122
132
|
className: "euiDataGridHeaderCell__button",
|
|
123
133
|
onClick: function onClick() {
|
|
124
134
|
return setIsPopoverOpen(function (isPopoverOpen) {
|
|
@@ -134,12 +144,15 @@ export var EuiDataGridHeaderCell = function EuiDataGridHeaderCell(_ref) {
|
|
|
134
144
|
"aria-describedby": "".concat(sortingAriaId, " ").concat(actionsAriaId),
|
|
135
145
|
ref: actionsButtonRef,
|
|
136
146
|
"data-test-subj": "dataGridHeaderCellActionButton-".concat(id)
|
|
137
|
-
},
|
|
147
|
+
}, ___EmotionJSX(CellContent, {
|
|
148
|
+
title: title,
|
|
149
|
+
arrow: sortingArrow
|
|
150
|
+
}, children), ___EmotionJSX(EuiPopover, _extends({
|
|
138
151
|
display: "block",
|
|
139
152
|
panelPaddingSize: "none",
|
|
140
153
|
offset: 7,
|
|
141
154
|
anchorPosition: "downRight",
|
|
142
|
-
css:
|
|
155
|
+
css: _ref3 // Align to right
|
|
143
156
|
,
|
|
144
157
|
focusTrapProps: {
|
|
145
158
|
// We need to override the default EuiPopover `onClickOutside` since the anchor is separate from the actual button
|
|
@@ -175,16 +188,17 @@ export var EuiDataGridHeaderCell = function EuiDataGridHeaderCell(_ref) {
|
|
|
175
188
|
token: "euiDataGridHeaderCell.headerActions",
|
|
176
189
|
default: "Click to view column header actions"
|
|
177
190
|
}))));
|
|
178
|
-
};
|
|
191
|
+
});
|
|
192
|
+
EuiDataGridHeaderCell.displayName = 'EuiDataGridHeaderCell';
|
|
179
193
|
|
|
180
194
|
/**
|
|
181
195
|
* Column sorting utility helpers
|
|
182
196
|
*/
|
|
183
|
-
export var useSortingUtils = function useSortingUtils(
|
|
197
|
+
export var useSortingUtils = function useSortingUtils(_ref4) {
|
|
184
198
|
var _sorting$columns;
|
|
185
|
-
var sorting =
|
|
186
|
-
id =
|
|
187
|
-
showColumnActions =
|
|
199
|
+
var sorting = _ref4.sorting,
|
|
200
|
+
id = _ref4.id,
|
|
201
|
+
showColumnActions = _ref4.showColumnActions;
|
|
188
202
|
var sortedColumn = useMemo(function () {
|
|
189
203
|
return sorting === null || sorting === void 0 ? void 0 : sorting.columns.find(function (col) {
|
|
190
204
|
return col.id === id;
|
|
@@ -196,12 +210,14 @@ export var useSortingUtils = function useSortingUtils(_ref3) {
|
|
|
196
210
|
/**
|
|
197
211
|
* Arrow icon
|
|
198
212
|
*/
|
|
199
|
-
var sortingArrow =
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
213
|
+
var sortingArrow = useMemo(function () {
|
|
214
|
+
return isColumnSorted ? ___EmotionJSX(EuiIcon, {
|
|
215
|
+
type: sortedColumn.direction === 'asc' ? 'sortUp' : 'sortDown',
|
|
216
|
+
color: "text",
|
|
217
|
+
className: "euiDataGridHeaderCell__sortingArrow",
|
|
218
|
+
"data-test-subj": "dataGridHeaderCellSortingIcon-".concat(id)
|
|
219
|
+
}) : null;
|
|
220
|
+
}, [id, isColumnSorted, sortedColumn]);
|
|
205
221
|
|
|
206
222
|
/**
|
|
207
223
|
* aria-sort attribute - should only be used when a single column is being sorted
|
|
@@ -218,9 +234,9 @@ export var useSortingUtils = function useSortingUtils(_ref3) {
|
|
|
218
234
|
var _sorting$columns2;
|
|
219
235
|
if (!isColumnSorted) return null;
|
|
220
236
|
if (!showColumnActions && hasOnlyOneSort) return null; // in this scenario, the `aria-sort` attribute will be used by screen readers
|
|
221
|
-
return ___EmotionJSX(React.Fragment, null, sorting === null || sorting === void 0 ? void 0 : (_sorting$columns2 = sorting.columns) === null || _sorting$columns2 === void 0 ? void 0 : _sorting$columns2.map(function (
|
|
222
|
-
var columnId =
|
|
223
|
-
direction =
|
|
237
|
+
return ___EmotionJSX(React.Fragment, null, sorting === null || sorting === void 0 ? void 0 : (_sorting$columns2 = sorting.columns) === null || _sorting$columns2 === void 0 ? void 0 : _sorting$columns2.map(function (_ref5, index) {
|
|
238
|
+
var columnId = _ref5.id,
|
|
239
|
+
direction = _ref5.direction;
|
|
224
240
|
if (hasOnlyOneSort) {
|
|
225
241
|
if (direction === 'asc') {
|
|
226
242
|
return ___EmotionJSX(EuiI18n, {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
|
-
var _excluded = ["
|
|
3
|
+
var _excluded = ["className", "data-test-subj", "leadingControlColumns", "trailingControlColumns", "columns", "columnWidths", "defaultColumnWidth", "setColumnWidth", "setVisibleColumns", "switchColumnPos", "sorting", "schema", "schemaDetectors"];
|
|
4
4
|
/*
|
|
5
5
|
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
6
6
|
* or more contributor license agreements. Licensed under the Elastic License
|
|
@@ -10,26 +10,27 @@ var _excluded = ["leadingControlColumns", "trailingControlColumns", "columns", "
|
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
12
|
import classnames from 'classnames';
|
|
13
|
-
import React, { forwardRef } from 'react';
|
|
13
|
+
import React, { forwardRef, memo } from 'react';
|
|
14
14
|
import { EuiDataGridControlHeaderCell } from './data_grid_control_header_cell';
|
|
15
15
|
import { EuiDataGridHeaderCell } from './data_grid_header_cell';
|
|
16
16
|
import { emptyControlColumns } from '../../data_grid_types';
|
|
17
17
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
18
|
-
var EuiDataGridHeaderRow = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
19
|
-
var
|
|
18
|
+
var EuiDataGridHeaderRow = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, ref) {
|
|
19
|
+
var className = props.className,
|
|
20
|
+
_dataTestSubj = props['data-test-subj'],
|
|
21
|
+
_props$leadingControl = props.leadingControlColumns,
|
|
20
22
|
leadingControlColumns = _props$leadingControl === void 0 ? emptyControlColumns : _props$leadingControl,
|
|
21
23
|
_props$trailingContro = props.trailingControlColumns,
|
|
22
24
|
trailingControlColumns = _props$trailingContro === void 0 ? emptyControlColumns : _props$trailingContro,
|
|
23
25
|
columns = props.columns,
|
|
24
|
-
schema = props.schema,
|
|
25
|
-
schemaDetectors = props.schemaDetectors,
|
|
26
26
|
columnWidths = props.columnWidths,
|
|
27
27
|
defaultColumnWidth = props.defaultColumnWidth,
|
|
28
|
-
className = props.className,
|
|
29
28
|
setColumnWidth = props.setColumnWidth,
|
|
30
29
|
setVisibleColumns = props.setVisibleColumns,
|
|
31
30
|
switchColumnPos = props.switchColumnPos,
|
|
32
|
-
|
|
31
|
+
sorting = props.sorting,
|
|
32
|
+
schema = props.schema,
|
|
33
|
+
schemaDetectors = props.schemaDetectors,
|
|
33
34
|
rest = _objectWithoutProperties(props, _excluded);
|
|
34
35
|
var classes = classnames('euiDataGridHeader', className);
|
|
35
36
|
var dataTestSubj = classnames('dataGridHeader', _dataTestSubj);
|
|
@@ -47,16 +48,17 @@ var EuiDataGridHeaderRow = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
47
48
|
}), columns.map(function (column, index) {
|
|
48
49
|
return ___EmotionJSX(EuiDataGridHeaderCell, {
|
|
49
50
|
key: column.id,
|
|
51
|
+
index: index + leadingControlColumns.length,
|
|
50
52
|
column: column,
|
|
51
53
|
columns: columns,
|
|
52
|
-
index: index + leadingControlColumns.length,
|
|
53
54
|
columnWidths: columnWidths,
|
|
54
|
-
|
|
55
|
-
schemaDetectors: schemaDetectors,
|
|
55
|
+
defaultColumnWidth: defaultColumnWidth,
|
|
56
56
|
setColumnWidth: setColumnWidth,
|
|
57
57
|
setVisibleColumns: setVisibleColumns,
|
|
58
58
|
switchColumnPos: switchColumnPos,
|
|
59
|
-
|
|
59
|
+
sorting: sorting,
|
|
60
|
+
schema: schema,
|
|
61
|
+
schemaDetectors: schemaDetectors
|
|
60
62
|
});
|
|
61
63
|
}), trailingControlColumns.map(function (controlColumn, index) {
|
|
62
64
|
return ___EmotionJSX(EuiDataGridControlHeaderCell, {
|
|
@@ -65,6 +67,6 @@ var EuiDataGridHeaderRow = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
65
67
|
controlColumn: controlColumn
|
|
66
68
|
});
|
|
67
69
|
}));
|
|
68
|
-
});
|
|
70
|
+
}));
|
|
69
71
|
EuiDataGridHeaderRow.displayName = 'EuiDataGridHeaderRow';
|
|
70
72
|
export { EuiDataGridHeaderRow };
|
|
@@ -27,10 +27,11 @@ export var useDataGridHeader = function useDataGridHeader(props) {
|
|
|
27
27
|
return ___EmotionJSX(EuiDataGridHeaderRow, _extends({
|
|
28
28
|
ref: setHeaderRowRef
|
|
29
29
|
}, props));
|
|
30
|
-
},
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
30
|
+
}, [props]);
|
|
31
|
+
return useMemo(function () {
|
|
32
|
+
return {
|
|
33
|
+
headerRow: headerRow,
|
|
34
|
+
headerRowHeight: headerRowHeight
|
|
35
|
+
};
|
|
36
|
+
}, [headerRow, headerRowHeight]);
|
|
36
37
|
};
|
|
@@ -71,10 +71,6 @@ export var useDataGridColumnSelector = function useDataGridColumnSelector(availa
|
|
|
71
71
|
}, [sortedColumns, columnSearchText, displayValues]);
|
|
72
72
|
var isDragEnabled = allowColumnReorder && columnSearchText.length === 0; // only allow drag-and-drop when not filtering columns
|
|
73
73
|
var dragHandleAriaLabel = useEuiI18n('euiColumnSelector.dragHandleAriaLabel', 'Drag handle');
|
|
74
|
-
var buttonText = ___EmotionJSX(EuiI18n, {
|
|
75
|
-
token: "euiColumnSelector.button",
|
|
76
|
-
default: "Columns"
|
|
77
|
-
});
|
|
78
74
|
var orderedVisibleColumns = useMemo(function () {
|
|
79
75
|
return visibleColumns.map(function (columnId) {
|
|
80
76
|
return availableColumns.find(function (_ref3) {
|
|
@@ -86,127 +82,132 @@ export var useDataGridColumnSelector = function useDataGridColumnSelector(availa
|
|
|
86
82
|
return column != null;
|
|
87
83
|
});
|
|
88
84
|
}, [availableColumns, visibleColumns]);
|
|
89
|
-
var columnSelector =
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
anchorPosition: "downLeft",
|
|
96
|
-
panelPaddingSize: "s",
|
|
97
|
-
hasDragDrop: true,
|
|
98
|
-
button: ___EmotionJSX(EuiDataGridToolbarControl, {
|
|
99
|
-
badgeContent: numberOfHiddenFields > 0 ? "".concat(orderedVisibleColumns.length, "/").concat(availableColumns.length) : availableColumns.length,
|
|
100
|
-
iconType: "tableDensityNormal",
|
|
101
|
-
"data-test-subj": "dataGridColumnSelectorButton",
|
|
102
|
-
onClick: function onClick() {
|
|
103
|
-
return setIsOpen(!isOpen);
|
|
104
|
-
}
|
|
105
|
-
}, buttonText)
|
|
106
|
-
}, allowColumnHiding && ___EmotionJSX(EuiPopoverTitle, null, ___EmotionJSX(EuiI18n, {
|
|
107
|
-
tokens: ['euiColumnSelector.search', 'euiColumnSelector.searchcolumns'],
|
|
108
|
-
defaults: ['Search', 'Search columns']
|
|
109
|
-
}, function (_ref4) {
|
|
110
|
-
var _ref5 = _slicedToArray(_ref4, 2),
|
|
111
|
-
search = _ref5[0],
|
|
112
|
-
searchcolumns = _ref5[1];
|
|
113
|
-
return ___EmotionJSX(EuiFieldText, {
|
|
114
|
-
compressed: true,
|
|
115
|
-
placeholder: search,
|
|
116
|
-
"aria-label": searchcolumns,
|
|
117
|
-
value: columnSearchText,
|
|
118
|
-
onChange: function onChange(e) {
|
|
119
|
-
return setColumnSearchText(e.currentTarget.value);
|
|
85
|
+
var columnSelector = useMemo(function () {
|
|
86
|
+
return allowColumnHiding || allowColumnReorder ? ___EmotionJSX(EuiPopover, {
|
|
87
|
+
"data-test-subj": "dataGridColumnSelectorPopover",
|
|
88
|
+
isOpen: isOpen,
|
|
89
|
+
closePopover: function closePopover() {
|
|
90
|
+
return setIsOpen(false);
|
|
120
91
|
},
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
}, ___EmotionJSX(EuiFlexGroup, {
|
|
144
|
-
responsive: false,
|
|
145
|
-
gutterSize: "s",
|
|
146
|
-
alignItems: "center"
|
|
147
|
-
}, allowColumnHiding && ___EmotionJSX(EuiFlexItem, {
|
|
148
|
-
grow: false
|
|
149
|
-
}, ___EmotionJSX(EuiSwitch, {
|
|
150
|
-
name: id,
|
|
151
|
-
label: displayValues[id] || id,
|
|
152
|
-
showLabel: false,
|
|
153
|
-
checked: visibleColumnIds.has(id),
|
|
92
|
+
anchorPosition: "downLeft",
|
|
93
|
+
panelPaddingSize: "s",
|
|
94
|
+
hasDragDrop: true,
|
|
95
|
+
button: ___EmotionJSX(EuiDataGridToolbarControl, {
|
|
96
|
+
badgeContent: numberOfHiddenFields > 0 ? "".concat(orderedVisibleColumns.length, "/").concat(availableColumns.length) : availableColumns.length,
|
|
97
|
+
iconType: "tableDensityNormal",
|
|
98
|
+
"data-test-subj": "dataGridColumnSelectorButton",
|
|
99
|
+
onClick: function onClick() {
|
|
100
|
+
return setIsOpen(!isOpen);
|
|
101
|
+
}
|
|
102
|
+
}, ___EmotionJSX(EuiI18n, {
|
|
103
|
+
token: "euiColumnSelector.button",
|
|
104
|
+
default: "Columns"
|
|
105
|
+
}))
|
|
106
|
+
}, allowColumnHiding && ___EmotionJSX(EuiPopoverTitle, null, ___EmotionJSX(EuiI18n, {
|
|
107
|
+
tokens: ['euiColumnSelector.search', 'euiColumnSelector.searchcolumns'],
|
|
108
|
+
defaults: ['Search', 'Search columns']
|
|
109
|
+
}, function (_ref4) {
|
|
110
|
+
var _ref5 = _slicedToArray(_ref4, 2),
|
|
111
|
+
search = _ref5[0],
|
|
112
|
+
searchcolumns = _ref5[1];
|
|
113
|
+
return ___EmotionJSX(EuiFieldText, {
|
|
154
114
|
compressed: true,
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
});
|
|
161
|
-
setVisibleColumns(nextVisibleColumns);
|
|
115
|
+
placeholder: search,
|
|
116
|
+
"aria-label": searchcolumns,
|
|
117
|
+
value: columnSearchText,
|
|
118
|
+
onChange: function onChange(e) {
|
|
119
|
+
return setColumnSearchText(e.currentTarget.value);
|
|
162
120
|
},
|
|
163
|
-
"data-test-subj": "
|
|
164
|
-
})
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
})
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
121
|
+
"data-test-subj": "dataGridColumnSelectorSearch"
|
|
122
|
+
});
|
|
123
|
+
})), ___EmotionJSX(EuiDragDropContext, {
|
|
124
|
+
onDragEnd: onDragEnd
|
|
125
|
+
}, ___EmotionJSX(EuiDroppable, {
|
|
126
|
+
droppableId: "columnOrder",
|
|
127
|
+
isDropDisabled: !isDragEnabled,
|
|
128
|
+
className: "euiDataGrid__controlScroll"
|
|
129
|
+
}, ___EmotionJSX(React.Fragment, null, filteredColumns.map(function (id, index) {
|
|
130
|
+
return ___EmotionJSX(EuiDraggable, {
|
|
131
|
+
key: id,
|
|
132
|
+
draggableId: id,
|
|
133
|
+
index: index,
|
|
134
|
+
isDragDisabled: !isDragEnabled,
|
|
135
|
+
hasInteractiveChildren: true,
|
|
136
|
+
customDragHandle: true
|
|
137
|
+
}, function (provided, state) {
|
|
138
|
+
return ___EmotionJSX("div", {
|
|
139
|
+
className: classNames('euiDataGridColumnSelector__item', {
|
|
140
|
+
'euiDataGridColumnSelector__item-isDragging': state.isDragging
|
|
141
|
+
}),
|
|
142
|
+
"data-test-subj": "dataGridColumnSelectorColumnItem-".concat(id)
|
|
143
|
+
}, ___EmotionJSX(EuiFlexGroup, {
|
|
144
|
+
responsive: false,
|
|
145
|
+
gutterSize: "s",
|
|
146
|
+
alignItems: "center"
|
|
147
|
+
}, allowColumnHiding && ___EmotionJSX(EuiFlexItem, {
|
|
148
|
+
grow: false
|
|
149
|
+
}, ___EmotionJSX(EuiSwitch, {
|
|
150
|
+
name: id,
|
|
151
|
+
label: displayValues[id] || id,
|
|
152
|
+
showLabel: false,
|
|
153
|
+
checked: visibleColumnIds.has(id),
|
|
154
|
+
compressed: true,
|
|
155
|
+
className: "euiSwitch--mini",
|
|
156
|
+
onChange: function onChange(event) {
|
|
157
|
+
var checked = event.target.checked;
|
|
158
|
+
var nextVisibleColumns = sortedColumns.filter(function (columnId) {
|
|
159
|
+
return checked ? visibleColumnIds.has(columnId) || id === columnId : visibleColumnIds.has(columnId) && id !== columnId;
|
|
160
|
+
});
|
|
161
|
+
setVisibleColumns(nextVisibleColumns);
|
|
162
|
+
},
|
|
163
|
+
"data-test-subj": "dataGridColumnSelectorToggleColumnVisibility-".concat(id)
|
|
164
|
+
})), ___EmotionJSX(EuiFlexItem
|
|
165
|
+
// This extra column name flex item affords the column more grabbable real estate
|
|
166
|
+
// for mouse users, while hiding repetition for keyboard/screen reader users
|
|
167
|
+
, _extends({}, provided.dragHandleProps, {
|
|
168
|
+
"aria-hidden": true,
|
|
169
|
+
tabIndex: -1
|
|
170
|
+
}), ___EmotionJSX("span", {
|
|
171
|
+
className: "euiDataGridColumnSelector__itemLabel"
|
|
172
|
+
}, displayValues[id] || id)), isDragEnabled && ___EmotionJSX(EuiFlexItem, _extends({
|
|
173
|
+
grow: false
|
|
174
|
+
}, provided.dragHandleProps, {
|
|
175
|
+
"aria-label": dragHandleAriaLabel
|
|
176
|
+
}), ___EmotionJSX(EuiIcon, {
|
|
177
|
+
type: "grab",
|
|
178
|
+
color: "subdued"
|
|
179
|
+
}))));
|
|
180
|
+
});
|
|
181
|
+
})))), allowColumnHiding && ___EmotionJSX(EuiPopoverFooter, null, ___EmotionJSX(EuiFlexGroup, {
|
|
182
|
+
gutterSize: "s",
|
|
183
|
+
responsive: false,
|
|
184
|
+
justifyContent: "spaceBetween"
|
|
185
|
+
}, ___EmotionJSX(EuiFlexItem, {
|
|
186
|
+
grow: false
|
|
187
|
+
}, ___EmotionJSX(EuiButtonEmpty, {
|
|
188
|
+
size: "xs",
|
|
189
|
+
flush: "left",
|
|
190
|
+
onClick: function onClick() {
|
|
191
|
+
return setVisibleColumns(sortedColumns);
|
|
192
|
+
},
|
|
193
|
+
"data-test-subj": "dataGridColumnSelectorShowAllButton"
|
|
194
|
+
}, ___EmotionJSX(EuiI18n, {
|
|
195
|
+
token: "euiColumnSelector.selectAll",
|
|
196
|
+
default: "Show all"
|
|
197
|
+
}))), ___EmotionJSX(EuiFlexItem, {
|
|
198
|
+
grow: false
|
|
199
|
+
}, ___EmotionJSX(EuiButtonEmpty, {
|
|
200
|
+
size: "xs",
|
|
201
|
+
flush: "right",
|
|
202
|
+
onClick: function onClick() {
|
|
203
|
+
return setVisibleColumns([]);
|
|
204
|
+
},
|
|
205
|
+
"data-test-subj": "dataGridColumnSelectorHideAllButton"
|
|
206
|
+
}, ___EmotionJSX(EuiI18n, {
|
|
207
|
+
token: "euiColumnSelector.hideAll",
|
|
208
|
+
default: "Hide all"
|
|
209
|
+
})))))) : null;
|
|
210
|
+
}, [availableColumns.length, numberOfHiddenFields, orderedVisibleColumns.length, allowColumnHiding, allowColumnReorder, isOpen, columnSearchText, displayValues, visibleColumnIds, sortedColumns, setVisibleColumns, setIsOpen, onDragEnd, isDragEnabled, dragHandleAriaLabel, filteredColumns]);
|
|
210
211
|
|
|
211
212
|
/**
|
|
212
213
|
* Used for moving columns left/right, available in the headers actions menu
|
|
@@ -222,5 +223,7 @@ export var useDataGridColumnSelector = function useDataGridColumnSelector(availa
|
|
|
222
223
|
nextSortedColumns.splice(moveToIdx, 0, fromColId);
|
|
223
224
|
setColumns(nextSortedColumns);
|
|
224
225
|
}, [setColumns, sortedColumns]);
|
|
225
|
-
return
|
|
226
|
+
return useMemo(function () {
|
|
227
|
+
return [columnSelector, orderedVisibleColumns, setVisibleColumns, switchColumnPos];
|
|
228
|
+
}, [columnSelector, orderedVisibleColumns, setVisibleColumns, switchColumnPos]);
|
|
226
229
|
};
|