@elastic/eui 95.6.0 → 95.7.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 (181) hide show
  1. package/dist/eui_theme_dark.css +0 -642
  2. package/dist/eui_theme_dark.min.css +1 -1
  3. package/dist/eui_theme_light.css +0 -642
  4. package/dist/eui_theme_light.min.css +1 -1
  5. package/es/components/combo_box/combo_box.js +54 -50
  6. package/es/components/combo_box/combo_box.styles.js +14 -0
  7. package/es/components/combo_box/combo_box_input/combo_box_input.js +69 -62
  8. package/es/components/combo_box/combo_box_input/combo_box_input.styles.js +60 -0
  9. package/es/components/combo_box/combo_box_input/combo_box_pill.js +50 -138
  10. package/es/components/combo_box/combo_box_input/combo_box_pill.styles.js +25 -0
  11. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +31 -23
  12. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +22 -0
  13. package/es/components/combo_box/combo_box_options_list/index.js +0 -1
  14. package/es/components/combo_box/utils.js +26 -3
  15. package/es/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.styles.js +3 -4
  16. package/es/components/flyout/flyout.styles.js +3 -3
  17. package/es/components/form/form.styles.js +16 -8
  18. package/es/components/list_group/list_group.styles.js +3 -3
  19. package/es/components/popover/input_popover.js +3 -3
  20. package/es/components/search_bar/search_bar.styles.js +2 -4
  21. package/es/components/selectable/selectable.js +9 -8
  22. package/es/components/selectable/selectable.styles.js +22 -0
  23. package/es/components/selectable/selectable_list/selectable_list.js +38 -29
  24. package/es/components/selectable/selectable_list/selectable_list.styles.js +35 -0
  25. package/es/components/selectable/selectable_list/selectable_list_item.js +18 -17
  26. package/es/components/selectable/selectable_list/selectable_list_item.styles.js +56 -0
  27. package/es/components/selectable/selectable_message/selectable_message.js +6 -3
  28. package/es/components/selectable/selectable_message/selectable_message.styles.js +17 -0
  29. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +12 -9
  30. package/es/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +47 -0
  31. package/es/components/selectable/selectable_templates/selectable_template_sitewide_option.js +40 -10
  32. package/es/services/theme/index.js +1 -1
  33. package/es/services/theme/style_memoization.js +14 -0
  34. package/eui.d.ts +146 -46
  35. package/i18ntokens.json +118 -118
  36. package/lib/components/combo_box/combo_box.js +53 -49
  37. package/lib/components/combo_box/combo_box.styles.js +20 -0
  38. package/lib/components/combo_box/combo_box_input/combo_box_input.js +68 -61
  39. package/lib/components/combo_box/combo_box_input/combo_box_input.styles.js +64 -0
  40. package/lib/components/combo_box/combo_box_input/combo_box_pill.js +55 -144
  41. package/lib/components/combo_box/combo_box_input/combo_box_pill.styles.js +31 -0
  42. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +31 -23
  43. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +28 -0
  44. package/lib/components/combo_box/combo_box_options_list/index.js +0 -7
  45. package/lib/components/combo_box/utils.js +29 -9
  46. package/lib/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.styles.js +2 -3
  47. package/lib/components/flyout/flyout.styles.js +2 -2
  48. package/lib/components/form/form.styles.js +16 -9
  49. package/lib/components/list_group/list_group.styles.js +2 -2
  50. package/lib/components/popover/input_popover.js +2 -2
  51. package/lib/components/search_bar/search_bar.styles.js +1 -3
  52. package/lib/components/selectable/selectable.js +9 -8
  53. package/lib/components/selectable/selectable.styles.js +26 -0
  54. package/lib/components/selectable/selectable_list/selectable_list.js +38 -29
  55. package/lib/components/selectable/selectable_list/selectable_list.styles.js +38 -0
  56. package/lib/components/selectable/selectable_list/selectable_list_item.js +18 -16
  57. package/lib/components/selectable/selectable_list/selectable_list_item.styles.js +60 -0
  58. package/lib/components/selectable/selectable_message/selectable_message.js +6 -3
  59. package/lib/components/selectable/selectable_message/selectable_message.styles.js +23 -0
  60. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +11 -8
  61. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +51 -0
  62. package/lib/components/selectable/selectable_templates/selectable_template_sitewide_option.js +40 -10
  63. package/lib/services/theme/index.js +6 -0
  64. package/lib/services/theme/style_memoization.js +15 -1
  65. package/optimize/es/components/combo_box/combo_box.js +54 -50
  66. package/optimize/es/components/combo_box/combo_box.styles.js +14 -0
  67. package/optimize/es/components/combo_box/combo_box_input/combo_box_input.js +64 -62
  68. package/optimize/es/components/combo_box/combo_box_input/combo_box_input.styles.js +60 -0
  69. package/optimize/es/components/combo_box/combo_box_input/combo_box_pill.js +51 -78
  70. package/optimize/es/components/combo_box/combo_box_input/combo_box_pill.styles.js +25 -0
  71. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +31 -23
  72. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +22 -0
  73. package/optimize/es/components/combo_box/combo_box_options_list/index.js +0 -1
  74. package/optimize/es/components/combo_box/utils.js +23 -3
  75. package/optimize/es/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.styles.js +3 -4
  76. package/optimize/es/components/flyout/flyout.styles.js +3 -3
  77. package/optimize/es/components/form/form.styles.js +16 -8
  78. package/optimize/es/components/list_group/list_group.styles.js +3 -3
  79. package/optimize/es/components/popover/input_popover.js +3 -3
  80. package/optimize/es/components/search_bar/search_bar.styles.js +2 -4
  81. package/optimize/es/components/selectable/selectable.js +9 -8
  82. package/optimize/es/components/selectable/selectable.styles.js +22 -0
  83. package/optimize/es/components/selectable/selectable_list/selectable_list.js +38 -29
  84. package/optimize/es/components/selectable/selectable_list/selectable_list.styles.js +35 -0
  85. package/optimize/es/components/selectable/selectable_list/selectable_list_item.js +18 -14
  86. package/optimize/es/components/selectable/selectable_list/selectable_list_item.styles.js +56 -0
  87. package/optimize/es/components/selectable/selectable_message/selectable_message.js +6 -3
  88. package/optimize/es/components/selectable/selectable_message/selectable_message.styles.js +17 -0
  89. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +12 -9
  90. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +47 -0
  91. package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide_option.js +35 -10
  92. package/optimize/es/services/theme/index.js +1 -1
  93. package/optimize/es/services/theme/style_memoization.js +14 -0
  94. package/optimize/lib/components/combo_box/combo_box.js +53 -49
  95. package/optimize/lib/components/combo_box/combo_box.styles.js +20 -0
  96. package/optimize/lib/components/combo_box/combo_box_input/combo_box_input.js +63 -61
  97. package/optimize/lib/components/combo_box/combo_box_input/combo_box_input.styles.js +64 -0
  98. package/optimize/lib/components/combo_box/combo_box_input/combo_box_pill.js +52 -81
  99. package/optimize/lib/components/combo_box/combo_box_input/combo_box_pill.styles.js +31 -0
  100. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +31 -23
  101. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +28 -0
  102. package/optimize/lib/components/combo_box/combo_box_options_list/index.js +0 -7
  103. package/optimize/lib/components/combo_box/utils.js +26 -9
  104. package/optimize/lib/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.styles.js +2 -3
  105. package/optimize/lib/components/flyout/flyout.styles.js +2 -2
  106. package/optimize/lib/components/form/form.styles.js +16 -9
  107. package/optimize/lib/components/list_group/list_group.styles.js +2 -2
  108. package/optimize/lib/components/popover/input_popover.js +2 -2
  109. package/optimize/lib/components/search_bar/search_bar.styles.js +1 -3
  110. package/optimize/lib/components/selectable/selectable.js +9 -8
  111. package/optimize/lib/components/selectable/selectable.styles.js +26 -0
  112. package/optimize/lib/components/selectable/selectable_list/selectable_list.js +38 -29
  113. package/optimize/lib/components/selectable/selectable_list/selectable_list.styles.js +38 -0
  114. package/optimize/lib/components/selectable/selectable_list/selectable_list_item.js +18 -14
  115. package/optimize/lib/components/selectable/selectable_list/selectable_list_item.styles.js +60 -0
  116. package/optimize/lib/components/selectable/selectable_message/selectable_message.js +6 -3
  117. package/optimize/lib/components/selectable/selectable_message/selectable_message.styles.js +23 -0
  118. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +11 -8
  119. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +51 -0
  120. package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide_option.js +35 -10
  121. package/optimize/lib/services/theme/index.js +6 -0
  122. package/optimize/lib/services/theme/style_memoization.js +15 -1
  123. package/package.json +1 -1
  124. package/src/components/index.scss +0 -2
  125. package/src/themes/amsterdam/overrides/_index.scss +0 -1
  126. package/test-env/components/combo_box/combo_box.js +53 -49
  127. package/test-env/components/combo_box/combo_box.styles.js +20 -0
  128. package/test-env/components/combo_box/combo_box_input/combo_box_input.js +63 -61
  129. package/test-env/components/combo_box/combo_box_input/combo_box_input.styles.js +64 -0
  130. package/test-env/components/combo_box/combo_box_input/combo_box_pill.js +51 -135
  131. package/test-env/components/combo_box/combo_box_input/combo_box_pill.styles.js +31 -0
  132. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +31 -23
  133. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.styles.js +28 -0
  134. package/test-env/components/combo_box/combo_box_options_list/index.js +0 -7
  135. package/test-env/components/combo_box/utils.js +26 -9
  136. package/test-env/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover.styles.js +2 -3
  137. package/test-env/components/flyout/flyout.styles.js +2 -2
  138. package/test-env/components/form/form.styles.js +16 -9
  139. package/test-env/components/list_group/list_group.styles.js +2 -2
  140. package/test-env/components/popover/input_popover.js +2 -2
  141. package/test-env/components/search_bar/search_bar.styles.js +1 -3
  142. package/test-env/components/selectable/selectable.js +9 -8
  143. package/test-env/components/selectable/selectable.styles.js +26 -0
  144. package/test-env/components/selectable/selectable_list/selectable_list.js +38 -29
  145. package/test-env/components/selectable/selectable_list/selectable_list.styles.js +38 -0
  146. package/test-env/components/selectable/selectable_list/selectable_list_item.js +18 -14
  147. package/test-env/components/selectable/selectable_list/selectable_list_item.styles.js +60 -0
  148. package/test-env/components/selectable/selectable_message/selectable_message.js +6 -3
  149. package/test-env/components/selectable/selectable_message/selectable_message.styles.js +23 -0
  150. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +11 -8
  151. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.styles.js +51 -0
  152. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide_option.js +35 -10
  153. package/test-env/services/theme/index.js +6 -0
  154. package/test-env/services/theme/style_memoization.js +15 -1
  155. package/es/components/combo_box/combo_box_options_list/combo_box_option.js +0 -153
  156. package/lib/components/combo_box/combo_box_options_list/combo_box_option.js +0 -160
  157. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_option.js +0 -90
  158. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_option.js +0 -98
  159. package/src/components/combo_box/_combo_box.scss +0 -147
  160. package/src/components/combo_box/_index.scss +0 -3
  161. package/src/components/combo_box/combo_box_input/_combo_box_pill.scss +0 -38
  162. package/src/components/combo_box/combo_box_input/_index.scss +0 -1
  163. package/src/components/combo_box/combo_box_options_list/_combo_box_option.scss +0 -72
  164. package/src/components/combo_box/combo_box_options_list/_combo_box_options_list.scss +0 -28
  165. package/src/components/combo_box/combo_box_options_list/_combo_box_title.scss +0 -12
  166. package/src/components/combo_box/combo_box_options_list/_index.scss +0 -3
  167. package/src/components/selectable/_index.scss +0 -5
  168. package/src/components/selectable/_selectable.scss +0 -8
  169. package/src/components/selectable/selectable_list/_index.scss +0 -3
  170. package/src/components/selectable/selectable_list/_selectable_list.scss +0 -38
  171. package/src/components/selectable/selectable_list/_selectable_list_item.scss +0 -62
  172. package/src/components/selectable/selectable_list/_variables.scss +0 -2
  173. package/src/components/selectable/selectable_message/_index.scss +0 -1
  174. package/src/components/selectable/selectable_message/_selectable_message.scss +0 -19
  175. package/src/components/selectable/selectable_search/_index.scss +0 -1
  176. package/src/components/selectable/selectable_search/_selectable_search.scss +0 -3
  177. package/src/components/selectable/selectable_templates/_index.scss +0 -2
  178. package/src/components/selectable/selectable_templates/_selectable_template_sitewide_option.scss +0 -39
  179. package/src/components/selectable/selectable_templates/_variables.scss +0 -26
  180. package/src/themes/amsterdam/overrides/_combo_box.scss +0 -50
  181. package/test-env/components/combo_box/combo_box_options_list/combo_box_option.js +0 -154
@@ -8,17 +8,17 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.PADDING_SIZES = exports.EuiSelectableListItem = void 0;
9
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
12
  var _classnames = _interopRequireDefault(require("classnames"));
14
13
  var _propTypes = _interopRequireDefault(require("prop-types"));
15
14
  var _react = _interopRequireWildcard(require("react"));
16
- var _common = require("../../common");
15
+ var _services = require("../../../services");
17
16
  var _i18n = require("../../i18n");
18
17
  var _icon = require("../../icon");
19
18
  var _accessibility = require("../../accessibility");
20
19
  var _badge = require("../../badge");
21
20
  var _tool_tip = require("../../tool_tip");
21
+ var _selectable_list_item = require("./selectable_list_item.styles");
22
22
  var _react2 = require("@emotion/react");
23
23
  var _excluded = ["children", "className", "disabled", "checked", "isFocused", "showIcons", "prepend", "append", "allowExclusions", "onFocusBadge", "paddingSize", "role", "searchable", "textWrap", "toolTipContent", "toolTipProps", "aria-describedby"],
24
24
  _excluded2 = ["children", "className"];
@@ -55,11 +55,7 @@ function resolveIconAndColor(checked) {
55
55
  };
56
56
  }
57
57
  }
58
- var paddingSizeToClassNameMap = {
59
- none: null,
60
- s: 'euiSelectableListItem--paddingSmall'
61
- };
62
- var PADDING_SIZES = exports.PADDING_SIZES = (0, _common.keysOf)(paddingSizeToClassNameMap);
58
+ var PADDING_SIZES = exports.PADDING_SIZES = ['none', 's'];
63
59
  var EuiSelectableListItem = exports.EuiSelectableListItem = function EuiSelectableListItem(_ref) {
64
60
  var children = _ref.children,
65
61
  className = _ref.className,
@@ -86,27 +82,31 @@ var EuiSelectableListItem = exports.EuiSelectableListItem = function EuiSelectab
86
82
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
87
83
  var classes = (0, _classnames.default)('euiSelectableListItem', {
88
84
  'euiSelectableListItem-isFocused': isFocused
89
- }, paddingSizeToClassNameMap[paddingSize], className);
90
- var textClasses = (0, _classnames.default)('euiSelectableListItem__text', (0, _defineProperty2.default)({}, "euiSelectableListItem__text--".concat(textWrap), textWrap));
85
+ }, className);
86
+ var styles = (0, _services.useEuiMemoizedStyles)(_selectable_list_item.euiSelectableListItemStyles);
87
+ var cssStyles = [styles.euiSelectableListItem, styles.padding[paddingSize]];
88
+ var textStyles = [styles.euiSelectableListItem__text, styles.textWrap[textWrap]];
91
89
  var optionIcon = (0, _react.useMemo)(function () {
92
90
  if (showIcons) {
93
91
  var _resolveIconAndColor = resolveIconAndColor(checked),
94
92
  icon = _resolveIconAndColor.icon,
95
93
  color = _resolveIconAndColor.color;
96
94
  return (0, _react2.jsx)(_icon.EuiIcon, {
95
+ css: styles.euiSelectableListItem__icon,
97
96
  className: "euiSelectableListItem__icon",
98
97
  color: color,
99
98
  type: icon
100
99
  });
101
100
  }
102
- }, [showIcons, checked]);
101
+ }, [showIcons, checked, styles]);
103
102
  var prependNode = (0, _react.useMemo)(function () {
104
103
  if (prepend) {
105
104
  return (0, _react2.jsx)("span", {
105
+ css: styles.euiSelectableListItem__prepend,
106
106
  className: "euiSelectableListItem__prepend"
107
107
  }, prepend);
108
108
  }
109
- }, [prepend]);
109
+ }, [prepend, styles]);
110
110
  var onFocusBadgeNode = (0, _react.useMemo)(function () {
111
111
  var defaultOnFocusBadgeProps = {
112
112
  'aria-hidden': true,
@@ -131,10 +131,11 @@ var EuiSelectableListItem = exports.EuiSelectableListItem = function EuiSelectab
131
131
  var appendNode = (0, _react.useMemo)(function () {
132
132
  if (append || showOnFocusBadge) {
133
133
  return (0, _react2.jsx)("span", {
134
+ css: styles.euiSelectableListItem__append,
134
135
  className: "euiSelectableListItem__append"
135
136
  }, append, " ", showOnFocusBadge ? onFocusBadgeNode : null);
136
137
  }
137
- }, [append, showOnFocusBadge, onFocusBadgeNode]);
138
+ }, [append, showOnFocusBadge, onFocusBadgeNode, styles]);
138
139
  var screenReaderText = (0, _react.useMemo)(function () {
139
140
  var state;
140
141
  var instructions;
@@ -255,9 +256,11 @@ var EuiSelectableListItem = exports.EuiSelectableListItem = function EuiSelectab
255
256
  }
256
257
  }, [tooltipRef, _ariaDescribedBy]);
257
258
  var content = (0, _react2.jsx)("span", {
259
+ css: styles.euiSelectableListItem__content,
258
260
  className: "euiSelectableListItem__content"
259
261
  }, optionIcon, prependNode, (0, _react2.jsx)("span", {
260
- className: textClasses
262
+ css: textStyles,
263
+ className: "euiSelectableListItem__text"
261
264
  }, children, screenReaderText), appendNode);
262
265
  return (0, _react2.jsx)("li", (0, _extends2.default)({
263
266
  role: role,
@@ -266,13 +269,14 @@ var EuiSelectableListItem = exports.EuiSelectableListItem = function EuiSelectab
266
269
  ,
267
270
  "aria-selected": !disabled && isFocused // Whether the item has keyboard focus per W3 spec
268
271
  ,
272
+ css: cssStyles,
269
273
  className: classes
270
274
  }, rest, {
271
275
  "aria-describedby": ariaDescribedBy
272
276
  }), hasToolTip ? (0, _react2.jsx)(_tool_tip.EuiToolTip, (0, _extends2.default)({
273
277
  ref: setTooltipRef,
274
278
  content: toolTipContent,
275
- anchorClassName: "euiSelectableListItem__tooltipAnchor",
279
+ anchorClassName: "eui-fullWidth",
276
280
  position: "left"
277
281
  }, toolTipProps), content) : content);
278
282
  };
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiSelectableListItemVariables = exports.euiSelectableListItemStyles = void 0;
7
+ var _react = require("@emotion/react");
8
+ var _services = require("../../../services");
9
+ var _global_styling = require("../../../global_styling");
10
+ 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)."; } /*
11
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
12
+ * or more contributor license agreements. Licensed under the Elastic License
13
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
14
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
15
+ * Side Public License, v 1.
16
+ */
17
+ var euiSelectableListItemVariables = exports.euiSelectableListItemVariables = function euiSelectableListItemVariables(_ref2) {
18
+ var euiTheme = _ref2.euiTheme;
19
+ var lighterBorder = (0, _services.transparentize)(euiTheme.border.color, 0.4);
20
+ return {
21
+ border: "".concat(euiTheme.border.width.thin, " solid ").concat(lighterBorder),
22
+ paddingHorizontal: euiTheme.size.m,
23
+ paddingVertical: euiTheme.size.xs
24
+ };
25
+ };
26
+ var _ref = process.env.NODE_ENV === "production" ? {
27
+ name: "1rnenrt-euiSelectableListItem__text",
28
+ styles: "flex-grow:1;label:euiSelectableListItem__text;"
29
+ } : {
30
+ name: "1rnenrt-euiSelectableListItem__text",
31
+ styles: "flex-grow:1;label:euiSelectableListItem__text;",
32
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
33
+ };
34
+ var euiSelectableListItemStyles = exports.euiSelectableListItemStyles = function euiSelectableListItemStyles(euiThemeContext) {
35
+ var euiTheme = euiThemeContext.euiTheme;
36
+ var _euiSelectableListIte = euiSelectableListItemVariables(euiThemeContext),
37
+ border = _euiSelectableListIte.border,
38
+ paddingHorizontal = _euiSelectableListIte.paddingHorizontal,
39
+ paddingVertical = _euiSelectableListIte.paddingVertical;
40
+ return {
41
+ euiSelectableListItem: /*#__PURE__*/(0, _react.css)("display:inline-flex;", (0, _global_styling.logicalCSS)('width', '100%'), " line-height:", (0, _global_styling.euiFontSize)(euiThemeContext, 'm').lineHeight, ";font-size:", (0, _global_styling.euiFontSize)(euiThemeContext, 's').fontSize, ";text-align:start;cursor:pointer;overflow:hidden;&:not(:last-of-type){", (0, _global_styling.logicalCSS)('border-bottom', border), ";}&[aria-disabled='true']{color:", euiTheme.colors.disabledText, ";cursor:not-allowed;}&:hover,&.euiSelectableListItem-isFocused{&:not([aria-disabled='true']){color:", euiTheme.colors.primaryText, ";background-color:", euiTheme.focus.backgroundColor, ";.euiSelectableListItem__text{text-decoration:underline;}}};label:euiSelectableListItem;"),
42
+ padding: {
43
+ none: /*#__PURE__*/(0, _react.css)(";label:none;"),
44
+ s: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('padding-vertical', paddingVertical), " ", (0, _global_styling.logicalCSS)('padding-horizontal', paddingHorizontal), ";;label:s;")
45
+ },
46
+ // Child elements
47
+
48
+ euiSelectableListItem__content: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('width', '100%'), " display:flex;align-items:center;;label:euiSelectableListItem__content;"),
49
+ euiSelectableListItem__text: _ref,
50
+ textWrap: {
51
+ truncate: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiTextTruncate)(), ";label:truncate;"),
52
+ wrap: /*#__PURE__*/(0, _react.css)(";label:wrap;")
53
+ },
54
+ euiSelectableListItem__prepend: /*#__PURE__*/(0, _react.css)("flex-shrink:0;", (0, _global_styling.logicalCSS)('margin-right', paddingHorizontal), ";;label:euiSelectableListItem__prepend;"),
55
+ euiSelectableListItem__append: /*#__PURE__*/(0, _react.css)("flex-shrink:0;", (0, _global_styling.logicalCSS)('margin-left', paddingHorizontal), ";;label:euiSelectableListItem__append;"),
56
+ get euiSelectableListItem__icon() {
57
+ return this.euiSelectableListItem__prepend;
58
+ }
59
+ };
60
+ };
@@ -10,7 +10,9 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _classnames = _interopRequireDefault(require("classnames"));
13
+ var _services = require("../../../services");
13
14
  var _text = require("../../text");
15
+ var _selectable_message = require("./selectable_message.styles");
14
16
  var _react2 = require("@emotion/react");
15
17
  var _excluded = ["children", "className", "bordered"];
16
18
  /*
@@ -26,12 +28,13 @@ var EuiSelectableMessage = exports.EuiSelectableMessage = function EuiSelectable
26
28
  _ref$bordered = _ref.bordered,
27
29
  bordered = _ref$bordered === void 0 ? false : _ref$bordered,
28
30
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
29
- var classes = (0, _classnames.default)('euiSelectableMessage', {
30
- 'euiSelectableMessage--bordered': bordered
31
- }, className);
31
+ var classes = (0, _classnames.default)('euiSelectableMessage', className);
32
+ var styles = (0, _services.useEuiMemoizedStyles)(_selectable_message.euiSelectableMessageStyles);
33
+ var cssStyles = [styles.euiSelectableMessage, bordered && styles.bordered];
32
34
  return (0, _react2.jsx)(_text.EuiText, (0, _extends2.default)({
33
35
  color: "subdued",
34
36
  size: "xs",
37
+ css: cssStyles,
35
38
  className: classes
36
39
  }, rest), children);
37
40
  };
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiSelectableMessageStyles = void 0;
7
+ var _react = require("@emotion/react");
8
+ /*
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
+
16
+ var euiSelectableMessageStyles = exports.euiSelectableMessageStyles = function euiSelectableMessageStyles(euiThemeContext) {
17
+ var euiTheme = euiThemeContext.euiTheme;
18
+ return {
19
+ euiSelectableMessage: /*#__PURE__*/(0, _react.css)("display:flex;flex-direction:column;justify-content:center;align-items:center;padding:", euiTheme.size.s, ";text-align:center;word-wrap:break-word;;label:euiSelectableMessage;"),
20
+ // Match border from selectable_list
21
+ bordered: /*#__PURE__*/(0, _react.css)("overflow:hidden;border:", euiTheme.border.thin, ";border-radius:", euiTheme.border.radius.medium, ";;label:bordered;")
22
+ };
23
+ };
@@ -14,15 +14,16 @@ var _react = _interopRequireWildcard(require("react"));
14
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
15
15
  var _classnames = _interopRequireDefault(require("classnames"));
16
16
  var _services = require("../../../services");
17
- var _selectable = require("../selectable");
17
+ var _keys = require("../../../services/keys");
18
+ var _i18n = require("../../i18n");
18
19
  var _popover = require("../../popover");
19
20
  var _popover2 = require("../../popover/popover");
20
- var _i18n = require("../../i18n");
21
- var _selectable_message = require("../selectable_message");
22
21
  var _loading = require("../../loading");
23
- var _selectable_template_sitewide_option = require("./selectable_template_sitewide_option");
24
22
  var _spacer = require("../../spacer");
25
- var _keys = require("../../../services/keys");
23
+ var _selectable = require("../selectable");
24
+ var _selectable_message = require("../selectable_message");
25
+ var _selectable_template_sitewide_option = require("./selectable_template_sitewide_option");
26
+ var _selectable_template_sitewide = require("./selectable_template_sitewide.styles");
26
27
  var _react2 = require("@emotion/react");
27
28
  var _excluded = ["children", "className", "options", "popoverProps", "popoverTitle", "popoverFooter", "searchProps", "listProps", "isLoading", "popoverButton", "popoverButtonBreakpoints"],
28
29
  _excluded2 = ["closePopover", "panelRef", "width"];
@@ -116,8 +117,9 @@ var EuiSelectableTemplateSitewide = exports.EuiSelectableTemplateSitewide = func
116
117
  };
117
118
 
118
119
  /**
119
- * Classes
120
+ * Classes & styles
120
121
  */
122
+ var styles = (0, _services.useEuiMemoizedStyles)(_selectable_template_sitewide.euiSelectableTemplateSitewideStyles);
121
123
  var classes = (0, _classnames.default)('euiSelectableTemplateSitewide', className);
122
124
  var searchClasses = (0, _classnames.default)('euiSelectableTemplateSitewide__search', searchProps && searchProps.className);
123
125
  var listClasses = (0, _classnames.default)('euiSelectableTemplateSitewide__list', listProps && listProps.className);
@@ -125,7 +127,7 @@ var EuiSelectableTemplateSitewide = exports.EuiSelectableTemplateSitewide = func
125
127
  /**
126
128
  * List options
127
129
  */
128
- var formattedOptions = (0, _selectable_template_sitewide_option.euiSelectableTemplateSitewideFormatOptions)(options);
130
+ var formattedOptions = (0, _selectable_template_sitewide_option.euiSelectableTemplateSitewideFormatOptions)(options, styles);
129
131
  var loadingMessage = (0, _react2.jsx)(_selectable_message.EuiSelectableMessage, {
130
132
  style: {
131
133
  minHeight: 300
@@ -167,6 +169,8 @@ var EuiSelectableTemplateSitewide = exports.EuiSelectableTemplateSitewide = func
167
169
  }, popoverButton);
168
170
  }, [popoverButton, canShowPopoverButton, togglePopover]);
169
171
  return (0, _react2.jsx)(_selectable.EuiSelectable, (0, _extends2.default)({
172
+ css: styles.euiSelectableTemplateSitewide,
173
+ className: classes,
170
174
  isLoading: isLoading,
171
175
  options: formattedOptions,
172
176
  renderOption: _selectable_template_sitewide_option.euiSelectableTemplateSitewideRenderOptions,
@@ -198,7 +202,6 @@ var EuiSelectableTemplateSitewide = exports.EuiSelectableTemplateSitewide = func
198
202
  emptyMessage: emptyMessage,
199
203
  noMatchesMessage: emptyMessage
200
204
  }, rest, {
201
- className: classes,
202
205
  searchable: true
203
206
  }), function (list, search) {
204
207
  return (0, _react2.jsx)(_popover2.EuiPopover, (0, _extends2.default)({
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiSelectableTemplateSitewideStyles = void 0;
7
+ var _react = require("@emotion/react");
8
+ var _services = require("../../../services");
9
+ var _global_styling = require("../../../global_styling");
10
+ 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)."; } /*
11
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
12
+ * or more contributor license agreements. Licensed under the Elastic License
13
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
14
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
15
+ * Side Public License, v 1.
16
+ */
17
+ var visColors = (0, _services.euiPaletteColorBlind)();
18
+ var _ref = process.env.NODE_ENV === "production" ? {
19
+ name: "q12130-euiSelectableTemplateSitewide__listItem",
20
+ styles: "&:hover,&.euiSelectableListItem-isFocused{&:not([aria-disabled='true']){.euiSelectableListItem__text{text-decoration:none;}.euiSelectableTemplateSitewide__listItemTitle{text-decoration:underline;}}};label:euiSelectableTemplateSitewide__listItem;"
21
+ } : {
22
+ name: "q12130-euiSelectableTemplateSitewide__listItem",
23
+ styles: "&:hover,&.euiSelectableListItem-isFocused{&:not([aria-disabled='true']){.euiSelectableListItem__text{text-decoration:none;}.euiSelectableTemplateSitewide__listItemTitle{text-decoration:underline;}}};label:euiSelectableTemplateSitewide__listItem;",
24
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
25
+ };
26
+ var _ref2 = process.env.NODE_ENV === "production" ? {
27
+ name: "rsb9r7-euiSelectableTemplateSitewide",
28
+ styles: "display:block;label:euiSelectableTemplateSitewide;"
29
+ } : {
30
+ name: "rsb9r7-euiSelectableTemplateSitewide",
31
+ styles: "display:block;label:euiSelectableTemplateSitewide;",
32
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
33
+ };
34
+ var euiSelectableTemplateSitewideStyles = exports.euiSelectableTemplateSitewideStyles = function euiSelectableTemplateSitewideStyles(euiThemeContext) {
35
+ var euiTheme = euiThemeContext.euiTheme;
36
+ return {
37
+ euiSelectableTemplateSitewide: _ref2,
38
+ // Override EuiSelectable's default item underline
39
+ euiSelectableTemplateSitewide__listItem: _ref,
40
+ euiSelectableTemplateSitewide__optionMetasList: /*#__PURE__*/(0, _react.css)("display:block;", (0, _global_styling.logicalCSS)('margin-top', euiTheme.size.xs), " ", (0, _global_styling.euiFontSize)(euiThemeContext, 'xs'), " color:", euiTheme.colors.subduedText, ";;label:euiSelectableTemplateSitewide__optionMetasList;"),
41
+ euiSelectableTemplateSitewide__optionMeta: /*#__PURE__*/(0, _react.css)("&:not(:last-of-type)::after{content:'\u2022';", (0, _global_styling.logicalCSS)('margin-horizontal', euiTheme.size.xs), " color:", euiTheme.colors.subduedText, ";};label:euiSelectableTemplateSitewide__optionMeta;"),
42
+ metaTypes: {
43
+ fontWeight: "\n font-weight: ".concat(euiTheme.font.weight.medium, ";\n "),
44
+ application: /*#__PURE__*/(0, _react.css)("color:", (0, _services.makeHighContrastColor)(visColors[1])(euiTheme), ";;label:application;"),
45
+ deployment: /*#__PURE__*/(0, _react.css)("color:", (0, _services.makeHighContrastColor)(visColors[0])(euiTheme), ";;label:deployment;"),
46
+ article: /*#__PURE__*/(0, _react.css)("color:", (0, _services.makeHighContrastColor)(visColors[3])(euiTheme), ";;label:article;"),
47
+ case: /*#__PURE__*/(0, _react.css)("color:", (0, _services.makeHighContrastColor)(visColors[9])(euiTheme), ";;label:case;"),
48
+ platform: /*#__PURE__*/(0, _react.css)("color:", (0, _services.makeHighContrastColor)(visColors[5])(euiTheme), ";;label:platform;")
49
+ }
50
+ };
51
+ };
@@ -5,14 +5,17 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.euiSelectableTemplateSitewideRenderOptions = exports.euiSelectableTemplateSitewideFormatOptions = void 0;
8
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
8
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
9
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
11
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
12
  var _react = _interopRequireDefault(require("react"));
12
13
  var _classnames = _interopRequireDefault(require("classnames"));
13
- var _icon = require("../../../components/icon");
14
- var _avatar = require("../../../components/avatar/avatar");
15
- var _highlight = require("../../../components/highlight");
14
+ var _services = require("../../../services");
15
+ var _icon = require("../../icon");
16
+ var _avatar = require("../../avatar");
17
+ var _highlight = require("../../highlight");
18
+ var _selectable_template_sitewide = require("./selectable_template_sitewide.styles");
16
19
  var _react2 = require("@emotion/react");
17
20
  var _excluded = ["text", "highlightSearchString", "className"];
18
21
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -26,16 +29,21 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
26
29
  * The generic extension allows consumers to keep their data objects
27
30
  * intact without needing to do key lookups when using `renderOption`
28
31
  */
29
- var euiSelectableTemplateSitewideFormatOptions = exports.euiSelectableTemplateSitewideFormatOptions = function euiSelectableTemplateSitewideFormatOptions(options) {
32
+ var euiSelectableTemplateSitewideFormatOptions = exports.euiSelectableTemplateSitewideFormatOptions = function euiSelectableTemplateSitewideFormatOptions(options, styles) {
30
33
  return options.map(function (item) {
31
34
  var title = item.label;
32
35
  if (item.meta && item.meta.length) {
33
- title += " \u2022".concat(renderOptionMeta(item.meta, '', true));
36
+ title += " \u2022".concat(renderOptionMeta({
37
+ meta: item.meta,
38
+ stringsOnly: true,
39
+ styles: styles
40
+ }));
34
41
  }
35
42
  return _objectSpread(_objectSpread({
36
43
  key: item.label,
37
44
  title: title
38
45
  }, item), {}, {
46
+ css: [styles.euiSelectableTemplateSitewide__listItem, item.css],
39
47
  className: (0, _classnames.default)('euiSelectableTemplateSitewide__listItem', item.className),
40
48
  prepend: item.icon ? (0, _react2.jsx)(_icon.EuiIcon, (0, _extends2.default)({
41
49
  color: "subdued",
@@ -52,11 +60,22 @@ var euiSelectableTemplateSitewideRenderOptions = exports.euiSelectableTemplateSi
52
60
  return (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)(_highlight.EuiHighlight, {
53
61
  className: "euiSelectableTemplateSitewide__listItemTitle",
54
62
  search: searchValue
55
- }, option.label), renderOptionMeta(option.meta, searchValue));
63
+ }, option.label), (0, _react2.jsx)(_services.RenderWithEuiStylesMemoizer, null, function (stylesMemoizer) {
64
+ var styles = stylesMemoizer(_selectable_template_sitewide.euiSelectableTemplateSitewideStyles);
65
+ return renderOptionMeta({
66
+ meta: option.meta,
67
+ styles: styles,
68
+ searchValue: searchValue
69
+ });
70
+ }));
56
71
  };
57
- function renderOptionMeta(meta) {
58
- var searchValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
59
- var stringsOnly = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
72
+ var renderOptionMeta = function renderOptionMeta(_ref) {
73
+ var meta = _ref.meta,
74
+ styles = _ref.styles,
75
+ _ref$searchValue = _ref.searchValue,
76
+ searchValue = _ref$searchValue === void 0 ? '' : _ref$searchValue,
77
+ _ref$stringsOnly = _ref.stringsOnly,
78
+ stringsOnly = _ref$stringsOnly === void 0 ? false : _ref$stringsOnly;
60
79
  if (!meta || meta.length < 1) return;
61
80
  var metas = meta.map(function (meta) {
62
81
  var text = meta.text,
@@ -74,13 +93,19 @@ function renderOptionMeta(meta) {
74
93
  if (meta.type) {
75
94
  metaClasses = (0, _classnames.default)(["euiSelectableTemplateSitewide__optionMeta--".concat(meta.type)], metaClasses);
76
95
  }
96
+ var hasMetaTypeStyles = function hasMetaTypeStyles(metaType) {
97
+ return metaType in styles.metaTypes;
98
+ };
99
+ var cssStyles = [styles.euiSelectableTemplateSitewide__optionMeta].concat((0, _toConsumableArray2.default)(meta.type && hasMetaTypeStyles(meta.type) ? [styles.metaTypes.fontWeight, styles.metaTypes[meta.type]] : []));
77
100
  return (0, _react2.jsx)(_highlight.EuiHighlight, (0, _extends2.default)({
78
101
  search: highlightSearchString ? searchValue : '',
102
+ css: cssStyles,
79
103
  className: metaClasses,
80
104
  key: text
81
105
  }, rest), text);
82
106
  });
83
107
  return stringsOnly ? metas : (0, _react2.jsx)("span", {
108
+ css: styles.euiSelectableTemplateSitewide__optionMetasList,
84
109
  className: "euiSelectableTemplateSitewide__optionMetasList"
85
110
  }, metas);
86
- }
111
+ };
@@ -51,6 +51,12 @@ Object.defineProperty(exports, "EuiThemeProvider", {
51
51
  return _provider.EuiThemeProvider;
52
52
  }
53
53
  });
54
+ Object.defineProperty(exports, "RenderWithEuiStylesMemoizer", {
55
+ enumerable: true,
56
+ get: function get() {
57
+ return _style_memoization.RenderWithEuiStylesMemoizer;
58
+ }
59
+ });
54
60
  Object.defineProperty(exports, "RenderWithEuiTheme", {
55
61
  enumerable: true,
56
62
  get: function get() {
@@ -5,7 +5,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.withEuiStylesMemoizer = exports.useEuiMemoizedStyles = exports.EuiThemeMemoizedStylesProvider = exports.EuiThemeMemoizedStylesContext = void 0;
8
+ exports.withEuiStylesMemoizer = exports.useEuiMemoizedStyles = exports.RenderWithEuiStylesMemoizer = exports.EuiThemeMemoizedStylesProvider = exports.EuiThemeMemoizedStylesContext = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
11
  var _react = _interopRequireWildcard(require("react"));
@@ -99,4 +99,18 @@ var withEuiStylesMemoizer = exports.withEuiStylesMemoizer = function withEuiStyl
99
99
  var WithEuiStylesMemoizer = /*#__PURE__*/(0, _react.forwardRef)(Render);
100
100
  WithEuiStylesMemoizer.displayName = componentName;
101
101
  return WithEuiStylesMemoizer;
102
+ };
103
+
104
+ /**
105
+ * Render prop alternative for complex class components
106
+ * Most useful for scenarios where a HOC may interfere with typing
107
+ */
108
+ var RenderWithEuiStylesMemoizer = exports.RenderWithEuiStylesMemoizer = function RenderWithEuiStylesMemoizer(_ref2) {
109
+ var children = _ref2.children;
110
+ var memoizedStyles = (0, _react.useContext)(EuiThemeMemoizedStylesContext);
111
+ var euiThemeContext = (0, _hooks2.useEuiTheme)();
112
+ var stylesMemoizer = (0, _react.useCallback)(function (stylesGenerator) {
113
+ return getMemoizedStyles(stylesGenerator, memoizedStyles, euiThemeContext);
114
+ }, [memoizedStyles, euiThemeContext]);
115
+ return children(stylesMemoizer);
102
116
  };
@@ -1,153 +0,0 @@
1
- var _excluded = ["children", "className", "disabled", "isFocused", "onClick", "onEnterKey", "option", "optionRef"];
2
- 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); }
3
- 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); }
4
- 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; }
5
- 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; }
6
- function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
7
- function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
8
- function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
9
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
10
- function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); }
11
- function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
12
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
13
- function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); }
14
- function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); }
15
- function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
16
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
17
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
18
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
19
- /*
20
- * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
21
- * or more contributor license agreements. Licensed under the Elastic License
22
- * 2.0 and the Server Side Public License, v 1; you may not use this file except
23
- * in compliance with, at your election, the Elastic License 2.0 or the Server
24
- * Side Public License, v 1.
25
- */
26
-
27
- import React, { Component } from 'react';
28
- import PropTypes from "prop-types";
29
- import classNames from 'classnames';
30
- import { keys } from '../../../services';
31
- import { jsx as ___EmotionJSX } from "@emotion/react";
32
- export var EuiComboBoxOption = /*#__PURE__*/function (_Component) {
33
- function EuiComboBoxOption() {
34
- var _this;
35
- _classCallCheck(this, EuiComboBoxOption);
36
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
37
- args[_key] = arguments[_key];
38
- }
39
- _this = _callSuper(this, EuiComboBoxOption, [].concat(args));
40
- _defineProperty(_this, "onClick", function () {
41
- var _this$props = _this.props,
42
- onClick = _this$props.onClick,
43
- option = _this$props.option,
44
- disabled = _this$props.disabled;
45
- if (disabled) {
46
- return;
47
- }
48
- onClick(option);
49
- });
50
- _defineProperty(_this, "onKeyDown", function (event) {
51
- if (event.key === keys.ENTER || event.key === keys.SPACE) {
52
- event.preventDefault();
53
- event.stopPropagation();
54
- var _this$props2 = _this.props,
55
- onEnterKey = _this$props2.onEnterKey,
56
- option = _this$props2.option,
57
- disabled = _this$props2.disabled;
58
- if (disabled) {
59
- return;
60
- }
61
- onEnterKey(option);
62
- }
63
- });
64
- return _this;
65
- }
66
- _inherits(EuiComboBoxOption, _Component);
67
- return _createClass(EuiComboBoxOption, [{
68
- key: "render",
69
- value: function render() {
70
- var _this$props3 = this.props,
71
- children = _this$props3.children,
72
- className = _this$props3.className,
73
- disabled = _this$props3.disabled,
74
- isFocused = _this$props3.isFocused,
75
- onClick = _this$props3.onClick,
76
- onEnterKey = _this$props3.onEnterKey,
77
- option = _this$props3.option,
78
- optionRef = _this$props3.optionRef,
79
- rest = _objectWithoutProperties(_this$props3, _excluded);
80
- var classes = classNames('euiComboBoxOption', className, {
81
- 'euiComboBoxOption-isDisabled': disabled,
82
- 'euiComboBoxOption-isFocused': isFocused
83
- });
84
- var label = option.label;
85
- return ___EmotionJSX("button", _extends({
86
- "aria-disabled": disabled,
87
- "aria-selected": isFocused,
88
- className: classes,
89
- onClick: this.onClick,
90
- onKeyDown: this.onKeyDown,
91
- ref: optionRef,
92
- role: "option",
93
- title: label,
94
- type: "button"
95
- }, rest), children);
96
- }
97
- }]);
98
- }(Component);
99
- EuiComboBoxOption.propTypes = {
100
- children: PropTypes.node,
101
- className: PropTypes.string,
102
- disabled: PropTypes.bool,
103
- isFocused: PropTypes.bool.isRequired,
104
- onClick: PropTypes.func.isRequired,
105
- onEnterKey: PropTypes.func.isRequired,
106
- option: PropTypes.shape({
107
- isGroupLabelOption: PropTypes.bool,
108
- label: PropTypes.string.isRequired,
109
- key: PropTypes.string,
110
- options: PropTypes.arrayOf(PropTypes.shape({
111
- isGroupLabelOption: PropTypes.bool,
112
- label: PropTypes.string.isRequired,
113
- key: PropTypes.string,
114
- options: PropTypes.arrayOf(PropTypes.any.isRequired),
115
- value: PropTypes.any,
116
- prepend: PropTypes.node,
117
- append: PropTypes.node,
118
- truncationProps: PropTypes.any,
119
- /**
120
- * Optional custom tooltip content for the button
121
- */
122
- toolTipContent: PropTypes.node,
123
- /**
124
- * Optional props to pass to the underlying **[EuiToolTip](/#/display/tooltip)**
125
- */
126
- toolTipProps: PropTypes.any,
127
- className: PropTypes.string,
128
- "aria-label": PropTypes.string,
129
- "data-test-subj": PropTypes.string,
130
- css: PropTypes.any
131
- }).isRequired),
132
- value: PropTypes.any,
133
- prepend: PropTypes.node,
134
- append: PropTypes.node,
135
- truncationProps: PropTypes.any,
136
- /**
137
- * Optional custom tooltip content for the button
138
- */
139
- toolTipContent: PropTypes.node,
140
- /**
141
- * Optional props to pass to the underlying **[EuiToolTip](/#/display/tooltip)**
142
- */
143
- toolTipProps: PropTypes.any,
144
- className: PropTypes.string,
145
- "aria-label": PropTypes.string,
146
- "data-test-subj": PropTypes.string,
147
- css: PropTypes.any
148
- }).isRequired,
149
- optionRef: PropTypes.any,
150
- "aria-label": PropTypes.string,
151
- "data-test-subj": PropTypes.string,
152
- css: PropTypes.any
153
- };