@elastic/eui 116.2.0 → 116.3.1
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/avatar/avatar.js +18 -5
- package/es/components/avatar/avatar.styles.js +16 -16
- package/es/components/banner/banner.js +202 -0
- package/es/components/banner/banner.styles.js +76 -0
- package/es/components/banner/index.js +9 -0
- package/es/components/basic_table/basic_table.js +21 -10
- package/es/components/basic_table/collapsed_item_actions.js +5 -4
- package/es/components/basic_table/default_item_action.js +3 -5
- package/es/components/breadcrumbs/_breadcrumb_content.js +29 -19
- package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +2 -1
- package/es/components/context_menu/context_menu_panel_title.js +0 -12
- package/es/components/datagrid/body/cell/data_grid_cell_actions.js +11 -7
- package/es/components/datagrid/controls/display_selector.js +2 -1
- package/es/components/datagrid/controls/keyboard_shortcuts.js +2 -1
- package/es/components/date_picker/auto_refresh/auto_refresh.js +7 -4
- package/es/components/date_picker/react-datepicker/src/index.js +1 -5
- package/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +6 -3
- package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +10 -2
- package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.styles.js +2 -1
- package/es/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +8 -5
- package/es/components/form/field_password/field_password.js +6 -3
- package/es/components/header/header.a11y.js +1 -1
- package/es/components/index.js +1 -0
- package/es/components/markdown_editor/markdown_editor_help_button.js +7 -4
- package/es/components/pagination/pagination_button_arrow.js +6 -2
- package/es/components/panel/panel.styles.js +4 -4
- package/es/components/panel/split_panel/split_panel.styles.js +1 -1
- package/es/components/search_bar/search_bar.js +20 -16
- package/es/components/search_bar/search_box.js +4 -2
- package/es/components/selectable/selectable_list/selectable_list.js +1 -1
- package/es/components/selectable/selectable_list/selectable_list.styles.js +1 -1
- package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +2 -1
- package/es/components/table/sticky_header/context.js +32 -0
- package/es/components/table/sticky_header/index.js +10 -0
- package/es/components/table/sticky_header/sticky_header.js +151 -0
- package/es/components/table/sticky_header/sticky_header.styles.js +43 -0
- package/es/components/table/store/provider.js +37 -0
- package/es/components/table/store/store.js +82 -0
- package/es/components/table/store/use_unique_column_id.js +25 -0
- package/es/components/table/table.js +28 -3
- package/es/components/table/table.styles.js +4 -4
- package/es/components/table/table_header_cell.js +115 -48
- package/es/components/table/table_header_cell_checkbox.js +58 -25
- package/es/components/text_truncate/text_truncate.js +8 -3
- package/es/components/tool_tip/tool_tip.js +1 -1
- package/es/components/tool_tip/tool_tip.styles.js +14 -5
- package/es/utils/publisher.js +53 -0
- package/eui.d.ts +1284 -975
- package/i18ntokens.json +2390 -2372
- package/lib/components/avatar/avatar.js +18 -5
- package/lib/components/avatar/avatar.styles.js +16 -16
- package/lib/components/banner/banner.js +211 -0
- package/lib/components/banner/banner.styles.js +80 -0
- package/lib/components/banner/index.js +12 -0
- package/lib/components/basic_table/basic_table.js +21 -10
- package/lib/components/basic_table/collapsed_item_actions.js +5 -4
- package/lib/components/basic_table/default_item_action.js +3 -5
- package/lib/components/breadcrumbs/_breadcrumb_content.js +29 -19
- package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +2 -1
- package/lib/components/context_menu/context_menu_panel_title.js +0 -12
- package/lib/components/datagrid/body/cell/data_grid_cell_actions.js +11 -7
- package/lib/components/datagrid/controls/display_selector.js +2 -1
- package/lib/components/datagrid/controls/keyboard_shortcuts.js +2 -1
- package/lib/components/date_picker/auto_refresh/auto_refresh.js +7 -4
- package/lib/components/date_picker/react-datepicker/src/index.js +0 -4
- package/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +6 -3
- package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +10 -2
- package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.styles.js +2 -1
- package/lib/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +8 -5
- package/lib/components/form/field_password/field_password.js +6 -3
- package/lib/components/header/header.a11y.js +1 -1
- package/lib/components/index.js +11 -0
- package/lib/components/markdown_editor/markdown_editor_help_button.js +7 -4
- package/lib/components/pagination/pagination_button_arrow.js +6 -2
- package/lib/components/panel/panel.styles.js +4 -4
- package/lib/components/panel/split_panel/split_panel.styles.js +1 -1
- package/lib/components/search_bar/search_bar.js +20 -16
- package/lib/components/search_bar/search_box.js +4 -2
- package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
- package/lib/components/selectable/selectable_list/selectable_list.styles.js +1 -1
- package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +2 -1
- package/lib/components/table/sticky_header/context.js +41 -0
- package/lib/components/table/sticky_header/index.js +19 -0
- package/lib/components/table/sticky_header/sticky_header.js +156 -0
- package/lib/components/table/sticky_header/sticky_header.styles.js +47 -0
- package/lib/components/table/store/provider.js +46 -0
- package/lib/components/table/store/store.js +87 -0
- package/lib/components/table/store/use_unique_column_id.js +34 -0
- package/lib/components/table/table.js +28 -3
- package/lib/components/table/table.styles.js +4 -4
- package/lib/components/table/table_header_cell.js +117 -48
- package/lib/components/table/table_header_cell_checkbox.js +61 -25
- package/lib/components/text_truncate/text_truncate.js +8 -3
- package/lib/components/tool_tip/tool_tip.js +1 -1
- package/lib/components/tool_tip/tool_tip.styles.js +14 -5
- package/lib/utils/publisher.js +59 -0
- package/optimize/es/components/avatar/avatar.js +16 -4
- package/optimize/es/components/avatar/avatar.styles.js +16 -16
- package/optimize/es/components/banner/banner.js +112 -0
- package/optimize/es/components/banner/banner.styles.js +76 -0
- package/optimize/es/components/banner/index.js +9 -0
- package/optimize/es/components/basic_table/basic_table.js +21 -10
- package/optimize/es/components/basic_table/collapsed_item_actions.js +5 -4
- package/optimize/es/components/basic_table/default_item_action.js +3 -5
- package/optimize/es/components/breadcrumbs/_breadcrumb_content.js +27 -18
- package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +2 -1
- package/optimize/es/components/datagrid/body/cell/data_grid_cell_actions.js +11 -7
- package/optimize/es/components/datagrid/controls/display_selector.js +2 -1
- package/optimize/es/components/datagrid/controls/keyboard_shortcuts.js +2 -1
- package/optimize/es/components/date_picker/auto_refresh/auto_refresh.js +7 -4
- package/optimize/es/components/date_picker/react-datepicker/src/index.js +1 -5
- package/optimize/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +6 -3
- package/optimize/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +10 -2
- package/optimize/es/components/date_picker/super_date_picker/date_popover/date_popover_button.styles.js +2 -1
- package/optimize/es/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +8 -5
- package/optimize/es/components/form/field_password/field_password.js +6 -3
- package/optimize/es/components/header/header.a11y.js +1 -1
- package/optimize/es/components/index.js +1 -0
- package/optimize/es/components/markdown_editor/markdown_editor_help_button.js +7 -4
- package/optimize/es/components/pagination/pagination_button_arrow.js +6 -2
- package/optimize/es/components/panel/panel.styles.js +4 -4
- package/optimize/es/components/panel/split_panel/split_panel.styles.js +1 -1
- package/optimize/es/components/search_bar/search_bar.js +20 -16
- package/optimize/es/components/search_bar/search_box.js +4 -2
- package/optimize/es/components/selectable/selectable_list/selectable_list.js +1 -1
- package/optimize/es/components/selectable/selectable_list/selectable_list.styles.js +1 -1
- package/optimize/es/components/table/sticky_header/context.js +32 -0
- package/optimize/es/components/table/sticky_header/index.js +10 -0
- package/optimize/es/components/table/sticky_header/sticky_header.js +146 -0
- package/optimize/es/components/table/sticky_header/sticky_header.styles.js +43 -0
- package/optimize/es/components/table/store/provider.js +37 -0
- package/optimize/es/components/table/store/store.js +82 -0
- package/optimize/es/components/table/store/use_unique_column_id.js +25 -0
- package/optimize/es/components/table/table.js +15 -3
- package/optimize/es/components/table/table.styles.js +4 -4
- package/optimize/es/components/table/table_header_cell.js +115 -48
- package/optimize/es/components/table/table_header_cell_checkbox.js +58 -25
- package/optimize/es/components/text_truncate/text_truncate.js +8 -3
- package/optimize/es/components/tool_tip/tool_tip.js +1 -1
- package/optimize/es/components/tool_tip/tool_tip.styles.js +14 -5
- package/optimize/es/utils/publisher.js +53 -0
- package/optimize/lib/components/avatar/avatar.js +16 -4
- package/optimize/lib/components/avatar/avatar.styles.js +16 -16
- package/optimize/lib/components/banner/banner.js +121 -0
- package/optimize/lib/components/banner/banner.styles.js +80 -0
- package/optimize/lib/components/banner/index.js +12 -0
- package/optimize/lib/components/basic_table/basic_table.js +21 -10
- package/optimize/lib/components/basic_table/collapsed_item_actions.js +5 -4
- package/optimize/lib/components/basic_table/default_item_action.js +3 -5
- package/optimize/lib/components/breadcrumbs/_breadcrumb_content.js +27 -18
- package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +2 -1
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell_actions.js +11 -7
- package/optimize/lib/components/datagrid/controls/display_selector.js +2 -1
- package/optimize/lib/components/datagrid/controls/keyboard_shortcuts.js +2 -1
- package/optimize/lib/components/date_picker/auto_refresh/auto_refresh.js +7 -4
- package/optimize/lib/components/date_picker/react-datepicker/src/index.js +0 -4
- package/optimize/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +6 -3
- package/optimize/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +10 -2
- package/optimize/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.styles.js +2 -1
- package/optimize/lib/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +8 -5
- package/optimize/lib/components/form/field_password/field_password.js +6 -3
- package/optimize/lib/components/header/header.a11y.js +1 -1
- package/optimize/lib/components/index.js +11 -0
- package/optimize/lib/components/markdown_editor/markdown_editor_help_button.js +7 -4
- package/optimize/lib/components/pagination/pagination_button_arrow.js +6 -2
- package/optimize/lib/components/panel/panel.styles.js +4 -4
- package/optimize/lib/components/panel/split_panel/split_panel.styles.js +1 -1
- package/optimize/lib/components/search_bar/search_bar.js +20 -16
- package/optimize/lib/components/search_bar/search_box.js +4 -2
- package/optimize/lib/components/selectable/selectable_list/selectable_list.js +1 -1
- package/optimize/lib/components/selectable/selectable_list/selectable_list.styles.js +1 -1
- package/optimize/lib/components/table/sticky_header/context.js +41 -0
- package/optimize/lib/components/table/sticky_header/index.js +19 -0
- package/optimize/lib/components/table/sticky_header/sticky_header.js +156 -0
- package/optimize/lib/components/table/sticky_header/sticky_header.styles.js +47 -0
- package/optimize/lib/components/table/store/provider.js +46 -0
- package/optimize/lib/components/table/store/store.js +87 -0
- package/optimize/lib/components/table/store/use_unique_column_id.js +34 -0
- package/optimize/lib/components/table/table.js +15 -3
- package/optimize/lib/components/table/table.styles.js +4 -4
- package/optimize/lib/components/table/table_header_cell.js +118 -48
- package/optimize/lib/components/table/table_header_cell_checkbox.js +61 -25
- package/optimize/lib/components/text_truncate/text_truncate.js +8 -3
- package/optimize/lib/components/tool_tip/tool_tip.js +1 -1
- package/optimize/lib/components/tool_tip/tool_tip.styles.js +14 -5
- package/optimize/lib/utils/publisher.js +59 -0
- package/package.json +2 -2
- package/test-env/components/avatar/avatar.js +18 -5
- package/test-env/components/avatar/avatar.styles.js +16 -16
- package/test-env/components/banner/banner.js +210 -0
- package/test-env/components/banner/banner.styles.js +80 -0
- package/test-env/components/banner/index.js +12 -0
- package/test-env/components/basic_table/basic_table.js +21 -10
- package/test-env/components/basic_table/collapsed_item_actions.js +5 -4
- package/test-env/components/basic_table/default_item_action.js +3 -5
- package/test-env/components/breadcrumbs/_breadcrumb_content.js +29 -19
- package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +2 -1
- package/test-env/components/context_menu/context_menu_panel_title.js +0 -12
- package/test-env/components/datagrid/body/cell/data_grid_cell_actions.js +11 -7
- package/test-env/components/datagrid/controls/display_selector.js +2 -1
- package/test-env/components/datagrid/controls/keyboard_shortcuts.js +2 -1
- package/test-env/components/date_picker/auto_refresh/auto_refresh.js +7 -4
- package/test-env/components/date_picker/react-datepicker/src/index.js +0 -4
- package/test-env/components/date_picker/super_date_picker/date_popover/absolute_tab.js +6 -3
- package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.js +10 -2
- package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.styles.js +2 -1
- package/test-env/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.js +8 -5
- package/test-env/components/form/field_password/field_password.js +6 -3
- package/test-env/components/header/header.a11y.js +1 -1
- package/test-env/components/index.js +11 -0
- package/test-env/components/markdown_editor/markdown_editor_help_button.js +7 -4
- package/test-env/components/pagination/pagination_button_arrow.js +6 -2
- package/test-env/components/panel/panel.styles.js +4 -4
- package/test-env/components/panel/split_panel/split_panel.styles.js +1 -1
- package/test-env/components/search_bar/search_bar.js +20 -16
- package/test-env/components/search_bar/search_box.js +4 -2
- package/test-env/components/selectable/selectable_list/selectable_list.js +1 -1
- package/test-env/components/selectable/selectable_list/selectable_list.styles.js +1 -1
- package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +2 -1
- package/test-env/components/table/sticky_header/context.js +41 -0
- package/test-env/components/table/sticky_header/index.js +19 -0
- package/test-env/components/table/sticky_header/sticky_header.js +156 -0
- package/test-env/components/table/sticky_header/sticky_header.styles.js +47 -0
- package/test-env/components/table/store/provider.js +46 -0
- package/test-env/components/table/store/store.js +87 -0
- package/test-env/components/table/store/use_unique_column_id.js +34 -0
- package/test-env/components/table/table.js +28 -3
- package/test-env/components/table/table.styles.js +4 -4
- package/test-env/components/table/table_header_cell.js +118 -48
- package/test-env/components/table/table_header_cell_checkbox.js +61 -25
- package/test-env/components/text_truncate/text_truncate.js +8 -3
- package/test-env/components/tool_tip/tool_tip.js +1 -1
- package/test-env/components/tool_tip/tool_tip.styles.js +14 -5
- package/test-env/utils/publisher.js +59 -0
|
@@ -30,6 +30,7 @@ import { warnIfContrastBelowMin, wcagContrastMin } from '../../services/color/co
|
|
|
30
30
|
import { isColorDark, hexToRgb, isValidHex, useEuiPaletteColorBlindBehindText } from '../../services/color';
|
|
31
31
|
import { toInitials, useEuiMemoizedStyles, useEuiTheme } from '../../services';
|
|
32
32
|
import { EuiIcon } from '../icon';
|
|
33
|
+
import { EuiToolTip } from '../tool_tip';
|
|
33
34
|
import { euiAvatarStyles } from './avatar.styles';
|
|
34
35
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
35
36
|
export var SIZES = ['s', 'm', 'l', 'xl'];
|
|
@@ -74,6 +75,7 @@ export var EuiAvatar = function EuiAvatar(_ref) {
|
|
|
74
75
|
var classes = classNames('euiAvatar', _defineProperty(_defineProperty(_defineProperty({}, "euiAvatar--".concat(size), size), "euiAvatar--".concat(type), type), 'euiAvatar-isDisabled', isDisabled), className);
|
|
75
76
|
var styles = useEuiMemoizedStyles(euiAvatarStyles);
|
|
76
77
|
var cssStyles = [styles.euiAvatar, styles[type], styles[size], styles[casing], isPlain && styles.plain, isSubdued && styles.subdued, isDisabled && styles.isDisabled];
|
|
78
|
+
var tooltipCssStyles = [styles.tooltip[type]];
|
|
77
79
|
var avatarStyle = useMemo(function () {
|
|
78
80
|
if (imageUrl) {
|
|
79
81
|
return {
|
|
@@ -108,21 +110,31 @@ export var EuiAvatar = function EuiAvatar(_ref) {
|
|
|
108
110
|
// Fall back to the adjusted text color if it exists
|
|
109
111
|
return avatarStyle === null || avatarStyle === void 0 ? void 0 : avatarStyle.color;
|
|
110
112
|
}, [iconColor, avatarStyle === null || avatarStyle === void 0 ? void 0 : avatarStyle.color, isForcedColors, euiTheme]);
|
|
111
|
-
|
|
113
|
+
var avatarNode = ___EmotionJSX("div", _extends({
|
|
112
114
|
css: cssStyles,
|
|
113
115
|
className: classes,
|
|
114
116
|
style: _objectSpread(_objectSpread(_objectSpread({}, style), avatarStyle), highContrastBorder),
|
|
115
117
|
"aria-label": isDisabled ? undefined : name,
|
|
116
|
-
role: isDisabled ? 'presentation' : 'img'
|
|
117
|
-
title: name
|
|
118
|
+
role: isDisabled ? 'presentation' : 'img'
|
|
118
119
|
}, rest), !imageUrl && (iconType ? ___EmotionJSX(EuiIcon, {
|
|
119
120
|
className: "euiAvatar__icon",
|
|
120
121
|
size: iconSize || size,
|
|
121
122
|
type: iconType,
|
|
122
|
-
color: iconCustomColor
|
|
123
|
+
color: iconCustomColor,
|
|
124
|
+
"aria-hidden": true
|
|
123
125
|
}) : ___EmotionJSX("span", {
|
|
124
126
|
"aria-hidden": "true"
|
|
125
127
|
}, toInitials(name, initialsLength, initials))));
|
|
128
|
+
|
|
129
|
+
// `EuiAvatar` is not interactive so we don't need to add a `tabIndex`.
|
|
130
|
+
// It already has `aria-label`, the tooltip is only visual.
|
|
131
|
+
return name ? ___EmotionJSX(EuiToolTip, {
|
|
132
|
+
content: name,
|
|
133
|
+
anchorProps: {
|
|
134
|
+
css: tooltipCssStyles
|
|
135
|
+
},
|
|
136
|
+
disableScreenReaderOutput: true
|
|
137
|
+
}, avatarNode) : avatarNode;
|
|
126
138
|
};
|
|
127
139
|
|
|
128
140
|
// TODO: Migrate to a service
|
|
@@ -158,7 +170,8 @@ EuiAvatar.propTypes = {
|
|
|
158
170
|
*/
|
|
159
171
|
iconColor: PropTypes.oneOfType([PropTypes.oneOfType([PropTypes.string.isRequired, PropTypes.any.isRequired]).isRequired, PropTypes.oneOf([null])]),
|
|
160
172
|
/**
|
|
161
|
-
* Full name of avatar
|
|
173
|
+
* Full name of the avatar. Used as the accessible label (`aria-label`),
|
|
174
|
+
* tooltip content and used to derive initials when `initials` is not provided.
|
|
162
175
|
*/
|
|
163
176
|
name: PropTypes.string.isRequired,
|
|
164
177
|
/**
|
|
@@ -9,9 +9,9 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
|
|
|
9
9
|
|
|
10
10
|
import { css } from '@emotion/react';
|
|
11
11
|
import { logicalSizeCSS, mathWithUnits } from '../../global_styling';
|
|
12
|
-
var _avatarSize = function _avatarSize(
|
|
13
|
-
var size =
|
|
14
|
-
fontSize =
|
|
12
|
+
var _avatarSize = function _avatarSize(_ref6) {
|
|
13
|
+
var size = _ref6.size,
|
|
14
|
+
fontSize = _ref6.fontSize;
|
|
15
15
|
return "\n ".concat(logicalSizeCSS(size), ";\n font-size: ").concat(fontSize, ";\n ");
|
|
16
16
|
};
|
|
17
17
|
var _ref = process.env.NODE_ENV === "production" ? {
|
|
@@ -54,24 +54,20 @@ var _ref5 = process.env.NODE_ENV === "production" ? {
|
|
|
54
54
|
styles: "cursor:not-allowed;filter:grayscale(100%);label:isDisabled;",
|
|
55
55
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
56
56
|
};
|
|
57
|
-
var
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
64
|
-
};
|
|
65
|
-
export var euiAvatarStyles = function euiAvatarStyles(_ref8) {
|
|
66
|
-
var euiTheme = _ref8.euiTheme;
|
|
57
|
+
export var euiAvatarStyles = function euiAvatarStyles(_ref7) {
|
|
58
|
+
var euiTheme = _ref7.euiTheme;
|
|
59
|
+
var borderRadius = {
|
|
60
|
+
user: '50%',
|
|
61
|
+
space: euiTheme.border.radius.medium
|
|
62
|
+
};
|
|
67
63
|
return {
|
|
68
64
|
// Base
|
|
69
65
|
euiAvatar: /*#__PURE__*/css("flex-shrink:0;display:inline-flex;justify-content:center;align-items:center;vertical-align:middle;background-size:cover;background-color:", euiTheme.colors.lightShade, ";overflow:hidden;font-weight:", euiTheme.font.weight.medium, ";;label:euiAvatar;"),
|
|
70
66
|
// Variants
|
|
71
67
|
plain: /*#__PURE__*/css("background-color:", euiTheme.colors.emptyShade, ";;label:plain;"),
|
|
72
68
|
subdued: /*#__PURE__*/css("background-color:", euiTheme.colors.lightestShade, ";;label:subdued;"),
|
|
73
|
-
user:
|
|
74
|
-
space: /*#__PURE__*/css("border-radius:",
|
|
69
|
+
user: /*#__PURE__*/css("border-radius:", borderRadius.user, ";;label:user;"),
|
|
70
|
+
space: /*#__PURE__*/css("border-radius:", borderRadius.space, ";;label:space;"),
|
|
75
71
|
// States
|
|
76
72
|
isDisabled: _ref5,
|
|
77
73
|
// Sizes
|
|
@@ -101,6 +97,10 @@ export var euiAvatarStyles = function euiAvatarStyles(_ref8) {
|
|
|
101
97
|
capitalize: _ref4,
|
|
102
98
|
uppercase: _ref3,
|
|
103
99
|
lowercase: _ref2,
|
|
104
|
-
none: _ref
|
|
100
|
+
none: _ref,
|
|
101
|
+
tooltip: {
|
|
102
|
+
user: /*#__PURE__*/css("border-radius:", borderRadius.user, ";;label:user;"),
|
|
103
|
+
space: /*#__PURE__*/css("border-radius:", borderRadius.space, ";;label:space;")
|
|
104
|
+
}
|
|
105
105
|
};
|
|
106
106
|
};
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
var _excluded = ["title", "headingElement", "text", "size", "color", "actionProps", "media", "onDismiss", "dismissButtonProps", "children", "className", "announceOnMount", "data-test-subj"];
|
|
2
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
3
|
+
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], t.indexOf(o) >= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
4
|
+
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.indexOf(n) >= 0) continue; t[n] = r[n]; } return t; }
|
|
5
|
+
/*
|
|
6
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
7
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
8
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
9
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
10
|
+
* Side Public License, v 1.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
import React, { forwardRef } from 'react';
|
|
14
|
+
import PropTypes from "prop-types";
|
|
15
|
+
import classNames from 'classnames';
|
|
16
|
+
import { useEuiMemoizedStyles } from '../../services';
|
|
17
|
+
import { useEuiBackgroundColorCSS } from '../../global_styling';
|
|
18
|
+
import { useEuiI18n } from '../i18n';
|
|
19
|
+
import { EuiTitle } from '../title';
|
|
20
|
+
import { EuiButton, EuiButtonEmpty, EuiButtonIcon } from '../button';
|
|
21
|
+
import { EuiText } from '../text';
|
|
22
|
+
import { EuiLiveAnnouncer } from '../accessibility';
|
|
23
|
+
import { euiBannerStyles } from './banner.styles';
|
|
24
|
+
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
25
|
+
export var EuiBanner = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
26
|
+
var title = _ref.title,
|
|
27
|
+
_ref$headingElement = _ref.headingElement,
|
|
28
|
+
headingElement = _ref$headingElement === void 0 ? 'h2' : _ref$headingElement,
|
|
29
|
+
text = _ref.text,
|
|
30
|
+
_ref$size = _ref.size,
|
|
31
|
+
size = _ref$size === void 0 ? 'm' : _ref$size,
|
|
32
|
+
_ref$color = _ref.color,
|
|
33
|
+
color = _ref$color === void 0 ? 'highlighted' : _ref$color,
|
|
34
|
+
actionProps = _ref.actionProps,
|
|
35
|
+
media = _ref.media,
|
|
36
|
+
onDismiss = _ref.onDismiss,
|
|
37
|
+
dismissButtonProps = _ref.dismissButtonProps,
|
|
38
|
+
children = _ref.children,
|
|
39
|
+
className = _ref.className,
|
|
40
|
+
_ref$announceOnMount = _ref.announceOnMount,
|
|
41
|
+
announceOnMount = _ref$announceOnMount === void 0 ? false : _ref$announceOnMount,
|
|
42
|
+
_ref$dataTestSubj = _ref['data-test-subj'],
|
|
43
|
+
dataTestSubj = _ref$dataTestSubj === void 0 ? 'euiBanner' : _ref$dataTestSubj,
|
|
44
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
45
|
+
var styles = useEuiMemoizedStyles(euiBannerStyles);
|
|
46
|
+
var dismissAriaLabel = useEuiI18n('euiBanner.dismissAriaLabel', 'Dismiss "{title}" announcement', {
|
|
47
|
+
title: title
|
|
48
|
+
});
|
|
49
|
+
var Heading = headingElement;
|
|
50
|
+
var headingSize = size === 's' ? 'xxs' : 'xs';
|
|
51
|
+
var primaryActionProps = actionProps === null || actionProps === void 0 ? void 0 : actionProps.primary;
|
|
52
|
+
var secondaryActionProps = actionProps === null || actionProps === void 0 ? void 0 : actionProps.secondary;
|
|
53
|
+
// a standalone secondary action is not supported
|
|
54
|
+
var hasActions = Boolean(primaryActionProps);
|
|
55
|
+
var componentClass = 'euiBanner';
|
|
56
|
+
var classes = classNames(componentClass, className);
|
|
57
|
+
var backgroundColorStyles = useEuiBackgroundColorCSS()[color];
|
|
58
|
+
var cssStyles = [styles.euiBanner, backgroundColorStyles];
|
|
59
|
+
var containerCssStyles = [styles.container, onDismiss && styles.hasDismiss];
|
|
60
|
+
return ___EmotionJSX("div", _extends({
|
|
61
|
+
ref: ref,
|
|
62
|
+
className: classes,
|
|
63
|
+
css: cssStyles,
|
|
64
|
+
"data-size": size,
|
|
65
|
+
"data-color": color,
|
|
66
|
+
"data-test-subj": dataTestSubj
|
|
67
|
+
}, rest), ___EmotionJSX("div", {
|
|
68
|
+
className: "".concat(componentClass, "__container"),
|
|
69
|
+
css: containerCssStyles
|
|
70
|
+
}, media ? ___EmotionJSX("div", {
|
|
71
|
+
className: "".concat(componentClass, "__media"),
|
|
72
|
+
css: styles.media,
|
|
73
|
+
"data-test-subj": "".concat(dataTestSubj, "-media")
|
|
74
|
+
}, media) : null, ___EmotionJSX("div", {
|
|
75
|
+
className: "".concat(componentClass, "__body"),
|
|
76
|
+
css: styles.body
|
|
77
|
+
}, ___EmotionJSX("div", {
|
|
78
|
+
className: "".concat(componentClass, "__content"),
|
|
79
|
+
css: styles.content
|
|
80
|
+
}, ___EmotionJSX(EuiTitle, {
|
|
81
|
+
size: headingSize
|
|
82
|
+
}, ___EmotionJSX(Heading, {
|
|
83
|
+
css: styles.title,
|
|
84
|
+
"data-test-subj": "".concat(dataTestSubj, "-title")
|
|
85
|
+
}, title)), onDismiss ? ___EmotionJSX(EuiButtonIcon, _extends({
|
|
86
|
+
iconType: "cross",
|
|
87
|
+
color: "text",
|
|
88
|
+
"aria-label": dismissAriaLabel,
|
|
89
|
+
"data-test-subj": "".concat(dataTestSubj, "-dismiss")
|
|
90
|
+
}, dismissButtonProps, {
|
|
91
|
+
css: [styles.dismiss, dismissButtonProps === null || dismissButtonProps === void 0 ? void 0 : dismissButtonProps.css, ";label:EuiBanner;"],
|
|
92
|
+
onClick: onDismiss
|
|
93
|
+
})) : null, text ? ___EmotionJSX(EuiText, {
|
|
94
|
+
css: styles.text,
|
|
95
|
+
size: "s",
|
|
96
|
+
color: "subdued",
|
|
97
|
+
"data-test-subj": "".concat(dataTestSubj, "-text")
|
|
98
|
+
}, text) : null, children && children), hasActions ? ___EmotionJSX("div", {
|
|
99
|
+
className: "".concat(componentClass, "__actions"),
|
|
100
|
+
css: styles.actions,
|
|
101
|
+
"data-test-subj": "".concat(dataTestSubj, "-actions")
|
|
102
|
+
}, primaryActionProps ? ___EmotionJSX(EuiButton, _extends({
|
|
103
|
+
"data-test-subj": "".concat(dataTestSubj, "-primaryAction")
|
|
104
|
+
}, primaryActionProps, {
|
|
105
|
+
color: "primary",
|
|
106
|
+
size: "s"
|
|
107
|
+
})) : null, secondaryActionProps ? ___EmotionJSX(EuiButtonEmpty, _extends({
|
|
108
|
+
"data-test-subj": "".concat(dataTestSubj, "-secondaryAction")
|
|
109
|
+
}, secondaryActionProps, {
|
|
110
|
+
color: "primary",
|
|
111
|
+
size: "s"
|
|
112
|
+
})) : null) : null)), announceOnMount && ___EmotionJSX(EuiLiveAnnouncer, null, title && title, title && text && ",\xA0", text && text, (title || text) && children && ",\xA0", children && children));
|
|
113
|
+
});
|
|
114
|
+
EuiBanner.propTypes = {
|
|
115
|
+
className: PropTypes.string,
|
|
116
|
+
"aria-label": PropTypes.string,
|
|
117
|
+
"data-test-subj": PropTypes.string,
|
|
118
|
+
css: PropTypes.any,
|
|
119
|
+
/** Heading shown at the top. */title: PropTypes.string.isRequired,
|
|
120
|
+
/**
|
|
121
|
+
* HTML element used to render the title.
|
|
122
|
+
* @default 'h2'
|
|
123
|
+
*/
|
|
124
|
+
headingElement: PropTypes.oneOf(["h2", "h3", "h4", "h5", "h6"]),
|
|
125
|
+
/** Supporting copy rendered below the title. */text: PropTypes.node,
|
|
126
|
+
/** Extra content rendered directly below `text`. */children: PropTypes.node,
|
|
127
|
+
/** Illustration slot. Wrapped in a square (1:1) container. */media: PropTypes.node.isRequired,
|
|
128
|
+
/**
|
|
129
|
+
* Visual size variant.
|
|
130
|
+
* @default 'm'
|
|
131
|
+
*/
|
|
132
|
+
size: PropTypes.any,
|
|
133
|
+
/**
|
|
134
|
+
* Defines the announcement background color.
|
|
135
|
+
* @default 'highlighted'
|
|
136
|
+
*/
|
|
137
|
+
color: PropTypes.oneOf(["highlighted", "plain"]),
|
|
138
|
+
/** Optional action buttons. */actionProps: PropTypes.shape({
|
|
139
|
+
/** Primary call-to-action, rendered as an `EuiButton`. */primary: PropTypes.any,
|
|
140
|
+
/** Secondary action, rendered as an `EuiButtonEmpty`. Is only rendered when a primary action is available. */secondary: PropTypes.any
|
|
141
|
+
}),
|
|
142
|
+
/**
|
|
143
|
+
* When provided, a dismiss button is rendered in the top-right corner and
|
|
144
|
+
* this callback fires when the user activates it.
|
|
145
|
+
*/
|
|
146
|
+
onDismiss: PropTypes.func,
|
|
147
|
+
/** Extra props spread onto the dismiss `EuiButtonIcon`. */dismissButtonProps: PropTypes.shape({
|
|
148
|
+
"aria-label": PropTypes.string,
|
|
149
|
+
"aria-labelledby": PropTypes.string,
|
|
150
|
+
/**
|
|
151
|
+
* Overall size of button.
|
|
152
|
+
* Matches the sizes of other EuiButtons
|
|
153
|
+
*/
|
|
154
|
+
size: PropTypes.any,
|
|
155
|
+
/**
|
|
156
|
+
* Size of the icon only.
|
|
157
|
+
* This will not affect the overall size of the button
|
|
158
|
+
*/
|
|
159
|
+
iconSize: PropTypes.any,
|
|
160
|
+
/**
|
|
161
|
+
* Applies the boolean state as the `aria-pressed` property to create a toggle button.
|
|
162
|
+
* *Only use when the readable text does not change between states.*
|
|
163
|
+
*/
|
|
164
|
+
isSelected: PropTypes.bool,
|
|
165
|
+
/**
|
|
166
|
+
* Sets the display style for matching other EuiButton types.
|
|
167
|
+
* `base` is equivalent to a typical EuiButton
|
|
168
|
+
* `fill` is equivalent to a filled EuiButton
|
|
169
|
+
* `empty` (default) is equivalent to an EuiButtonEmpty
|
|
170
|
+
*/
|
|
171
|
+
display: PropTypes.any,
|
|
172
|
+
/**
|
|
173
|
+
* Disables the button and changes the icon to a loading spinner
|
|
174
|
+
*/
|
|
175
|
+
isLoading: PropTypes.bool,
|
|
176
|
+
className: PropTypes.string,
|
|
177
|
+
"data-test-subj": PropTypes.string,
|
|
178
|
+
css: PropTypes.any,
|
|
179
|
+
/**
|
|
180
|
+
* Controls the disabled behavior via the native `disabled` attribute.
|
|
181
|
+
*/
|
|
182
|
+
isDisabled: PropTypes.bool,
|
|
183
|
+
/**
|
|
184
|
+
* NOTE: Beta feature, may be changed or removed in the future
|
|
185
|
+
*
|
|
186
|
+
* Changes the native `disabled` attribute to `aria-disabled` to preserve focusability.
|
|
187
|
+
* This results in a semantically disabled button without the default browser handling of the disabled state.
|
|
188
|
+
*
|
|
189
|
+
* Use e.g. when a disabled button should have a tooltip.
|
|
190
|
+
*/
|
|
191
|
+
hasAriaDisabled: PropTypes.bool
|
|
192
|
+
}),
|
|
193
|
+
/**
|
|
194
|
+
* When set to `true`, the content is announced by screen readers on mount.
|
|
195
|
+
* Use only when the announcement is immediately relevant, e.g. as feedback to user actions.
|
|
196
|
+
* Avoid using on initial page load as it may create noise for assistive technology users.
|
|
197
|
+
*
|
|
198
|
+
* @default false
|
|
199
|
+
*/
|
|
200
|
+
announceOnMount: PropTypes.bool
|
|
201
|
+
};
|
|
202
|
+
EuiBanner.displayName = 'EuiBanner';
|
|
@@ -0,0 +1,76 @@
|
|
|
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
|
+
var CONTAINER_NAME = 'euiBanner';
|
|
12
|
+
var CQC_LAYOUTS = ['narrow', 'wide'];
|
|
13
|
+
var CQC_BREAKPOINTS = {
|
|
14
|
+
s: {
|
|
15
|
+
narrow: '(min-width: 401px)',
|
|
16
|
+
wide: '(min-width: 800px)'
|
|
17
|
+
},
|
|
18
|
+
m: {
|
|
19
|
+
narrow: '(min-width: 601px)',
|
|
20
|
+
wide: '(min-width: 1000px)'
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
var CQC_BREAKPOINT_NARROWEST = '(max-width: 400px)';
|
|
24
|
+
|
|
25
|
+
/** Maximum reading width for `text` and `children` slots. */
|
|
26
|
+
var TEXT_MAX_WIDTH = 1200;
|
|
27
|
+
var withContainerQuery = function withContainerQuery(_ref2) {
|
|
28
|
+
var layout = _ref2.layout,
|
|
29
|
+
styles = _ref2.styles;
|
|
30
|
+
return Object.keys(CQC_BREAKPOINTS).map(function (sizeKey) {
|
|
31
|
+
return "\n @container ".concat(CONTAINER_NAME, "--").concat(sizeKey, " ").concat(CQC_BREAKPOINTS[sizeKey][layout], " {\n ").concat(styles, "\n }\n ");
|
|
32
|
+
}).join('\n');
|
|
33
|
+
};
|
|
34
|
+
var _ref = process.env.NODE_ENV === "production" ? {
|
|
35
|
+
name: "qd171g-title",
|
|
36
|
+
styles: "[data-size='s'] &{display:inline;};label:title;"
|
|
37
|
+
} : {
|
|
38
|
+
name: "qd171g-title",
|
|
39
|
+
styles: "[data-size='s'] &{display:inline;};label:title;",
|
|
40
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
41
|
+
};
|
|
42
|
+
export var euiBannerStyles = function euiBannerStyles(_ref3) {
|
|
43
|
+
var euiTheme = _ref3.euiTheme;
|
|
44
|
+
return {
|
|
45
|
+
euiBanner: /*#__PURE__*/css("container-name:", CONTAINER_NAME, ";container-type:inline-size;position:relative;border:", euiTheme.border.thin, ";border-radius:", euiTheme.border.radius.medium, ";&[data-size='s']{container-name:", CONTAINER_NAME, " ", CONTAINER_NAME, "--s;}&[data-size='m']{container-name:", CONTAINER_NAME, " ", CONTAINER_NAME, "--m;};label:euiBanner;"),
|
|
46
|
+
container: /*#__PURE__*/css("display:flex;flex-direction:column;align-items:stretch;gap:", euiTheme.size.m, ";padding-inline-start:", euiTheme.size.base, ";padding-inline-end:", euiTheme.size.base, ";[data-size='m'] &{padding-block:", euiTheme.size.base, ";}[data-size='s'] &{padding-block:", euiTheme.size.m, ";}", withContainerQuery({
|
|
47
|
+
layout: 'narrow',
|
|
48
|
+
styles: "\n flex-direction: row;\n align-items: flex-start;\n gap: ".concat(euiTheme.size.base, ";\n ")
|
|
49
|
+
}), ";;label:container;"),
|
|
50
|
+
media: /*#__PURE__*/css("--euiBannerMediaSize:", "calc(".concat(euiTheme.size.base, " * 5)"), ";flex-shrink:0;inline-size:var(--euiBannerMediaSize);block-size:var(--euiBannerMediaSize);aspect-ratio:1/1;[data-size='s'] &{--euiBannerMediaSize:", "calc(".concat(euiTheme.size.base, " * 2)"), ";}", withContainerQuery({
|
|
51
|
+
layout: 'wide',
|
|
52
|
+
styles: "\n align-self: center;\n "
|
|
53
|
+
}), " img,svg{block-size:100%;inline-size:100%;};label:media;"),
|
|
54
|
+
body: /*#__PURE__*/css("flex:1 1 auto;min-inline-size:0;display:flex;flex-direction:column;align-self:flex-start;inline-size:100%;gap:", euiTheme.size.m, ";", withContainerQuery({
|
|
55
|
+
layout: 'narrow',
|
|
56
|
+
styles: "\n align-self: center;\n inline-size: auto;\n "
|
|
57
|
+
}), " ", withContainerQuery({
|
|
58
|
+
layout: 'wide',
|
|
59
|
+
styles: "\n flex-direction: row;\n align-items: center;\n /* stretch to match the media's height so align-items has space to work */\n align-self: stretch;\n justify-content: space-between;\n gap: ".concat(euiTheme.size.xxl, ";\n ")
|
|
60
|
+
}), ";;label:body;"),
|
|
61
|
+
// At size `s` the content slot becomes a block container so the title and
|
|
62
|
+
// text flow inline. Other sizes keep the flex column with a fixed gap.
|
|
63
|
+
content: /*#__PURE__*/css("flex:1 1 auto;min-inline-size:0;max-inline-size:", TEXT_MAX_WIDTH, "px;display:flex;flex-direction:column;gap:", euiTheme.size.xs, ";[data-size='s'] &{display:block;>*+*:not(.euiButtonIcon){margin-block-start:", euiTheme.size.s, ";}};label:content;"),
|
|
64
|
+
title: _ref,
|
|
65
|
+
text: /*#__PURE__*/css("[data-size='s'] &{display:inline;&::before{content:'\xB7';display:inline-block;inline-size:calc(", euiTheme.size.s, " + ", euiTheme.size.xxs, ");text-align:center;color:", euiTheme.colors.textHeading, ";}};label:text;"),
|
|
66
|
+
actions: /*#__PURE__*/css("display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;gap:", euiTheme.size.s, ";@container ", CONTAINER_NAME, " ", CQC_BREAKPOINT_NARROWEST, "{flex-wrap:wrap;>*{inline-size:100%;}}", withContainerQuery({
|
|
67
|
+
layout: 'wide',
|
|
68
|
+
styles: "\n /* Reverses source order so primary appears last (rightmost). */\n flex-direction: row-reverse;\n flex-shrink: 0;\n align-self: center;\n "
|
|
69
|
+
}), ";;label:actions;"),
|
|
70
|
+
hasDismiss: /*#__PURE__*/css(withContainerQuery({
|
|
71
|
+
layout: 'narrow',
|
|
72
|
+
styles: "\n padding-inline-end: calc(".concat(euiTheme.size.s, " * 5);\n ")
|
|
73
|
+
}), ";;label:hasDismiss;"),
|
|
74
|
+
dismiss: /*#__PURE__*/css("position:absolute;inset-block-start:", euiTheme.size.s, ";inset-inline-end:", euiTheme.size.s, ";color:", euiTheme.colors.textSubdued, ";;label:dismiss;")
|
|
75
|
+
};
|
|
76
|
+
};
|
|
@@ -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 { EuiBanner } from './banner';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var _excluded = ["className", "loading", "items", "itemId", "columns", "pagination", "sorting", "selection", "onChange", "error", "noItemsMessage", "compressed", "itemIdToExpandedRowMap", "responsiveBreakpoint", "rowProps", "cellProps", "tableCaption", "rowHeader", "tableLayout", "hasBackground", "scrollableInline", "stickyScrollbar"],
|
|
1
|
+
var _excluded = ["className", "loading", "items", "itemId", "columns", "pagination", "sorting", "selection", "onChange", "error", "noItemsMessage", "compressed", "itemIdToExpandedRowMap", "responsiveBreakpoint", "rowProps", "cellProps", "tableCaption", "rowHeader", "tableLayout", "hasBackground", "scrollableInline", "stickyScrollbar", "stickyHeader"],
|
|
2
2
|
_excluded2 = ["align", "render", "dataType", "isExpander", "textOnly", "name", "field", "description", "sortable", "footer", "mobileOptions", "nameTooltip"];
|
|
3
3
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
4
|
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
|
@@ -57,6 +57,7 @@ import { EuiI18n } from '../i18n';
|
|
|
57
57
|
import { EuiDelayRender } from '../delay_render';
|
|
58
58
|
import { htmlIdGenerator } from '../../services/accessibility';
|
|
59
59
|
import { euiBasicTableBodyLoading, safariLoadingWorkaround } from './basic_table.styles';
|
|
60
|
+
import { EuiToolTip } from '../tool_tip';
|
|
60
61
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
61
62
|
var dataTypesProfiles = {
|
|
62
63
|
auto: {
|
|
@@ -171,7 +172,11 @@ export var EuiBasicTable = /*#__PURE__*/function (_Component) {
|
|
|
171
172
|
var _ref4 = _slicedToArray(_ref3, 2),
|
|
172
173
|
selectAllRows = _ref4[0],
|
|
173
174
|
deselectRows = _ref4[1];
|
|
174
|
-
return ___EmotionJSX(
|
|
175
|
+
return ___EmotionJSX(EuiToolTip, {
|
|
176
|
+
content: checked || indeterminate ? deselectRows : selectAllRows,
|
|
177
|
+
display: "block",
|
|
178
|
+
disableScreenReaderOutput: true
|
|
179
|
+
}, ___EmotionJSX(EuiCheckbox, {
|
|
175
180
|
id: _this.selectAllIdGenerator(),
|
|
176
181
|
checked: checked,
|
|
177
182
|
indeterminate: indeterminate,
|
|
@@ -179,9 +184,8 @@ export var EuiBasicTable = /*#__PURE__*/function (_Component) {
|
|
|
179
184
|
onChange: onChange,
|
|
180
185
|
"data-test-subj": "checkboxSelectAll",
|
|
181
186
|
"aria-label": checked || indeterminate ? deselectRows : selectAllRows,
|
|
182
|
-
title: checked || indeterminate ? deselectRows : selectAllRows,
|
|
183
187
|
label: isMobile ? selectAllRows : null
|
|
184
|
-
});
|
|
188
|
+
}));
|
|
185
189
|
});
|
|
186
190
|
});
|
|
187
191
|
_defineProperty(_this, "renderCopyChar", function (columnIndex) {
|
|
@@ -371,6 +375,7 @@ export var EuiBasicTable = /*#__PURE__*/function (_Component) {
|
|
|
371
375
|
hasBackground = _this$props2.hasBackground,
|
|
372
376
|
scrollableInline = _this$props2.scrollableInline,
|
|
373
377
|
stickyScrollbar = _this$props2.stickyScrollbar,
|
|
378
|
+
stickyHeader = _this$props2.stickyHeader,
|
|
374
379
|
rest = _objectWithoutProperties(_this$props2, _excluded);
|
|
375
380
|
var classes = classNames('euiBasicTable', {
|
|
376
381
|
'euiBasicTable-loading': loading
|
|
@@ -391,7 +396,8 @@ export var EuiBasicTable = /*#__PURE__*/function (_Component) {
|
|
|
391
396
|
hasBackground = _this$props3.hasBackground,
|
|
392
397
|
loading = _this$props3.loading,
|
|
393
398
|
scrollableInline = _this$props3.scrollableInline,
|
|
394
|
-
stickyScrollbar = _this$props3.stickyScrollbar
|
|
399
|
+
stickyScrollbar = _this$props3.stickyScrollbar,
|
|
400
|
+
stickyHeader = _this$props3.stickyHeader;
|
|
395
401
|
return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(EuiTableHeaderMobile, {
|
|
396
402
|
responsiveBreakpoint: responsiveBreakpoint
|
|
397
403
|
}, this.renderSelectAll(true), this.renderTableMobileSort()), ___EmotionJSX(OverrideCopiedTabularContent, null, ___EmotionJSX(EuiTable, {
|
|
@@ -402,6 +408,7 @@ export var EuiBasicTable = /*#__PURE__*/function (_Component) {
|
|
|
402
408
|
hasBackground: hasBackground,
|
|
403
409
|
scrollableInline: scrollableInline,
|
|
404
410
|
stickyScrollbar: stickyScrollbar,
|
|
411
|
+
stickyHeader: stickyHeader,
|
|
405
412
|
css: loading && safariLoadingWorkaround
|
|
406
413
|
}, this.renderTableCaption(), this.renderTableHead(), this.renderTableBody(), this.renderTableFooter())));
|
|
407
414
|
}
|
|
@@ -670,8 +677,9 @@ export var EuiBasicTable = /*#__PURE__*/function (_Component) {
|
|
|
670
677
|
}
|
|
671
678
|
}, ___EmotionJSX(EuiIcon, {
|
|
672
679
|
type: "minusCircle",
|
|
673
|
-
color: "danger"
|
|
674
|
-
|
|
680
|
+
color: "danger",
|
|
681
|
+
"aria-hidden": true
|
|
682
|
+
}), ' ', error));
|
|
675
683
|
}
|
|
676
684
|
}, {
|
|
677
685
|
key: "renderEmptyMessage",
|
|
@@ -798,15 +806,18 @@ export var EuiBasicTable = /*#__PURE__*/function (_Component) {
|
|
|
798
806
|
index: displayedRowIndex + 1
|
|
799
807
|
}
|
|
800
808
|
}, function (selectThisRow) {
|
|
801
|
-
return ___EmotionJSX(
|
|
809
|
+
return ___EmotionJSX(EuiToolTip, {
|
|
810
|
+
content: title || selectThisRow,
|
|
811
|
+
display: "block",
|
|
812
|
+
disableScreenReaderOutput: true
|
|
813
|
+
}, ___EmotionJSX(EuiCheckbox, {
|
|
802
814
|
id: "".concat(_this6.tableId).concat(key, "-checkbox"),
|
|
803
815
|
disabled: disabled,
|
|
804
816
|
checked: checked,
|
|
805
817
|
onChange: onChange,
|
|
806
|
-
title: title || selectThisRow,
|
|
807
818
|
"aria-label": title || selectThisRow,
|
|
808
819
|
"data-test-subj": "checkboxSelectRow-".concat(itemId)
|
|
809
|
-
});
|
|
820
|
+
}));
|
|
810
821
|
})), disabled];
|
|
811
822
|
}
|
|
812
823
|
}, {
|
|
@@ -95,10 +95,10 @@ export var CollapsedItemActions = function CollapsedItemActions(_ref) {
|
|
|
95
95
|
var popoverButton = ___EmotionJSX(EuiButtonIcon, {
|
|
96
96
|
className: className,
|
|
97
97
|
"aria-label": actionsDisabled ? allActionsButtonDisabledAriaLabel : allActionsButtonAriaLabel,
|
|
98
|
-
title: actionsDisabled ? allActionsButtonDisabledAriaLabel : undefined,
|
|
99
98
|
iconType: "boxesVertical",
|
|
100
99
|
color: "text",
|
|
101
100
|
isDisabled: actionsDisabled,
|
|
101
|
+
hasAriaDisabled: actionsDisabled,
|
|
102
102
|
onClick: function onClick() {
|
|
103
103
|
return setPopoverOpen(function (isOpen) {
|
|
104
104
|
return !isOpen;
|
|
@@ -106,14 +106,15 @@ export var CollapsedItemActions = function CollapsedItemActions(_ref) {
|
|
|
106
106
|
},
|
|
107
107
|
"data-test-subj": "euiCollapsedItemActionsButton"
|
|
108
108
|
});
|
|
109
|
-
var withTooltip =
|
|
110
|
-
content: allActionsTooltip
|
|
109
|
+
var withTooltip = ___EmotionJSX(EuiToolTip, {
|
|
110
|
+
content: actionsDisabled ? allActionsButtonDisabledAriaLabel : allActionsTooltip,
|
|
111
|
+
disableScreenReaderOutput: true
|
|
111
112
|
}, popoverButton);
|
|
112
113
|
return ___EmotionJSX(EuiPopover, {
|
|
113
114
|
className: className,
|
|
114
115
|
id: "".concat(itemId, "-actions"),
|
|
115
116
|
isOpen: popoverOpen,
|
|
116
|
-
button: withTooltip
|
|
117
|
+
button: withTooltip,
|
|
117
118
|
closePopover: closePopover,
|
|
118
119
|
panelPaddingSize: "none",
|
|
119
120
|
anchorPosition: "leftCenter"
|
|
@@ -48,16 +48,13 @@ export var DefaultItemAction = function DefaultItemAction(_ref) {
|
|
|
48
48
|
className: className,
|
|
49
49
|
"aria-labelledby": ariaLabelId,
|
|
50
50
|
isDisabled: !enabled,
|
|
51
|
+
hasAriaDisabled: !enabled,
|
|
51
52
|
color: color,
|
|
52
53
|
iconType: icon,
|
|
53
54
|
onClick: onClick,
|
|
54
55
|
href: href,
|
|
55
56
|
target: action.target,
|
|
56
57
|
"data-test-subj": dataTestSubj
|
|
57
|
-
// If action is disabled, the normal tooltip can't show - attempt to
|
|
58
|
-
// provide some amount of affordance with a browser title tooltip
|
|
59
|
-
,
|
|
60
|
-
title: !enabled ? tooltipContent : undefined
|
|
61
58
|
});
|
|
62
59
|
// actionContent (action.name) is a ReactNode and must be rendered
|
|
63
60
|
// to an element and referenced by ID for screen readers
|
|
@@ -69,6 +66,7 @@ export var DefaultItemAction = function DefaultItemAction(_ref) {
|
|
|
69
66
|
className: className,
|
|
70
67
|
size: "s",
|
|
71
68
|
isDisabled: !enabled,
|
|
69
|
+
hasAriaDisabled: !enabled,
|
|
72
70
|
color: color,
|
|
73
71
|
iconType: icon,
|
|
74
72
|
onClick: onClick,
|
|
@@ -78,5 +76,5 @@ export var DefaultItemAction = function DefaultItemAction(_ref) {
|
|
|
78
76
|
flush: "right"
|
|
79
77
|
}, actionContent);
|
|
80
78
|
}
|
|
81
|
-
return
|
|
79
|
+
return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(EuiToolTip, tooltipProps, button), ariaLabelledBy);
|
|
82
80
|
};
|