@elastic/eui 94.3.0 → 94.4.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 (145) hide show
  1. package/README.md +3 -0
  2. package/dist/eui_charts_theme.js +1519 -1519
  3. package/dist/eui_charts_theme.js.map +1 -1
  4. package/dist/eui_theme_dark.css +41 -497
  5. package/dist/eui_theme_dark.min.css +1 -1
  6. package/dist/eui_theme_light.css +41 -497
  7. package/dist/eui_theme_light.min.css +1 -1
  8. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +5 -1
  9. package/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +25 -11
  10. package/es/components/form/form.styles.js +26 -3
  11. package/es/components/markdown_editor/markdown_editor.js +12 -8
  12. package/es/components/markdown_editor/markdown_editor.styles.js +29 -0
  13. package/es/components/markdown_editor/markdown_editor_drop_zone.js +22 -9
  14. package/es/components/markdown_editor/markdown_editor_drop_zone.styles.js +33 -0
  15. package/es/components/markdown_editor/markdown_editor_footer.js +11 -2
  16. package/es/components/markdown_editor/markdown_editor_footer.styles.js +26 -0
  17. package/es/components/markdown_editor/markdown_editor_text_area.js +6 -1
  18. package/es/components/markdown_editor/markdown_editor_text_area.styles.js +22 -0
  19. package/es/components/markdown_editor/markdown_editor_toolbar.js +10 -2
  20. package/es/components/markdown_editor/markdown_editor_toolbar.styles.js +21 -0
  21. package/es/components/markdown_editor/markdown_format.js +9 -6
  22. package/es/components/markdown_editor/markdown_format.styles.js +25 -10
  23. package/es/components/markdown_editor/plugins/markdown_checkbox/renderer.js +9 -3
  24. package/es/components/markdown_editor/plugins/markdown_tooltip/renderer.js +13 -2
  25. package/es/components/selectable/selectable.js +10 -2
  26. package/es/components/selectable/selectable_list/selectable_list.js +95 -42
  27. package/es/components/selectable/selectable_list/selectable_list_item.js +234 -204
  28. package/es/components/selectable/selectable_option.js +9 -1
  29. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +10 -2
  30. package/es/components/text/text_color.js +4 -1
  31. package/es/components/toast/global_toast_list_item.js +5 -5
  32. package/eui.d.ts +332 -234
  33. package/i18ntokens.json +124 -106
  34. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +5 -1
  35. package/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +25 -11
  36. package/lib/components/form/form.styles.js +30 -4
  37. package/lib/components/markdown_editor/markdown_editor.js +12 -8
  38. package/lib/components/markdown_editor/markdown_editor.styles.js +37 -0
  39. package/lib/components/markdown_editor/markdown_editor_drop_zone.js +20 -8
  40. package/lib/components/markdown_editor/markdown_editor_drop_zone.styles.js +38 -0
  41. package/lib/components/markdown_editor/markdown_editor_footer.js +10 -1
  42. package/lib/components/markdown_editor/markdown_editor_footer.styles.js +33 -0
  43. package/lib/components/markdown_editor/markdown_editor_text_area.js +6 -1
  44. package/lib/components/markdown_editor/markdown_editor_text_area.styles.js +29 -0
  45. package/lib/components/markdown_editor/markdown_editor_toolbar.js +10 -2
  46. package/lib/components/markdown_editor/markdown_editor_toolbar.styles.js +28 -0
  47. package/lib/components/markdown_editor/markdown_format.js +8 -5
  48. package/lib/components/markdown_editor/markdown_format.styles.js +25 -10
  49. package/lib/components/markdown_editor/plugins/markdown_checkbox/renderer.js +9 -4
  50. package/lib/components/markdown_editor/plugins/markdown_tooltip/renderer.js +19 -10
  51. package/lib/components/selectable/selectable.js +10 -2
  52. package/lib/components/selectable/selectable_list/selectable_list.js +95 -42
  53. package/lib/components/selectable/selectable_list/selectable_list_item.js +241 -210
  54. package/lib/components/selectable/selectable_option.js +12 -1
  55. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +10 -2
  56. package/lib/components/text/text_color.js +6 -2
  57. package/lib/components/toast/global_toast_list_item.js +5 -5
  58. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +5 -1
  59. package/optimize/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +25 -11
  60. package/optimize/es/components/form/form.styles.js +26 -3
  61. package/optimize/es/components/markdown_editor/markdown_editor.js +12 -8
  62. package/optimize/es/components/markdown_editor/markdown_editor.styles.js +29 -0
  63. package/optimize/es/components/markdown_editor/markdown_editor_drop_zone.js +19 -9
  64. package/optimize/es/components/markdown_editor/markdown_editor_drop_zone.styles.js +33 -0
  65. package/optimize/es/components/markdown_editor/markdown_editor_footer.js +11 -2
  66. package/optimize/es/components/markdown_editor/markdown_editor_footer.styles.js +26 -0
  67. package/optimize/es/components/markdown_editor/markdown_editor_text_area.js +6 -1
  68. package/optimize/es/components/markdown_editor/markdown_editor_text_area.styles.js +22 -0
  69. package/optimize/es/components/markdown_editor/markdown_editor_toolbar.js +10 -2
  70. package/optimize/es/components/markdown_editor/markdown_editor_toolbar.styles.js +21 -0
  71. package/optimize/es/components/markdown_editor/markdown_format.js +9 -6
  72. package/optimize/es/components/markdown_editor/markdown_format.styles.js +25 -10
  73. package/optimize/es/components/markdown_editor/plugins/markdown_checkbox/renderer.js +9 -3
  74. package/optimize/es/components/markdown_editor/plugins/markdown_tooltip/renderer.js +13 -2
  75. package/optimize/es/components/selectable/selectable_list/selectable_list.js +81 -38
  76. package/optimize/es/components/selectable/selectable_list/selectable_list_item.js +217 -198
  77. package/optimize/es/components/selectable/selectable_option.js +9 -1
  78. package/optimize/es/components/text/text_color.js +4 -1
  79. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +5 -1
  80. package/optimize/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +25 -11
  81. package/optimize/lib/components/form/form.styles.js +30 -4
  82. package/optimize/lib/components/markdown_editor/markdown_editor.js +12 -8
  83. package/optimize/lib/components/markdown_editor/markdown_editor.styles.js +37 -0
  84. package/optimize/lib/components/markdown_editor/markdown_editor_drop_zone.js +24 -16
  85. package/optimize/lib/components/markdown_editor/markdown_editor_drop_zone.styles.js +38 -0
  86. package/optimize/lib/components/markdown_editor/markdown_editor_footer.js +10 -1
  87. package/optimize/lib/components/markdown_editor/markdown_editor_footer.styles.js +33 -0
  88. package/optimize/lib/components/markdown_editor/markdown_editor_text_area.js +6 -1
  89. package/optimize/lib/components/markdown_editor/markdown_editor_text_area.styles.js +29 -0
  90. package/optimize/lib/components/markdown_editor/markdown_editor_toolbar.js +10 -2
  91. package/optimize/lib/components/markdown_editor/markdown_editor_toolbar.styles.js +28 -0
  92. package/optimize/lib/components/markdown_editor/markdown_format.js +8 -5
  93. package/optimize/lib/components/markdown_editor/markdown_format.styles.js +25 -10
  94. package/optimize/lib/components/markdown_editor/plugins/markdown_checkbox/renderer.js +9 -4
  95. package/optimize/lib/components/markdown_editor/plugins/markdown_tooltip/renderer.js +19 -10
  96. package/optimize/lib/components/selectable/selectable_list/selectable_list.js +81 -38
  97. package/optimize/lib/components/selectable/selectable_list/selectable_list_item.js +224 -204
  98. package/optimize/lib/components/selectable/selectable_option.js +12 -1
  99. package/optimize/lib/components/text/text_color.js +6 -2
  100. package/package.json +5 -12
  101. package/src/components/date_picker/react-datepicker/LICENSE +21 -0
  102. package/src/components/date_picker/react-datepicker/README.md +168 -0
  103. package/src/components/date_picker/super_date_picker/date_popover/_absolute_tab.scss +13 -18
  104. package/src/components/form/checkbox/_checkbox.scss +23 -6
  105. package/src/components/index.scss +0 -1
  106. package/src/components/selectable/selectable_list/_selectable_list_item.scss +4 -0
  107. package/src/components/selectable/selectable_templates/_selectable_template_sitewide_option.scss +5 -1
  108. package/src/services/theme/README.md +153 -0
  109. package/src/test/README.md +44 -0
  110. package/src/themes/amsterdam/overrides/_index.scss +0 -1
  111. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +5 -1
  112. package/test-env/components/date_picker/super_date_picker/date_popover/absolute_tab.js +25 -11
  113. package/test-env/components/form/form.styles.js +30 -4
  114. package/test-env/components/markdown_editor/markdown_editor.js +12 -8
  115. package/test-env/components/markdown_editor/markdown_editor.styles.js +37 -0
  116. package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +24 -16
  117. package/test-env/components/markdown_editor/markdown_editor_drop_zone.styles.js +38 -0
  118. package/test-env/components/markdown_editor/markdown_editor_footer.js +10 -1
  119. package/test-env/components/markdown_editor/markdown_editor_footer.styles.js +33 -0
  120. package/test-env/components/markdown_editor/markdown_editor_text_area.js +6 -1
  121. package/test-env/components/markdown_editor/markdown_editor_text_area.styles.js +29 -0
  122. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +10 -2
  123. package/test-env/components/markdown_editor/markdown_editor_toolbar.styles.js +28 -0
  124. package/test-env/components/markdown_editor/markdown_format.js +8 -5
  125. package/test-env/components/markdown_editor/markdown_format.styles.js +25 -10
  126. package/test-env/components/markdown_editor/plugins/markdown_checkbox/renderer.js +9 -4
  127. package/test-env/components/markdown_editor/plugins/markdown_tooltip/renderer.js +19 -10
  128. package/test-env/components/selectable/selectable.js +10 -2
  129. package/test-env/components/selectable/selectable_list/selectable_list.js +95 -42
  130. package/test-env/components/selectable/selectable_list/selectable_list_item.js +233 -205
  131. package/test-env/components/selectable/selectable_option.js +12 -1
  132. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +10 -2
  133. package/test-env/components/text/text_color.js +6 -2
  134. package/test-env/components/toast/global_toast_list_item.js +5 -5
  135. package/src/components/markdown_editor/_index.scss +0 -9
  136. package/src/components/markdown_editor/_markdown_editor.scss +0 -22
  137. package/src/components/markdown_editor/_markdown_editor_drop_zone.scss +0 -58
  138. package/src/components/markdown_editor/_markdown_editor_footer.scss +0 -42
  139. package/src/components/markdown_editor/_markdown_editor_preview.scss +0 -20
  140. package/src/components/markdown_editor/_markdown_editor_text_area.scss +0 -43
  141. package/src/components/markdown_editor/_markdown_editor_toolbar.scss +0 -29
  142. package/src/components/markdown_editor/_markdown_format.scss +0 -78
  143. package/src/components/markdown_editor/_variables.scss +0 -1
  144. package/src/components/markdown_editor/plugins/markdown_tooltip.scss +0 -4
  145. package/src/themes/amsterdam/overrides/_markdown_editor.scss +0 -18
@@ -6,10 +6,11 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.CheckboxMarkdownRenderer = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
+ var _react2 = require("@emotion/react");
10
+ var _global_styling = require("../../../../global_styling");
9
11
  var _checkbox = require("../../../form/checkbox");
10
12
  var _markdown_context = require("../../markdown_context");
11
13
  var _accessibility = require("../../../../services/accessibility");
12
- var _react2 = require("@emotion/react");
13
14
  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); }
14
15
  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; }
15
16
  /*
@@ -27,14 +28,18 @@ var CheckboxMarkdownRenderer = function CheckboxMarkdownRenderer(_ref) {
27
28
  isChecked = _ref.isChecked,
28
29
  children = _ref.children;
29
30
  var _useContext = (0, _react.useContext)(_markdown_context.EuiMarkdownContext),
30
- replaceNode = _useContext.replaceNode;
31
+ replaceNode = _useContext.replaceNode,
32
+ readOnly = _useContext.readOnly;
31
33
  return (0, _react2.jsx)(_checkbox.EuiCheckbox, {
32
34
  id: (0, _accessibility.useGeneratedHtmlId)(),
33
35
  checked: isChecked,
34
36
  label: children,
35
37
  onChange: function onChange() {
36
38
  replaceNode(position, "".concat(lead, "[").concat(isChecked ? ' ' : 'x', "]").concat(label));
37
- }
39
+ },
40
+ css: markdownCheckboxStyles,
41
+ readOnly: readOnly
38
42
  });
39
43
  };
40
- exports.CheckboxMarkdownRenderer = CheckboxMarkdownRenderer;
44
+ exports.CheckboxMarkdownRenderer = CheckboxMarkdownRenderer;
45
+ var markdownCheckboxStyles = /*#__PURE__*/(0, _react2.css)("&&{.euiCheckbox__input~.euiCheckbox__label{font-size:inherit;line-height:inherit;", (0, _global_styling.logicalCSS)('padding-left', '1.5em'), ";}&:has(+ :not(.euiCheckbox)){", (0, _global_styling.logicalCSS)('margin-bottom', '1em'), ";}.euiCheckbox__input+.euiCheckbox__square{", (0, _global_styling.logicalCSS)('top', '50%'), " transform:translateY(-50%);}};label:markdownCheckboxStyles;");
@@ -9,22 +9,31 @@ var _react = _interopRequireDefault(require("react"));
9
9
  var _tool_tip = require("../../../tool_tip");
10
10
  var _icon = require("../../../icon");
11
11
  var _react2 = require("@emotion/react");
12
- /*
13
- * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
14
- * or more contributor license agreements. Licensed under the Elastic License
15
- * 2.0 and the Server Side Public License, v 1; you may not use this file except
16
- * in compliance with, at your election, the Elastic License 2.0 or the Server
17
- * Side Public License, v 1.
18
- */
19
-
12
+ 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)."; } /*
13
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
14
+ * or more contributor license agreements. Licensed under the Elastic License
15
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
16
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
17
+ * Side Public License, v 1.
18
+ */
19
+ var _ref2 = process.env.NODE_ENV === "production" ? {
20
+ name: "blrk0m-tooltipMarkdownRenderer",
21
+ styles: "transform:translateY(-1px);label:tooltipMarkdownRenderer;"
22
+ } : {
23
+ name: "blrk0m-tooltipMarkdownRenderer",
24
+ styles: "transform:translateY(-1px);label:tooltipMarkdownRenderer;",
25
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
26
+ };
20
27
  var tooltipMarkdownRenderer = function tooltipMarkdownRenderer(_ref) {
21
28
  var content = _ref.content,
22
29
  children = _ref.children;
23
30
  return (0, _react2.jsx)("span", null, (0, _react2.jsx)(_tool_tip.EuiToolTip, {
24
31
  content: content
25
32
  }, (0, _react2.jsx)("span", null, (0, _react2.jsx)("strong", null, children), (0, _react2.jsx)(_icon.EuiIcon, {
26
- type: "questionInCircle",
27
- className: "euiMarkdownTooltip__icon"
33
+ type: "questionInCircle"
34
+ // This is to offset the tooltip icon, which isn't perfectly centered
35
+ ,
36
+ css: _ref2
28
37
  }))));
29
38
  };
30
39
  exports.tooltipMarkdownRenderer = tooltipMarkdownRenderer;
@@ -47,6 +47,9 @@ var EuiSelectableList = /*#__PURE__*/function (_Component) {
47
47
  var _this;
48
48
  (0, _classCallCheck2.default)(this, EuiSelectableList);
49
49
  _this = _super.call(this, props);
50
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "animationFrameId", void 0);
51
+ // counter for tracking list renders and ensuring rerenders
52
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "listRowRerender", 0);
50
53
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "listRef", null);
51
54
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "listBoxRef", null);
52
55
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setListRef", function (ref) {
@@ -171,7 +174,6 @@ var EuiSelectableList = /*#__PURE__*/function (_Component) {
171
174
  event.persist(); // NOTE: This is needed for React v16 backwards compatibility
172
175
  _this.onAddOrRemoveOption(option, event);
173
176
  },
174
- ref: ref ? ref.bind(null, index) : undefined,
175
177
  isFocused: isFocused,
176
178
  title: searchableLabel || label,
177
179
  checked: checked,
@@ -272,7 +274,7 @@ var EuiSelectableList = /*#__PURE__*/function (_Component) {
272
274
  _this.focusBadgeOffset = _this.props.onFocusBadge === false ? 0 : 46;
273
275
 
274
276
  // Wait a tick for the listbox ref to update before proceeding
275
- requestAnimationFrame(function () {
277
+ _this.animationFrameId = requestAnimationFrame(function () {
276
278
  var scrollbarOffset = _this.listBoxRef ? containerWidth - _this.listBoxRef.offsetWidth : 0;
277
279
  _this.setState({
278
280
  defaultOptionWidth: containerWidth - scrollbarOffset - paddingOffset - checkedIconOffset
@@ -424,13 +426,47 @@ var EuiSelectableList = /*#__PURE__*/function (_Component) {
424
426
  return _this;
425
427
  }
426
428
  (0, _createClass2.default)(EuiSelectableList, [{
429
+ key: "componentWillUnmount",
430
+ value: function componentWillUnmount() {
431
+ // ensure requestAnimationFrame is canceled on unmount as
432
+ // it could potentially run on a next tick otherwise
433
+ if (this.animationFrameId !== undefined) {
434
+ cancelAnimationFrame(this.animationFrameId);
435
+ this.animationFrameId = undefined;
436
+ }
437
+ }
438
+ }, {
439
+ key: "shouldComponentUpdate",
440
+ value: function shouldComponentUpdate(nextProps) {
441
+ var _this$props9 = this.props,
442
+ allowExclusions = _this$props9.allowExclusions,
443
+ showIcons = _this$props9.showIcons,
444
+ paddingSize = _this$props9.paddingSize,
445
+ textWrap = _this$props9.textWrap,
446
+ onFocusBadge = _this$props9.onFocusBadge,
447
+ searchable = _this$props9.searchable;
448
+
449
+ // using shouldComponentUpdate to determine needed rerender before actual rerender
450
+ // without needing state updates or lagging behind on updates
451
+ if (nextProps.allowExclusions !== allowExclusions || nextProps.showIcons !== showIcons || nextProps.paddingSize !== paddingSize || nextProps.textWrap !== textWrap || nextProps.onFocusBadge !== onFocusBadge || nextProps.searchable !== searchable) {
452
+ this.listRowRerender += 1;
453
+ }
454
+ return true;
455
+ }
456
+ }, {
427
457
  key: "componentDidUpdate",
428
458
  value: function componentDidUpdate(prevProps) {
429
- var _this$props9 = this.props,
430
- isVirtualized = _this$props9.isVirtualized,
431
- activeOptionIndex = _this$props9.activeOptionIndex,
432
- visibleOptions = _this$props9.visibleOptions,
433
- options = _this$props9.options;
459
+ var _this$props10 = this.props,
460
+ isVirtualized = _this$props10.isVirtualized,
461
+ activeOptionIndex = _this$props10.activeOptionIndex,
462
+ visibleOptions = _this$props10.visibleOptions,
463
+ options = _this$props10.options,
464
+ allowExclusions = _this$props10.allowExclusions,
465
+ showIcons = _this$props10.showIcons,
466
+ paddingSize = _this$props10.paddingSize,
467
+ textWrap = _this$props10.textWrap,
468
+ onFocusBadge = _this$props10.onFocusBadge,
469
+ searchable = _this$props10.searchable;
434
470
  if (prevProps.activeOptionIndex !== activeOptionIndex) {
435
471
  var makeOptionId = this.props.makeOptionId;
436
472
  if (this.listBoxRef && this.props.searchable !== true) {
@@ -462,41 +498,48 @@ var EuiSelectableList = /*#__PURE__*/function (_Component) {
462
498
  itemData: _objectSpread({}, optionArray)
463
499
  }, this.calculateAriaSetAttrs(optionArray)));
464
500
  }
501
+
502
+ // ensure that ListRow updates based on item props
503
+ if (isVirtualized) {
504
+ if (prevProps.allowExclusions !== allowExclusions || prevProps.showIcons !== showIcons || prevProps.paddingSize !== paddingSize || prevProps.textWrap !== textWrap || prevProps.onFocusBadge !== onFocusBadge || prevProps.searchable !== searchable) {
505
+ this.forceVirtualizedListRowRerender();
506
+ }
507
+ }
465
508
  }
466
509
  }, {
467
510
  key: "render",
468
511
  value: function render() {
469
512
  var _this2 = this;
470
- var _this$props10 = this.props,
471
- className = _this$props10.className,
472
- options = _this$props10.options,
473
- searchValue = _this$props10.searchValue,
474
- onOptionClick = _this$props10.onOptionClick,
475
- renderOption = _this$props10.renderOption,
476
- forcedHeight = _this$props10.height,
477
- windowProps = _this$props10.windowProps,
478
- rowHeight = _this$props10.rowHeight,
479
- activeOptionIndex = _this$props10.activeOptionIndex,
480
- makeOptionId = _this$props10.makeOptionId,
481
- showIcons = _this$props10.showIcons,
482
- singleSelection = _this$props10.singleSelection,
483
- visibleOptions = _this$props10.visibleOptions,
484
- allowExclusions = _this$props10.allowExclusions,
485
- bordered = _this$props10.bordered,
486
- paddingSize = _this$props10.paddingSize,
487
- searchable = _this$props10.searchable,
488
- onFocusBadge = _this$props10.onFocusBadge,
489
- listId = _this$props10.listId,
490
- setActiveOptionIndex = _this$props10.setActiveOptionIndex,
491
- ariaLabel = _this$props10['aria-label'],
492
- ariaLabelledby = _this$props10['aria-labelledby'],
493
- ariaDescribedby = _this$props10['aria-describedby'],
494
- role = _this$props10.role,
495
- isPreFiltered = _this$props10.isPreFiltered,
496
- isVirtualized = _this$props10.isVirtualized,
497
- textWrap = _this$props10.textWrap,
498
- truncationProps = _this$props10.truncationProps,
499
- rest = (0, _objectWithoutProperties2.default)(_this$props10, _excluded3);
513
+ var _this$props11 = this.props,
514
+ className = _this$props11.className,
515
+ options = _this$props11.options,
516
+ searchValue = _this$props11.searchValue,
517
+ onOptionClick = _this$props11.onOptionClick,
518
+ renderOption = _this$props11.renderOption,
519
+ forcedHeight = _this$props11.height,
520
+ windowProps = _this$props11.windowProps,
521
+ rowHeight = _this$props11.rowHeight,
522
+ activeOptionIndex = _this$props11.activeOptionIndex,
523
+ makeOptionId = _this$props11.makeOptionId,
524
+ showIcons = _this$props11.showIcons,
525
+ singleSelection = _this$props11.singleSelection,
526
+ visibleOptions = _this$props11.visibleOptions,
527
+ allowExclusions = _this$props11.allowExclusions,
528
+ bordered = _this$props11.bordered,
529
+ paddingSize = _this$props11.paddingSize,
530
+ searchable = _this$props11.searchable,
531
+ onFocusBadge = _this$props11.onFocusBadge,
532
+ listId = _this$props11.listId,
533
+ setActiveOptionIndex = _this$props11.setActiveOptionIndex,
534
+ ariaLabel = _this$props11['aria-label'],
535
+ ariaLabelledby = _this$props11['aria-labelledby'],
536
+ ariaDescribedby = _this$props11['aria-describedby'],
537
+ role = _this$props11.role,
538
+ isPreFiltered = _this$props11.isPreFiltered,
539
+ isVirtualized = _this$props11.isVirtualized,
540
+ textWrap = _this$props11.textWrap,
541
+ truncationProps = _this$props11.truncationProps,
542
+ rest = (0, _objectWithoutProperties2.default)(_this$props11, _excluded3);
500
543
  var heightIsFull = forcedHeight === 'full';
501
544
  var classes = (0, _classnames.default)('euiSelectableList', {
502
545
  'euiSelectableList-fullHeight': heightIsFull,
@@ -514,7 +557,7 @@ var EuiSelectableList = /*#__PURE__*/function (_Component) {
514
557
  ref: this.setListBoxRef
515
558
  }, this.state.optionArray.map(function (_, index) {
516
559
  return /*#__PURE__*/_react.default.createElement(_this2.ListRow, {
517
- key: index,
560
+ key: "".concat(index, "-").concat(_this2.listRowRerender),
518
561
  data: _this2.state.optionArray,
519
562
  index: index
520
563
  }, null);