@elastic/eui 87.0.0 → 87.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/es/components/accordion/accordion.js +82 -35
  2. package/es/components/auto_sizer/index.js +1 -1
  3. package/es/components/breadcrumbs/breadcrumb.js +2 -3
  4. package/es/components/breadcrumbs/breadcrumbs.js +2 -3
  5. package/es/components/code/code_block_virtualized.js +25 -17
  6. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +14 -1
  7. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +8 -7
  8. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +6 -6
  9. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +7 -7
  10. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -6
  11. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +9 -9
  12. package/es/components/color_picker/color_palette_picker/color_palette_picker.js +1 -1
  13. package/es/components/control_bar/control_bar.js +2 -3
  14. package/es/components/date_picker/date_picker_range.js +5 -2
  15. package/es/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  16. package/es/components/date_picker/super_date_picker/super_update_button.js +1 -1
  17. package/es/components/empty_prompt/empty_prompt.js +0 -1
  18. package/es/components/flyout/flyout.js +9 -7
  19. package/es/components/flyout/flyout_body.js +15 -3
  20. package/es/components/form/range/dual_range.js +33 -6
  21. package/es/components/form/range/range.js +31 -6
  22. package/es/components/form/super_select/super_select.js +1 -1
  23. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +2 -3
  24. package/es/components/header/header_links/header_links.js +2 -3
  25. package/es/components/page/page_header/page_header_content.js +2 -3
  26. package/es/components/page/page_sidebar/page_sidebar.js +2 -2
  27. package/es/components/page_template/page_template.js +12 -4
  28. package/es/components/popover/input_popover.js +24 -9
  29. package/es/components/popover/popover.js +4 -6
  30. package/es/components/selectable/selectable_list/selectable_list.js +97 -79
  31. package/es/components/tool_tip/icon_tip.js +1 -1
  32. package/es/components/tool_tip/tool_tip.js +4 -14
  33. package/es/components/tool_tip/tool_tip_anchor.js +5 -14
  34. package/es/components/tour/tour_step.js +2 -3
  35. package/eui.d.ts +85 -37
  36. package/i18ntokens.json +54 -36
  37. package/lib/components/accordion/accordion.js +82 -35
  38. package/lib/components/auto_sizer/index.js +11 -7
  39. package/lib/components/breadcrumbs/breadcrumb.js +2 -3
  40. package/lib/components/code/code_block_virtualized.js +25 -17
  41. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +14 -1
  42. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +8 -7
  43. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +6 -6
  44. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +7 -7
  45. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -6
  46. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +9 -9
  47. package/lib/components/color_picker/color_palette_picker/color_palette_picker.js +1 -1
  48. package/lib/components/date_picker/date_picker_range.js +5 -2
  49. package/lib/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  50. package/lib/components/date_picker/super_date_picker/super_update_button.js +1 -1
  51. package/lib/components/empty_prompt/empty_prompt.js +0 -1
  52. package/lib/components/flyout/flyout.js +9 -7
  53. package/lib/components/flyout/flyout_body.js +15 -3
  54. package/lib/components/form/range/dual_range.js +33 -6
  55. package/lib/components/form/range/range.js +14 -6
  56. package/lib/components/form/super_select/super_select.js +1 -1
  57. package/lib/components/page/page_sidebar/page_sidebar.js +1 -1
  58. package/lib/components/page_template/page_template.js +12 -4
  59. package/lib/components/popover/input_popover.js +23 -8
  60. package/lib/components/popover/popover.js +4 -6
  61. package/lib/components/selectable/selectable_list/selectable_list.js +97 -79
  62. package/lib/components/tool_tip/icon_tip.js +1 -1
  63. package/lib/components/tool_tip/tool_tip.js +4 -14
  64. package/lib/components/tool_tip/tool_tip_anchor.js +5 -13
  65. package/optimize/es/components/accordion/accordion.js +82 -35
  66. package/optimize/es/components/auto_sizer/index.js +1 -1
  67. package/optimize/es/components/code/code_block_virtualized.js +25 -17
  68. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +5 -1
  69. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +2 -1
  70. package/optimize/es/components/date_picker/date_picker_range.js +5 -2
  71. package/optimize/es/components/flyout/flyout.js +9 -7
  72. package/optimize/es/components/flyout/flyout_body.js +4 -2
  73. package/optimize/es/components/form/range/dual_range.js +7 -4
  74. package/optimize/es/components/form/range/range.js +5 -4
  75. package/optimize/es/components/page/page_sidebar/page_sidebar.js +2 -2
  76. package/optimize/es/components/page_template/page_template.js +12 -4
  77. package/optimize/es/components/popover/input_popover.js +13 -8
  78. package/optimize/es/components/popover/popover.js +2 -3
  79. package/optimize/es/components/selectable/selectable_list/selectable_list.js +97 -79
  80. package/optimize/es/components/tool_tip/tool_tip.js +3 -13
  81. package/optimize/es/components/tool_tip/tool_tip_anchor.js +4 -8
  82. package/optimize/lib/components/accordion/accordion.js +82 -35
  83. package/optimize/lib/components/auto_sizer/index.js +11 -7
  84. package/optimize/lib/components/code/code_block_virtualized.js +25 -17
  85. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +5 -1
  86. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +2 -1
  87. package/optimize/lib/components/date_picker/date_picker_range.js +5 -2
  88. package/optimize/lib/components/flyout/flyout.js +9 -7
  89. package/optimize/lib/components/flyout/flyout_body.js +4 -2
  90. package/optimize/lib/components/form/range/dual_range.js +7 -4
  91. package/optimize/lib/components/form/range/range.js +5 -4
  92. package/optimize/lib/components/page/page_sidebar/page_sidebar.js +1 -1
  93. package/optimize/lib/components/page_template/page_template.js +12 -4
  94. package/optimize/lib/components/popover/input_popover.js +12 -7
  95. package/optimize/lib/components/popover/popover.js +2 -3
  96. package/optimize/lib/components/selectable/selectable_list/selectable_list.js +97 -79
  97. package/optimize/lib/components/tool_tip/tool_tip.js +3 -13
  98. package/optimize/lib/components/tool_tip/tool_tip_anchor.js +4 -8
  99. package/package.json +7 -9
  100. package/test-env/components/accordion/accordion.js +82 -35
  101. package/test-env/components/auto_sizer/index.js +11 -7
  102. package/test-env/components/breadcrumbs/breadcrumb.js +2 -3
  103. package/test-env/components/code/code_block_virtualized.js +25 -17
  104. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +14 -1
  105. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +8 -7
  106. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +6 -6
  107. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +7 -7
  108. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -6
  109. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +9 -9
  110. package/test-env/components/color_picker/color_palette_picker/color_palette_picker.js +1 -1
  111. package/test-env/components/date_picker/date_picker_range.js +5 -2
  112. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  113. package/test-env/components/date_picker/super_date_picker/super_update_button.js +1 -1
  114. package/test-env/components/empty_prompt/empty_prompt.js +0 -1
  115. package/test-env/components/flyout/flyout_body.js +15 -3
  116. package/test-env/components/form/range/dual_range.js +33 -6
  117. package/test-env/components/form/range/range.js +14 -6
  118. package/test-env/components/form/super_select/super_select.js +1 -1
  119. package/test-env/components/page/page_sidebar/page_sidebar.js +1 -1
  120. package/test-env/components/page_template/page_template.js +12 -4
  121. package/test-env/components/popover/input_popover.js +23 -8
  122. package/test-env/components/popover/popover.js +4 -6
  123. package/test-env/components/selectable/selectable_list/selectable_list.js +97 -79
  124. package/test-env/components/tool_tip/icon_tip.js +1 -1
  125. package/test-env/components/tool_tip/tool_tip.js +4 -14
  126. package/test-env/components/tool_tip/tool_tip_anchor.js +5 -11
@@ -17,7 +17,6 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
17
17
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
18
  var _react = _interopRequireWildcard(require("react"));
19
19
  var _classnames = _interopRequireDefault(require("classnames"));
20
- var _common = require("../common");
21
20
  var _services = require("../../services");
22
21
  var _react2 = require("../../services/react");
23
22
  var _resize_observer = require("../observer/resize_observer");
@@ -38,22 +37,13 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
38
37
  * in compliance with, at your election, the Elastic License 2.0 or the Server
39
38
  * Side Public License, v 1.
40
39
  */
41
- var positionsToClassNameMap = {
42
- top: 'euiToolTip--top',
43
- right: 'euiToolTip--right',
44
- bottom: 'euiToolTip--bottom',
45
- left: 'euiToolTip--left'
46
- };
47
- var POSITIONS = (0, _common.keysOf)(positionsToClassNameMap);
40
+ var POSITIONS = ['top', 'right', 'bottom', 'left'];
48
41
  exports.POSITIONS = POSITIONS;
42
+ var DISPLAYS = ['inlineBlock', 'block'];
49
43
  var delayToMsMap = {
50
44
  regular: 250,
51
45
  long: 250 * 5
52
46
  };
53
- var displayToClassNameMap = {
54
- inlineBlock: undefined,
55
- block: 'euiToolTipAnchor--displayBlock'
56
- };
57
47
  var DEFAULT_TOOLTIP_STYLES = {
58
48
  // position the tooltip content near the top-left
59
49
  // corner of the window so it can't create scrollbars
@@ -264,7 +254,7 @@ var EuiToolTip = /*#__PURE__*/function (_Component) {
264
254
  onFocus: this.onFocus,
265
255
  onMouseOver: this.showToolTip,
266
256
  onMouseOut: this.onMouseOut,
267
- id: this.state.id,
257
+ id: id,
268
258
  className: anchorClasses,
269
259
  display: display,
270
260
  isVisible: visible
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.EuiToolTipAnchor = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
11
  var _react = _interopRequireWildcard(require("react"));
13
12
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -23,8 +22,6 @@ var _excluded = ["onBlur", "onFocus", "onMouseOver", "onMouseOut", "id", "classN
23
22
  */
24
23
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
24
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
26
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
27
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
28
25
  var EuiToolTipAnchor = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
29
26
  var _onBlur = _ref.onBlur,
30
27
  _onFocus = _ref.onFocus,
@@ -48,7 +45,7 @@ var EuiToolTipAnchor = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref)
48
45
  className: classes,
49
46
  onMouseOver: onMouseOver,
50
47
  onMouseOut: onMouseOut
51
- }), /*#__PURE__*/(0, _react.cloneElement)(children, _objectSpread({
48
+ }), /*#__PURE__*/(0, _react.cloneElement)(children, {
52
49
  onFocus: function onFocus(e) {
53
50
  _onFocus();
54
51
  children.props.onFocus && children.props.onFocus(e);
@@ -56,10 +53,9 @@ var EuiToolTipAnchor = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref)
56
53
  onBlur: function onBlur(e) {
57
54
  _onBlur();
58
55
  children.props.onBlur && children.props.onBlur(e);
59
- }
60
- }, isVisible && {
61
- 'aria-describedby': id
62
- })))
56
+ },
57
+ 'aria-describedby': isVisible ? (0, _classnames.default)(id, children.props['aria-describedby']) : children.props['aria-describedby']
58
+ }))
63
59
  );
64
60
  });
65
61
  exports.EuiToolTipAnchor = EuiToolTipAnchor;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@elastic/eui",
3
3
  "description": "Elastic UI Component Library",
4
- "version": "87.0.0",
4
+ "version": "87.1.0",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "main": "lib",
7
7
  "module": "es",
@@ -68,25 +68,24 @@
68
68
  "@types/lodash": "^4.14.194",
69
69
  "@types/numeral": "^0.0.28",
70
70
  "@types/react-input-autosize": "^2.2.1",
71
- "@types/react-virtualized-auto-sizer": "^1.0.1",
72
71
  "@types/react-window": "^1.8.5",
73
72
  "@types/refractor": "^3.0.0",
74
73
  "@types/resize-observer-browser": "^0.1.5",
75
74
  "@types/vfile-message": "^2.0.0",
76
75
  "chroma-js": "^2.4.2",
77
- "classnames": "^2.2.6",
76
+ "classnames": "^2.3.2",
78
77
  "lodash": "^4.17.21",
79
78
  "mdast-util-to-hast": "^10.2.0",
80
79
  "numeral": "^2.0.6",
81
80
  "prop-types": "^15.6.0",
82
- "react-dropzone": "^11.5.3",
81
+ "react-dropzone": "^11.7.1",
83
82
  "react-element-to-jsx-string": "^14.3.4",
84
83
  "react-focus-on": "^3.9.1",
85
84
  "react-input-autosize": "^3.0.0",
86
85
  "react-is": "^17.0.2",
87
86
  "react-remove-scroll-bar": "^2.3.4",
88
- "react-virtualized-auto-sizer": "^1.0.6",
89
- "react-window": "^1.8.6",
87
+ "react-virtualized-auto-sizer": "^1.0.20",
88
+ "react-window": "^1.8.9",
90
89
  "refractor": "^3.5.0",
91
90
  "rehype-raw": "^5.0.0",
92
91
  "rehype-react": "^6.0.0",
@@ -95,7 +94,7 @@
95
94
  "remark-emoji": "^2.1.0",
96
95
  "remark-parse-no-trim": "^8.0.4",
97
96
  "remark-rehype": "^8.0.0",
98
- "tabbable": "^5.2.1",
97
+ "tabbable": "^5.3.3",
99
98
  "text-diff": "^1.0.1",
100
99
  "unified": "^9.2.0",
101
100
  "unist-util-visit": "^2.0.3",
@@ -147,7 +146,7 @@
147
146
  "@testing-library/user-event": "^13.5.0",
148
147
  "@types/cheerio": "^0.22.31",
149
148
  "@types/chroma-js": "^2.4.0",
150
- "@types/classnames": "^2.2.10",
149
+ "@types/classnames": "^2.3.1",
151
150
  "@types/enzyme": "^3.10.5",
152
151
  "@types/jest": "^24.0.6",
153
152
  "@types/node": "^10.17.5",
@@ -155,7 +154,6 @@
155
154
  "@types/react-dom": "^18.2.6",
156
155
  "@types/react-is": "^17.0.3",
157
156
  "@types/react-router-dom": "^5.3.3",
158
- "@types/tabbable": "^3.1.2",
159
157
  "@types/testing-library__jest-dom": "^5.14.3",
160
158
  "@types/url-parse": "^1.4.8",
161
159
  "@types/uuid": "^8.3.0",
@@ -18,6 +18,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
18
18
  var _react = _interopRequireWildcard(require("react"));
19
19
  var _propTypes = _interopRequireDefault(require("prop-types"));
20
20
  var _classnames = _interopRequireDefault(require("classnames"));
21
+ var _tabbable = require("tabbable");
21
22
  var _loading = require("../loading");
22
23
  var _resize_observer = require("../observer/resize_observer");
23
24
  var _text = require("../text");
@@ -52,33 +53,68 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
52
53
  _this = _super.call.apply(_super, [this].concat(args));
53
54
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "childContent", null);
54
55
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "childWrapper", null);
56
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "tabbableChildren", null);
55
57
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", {
56
58
  isOpen: _this.props.forceState ? _this.props.forceState === 'open' : _this.props.initialIsOpen
57
59
  });
58
60
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setChildContentHeight", function () {
59
- var forceState = _this.props.forceState;
60
61
  requestAnimationFrame(function () {
61
- var height = _this.childContent && (forceState ? forceState === 'open' : _this.state.isOpen) ? _this.childContent.clientHeight : 0;
62
+ var height = _this.childContent && _this.isOpen ? _this.childContent.clientHeight : 0;
62
63
  _this.childWrapper && _this.childWrapper.setAttribute('style', (0, _global_styling.logicalCSS)('height', "".concat(height, "px")));
63
64
  });
64
65
  });
65
66
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onToggle", function () {
66
67
  var forceState = _this.props.forceState;
67
68
  if (forceState) {
68
- _this.props.onToggle && _this.props.onToggle(forceState === 'open' ? false : true);
69
+ var _this$props$onToggle, _this$props;
70
+ (_this$props$onToggle = (_this$props = _this.props).onToggle) === null || _this$props$onToggle === void 0 ? void 0 : _this$props$onToggle.call(_this$props, forceState === 'open' ? false : true);
69
71
  } else {
70
72
  _this.setState(function (prevState) {
71
73
  return {
72
74
  isOpen: !prevState.isOpen
73
75
  };
74
76
  }, function () {
77
+ var _this$props$onToggle2, _this$props2;
75
78
  if (_this.state.isOpen && _this.childWrapper) {
76
79
  _this.childWrapper.focus();
77
80
  }
78
- _this.props.onToggle && _this.props.onToggle(_this.state.isOpen);
81
+ (_this$props$onToggle2 = (_this$props2 = _this.props).onToggle) === null || _this$props$onToggle2 === void 0 ? void 0 : _this$props$onToggle2.call(_this$props2, _this.state.isOpen);
79
82
  });
80
83
  }
81
84
  });
85
+ // When accordions are closed, tabbable children should not be present in the tab order
86
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "preventTabbing", function () {
87
+ if (_this.childContent) {
88
+ // Re-check for children on every close - content can change dynamically
89
+ _this.tabbableChildren = (0, _tabbable.tabbable)(_this.childContent);
90
+ _this.tabbableChildren.forEach(function (element) {
91
+ // If the element has an existing `tabIndex` set, make sure we can restore it
92
+ var originalTabIndex = element.getAttribute('tabIndex');
93
+ if (originalTabIndex) {
94
+ element.setAttribute('data-original-tabindex', originalTabIndex);
95
+ }
96
+ element.setAttribute('tabIndex', '-1');
97
+ });
98
+ }
99
+ });
100
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "enableTabbing", function () {
101
+ // If no tabbable children were set, we don't need to re-enable anything
102
+ if (_this.tabbableChildren) {
103
+ _this.tabbableChildren.forEach(function (element) {
104
+ var originalTabIndex = element.getAttribute('data-original-tabindex');
105
+ if (originalTabIndex) {
106
+ // If the element originally had an existing `tabIndex` set, restore it
107
+ element.setAttribute('tabIndex', originalTabIndex);
108
+ element.removeAttribute('data-original-tabindex');
109
+ } else {
110
+ // If not, remove the tabIndex property
111
+ element.removeAttribute('tabIndex');
112
+ }
113
+ });
114
+ // Cleanup - unset the list of children
115
+ _this.tabbableChildren = null;
116
+ }
117
+ });
82
118
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setChildContentRef", function (node) {
83
119
  _this.childContent = node;
84
120
  });
@@ -93,44 +129,55 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
93
129
  return _this;
94
130
  }
95
131
  (0, _createClass2.default)(EuiAccordionClass, [{
132
+ key: "isOpen",
133
+ get: function get() {
134
+ return this.props.forceState ? this.props.forceState === 'open' : this.state.isOpen;
135
+ }
136
+ }, {
96
137
  key: "componentDidMount",
97
138
  value: function componentDidMount() {
98
139
  this.setChildContentHeight();
140
+ if (!this.isOpen) this.preventTabbing();
99
141
  }
100
142
  }, {
101
143
  key: "componentDidUpdate",
102
- value: function componentDidUpdate() {
144
+ value: function componentDidUpdate(prevProps, prevState) {
103
145
  this.setChildContentHeight();
146
+ if (prevProps.forceState === 'open' && this.props.forceState === 'closed' || prevState.isOpen === true && this.state.isOpen === false) {
147
+ this.preventTabbing();
148
+ }
149
+ if (prevProps.forceState === 'closed' && this.props.forceState === 'open' || prevState.isOpen === false && this.state.isOpen === true) {
150
+ this.enableTabbing();
151
+ }
104
152
  }
105
153
  }, {
106
154
  key: "render",
107
155
  value: function render() {
108
156
  var _buttonProps$id,
109
157
  _this2 = this;
110
- var _this$props = this.props,
111
- children = _this$props.children,
112
- buttonContent = _this$props.buttonContent,
113
- className = _this$props.className,
114
- id = _this$props.id,
115
- _this$props$element = _this$props.element,
116
- Element = _this$props$element === void 0 ? 'div' : _this$props$element,
117
- buttonClassName = _this$props.buttonClassName,
118
- buttonContentClassName = _this$props.buttonContentClassName,
119
- extraAction = _this$props.extraAction,
120
- paddingSize = _this$props.paddingSize,
121
- initialIsOpen = _this$props.initialIsOpen,
122
- arrowDisplay = _this$props.arrowDisplay,
123
- forceState = _this$props.forceState,
124
- isLoading = _this$props.isLoading,
125
- isLoadingMessage = _this$props.isLoadingMessage,
126
- isDisabled = _this$props.isDisabled,
127
- buttonProps = _this$props.buttonProps,
128
- _this$props$buttonEle = _this$props.buttonElement,
129
- _ButtonElement = _this$props$buttonEle === void 0 ? 'button' : _this$props$buttonEle,
130
- arrowProps = _this$props.arrowProps,
131
- theme = _this$props.theme,
132
- rest = (0, _objectWithoutProperties2.default)(_this$props, _excluded);
133
- var isOpen = forceState ? forceState === 'open' : this.state.isOpen;
158
+ var _this$props3 = this.props,
159
+ children = _this$props3.children,
160
+ buttonContent = _this$props3.buttonContent,
161
+ className = _this$props3.className,
162
+ id = _this$props3.id,
163
+ _this$props3$element = _this$props3.element,
164
+ Element = _this$props3$element === void 0 ? 'div' : _this$props3$element,
165
+ buttonClassName = _this$props3.buttonClassName,
166
+ buttonContentClassName = _this$props3.buttonContentClassName,
167
+ extraAction = _this$props3.extraAction,
168
+ paddingSize = _this$props3.paddingSize,
169
+ initialIsOpen = _this$props3.initialIsOpen,
170
+ arrowDisplay = _this$props3.arrowDisplay,
171
+ forceState = _this$props3.forceState,
172
+ isLoading = _this$props3.isLoading,
173
+ isLoadingMessage = _this$props3.isLoadingMessage,
174
+ isDisabled = _this$props3.isDisabled,
175
+ buttonProps = _this$props3.buttonProps,
176
+ _this$props3$buttonEl = _this$props3.buttonElement,
177
+ _ButtonElement = _this$props3$buttonEl === void 0 ? 'button' : _this$props3$buttonEl,
178
+ arrowProps = _this$props3.arrowProps,
179
+ theme = _this$props3.theme,
180
+ rest = (0, _objectWithoutProperties2.default)(_this$props3, _excluded);
134
181
 
135
182
  // Force button element to be a legend if the element is a fieldset
136
183
  var ButtonElement = Element === 'fieldset' ? 'legend' : _ButtonElement;
@@ -139,7 +186,7 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
139
186
  // Force visibility of arrow button if button element is not focusable
140
187
  var _arrowDisplay = arrowDisplay === 'none' && !buttonElementIsFocusable ? 'left' : arrowDisplay;
141
188
  var classes = (0, _classnames.default)('euiAccordion', {
142
- 'euiAccordion-isOpen': isOpen
189
+ 'euiAccordion-isOpen': this.isOpen
143
190
  }, className);
144
191
  var childrenClasses = (0, _classnames.default)('euiAccordion__children', {
145
192
  'euiAccordion__children-isLoading': isLoading
@@ -147,7 +194,7 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
147
194
  var buttonClasses = (0, _classnames.default)('euiAccordion__button', buttonClassName, buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.className);
148
195
  var buttonContentClasses = (0, _classnames.default)('euiAccordion__buttonContent', buttonContentClassName);
149
196
  var iconButtonClasses = (0, _classnames.default)('euiAccordion__iconButton', {
150
- 'euiAccordion__iconButton-isOpen': isOpen,
197
+ 'euiAccordion__iconButton-isOpen': this.isOpen,
151
198
  'euiAccordion__iconButton--right': _arrowDisplay === 'right'
152
199
  }, arrowProps === null || arrowProps === void 0 ? void 0 : arrowProps.className);
153
200
 
@@ -157,9 +204,9 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
157
204
  var childrenStyles = (0, _accordion.euiAccordionChildrenStyles)(theme);
158
205
  var cssChildrenStyles = [childrenStyles.euiAccordion__children, isLoading && childrenStyles.isLoading, paddingSize && paddingSize !== 'none' && childrenStyles[paddingSize]];
159
206
  var childWrapperStyles = (0, _accordion.euiAccordionChildWrapperStyles)(theme);
160
- var cssChildWrapperStyles = [childWrapperStyles.euiAccordion__childWrapper, isOpen && childWrapperStyles.isOpen];
207
+ var cssChildWrapperStyles = [childWrapperStyles.euiAccordion__childWrapper, this.isOpen && childWrapperStyles.isOpen];
161
208
  var iconButtonStyles = (0, _accordion.euiAccordionIconButtonStyles)(theme);
162
- var cssIconButtonStyles = [iconButtonStyles.euiAccordion__iconButton, isOpen && iconButtonStyles.isOpen, _arrowDisplay === 'right' && iconButtonStyles.arrowRight, arrowProps === null || arrowProps === void 0 ? void 0 : arrowProps.css];
209
+ var cssIconButtonStyles = [iconButtonStyles.euiAccordion__iconButton, this.isOpen && iconButtonStyles.isOpen, _arrowDisplay === 'right' && iconButtonStyles.arrowRight, arrowProps === null || arrowProps === void 0 ? void 0 : arrowProps.css];
163
210
  var optionalActionStyles = (0, _accordion.euiAccordionOptionalActionStyles)();
164
211
  var cssOptionalActionStyles = [optionalActionStyles.euiAccordion__optionalAction];
165
212
  var spinnerStyles = (0, _accordion.euiAccordionSpinnerStyles)(theme);
@@ -177,7 +224,7 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
177
224
  iconType: "arrowRight",
178
225
  onClick: this.onToggle,
179
226
  "aria-controls": id,
180
- "aria-expanded": isOpen,
227
+ "aria-expanded": this.isOpen,
181
228
  "aria-labelledby": buttonId,
182
229
  tabIndex: buttonElementIsFocusable ? -1 : 0,
183
230
  isDisabled: isDisabled
@@ -211,7 +258,7 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
211
258
  "aria-controls": id
212
259
  // `aria-expanded` is only a valid attribute on interactive controls - axe-core throws a violation otherwise
213
260
  ,
214
- "aria-expanded": ButtonElement === 'button' ? isOpen : undefined,
261
+ "aria-expanded": ButtonElement === 'button' ? this.isOpen : undefined,
215
262
  onClick: isDisabled ? undefined : this.onToggle,
216
263
  type: ButtonElement === 'button' ? 'button' : undefined,
217
264
  disabled: ButtonElement === 'button' ? isDisabled : undefined
@@ -3,10 +3,14 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- Object.defineProperty(exports, "EuiAutoSizer", {
7
- enumerable: true,
8
- get: function get() {
9
- return _auto_sizer.EuiAutoSizer;
10
- }
11
- });
12
- var _auto_sizer = require("./auto_sizer");
6
+ var _auto_sizer = require("./auto_sizer");
7
+ Object.keys(_auto_sizer).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _auto_sizer[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _auto_sizer[key];
14
+ }
15
+ });
16
+ });
@@ -189,9 +189,8 @@ EuiBreadcrumbContent.propTypes = {
189
189
  */
190
190
  anchorPosition: _propTypes.default.any,
191
191
  /**
192
- * Style and position alteration for arrow-less, left-aligned
193
- * attachment. Intended for use with inputs as anchors, e.g.
194
- * EuiInputPopover
192
+ * Style and position alteration for arrow-less attachment.
193
+ * Intended for use with inputs as anchors, e.g. EuiInputPopover
195
194
  */
196
195
  attachToAnchor: _propTypes.default.bool,
197
196
  buttonRef: _propTypes.default.any,
@@ -53,27 +53,35 @@ var EuiCodeBlockVirtualized = function EuiCodeBlockVirtualized(_ref) {
53
53
  }, codeProps));
54
54
  });
55
55
  }, [codeProps]);
56
- return (0, _react2.jsx)(_auto_sizer.EuiAutoSizer, {
57
- disableHeight: typeof overflowHeight === 'number'
56
+ var virtualizationProps = {
57
+ itemData: data,
58
+ itemSize: rowHeight,
59
+ itemCount: data.length,
60
+ outerElementType: VirtualizedOuterElement,
61
+ innerElementType: VirtualizedInnerElement
62
+ };
63
+ return typeof overflowHeight === 'number' ? (0, _react2.jsx)(_auto_sizer.EuiAutoSizer, {
64
+ disableHeight: true
58
65
  }, function (_ref4) {
59
- var height = _ref4.height,
60
- width = _ref4.width;
61
- return (0, _react2.jsx)(_reactWindow.FixedSizeList, {
62
- height: height !== null && height !== void 0 ? height : overflowHeight,
63
- width: width,
64
- itemData: data,
65
- itemSize: rowHeight,
66
- itemCount: data.length,
67
- outerElementType: VirtualizedOuterElement,
68
- innerElementType: VirtualizedInnerElement
69
- }, ListRow);
66
+ var width = _ref4.width;
67
+ return (0, _react2.jsx)(_reactWindow.FixedSizeList, (0, _extends2.default)({
68
+ height: overflowHeight,
69
+ width: width
70
+ }, virtualizationProps), ListRow);
71
+ }) : (0, _react2.jsx)(_auto_sizer.EuiAutoSizer, null, function (_ref5) {
72
+ var height = _ref5.height,
73
+ width = _ref5.width;
74
+ return (0, _react2.jsx)(_reactWindow.FixedSizeList, (0, _extends2.default)({
75
+ height: height,
76
+ width: width
77
+ }, virtualizationProps), ListRow);
70
78
  });
71
79
  };
72
80
  exports.EuiCodeBlockVirtualized = EuiCodeBlockVirtualized;
73
- var ListRow = function ListRow(_ref5) {
74
- var data = _ref5.data,
75
- index = _ref5.index,
76
- style = _ref5.style;
81
+ var ListRow = function ListRow(_ref6) {
82
+ var data = _ref6.data,
83
+ index = _ref6.index,
84
+ style = _ref6.style;
77
85
  var row = data[index];
78
86
  row.properties.style = (0, _global_styling.logicalStyles)(style);
79
87
  return (0, _utils.nodeToHtml)(row, index, data, 0);
@@ -17,6 +17,7 @@ var _classnames = _interopRequireDefault(require("classnames"));
17
17
  var _services = require("../../services");
18
18
  var _global_styling = require("../../global_styling");
19
19
  var _flyout = require("../flyout");
20
+ var _i18n = require("../i18n");
20
21
  var _header = require("../header/header.styles");
21
22
  var _context = require("./context");
22
23
  var _collapsible_nav_button = require("./collapsible_nav_button");
@@ -132,6 +133,7 @@ var EuiCollapsibleNavBeta = function EuiCollapsibleNavBeta(_ref) {
132
133
  conditionalId: id,
133
134
  suffix: 'euiCollapsibleNav'
134
135
  });
136
+ var defaultAriaLabel = (0, _i18n.useEuiI18n)('euiCollapsibleNavBeta.ariaLabel', 'Site menu');
135
137
  var buttonRef = (0, _react.useRef)(null);
136
138
  var focusTrapProps = (0, _react.useMemo)(function () {
137
139
  return _objectSpread(_objectSpread({}, _focusTrapProps), {}, {
@@ -143,7 +145,9 @@ var EuiCollapsibleNavBeta = function EuiCollapsibleNavBeta(_ref) {
143
145
  var cssStyles = [styles.euiCollapsibleNavBeta, styles[side], isPush && styles.isPush, isPush && isCollapsed && styles.isPushCollapsed, isOverlayFullWidth && styles.isOverlayFullWidth];
144
146
 
145
147
  // Wait for any fixed headers to be queried before rendering (prevents position jumping)
146
- var flyout = fixedHeadersCount !== false && (0, _react2.jsx)(_flyout.EuiFlyout, (0, _extends2.default)({}, rest, {
148
+ var flyout = fixedHeadersCount !== false && (0, _react2.jsx)(_flyout.EuiFlyout, (0, _extends2.default)({
149
+ "aria-label": defaultAriaLabel
150
+ }, rest, {
147
151
  // EuiCollapsibleNav is significantly less permissive than EuiFlyout
148
152
  id: flyoutID,
149
153
  css: cssStyles,
@@ -175,6 +179,15 @@ var EuiCollapsibleNavBeta = function EuiCollapsibleNavBeta(_ref) {
175
179
  exports.EuiCollapsibleNavBeta = EuiCollapsibleNavBeta;
176
180
  EuiCollapsibleNavBeta.propTypes = {
177
181
  className: _propTypes.default.string,
182
+ /**
183
+ * Overlay flyouts are considered dialogs, and dialogs must have a label.
184
+ * By default, a label of `Site menu` will be applied.
185
+ *
186
+ * If your usage of this component is not actually for site-wide navigation,
187
+ * please set your own `aria-label` or `aria-labelledby`.
188
+ *
189
+ * @default 'Site menu'
190
+ */
178
191
  "aria-label": _propTypes.default.string,
179
192
  "data-test-subj": _propTypes.default.string,
180
193
  css: _propTypes.default.any,
@@ -59,7 +59,8 @@ var EuiCollapsedNavButton = function EuiCollapsedNavButton(_ref) {
59
59
  size: "s",
60
60
  color: "text",
61
61
  href: href,
62
- onClick: onClick
62
+ onClick: onClick,
63
+ "aria-label": title
63
64
  }, linkProps, {
64
65
  // Exclusive union shenanigans
65
66
  className: buttonClassName,
@@ -72,11 +73,11 @@ var EuiCollapsedNavButton = function EuiCollapsedNavButton(_ref) {
72
73
  exports.EuiCollapsedNavButton = EuiCollapsedNavButton;
73
74
  EuiCollapsedNavButton.propTypes = {
74
75
  /**
75
- * ReactNode to render as this component's title
76
+ * Required text to render as the nav item title
76
77
  */
77
- title: _propTypes.default.node.isRequired,
78
+ title: _propTypes.default.string.isRequired,
78
79
  /**
79
- * Allows customizing title's element.
80
+ * Allows customizing the title element.
80
81
  * Consider using a heading element for better accessibility.
81
82
  * Defaults to an unsemantic `span` or `div`, depending on context.
82
83
  */
@@ -104,11 +105,11 @@ EuiCollapsedNavButton.propTypes = {
104
105
  */
105
106
  items: _propTypes.default.arrayOf(_propTypes.default.shape({
106
107
  /**
107
- * ReactNode to render as this component's title
108
+ * Required text to render as the nav item title
108
109
  */
109
- title: _propTypes.default.node,
110
+ title: _propTypes.default.string,
110
111
  /**
111
- * Allows customizing title's element.
112
+ * Allows customizing the title element.
112
113
  * Consider using a heading element for better accessibility.
113
114
  * Defaults to an unsemantic `span` or `div`, depending on context.
114
115
  */
@@ -43,11 +43,11 @@ var EuiCollapsedNavItem = function EuiCollapsedNavItem(_ref) {
43
43
  exports.EuiCollapsedNavItem = EuiCollapsedNavItem;
44
44
  EuiCollapsedNavItem.propTypes = {
45
45
  /**
46
- * ReactNode to render as this component's title
46
+ * Required text to render as the nav item title
47
47
  */
48
- title: _propTypes.default.node.isRequired,
48
+ title: _propTypes.default.string.isRequired,
49
49
  /**
50
- * Allows customizing title's element.
50
+ * Allows customizing the title element.
51
51
  * Consider using a heading element for better accessibility.
52
52
  * Defaults to an unsemantic `span` or `div`, depending on context.
53
53
  */
@@ -75,11 +75,11 @@ EuiCollapsedNavItem.propTypes = {
75
75
  */
76
76
  items: _propTypes.default.arrayOf(_propTypes.default.shape({
77
77
  /**
78
- * ReactNode to render as this component's title
78
+ * Required text to render as the nav item title
79
79
  */
80
- title: _propTypes.default.node,
80
+ title: _propTypes.default.string,
81
81
  /**
82
- * Allows customizing title's element.
82
+ * Allows customizing the title element.
83
83
  * Consider using a heading element for better accessibility.
84
84
  * Defaults to an unsemantic `span` or `div`, depending on context.
85
85
  */
@@ -87,11 +87,11 @@ var EuiCollapsedNavPopover = function EuiCollapsedNavPopover(_ref) {
87
87
  exports.EuiCollapsedNavPopover = EuiCollapsedNavPopover;
88
88
  EuiCollapsedNavPopover.propTypes = {
89
89
  /**
90
- * ReactNode to render as this component's title
90
+ * Required text to render as the nav item title
91
91
  */
92
- title: _propTypes.default.node.isRequired,
92
+ title: _propTypes.default.string.isRequired,
93
93
  /**
94
- * Allows customizing title's element.
94
+ * Allows customizing the title element.
95
95
  * Consider using a heading element for better accessibility.
96
96
  * Defaults to an unsemantic `span` or `div`, depending on context.
97
97
  */
@@ -119,11 +119,11 @@ EuiCollapsedNavPopover.propTypes = {
119
119
  */
120
120
  items: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.shape({
121
121
  /**
122
- * ReactNode to render as this component's title
122
+ * Required text to render as the nav item title
123
123
  */
124
- title: _propTypes.default.node,
124
+ title: _propTypes.default.string,
125
125
  /**
126
- * Allows customizing title's element.
126
+ * Allows customizing the title element.
127
127
  * Consider using a heading element for better accessibility.
128
128
  * Defaults to an unsemantic `span` or `div`, depending on context.
129
129
  */
@@ -142,7 +142,7 @@ EuiCollapsedNavPopover.propTypes = {
142
142
  */
143
143
  isGroupTitle: _propTypes.default.bool
144
144
  }).isRequired), _propTypes.default.arrayOf(_propTypes.default.shape({
145
- title: _propTypes.default.node,
145
+ title: _propTypes.default.string,
146
146
  titleElement: _propTypes.default.oneOf(["h2", "h3", "h4", "h5", "h6", "span", "div"]),
147
147
  icon: _propTypes.default.oneOfType([_propTypes.default.oneOf(["accessibility", "addDataApp", "advancedSettingsApp", "agentApp", "aggregate", "analyzeEvent", "annotation", "apmApp", "apmTrace", "appSearchApp", "apps", "arrowDown", "arrowLeft", "arrowRight", "arrowUp", "arrowStart", "arrowEnd", "article", "asterisk", "at", "auditbeatApp", "beaker", "bell", "bellSlash", "beta", "bolt", "boxesHorizontal", "boxesVertical", "branch", "branchUser", "broom", "brush", "bug", "bullseye", "calendar", "canvasApp", "casesApp", "check", "checkInCircleFilled", "cheer", "classificationJob", "clock", "cloudDrizzle", "cloudStormy", "cloudSunny", "cluster", "codeApp", "color", "compute", "console", "consoleApp", "container", "continuityAbove", "continuityAboveBelow", "continuityBelow", "continuityWithin", "controlsHorizontal", "controlsVertical", "copy", "copyClipboard", "createAdvancedJob", "createMultiMetricJob", "createPopulationJob", "createSingleMetricJob", "cross", "crossClusterReplicationApp", "crosshairs", "currency", "cut", "dashboardApp", "dataVisualizer", "database", "desktop", "devToolsApp", "discoverApp", "discuss", "document", "documentEdit", "documentation", "documents", "dot", "dotInCircle", "doubleArrowLeft", "doubleArrowRight", "download", "editorAlignCenter", "editorAlignLeft", "editorAlignRight", "editorBold", "editorChecklist", "editorCodeBlock", "editorComment", "editorDistributeHorizontal", "editorDistributeVertical", "editorHeading", "editorItalic", "editorItemAlignBottom", "editorItemAlignCenter", "editorItemAlignLeft", "editorItemAlignMiddle", "editorItemAlignRight", "editorItemAlignTop", "editorLink", "editorOrderedList", "editorPositionBottomLeft", "editorPositionBottomRight", "editorPositionTopLeft", "editorPositionTopRight", "editorRedo", "editorStrike", "editorTable", "editorUnderline", "editorUndo", "editorUnorderedList", "email", "empty", "emsApp", "eql", "eraser", "error", "exit", "expand", "expandMini", "exportAction", "eye", "eyeClosed", "faceHappy", "faceNeutral", "faceSad", "filebeatApp", "filter", "filterExclude", "filterIgnore", "filterInclude", "filterInCircle", "flag", "fleetApp", "fold", "folderCheck", "folderClosed", "folderExclamation", "folderOpen", "frameNext", "framePrevious", "fullScreen", "fullScreenExit", "function", "gear", "gisApp", "glasses", "globe", "grab", "grabHorizontal", "graphApp", "grid", "grokApp", "heart", "heartbeatApp", "heatmap", "help", "home", "iInCircle", "image", "importAction", "indexClose", "indexEdit", "indexFlush", "indexManagementApp", "indexMapping", "indexOpen", "indexPatternApp", "indexRollupApp", "indexRuntime", "indexSettings", "indexTemporary", "infinity", "inputOutput", "inspect", "invert", "ip", "key", "keyboard", "kqlField", "kqlFunction", "kqlOperand", "kqlSelector", "kqlValue", "kubernetesNode", "kubernetesPod", "launch", "layers", "lensApp", "lettering", "lineDashed", "lineDotted", "lineSolid", "link", "list", "listAdd", "lock", "lockOpen", "logoAWS", "logoAWSMono", "logoAerospike", "logoApache", "logoAppSearch", "logoAzure", "logoAzureMono", "logoBeats", "logoBusinessAnalytics", "logoCeph", "logoCloud", "logoCloudEnterprise", "logoCode", "logoCodesandbox", "logoCouchbase", "logoDocker", "logoDropwizard", "logoElastic", "logoElasticStack", "logoElasticsearch", "logoEnterpriseSearch", "logoEtcd", "logoGCP", "logoGCPMono", "logoGithub", "logoGmail", "logoGolang", "logoGoogleG", "logoHAproxy", "logoIBM", "logoIBMMono", "logoKafka", "logoKibana", "logoKubernetes", "logoLogging", "logoLogstash", "logoMaps", "logoMemcached", "logoMetrics", "logoMongodb", "logoMySQL", "logoNginx", "logoObservability", "logoOsquery", "logoPhp", "logoPostgres", "logoPrometheus", "logoRabbitmq", "logoRedis", "logoSecurity", "logoSiteSearch", "logoSketch", "logoSlack", "logoUptime", "logoVulnerabilityManagement", "logoWebhook", "logoWindows", "logoWorkplaceSearch", "logsApp", "logstashFilter", "logstashIf", "logstashInput", "logstashOutput", "logstashQueue", "machineLearningApp", "magnet", "magnifyWithExclamation", "magnifyWithMinus", "magnifyWithPlus", "managementApp", "mapMarker", "memory", "menu", "menuDown", "menuLeft", "menuRight", "menuUp", "merge", "metricbeatApp", "metricsApp", "minimize", "minus", "minusInCircle", "minusInCircleFilled", "mobile", "monitoringApp", "moon", "namespace", "nested", "node", "notebookApp", "number", "offline", "online", "outlierDetectionJob", "package", "packetbeatApp", "pageSelect", "pagesSelect", "paperClip", "partial", "pause", "payment", "pencil", "percent", "pin", "pinFilled", "pipelineApp", "pivot", "play", "playFilled", "plus", "plusInCircle", "plusInCircleFilled", "popout", "push", "questionInCircle", "quote", "recentlyViewedApp", "refresh", "regressionJob", "reporter", "reportingApp", "returnKey", "save", "savedObjectsApp", "scale", "search", "searchProfilerApp", "securityAnalyticsApp", "securityApp", "securitySignal", "securitySignalDetected", "securitySignalResolved", "sessionViewer", "shard", "share", "snowflake", "sortAscending", "sortDescending", "sortDown", "sortLeft", "sortRight", "sortUp", "sortable", "spaces", "spacesApp", "sparkles", "sqlApp", "starEmpty", "starEmptySpace", "starFilled", "starFilledSpace", "starMinusEmpty", "starMinusFilled", "starPlusEmpty", "starPlusFilled", "stats", "stop", "stopFilled", "stopSlash", "storage", "string", "submodule", "sun", "swatchInput", "symlink", "tableDensityCompact", "tableDensityExpanded", "tableDensityNormal", "tableOfContents", "tag", "tear", "temperature", "timeline", "timelineWithArrow", "timelionApp", "timeRefresh", "timeslider", "training", "trash", "unfold", "unlink", "upgradeAssistantApp", "uptimeApp", "user", "userAvatar", "users", "usersRolesApp", "vector", "videoPlayer", "visArea", "visAreaStacked", "visBarHorizontal", "visBarHorizontalStacked", "visBarVertical", "visBarVerticalStacked", "visGauge", "visGoal", "visLine", "visMapCoordinate", "visMapRegion", "visMetric", "visPie", "visTable", "visTagCloud", "visText", "visTimelion", "visVega", "visVisualBuilder", "visualizeApp", "vulnerabilityManagementApp", "warning", "alert", "watchesApp", "wordWrap", "wordWrapDisabled", "workplaceSearchApp", "wrench", "tokenAlias", "tokenAnnotation", "tokenArray", "tokenBinary", "tokenBoolean", "tokenClass", "tokenCompletionSuggester", "tokenConstant", "tokenDate", "tokenDenseVector", "tokenElement", "tokenEnum", "tokenEnumMember", "tokenEvent", "tokenException", "tokenField", "tokenFile", "tokenFlattened", "tokenFunction", "tokenGeo", "tokenHistogram", "tokenInterface", "tokenIP", "tokenJoin", "tokenKey", "tokenKeyword", "tokenMethod", "tokenMetricCounter", "tokenMetricGauge", "tokenModule", "tokenNamespace", "tokenNested", "tokenNull", "tokenNumber", "tokenObject", "tokenOperator", "tokenPackage", "tokenParameter", "tokenPercolator", "tokenProperty", "tokenRange", "tokenRankFeature", "tokenRankFeatures", "tokenRepo", "tokenSearchType", "tokenShape", "tokenString", "tokenStruct", "tokenSymbol", "tokenTag", "tokenText", "tokenTokenCount", "tokenVariable"]).isRequired, _propTypes.default.string.isRequired, _propTypes.default.elementType.isRequired]),
148
148
  iconProps: _propTypes.default.any,