@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
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
|
|
2
|
+
/*
|
|
3
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
4
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
5
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
6
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
7
|
+
* Side Public License, v 1.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { css } from '@emotion/react';
|
|
11
|
+
import { mathWithUnits } from '@elastic/eui-theme-common';
|
|
12
|
+
import { euiFontSize, euiTextTruncate, highContrastModeStyles, logicalCSS } from '../../global_styling';
|
|
13
|
+
export var euiListItemVariables = function euiListItemVariables(_ref3) {
|
|
14
|
+
var euiTheme = _ref3.euiTheme;
|
|
15
|
+
var spacing = {
|
|
16
|
+
horizontal: euiTheme.size.s,
|
|
17
|
+
vertical: euiTheme.size.xs
|
|
18
|
+
};
|
|
19
|
+
var textPadding = {
|
|
20
|
+
horizontal: euiTheme.size.xs,
|
|
21
|
+
vertical: mathWithUnits([spacing.vertical, euiTheme.size.xxs], function (x, y) {
|
|
22
|
+
return x + y;
|
|
23
|
+
})
|
|
24
|
+
};
|
|
25
|
+
return {
|
|
26
|
+
spacing: spacing,
|
|
27
|
+
textPadding: textPadding
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
var listItemCommonStyles = function listItemCommonStyles(euiThemeContext) {
|
|
31
|
+
var euiTheme = euiThemeContext.euiTheme;
|
|
32
|
+
return "\n display: inline-flex; /* Necessary to make sure it doesn't force the whole popover to be too wide */\n align-items: center;\n ".concat(logicalCSS('width', '100%'), "\n border-radius: ").concat(euiTheme.border.radius.small, ";\n line-height: ").concat(euiFontSize(euiThemeContext, 's').lineHeight, ";\n font-size: ").concat(euiFontSize(euiThemeContext, 's').fontSize, ";\n color: ").concat(euiTheme.colors.textParagraph, ";\n overflow: hidden;\n ");
|
|
33
|
+
};
|
|
34
|
+
var _ref = process.env.NODE_ENV === "production" ? {
|
|
35
|
+
name: "8595p9-isDisabled",
|
|
36
|
+
styles: "cursor:not-allowed;label:isDisabled;"
|
|
37
|
+
} : {
|
|
38
|
+
name: "8595p9-isDisabled",
|
|
39
|
+
styles: "cursor:not-allowed;label:isDisabled;",
|
|
40
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
41
|
+
};
|
|
42
|
+
var _ref2 = process.env.NODE_ENV === "production" ? {
|
|
43
|
+
name: "2nxums-buttonIsDisabled",
|
|
44
|
+
styles: "&[aria-disabled='true']{pointer-events:none;>*{pointer-events:none;}};label:buttonIsDisabled;"
|
|
45
|
+
} : {
|
|
46
|
+
name: "2nxums-buttonIsDisabled",
|
|
47
|
+
styles: "&[aria-disabled='true']{pointer-events:none;>*{pointer-events:none;}};label:buttonIsDisabled;",
|
|
48
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
49
|
+
};
|
|
50
|
+
export var euiListItemLayoutStyles = function euiListItemLayoutStyles(euiThemeContext) {
|
|
51
|
+
var euiTheme = euiThemeContext.euiTheme;
|
|
52
|
+
var _euiListItemVariables = euiListItemVariables(euiThemeContext),
|
|
53
|
+
spacing = _euiListItemVariables.spacing,
|
|
54
|
+
textPadding = _euiListItemVariables.textPadding;
|
|
55
|
+
|
|
56
|
+
// uses `aria-disabled` only as not all variants can have a native `:disabled` state
|
|
57
|
+
var notDisabledSelector = "&:not([aria-disabled=\"true\"])";
|
|
58
|
+
var sharedFlexStyles = "\n display: flex;\n align-items: center;\n flex-shrink: 0;\n ";
|
|
59
|
+
var highlightedStyles = "\n ".concat(notDisabledSelector, " {\n background-color: ").concat(euiTheme.colors.backgroundBaseInteractiveHover, ";\n\n ").concat(highContrastModeStyles(euiThemeContext, {
|
|
60
|
+
preferred: "\n text-decoration: underline;\n "
|
|
61
|
+
}), "\n }\n ");
|
|
62
|
+
return {
|
|
63
|
+
euiListItemLayout: /*#__PURE__*/css(listItemCommonStyles(euiThemeContext), " ", logicalCSS('padding-horizontal', spacing.horizontal), ";;label:euiListItemLayout;"),
|
|
64
|
+
euiListItemLayout__action: /*#__PURE__*/css("display:flex;flex-grow:1;", logicalCSS('width', '100%'), " color:inherit;overflow:hidden;;label:euiListItemLayout__action;"),
|
|
65
|
+
euiListItemLayout__content: /*#__PURE__*/css(logicalCSS('width', '100%'), " display:flex;align-items:center;gap:", spacing.horizontal, ";;label:euiListItemLayout__content;"),
|
|
66
|
+
euiListItemLayout__text: /*#__PURE__*/css("flex-grow:1;", logicalCSS('padding-vertical', textPadding.vertical), " ", euiFontSize(euiThemeContext, 's'), " text-align:start;>*:only-child,>*:first-child{vertical-align:middle;}>*+*{", logicalCSS('margin-top', euiTheme.size.xxs), ";};label:euiListItemLayout__text;"),
|
|
67
|
+
textWrap: {
|
|
68
|
+
truncate: /*#__PURE__*/css(euiTextTruncate(), ";label:truncate;"),
|
|
69
|
+
wrap: /*#__PURE__*/css(";label:wrap;")
|
|
70
|
+
},
|
|
71
|
+
euiListItemLayout__prepend: /*#__PURE__*/css(sharedFlexStyles, " gap:", spacing.horizontal, ";;label:euiListItemLayout__prepend;"),
|
|
72
|
+
euiListItemLayout__append: /*#__PURE__*/css(sharedFlexStyles, " gap:", spacing.horizontal, ";;label:euiListItemLayout__append;"),
|
|
73
|
+
euiListItemLayout__icon: /*#__PURE__*/css(sharedFlexStyles, ";;label:euiListItemLayout__icon;"),
|
|
74
|
+
isInteractive: /*#__PURE__*/css("cursor:pointer;&:hover{", highlightedStyles, ";};label:isInteractive;"),
|
|
75
|
+
isDisabled: /*#__PURE__*/css("color:", euiTheme.colors.textDisabled, ";cursor:not-allowed;background-color:transparent;;label:isDisabled;"),
|
|
76
|
+
buttonIsDisabled: _ref2,
|
|
77
|
+
isFocused: /*#__PURE__*/css(highlightedStyles, ";;label:isFocused;"),
|
|
78
|
+
isSelected: /*#__PURE__*/css("color:", euiTheme.colors.textPrimary, ";background-color:", euiTheme.colors.backgroundBaseInteractiveSelect, ";", notDisabledSelector, "{&:hover{background-color:", euiTheme.colors.backgroundBaseInteractiveSelectHover, ";}}.euiIcon,.euiButtonIcon{color:inherit;}.euiListItemLayout__prepend,.euiListItemLayout__append{.euiIcon{color:", euiTheme.colors.textPrimary, ";}};label:isSelected;"),
|
|
79
|
+
isSelectedFocused: /*#__PURE__*/css(notDisabledSelector, "{background-color:", euiTheme.colors.backgroundBaseInteractiveSelectHover, ";};label:isSelectedFocused;"),
|
|
80
|
+
tooltip: {
|
|
81
|
+
isDisabled: _ref
|
|
82
|
+
},
|
|
83
|
+
externalIcon: /*#__PURE__*/css("color:", euiTheme.colors.textDisabled, ";;label:externalIcon;")
|
|
84
|
+
};
|
|
85
|
+
};
|
|
86
|
+
export var euiListItemLayoutWrapperStyles = function euiListItemLayoutWrapperStyles(euiThemeContext) {
|
|
87
|
+
var _euiListItemVariables2 = euiListItemVariables(euiThemeContext),
|
|
88
|
+
spacing = _euiListItemVariables2.spacing;
|
|
89
|
+
return {
|
|
90
|
+
euiListItemLayout__wrapper: /*#__PURE__*/css(listItemCommonStyles(euiThemeContext), "flex-shrink:0;list-style:none;;label:euiListItemLayout__wrapper;"),
|
|
91
|
+
hasExtraAction: /*#__PURE__*/css(logicalCSS('padding-right', spacing.horizontal), ";;label:hasExtraAction;")
|
|
92
|
+
};
|
|
93
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export { EuiListItemLayout } from './_list_item_layout';
|
|
@@ -363,7 +363,8 @@ export var FieldValueSelectionFilter = /*#__PURE__*/function (_Component) {
|
|
|
363
363
|
noMatchesMessage: config.noOptionsMessage,
|
|
364
364
|
listProps: {
|
|
365
365
|
isVirtualized: isOverSearchThreshold || false,
|
|
366
|
-
autoFocus: true
|
|
366
|
+
autoFocus: true,
|
|
367
|
+
paddingSize: 's'
|
|
367
368
|
},
|
|
368
369
|
onChange: function onChange(options, event, changedOption) {
|
|
369
370
|
if (changedOption.data) {
|
|
@@ -696,6 +696,7 @@ EuiSelectable.propTypes = {
|
|
|
696
696
|
* `false`: allows multiple selection
|
|
697
697
|
* `true`: only allows one selection
|
|
698
698
|
* `always`: can and must have only one selection
|
|
699
|
+
* @default false
|
|
699
700
|
*/
|
|
700
701
|
singleSelection: PropTypes.oneOfType([PropTypes.oneOf(["always"]), PropTypes.bool.isRequired]),
|
|
701
702
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
var _excluded = ["data"],
|
|
2
|
-
_excluded2 = ["label", "isGroupLabel", "checked", "disabled", "prepend", "append", "ref", "key", "searchableLabel", "data", "truncationProps"],
|
|
2
|
+
_excluded2 = ["label", "isGroupLabel", "checked", "disabled", "prepend", "append", "ref", "key", "searchableLabel", "data", "truncationProps", "css"],
|
|
3
3
|
_excluded3 = ["className", "options", "searchValue", "onOptionClick", "renderOption", "height", "windowProps", "rowHeight", "activeOptionIndex", "makeOptionId", "showIcons", "singleSelection", "visibleOptions", "allowExclusions", "bordered", "paddingSize", "searchable", "onFocusBadge", "listId", "setActiveOptionIndex", "aria-label", "aria-labelledby", "aria-describedby", "role", "isPreFiltered", "isVirtualized", "textWrap", "truncationProps", "autoFocus"];
|
|
4
4
|
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; }
|
|
5
5
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -31,14 +31,15 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
31
31
|
import React, { Component, memo } from 'react';
|
|
32
32
|
import PropTypes from "prop-types";
|
|
33
33
|
import classNames from 'classnames';
|
|
34
|
-
import {
|
|
34
|
+
import { VariableSizeList, areEqual } from 'react-window';
|
|
35
35
|
import { RenderWithEuiStylesMemoizer } from '../../../services';
|
|
36
36
|
import { EuiAutoSizer } from '../../auto_sizer';
|
|
37
37
|
import { EuiHighlight } from '../../highlight';
|
|
38
38
|
import { EuiMark } from '../../mark';
|
|
39
39
|
import { EuiTextTruncate } from '../../text_truncate';
|
|
40
40
|
import { EuiSelectableListItem } from './selectable_list_item';
|
|
41
|
-
import { euiSelectableListStyles } from './selectable_list.styles';
|
|
41
|
+
import { euiSelectableListGroupLabelStyles, euiSelectableListStyles } from './selectable_list.styles';
|
|
42
|
+
import { getListItemSize } from './utils/get_list_item_size';
|
|
42
43
|
|
|
43
44
|
// Consumer Configurable Props via `EuiSelectable.listProps`
|
|
44
45
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
@@ -116,11 +117,17 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
116
117
|
ariaSetSize: latestAriaPosIndex
|
|
117
118
|
};
|
|
118
119
|
});
|
|
119
|
-
_defineProperty(_this, "
|
|
120
|
+
_defineProperty(_this, "getItemSize", function (index) {
|
|
121
|
+
var _ref = _this.props,
|
|
122
|
+
rowHeight = _ref.rowHeight;
|
|
123
|
+
var option = _this.state.optionArray[index];
|
|
124
|
+
return getListItemSize(index, rowHeight, !!(option !== null && option !== void 0 && option.isGroupLabel));
|
|
125
|
+
});
|
|
126
|
+
_defineProperty(_this, "ListRow", /*#__PURE__*/memo(function (_ref2) {
|
|
120
127
|
var _option$textWrap;
|
|
121
|
-
var data =
|
|
122
|
-
index =
|
|
123
|
-
style =
|
|
128
|
+
var data = _ref2.data,
|
|
129
|
+
index = _ref2.index,
|
|
130
|
+
style = _ref2.style;
|
|
124
131
|
var option = data[index];
|
|
125
132
|
var optionData = option.data,
|
|
126
133
|
_option = _objectWithoutProperties(option, _excluded);
|
|
@@ -135,12 +142,12 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
135
142
|
searchableLabel = option.searchableLabel,
|
|
136
143
|
_data = option.data,
|
|
137
144
|
_truncationProps = option.truncationProps,
|
|
145
|
+
css = option.css,
|
|
138
146
|
optionRest = _objectWithoutProperties(option, _excluded2);
|
|
139
147
|
var _this$props2 = _this.props,
|
|
140
148
|
activeOptionIndex = _this$props2.activeOptionIndex,
|
|
141
149
|
allowExclusions = _this$props2.allowExclusions,
|
|
142
150
|
onFocusBadge = _this$props2.onFocusBadge,
|
|
143
|
-
paddingSize = _this$props2.paddingSize,
|
|
144
151
|
showIcons = _this$props2.showIcons,
|
|
145
152
|
makeOptionId = _this$props2.makeOptionId,
|
|
146
153
|
renderOption = _this$props2.renderOption,
|
|
@@ -148,13 +155,14 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
148
155
|
searchable = _this$props2.searchable,
|
|
149
156
|
searchValue = _this$props2.searchValue,
|
|
150
157
|
isPreFiltered = _this$props2.isPreFiltered,
|
|
151
|
-
isVirtualized = _this$props2.isVirtualized
|
|
158
|
+
isVirtualized = _this$props2.isVirtualized,
|
|
159
|
+
singleSelection = _this$props2.singleSelection;
|
|
152
160
|
if (isGroupLabel) {
|
|
153
161
|
return ___EmotionJSX(RenderWithEuiStylesMemoizer, null, function (stylesMemoizer) {
|
|
154
|
-
var styles = stylesMemoizer(
|
|
162
|
+
var styles = stylesMemoizer(euiSelectableListGroupLabelStyles);
|
|
155
163
|
return ___EmotionJSX("li", _extends({
|
|
156
164
|
role: "presentation",
|
|
157
|
-
css: styles.
|
|
165
|
+
css: [styles.groupLabel, css, ";label:EuiSelectableList;"],
|
|
158
166
|
className: "euiSelectableList__groupLabel",
|
|
159
167
|
style: style
|
|
160
168
|
}, optionRest), prepend, label, append);
|
|
@@ -196,9 +204,9 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
196
204
|
onFocusBadge: onFocusBadge,
|
|
197
205
|
allowExclusions: allowExclusions,
|
|
198
206
|
showIcons: showIcons,
|
|
199
|
-
paddingSize: paddingSize,
|
|
200
207
|
searchable: searchable,
|
|
201
|
-
textWrap: textWrap
|
|
208
|
+
textWrap: textWrap,
|
|
209
|
+
singleSelection: singleSelection === false ? false : true
|
|
202
210
|
// @ts-ignore complex
|
|
203
211
|
}, optionRest), renderOption ? renderOption( // @ts-ignore complex
|
|
204
212
|
_objectSpread(_objectSpread({}, _option), optionData), searchValue) : highlightSearch ? _this.renderSearchedText(label, truncationProps) : truncationProps ? _this.renderTruncatedText(label, truncationProps) : label);
|
|
@@ -221,7 +229,9 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
221
229
|
innerElementType: 'ul',
|
|
222
230
|
itemCount: optionArray.length,
|
|
223
231
|
itemData: itemData,
|
|
224
|
-
itemSize:
|
|
232
|
+
itemSize: _this.getItemSize,
|
|
233
|
+
// Prevents scrollbar jump before VariableSizeList populates the cached size
|
|
234
|
+
estimatedItemSize: rowHeight,
|
|
225
235
|
'data-skip-axe': 'scrollable-region-focusable'
|
|
226
236
|
}, windowProps);
|
|
227
237
|
|
|
@@ -242,19 +252,19 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
242
252
|
}
|
|
243
253
|
return heightIsFull ? ___EmotionJSX(EuiAutoSizer, {
|
|
244
254
|
onResize: _this.calculateDefaultOptionWidth
|
|
245
|
-
}, function (
|
|
246
|
-
var width =
|
|
247
|
-
height =
|
|
248
|
-
return ___EmotionJSX(
|
|
255
|
+
}, function (_ref3) {
|
|
256
|
+
var width = _ref3.width,
|
|
257
|
+
height = _ref3.height;
|
|
258
|
+
return ___EmotionJSX(VariableSizeList, _extends({
|
|
249
259
|
width: width,
|
|
250
260
|
height: height
|
|
251
261
|
}, virtualizationProps), _this.ListRow);
|
|
252
262
|
}) : ___EmotionJSX(EuiAutoSizer, {
|
|
253
263
|
disableHeight: true,
|
|
254
264
|
onResize: _this.calculateDefaultOptionWidth
|
|
255
|
-
}, function (
|
|
256
|
-
var width =
|
|
257
|
-
return ___EmotionJSX(
|
|
265
|
+
}, function (_ref4) {
|
|
266
|
+
var width = _ref4.width;
|
|
267
|
+
return ___EmotionJSX(VariableSizeList, _extends({
|
|
258
268
|
width: width,
|
|
259
269
|
height: calculatedHeight
|
|
260
270
|
}, virtualizationProps), _this.ListRow);
|
|
@@ -271,8 +281,8 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
271
281
|
// each individual item. This logic tries to offset this performance hit by
|
|
272
282
|
// guesstimating a default width for each option
|
|
273
283
|
_defineProperty(_this, "focusBadgeOffset", 0);
|
|
274
|
-
_defineProperty(_this, "calculateDefaultOptionWidth", function (
|
|
275
|
-
var containerWidth =
|
|
284
|
+
_defineProperty(_this, "calculateDefaultOptionWidth", function (_ref5) {
|
|
285
|
+
var containerWidth = _ref5.width;
|
|
276
286
|
var _this$props4 = _this.props,
|
|
277
287
|
truncationProps = _this$props4.truncationProps,
|
|
278
288
|
searchable = _this$props4.searchable,
|
|
@@ -281,9 +291,9 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
281
291
|
// If it's not likely we'll need to use EuiTextTruncate, don't set state/rerender on every panel resize
|
|
282
292
|
var mayTruncate = searchable || truncationProps;
|
|
283
293
|
if (!mayTruncate) return;
|
|
284
|
-
var paddingOffset =
|
|
285
|
-
var checkedIconOffset = _this.props.showIcons === false ? 0 :
|
|
286
|
-
_this.focusBadgeOffset = _this.props.onFocusBadge
|
|
294
|
+
var paddingOffset = 24; // 2 * list item padding (8px) + 2 * text padding (4px)
|
|
295
|
+
var checkedIconOffset = _this.props.showIcons === false ? 0 : 24; // icon (16px) + gap (8px)
|
|
296
|
+
_this.focusBadgeOffset = !_this.props.onFocusBadge ? 0 : 28; // badge (20px) + gap (8px)
|
|
287
297
|
|
|
288
298
|
// Wait a tick for the listbox ref to update before proceeding
|
|
289
299
|
_this.animationFrameId = requestAnimationFrame(function () {
|
|
@@ -363,8 +373,8 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
363
373
|
options = _this$props5.options,
|
|
364
374
|
_this$props5$visibleO = _this$props5.visibleOptions,
|
|
365
375
|
visibleOptions = _this$props5$visibleO === void 0 ? options : _this$props5$visibleO;
|
|
366
|
-
_this.props.setActiveOptionIndex(visibleOptions.findIndex(function (
|
|
367
|
-
var label =
|
|
376
|
+
_this.props.setActiveOptionIndex(visibleOptions.findIndex(function (_ref6) {
|
|
377
|
+
var label = _ref6.label;
|
|
368
378
|
return label === option.label;
|
|
369
379
|
}), function () {
|
|
370
380
|
if (option.checked === 'on' && allowExclusions) {
|
|
@@ -457,11 +467,12 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
457
467
|
paddingSize = _this$props9.paddingSize,
|
|
458
468
|
textWrap = _this$props9.textWrap,
|
|
459
469
|
onFocusBadge = _this$props9.onFocusBadge,
|
|
460
|
-
searchable = _this$props9.searchable
|
|
470
|
+
searchable = _this$props9.searchable,
|
|
471
|
+
singleSelection = _this$props9.singleSelection;
|
|
461
472
|
|
|
462
473
|
// using shouldComponentUpdate to determine needed rerender before actual rerender
|
|
463
474
|
// without needing state updates or lagging behind on updates
|
|
464
|
-
if (nextProps.allowExclusions !== allowExclusions || nextProps.showIcons !== showIcons || nextProps.paddingSize !== paddingSize || nextProps.textWrap !== textWrap || nextProps.onFocusBadge !== onFocusBadge || nextProps.searchable !== searchable) {
|
|
475
|
+
if (nextProps.allowExclusions !== allowExclusions || nextProps.showIcons !== showIcons || nextProps.paddingSize !== paddingSize || nextProps.textWrap !== textWrap || nextProps.onFocusBadge !== onFocusBadge || nextProps.searchable !== searchable || nextProps.singleSelection !== singleSelection) {
|
|
465
476
|
this.listRowRerender += 1;
|
|
466
477
|
}
|
|
467
478
|
return true;
|
|
@@ -479,7 +490,8 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
479
490
|
paddingSize = _this$props10.paddingSize,
|
|
480
491
|
textWrap = _this$props10.textWrap,
|
|
481
492
|
onFocusBadge = _this$props10.onFocusBadge,
|
|
482
|
-
searchable = _this$props10.searchable
|
|
493
|
+
searchable = _this$props10.searchable,
|
|
494
|
+
singleSelection = _this$props10.singleSelection;
|
|
483
495
|
if (prevProps.activeOptionIndex !== activeOptionIndex) {
|
|
484
496
|
var makeOptionId = this.props.makeOptionId;
|
|
485
497
|
if (this.listBoxRef && this.props.searchable !== true) {
|
|
@@ -488,6 +500,8 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
488
500
|
if (typeof activeOptionIndex !== 'undefined') {
|
|
489
501
|
if (isVirtualized) {
|
|
490
502
|
var _this$listRef;
|
|
503
|
+
// NOTE: Maybe we might want to consider changing scroll position to
|
|
504
|
+
// 'center' to not have items stick to the edges of the list
|
|
491
505
|
(_this$listRef = this.listRef) === null || _this$listRef === void 0 || _this$listRef.scrollToItem(activeOptionIndex, 'auto');
|
|
492
506
|
} else {
|
|
493
507
|
var _this$listBoxRef;
|
|
@@ -512,7 +526,7 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
512
526
|
}, this.calculateAriaSetAttrs(optionArray)));
|
|
513
527
|
} else if (isVirtualized) {
|
|
514
528
|
// ensure that ListRow updates based on item props
|
|
515
|
-
if (prevProps.allowExclusions !== allowExclusions || prevProps.showIcons !== showIcons || prevProps.paddingSize !== paddingSize || prevProps.textWrap !== textWrap || prevProps.onFocusBadge !== onFocusBadge || prevProps.searchable !== searchable) {
|
|
529
|
+
if (prevProps.allowExclusions !== allowExclusions || prevProps.showIcons !== showIcons || prevProps.paddingSize !== paddingSize || prevProps.textWrap !== textWrap || prevProps.onFocusBadge !== onFocusBadge || prevProps.searchable !== searchable || prevProps.singleSelection !== singleSelection) {
|
|
516
530
|
this.setState({
|
|
517
531
|
itemData: _objectSpread({}, optionArray)
|
|
518
532
|
});
|
|
@@ -558,7 +572,7 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
558
572
|
var classes = classNames('euiSelectableList', className);
|
|
559
573
|
return ___EmotionJSX(RenderWithEuiStylesMemoizer, null, function (stylesMemoizer) {
|
|
560
574
|
var styles = stylesMemoizer(euiSelectableListStyles);
|
|
561
|
-
var cssStyles = [styles.euiSelectableList, heightIsFull && styles.fullHeight, bordered && styles.bordered];
|
|
575
|
+
var cssStyles = [styles.euiSelectableList, heightIsFull && styles.fullHeight, bordered && styles.bordered, paddingSize === 's' && styles.paddingSize.s];
|
|
562
576
|
var listClasses = classNames('euiSelectableList__list', styles.euiSelectableList__list);
|
|
563
577
|
return ___EmotionJSX("div", _extends({
|
|
564
578
|
css: cssStyles,
|
|
@@ -584,6 +598,7 @@ export var EuiSelectableList = /*#__PURE__*/function (_Component) {
|
|
|
584
598
|
}(Component);
|
|
585
599
|
_defineProperty(EuiSelectableList, "defaultProps", {
|
|
586
600
|
rowHeight: 32,
|
|
601
|
+
paddingSize: 'none',
|
|
587
602
|
searchValue: '',
|
|
588
603
|
isVirtualized: true
|
|
589
604
|
});
|
|
@@ -599,7 +614,7 @@ EuiSelectableList.propTypes = {
|
|
|
599
614
|
*/
|
|
600
615
|
activeOptionIndex: PropTypes.number,
|
|
601
616
|
/**
|
|
602
|
-
* Show the check/cross selection
|
|
617
|
+
* Show the check/cross selection indicators
|
|
603
618
|
*/
|
|
604
619
|
showIcons: PropTypes.bool,
|
|
605
620
|
singleSelection: PropTypes.oneOfType([PropTypes.oneOf(["always"]), PropTypes.bool.isRequired]),
|
|
@@ -669,9 +684,10 @@ EuiSelectableList.propTypes = {
|
|
|
669
684
|
rel: PropTypes.string
|
|
670
685
|
}).isRequired]),
|
|
671
686
|
/**
|
|
672
|
-
*
|
|
687
|
+
* Optional list container padding.
|
|
688
|
+
* @default 'none'
|
|
673
689
|
*/
|
|
674
|
-
paddingSize: PropTypes.
|
|
690
|
+
paddingSize: PropTypes.oneOf(["none", "s"]),
|
|
675
691
|
/**
|
|
676
692
|
* How to handle long text within the item.
|
|
677
693
|
* Wrapping only works if virtualization is off.
|
|
@@ -11,9 +11,10 @@ import { css } from '@emotion/react';
|
|
|
11
11
|
// .euiSelectableList__list requires a static vanilla className
|
|
12
12
|
// as it's passed down to react-window's virtualization library
|
|
13
13
|
import { css as classNameCss } from '@emotion/css';
|
|
14
|
+
import { mathWithUnits } from '@elastic/eui-theme-common';
|
|
14
15
|
import { euiFocusRing, euiYScrollWithShadows, logicalCSS } from '../../../global_styling';
|
|
15
16
|
import { euiTitle } from '../../title/title.styles';
|
|
16
|
-
import {
|
|
17
|
+
import { euiListItemVariables } from '../../list_item_layout/_list_item_layout.styles';
|
|
17
18
|
var _ref = process.env.NODE_ENV === "production" ? {
|
|
18
19
|
name: "1giu8j5-fullHeight",
|
|
19
20
|
styles: "flex-grow:1;label:fullHeight;"
|
|
@@ -24,12 +25,26 @@ var _ref = process.env.NODE_ENV === "production" ? {
|
|
|
24
25
|
};
|
|
25
26
|
export var euiSelectableListStyles = function euiSelectableListStyles(euiThemeContext) {
|
|
26
27
|
var euiTheme = euiThemeContext.euiTheme;
|
|
27
|
-
var itemVars = euiSelectableListItemVariables(euiThemeContext);
|
|
28
28
|
return {
|
|
29
29
|
euiSelectableList: /*#__PURE__*/css("&:has(:focus-visible){", euiFocusRing(euiThemeContext, 'outset'), ";};label:euiSelectableList;"),
|
|
30
30
|
fullHeight: _ref,
|
|
31
31
|
bordered: /*#__PURE__*/css("overflow:hidden;border:", euiTheme.border.thin, ";border-radius:", euiTheme.border.radius.medium, ";;label:bordered;"),
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
paddingSize: {
|
|
33
|
+
s: /*#__PURE__*/css("padding:", euiTheme.size.s, ";;label:s;")
|
|
34
|
+
},
|
|
35
|
+
euiSelectableList__list: /*#__PURE__*/classNameCss(euiYScrollWithShadows(euiThemeContext, {
|
|
36
|
+
hasAnimatedOverflowShadow: true
|
|
37
|
+
}), " &:focus,&>ul:focus{outline:none;};label:euiSelectableList__list;")
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
export var euiSelectableListGroupLabelStyles = function euiSelectableListGroupLabelStyles(euiThemeContext) {
|
|
41
|
+
var euiTheme = euiThemeContext.euiTheme;
|
|
42
|
+
var itemVars = euiListItemVariables(euiThemeContext);
|
|
43
|
+
var spacingVertical = euiTheme.size.s;
|
|
44
|
+
var borderColor = euiTheme.components.selectableListItemBorderColor;
|
|
45
|
+
return {
|
|
46
|
+
groupLabel: /*#__PURE__*/css(euiTitle(euiThemeContext, 'xxxs'), " position:relative;display:flex;align-items:center;gap:", itemVars.spacing.horizontal, ";", logicalCSS('padding-horizontal', itemVars.textPadding.horizontal), " ", logicalCSS('padding-vertical', spacingVertical), " &:not(:first-child){", logicalCSS('padding-top', mathWithUnits([spacingVertical], function (a) {
|
|
47
|
+
return a * 3;
|
|
48
|
+
})), " &::before{content:'';position:absolute;inset:0;inset-block-start:", spacingVertical, ";", logicalCSS('border-top', "".concat(euiTheme.border.width.thin, " solid ").concat(borderColor)), ";}};label:groupLabel;")
|
|
34
49
|
};
|
|
35
50
|
};
|