@elastic/eui 89.1.0 → 91.0.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.js +1 -15
- package/dist/eui_charts_theme.js.map +1 -1
- package/dist/eui_theme_dark.css +114 -547
- package/dist/eui_theme_dark.min.css +1 -1
- package/dist/eui_theme_light.css +114 -547
- package/dist/eui_theme_light.min.css +1 -1
- package/es/components/accessibility/skip_link/skip_link.js +1 -2
- package/es/components/accordion/accordion.js +40 -4
- package/es/components/accordion/accordion_children/accordion_children.js +10 -17
- package/es/components/basic_table/basic_table.js +60 -23
- package/es/components/basic_table/collapsed_item_actions.js +1 -1
- package/es/components/basic_table/in_memory_table.js +18 -4
- package/es/components/breadcrumbs/breadcrumb.js +5 -5
- package/es/components/breadcrumbs/breadcrumbs.js +5 -5
- package/es/components/button/button.js +17 -45
- package/es/components/button/button_display/_button_display.js +1 -1
- package/es/components/button/button_empty/button_empty.js +30 -47
- package/es/components/button/button_group/button_group.js +8 -10
- package/es/components/button/button_group/button_group_button.js +8 -51
- package/es/components/button/button_group/button_group_button.styles.js +2 -12
- package/es/components/button/button_icon/button_icon.js +26 -43
- package/es/components/card/card.js +1 -6
- package/es/components/card/card_select/card_select.js +1 -6
- package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +8 -0
- package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
- package/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
- package/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +26 -7
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +162 -0
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
- package/es/components/collapsible_nav_beta/context.js +1 -0
- package/es/components/combo_box/combo_box.js +7 -5
- package/es/components/combo_box/combo_box_input/combo_box_input.js +107 -65
- package/es/components/combo_box/combo_box_input/combo_box_pill.js +8 -18
- package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
- package/es/components/combo_box/utils.js +23 -0
- package/es/components/comment_list/comment_event.js +31 -19
- package/es/components/comment_list/comment_event.styles.js +26 -24
- package/es/components/context_menu/context_menu.js +28 -22
- package/es/components/context_menu/context_menu.styles.js +26 -0
- package/es/components/context_menu/context_menu_item.js +95 -125
- package/es/components/context_menu/context_menu_item.styles.js +82 -0
- package/es/components/context_menu/context_menu_panel.a11y.js +4 -2
- package/es/components/context_menu/context_menu_panel.js +32 -61
- package/es/components/context_menu/context_menu_panel.styles.js +40 -0
- package/es/components/control_bar/control_bar.js +33 -28
- package/es/components/datagrid/body/data_grid_body.js +6 -7
- package/es/components/datagrid/body/data_grid_body_custom.js +6 -7
- package/es/components/datagrid/body/data_grid_body_virtualized.js +6 -7
- package/es/components/datagrid/body/data_grid_cell.js +12 -13
- package/es/components/datagrid/body/data_grid_row_manager.js +28 -9
- package/es/components/datagrid/body/header/data_grid_header_cell.js +7 -8
- package/es/components/datagrid/body/header/data_grid_header_row.js +6 -7
- package/es/components/datagrid/controls/column_selector.js +5 -6
- package/es/components/datagrid/controls/column_sorting.js +6 -9
- package/es/components/datagrid/controls/display_selector.js +21 -16
- package/es/components/datagrid/data_grid.js +3 -865
- package/es/components/datagrid/utils/in_memory.js +6 -7
- package/es/components/date_picker/auto_refresh/auto_refresh.js +1 -2
- package/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +92 -26
- package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
- package/es/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
- package/es/components/date_picker/super_date_picker/super_date_picker.js +19 -0
- package/es/components/facet/facet_button.js +1 -1
- package/es/components/filter_group/filter_group.styles.js +1 -1
- package/es/components/form/field_number/field_number.js +13 -9
- package/es/components/form/field_password/field_password.js +4 -7
- package/es/components/form/range/dual_range.js +110 -85
- package/es/components/form/range/range.js +47 -40
- package/es/components/form/range/range_track.js +6 -20
- package/es/components/form/range/utils.js +1 -2
- package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +5 -5
- package/es/components/header/header_links/header_link.js +1 -6
- package/es/components/header/header_links/header_links.js +5 -5
- package/es/components/header/header_section/header_section_item_button.js +1 -6
- package/es/components/i18n/i18n.js +1 -0
- package/es/components/list_group/list_group.js +1 -2
- package/es/components/list_group/list_group_item.js +7 -5
- package/es/components/list_group/list_group_item_extra_action.js +1 -2
- package/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
- package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
- package/es/components/modal/confirm_modal.js +1 -1
- package/es/components/notification/notification_event.js +1 -6
- package/es/components/notification/notification_event_read_button.js +1 -2
- package/es/components/page/index.js +1 -4
- package/es/components/page/page_header/page_header_content.js +5 -5
- package/es/components/pagination/pagination_button.js +1 -6
- package/es/components/popover/input_popover.js +27 -12
- package/es/components/popover/popover.js +15 -27
- package/es/components/popover/popover_arrow/_popover_arrow.styles.js +2 -4
- package/es/components/popover/popover_panel/_popover_panel.js +2 -6
- package/es/components/popover/popover_panel/_popover_panel.styles.js +6 -1
- package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +13 -11
- package/es/components/tabs/tab.js +1 -1
- package/es/components/toast/global_toast_list.js +11 -1
- package/es/components/tour/tour_step.js +5 -5
- package/es/global_styling/mixins/_states.js +4 -1
- package/es/services/color/eui_palettes.js +0 -6
- package/es/services/color/index.js +1 -1
- package/es/services/hooks/useCombinedRefs.js +16 -9
- package/es/services/index.js +1 -2
- package/es/test/rtl/component_helpers.d.ts +2 -0
- package/es/test/rtl/component_helpers.js +40 -1
- package/eui.d.ts +294 -369
- package/i18ntokens.json +302 -248
- package/lib/components/accessibility/skip_link/skip_link.js +1 -2
- package/lib/components/accordion/accordion.js +40 -4
- package/lib/components/accordion/accordion_children/accordion_children.js +8 -15
- package/lib/components/basic_table/basic_table.js +60 -23
- package/lib/components/basic_table/collapsed_item_actions.js +1 -1
- package/lib/components/basic_table/in_memory_table.js +18 -4
- package/lib/components/breadcrumbs/breadcrumb.js +5 -5
- package/lib/components/button/button.js +24 -51
- package/lib/components/button/button_display/_button_display.js +1 -1
- package/lib/components/button/button_empty/button_empty.js +29 -46
- package/lib/components/button/button_group/button_group.js +7 -9
- package/lib/components/button/button_group/button_group_button.js +8 -51
- package/lib/components/button/button_group/button_group_button.styles.js +2 -12
- package/lib/components/button/button_icon/button_icon.js +25 -42
- package/lib/components/card/card.js +1 -6
- package/lib/components/card/card_select/card_select.js +1 -6
- package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +8 -0
- package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
- package/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
- package/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +25 -6
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +169 -0
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
- package/lib/components/collapsible_nav_beta/context.js +1 -0
- package/lib/components/combo_box/combo_box.js +7 -5
- package/lib/components/combo_box/combo_box_input/combo_box_input.js +107 -65
- package/lib/components/combo_box/combo_box_input/combo_box_pill.js +8 -18
- package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
- package/lib/components/combo_box/utils.js +31 -0
- package/lib/components/comment_list/comment_event.js +33 -18
- package/lib/components/comment_list/comment_event.styles.js +28 -25
- package/lib/components/context_menu/context_menu.js +31 -24
- package/lib/components/context_menu/context_menu.styles.js +34 -0
- package/lib/components/context_menu/context_menu_item.js +102 -133
- package/lib/components/context_menu/context_menu_item.styles.js +87 -0
- package/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
- package/lib/components/context_menu/context_menu_panel.js +35 -63
- package/lib/components/context_menu/context_menu_panel.styles.js +46 -0
- package/lib/components/control_bar/control_bar.js +28 -23
- package/lib/components/datagrid/body/data_grid_body.js +6 -7
- package/lib/components/datagrid/body/data_grid_body_custom.js +6 -7
- package/lib/components/datagrid/body/data_grid_body_virtualized.js +6 -7
- package/lib/components/datagrid/body/data_grid_cell.js +12 -13
- package/lib/components/datagrid/body/data_grid_row_manager.js +33 -16
- package/lib/components/datagrid/body/header/data_grid_header_cell.js +7 -8
- package/lib/components/datagrid/body/header/data_grid_header_row.js +6 -7
- package/lib/components/datagrid/controls/column_selector.js +5 -6
- package/lib/components/datagrid/controls/column_sorting.js +5 -8
- package/lib/components/datagrid/controls/display_selector.js +21 -16
- package/lib/components/datagrid/data_grid.js +2 -864
- package/lib/components/datagrid/utils/in_memory.js +6 -7
- package/lib/components/date_picker/auto_refresh/auto_refresh.js +1 -2
- package/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +91 -26
- package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
- package/lib/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
- package/lib/components/date_picker/super_date_picker/super_date_picker.js +19 -0
- package/lib/components/facet/facet_button.js +1 -1
- package/lib/components/filter_group/filter_group.styles.js +1 -1
- package/lib/components/form/field_number/field_number.js +12 -8
- package/lib/components/form/field_password/field_password.js +4 -7
- package/lib/components/form/range/dual_range.js +110 -85
- package/lib/components/form/range/range.js +47 -40
- package/lib/components/form/range/range_track.js +5 -19
- package/lib/components/form/range/utils.js +1 -2
- package/lib/components/header/header_links/header_link.js +1 -6
- package/lib/components/header/header_section/header_section_item_button.js +1 -6
- package/lib/components/i18n/i18n.js +1 -0
- package/lib/components/list_group/list_group.js +1 -2
- package/lib/components/list_group/list_group_item.js +7 -5
- package/lib/components/list_group/list_group_item_extra_action.js +1 -2
- package/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
- package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
- package/lib/components/modal/confirm_modal.js +1 -1
- package/lib/components/notification/notification_event.js +1 -6
- package/lib/components/notification/notification_event_read_button.js +1 -2
- package/lib/components/page/index.js +1 -40
- package/lib/components/popover/input_popover.js +27 -12
- package/lib/components/popover/popover.js +29 -35
- package/lib/components/popover/popover_arrow/_popover_arrow.styles.js +1 -3
- package/lib/components/popover/popover_panel/_popover_panel.js +2 -1
- package/lib/components/popover/popover_panel/_popover_panel.styles.js +6 -1
- package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +12 -10
- package/lib/components/tabs/tab.js +1 -1
- package/lib/components/toast/global_toast_list.js +11 -1
- package/lib/global_styling/mixins/_states.js +4 -1
- package/lib/services/color/eui_palettes.js +1 -8
- package/lib/services/color/index.js +0 -7
- package/lib/services/hooks/useCombinedRefs.js +19 -10
- package/lib/services/index.js +0 -15
- package/lib/test/rtl/component_helpers.d.ts +2 -0
- package/lib/test/rtl/component_helpers.js +41 -3
- package/optimize/es/components/accordion/accordion.js +32 -4
- package/optimize/es/components/accordion/accordion_children/accordion_children.js +8 -16
- package/optimize/es/components/basic_table/basic_table.js +42 -19
- package/optimize/es/components/button/button.js +15 -33
- package/optimize/es/components/button/button_empty/button_empty.js +29 -41
- package/optimize/es/components/button/button_group/button_group.js +7 -8
- package/optimize/es/components/button/button_group/button_group_button.js +6 -38
- package/optimize/es/components/button/button_group/button_group_button.styles.js +2 -12
- package/optimize/es/components/button/button_icon/button_icon.js +25 -37
- package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
- package/optimize/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
- package/optimize/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +8 -3
- package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
- package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +64 -0
- package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +21 -10
- package/optimize/es/components/collapsible_nav_beta/context.js +1 -0
- package/optimize/es/components/combo_box/combo_box.js +7 -5
- package/optimize/es/components/combo_box/combo_box_input/combo_box_input.js +107 -65
- package/optimize/es/components/combo_box/combo_box_input/combo_box_pill.js +8 -17
- package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
- package/optimize/es/components/combo_box/utils.js +23 -0
- package/optimize/es/components/comment_list/comment_event.js +31 -19
- package/optimize/es/components/comment_list/comment_event.styles.js +26 -24
- package/optimize/es/components/context_menu/context_menu.js +25 -19
- package/optimize/es/components/context_menu/context_menu.styles.js +26 -0
- package/optimize/es/components/context_menu/context_menu_item.js +94 -119
- package/optimize/es/components/context_menu/context_menu_item.styles.js +82 -0
- package/optimize/es/components/context_menu/context_menu_panel.a11y.js +4 -2
- package/optimize/es/components/context_menu/context_menu_panel.js +29 -58
- package/optimize/es/components/context_menu/context_menu_panel.styles.js +40 -0
- package/optimize/es/components/control_bar/control_bar.js +28 -23
- package/optimize/es/components/datagrid/body/data_grid_row_manager.js +23 -9
- package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +1 -1
- package/optimize/es/components/datagrid/controls/column_selector.js +5 -6
- package/optimize/es/components/datagrid/controls/column_sorting.js +6 -9
- package/optimize/es/components/datagrid/controls/display_selector.js +21 -16
- package/optimize/es/components/datagrid/data_grid.js +3 -3
- package/optimize/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +87 -26
- package/optimize/es/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
- package/optimize/es/components/filter_group/filter_group.styles.js +1 -1
- package/optimize/es/components/form/field_number/field_number.js +13 -9
- package/optimize/es/components/form/field_password/field_password.js +4 -7
- package/optimize/es/components/form/range/dual_range.js +110 -85
- package/optimize/es/components/form/range/range.js +47 -40
- package/optimize/es/components/form/range/range_track.js +5 -14
- package/optimize/es/components/form/range/utils.js +1 -2
- package/optimize/es/components/i18n/i18n.js +1 -0
- package/optimize/es/components/list_group/list_group_item.js +6 -3
- package/optimize/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
- package/optimize/es/components/page/index.js +1 -4
- package/optimize/es/components/popover/input_popover.js +27 -12
- package/optimize/es/components/popover/popover.js +10 -22
- package/optimize/es/components/popover/popover_arrow/_popover_arrow.styles.js +2 -4
- package/optimize/es/components/popover/popover_panel/_popover_panel.js +2 -1
- package/optimize/es/components/popover/popover_panel/_popover_panel.styles.js +6 -1
- package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +13 -11
- package/optimize/es/components/tabs/tab.js +1 -1
- package/optimize/es/components/toast/global_toast_list.js +1 -1
- package/optimize/es/global_styling/mixins/_states.js +4 -1
- package/optimize/es/services/color/eui_palettes.js +0 -6
- package/optimize/es/services/color/index.js +1 -1
- package/optimize/es/services/hooks/useCombinedRefs.js +16 -9
- package/optimize/es/services/index.js +1 -2
- package/optimize/es/test/rtl/component_helpers.d.ts +2 -0
- package/optimize/es/test/rtl/component_helpers.js +40 -1
- package/optimize/lib/components/accordion/accordion.js +32 -4
- package/optimize/lib/components/accordion/accordion_children/accordion_children.js +6 -14
- package/optimize/lib/components/basic_table/basic_table.js +42 -19
- package/optimize/lib/components/button/button.js +16 -34
- package/optimize/lib/components/button/button_empty/button_empty.js +28 -40
- package/optimize/lib/components/button/button_group/button_group.js +6 -7
- package/optimize/lib/components/button/button_group/button_group_button.js +6 -38
- package/optimize/lib/components/button/button_group/button_group_button.styles.js +2 -12
- package/optimize/lib/components/button/button_icon/button_icon.js +24 -36
- package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
- package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
- package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +7 -2
- package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
- package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +71 -0
- package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +21 -10
- package/optimize/lib/components/collapsible_nav_beta/context.js +1 -0
- package/optimize/lib/components/combo_box/combo_box.js +7 -5
- package/optimize/lib/components/combo_box/combo_box_input/combo_box_input.js +107 -65
- package/optimize/lib/components/combo_box/combo_box_input/combo_box_pill.js +8 -17
- package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
- package/optimize/lib/components/combo_box/utils.js +31 -0
- package/optimize/lib/components/comment_list/comment_event.js +33 -18
- package/optimize/lib/components/comment_list/comment_event.styles.js +28 -25
- package/optimize/lib/components/context_menu/context_menu.js +28 -21
- package/optimize/lib/components/context_menu/context_menu.styles.js +34 -0
- package/optimize/lib/components/context_menu/context_menu_item.js +101 -128
- package/optimize/lib/components/context_menu/context_menu_item.styles.js +87 -0
- package/optimize/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
- package/optimize/lib/components/context_menu/context_menu_panel.js +32 -60
- package/optimize/lib/components/context_menu/context_menu_panel.styles.js +47 -0
- package/optimize/lib/components/control_bar/control_bar.js +28 -23
- package/optimize/lib/components/datagrid/body/data_grid_row_manager.js +23 -8
- package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +1 -1
- package/optimize/lib/components/datagrid/controls/column_selector.js +5 -6
- package/optimize/lib/components/datagrid/controls/column_sorting.js +5 -8
- package/optimize/lib/components/datagrid/controls/display_selector.js +21 -16
- package/optimize/lib/components/datagrid/data_grid.js +2 -2
- package/optimize/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +86 -26
- package/optimize/lib/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
- package/optimize/lib/components/filter_group/filter_group.styles.js +1 -1
- package/optimize/lib/components/form/field_number/field_number.js +12 -8
- package/optimize/lib/components/form/field_password/field_password.js +5 -8
- package/optimize/lib/components/form/range/dual_range.js +110 -85
- package/optimize/lib/components/form/range/range.js +47 -40
- package/optimize/lib/components/form/range/range_track.js +4 -13
- package/optimize/lib/components/form/range/utils.js +1 -2
- package/optimize/lib/components/i18n/i18n.js +1 -0
- package/optimize/lib/components/list_group/list_group_item.js +6 -3
- package/optimize/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
- package/optimize/lib/components/page/index.js +1 -40
- package/optimize/lib/components/popover/input_popover.js +28 -13
- package/optimize/lib/components/popover/popover.js +24 -35
- package/optimize/lib/components/popover/popover_arrow/_popover_arrow.styles.js +1 -3
- package/optimize/lib/components/popover/popover_panel/_popover_panel.js +2 -1
- package/optimize/lib/components/popover/popover_panel/_popover_panel.styles.js +6 -1
- package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +12 -10
- package/optimize/lib/components/tabs/tab.js +1 -1
- package/optimize/lib/components/toast/global_toast_list.js +1 -1
- package/optimize/lib/global_styling/mixins/_states.js +4 -1
- package/optimize/lib/services/color/eui_palettes.js +1 -8
- package/optimize/lib/services/color/index.js +0 -7
- package/optimize/lib/services/hooks/useCombinedRefs.js +19 -10
- package/optimize/lib/services/index.js +0 -15
- package/optimize/lib/test/rtl/component_helpers.d.ts +2 -0
- package/optimize/lib/test/rtl/component_helpers.js +41 -3
- package/package.json +14 -14
- package/src/components/combo_box/_combo_box.scss +46 -14
- package/src/components/combo_box/combo_box_input/_combo_box_pill.scss +0 -17
- package/src/components/combo_box/combo_box_input/_index.scss +0 -2
- package/src/components/datagrid/_data_grid_data_row.scss +1 -3
- package/src/components/date_picker/super_date_picker/date_popover/_absolute_tab.scss +21 -0
- package/src/components/date_picker/super_date_picker/date_popover/_date_popover_content.scss +2 -1
- package/src/components/date_picker/super_date_picker/quick_select_popover/_quick_select_popover.scss +0 -4
- package/src/components/form/form_control_layout/_form_control_layout.scss +0 -1
- package/src/components/index.scss +0 -2
- package/src/global_styling/variables/_typography.scss +2 -2
- package/test-env/components/accessibility/skip_link/skip_link.js +1 -2
- package/test-env/components/accordion/accordion.js +40 -4
- package/test-env/components/accordion/accordion_children/accordion_children.js +8 -15
- package/test-env/components/basic_table/basic_table.js +60 -23
- package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
- package/test-env/components/basic_table/in_memory_table.js +18 -4
- package/test-env/components/breadcrumbs/breadcrumb.js +5 -5
- package/test-env/components/button/button.js +17 -40
- package/test-env/components/button/button_display/_button_display.js +1 -1
- package/test-env/components/button/button_empty/button_empty.js +29 -46
- package/test-env/components/button/button_group/button_group.js +7 -9
- package/test-env/components/button/button_group/button_group_button.js +8 -51
- package/test-env/components/button/button_group/button_group_button.styles.js +2 -12
- package/test-env/components/button/button_icon/button_icon.js +25 -42
- package/test-env/components/card/card.js +1 -6
- package/test-env/components/card/card_select/card_select.js +1 -6
- package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +8 -0
- package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
- package/test-env/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
- package/test-env/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +25 -6
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +168 -0
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
- package/test-env/components/collapsible_nav_beta/context.js +1 -0
- package/test-env/components/combo_box/combo_box.js +7 -5
- package/test-env/components/combo_box/combo_box_input/combo_box_input.js +107 -65
- package/test-env/components/combo_box/combo_box_input/combo_box_pill.js +8 -18
- package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +6 -6
- package/test-env/components/combo_box/utils.js +31 -0
- package/test-env/components/comment_list/comment_event.js +33 -18
- package/test-env/components/comment_list/comment_event.styles.js +28 -25
- package/test-env/components/context_menu/context_menu.js +31 -24
- package/test-env/components/context_menu/context_menu.styles.js +34 -0
- package/test-env/components/context_menu/context_menu_item.js +102 -129
- package/test-env/components/context_menu/context_menu_item.styles.js +87 -0
- package/test-env/components/context_menu/context_menu_panel.a11y.js +4 -2
- package/test-env/components/context_menu/context_menu_panel.js +35 -63
- package/test-env/components/context_menu/context_menu_panel.styles.js +47 -0
- package/test-env/components/control_bar/control_bar.js +28 -23
- package/test-env/components/datagrid/body/data_grid_body.js +6 -7
- package/test-env/components/datagrid/body/data_grid_body_custom.js +6 -7
- package/test-env/components/datagrid/body/data_grid_body_virtualized.js +6 -7
- package/test-env/components/datagrid/body/data_grid_cell.js +12 -13
- package/test-env/components/datagrid/body/data_grid_row_manager.js +23 -8
- package/test-env/components/datagrid/body/header/data_grid_header_cell.js +7 -8
- package/test-env/components/datagrid/body/header/data_grid_header_row.js +6 -7
- package/test-env/components/datagrid/controls/column_selector.js +5 -6
- package/test-env/components/datagrid/controls/column_sorting.js +5 -8
- package/test-env/components/datagrid/controls/display_selector.js +21 -16
- package/test-env/components/datagrid/data_grid.js +2 -864
- package/test-env/components/datagrid/utils/in_memory.js +6 -7
- package/test-env/components/date_picker/auto_refresh/auto_refresh.js +1 -2
- package/test-env/components/date_picker/super_date_picker/date_popover/absolute_tab.js +86 -26
- package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
- package/test-env/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +1 -2
- package/test-env/components/date_picker/super_date_picker/super_date_picker.js +19 -0
- package/test-env/components/facet/facet_button.js +1 -1
- package/test-env/components/filter_group/filter_group.styles.js +1 -1
- package/test-env/components/form/field_number/field_number.js +12 -8
- package/test-env/components/form/field_password/field_password.js +4 -7
- package/test-env/components/form/range/dual_range.js +110 -85
- package/test-env/components/form/range/range.js +47 -40
- package/test-env/components/form/range/range_track.js +5 -14
- package/test-env/components/form/range/utils.js +1 -2
- package/test-env/components/header/header_links/header_link.js +1 -6
- package/test-env/components/header/header_section/header_section_item_button.js +1 -6
- package/test-env/components/i18n/i18n.js +1 -0
- package/test-env/components/list_group/list_group.js +1 -2
- package/test-env/components/list_group/list_group_item.js +7 -5
- package/test-env/components/list_group/list_group_item_extra_action.js +1 -2
- package/test-env/components/list_group/list_group_item_extra_action.styles.js +1 -1
- package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
- package/test-env/components/modal/confirm_modal.js +1 -1
- package/test-env/components/notification/notification_event.js +1 -6
- package/test-env/components/notification/notification_event_read_button.js +1 -2
- package/test-env/components/page/index.js +1 -40
- package/test-env/components/popover/input_popover.js +27 -12
- package/test-env/components/popover/popover.js +29 -35
- package/test-env/components/popover/popover_arrow/_popover_arrow.styles.js +1 -3
- package/test-env/components/popover/popover_panel/_popover_panel.js +2 -1
- package/test-env/components/popover/popover_panel/_popover_panel.styles.js +6 -1
- package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +12 -10
- package/test-env/components/tabs/tab.js +1 -1
- package/test-env/components/toast/global_toast_list.js +11 -1
- package/test-env/global_styling/mixins/_states.js +4 -1
- package/test-env/services/color/eui_palettes.js +1 -8
- package/test-env/services/color/index.js +0 -7
- package/test-env/services/hooks/useCombinedRefs.js +19 -10
- package/test-env/services/index.js +0 -15
- package/test-env/test/rtl/component_helpers.js +41 -3
- package/es/components/page/page_content/index.js +0 -12
- package/es/components/page/page_content/page_content.js +0 -110
- package/es/components/page/page_content/page_content_body.js +0 -69
- package/es/components/page/page_content/page_content_header.js +0 -43
- package/es/components/page/page_content/page_content_header_section.js +0 -34
- package/es/components/page/page_side_bar/index.js +0 -9
- package/es/components/page/page_side_bar/page_side_bar.js +0 -60
- package/es/components/page/page_template.js +0 -591
- package/es/services/random.js +0 -94
- package/es/services/utils.js +0 -25
- package/es/test/patch_random.js +0 -18
- package/lib/components/page/page_content/index.js +0 -33
- package/lib/components/page/page_content/page_content.js +0 -117
- package/lib/components/page/page_content/page_content_body.js +0 -77
- package/lib/components/page/page_content/page_content_header.js +0 -50
- package/lib/components/page/page_content/page_content_header_section.js +0 -41
- package/lib/components/page/page_side_bar/index.js +0 -12
- package/lib/components/page/page_side_bar/page_side_bar.js +0 -67
- package/lib/components/page/page_template.js +0 -598
- package/lib/services/random.js +0 -100
- package/lib/services/utils.js +0 -35
- package/lib/test/patch_random.js +0 -25
- package/optimize/es/components/page/page_content/index.js +0 -12
- package/optimize/es/components/page/page_content/page_content.js +0 -45
- package/optimize/es/components/page/page_content/page_content_body.js +0 -45
- package/optimize/es/components/page/page_content/page_content_header.js +0 -30
- package/optimize/es/components/page/page_content/page_content_header_section.js +0 -26
- package/optimize/es/components/page/page_side_bar/index.js +0 -9
- package/optimize/es/components/page/page_side_bar/page_side_bar.js +0 -44
- package/optimize/es/components/page/page_template.js +0 -325
- package/optimize/es/services/random.js +0 -85
- package/optimize/es/services/utils.js +0 -25
- package/optimize/es/test/patch_random.js +0 -18
- package/optimize/lib/components/page/page_content/index.js +0 -33
- package/optimize/lib/components/page/page_content/page_content.js +0 -52
- package/optimize/lib/components/page/page_content/page_content_body.js +0 -53
- package/optimize/lib/components/page/page_content/page_content_header.js +0 -37
- package/optimize/lib/components/page/page_content/page_content_header_section.js +0 -33
- package/optimize/lib/components/page/page_side_bar/index.js +0 -12
- package/optimize/lib/components/page/page_side_bar/page_side_bar.js +0 -51
- package/optimize/lib/components/page/page_template.js +0 -332
- package/optimize/lib/services/random.js +0 -91
- package/optimize/lib/services/utils.js +0 -35
- package/optimize/lib/test/patch_random.js +0 -25
- package/src/components/combo_box/combo_box_input/_combo_box_input.scss +0 -12
- package/src/components/combo_box/combo_box_input/_combo_box_placeholder.scss +0 -11
- package/src/components/context_menu/_context_menu.scss +0 -27
- package/src/components/context_menu/_context_menu_item.scss +0 -65
- package/src/components/context_menu/_context_menu_panel.scss +0 -101
- package/src/components/context_menu/_index.scss +0 -3
- package/src/components/page/_index.scss +0 -2
- package/src/components/page/page_content/_index.scss +0 -4
- package/src/components/page/page_content/_page_content.scss +0 -25
- package/src/components/page/page_content/_page_content_body.scss +0 -19
- package/src/components/page/page_content/_page_content_header.scss +0 -20
- package/src/components/page/page_content/_page_content_header_section.scss +0 -17
- package/src/components/page/page_side_bar/_index.scss +0 -1
- package/src/components/page/page_side_bar/_page_side_bar.scss +0 -31
- package/test-env/components/page/page_content/index.js +0 -33
- package/test-env/components/page/page_content/page_content.js +0 -116
- package/test-env/components/page/page_content/page_content_body.js +0 -73
- package/test-env/components/page/page_content/page_content_header.js +0 -49
- package/test-env/components/page/page_content/page_content_header_section.js +0 -40
- package/test-env/components/page/page_side_bar/index.js +0 -12
- package/test-env/components/page/page_side_bar/page_side_bar.js +0 -66
- package/test-env/components/page/page_template.js +0 -594
- package/test-env/services/random.js +0 -91
- package/test-env/services/utils.js +0 -35
- package/test-env/test/patch_random.js +0 -25
package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js
ADDED
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.EuiCollapsibleNavGroup = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
12
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
|
+
var _services = require("../../../services");
|
|
14
|
+
var _collapsible_nav_item = require("./collapsible_nav_item");
|
|
15
|
+
var _collapsible_nav_item2 = require("./collapsible_nav_item.styles");
|
|
16
|
+
var _collapsible_nav_link = require("./collapsible_nav_link");
|
|
17
|
+
var _react2 = require("@emotion/react");
|
|
18
|
+
var _excluded = ["className", "header", "href", "items", "isSubItem", "isSelected", "linkProps", "children"];
|
|
19
|
+
/*
|
|
20
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
21
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
22
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
23
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
24
|
+
* Side Public License, v 1.
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* Internal nav group. Should look the same as an open accordion,
|
|
28
|
+
* but not be toggle-able to close.
|
|
29
|
+
*
|
|
30
|
+
* Yes, I know this is the 3rd component in EUI named EuiCollapsibleNavGroup :|
|
|
31
|
+
* I'm waiting for serverless's design architecture to settle before untangling
|
|
32
|
+
* this pasghetti
|
|
33
|
+
*/
|
|
34
|
+
var EuiCollapsibleNavGroup = function EuiCollapsibleNavGroup(_ref) {
|
|
35
|
+
var className = _ref.className,
|
|
36
|
+
header = _ref.header,
|
|
37
|
+
href = _ref.href,
|
|
38
|
+
items = _ref.items,
|
|
39
|
+
isSubItem = _ref.isSubItem,
|
|
40
|
+
isSelected = _ref.isSelected,
|
|
41
|
+
linkProps = _ref.linkProps,
|
|
42
|
+
_children = _ref.children,
|
|
43
|
+
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
44
|
+
var classes = (0, _classnames.default)('euiCollapsibleNavGroup', className);
|
|
45
|
+
var euiTheme = (0, _services.useEuiTheme)();
|
|
46
|
+
var sharedStyles = (0, _collapsible_nav_item2.euiCollapsibleNavItemVariables)(euiTheme);
|
|
47
|
+
var cssStyles = !isSubItem ? {
|
|
48
|
+
css: {
|
|
49
|
+
margin: sharedStyles.padding,
|
|
50
|
+
label: 'euiCollapsibleNavGroup-isTopItem'
|
|
51
|
+
}
|
|
52
|
+
} : undefined; // Prevents Emotion from generating a selector if no styles need to be applied
|
|
53
|
+
|
|
54
|
+
var labelledById = (0, _services.useGeneratedHtmlId)();
|
|
55
|
+
return (0, _react2.jsx)("div", (0, _extends2.default)({
|
|
56
|
+
className: classes
|
|
57
|
+
}, cssStyles, rest), (0, _react2.jsx)(_collapsible_nav_link.EuiCollapsibleNavLink, (0, _extends2.default)({
|
|
58
|
+
href: href,
|
|
59
|
+
id: labelledById
|
|
60
|
+
}, linkProps, {
|
|
61
|
+
isSelected: isSelected,
|
|
62
|
+
isSubItem: isSubItem,
|
|
63
|
+
isInteractive: !!(href || rest.onClick || linkProps !== null && linkProps !== void 0 && linkProps.onClick)
|
|
64
|
+
}), header), (0, _react2.jsx)(_collapsible_nav_item.EuiCollapsibleNavSubItems, {
|
|
65
|
+
items: items,
|
|
66
|
+
isSubItem: isSubItem,
|
|
67
|
+
className: "euiCollapsibleNavGroup__children",
|
|
68
|
+
role: "group",
|
|
69
|
+
"aria-labelledby": (linkProps === null || linkProps === void 0 ? void 0 : linkProps.id) || labelledById
|
|
70
|
+
}));
|
|
71
|
+
};
|
|
72
|
+
exports.EuiCollapsibleNavGroup = EuiCollapsibleNavGroup;
|
|
73
|
+
EuiCollapsibleNavGroup.propTypes = {
|
|
74
|
+
className: _propTypes.default.string,
|
|
75
|
+
"aria-label": _propTypes.default.string,
|
|
76
|
+
"data-test-subj": _propTypes.default.string,
|
|
77
|
+
css: _propTypes.default.any,
|
|
78
|
+
/**
|
|
79
|
+
* The nav item link.
|
|
80
|
+
* If not included, and no `onClick` is specified, the nav item
|
|
81
|
+
* will render as an non-interactive `<span>`.
|
|
82
|
+
*/
|
|
83
|
+
href: _propTypes.default.string,
|
|
84
|
+
/**
|
|
85
|
+
* If set to false, will (visually) render an always-open accordion that cannot
|
|
86
|
+
* be toggled closed. Ignored if `items` is not passed.
|
|
87
|
+
*
|
|
88
|
+
* @default true
|
|
89
|
+
*/
|
|
90
|
+
isCollapsible: _propTypes.default.bool,
|
|
91
|
+
/**
|
|
92
|
+
* If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
|
|
93
|
+
*/
|
|
94
|
+
linkProps: _propTypes.default.any,
|
|
95
|
+
/**
|
|
96
|
+
* Highlights whether an item is currently selected, e.g.
|
|
97
|
+
* if the user is on the same page as the nav link
|
|
98
|
+
*/
|
|
99
|
+
isSelected: _propTypes.default.bool,
|
|
100
|
+
/**
|
|
101
|
+
* Determines whether the item should render as a top-level nav item
|
|
102
|
+
* or a nested nav subitem. Set internally by EUI
|
|
103
|
+
*/
|
|
104
|
+
isSubItem: _propTypes.default.bool,
|
|
105
|
+
header: _propTypes.default.node.isRequired,
|
|
106
|
+
items: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
107
|
+
/**
|
|
108
|
+
* Required text to render as the nav item title
|
|
109
|
+
*/
|
|
110
|
+
title: _propTypes.default.string,
|
|
111
|
+
/**
|
|
112
|
+
* Allows customizing the title element.
|
|
113
|
+
* Consider using a heading element for better accessibility.
|
|
114
|
+
* Defaults to an unsemantic `span` or `div`, depending on context.
|
|
115
|
+
*/
|
|
116
|
+
titleElement: _propTypes.default.oneOf(["h2", "h3", "h4", "h5", "h6", "span", "div"]),
|
|
117
|
+
/**
|
|
118
|
+
* Optional icon to render to the left of title content
|
|
119
|
+
*/
|
|
120
|
+
icon: _propTypes.default.oneOfType([_propTypes.default.oneOf(["accessibility", "addDataApp", "advancedSettingsApp", "agentApp", "aggregate", "analyzeEvent", "annotation", "apmApp", "apmTrace", "appSearchApp", "apps", "arrowDown", "arrowLeft", "arrowRight", "arrowUp", "arrowStart", "arrowEnd", "article", "asterisk", "at", "auditbeatApp", "beaker", "bell", "bellSlash", "beta", "bolt", "boxesHorizontal", "boxesVertical", "branch", "branchUser", "broom", "brush", "bug", "bullseye", "calendar", "canvasApp", "casesApp", "check", "checkInCircleFilled", "cheer", "classificationJob", "clock", "cloudDrizzle", "cloudStormy", "cloudSunny", "cluster", "codeApp", "color", "compute", "console", "consoleApp", "container", "continuityAbove", "continuityAboveBelow", "continuityBelow", "continuityWithin", "controlsHorizontal", "controlsVertical", "copy", "copyClipboard", "createAdvancedJob", "createMultiMetricJob", "createPopulationJob", "createSingleMetricJob", "cross", "crossClusterReplicationApp", "crosshairs", "currency", "cut", "dashboardApp", "dataVisualizer", "database", "desktop", "devToolsApp", "discoverApp", "discuss", "document", "documentEdit", "documentation", "documents", "dot", "dotInCircle", "doubleArrowLeft", "doubleArrowRight", "download", "editorAlignCenter", "editorAlignLeft", "editorAlignRight", "editorBold", "editorChecklist", "editorCodeBlock", "editorComment", "editorDistributeHorizontal", "editorDistributeVertical", "editorHeading", "editorItalic", "editorItemAlignBottom", "editorItemAlignCenter", "editorItemAlignLeft", "editorItemAlignMiddle", "editorItemAlignRight", "editorItemAlignTop", "editorLink", "editorOrderedList", "editorPositionBottomLeft", "editorPositionBottomRight", "editorPositionTopLeft", "editorPositionTopRight", "editorRedo", "editorStrike", "editorTable", "editorUnderline", "editorUndo", "editorUnorderedList", "email", "empty", "emsApp", "eql", "eraser", "error", "exit", "expand", "expandMini", "exportAction", "eye", "eyeClosed", "faceHappy", "faceNeutral", "faceSad", "filebeatApp", "filter", "filterExclude", "filterIgnore", "filterInclude", "filterInCircle", "flag", "fleetApp", "fold", "folderCheck", "folderClosed", "folderExclamation", "folderOpen", "frameNext", "framePrevious", "fullScreen", "fullScreenExit", "function", "gear", "gisApp", "glasses", "globe", "grab", "grabHorizontal", "grabOmnidirectional", "gradient", "graphApp", "grid", "grokApp", "heart", "heartbeatApp", "heatmap", "help", "home", "iInCircle", "image", "importAction", "indexClose", "indexEdit", "indexFlush", "indexManagementApp", "indexMapping", "indexOpen", "indexPatternApp", "indexRollupApp", "indexRuntime", "indexSettings", "indexTemporary", "infinity", "inputOutput", "inspect", "invert", "ip", "key", "keyboard", "kqlField", "kqlFunction", "kqlOperand", "kqlSelector", "kqlValue", "kubernetesNode", "kubernetesPod", "launch", "layers", "lensApp", "lettering", "lineDashed", "lineDotted", "lineSolid", "link", "list", "listAdd", "lock", "lockOpen", "logoAWS", "logoAWSMono", "logoAerospike", "logoApache", "logoAppSearch", "logoAzure", "logoAzureMono", "logoBeats", "logoBusinessAnalytics", "logoCeph", "logoCloud", "logoCloudEnterprise", "logoCode", "logoCodesandbox", "logoCouchbase", "logoDocker", "logoDropwizard", "logoElastic", "logoElasticStack", "logoElasticsearch", "logoEnterpriseSearch", "logoEtcd", "logoGCP", "logoGCPMono", "logoGithub", "logoGmail", "logoGolang", "logoGoogleG", "logoHAproxy", "logoIBM", "logoIBMMono", "logoKafka", "logoKibana", "logoKubernetes", "logoLogging", "logoLogstash", "logoMaps", "logoMemcached", "logoMetrics", "logoMongodb", "logoMySQL", "logoNginx", "logoObservability", "logoOsquery", "logoPhp", "logoPostgres", "logoPrometheus", "logoRabbitmq", "logoRedis", "logoSecurity", "logoSiteSearch", "logoSketch", "logoSlack", "logoUptime", "logoVulnerabilityManagement", "logoWebhook", "logoWindows", "logoWorkplaceSearch", "logsApp", "logstashFilter", "logstashIf", "logstashInput", "logstashOutput", "logstashQueue", "machineLearningApp", "magnet", "magnifyWithExclamation", "magnifyWithMinus", "magnifyWithPlus", "managementApp", "mapMarker", "memory", "menu", "menuDown", "menuLeft", "menuRight", "menuUp", "merge", "metricbeatApp", "metricsApp", "minimize", "minus", "minusInCircle", "minusInCircleFilled", "mobile", "monitoringApp", "moon", "namespace", "nested", "node", "notebookApp", "number", "offline", "online", "outlierDetectionJob", "package", "packetbeatApp", "pageSelect", "pagesSelect", "palette", "paperClip", "partial", "pause", "payment", "pencil", "percent", "pin", "pinFilled", "pipelineApp", "pivot", "play", "playFilled", "plus", "plusInCircle", "plusInCircleFilled", "popout", "push", "questionInCircle", "quote", "recentlyViewedApp", "refresh", "regressionJob", "reporter", "reportingApp", "returnKey", "save", "savedObjectsApp", "scale", "search", "searchProfilerApp", "securityAnalyticsApp", "securityApp", "securitySignal", "securitySignalDetected", "securitySignalResolved", "sessionViewer", "shard", "share", "snowflake", "sortAscending", "sortDescending", "sortDown", "sortLeft", "sortRight", "sortUp", "sortable", "spaces", "spacesApp", "sparkles", "sqlApp", "starEmpty", "starEmptySpace", "starFilled", "starFilledSpace", "starMinusEmpty", "starMinusFilled", "starPlusEmpty", "starPlusFilled", "stats", "stop", "stopFilled", "stopSlash", "storage", "string", "submodule", "sun", "swatchInput", "symlink", "tableDensityCompact", "tableDensityExpanded", "tableDensityNormal", "tableOfContents", "tag", "tear", "temperature", "timeline", "timelineWithArrow", "timelionApp", "timeRefresh", "timeslider", "training", "transitionLeftIn", "transitionLeftOut", "transitionTopIn", "transitionTopOut", "trash", "unfold", "unlink", "upgradeAssistantApp", "uptimeApp", "user", "userAvatar", "users", "usersRolesApp", "vector", "videoPlayer", "visArea", "visAreaStacked", "visBarHorizontal", "visBarHorizontalStacked", "visBarVertical", "visBarVerticalStacked", "visGauge", "visGoal", "visLine", "visMapCoordinate", "visMapRegion", "visMetric", "visPie", "visTable", "visTagCloud", "visText", "visTimelion", "visVega", "visVisualBuilder", "visualizeApp", "vulnerabilityManagementApp", "warning", "alert", "watchesApp", "wordWrap", "wordWrapDisabled", "workplaceSearchApp", "wrench", "tokenAlias", "tokenAnnotation", "tokenArray", "tokenBinary", "tokenBoolean", "tokenClass", "tokenCompletionSuggester", "tokenConstant", "tokenDate", "tokenElement", "tokenEnum", "tokenEnumMember", "tokenEvent", "tokenException", "tokenField", "tokenFile", "tokenFlattened", "tokenFunction", "tokenGeo", "tokenHistogram", "tokenInterface", "tokenIP", "tokenJoin", "tokenKey", "tokenKeyword", "tokenMethod", "tokenMetricCounter", "tokenMetricGauge", "tokenModule", "tokenNamespace", "tokenNested", "tokenNull", "tokenNumber", "tokenObject", "tokenOperator", "tokenPackage", "tokenParameter", "tokenPercolator", "tokenProperty", "tokenRange", "tokenRankFeature", "tokenRankFeatures", "tokenRepo", "tokenSearchType", "tokenShape", "tokenString", "tokenStruct", "tokenSymbol", "tokenTag", "tokenText", "tokenTokenCount", "tokenVariable", "tokenVectorDense", "tokenDenseVector", "tokenVectorSparse"]).isRequired, _propTypes.default.string.isRequired, _propTypes.default.elementType.isRequired]),
|
|
121
|
+
/**
|
|
122
|
+
* Optional props to pass to the title icon
|
|
123
|
+
*/
|
|
124
|
+
iconProps: _propTypes.default.any,
|
|
125
|
+
className: _propTypes.default.string,
|
|
126
|
+
"aria-label": _propTypes.default.string,
|
|
127
|
+
"data-test-subj": _propTypes.default.string,
|
|
128
|
+
css: _propTypes.default.any,
|
|
129
|
+
/**
|
|
130
|
+
* The nav item link.
|
|
131
|
+
* If not included, and no `onClick` is specified, the nav item
|
|
132
|
+
* will render as an non-interactive `<span>`.
|
|
133
|
+
*/
|
|
134
|
+
href: _propTypes.default.string,
|
|
135
|
+
/**
|
|
136
|
+
* Will render either an accordion or group of nested child item links.
|
|
137
|
+
*
|
|
138
|
+
* Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
|
|
139
|
+
* subitem content, pass an object with a `renderItem` callback.
|
|
140
|
+
*/
|
|
141
|
+
items: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
142
|
+
renderItem: _propTypes.default.func
|
|
143
|
+
}).isRequired),
|
|
144
|
+
/**
|
|
145
|
+
* If set to false, will (visually) render an always-open accordion that cannot
|
|
146
|
+
* be toggled closed. Ignored if `items` is not passed.
|
|
147
|
+
*
|
|
148
|
+
* @default true
|
|
149
|
+
*/
|
|
150
|
+
isCollapsible: _propTypes.default.bool,
|
|
151
|
+
/**
|
|
152
|
+
* If `items` is specified, and `isCollapsible` is not set to false, you may
|
|
153
|
+
* use this prop to pass any prop that `EuiAccordion` accepts, including props
|
|
154
|
+
* that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
|
|
155
|
+
*/
|
|
156
|
+
accordionProps: _propTypes.default.any,
|
|
157
|
+
/**
|
|
158
|
+
* If a `href` is specified, use this prop to pass any prop that `EuiLink` accepts
|
|
159
|
+
*/
|
|
160
|
+
linkProps: _propTypes.default.any,
|
|
161
|
+
/**
|
|
162
|
+
* Highlights whether an item is currently selected, e.g.
|
|
163
|
+
* if the user is on the same page as the nav link
|
|
164
|
+
*/
|
|
165
|
+
isSelected: _propTypes.default.bool,
|
|
166
|
+
renderItem: _propTypes.default.func
|
|
167
|
+
}).isRequired).isRequired
|
|
168
|
+
};
|
package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js
CHANGED
|
@@ -16,10 +16,11 @@ var _icon = require("../../icon");
|
|
|
16
16
|
var _context = require("../context");
|
|
17
17
|
var _collapsed = require("./collapsed");
|
|
18
18
|
var _collapsible_nav_accordion = require("./collapsible_nav_accordion");
|
|
19
|
+
var _collapsible_nav_group = require("./collapsible_nav_group");
|
|
19
20
|
var _collapsible_nav_link = require("./collapsible_nav_link");
|
|
20
21
|
var _collapsible_nav_item = require("./collapsible_nav_item.styles");
|
|
21
22
|
var _react2 = require("@emotion/react");
|
|
22
|
-
var _excluded = ["isSubItem", "title", "titleElement", "icon", "iconProps", "items", "accordionProps", "children"],
|
|
23
|
+
var _excluded = ["isSubItem", "title", "titleElement", "icon", "iconProps", "items", "isCollapsible", "accordionProps", "children"],
|
|
23
24
|
_excluded2 = ["renderItem", "className"],
|
|
24
25
|
_excluded3 = ["items", "isSubItem", "isGroup", "className"],
|
|
25
26
|
_excluded4 = ["className"];
|
|
@@ -45,6 +46,8 @@ var EuiCollapsibleNavItemDisplay = function EuiCollapsibleNavItemDisplay(_ref) {
|
|
|
45
46
|
icon = _ref.icon,
|
|
46
47
|
iconProps = _ref.iconProps,
|
|
47
48
|
items = _ref.items,
|
|
49
|
+
_ref$isCollapsible = _ref.isCollapsible,
|
|
50
|
+
isCollapsible = _ref$isCollapsible === void 0 ? true : _ref$isCollapsible,
|
|
48
51
|
accordionProps = _ref.accordionProps,
|
|
49
52
|
children = _ref.children,
|
|
50
53
|
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
@@ -54,15 +57,23 @@ var EuiCollapsibleNavItemDisplay = function EuiCollapsibleNavItemDisplay(_ref) {
|
|
|
54
57
|
icon: icon,
|
|
55
58
|
iconProps: iconProps
|
|
56
59
|
});
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
60
|
+
if (items && items.length > 0) {
|
|
61
|
+
if (isCollapsible) {
|
|
62
|
+
return (0, _react2.jsx)(_collapsible_nav_accordion.EuiCollapsibleNavAccordion, (0, _extends2.default)({
|
|
63
|
+
buttonContent: headerContent,
|
|
64
|
+
items: items,
|
|
65
|
+
accordionProps: accordionProps
|
|
66
|
+
}, props, {
|
|
67
|
+
isSubItem: isSubItem
|
|
68
|
+
}));
|
|
69
|
+
} else {
|
|
70
|
+
return (0, _react2.jsx)(_collapsible_nav_group.EuiCollapsibleNavGroup, (0, _extends2.default)({
|
|
71
|
+
header: headerContent,
|
|
72
|
+
items: items
|
|
73
|
+
}, props, {
|
|
74
|
+
isSubItem: isSubItem
|
|
75
|
+
}));
|
|
76
|
+
}
|
|
66
77
|
}
|
|
67
78
|
return (0, _react2.jsx)(_collapsible_nav_link.EuiCollapsibleNavLink, (0, _extends2.default)({}, props, {
|
|
68
79
|
// EuiLink ExclusiveUnion type shenanigans
|
|
@@ -105,7 +116,7 @@ EuiCollapsibleNavItemDisplay.propTypes = {
|
|
|
105
116
|
*/
|
|
106
117
|
href: _propTypes.default.string,
|
|
107
118
|
/**
|
|
108
|
-
*
|
|
119
|
+
* Will render either an accordion or group of nested child item links.
|
|
109
120
|
*
|
|
110
121
|
* Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
|
|
111
122
|
* subitem content, pass an object with a `renderItem` callback.
|
|
@@ -114,9 +125,16 @@ EuiCollapsibleNavItemDisplay.propTypes = {
|
|
|
114
125
|
renderItem: _propTypes.default.func
|
|
115
126
|
}).isRequired),
|
|
116
127
|
/**
|
|
117
|
-
* If
|
|
118
|
-
*
|
|
119
|
-
*
|
|
128
|
+
* If set to false, will (visually) render an always-open accordion that cannot
|
|
129
|
+
* be toggled closed. Ignored if `items` is not passed.
|
|
130
|
+
*
|
|
131
|
+
* @default true
|
|
132
|
+
*/
|
|
133
|
+
isCollapsible: _propTypes.default.bool,
|
|
134
|
+
/**
|
|
135
|
+
* If `items` is specified, and `isCollapsible` is not set to false, you may
|
|
136
|
+
* use this prop to pass any prop that `EuiAccordion` accepts, including props
|
|
137
|
+
* that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
|
|
120
138
|
*/
|
|
121
139
|
accordionProps: _propTypes.default.any,
|
|
122
140
|
/**
|
|
@@ -205,16 +223,23 @@ EuiCollapsibleNavSubItem.propTypes = {
|
|
|
205
223
|
*/
|
|
206
224
|
href: _propTypes.default.string,
|
|
207
225
|
/**
|
|
208
|
-
*
|
|
226
|
+
* Will render either an accordion or group of nested child item links.
|
|
209
227
|
*
|
|
210
228
|
* Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
|
|
211
229
|
* subitem content, pass an object with a `renderItem` callback.
|
|
212
230
|
*/
|
|
213
231
|
items: _propTypes.default.arrayOf(_propTypes.default.any.isRequired),
|
|
214
232
|
/**
|
|
215
|
-
* If
|
|
216
|
-
*
|
|
217
|
-
*
|
|
233
|
+
* If set to false, will (visually) render an always-open accordion that cannot
|
|
234
|
+
* be toggled closed. Ignored if `items` is not passed.
|
|
235
|
+
*
|
|
236
|
+
* @default true
|
|
237
|
+
*/
|
|
238
|
+
isCollapsible: _propTypes.default.bool,
|
|
239
|
+
/**
|
|
240
|
+
* If `items` is specified, and `isCollapsible` is not set to false, you may
|
|
241
|
+
* use this prop to pass any prop that `EuiAccordion` accepts, including props
|
|
242
|
+
* that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
|
|
218
243
|
*/
|
|
219
244
|
accordionProps: _propTypes.default.any,
|
|
220
245
|
/**
|
|
@@ -303,16 +328,23 @@ EuiCollapsibleNavSubItems.propTypes = {
|
|
|
303
328
|
*/
|
|
304
329
|
href: _propTypes.default.string,
|
|
305
330
|
/**
|
|
306
|
-
*
|
|
331
|
+
* Will render either an accordion or group of nested child item links.
|
|
307
332
|
*
|
|
308
333
|
* Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
|
|
309
334
|
* subitem content, pass an object with a `renderItem` callback.
|
|
310
335
|
*/
|
|
311
336
|
items: _propTypes.default.arrayOf(_propTypes.default.any.isRequired),
|
|
312
337
|
/**
|
|
313
|
-
* If
|
|
314
|
-
*
|
|
315
|
-
*
|
|
338
|
+
* If set to false, will (visually) render an always-open accordion that cannot
|
|
339
|
+
* be toggled closed. Ignored if `items` is not passed.
|
|
340
|
+
*
|
|
341
|
+
* @default true
|
|
342
|
+
*/
|
|
343
|
+
isCollapsible: _propTypes.default.bool,
|
|
344
|
+
/**
|
|
345
|
+
* If `items` is specified, and `isCollapsible` is not set to false, you may
|
|
346
|
+
* use this prop to pass any prop that `EuiAccordion` accepts, including props
|
|
347
|
+
* that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
|
|
316
348
|
*/
|
|
317
349
|
accordionProps: _propTypes.default.any,
|
|
318
350
|
/**
|
|
@@ -374,7 +406,7 @@ EuiCollapsibleNavItem.propTypes = {
|
|
|
374
406
|
*/
|
|
375
407
|
href: _propTypes.default.string,
|
|
376
408
|
/**
|
|
377
|
-
*
|
|
409
|
+
* Will render either an accordion or group of nested child item links.
|
|
378
410
|
*
|
|
379
411
|
* Accepts any #EuiCollapsibleNavItemProps. Or, to render completely custom
|
|
380
412
|
* subitem content, pass an object with a `renderItem` callback.
|
|
@@ -383,9 +415,16 @@ EuiCollapsibleNavItem.propTypes = {
|
|
|
383
415
|
renderItem: _propTypes.default.func
|
|
384
416
|
}).isRequired),
|
|
385
417
|
/**
|
|
386
|
-
* If
|
|
387
|
-
*
|
|
388
|
-
*
|
|
418
|
+
* If set to false, will (visually) render an always-open accordion that cannot
|
|
419
|
+
* be toggled closed. Ignored if `items` is not passed.
|
|
420
|
+
*
|
|
421
|
+
* @default true
|
|
422
|
+
*/
|
|
423
|
+
isCollapsible: _propTypes.default.bool,
|
|
424
|
+
/**
|
|
425
|
+
* If `items` is specified, and `isCollapsible` is not set to false, you may
|
|
426
|
+
* use this prop to pass any prop that `EuiAccordion` accepts, including props
|
|
427
|
+
* that control the toggled state of the accordion (e.g. `initialIsOpen`, `forceState`)
|
|
389
428
|
*/
|
|
390
429
|
accordionProps: _propTypes.default.any,
|
|
391
430
|
/**
|
|
@@ -411,14 +411,16 @@ var EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
411
411
|
var _this$props10 = _this.props,
|
|
412
412
|
onSearchChange = _this$props10.onSearchChange,
|
|
413
413
|
delimiter = _this$props10.delimiter;
|
|
414
|
-
if (onSearchChange) {
|
|
415
|
-
var _hasMatchingOptions = _this.state.matchingOptions.length > 0;
|
|
416
|
-
onSearchChange(searchValue, _hasMatchingOptions);
|
|
417
|
-
}
|
|
418
414
|
_this.setState({
|
|
419
415
|
searchValue: searchValue
|
|
420
416
|
}, function () {
|
|
421
|
-
if (searchValue && _this.state.isListOpen === false)
|
|
417
|
+
if (searchValue && _this.state.isListOpen === false) {
|
|
418
|
+
_this.openList();
|
|
419
|
+
}
|
|
420
|
+
if (onSearchChange) {
|
|
421
|
+
var _hasMatchingOptions = _this.state.matchingOptions.length > 0;
|
|
422
|
+
onSearchChange(searchValue, _hasMatchingOptions);
|
|
423
|
+
}
|
|
422
424
|
});
|
|
423
425
|
if (delimiter && searchValue.endsWith(delimiter)) {
|
|
424
426
|
_this.setCustomOptions(false);
|
|
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.EuiComboBoxInput = void 0;
|
|
9
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
9
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
11
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
12
12
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
13
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
14
14
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
@@ -23,6 +23,7 @@ var _services = require("../../../services");
|
|
|
23
23
|
var _accessibility = require("../../accessibility");
|
|
24
24
|
var _form_control_layout = require("../../form/form_control_layout");
|
|
25
25
|
var _num_icons = require("../../form/form_control_layout/_num_icons");
|
|
26
|
+
var _utils = require("../utils");
|
|
26
27
|
var _combo_box_pill = require("./combo_box_pill");
|
|
27
28
|
var _react2 = require("@emotion/react");
|
|
28
29
|
var _excluded = ["key", "label", "color", "onClick", "append", "prepend", "truncationProps"];
|
|
@@ -60,6 +61,7 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
|
|
|
60
61
|
});
|
|
61
62
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "updateInputSize", function (inputValue) {
|
|
62
63
|
if (!_this.widthUtils) return;
|
|
64
|
+
if (_this.asPlainText) return;
|
|
63
65
|
_this.widthUtils.setTextToCheck(inputValue);
|
|
64
66
|
// Canvas has minute subpixel differences in rendering compared to DOM
|
|
65
67
|
// We'll buffer the input by ~2px just to ensure sufficient width
|
|
@@ -85,65 +87,42 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
|
|
|
85
87
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onKeyDown", function (event) {
|
|
86
88
|
var _this$props2 = _this.props,
|
|
87
89
|
searchValue = _this$props2.searchValue,
|
|
90
|
+
hasSelectedOptions = _this$props2.hasSelectedOptions,
|
|
88
91
|
selectedOptions = _this$props2.selectedOptions,
|
|
89
92
|
onRemoveOption = _this$props2.onRemoveOption,
|
|
90
93
|
singleSelection = _this$props2.singleSelection,
|
|
91
94
|
isListOpen = _this$props2.isListOpen,
|
|
92
|
-
onOpenListClick = _this$props2.onOpenListClick
|
|
93
|
-
|
|
94
|
-
// When backspacing from an empty input, delete the last pill option in the list
|
|
95
|
+
onOpenListClick = _this$props2.onOpenListClick,
|
|
96
|
+
onChange = _this$props2.onChange;
|
|
95
97
|
var searchIsEmpty = !searchValue.length;
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
98
|
+
if (event.key === _services.keys.BACKSPACE) {
|
|
99
|
+
// When backspacing in a plain text combobox, change normally and remove the selection
|
|
100
|
+
if (_this.asPlainText) {
|
|
101
|
+
onChange(event.currentTarget.value);
|
|
102
|
+
if (hasSelectedOptions) {
|
|
103
|
+
onRemoveOption(selectedOptions[selectedOptions.length - 1]);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
// When backspacing from an empty input, delete the last pill option in the list
|
|
107
|
+
else if (searchIsEmpty && hasSelectedOptions) {
|
|
108
|
+
onRemoveOption(selectedOptions[selectedOptions.length - 1]);
|
|
109
|
+
if (!!singleSelection && !isListOpen) {
|
|
110
|
+
onOpenListClick();
|
|
111
|
+
}
|
|
101
112
|
}
|
|
102
113
|
}
|
|
103
114
|
});
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
this.updateInputSize(this.props.searchValue);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}, {
|
|
114
|
-
key: "render",
|
|
115
|
-
value: function render() {
|
|
116
|
-
var _this$props3 = this.props,
|
|
117
|
-
compressed = _this$props3.compressed,
|
|
118
|
-
focusedOptionId = _this$props3.focusedOptionId,
|
|
119
|
-
fullWidth = _this$props3.fullWidth,
|
|
120
|
-
hasSelectedOptions = _this$props3.hasSelectedOptions,
|
|
121
|
-
id = _this$props3.id,
|
|
122
|
-
isDisabled = _this$props3.isDisabled,
|
|
123
|
-
isListOpen = _this$props3.isListOpen,
|
|
124
|
-
noIcon = _this$props3.noIcon,
|
|
125
|
-
_onChange = _this$props3.onChange,
|
|
126
|
-
onClear = _this$props3.onClear,
|
|
127
|
-
onClick = _this$props3.onClick,
|
|
128
|
-
onCloseListClick = _this$props3.onCloseListClick,
|
|
129
|
-
onOpenListClick = _this$props3.onOpenListClick,
|
|
130
|
-
onRemoveOption = _this$props3.onRemoveOption,
|
|
131
|
-
placeholder = _this$props3.placeholder,
|
|
132
|
-
rootId = _this$props3.rootId,
|
|
133
|
-
searchValue = _this$props3.searchValue,
|
|
115
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderPills", function () {
|
|
116
|
+
// Don't render a pill for plain text comboboxes - use the input instead
|
|
117
|
+
if (_this.asPlainText) return null;
|
|
118
|
+
// Don't render the single pill selection while searching
|
|
119
|
+
if (_this.props.singleSelection && _this.props.searchValue) return null;
|
|
120
|
+
var _this$props3 = _this.props,
|
|
134
121
|
selectedOptions = _this$props3.selectedOptions,
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
isLoading = _this$props3.isLoading,
|
|
140
|
-
isInvalid = _this$props3.isInvalid,
|
|
141
|
-
autoFocus = _this$props3.autoFocus,
|
|
142
|
-
ariaLabel = _this$props3['aria-label'],
|
|
143
|
-
ariaLabelledby = _this$props3['aria-labelledby'];
|
|
144
|
-
var singleSelection = Boolean(singleSelectionProp);
|
|
145
|
-
var asPlainText = singleSelectionProp && (0, _typeof2.default)(singleSelectionProp) === 'object' && singleSelectionProp.asPlainText || false;
|
|
146
|
-
var pills = selectedOptions ? selectedOptions.map(function (option) {
|
|
122
|
+
isDisabled = _this$props3.isDisabled,
|
|
123
|
+
onRemoveOption = _this$props3.onRemoveOption;
|
|
124
|
+
if (!selectedOptions || !selectedOptions.length) return null;
|
|
125
|
+
return selectedOptions.map(function (option) {
|
|
147
126
|
var key = option.key,
|
|
148
127
|
label = option.label,
|
|
149
128
|
color = option.color,
|
|
@@ -152,17 +131,77 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
|
|
|
152
131
|
prepend = option.prepend,
|
|
153
132
|
truncationProps = option.truncationProps,
|
|
154
133
|
rest = (0, _objectWithoutProperties2.default)(option, _excluded);
|
|
155
|
-
var pillOnClose = isDisabled || singleSelection || onClick ? undefined : onRemoveOption;
|
|
134
|
+
var pillOnClose = isDisabled || _this.props.singleSelection || onClick ? undefined : onRemoveOption;
|
|
156
135
|
return (0, _react2.jsx)(_combo_box_pill.EuiComboBoxPill, (0, _extends2.default)({
|
|
157
136
|
option: option,
|
|
158
137
|
onClose: pillOnClose,
|
|
159
138
|
key: key !== null && key !== void 0 ? key : label.toLowerCase(),
|
|
160
139
|
color: color,
|
|
161
140
|
onClick: onClick,
|
|
162
|
-
onClickAriaLabel: onClick ? 'Change' : undefined
|
|
163
|
-
asPlainText: asPlainText
|
|
141
|
+
onClickAriaLabel: onClick ? 'Change' : undefined
|
|
164
142
|
}, rest), label);
|
|
165
|
-
})
|
|
143
|
+
});
|
|
144
|
+
});
|
|
145
|
+
return _this;
|
|
146
|
+
}
|
|
147
|
+
(0, _createClass2.default)(EuiComboBoxInput, [{
|
|
148
|
+
key: "componentDidUpdate",
|
|
149
|
+
value: function componentDidUpdate(prevProps) {
|
|
150
|
+
if (prevProps.searchValue !== this.props.searchValue) {
|
|
151
|
+
this.updateInputSize(this.props.searchValue);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}, {
|
|
155
|
+
key: "asPlainText",
|
|
156
|
+
get: function get() {
|
|
157
|
+
var singleSelection = this.props.singleSelection;
|
|
158
|
+
var isSingleSelectionConfig = singleSelection && (0, _typeof2.default)(singleSelection) === 'object';
|
|
159
|
+
return !!(isSingleSelectionConfig && singleSelection.asPlainText);
|
|
160
|
+
}
|
|
161
|
+
}, {
|
|
162
|
+
key: "searchValue",
|
|
163
|
+
get: function get() {
|
|
164
|
+
var _this$props4 = this.props,
|
|
165
|
+
searchValue = _this$props4.searchValue,
|
|
166
|
+
selectedOptions = _this$props4.selectedOptions;
|
|
167
|
+
if (this.asPlainText) {
|
|
168
|
+
var _selectedOptions$;
|
|
169
|
+
return searchValue || (selectedOptions === null || selectedOptions === void 0 ? void 0 : (_selectedOptions$ = selectedOptions[0]) === null || _selectedOptions$ === void 0 ? void 0 : _selectedOptions$.label) || '';
|
|
170
|
+
} else {
|
|
171
|
+
return searchValue;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}, {
|
|
175
|
+
key: "render",
|
|
176
|
+
value: function render() {
|
|
177
|
+
var _this$props5 = this.props,
|
|
178
|
+
compressed = _this$props5.compressed,
|
|
179
|
+
focusedOptionId = _this$props5.focusedOptionId,
|
|
180
|
+
fullWidth = _this$props5.fullWidth,
|
|
181
|
+
hasSelectedOptions = _this$props5.hasSelectedOptions,
|
|
182
|
+
id = _this$props5.id,
|
|
183
|
+
isDisabled = _this$props5.isDisabled,
|
|
184
|
+
isListOpen = _this$props5.isListOpen,
|
|
185
|
+
noIcon = _this$props5.noIcon,
|
|
186
|
+
_onChange = _this$props5.onChange,
|
|
187
|
+
onClear = _this$props5.onClear,
|
|
188
|
+
onClick = _this$props5.onClick,
|
|
189
|
+
onFocus = _this$props5.onFocus,
|
|
190
|
+
onCloseListClick = _this$props5.onCloseListClick,
|
|
191
|
+
onOpenListClick = _this$props5.onOpenListClick,
|
|
192
|
+
placeholder = _this$props5.placeholder,
|
|
193
|
+
rootId = _this$props5.rootId,
|
|
194
|
+
searchValue = _this$props5.searchValue,
|
|
195
|
+
selectedOptions = _this$props5.selectedOptions,
|
|
196
|
+
singleSelection = _this$props5.singleSelection,
|
|
197
|
+
value = _this$props5.value,
|
|
198
|
+
prepend = _this$props5.prepend,
|
|
199
|
+
append = _this$props5.append,
|
|
200
|
+
isLoading = _this$props5.isLoading,
|
|
201
|
+
isInvalid = _this$props5.isInvalid,
|
|
202
|
+
autoFocus = _this$props5.autoFocus,
|
|
203
|
+
ariaLabel = _this$props5['aria-label'],
|
|
204
|
+
ariaLabelledby = _this$props5['aria-labelledby'];
|
|
166
205
|
var removeOptionMessage;
|
|
167
206
|
var removeOptionMessageId;
|
|
168
207
|
if (this.state.hasFocus) {
|
|
@@ -179,12 +218,7 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
|
|
|
179
218
|
id: removeOptionMessageId
|
|
180
219
|
}, removeOptionMessageContent));
|
|
181
220
|
}
|
|
182
|
-
var
|
|
183
|
-
if (placeholder && selectedOptions && !selectedOptions.length && !searchValue) {
|
|
184
|
-
placeholderMessage = (0, _react2.jsx)("p", {
|
|
185
|
-
className: "euiComboBoxPlaceholder"
|
|
186
|
-
}, placeholder);
|
|
187
|
-
}
|
|
221
|
+
var showPlaceholder = placeholder && !(selectedOptions !== null && selectedOptions !== void 0 && selectedOptions.length) && !searchValue;
|
|
188
222
|
var clickProps = {};
|
|
189
223
|
if (!isDisabled && onClear && hasSelectedOptions) {
|
|
190
224
|
clickProps.clear = {
|
|
@@ -214,6 +248,7 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
|
|
|
214
248
|
'euiComboBox__inputWrap--compressed': compressed,
|
|
215
249
|
'euiComboBox__inputWrap--fullWidth': fullWidth,
|
|
216
250
|
'euiComboBox__inputWrap--noWrap': singleSelection,
|
|
251
|
+
'euiComboBox__inputWrap--plainText': this.asPlainText || showPlaceholder,
|
|
217
252
|
'euiComboBox__inputWrap--inGroup': prepend || append
|
|
218
253
|
});
|
|
219
254
|
return (0, _react2.jsx)(_form_control_layout.EuiFormControlLayout, (0, _extends2.default)({
|
|
@@ -231,7 +266,10 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
|
|
|
231
266
|
"data-test-subj": "comboBoxInput",
|
|
232
267
|
onClick: onClick,
|
|
233
268
|
tabIndex: -1 // becomes onBlur event's relatedTarget, otherwise relatedTarget is null when clicking on this div
|
|
234
|
-
},
|
|
269
|
+
}, this.renderPills(), (0, _react2.jsx)(_utils.EuiComboBoxOptionAppendPrepend, {
|
|
270
|
+
option: this.asPlainText ? selectedOptions === null || selectedOptions === void 0 ? void 0 : selectedOptions[0] : undefined,
|
|
271
|
+
classNamePrefix: "euiComboBoxPlainTextSelection"
|
|
272
|
+
}, (0, _react2.jsx)("input", {
|
|
235
273
|
"aria-activedescendant": focusedOptionId,
|
|
236
274
|
"aria-autocomplete": "list",
|
|
237
275
|
"aria-controls": isListOpen ? rootId('listbox') : '',
|
|
@@ -252,11 +290,15 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
|
|
|
252
290
|
ref: this.inputRefCallback,
|
|
253
291
|
role: "combobox",
|
|
254
292
|
style: {
|
|
255
|
-
inlineSize: this.state.inputWidth
|
|
293
|
+
inlineSize: this.asPlainText || showPlaceholder ? '100%' : this.state.inputWidth
|
|
256
294
|
},
|
|
257
|
-
|
|
295
|
+
placeholder: showPlaceholder ? placeholder : undefined,
|
|
296
|
+
value: this.searchValue,
|
|
258
297
|
autoFocus: autoFocus
|
|
259
|
-
|
|
298
|
+
// Force the menu to re-open on every input click - only necessary when plain text
|
|
299
|
+
,
|
|
300
|
+
onClick: this.asPlainText ? onFocus : undefined // Type shenanigans - event should be mostly the same
|
|
301
|
+
})), removeOptionMessage));
|
|
260
302
|
}
|
|
261
303
|
}]);
|
|
262
304
|
return EuiComboBoxInput;
|