@elastic/eui 115.0.0 → 116.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/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +14 -11
- package/es/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
- package/es/components/combo_box/combo_box.a11y.js +5 -5
- package/es/components/combo_box/combo_box.js +61 -53
- package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +147 -84
- package/es/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +8 -7
- package/es/components/context_menu/context_menu.js +19 -21
- package/es/components/context_menu/context_menu.styles.js +5 -2
- package/es/components/context_menu/context_menu_item.js +69 -58
- package/es/components/context_menu/context_menu_item.styles.js +14 -28
- package/es/components/context_menu/context_menu_panel.js +37 -21
- package/es/components/context_menu/context_menu_panel.styles.js +7 -2
- package/es/components/context_menu/context_menu_panel_title.js +124 -0
- package/es/components/context_menu/context_menu_panel_title.styles.js +20 -0
- package/es/components/context_menu/index.js +2 -1
- package/es/components/datagrid/body/cell/data_grid_cell.js +35 -29
- package/es/components/datagrid/body/data_grid_body.js +23 -17
- package/es/components/datagrid/body/data_grid_body_custom.js +23 -17
- package/es/components/datagrid/body/data_grid_body_virtualized.js +23 -17
- package/es/components/datagrid/body/header/column_actions.js +1 -2
- package/es/components/datagrid/body/header/data_grid_header_cell.js +23 -17
- package/es/components/datagrid/controls/column_sorting.js +23 -17
- package/es/components/datagrid/utils/in_memory.js +23 -17
- package/es/components/filter_group/filter_group.a11y.js +8 -2
- package/es/components/flyout/flyout_menu.js +1 -4
- package/es/components/form/checkbox/checkbox.js +6 -6
- package/es/components/form/checkbox/checkbox.styles.js +1 -22
- package/es/components/form/checkbox/checkbox_control.js +78 -0
- package/es/components/form/checkbox/checkbox_control.styles.js +40 -0
- package/es/components/form/checkbox/index.js +1 -0
- package/es/components/form/form.styles.js +2 -1
- package/es/components/form/radio/radio.styles.js +1 -1
- package/es/components/form/super_select/super_select.js +118 -99
- package/es/components/form/super_select/super_select.styles.js +4 -8
- package/es/components/form/super_select/super_select_item.js +10 -18
- package/es/components/link/external_link_icon.js +4 -2
- package/es/components/list_group/list_group.js +20 -34
- package/es/components/list_group/list_group.styles.js +2 -16
- package/es/components/list_group/list_group_item.js +75 -86
- package/es/components/list_group/list_group_item.styles.js +17 -61
- package/es/components/list_group/list_group_item_extra_action.styles.js +6 -6
- package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +16 -28
- package/es/components/list_item_layout/_list_item_layout.js +692 -0
- package/es/components/list_item_layout/_list_item_layout.styles.js +93 -0
- package/es/components/list_item_layout/index.js +9 -0
- package/es/components/search_bar/filters/field_value_selection_filter.js +2 -1
- package/es/components/selectable/selectable.js +1 -0
- package/es/components/selectable/selectable_list/selectable_list.js +52 -36
- package/es/components/selectable/selectable_list/selectable_list.styles.js +19 -4
- package/es/components/selectable/selectable_list/selectable_list_item.js +45 -152
- package/es/components/selectable/selectable_list/utils/get_list_item_size.js +17 -0
- package/es/components/selectable/selectable_search/selectable_search.js +4 -1
- package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
- package/es/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
- package/es/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
- package/es/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
- package/es/global_styling/mixins/_helpers.js +32 -11
- package/eui.d.ts +10397 -8051
- package/i18ntokens.json +2607 -2589
- package/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +14 -11
- package/lib/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
- package/lib/components/combo_box/combo_box.a11y.js +5 -5
- package/lib/components/combo_box/combo_box.js +61 -53
- package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +145 -82
- package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +7 -6
- package/lib/components/context_menu/context_menu.js +20 -22
- package/lib/components/context_menu/context_menu.styles.js +4 -1
- package/lib/components/context_menu/context_menu_item.js +70 -59
- package/lib/components/context_menu/context_menu_item.styles.js +13 -27
- package/lib/components/context_menu/context_menu_panel.js +37 -21
- package/lib/components/context_menu/context_menu_panel.styles.js +7 -2
- package/lib/components/context_menu/context_menu_panel_title.js +130 -0
- package/lib/components/context_menu/context_menu_panel_title.styles.js +26 -0
- package/lib/components/context_menu/index.js +8 -1
- package/lib/components/datagrid/body/cell/data_grid_cell.js +35 -29
- package/lib/components/datagrid/body/data_grid_body.js +23 -17
- package/lib/components/datagrid/body/data_grid_body_custom.js +23 -17
- package/lib/components/datagrid/body/data_grid_body_virtualized.js +23 -17
- package/lib/components/datagrid/body/header/column_actions.js +1 -2
- package/lib/components/datagrid/body/header/data_grid_header_cell.js +23 -17
- package/lib/components/datagrid/controls/column_sorting.js +23 -17
- package/lib/components/datagrid/utils/in_memory.js +23 -17
- package/lib/components/filter_group/filter_group.a11y.js +8 -2
- package/lib/components/flyout/flyout_menu.js +1 -4
- package/lib/components/form/checkbox/checkbox.js +6 -6
- package/lib/components/form/checkbox/checkbox.styles.js +1 -22
- package/lib/components/form/checkbox/checkbox_control.js +84 -0
- package/lib/components/form/checkbox/checkbox_control.styles.js +44 -0
- package/lib/components/form/checkbox/index.js +7 -0
- package/lib/components/form/form.styles.js +2 -1
- package/lib/components/form/radio/radio.styles.js +1 -1
- package/lib/components/form/super_select/super_select.js +116 -97
- package/lib/components/form/super_select/super_select.styles.js +4 -8
- package/lib/components/form/super_select/super_select_item.js +13 -18
- package/lib/components/link/external_link_icon.js +4 -2
- package/lib/components/list_group/list_group.js +21 -35
- package/lib/components/list_group/list_group.styles.js +2 -16
- package/lib/components/list_group/list_group_item.js +75 -86
- package/lib/components/list_group/list_group_item.styles.js +17 -61
- package/lib/components/list_group/list_group_item_extra_action.styles.js +5 -5
- package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +16 -28
- package/lib/components/list_item_layout/_list_item_layout.js +699 -0
- package/lib/components/list_item_layout/_list_item_layout.styles.js +97 -0
- package/lib/components/list_item_layout/index.js +12 -0
- package/lib/components/search_bar/filters/field_value_selection_filter.js +2 -1
- package/lib/components/selectable/selectable.js +1 -0
- package/lib/components/selectable/selectable_list/selectable_list.js +50 -34
- package/lib/components/selectable/selectable_list/selectable_list.styles.js +20 -5
- package/lib/components/selectable/selectable_list/selectable_list_item.js +44 -152
- package/lib/components/selectable/selectable_list/utils/get_list_item_size.js +23 -0
- package/lib/components/selectable/selectable_search/selectable_search.js +4 -1
- package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
- package/lib/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
- package/lib/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
- package/lib/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
- package/lib/global_styling/mixins/_helpers.js +33 -12
- package/optimize/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -4
- package/optimize/es/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
- package/optimize/es/components/combo_box/combo_box.a11y.js +5 -5
- package/optimize/es/components/combo_box/combo_box.js +60 -52
- package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +145 -83
- package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +8 -7
- package/optimize/es/components/context_menu/context_menu.js +18 -13
- package/optimize/es/components/context_menu/context_menu.styles.js +5 -2
- package/optimize/es/components/context_menu/context_menu_item.js +55 -53
- package/optimize/es/components/context_menu/context_menu_item.styles.js +14 -28
- package/optimize/es/components/context_menu/context_menu_panel.js +36 -17
- package/optimize/es/components/context_menu/context_menu_panel.styles.js +7 -2
- package/optimize/es/components/context_menu/context_menu_panel_title.js +53 -0
- package/optimize/es/components/context_menu/context_menu_panel_title.styles.js +20 -0
- package/optimize/es/components/context_menu/index.js +2 -1
- package/optimize/es/components/datagrid/body/header/column_actions.js +1 -2
- package/optimize/es/components/filter_group/filter_group.a11y.js +8 -2
- package/optimize/es/components/flyout/flyout_menu.js +1 -4
- package/optimize/es/components/form/checkbox/checkbox.js +6 -6
- package/optimize/es/components/form/checkbox/checkbox.styles.js +1 -22
- package/optimize/es/components/form/checkbox/checkbox_control.js +48 -0
- package/optimize/es/components/form/checkbox/checkbox_control.styles.js +40 -0
- package/optimize/es/components/form/checkbox/index.js +1 -0
- package/optimize/es/components/form/form.styles.js +2 -1
- package/optimize/es/components/form/radio/radio.styles.js +1 -1
- package/optimize/es/components/form/super_select/super_select.js +118 -90
- package/optimize/es/components/form/super_select/super_select.styles.js +4 -8
- package/optimize/es/components/form/super_select/super_select_item.js +10 -14
- package/optimize/es/components/link/external_link_icon.js +4 -2
- package/optimize/es/components/list_group/list_group.js +7 -14
- package/optimize/es/components/list_group/list_group.styles.js +2 -16
- package/optimize/es/components/list_group/list_group_item.js +62 -79
- package/optimize/es/components/list_group/list_group_item.styles.js +17 -61
- package/optimize/es/components/list_group/list_group_item_extra_action.styles.js +6 -6
- package/optimize/es/components/list_item_layout/_list_item_layout.js +353 -0
- package/optimize/es/components/list_item_layout/_list_item_layout.styles.js +93 -0
- package/optimize/es/components/list_item_layout/index.js +9 -0
- package/optimize/es/components/search_bar/filters/field_value_selection_filter.js +2 -1
- package/optimize/es/components/selectable/selectable_list/selectable_list.js +48 -33
- package/optimize/es/components/selectable/selectable_list/selectable_list.styles.js +19 -4
- package/optimize/es/components/selectable/selectable_list/selectable_list_item.js +41 -143
- package/optimize/es/components/selectable/selectable_list/utils/get_list_item_size.js +17 -0
- package/optimize/es/components/selectable/selectable_search/selectable_search.js +4 -1
- package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
- package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
- package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
- package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
- package/optimize/es/global_styling/mixins/_helpers.js +32 -11
- package/optimize/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -4
- package/optimize/lib/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
- package/optimize/lib/components/combo_box/combo_box.a11y.js +5 -5
- package/optimize/lib/components/combo_box/combo_box.js +60 -52
- package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +143 -81
- package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +7 -6
- package/optimize/lib/components/context_menu/context_menu.js +19 -14
- package/optimize/lib/components/context_menu/context_menu.styles.js +4 -1
- package/optimize/lib/components/context_menu/context_menu_item.js +56 -54
- package/optimize/lib/components/context_menu/context_menu_item.styles.js +13 -27
- package/optimize/lib/components/context_menu/context_menu_panel.js +36 -17
- package/optimize/lib/components/context_menu/context_menu_panel.styles.js +7 -2
- package/optimize/lib/components/context_menu/context_menu_panel_title.js +59 -0
- package/optimize/lib/components/context_menu/context_menu_panel_title.styles.js +26 -0
- package/optimize/lib/components/context_menu/index.js +8 -1
- package/optimize/lib/components/datagrid/body/header/column_actions.js +1 -2
- package/optimize/lib/components/filter_group/filter_group.a11y.js +8 -2
- package/optimize/lib/components/flyout/flyout_menu.js +1 -4
- package/optimize/lib/components/form/checkbox/checkbox.js +6 -6
- package/optimize/lib/components/form/checkbox/checkbox.styles.js +1 -22
- package/optimize/lib/components/form/checkbox/checkbox_control.js +54 -0
- package/optimize/lib/components/form/checkbox/checkbox_control.styles.js +44 -0
- package/optimize/lib/components/form/checkbox/index.js +7 -0
- package/optimize/lib/components/form/form.styles.js +2 -1
- package/optimize/lib/components/form/radio/radio.styles.js +1 -1
- package/optimize/lib/components/form/super_select/super_select.js +116 -88
- package/optimize/lib/components/form/super_select/super_select.styles.js +4 -8
- package/optimize/lib/components/form/super_select/super_select_item.js +13 -14
- package/optimize/lib/components/link/external_link_icon.js +4 -2
- package/optimize/lib/components/list_group/list_group.js +8 -15
- package/optimize/lib/components/list_group/list_group.styles.js +2 -16
- package/optimize/lib/components/list_group/list_group_item.js +62 -79
- package/optimize/lib/components/list_group/list_group_item.styles.js +17 -61
- package/optimize/lib/components/list_group/list_group_item_extra_action.styles.js +5 -5
- package/optimize/lib/components/list_item_layout/_list_item_layout.js +361 -0
- package/optimize/lib/components/list_item_layout/_list_item_layout.styles.js +97 -0
- package/optimize/lib/components/list_item_layout/index.js +12 -0
- package/optimize/lib/components/search_bar/filters/field_value_selection_filter.js +2 -1
- package/optimize/lib/components/selectable/selectable_list/selectable_list.js +46 -31
- package/optimize/lib/components/selectable/selectable_list/selectable_list.styles.js +20 -5
- package/optimize/lib/components/selectable/selectable_list/selectable_list_item.js +41 -143
- package/optimize/lib/components/selectable/selectable_list/utils/get_list_item_size.js +23 -0
- package/optimize/lib/components/selectable/selectable_search/selectable_search.js +4 -1
- package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
- package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
- package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
- package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
- package/optimize/lib/global_styling/mixins/_helpers.js +33 -12
- package/package.json +4 -4
- package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +14 -11
- package/test-env/components/color_picker/color_palette_picker/color_palette_picker.js +0 -1
- package/test-env/components/combo_box/combo_box.a11y.js +5 -5
- package/test-env/components/combo_box/combo_box.js +61 -53
- package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +145 -82
- package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +7 -6
- package/test-env/components/context_menu/context_menu.js +20 -22
- package/test-env/components/context_menu/context_menu.styles.js +4 -1
- package/test-env/components/context_menu/context_menu_item.js +67 -59
- package/test-env/components/context_menu/context_menu_item.styles.js +13 -27
- package/test-env/components/context_menu/context_menu_panel.js +37 -21
- package/test-env/components/context_menu/context_menu_panel.styles.js +7 -2
- package/test-env/components/context_menu/context_menu_panel_title.js +129 -0
- package/test-env/components/context_menu/context_menu_panel_title.styles.js +26 -0
- package/test-env/components/context_menu/index.js +8 -1
- package/test-env/components/datagrid/body/cell/data_grid_cell.js +35 -29
- package/test-env/components/datagrid/body/data_grid_body.js +23 -17
- package/test-env/components/datagrid/body/data_grid_body_custom.js +23 -17
- package/test-env/components/datagrid/body/data_grid_body_virtualized.js +23 -17
- package/test-env/components/datagrid/body/header/column_actions.js +1 -2
- package/test-env/components/datagrid/body/header/data_grid_header_cell.js +23 -17
- package/test-env/components/datagrid/controls/column_sorting.js +23 -17
- package/test-env/components/datagrid/utils/in_memory.js +23 -17
- package/test-env/components/filter_group/filter_group.a11y.js +8 -2
- package/test-env/components/flyout/flyout_menu.js +1 -4
- package/test-env/components/form/checkbox/checkbox.js +6 -6
- package/test-env/components/form/checkbox/checkbox.styles.js +1 -22
- package/test-env/components/form/checkbox/checkbox_control.js +83 -0
- package/test-env/components/form/checkbox/checkbox_control.styles.js +44 -0
- package/test-env/components/form/checkbox/index.js +7 -0
- package/test-env/components/form/form.styles.js +2 -1
- package/test-env/components/form/radio/radio.styles.js +1 -1
- package/test-env/components/form/super_select/super_select.js +116 -97
- package/test-env/components/form/super_select/super_select.styles.js +4 -8
- package/test-env/components/form/super_select/super_select_item.js +13 -18
- package/test-env/components/link/external_link_icon.js +4 -2
- package/test-env/components/list_group/list_group.js +21 -35
- package/test-env/components/list_group/list_group.styles.js +2 -16
- package/test-env/components/list_group/list_group_item.js +75 -86
- package/test-env/components/list_group/list_group_item.styles.js +17 -61
- package/test-env/components/list_group/list_group_item_extra_action.styles.js +5 -5
- package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +16 -28
- package/test-env/components/list_item_layout/_list_item_layout.js +691 -0
- package/test-env/components/list_item_layout/_list_item_layout.styles.js +97 -0
- package/test-env/components/list_item_layout/index.js +12 -0
- package/test-env/components/search_bar/filters/field_value_selection_filter.js +2 -1
- package/test-env/components/selectable/selectable.js +1 -0
- package/test-env/components/selectable/selectable_list/selectable_list.js +50 -34
- package/test-env/components/selectable/selectable_list/selectable_list.styles.js +20 -5
- package/test-env/components/selectable/selectable_list/selectable_list_item.js +42 -147
- package/test-env/components/selectable/selectable_list/utils/get_list_item_size.js +23 -0
- package/test-env/components/selectable/selectable_search/selectable_search.js +4 -1
- package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
- package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +2 -12
- package/test-env/components/selectable/selectable_templates/selectable_template_sitewide_option.js +1 -1
- package/test-env/components/selectable/selectable_templates/selectable_template_sitewide_popover.js +1 -1
- package/test-env/global_styling/mixins/_helpers.js +33 -12
- package/es/components/selectable/selectable_list/selectable_list_item.styles.js +0 -55
- package/lib/components/selectable/selectable_list/selectable_list_item.styles.js +0 -59
- package/optimize/es/components/selectable/selectable_list/selectable_list_item.styles.js +0 -55
- package/optimize/lib/components/selectable/selectable_list/selectable_list_item.styles.js +0 -59
- package/test-env/components/selectable/selectable_list/selectable_list_item.styles.js +0 -59
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.useEuiYScrollWithShadows = exports.useEuiYScroll = exports.useEuiXScrollWithShadows = exports.useEuiXScroll = exports.useEuiScrollBar = exports.useEuiOverflowScroll = exports.euiYScrollWithShadows = exports.euiYScroll = exports.euiXScrollWithShadows = exports.euiXScroll = exports.euiScrollBarStyles = exports.euiOverflowScroll = exports.euiFullHeight = void 0;
|
|
6
|
+
exports.useEuiYScrollWithShadows = exports.useEuiYScroll = exports.useEuiXScrollWithShadows = exports.useEuiXScroll = exports.useEuiScrollBar = exports.useEuiOverflowScroll = exports.euiYScrollWithShadows = exports.euiYScroll = exports.euiXScrollWithShadows = exports.euiXScroll = exports.euiScrollBarStyles = exports.euiOverflowShadowStyles = exports.euiOverflowScroll = exports.euiFullHeight = void 0;
|
|
7
|
+
var _euiThemeCommon = require("@elastic/eui-theme-common");
|
|
7
8
|
var _theme = require("../../services/theme");
|
|
8
9
|
var _color = require("../../services/color");
|
|
9
10
|
var _functions = require("../functions");
|
|
@@ -52,11 +53,15 @@ var useEuiScrollBar = exports.useEuiScrollBar = function useEuiScrollBar(options
|
|
|
52
53
|
* Overflow shadow masks for use in YScroll and XScroll helpers
|
|
53
54
|
*/
|
|
54
55
|
|
|
55
|
-
var euiOverflowShadowStyles = function euiOverflowShadowStyles(_ref3) {
|
|
56
|
-
var
|
|
56
|
+
var euiOverflowShadowStyles = exports.euiOverflowShadowStyles = function euiOverflowShadowStyles(_ref3) {
|
|
57
|
+
var _ref3$euiTheme = _ref3.euiTheme,
|
|
58
|
+
size = _ref3$euiTheme.size,
|
|
59
|
+
colors = _ref3$euiTheme.colors;
|
|
57
60
|
var _ref4 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
|
58
61
|
_direction = _ref4.direction,
|
|
59
|
-
_side = _ref4.side
|
|
62
|
+
_side = _ref4.side,
|
|
63
|
+
_ref4$hasAnimatedOver = _ref4.hasAnimatedOverflowShadow,
|
|
64
|
+
hasAnimatedOverflowShadow = _ref4$hasAnimatedOver === void 0 ? false : _ref4$hasAnimatedOver;
|
|
60
65
|
var direction = _direction || 'y';
|
|
61
66
|
var side = _side || 'both';
|
|
62
67
|
var hideHeight = size.s;
|
|
@@ -80,11 +85,20 @@ var euiOverflowShadowStyles = function euiOverflowShadowStyles(_ref3) {
|
|
|
80
85
|
// - https://github.com/elastic/kibana/issues/180828
|
|
81
86
|
// - https://github.com/elastic/eui/pull/6343#issuecomment-1302732021
|
|
82
87
|
var chromiumMaskWorkaround = 'transform: translateZ(0);';
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
88
|
+
var overflowShadowStatic = direction === 'y' ? "mask-image: linear-gradient(to bottom, ".concat(gradient, "); ").concat(chromiumMaskWorkaround) : "mask-image: linear-gradient(to right, ".concat(gradient, "); ").concat(chromiumMaskWorkaround);
|
|
89
|
+
|
|
90
|
+
// If supported, use the scroll timeline API to animate the gradient to show/hide it on the scroll edges.
|
|
91
|
+
// We only support vertical scrolling as horizontal scrolling has increased complexity on element dimensions.
|
|
92
|
+
if (hasAnimatedOverflowShadow && direction === 'y') {
|
|
93
|
+
var featureFlag = 'animation-timeline: scroll()';
|
|
94
|
+
var gradientStartColor = "var(--euiOverflowShadowColor, ".concat(colors.backgroundBasePlain, ")");
|
|
95
|
+
var gradientEndColor = 'transparent';
|
|
96
|
+
var gradientSize = size.base;
|
|
97
|
+
var gradientScrollRange = size.m;
|
|
98
|
+
var commonPseudoElementStyles = "\n content: '';\n display: block;\n position: sticky;\n z-index: 1;\n block-size: ".concat(gradientSize, ";\n pointer-events: none;\n ");
|
|
99
|
+
return "\n @supports not (".concat(featureFlag, ") {\n ").concat(overflowShadowStatic, "\n }\n\n ").concat(_euiThemeCommon.euiCantAnimate, " {\n ").concat(overflowShadowStatic, "\n }\n\n ").concat(_euiThemeCommon.euiCanAnimate, " {\n @supports (").concat(featureFlag, ") {\n @keyframes show { \n from { opacity: 0 } \n to { opacity: 1 }\n }\n @keyframes hide { \n from { opacity: 1 }\n to { opacity: 0 }\n }\n\n position: relative;\n\n /* Gradient on start edge */\n &::before {\n ").concat(commonPseudoElementStyles, "\n inset-block-start: 0;\n /* prevent pushing down the content */\n ").concat((0, _functions.logicalCSS)('margin-bottom', "-".concat(gradientSize)), " \n /* uses CSS custom property to support customization depending on layout wrapper background color */\n background: linear-gradient(to bottom, ").concat(gradientStartColor, ", ").concat(gradientEndColor, ");\n \n opacity: 0;\n animation: show linear both;\n animation-timeline: scroll(y);\n animation-range: 0px ").concat(gradientScrollRange, ";\n }\n\n /* Gradient on end edge */\n &::after {\n ").concat(commonPseudoElementStyles, "\n inset-block-end: 0;\n /* prevent adding extra space */\n ").concat((0, _functions.logicalCSS)('margin-top', "-".concat(gradientSize)), " \n background: linear-gradient(to top, ").concat(gradientStartColor, ", ").concat(gradientEndColor, ");\n\n \n /* NOTE: To ensure the bottom gradient is not visible when the container has no overflow,\n we need to use opacity: 0 as default. Using two animations with 'animation-fill-mode: forwards'\n ensures the show/hide animation works both with and without overflow. */\n /* scroll animation */\n opacity: 0;\n animation-name: show, hide;\n animation-timing-function: step-start, linear;\n animation-fill-mode: forwards;\n animation-timeline: scroll(y);\n animation-range: 0% 100%, calc(100% - ").concat(gradientScrollRange, ") 100%;\n }\n }\n }\n ");
|
|
87
100
|
}
|
|
101
|
+
return overflowShadowStatic;
|
|
88
102
|
};
|
|
89
103
|
|
|
90
104
|
/**
|
|
@@ -110,20 +124,27 @@ var euiYScrollWithShadows = exports.euiYScrollWithShadows = function euiYScrollW
|
|
|
110
124
|
var _ref7 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
|
111
125
|
height = _ref7.height,
|
|
112
126
|
_ref7$side = _ref7.side,
|
|
113
|
-
side = _ref7$side === void 0 ? 'both' : _ref7$side
|
|
127
|
+
side = _ref7$side === void 0 ? 'both' : _ref7$side,
|
|
128
|
+
_ref7$hasAnimatedOver = _ref7.hasAnimatedOverflowShadow,
|
|
129
|
+
hasAnimatedOverflowShadow = _ref7$hasAnimatedOver === void 0 ? false : _ref7$hasAnimatedOver;
|
|
114
130
|
return "\n ".concat(euiYScroll(euiTheme, {
|
|
115
131
|
height: height
|
|
116
132
|
}), "\n ").concat(euiOverflowShadowStyles(euiTheme, {
|
|
117
133
|
direction: 'y',
|
|
118
|
-
side: side
|
|
134
|
+
side: side,
|
|
135
|
+
hasAnimatedOverflowShadow: hasAnimatedOverflowShadow
|
|
119
136
|
}), "\n");
|
|
120
137
|
};
|
|
121
138
|
var useEuiYScrollWithShadows = exports.useEuiYScrollWithShadows = function useEuiYScrollWithShadows() {
|
|
122
139
|
var _ref8 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
123
|
-
height = _ref8.height
|
|
140
|
+
height = _ref8.height,
|
|
141
|
+
side = _ref8.side,
|
|
142
|
+
hasAnimatedOverflowShadow = _ref8.hasAnimatedOverflowShadow;
|
|
124
143
|
var euiTheme = (0, _theme.useEuiTheme)();
|
|
125
144
|
return euiYScrollWithShadows(euiTheme, {
|
|
126
|
-
height: height
|
|
145
|
+
height: height,
|
|
146
|
+
side: side,
|
|
147
|
+
hasAnimatedOverflowShadow: hasAnimatedOverflowShadow
|
|
127
148
|
});
|
|
128
149
|
};
|
|
129
150
|
var euiXScroll = exports.euiXScroll = function euiXScroll(euiTheme) {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elastic/eui",
|
|
3
3
|
"description": "Elastic UI Component Library",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "116.0.0",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.txt",
|
|
6
6
|
"main": "lib",
|
|
7
7
|
"module": "es",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"directory": "packages/eui"
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@elastic/eui-theme-common": "
|
|
56
|
+
"@elastic/eui-theme-common": "10.0.0",
|
|
57
57
|
"@elastic/prismjs-esql": "^1.1.2",
|
|
58
58
|
"@hello-pangea/dnd": "^16.6.0",
|
|
59
59
|
"@types/lodash": "^4.14.202",
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
"@elastic/charts": "^64.1.0",
|
|
110
110
|
"@elastic/datemath": "^5.0.3",
|
|
111
111
|
"@elastic/eslint-plugin-eui": "2.12.0",
|
|
112
|
-
"@elastic/eui-theme-borealis": "
|
|
112
|
+
"@elastic/eui-theme-borealis": "8.0.0",
|
|
113
113
|
"@emotion/babel-preset-css-prop": "^11.11.0",
|
|
114
114
|
"@emotion/cache": "^11.11.0",
|
|
115
115
|
"@emotion/css": "^11.11.0",
|
|
@@ -249,7 +249,7 @@
|
|
|
249
249
|
},
|
|
250
250
|
"peerDependencies": {
|
|
251
251
|
"@elastic/datemath": "^5.0.2",
|
|
252
|
-
"@elastic/eui-theme-borealis": "
|
|
252
|
+
"@elastic/eui-theme-borealis": "8.0.0",
|
|
253
253
|
"@emotion/css": "11.x",
|
|
254
254
|
"@emotion/react": "11.x",
|
|
255
255
|
"@types/react": "^17.0 || ^18.0",
|
package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js
CHANGED
|
@@ -66,7 +66,6 @@ var KibanaCollapsibleNavSolution = exports.KibanaCollapsibleNavSolution = functi
|
|
|
66
66
|
var solutionSolutionSwitcherAriaLabel = (0, _i18n.useEuiI18n)('euiCollapsibleNavKibanaSolution.switcherAriaLabel', ' - click to switch to another solution');
|
|
67
67
|
var solutionSolutionGroupLabel = (0, _i18n.useEuiI18n)('euiCollapsibleNavKibanaSolution.groupLabel', 'Navigate to solution');
|
|
68
68
|
var closeSolutionPopover = (0, _react.useCallback)(function (event) {
|
|
69
|
-
var _childItem$firstEleme;
|
|
70
69
|
// Allow child items to stop the popover from being closed
|
|
71
70
|
if (event.isPropagationStopped()) return;
|
|
72
71
|
// Only listen for clicks on child items - currentTarget is the parent <ul>
|
|
@@ -75,7 +74,7 @@ var KibanaCollapsibleNavSolution = exports.KibanaCollapsibleNavSolution = functi
|
|
|
75
74
|
// Only close the popover if the item is a clickable link or button
|
|
76
75
|
var target = event.target;
|
|
77
76
|
var childItem = target.closest('.euiListGroupItem');
|
|
78
|
-
if (['A', 'BUTTON'].includes((childItem === null || childItem === void 0
|
|
77
|
+
if (['A', 'BUTTON'].includes((childItem === null || childItem === void 0 ? void 0 : childItem.tagName) || '')) {
|
|
79
78
|
setIsSolutionSwitcherOpen(false);
|
|
80
79
|
}
|
|
81
80
|
}, []);
|
|
@@ -88,12 +87,10 @@ var KibanaCollapsibleNavSolution = exports.KibanaCollapsibleNavSolution = functi
|
|
|
88
87
|
"data-test-subj": "kibanaSolutionSwitcherList",
|
|
89
88
|
"aria-label": solutionSolutionGroupLabel,
|
|
90
89
|
listItems: primaryItems,
|
|
91
|
-
size: "s",
|
|
92
90
|
bordered: true,
|
|
93
91
|
onClick: closeSolutionPopover
|
|
94
92
|
}), secondaryItems.length > 0 && (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)(_list_group.EuiListGroup, {
|
|
95
93
|
listItems: secondaryItems,
|
|
96
|
-
size: "s",
|
|
97
94
|
css: styles.euiCollapsibleNavKibanaSolution__secondaryItems,
|
|
98
95
|
onClick: closeSolutionPopover
|
|
99
96
|
})));
|
|
@@ -174,22 +171,28 @@ KibanaCollapsibleNavSolution.propTypes = {
|
|
|
174
171
|
"data-test-subj": _propTypes.default.string,
|
|
175
172
|
css: _propTypes.default.any,
|
|
176
173
|
/**
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
174
|
+
* Controls the disabled behavior via the native `disabled` attribute.
|
|
175
|
+
*/
|
|
176
|
+
isDisabled: _propTypes.default.bool,
|
|
177
|
+
/**
|
|
178
|
+
* NOTE: Beta feature, may be changed or removed in the future
|
|
179
|
+
*
|
|
180
|
+
* Changes the native `disabled` attribute to `aria-disabled` to preserve focusability.
|
|
181
|
+
* This results in a semantically disabled button without the default browser handling of the disabled state.
|
|
182
|
+
*
|
|
183
|
+
* Use e.g. when a disabled button should have a tooltip.
|
|
184
|
+
*/
|
|
185
|
+
hasAriaDisabled: _propTypes.default.bool,
|
|
180
186
|
/**
|
|
181
187
|
* By default the item will get the color `text`.
|
|
182
188
|
* You can customize the color of the item by passing a color name.
|
|
189
|
+
* @default 'text'
|
|
183
190
|
*/
|
|
184
191
|
color: _propTypes.default.any,
|
|
185
192
|
/**
|
|
186
193
|
* Apply styles indicating an item is active
|
|
187
194
|
*/
|
|
188
195
|
isActive: _propTypes.default.bool,
|
|
189
|
-
/**
|
|
190
|
-
* Apply styles indicating an item is disabled
|
|
191
|
-
*/
|
|
192
|
-
isDisabled: _propTypes.default.bool,
|
|
193
196
|
/**
|
|
194
197
|
* Make the list item label a link.
|
|
195
198
|
* While permitted, `href` and `onClick` should not be used together in most cases and may create problems.
|
|
@@ -97,7 +97,6 @@ var EuiColorPalettePicker = exports.EuiColorPalettePicker = function EuiColorPal
|
|
|
97
97
|
options: paletteOptions,
|
|
98
98
|
valueOfSelected: valueOfSelected,
|
|
99
99
|
onChange: onChange,
|
|
100
|
-
hasDividers: true,
|
|
101
100
|
isInvalid: isInvalid,
|
|
102
101
|
compressed: compressed,
|
|
103
102
|
disabled: disabled,
|
|
@@ -88,7 +88,7 @@ describe('EuiComboBox', function () {
|
|
|
88
88
|
rowHeight: rowHeight
|
|
89
89
|
}));
|
|
90
90
|
cy.get('input[data-test-subj="comboBoxSearchInput"]').realClick();
|
|
91
|
-
cy.get('
|
|
91
|
+
cy.get('[data-test-subj="titanOption"]').should('exist');
|
|
92
92
|
cy.checkAxe();
|
|
93
93
|
});
|
|
94
94
|
it('has zero violations after keyboard interaction', function () {
|
|
@@ -97,7 +97,7 @@ describe('EuiComboBox', function () {
|
|
|
97
97
|
}));
|
|
98
98
|
cy.realPress('Tab');
|
|
99
99
|
cy.get('input[data-test-subj="comboBoxSearchInput"]').should('have.focus');
|
|
100
|
-
cy.get('
|
|
100
|
+
cy.get('[data-test-subj="titanOption"]').should('exist');
|
|
101
101
|
cy.repeatRealPress('ArrowDown');
|
|
102
102
|
cy.realPress('Enter');
|
|
103
103
|
cy.repeatRealPress('ArrowDown');
|
|
@@ -123,14 +123,14 @@ describe('EuiComboBox', function () {
|
|
|
123
123
|
}));
|
|
124
124
|
cy.realPress('Tab');
|
|
125
125
|
cy.get('input[data-test-subj="comboBoxSearchInput"]').should('have.focus');
|
|
126
|
-
cy.get('
|
|
126
|
+
cy.get('[data-test-subj="titanOption"]').should('exist');
|
|
127
127
|
cy.realPress('ArrowDown');
|
|
128
128
|
cy.realPress('ArrowDown');
|
|
129
129
|
cy.realPress('ArrowDown');
|
|
130
130
|
cy.get('input[data-test-subj="comboBoxSearchInput"]').invoke('attr', 'aria-activedescendant').should('include', 'option-2');
|
|
131
131
|
cy.realPress('Enter');
|
|
132
132
|
cy.realPress('ArrowDown');
|
|
133
|
-
cy.get('input[data-test-subj="comboBoxSearchInput"]').invoke('attr', 'aria-activedescendant').should('include', 'option-
|
|
133
|
+
cy.get('input[data-test-subj="comboBoxSearchInput"]').invoke('attr', 'aria-activedescendant').should('include', 'option-4');
|
|
134
134
|
});
|
|
135
135
|
it('sets the correct aria-activedescendant id with custom option ids', function () {
|
|
136
136
|
cy.realMount((0, _react2.jsx)(ComboBox, {
|
|
@@ -160,7 +160,7 @@ describe('EuiComboBox', function () {
|
|
|
160
160
|
cy.get('input[data-test-subj="comboBoxSearchInput"]').should('exist');
|
|
161
161
|
cy.realPress('Tab');
|
|
162
162
|
cy.get('input[data-test-subj="comboBoxSearchInput"]').should('have.focus');
|
|
163
|
-
cy.get('
|
|
163
|
+
cy.get('[data-test-subj="titanOption"]').should('exist');
|
|
164
164
|
cy.realPress('ArrowDown');
|
|
165
165
|
cy.realPress('ArrowDown');
|
|
166
166
|
cy.realPress('ArrowDown');
|
|
@@ -28,7 +28,7 @@ var _combo_box_input = require("./combo_box_input/combo_box_input");
|
|
|
28
28
|
var _combo_box_options_list = require("./combo_box_options_list");
|
|
29
29
|
var _combo_box = require("./combo_box.styles");
|
|
30
30
|
var _react2 = require("@emotion/react");
|
|
31
|
-
var _excluded = ["data-test-subj", "async", "className", "compressed", "customOptionText", "fullWidth", "id", "inputRef", "isCaseSensitive", "isClearable", "isDisabled", "isInvalid", "isLoading", "noSuggestions", "onBlur", "onChange", "onCreateOption", "onSearchChange", "options", "placeholder", "renderOption", "rowHeight", "selectedOptions", "singleSelection", "prepend", "sortMatchesBy", "delimiter", "append", "autoFocus", "truncationProps", "inputPopoverProps", "optionMatcher", "aria-label", "aria-labelledby", "aria-describedby"];
|
|
31
|
+
var _excluded = ["data-test-subj", "async", "className", "compressed", "customOptionText", "fullWidth", "id", "inputRef", "isCaseSensitive", "isClearable", "isDisabled", "isInvalid", "isLoading", "noSuggestions", "onBlur", "onChange", "onCreateOption", "onSearchChange", "options", "placeholder", "renderOption", "rowHeight", "selectedOptions", "singleSelection", "prepend", "sortMatchesBy", "delimiter", "append", "autoFocus", "onFocusBadge", "truncationProps", "inputPopoverProps", "optionMatcher", "aria-label", "aria-labelledby", "aria-describedby"];
|
|
32
32
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
33
33
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
34
34
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
@@ -94,6 +94,9 @@ var EuiComboBox = exports.EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
94
94
|
_this.listRefInstance = ref;
|
|
95
95
|
});
|
|
96
96
|
(0, _defineProperty2.default)(_this, "setListOptionRefs", function (node, index) {
|
|
97
|
+
var current = _this.state.listOptionRefs[index];
|
|
98
|
+
// Skip updating if the ref is null (on cleanup) or didn't change
|
|
99
|
+
if (node === null || node === current) return;
|
|
97
100
|
_this.setState(function (_ref) {
|
|
98
101
|
var listOptionRefs = _ref.listOptionRefs;
|
|
99
102
|
var _listOptionRefs = listOptionRefs;
|
|
@@ -114,41 +117,32 @@ var EuiComboBox = exports.EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
114
117
|
isListOpen: false
|
|
115
118
|
});
|
|
116
119
|
});
|
|
117
|
-
(0, _defineProperty2.default)(_this, "
|
|
118
|
-
|
|
119
|
-
if (!
|
|
120
|
-
|
|
120
|
+
(0, _defineProperty2.default)(_this, "findNextSelectableOptionIndex", function (options, startIndex) {
|
|
121
|
+
var direction = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
|
|
122
|
+
if (!options.length) return -1;
|
|
123
|
+
var index = startIndex;
|
|
124
|
+
for (var count = 0; count < options.length; count++) {
|
|
125
|
+
var option = options[index];
|
|
126
|
+
if (!option.isGroupLabelOption && !option.disabled) {
|
|
127
|
+
return index;
|
|
128
|
+
}
|
|
129
|
+
index = (index + direction + options.length) % options.length;
|
|
121
130
|
}
|
|
131
|
+
return -1; // the remaining options can't be selected (group labels or disabled)
|
|
132
|
+
});
|
|
133
|
+
(0, _defineProperty2.default)(_this, "incrementActiveOptionIndex", function (amount) {
|
|
134
|
+
if (!_this.state.matchingOptions.length) return;
|
|
122
135
|
_this.setState(function (_ref2) {
|
|
123
136
|
var activeOptionIndex = _ref2.activeOptionIndex,
|
|
124
137
|
matchingOptions = _ref2.matchingOptions;
|
|
125
|
-
var nextActiveOptionIndex;
|
|
126
|
-
if (activeOptionIndex < 0) {
|
|
127
|
-
// If this is the beginning of the user's keyboard navigation of the menu, then we'll focus
|
|
128
|
-
// either the first or last item.
|
|
129
|
-
nextActiveOptionIndex = amount < 0 ? matchingOptions.length - 1 : 0;
|
|
130
|
-
} else {
|
|
131
|
-
nextActiveOptionIndex = activeOptionIndex + amount;
|
|
132
|
-
if (nextActiveOptionIndex < 0) {
|
|
133
|
-
nextActiveOptionIndex = matchingOptions.length - 1;
|
|
134
|
-
} else if (nextActiveOptionIndex === matchingOptions.length) {
|
|
135
|
-
nextActiveOptionIndex = 0;
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
// Group titles are included in option list but are not selectable
|
|
140
|
-
// Skip group title options
|
|
141
138
|
var direction = amount > 0 ? 1 : -1;
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
nextActiveOptionIndex = 0;
|
|
148
|
-
}
|
|
149
|
-
}
|
|
139
|
+
var startIndex = activeOptionIndex < 0 ?
|
|
140
|
+
// Inintial interaction: jump to first or last item
|
|
141
|
+
amount < 0 ? matchingOptions.length - 1 : 0 :
|
|
142
|
+
// Advance by amount, wrapping around
|
|
143
|
+
(activeOptionIndex + amount + matchingOptions.length) % matchingOptions.length;
|
|
150
144
|
return {
|
|
151
|
-
activeOptionIndex:
|
|
145
|
+
activeOptionIndex: _this.findNextSelectableOptionIndex(matchingOptions, startIndex, direction)
|
|
152
146
|
};
|
|
153
147
|
});
|
|
154
148
|
});
|
|
@@ -366,27 +360,36 @@ var EuiComboBox = exports.EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
366
360
|
onChange = _this$props7.onChange,
|
|
367
361
|
selectedOptions = _this$props7.selectedOptions,
|
|
368
362
|
singleSelectionProp = _this$props7.singleSelection;
|
|
363
|
+
var _this$state2 = _this.state,
|
|
364
|
+
matchingOptions = _this$state2.matchingOptions,
|
|
365
|
+
listOptionRefs = _this$state2.listOptionRefs;
|
|
369
366
|
var singleSelection = Boolean(singleSelectionProp);
|
|
370
367
|
var changeOptions = singleSelection ? [addedOption] : selectedOptions.concat(addedOption);
|
|
371
368
|
onChange === null || onChange === void 0 || onChange(changeOptions);
|
|
372
369
|
_this.clearSearchValue();
|
|
373
|
-
_this.clearActiveOption();
|
|
374
|
-
if (!isContainerBlur) {
|
|
375
|
-
var _this$searchInputRefI2;
|
|
376
|
-
(_this$searchInputRefI2 = _this.searchInputRefInstance) === null || _this$searchInputRefI2 === void 0 || _this$searchInputRefI2.focus();
|
|
377
|
-
}
|
|
378
370
|
if (singleSelection) {
|
|
371
|
+
// List closes after single selection; return focus to the input
|
|
372
|
+
_this.clearActiveOption();
|
|
373
|
+
if (!isContainerBlur) {
|
|
374
|
+
var _this$searchInputRefI2;
|
|
375
|
+
(_this$searchInputRefI2 = _this.searchInputRefInstance) === null || _this$searchInputRefI2 === void 0 || _this$searchInputRefI2.focus();
|
|
376
|
+
}
|
|
379
377
|
requestAnimationFrame(function () {
|
|
380
378
|
return _this.closeList();
|
|
381
379
|
});
|
|
380
|
+
} else if (isContainerBlur) {
|
|
381
|
+
// User tabbed away. `onContainerBlur` will close the list. We're only cleaning up state
|
|
382
|
+
_this.clearActiveOption();
|
|
382
383
|
} else {
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
384
|
+
var currentIndex = matchingOptions.indexOf(addedOption);
|
|
385
|
+
var nextOptions = matchingOptions.filter(function (option) {
|
|
386
|
+
return option !== addedOption;
|
|
387
|
+
});
|
|
388
|
+
_this.setState({
|
|
389
|
+
listOptionRefs: listOptionRefs.slice(0, matchingOptions.length - 1),
|
|
390
|
+
activeOptionIndex: _this.findNextSelectableOptionIndex(nextOptions, Math.min(currentIndex, nextOptions.length - 1)
|
|
391
|
+
// direction defaults to 1 (forward)
|
|
392
|
+
)
|
|
390
393
|
});
|
|
391
394
|
}
|
|
392
395
|
});
|
|
@@ -494,6 +497,7 @@ var EuiComboBox = exports.EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
494
497
|
delimiter = _this$props11.delimiter,
|
|
495
498
|
append = _this$props11.append,
|
|
496
499
|
autoFocus = _this$props11.autoFocus,
|
|
500
|
+
onFocusBadge = _this$props11.onFocusBadge,
|
|
497
501
|
truncationProps = _this$props11.truncationProps,
|
|
498
502
|
inputPopoverProps = _this$props11.inputPopoverProps,
|
|
499
503
|
optionMatcher = _this$props11.optionMatcher,
|
|
@@ -501,12 +505,12 @@ var EuiComboBox = exports.EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
501
505
|
ariaLabelledby = _this$props11['aria-labelledby'],
|
|
502
506
|
ariaDescribedby = _this$props11['aria-describedby'],
|
|
503
507
|
rest = (0, _objectWithoutProperties2.default)(_this$props11, _excluded);
|
|
504
|
-
var _this$
|
|
505
|
-
activeOptionIndex = _this$
|
|
506
|
-
hasFocus = _this$
|
|
507
|
-
isListOpen = _this$
|
|
508
|
-
searchValue = _this$
|
|
509
|
-
matchingOptions = _this$
|
|
508
|
+
var _this$state3 = this.state,
|
|
509
|
+
activeOptionIndex = _this$state3.activeOptionIndex,
|
|
510
|
+
hasFocus = _this$state3.hasFocus,
|
|
511
|
+
isListOpen = _this$state3.isListOpen,
|
|
512
|
+
searchValue = _this$state3.searchValue,
|
|
513
|
+
matchingOptions = _this$state3.matchingOptions;
|
|
510
514
|
|
|
511
515
|
// Make sure we have a valid ID if users don't pass one as a prop
|
|
512
516
|
var inputId = id !== null && id !== void 0 ? id : this.rootId('_eui-combobox-id');
|
|
@@ -557,7 +561,8 @@ var EuiComboBox = exports.EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
557
561
|
delimiter: delimiter,
|
|
558
562
|
getSelectedOptionForSearchValue: _matching_options.getSelectedOptionForSearchValue,
|
|
559
563
|
listboxAriaLabel: listboxAriaLabel,
|
|
560
|
-
truncationProps: truncationProps
|
|
564
|
+
truncationProps: truncationProps,
|
|
565
|
+
onFocusBadge: onFocusBadge
|
|
561
566
|
});
|
|
562
567
|
});
|
|
563
568
|
}
|
|
@@ -582,11 +587,11 @@ var EuiComboBox = exports.EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
582
587
|
ref: _this2.comboBoxRefCallback
|
|
583
588
|
}), (0, _react2.jsx)(_popover.EuiInputPopover, (0, _extends2.default)({
|
|
584
589
|
fullWidth: fullWidth,
|
|
585
|
-
panelPaddingSize: "
|
|
590
|
+
panelPaddingSize: "s",
|
|
586
591
|
disableFocusTrap: true,
|
|
587
592
|
closeOnScroll: true
|
|
588
593
|
}, inputPopoverProps, {
|
|
589
|
-
isOpen: isListOpen,
|
|
594
|
+
isOpen: isListOpen && !noSuggestions,
|
|
590
595
|
closePopover: _this2.closeList
|
|
591
596
|
/* we don't want content changes to be announced via aria-live
|
|
592
597
|
because ComboBox uses a virtualized list that updates itself
|
|
@@ -594,7 +599,10 @@ var EuiComboBox = exports.EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
594
599
|
"aria-live": "off",
|
|
595
600
|
input: (0, _react2.jsx)(_combo_box_input.EuiComboBoxInput, {
|
|
596
601
|
compressed: compressed,
|
|
597
|
-
focusedOptionId: _this2.hasActiveOption() ? (_this2$state$listOpti = (_this2$state$listOpti2 = _this2.state.listOptionRefs[_this2.state.activeOptionIndex]) === null || _this2$state$listOpti2 === void 0 ? void 0 : _this2$state$listOpti2.id) !== null && _this2$state$listOpti !== void 0 ? _this2$state$listOpti :
|
|
602
|
+
focusedOptionId: _this2.hasActiveOption() ? (_this2$state$listOpti = (_this2$state$listOpti2 = _this2.state.listOptionRefs[_this2.state.activeOptionIndex]) === null || _this2$state$listOpti2 === void 0 ? void 0 : _this2$state$listOpti2.id) !== null && _this2$state$listOpti !== void 0 ? _this2$state$listOpti :
|
|
603
|
+
// uses the original `options` array to ensure a stable `id`, otherwise `aria-activedescendant`
|
|
604
|
+
// loses focus on selecting an option (due to actively removing it from the list)
|
|
605
|
+
_this2.rootId("_option-".concat(_this2.props.options.indexOf(matchingOptions[activeOptionIndex]))) : undefined,
|
|
598
606
|
fullWidth: fullWidth,
|
|
599
607
|
hasSelectedOptions: selectedOptions.length > 0,
|
|
600
608
|
id: inputId,
|
|
@@ -784,7 +792,7 @@ EuiComboBox.propTypes = {
|
|
|
784
792
|
"aria-labelledby": _propTypes.default.string,
|
|
785
793
|
/**
|
|
786
794
|
* By default, EuiComboBox will truncate option labels at the end of
|
|
787
|
-
* the string. You can
|
|
795
|
+
* the string. You can pass in a custom truncation configuration that
|
|
788
796
|
* accepts any [EuiTextTruncate](/#/utilities/text-truncation) prop,
|
|
789
797
|
* except for `text` and `children`.
|
|
790
798
|
*
|