@elastic/eui 59.0.0 → 59.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 (147) hide show
  1. package/dist/eui_theme_dark.css +2 -136
  2. package/dist/eui_theme_dark.json +0 -6
  3. package/dist/eui_theme_dark.json.d.ts +0 -6
  4. package/dist/eui_theme_dark.min.css +1 -1
  5. package/dist/eui_theme_light.css +2 -136
  6. package/dist/eui_theme_light.json +0 -6
  7. package/dist/eui_theme_light.json.d.ts +0 -6
  8. package/dist/eui_theme_light.min.css +1 -1
  9. package/es/components/accessibility/skip_link/skip_link.js +39 -2
  10. package/es/components/accessibility/skip_link/skip_link.styles.js +1 -1
  11. package/es/components/button/{button_content.js → _button_content_deprecated.js} +4 -3
  12. package/es/components/button/button.js +16 -10
  13. package/es/components/button/button_display/_button_display.js +141 -0
  14. package/es/components/button/button_display/_button_display.styles.js +53 -0
  15. package/es/components/button/button_display/_button_display_content.js +100 -0
  16. package/es/components/button/button_display/_button_display_content.styles.js +61 -0
  17. package/es/components/button/button_empty/button_empty.js +3 -2
  18. package/es/components/button/button_group/button_group.js +2 -1
  19. package/es/components/button/button_group/button_group_button.js +3 -2
  20. package/es/components/call_out/call_out.js +2 -1
  21. package/es/components/card/card.js +2 -1
  22. package/es/components/card/card_select.js +2 -1
  23. package/es/components/date_picker/auto_refresh/auto_refresh.js +2 -1
  24. package/es/components/facet/facet_button.js +31 -15
  25. package/es/components/facet/facet_button.styles.js +64 -0
  26. package/es/components/facet/facet_group.js +12 -23
  27. package/es/components/facet/facet_group.styles.js +79 -0
  28. package/es/components/header/header_links/header_link.js +2 -1
  29. package/es/components/loading/loading_spinner.js +14 -3
  30. package/es/components/loading/loading_spinner.styles.js +4 -4
  31. package/es/components/notification/notification_event.js +2 -1
  32. package/es/components/pagination/pagination_button.js +2 -1
  33. package/es/components/text/text.js +1 -3
  34. package/es/components/text/text_align.js +2 -2
  35. package/es/components/text/text_color.js +7 -3
  36. package/es/themes/amsterdam/index.js +9 -0
  37. package/es/themes/index.js +2 -1
  38. package/eui.d.ts +200 -17
  39. package/lib/components/accessibility/skip_link/skip_link.js +39 -2
  40. package/lib/components/accessibility/skip_link/skip_link.styles.js +1 -1
  41. package/lib/components/button/{button_content.js → _button_content_deprecated.js} +6 -5
  42. package/lib/components/button/button.js +19 -13
  43. package/lib/components/button/button_display/_button_display.js +146 -0
  44. package/lib/components/button/button_display/_button_display.styles.js +59 -0
  45. package/lib/components/button/button_display/_button_display_content.js +111 -0
  46. package/lib/components/button/button_display/_button_display_content.styles.js +64 -0
  47. package/lib/components/button/button_empty/button_empty.js +4 -3
  48. package/lib/components/button/button_group/button_group.js +2 -1
  49. package/lib/components/button/button_group/button_group_button.js +3 -2
  50. package/lib/components/call_out/call_out.js +2 -1
  51. package/lib/components/card/card.js +2 -1
  52. package/lib/components/card/card_select.js +2 -1
  53. package/lib/components/date_picker/auto_refresh/auto_refresh.js +2 -1
  54. package/lib/components/facet/facet_button.js +35 -15
  55. package/lib/components/facet/facet_button.styles.js +79 -0
  56. package/lib/components/facet/facet_group.js +12 -23
  57. package/lib/components/facet/facet_group.styles.js +82 -0
  58. package/lib/components/header/header_links/header_link.js +2 -1
  59. package/lib/components/loading/loading_spinner.js +14 -3
  60. package/lib/components/loading/loading_spinner.styles.js +4 -4
  61. package/lib/components/notification/notification_event.js +2 -1
  62. package/lib/components/text/text.js +1 -3
  63. package/lib/components/text/text_align.js +8 -2
  64. package/lib/components/text/text_color.js +13 -3
  65. package/lib/themes/amsterdam/index.js +18 -0
  66. package/lib/themes/index.js +21 -1
  67. package/optimize/es/components/accessibility/skip_link/skip_link.js +23 -1
  68. package/optimize/es/components/accessibility/skip_link/skip_link.styles.js +1 -1
  69. package/optimize/es/components/button/{button_content.js → _button_content_deprecated.js} +1 -1
  70. package/optimize/es/components/button/button.js +13 -8
  71. package/optimize/es/components/button/button_display/_button_display.js +73 -0
  72. package/optimize/es/components/button/button_display/_button_display.styles.js +53 -0
  73. package/optimize/es/components/button/button_display/_button_display_content.js +67 -0
  74. package/optimize/es/components/button/button_display/_button_display_content.styles.js +61 -0
  75. package/optimize/es/components/button/button_empty/button_empty.js +1 -1
  76. package/optimize/es/components/button/button_group/button_group_button.js +1 -1
  77. package/optimize/es/components/call_out/call_out.js +2 -1
  78. package/optimize/es/components/facet/facet_button.js +31 -15
  79. package/optimize/es/components/facet/facet_button.styles.js +64 -0
  80. package/optimize/es/components/facet/facet_group.js +10 -21
  81. package/optimize/es/components/facet/facet_group.styles.js +79 -0
  82. package/optimize/es/components/loading/loading_spinner.js +3 -2
  83. package/optimize/es/components/loading/loading_spinner.styles.js +4 -4
  84. package/optimize/es/components/text/text.js +1 -3
  85. package/optimize/es/components/text/text_align.js +2 -2
  86. package/optimize/es/components/text/text_color.js +7 -3
  87. package/optimize/es/themes/amsterdam/index.js +9 -0
  88. package/optimize/es/themes/index.js +2 -1
  89. package/optimize/lib/components/accessibility/skip_link/skip_link.js +25 -1
  90. package/optimize/lib/components/accessibility/skip_link/skip_link.styles.js +1 -1
  91. package/optimize/lib/components/button/{button_content.js → _button_content_deprecated.js} +3 -3
  92. package/optimize/lib/components/button/button.js +16 -11
  93. package/optimize/lib/components/button/button_display/_button_display.js +79 -0
  94. package/optimize/lib/components/button/button_display/_button_display.styles.js +59 -0
  95. package/optimize/lib/components/button/button_display/_button_display_content.js +78 -0
  96. package/optimize/lib/components/button/button_display/_button_display_content.styles.js +64 -0
  97. package/optimize/lib/components/button/button_empty/button_empty.js +2 -2
  98. package/optimize/lib/components/button/button_group/button_group_button.js +1 -1
  99. package/optimize/lib/components/call_out/call_out.js +2 -1
  100. package/optimize/lib/components/facet/facet_button.js +35 -15
  101. package/optimize/lib/components/facet/facet_button.styles.js +79 -0
  102. package/optimize/lib/components/facet/facet_group.js +10 -21
  103. package/optimize/lib/components/facet/facet_group.styles.js +82 -0
  104. package/optimize/lib/components/loading/loading_spinner.js +3 -2
  105. package/optimize/lib/components/loading/loading_spinner.styles.js +4 -4
  106. package/optimize/lib/components/text/text.js +1 -3
  107. package/optimize/lib/components/text/text_align.js +8 -2
  108. package/optimize/lib/components/text/text_color.js +13 -3
  109. package/optimize/lib/themes/amsterdam/index.js +18 -0
  110. package/optimize/lib/themes/index.js +21 -1
  111. package/package.json +1 -1
  112. package/src/components/index.scss +0 -1
  113. package/src/components/selectable/selectable_message/_selectable_message.scss +1 -0
  114. package/src/themes/amsterdam/overrides/_index.scss +0 -1
  115. package/test-env/components/accessibility/skip_link/skip_link.js +40 -2
  116. package/test-env/components/accessibility/skip_link/skip_link.styles.js +1 -1
  117. package/test-env/components/button/{button_content.js → _button_content_deprecated.js} +6 -5
  118. package/test-env/components/button/button.js +19 -13
  119. package/test-env/components/button/button_display/_button_display.js +143 -0
  120. package/test-env/components/button/button_display/_button_display.styles.js +59 -0
  121. package/test-env/components/button/button_display/_button_display_content.js +108 -0
  122. package/test-env/components/button/button_display/_button_display_content.styles.js +64 -0
  123. package/test-env/components/button/button_empty/button_empty.js +4 -3
  124. package/test-env/components/button/button_group/button_group.js +2 -1
  125. package/test-env/components/button/button_group/button_group_button.js +3 -2
  126. package/test-env/components/call_out/call_out.js +2 -1
  127. package/test-env/components/card/card.js +2 -1
  128. package/test-env/components/card/card_select.js +2 -1
  129. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +2 -1
  130. package/test-env/components/facet/facet_button.js +35 -15
  131. package/test-env/components/facet/facet_button.styles.js +79 -0
  132. package/test-env/components/facet/facet_group.js +12 -23
  133. package/test-env/components/facet/facet_group.styles.js +82 -0
  134. package/test-env/components/header/header_links/header_link.js +2 -1
  135. package/test-env/components/loading/loading_spinner.js +14 -3
  136. package/test-env/components/loading/loading_spinner.styles.js +4 -4
  137. package/test-env/components/notification/notification_event.js +2 -1
  138. package/test-env/components/text/text.js +1 -3
  139. package/test-env/components/text/text_align.js +8 -2
  140. package/test-env/components/text/text_color.js +13 -3
  141. package/test-env/themes/amsterdam/index.js +18 -0
  142. package/test-env/themes/index.js +21 -1
  143. package/src/components/facet/_facet_button.scss +0 -69
  144. package/src/components/facet/_facet_group.scss +0 -24
  145. package/src/components/facet/_index.scss +0 -4
  146. package/src/components/facet/_variables.scss +0 -6
  147. package/src/themes/amsterdam/overrides/_facet.scss +0 -10
@@ -13,7 +13,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
13
13
  * in compliance with, at your election, the Elastic License 2.0 or the Server
14
14
  * Side Public License, v 1.
15
15
  */
16
- import React from 'react';
16
+ import React, { isValidElement } from 'react';
17
17
  import { cloneElementWithCss } from '../../services/theme/clone_element';
18
18
  import { useEuiTheme } from '../../services';
19
19
  import { euiTextColorStyles } from './text_color.styles';
@@ -46,8 +46,12 @@ export var EuiTextColor = function EuiTextColor(_ref) {
46
46
  style: euiTextStyle
47
47
  }, rest);
48
48
 
49
- if (cloneElement) {
50
- return cloneElementWithCss(children, props);
49
+ if ( /*#__PURE__*/isValidElement(children) && cloneElement) {
50
+ var childrenStyle = _objectSpread(_objectSpread({}, children.props.style), euiTextStyle);
51
+
52
+ return cloneElementWithCss(children, _objectSpread(_objectSpread({}, props), {}, {
53
+ style: childrenStyle
54
+ }));
51
55
  } else {
52
56
  var Component = component;
53
57
  return ___EmotionJSX(Component, props, children);
@@ -0,0 +1,9 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ // Only globally export the mixins we allow consumers to re-use
9
+ export * from './global_styling/mixins/shadow';
@@ -6,4 +6,5 @@
6
6
  * Side Public License, v 1.
7
7
  */
8
8
  export { EUI_THEMES, isDefaultTheme } from './themes';
9
- export { AMSTERDAM_NAME_KEY, EuiThemeAmsterdam } from './amsterdam/theme';
9
+ export { AMSTERDAM_NAME_KEY, EuiThemeAmsterdam } from './amsterdam/theme';
10
+ export * from './amsterdam';
@@ -9,6 +9,8 @@ exports.POSITIONS = exports.EuiSkipLink = void 0;
9
9
 
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
11
 
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+
12
14
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
15
 
14
16
  var _react = _interopRequireDefault(require("react"));
@@ -25,12 +27,18 @@ var _skip_link = require("./skip_link.styles");
25
27
 
26
28
  var _react2 = require("@emotion/react");
27
29
 
28
- var _excluded = ["destinationId", "tabIndex", "position", "children", "className"];
30
+ var _excluded = ["destinationId", "overrideLinkBehavior", "tabIndex", "position", "children", "className"];
31
+
32
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
33
+
34
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
35
+
29
36
  var POSITIONS = ['static', 'fixed', 'absolute'];
30
37
  exports.POSITIONS = POSITIONS;
31
38
 
32
39
  var EuiSkipLink = function EuiSkipLink(_ref) {
33
40
  var destinationId = _ref.destinationId,
41
+ overrideLinkBehavior = _ref.overrideLinkBehavior,
34
42
  tabIndex = _ref.tabIndex,
35
43
  _ref$position = _ref.position,
36
44
  position = _ref$position === void 0 ? 'static' : _ref$position,
@@ -50,6 +58,22 @@ var EuiSkipLink = function EuiSkipLink(_ref) {
50
58
  };
51
59
  }
52
60
 
61
+ if (overrideLinkBehavior) {
62
+ optionalProps = _objectSpread(_objectSpread({}, optionalProps), {}, {
63
+ onClick: function onClick(e) {
64
+ e.preventDefault();
65
+ var destinationEl = document.getElementById(destinationId);
66
+ if (!destinationEl) return;
67
+ destinationEl.scrollIntoView();
68
+ destinationEl.tabIndex = -1; // Ensure the destination content is focusable
69
+
70
+ destinationEl.focus({
71
+ preventScroll: true
72
+ }); // Scrolling is already handled above, and focus's autoscroll behaves oddly around fixed headers
73
+ }
74
+ });
75
+ }
76
+
53
77
  return (0, _react2.jsx)(_screen_reader_only.EuiScreenReaderOnly, {
54
78
  showOnFocus: true
55
79
  }, (0, _react2.jsx)(_button.EuiButton, (0, _extends2.default)({
@@ -35,7 +35,7 @@ var euiSkipLinkStyles = function euiSkipLinkStyles(_ref3) {
35
35
  // Set positions on focus only as to not override screenReaderOnly position
36
36
  // When positioned absolutely, consumers still need to tell it WHERE (top,left,etc...)
37
37
  absolute: _ref,
38
- fixed: /*#__PURE__*/(0, _react.css)("&:focus{position:fixed;inset-block-start:", euiTheme.size.xs, ";inset-inline-start:", euiTheme.size.xs, ";z-index:", Number(euiTheme.levels.header) + 1, ";};label:fixed;")
38
+ fixed: /*#__PURE__*/(0, _react.css)("position:fixed!important;&:focus{inset-block-start:", euiTheme.size.xs, ";inset-inline-start:", euiTheme.size.xs, ";z-index:", Number(euiTheme.levels.header) + 1, ";};label:fixed;")
39
39
  };
40
40
  };
41
41
 
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.ICON_SIDES = exports.EuiButtonContent = void 0;
8
+ exports.ICON_SIDES = exports.EuiButtonContentDeprecated = void 0;
9
9
 
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
11
 
@@ -31,7 +31,7 @@ var iconSideToClassNameMap = {
31
31
  var ICON_SIDES = (0, _common.keysOf)(iconSideToClassNameMap);
32
32
  exports.ICON_SIDES = ICON_SIDES;
33
33
 
34
- var EuiButtonContent = function EuiButtonContent(_ref) {
34
+ var EuiButtonContentDeprecated = function EuiButtonContentDeprecated(_ref) {
35
35
  var children = _ref.children,
36
36
  textProps = _ref.textProps,
37
37
  _ref$isLoading = _ref.isLoading,
@@ -66,4 +66,4 @@ var EuiButtonContent = function EuiButtonContent(_ref) {
66
66
  }), buttonIcon, (0, _react2.jsx)("span", textProps, children));
67
67
  };
68
68
 
69
- exports.EuiButtonContent = EuiButtonContent;
69
+ exports.EuiButtonContentDeprecated = EuiButtonContentDeprecated;
@@ -7,7 +7,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
- exports.sizeToClassNameMap = exports.colorToClassNameMap = exports.SIZES = exports.EuiButtonDisplay = exports.EuiButton = exports.COLORS = void 0;
10
+ exports.sizeToClassNameMap = exports.colorToClassNameMap = exports.SIZES = exports.EuiButtonDisplayDeprecated = exports.EuiButton = exports.COLORS = void 0;
11
11
 
12
12
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
13
 
@@ -23,7 +23,7 @@ var _common = require("../common");
23
23
 
24
24
  var _services = require("../../services");
25
25
 
26
- var _button_content = require("./button_content");
26
+ var _button_content_deprecated = require("./_button_content_deprecated");
27
27
 
28
28
  var _href_validator = require("../../services/security/href_validator");
29
29
 
@@ -110,24 +110,29 @@ var EuiButton = function EuiButton(_ref) {
110
110
  relObj.type = type;
111
111
  }
112
112
 
113
- return (0, _react2.jsx)(EuiButtonDisplay, (0, _extends2.default)({
114
- element: element,
115
- baseClassName: "euiButton",
116
- ref: buttonRef
117
- }, elementProps, relObj, rest));
113
+ return (// eslint-disable-next-line react/jsx-pascal-case
114
+ (0, _react2.jsx)(EuiButtonDisplayDeprecated, (0, _extends2.default)({
115
+ element: element,
116
+ baseClassName: "euiButton",
117
+ ref: buttonRef
118
+ }, elementProps, relObj, rest))
119
+ );
118
120
  };
119
121
 
120
122
  exports.EuiButton = EuiButton;
121
123
  EuiButton.displayName = 'EuiButton';
122
124
 
123
125
  /**
126
+ * *DEPRECATED*
124
127
  * EuiButtonDisplay is an internal-only component used for displaying
125
128
  * any element as a button.
126
129
  * NOTE: This component *must* be below EuiButton in the file and
127
130
  * EuiButton must also set a displayName for react-docgen-typescript
128
131
  * to correctly set EuiButton's docgenInfo and display a props table.
132
+ * This component has been deprecated in favor of the new EuiButtonDisplay
133
+ * that can be found in `src/components/button/button_display/_button_display.tsx`
129
134
  */
130
- var EuiButtonDisplay = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
135
+ var EuiButtonDisplayDeprecated = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
131
136
  var _ref2$element = _ref2.element,
132
137
  element = _ref2$element === void 0 ? 'button' : _ref2$element,
133
138
  baseClassName = _ref2.baseClassName,
@@ -160,7 +165,7 @@ var EuiButtonDisplay = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref)
160
165
 
161
166
  var contentClassNames = (0, _classnames.default)('euiButton__content', contentProps && contentProps.className);
162
167
  var textClassNames = (0, _classnames.default)('euiButton__text', textProps && textProps.className);
163
- var innerNode = (0, _react2.jsx)(_button_content.EuiButtonContent, (0, _extends2.default)({
168
+ var innerNode = (0, _react2.jsx)(_button_content_deprecated.EuiButtonContentDeprecated, (0, _extends2.default)({
164
169
  isLoading: isLoading,
165
170
  iconType: iconType,
166
171
  iconSide: iconSide,
@@ -187,5 +192,5 @@ var EuiButtonDisplay = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref)
187
192
  ref: ref
188
193
  }, rest), innerNode);
189
194
  });
190
- exports.EuiButtonDisplay = EuiButtonDisplay;
191
- EuiButtonDisplay.displayName = 'EuiButtonDisplay';
195
+ exports.EuiButtonDisplayDeprecated = EuiButtonDisplayDeprecated;
196
+ EuiButtonDisplayDeprecated.displayName = 'EuiButtonDisplay';
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.EuiButtonDisplay = void 0;
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
+
16
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _react2 = require("@emotion/react");
21
+
22
+ var _services = require("../../../services");
23
+
24
+ var _button_display = require("./_button_display.styles");
25
+
26
+ var _button_display_content = require("./_button_display_content");
27
+
28
+ var _excluded = ["element", "children", "iconType", "iconSide", "size", "isDisabled", "isLoading", "isSelected", "fullWidth", "minWidth", "contentProps", "textProps"];
29
+
30
+ 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); }
31
+
32
+ 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; }
33
+
34
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
35
+
36
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
37
+
38
+ /**
39
+ * EuiButtonDisplay is an internal-only component used for displaying
40
+ * any element as a button.
41
+ */
42
+ var EuiButtonDisplay = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
43
+ var _ref$element = _ref.element,
44
+ element = _ref$element === void 0 ? 'button' : _ref$element,
45
+ children = _ref.children,
46
+ iconType = _ref.iconType,
47
+ iconSide = _ref.iconSide,
48
+ _ref$size = _ref.size,
49
+ size = _ref$size === void 0 ? 'm' : _ref$size,
50
+ _ref$isDisabled = _ref.isDisabled,
51
+ isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
52
+ isLoading = _ref.isLoading,
53
+ isSelected = _ref.isSelected,
54
+ fullWidth = _ref.fullWidth,
55
+ minWidth = _ref.minWidth,
56
+ contentProps = _ref.contentProps,
57
+ textProps = _ref.textProps,
58
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
59
+ var buttonIsDisabled = isLoading || isDisabled;
60
+ var minWidthPx = minWidth === 'number' ? "".concat(minWidth, "px") : minWidth;
61
+ var theme = (0, _services.useEuiTheme)();
62
+ var styles = (0, _button_display.euiButtonDisplayStyles)(theme, minWidthPx);
63
+ var cssStyles = [styles.euiButtonDisplay, styles[size], fullWidth && styles.fullWidth, isDisabled && styles.isDisabled];
64
+ var innerNode = (0, _react2.jsx)(_button_display_content.EuiButtonDisplayContent, (0, _extends2.default)({
65
+ isLoading: isLoading,
66
+ isDisabled: buttonIsDisabled,
67
+ iconType: iconType,
68
+ iconSide: iconSide,
69
+ textProps: _objectSpread({}, textProps)
70
+ }, contentProps), children);
71
+ return (0, _react2.createElement)(element, _objectSpread({
72
+ css: cssStyles,
73
+ disabled: element === 'button' && buttonIsDisabled,
74
+ 'aria-pressed': element === 'button' ? isSelected : undefined,
75
+ ref: ref
76
+ }, rest), innerNode);
77
+ });
78
+ exports.EuiButtonDisplay = EuiButtonDisplay;
79
+ EuiButtonDisplay.displayName = 'EuiButtonDisplay';
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiButtonDisplayStyles = exports.euiButtonBaseCSS = void 0;
7
+
8
+ var _react = require("@emotion/react");
9
+
10
+ var _global_styling = require("../../../global_styling");
11
+
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
+
14
+ // Provides a solid reset and base for handling sizing layout
15
+ // Does not include any visual styles
16
+ var euiButtonBaseCSS = function euiButtonBaseCSS() {
17
+ return "\n display: inline-block;\n appearance: none;\n cursor: pointer;\n ".concat((0, _global_styling.logicalTextAlignStyle)('center'), ";\n white-space: nowrap;\n ").concat((0, _global_styling.logicalCSS)('max-width', '100%'), ";\n vertical-align: middle;\n ");
18
+ };
19
+
20
+ exports.euiButtonBaseCSS = euiButtonBaseCSS;
21
+
22
+ var _buttonSize = function _buttonSize(size) {
23
+ return "\n ".concat((0, _global_styling.logicalCSS)('height', size), ";\n // prevents descenders from getting cut off\n line-height: ").concat(size, ";\n ");
24
+ };
25
+
26
+ var _ref = process.env.NODE_ENV === "production" ? {
27
+ name: "15xpz7k-fullWidth",
28
+ styles: "display:block;width:100%;label:fullWidth;"
29
+ } : {
30
+ name: "15xpz7k-fullWidth",
31
+ styles: "display:block;width:100%;label:fullWidth;",
32
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
33
+ };
34
+
35
+ var _ref2 = process.env.NODE_ENV === "production" ? {
36
+ name: "8595p9-isDisabled",
37
+ styles: "cursor:not-allowed;label:isDisabled;"
38
+ } : {
39
+ name: "8595p9-isDisabled",
40
+ styles: "cursor:not-allowed;label:isDisabled;",
41
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
42
+ };
43
+
44
+ var euiButtonDisplayStyles = function euiButtonDisplayStyles(euiThemeContext, minWidth) {
45
+ var euiTheme = euiThemeContext.euiTheme;
46
+ return {
47
+ // Base
48
+ euiButtonDisplay: /*#__PURE__*/(0, _react.css)(euiButtonBaseCSS(), ";", minWidth && (0, _global_styling.logicalCSS)('min-width', minWidth), ";;label:euiButtonDisplay;"),
49
+ // States
50
+ isDisabled: _ref2,
51
+ fullWidth: _ref,
52
+ // Sizes
53
+ xs: /*#__PURE__*/(0, _react.css)(_buttonSize(euiTheme.size.l), (0, _global_styling.euiFontSize)(euiThemeContext, 'xs'), ";label:xs;"),
54
+ s: /*#__PURE__*/(0, _react.css)(_buttonSize(euiTheme.size.xl), (0, _global_styling.euiFontSize)(euiThemeContext, 's'), ";label:s;"),
55
+ m: /*#__PURE__*/(0, _react.css)(_buttonSize(euiTheme.size.xxl), (0, _global_styling.euiFontSize)(euiThemeContext, 's'), ";label:m;")
56
+ };
57
+ };
58
+
59
+ exports.euiButtonDisplayStyles = euiButtonDisplayStyles;
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.EuiButtonDisplayContent = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _services = require("../../../services");
17
+
18
+ var _loading = require("../../loading");
19
+
20
+ var _icon = require("../../icon");
21
+
22
+ var _button_display_content = require("./_button_display_content.styles");
23
+
24
+ var _react2 = require("@emotion/react");
25
+
26
+ var _excluded = ["children", "textProps", "isLoading", "isDisabled", "iconType", "iconSize", "iconSide"];
27
+
28
+ var EuiButtonDisplayContent = function EuiButtonDisplayContent(_ref) {
29
+ var children = _ref.children,
30
+ textProps = _ref.textProps,
31
+ _ref$isLoading = _ref.isLoading,
32
+ isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
33
+ _ref$isDisabled = _ref.isDisabled,
34
+ isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
35
+ iconType = _ref.iconType,
36
+ _ref$iconSize = _ref.iconSize,
37
+ iconSize = _ref$iconSize === void 0 ? 'm' : _ref$iconSize,
38
+ iconSide = _ref.iconSide,
39
+ contentProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
40
+ var theme = (0, _services.useEuiTheme)();
41
+ var styles = (0, _button_display_content.euiButtonDisplayContentStyles)(theme);
42
+ var cssStyles = [styles.euiButtonDisplayContent, iconSide && styles[iconSide], isDisabled && styles.isDisabled];
43
+ var cssSpinnerStyles = [styles.euiButtonDisplayContent__spinner];
44
+ var cssIconStyles = [styles.euiButtonDisplayContent__icon]; // Add an icon to the button if one exists.
45
+
46
+ var icon; // When the button is disabled the text gets gray
47
+ // and in some buttons the background gets a light gray
48
+ // for better contrast we want to change the border of the spinner
49
+ // to have the same color of the text. This way we ensure the borders
50
+ // are always visible. The default spinner color could be very light.
51
+
52
+ var loadingSpinnerColor = isDisabled ? {
53
+ border: 'currentColor'
54
+ } : undefined;
55
+
56
+ if (isLoading) {
57
+ icon = (0, _react2.jsx)(_loading.EuiLoadingSpinner, {
58
+ css: cssSpinnerStyles,
59
+ size: iconSize,
60
+ color: loadingSpinnerColor
61
+ });
62
+ } else if (iconType) {
63
+ icon = (0, _react2.jsx)(_icon.EuiIcon, {
64
+ css: cssIconStyles,
65
+ type: iconType,
66
+ size: iconSize,
67
+ color: "inherit" // forces the icon to inherit its parent color
68
+
69
+ });
70
+ }
71
+
72
+ var isText = typeof children === 'string';
73
+ return (0, _react2.jsx)("span", (0, _extends2.default)({}, contentProps, {
74
+ css: cssStyles
75
+ }), icon, isText ? (0, _react2.jsx)("span", textProps, children) : children);
76
+ };
77
+
78
+ exports.EuiButtonDisplayContent = EuiButtonDisplayContent;
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiButtonDisplayContentStyles = void 0;
7
+
8
+ var _react = require("@emotion/react");
9
+
10
+ var _global_styling = require("../../../global_styling");
11
+
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
+
14
+ var _ref = process.env.NODE_ENV === "production" ? {
15
+ name: "ske5nx-isDisabled",
16
+ styles: "pointer-events:auto;cursor:not-allowed;label:isDisabled;"
17
+ } : {
18
+ name: "ske5nx-isDisabled",
19
+ styles: "pointer-events:auto;cursor:not-allowed;label:isDisabled;",
20
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
21
+ };
22
+
23
+ var _ref2 = process.env.NODE_ENV === "production" ? {
24
+ name: "gtg6j-euiButtonDisplayContent__icon",
25
+ styles: "flex-shrink:0;label:euiButtonDisplayContent__icon;"
26
+ } : {
27
+ name: "gtg6j-euiButtonDisplayContent__icon",
28
+ styles: "flex-shrink:0;label:euiButtonDisplayContent__icon;",
29
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
30
+ };
31
+
32
+ var _ref3 = process.env.NODE_ENV === "production" ? {
33
+ name: "10wlo76-euiButtonDisplayContent__spinner",
34
+ styles: "flex-shrink:0;label:euiButtonDisplayContent__spinner;"
35
+ } : {
36
+ name: "10wlo76-euiButtonDisplayContent__spinner",
37
+ styles: "flex-shrink:0;label:euiButtonDisplayContent__spinner;",
38
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
39
+ };
40
+
41
+ var _ref4 = process.env.NODE_ENV === "production" ? {
42
+ name: "qfl6yj-right",
43
+ styles: "flex-direction:row-reverse;label:right;"
44
+ } : {
45
+ name: "qfl6yj-right",
46
+ styles: "flex-direction:row-reverse;label:right;",
47
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
48
+ };
49
+
50
+ var euiButtonDisplayContentStyles = function euiButtonDisplayContentStyles(_ref5) {
51
+ var euiTheme = _ref5.euiTheme;
52
+ return {
53
+ // Base
54
+ euiButtonDisplayContent: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('height', '100%'), ";", (0, _global_styling.logicalCSS)('width', '100%'), ";display:flex;justify-content:center;align-items:center;vertical-align:middle;gap:", euiTheme.size.s, ";;label:euiButtonDisplayContent;"),
55
+ // Icon side
56
+ left: /*#__PURE__*/(0, _react.css)(";label:left;"),
57
+ right: _ref4,
58
+ euiButtonDisplayContent__spinner: _ref3,
59
+ euiButtonDisplayContent__icon: _ref2,
60
+ isDisabled: _ref
61
+ };
62
+ };
63
+
64
+ exports.euiButtonDisplayContentStyles = euiButtonDisplayContentStyles;
@@ -21,7 +21,7 @@ var _common = require("../../common");
21
21
 
22
22
  var _services = require("../../../services");
23
23
 
24
- var _button_content = require("../button_content");
24
+ var _button_content_deprecated = require("../_button_content_deprecated");
25
25
 
26
26
  var _href_validator = require("../../../services/security/href_validator");
27
27
 
@@ -99,7 +99,7 @@ var EuiButtonEmpty = function EuiButtonEmpty(_ref) {
99
99
  }, className);
100
100
  var contentClassNames = (0, _classnames.default)('euiButtonEmpty__content', contentProps && contentProps.className);
101
101
  var textClassNames = (0, _classnames.default)('euiButtonEmpty__text', textProps && textProps.className);
102
- var innerNode = (0, _react2.jsx)(_button_content.EuiButtonContent, (0, _extends2.default)({
102
+ var innerNode = (0, _react2.jsx)(_button_content_deprecated.EuiButtonContentDeprecated, (0, _extends2.default)({
103
103
  isLoading: isLoading,
104
104
  iconType: iconType,
105
105
  iconSide: iconSide,
@@ -100,7 +100,7 @@ var EuiButtonGroupButton = function EuiButtonGroupButton(_ref) {
100
100
  buttonTextRef = _useInnerText2[0],
101
101
  innerText = _useInnerText2[1];
102
102
 
103
- return (0, _react2.jsx)(_button.EuiButtonDisplay, (0, _extends2.default)({
103
+ return (0, _react2.jsx)(_button.EuiButtonDisplayDeprecated, (0, _extends2.default)({
104
104
  baseClassName: "euiButtonGroupButton",
105
105
  className: buttonClasses,
106
106
  element: el,
@@ -104,7 +104,8 @@ var EuiCallOut = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
104
104
  css: cssStyles,
105
105
  paddingSize: size === 's' ? 's' : 'm',
106
106
  className: classes,
107
- panelRef: ref
107
+ panelRef: ref,
108
+ grow: false
108
109
  }, rest), header, optionalChildren);
109
110
  });
110
111
  exports.EuiCallOut = EuiCallOut;
@@ -21,6 +21,14 @@ var _loading = require("../loading");
21
21
 
22
22
  var _inner_text = require("../inner_text");
23
23
 
24
+ var _clone_element = require("../../services/theme/clone_element");
25
+
26
+ var _services = require("../../services");
27
+
28
+ var _facet_button = require("./facet_button.styles");
29
+
30
+ var _button_display = require("../button/button_display/_button_display");
31
+
24
32
  var _react2 = require("@emotion/react");
25
33
 
26
34
  var _excluded = ["children", "className", "icon", "isDisabled", "isLoading", "isSelected", "quantity", "buttonRef"];
@@ -40,20 +48,30 @@ var EuiFacetButton = function EuiFacetButton(_ref) {
40
48
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
41
49
  // If in the loading state, force disabled to true
42
50
  isDisabled = isLoading ? true : isDisabled;
43
- var classes = (0, _classnames.default)('euiFacetButton', {
44
- 'euiFacetButton--isSelected': isSelected,
45
- 'euiFacetButton--unSelected': !isSelected
46
- }, className); // Add quantity number if provided or loading indicator
51
+ var selection = isSelected ? 'isSelected' : 'unSelected';
52
+ var classes = (0, _classnames.default)('euiFacetButton', className);
53
+ var theme = (0, _services.useEuiTheme)();
54
+ var styles = (0, _facet_button.euiFacetButtonStyles)(theme);
55
+ var cssStyles = [styles.euiFacetButton];
56
+ var textStyles = (0, _facet_button.euiFacetButtonTextStyles)(theme);
57
+ var cssTextStyles = [textStyles.euiFacetButton__text, textStyles[selection]];
58
+ var quantityStyles = (0, _facet_button.euiFacetButtonQuantityStyles)();
59
+ var cssQuantityStyles = [quantityStyles.euiFacetButton__quantity, isDisabled && quantityStyles.isDisabled];
60
+ var iconStyles = (0, _facet_button.euiFacetButtonIconStyles)();
61
+ var cssIconStyles = [iconStyles.euiFacetButton__icon, isDisabled && quantityStyles.isDisabled];
62
+ var loadingSpinnerStyles = (0, _facet_button.euiFacetButtonLoadingSpinnerStyles)();
63
+ var cssLoadingSpinnerStyles = [loadingSpinnerStyles.euiFacetButton__loadingSpinner]; // Add quantity number if provided or loading indicator
47
64
 
48
65
  var buttonQuantity;
49
66
 
50
67
  if (isLoading) {
51
68
  buttonQuantity = (0, _react2.jsx)(_loading.EuiLoadingSpinner, {
52
- className: "euiFacetButton__spinner",
69
+ css: cssLoadingSpinnerStyles,
53
70
  size: "m"
54
71
  });
55
72
  } else if (typeof quantity === 'number') {
56
73
  buttonQuantity = (0, _react2.jsx)(_badge.EuiNotificationBadge, {
74
+ css: cssQuantityStyles,
57
75
  className: "euiFacetButton__quantity",
58
76
  size: "m",
59
77
  color: !isSelected || isDisabled ? 'subdued' : 'accent'
@@ -64,25 +82,27 @@ var EuiFacetButton = function EuiFacetButton(_ref) {
64
82
  var buttonIcon;
65
83
 
66
84
  if ( /*#__PURE__*/_react.default.isValidElement(icon)) {
67
- buttonIcon = /*#__PURE__*/_react.default.cloneElement(icon, {
68
- className: (0, _classnames.default)(icon.props.className, 'euiFacetButton__icon')
85
+ buttonIcon = (0, _clone_element.cloneElementWithCss)(icon, {
86
+ css: cssIconStyles,
87
+ className: 'euiFacetButton__icon'
69
88
  });
70
89
  }
71
90
 
72
91
  return (0, _react2.jsx)(_inner_text.EuiInnerText, null, function (ref, innerText) {
73
- return (0, _react2.jsx)("button", (0, _extends2.default)({
92
+ return (0, _react2.jsx)(_button_display.EuiButtonDisplay, (0, _extends2.default)({
74
93
  className: classes,
75
- disabled: isDisabled,
76
- type: "button",
94
+ css: cssStyles,
95
+ element: "button",
96
+ isDisabled: isDisabled,
77
97
  ref: buttonRef,
78
- title: rest['aria-label'] || innerText
79
- }, rest), (0, _react2.jsx)("span", {
80
- className: "euiFacetButton__content"
81
- }, buttonIcon, (0, _react2.jsx)("span", {
98
+ title: rest['aria-label'] || innerText,
99
+ size: "s"
100
+ }, rest), buttonIcon, (0, _react2.jsx)("span", {
101
+ css: cssTextStyles,
82
102
  className: "euiFacetButton__text",
83
103
  "data-text": innerText,
84
104
  ref: ref
85
- }, children), buttonQuantity));
105
+ }, children), buttonQuantity);
86
106
  });
87
107
  };
88
108