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