@elastic/eui 67.0.0 → 67.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 (141) hide show
  1. package/dist/eui_theme_dark.css +0 -98
  2. package/dist/eui_theme_dark.min.css +1 -1
  3. package/dist/eui_theme_light.css +0 -98
  4. package/dist/eui_theme_light.min.css +1 -1
  5. package/es/components/badge/badge.js +84 -78
  6. package/es/components/badge/badge.styles.js +56 -0
  7. package/es/components/basic_table/in_memory_table.js +8 -0
  8. package/es/components/button/button.js +0 -1
  9. package/es/components/button/button_display/_button_display.js +10 -5
  10. package/es/components/button/button_display/_button_display.styles.js +2 -2
  11. package/es/components/button/button_display/_button_display_content.js +5 -3
  12. package/es/components/button/button_display/_button_display_content.styles.js +4 -1
  13. package/es/components/card/card.js +2 -2
  14. package/es/components/card/card.styles.js +5 -2
  15. package/es/components/notification/notification_event.js +1 -1
  16. package/es/components/notification/notification_event_meta.js +1 -1
  17. package/es/components/popover/popover_title.js +2 -2
  18. package/es/components/popover/popover_title.styles.js +18 -6
  19. package/es/components/search_bar/filters/custom_component_filter.js +16 -0
  20. package/es/components/search_bar/filters/filters.js +6 -0
  21. package/es/components/search_bar/query/ast.js +12 -0
  22. package/es/components/search_bar/query/ast_to_es_query_dsl.js +15 -10
  23. package/es/components/search_bar/query/query.js +17 -0
  24. package/es/components/search_bar/search_bar.js +4 -0
  25. package/es/components/search_bar/search_filters.js +4 -0
  26. package/es/components/selectable/selectable_list/selectable_list.js +2 -2
  27. package/es/components/selectable/selectable_list/selectable_list_item.js +2 -2
  28. package/es/services/color/contrast.js +2 -0
  29. package/es/services/index.js +1 -1
  30. package/es/services/theme/context.js +2 -1
  31. package/es/services/theme/hooks.js +27 -1
  32. package/es/services/theme/index.js +1 -1
  33. package/es/services/theme/provider.js +15 -1
  34. package/eui.d.ts +104 -28
  35. package/lib/components/badge/badge.js +92 -80
  36. package/lib/components/badge/badge.styles.js +61 -0
  37. package/lib/components/basic_table/in_memory_table.js +8 -0
  38. package/lib/components/button/button.js +0 -1
  39. package/lib/components/button/button_display/_button_display.js +10 -5
  40. package/lib/components/button/button_display/_button_display.styles.js +2 -2
  41. package/lib/components/button/button_display/_button_display_content.js +9 -4
  42. package/lib/components/button/button_display/_button_display_content.styles.js +4 -1
  43. package/lib/components/card/card.js +2 -2
  44. package/lib/components/card/card.styles.js +5 -2
  45. package/lib/components/notification/notification_event.js +1 -1
  46. package/lib/components/notification/notification_event_meta.js +1 -1
  47. package/lib/components/popover/popover_title.js +2 -2
  48. package/lib/components/popover/popover_title.styles.js +19 -7
  49. package/lib/components/search_bar/filters/custom_component_filter.js +29 -0
  50. package/lib/components/search_bar/filters/filters.js +7 -0
  51. package/lib/components/search_bar/query/ast.js +12 -0
  52. package/lib/components/search_bar/query/ast_to_es_query_dsl.js +16 -11
  53. package/lib/components/search_bar/query/query.js +17 -0
  54. package/lib/components/search_bar/search_bar.js +4 -0
  55. package/lib/components/search_bar/search_filters.js +4 -0
  56. package/lib/components/selectable/selectable_list/selectable_list.js +2 -2
  57. package/lib/components/selectable/selectable_list/selectable_list_item.js +2 -2
  58. package/lib/services/color/contrast.js +6 -1
  59. package/lib/services/index.js +7 -0
  60. package/lib/services/theme/context.js +4 -2
  61. package/lib/services/theme/hooks.js +28 -0
  62. package/lib/services/theme/index.js +12 -0
  63. package/lib/services/theme/provider.js +23 -2
  64. package/optimize/es/components/badge/badge.js +82 -76
  65. package/optimize/es/components/badge/badge.styles.js +56 -0
  66. package/optimize/es/components/basic_table/in_memory_table.js +4 -0
  67. package/optimize/es/components/button/button.js +0 -1
  68. package/optimize/es/components/button/button_display/_button_display.js +8 -3
  69. package/optimize/es/components/button/button_display/_button_display.styles.js +2 -2
  70. package/optimize/es/components/button/button_display/_button_display_content.js +3 -1
  71. package/optimize/es/components/button/button_display/_button_display_content.styles.js +4 -1
  72. package/optimize/es/components/card/card.js +2 -2
  73. package/optimize/es/components/card/card.styles.js +5 -2
  74. package/optimize/es/components/popover/popover_title.js +2 -2
  75. package/optimize/es/components/popover/popover_title.styles.js +18 -6
  76. package/optimize/es/components/search_bar/filters/custom_component_filter.js +16 -0
  77. package/optimize/es/components/search_bar/filters/filters.js +6 -0
  78. package/optimize/es/components/search_bar/query/ast.js +12 -0
  79. package/optimize/es/components/search_bar/query/ast_to_es_query_dsl.js +14 -9
  80. package/optimize/es/components/search_bar/query/query.js +17 -0
  81. package/optimize/es/services/color/contrast.js +2 -0
  82. package/optimize/es/services/index.js +1 -1
  83. package/optimize/es/services/theme/context.js +2 -1
  84. package/optimize/es/services/theme/hooks.js +27 -1
  85. package/optimize/es/services/theme/index.js +1 -1
  86. package/optimize/es/services/theme/provider.js +14 -1
  87. package/optimize/lib/components/badge/badge.js +90 -78
  88. package/optimize/lib/components/badge/badge.styles.js +61 -0
  89. package/optimize/lib/components/basic_table/in_memory_table.js +4 -0
  90. package/optimize/lib/components/button/button.js +0 -1
  91. package/optimize/lib/components/button/button_display/_button_display.js +8 -3
  92. package/optimize/lib/components/button/button_display/_button_display.styles.js +2 -2
  93. package/optimize/lib/components/button/button_display/_button_display_content.js +6 -2
  94. package/optimize/lib/components/button/button_display/_button_display_content.styles.js +4 -1
  95. package/optimize/lib/components/card/card.js +2 -2
  96. package/optimize/lib/components/card/card.styles.js +5 -2
  97. package/optimize/lib/components/popover/popover_title.js +2 -2
  98. package/optimize/lib/components/popover/popover_title.styles.js +19 -7
  99. package/optimize/lib/components/search_bar/filters/custom_component_filter.js +29 -0
  100. package/optimize/lib/components/search_bar/filters/filters.js +7 -0
  101. package/optimize/lib/components/search_bar/query/ast.js +12 -0
  102. package/optimize/lib/components/search_bar/query/ast_to_es_query_dsl.js +16 -11
  103. package/optimize/lib/components/search_bar/query/query.js +17 -0
  104. package/optimize/lib/services/color/contrast.js +5 -1
  105. package/optimize/lib/services/index.js +7 -0
  106. package/optimize/lib/services/theme/context.js +4 -2
  107. package/optimize/lib/services/theme/hooks.js +28 -0
  108. package/optimize/lib/services/theme/index.js +12 -0
  109. package/optimize/lib/services/theme/provider.js +23 -9
  110. package/package.json +5 -5
  111. package/src/components/badge/_index.scss +0 -1
  112. package/test-env/components/badge/badge.js +92 -80
  113. package/test-env/components/badge/badge.styles.js +61 -0
  114. package/test-env/components/basic_table/in_memory_table.js +8 -0
  115. package/test-env/components/button/button.js +0 -1
  116. package/test-env/components/button/button_display/_button_display.js +10 -5
  117. package/test-env/components/button/button_display/_button_display.styles.js +2 -2
  118. package/test-env/components/button/button_display/_button_display_content.js +8 -4
  119. package/test-env/components/button/button_display/_button_display_content.styles.js +4 -1
  120. package/test-env/components/card/card.js +2 -2
  121. package/test-env/components/card/card.styles.js +5 -2
  122. package/test-env/components/notification/notification_event.js +1 -1
  123. package/test-env/components/notification/notification_event_meta.js +1 -1
  124. package/test-env/components/popover/popover_title.js +2 -2
  125. package/test-env/components/popover/popover_title.styles.js +19 -7
  126. package/test-env/components/search_bar/filters/custom_component_filter.js +29 -0
  127. package/test-env/components/search_bar/filters/filters.js +7 -0
  128. package/test-env/components/search_bar/query/ast.js +12 -0
  129. package/test-env/components/search_bar/query/ast_to_es_query_dsl.js +16 -11
  130. package/test-env/components/search_bar/query/query.js +17 -0
  131. package/test-env/components/search_bar/search_bar.js +4 -0
  132. package/test-env/components/search_bar/search_filters.js +4 -0
  133. package/test-env/components/selectable/selectable_list/selectable_list.js +2 -2
  134. package/test-env/components/selectable/selectable_list/selectable_list_item.js +2 -2
  135. package/test-env/services/color/contrast.js +5 -1
  136. package/test-env/services/index.js +7 -0
  137. package/test-env/services/theme/context.js +4 -2
  138. package/test-env/services/theme/hooks.js +28 -0
  139. package/test-env/services/theme/index.js +12 -0
  140. package/test-env/services/theme/provider.js +23 -9
  141. package/src/components/badge/_badge.scss +0 -133
@@ -103,7 +103,7 @@ var EuiCard = function EuiCard(_ref) {
103
103
  var isDisabled = _isDisabled || !isHrefValid;
104
104
  var isClickable = !isDisabled && (onClick || href || selectable && !selectable.isDisabled);
105
105
  var euiThemeContext = (0, _services.useEuiTheme)();
106
- var styles = (0, _card.euiCardStyles)(euiThemeContext, paddingSize, display);
106
+ var styles = (0, _card.euiCardStyles)(euiThemeContext, paddingSize);
107
107
  var cardStyles = [styles.card.euiCard, // Text alignment should always be left when horizontal
108
108
  styles.card.aligned[layout === 'horizontal' ? 'left' : textAlign], styles.card.layout[layout], isDisabled && styles.card.disabled];
109
109
  var contentStyles = [styles.content.euiCard__content, styles.content.layout[layout]];
@@ -149,7 +149,7 @@ var EuiCard = function EuiCard(_ref) {
149
149
 
150
150
  if (image && layout === 'vertical') {
151
151
  if ( /*#__PURE__*/(0, _react.isValidElement)(image) || typeof image === 'string') {
152
- var imageStyles = [styles.euiCard__image];
152
+ var imageStyles = [styles.image.euiCard__image, display === 'transparent' && styles.image.transparent];
153
153
  imageNode = (0, _react2.jsx)("div", {
154
154
  className: "euiCard__image",
155
155
  css: imageStyles
@@ -57,7 +57,7 @@ var _ref5 = process.env.NODE_ENV === "production" ? {
57
57
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
58
58
  };
59
59
 
60
- var euiCardStyles = function euiCardStyles(euiThemeContext, paddingSize, color) {
60
+ var euiCardStyles = function euiCardStyles(euiThemeContext, paddingSize) {
61
61
  var euiTheme = euiThemeContext.euiTheme;
62
62
  var paddingAmount = (0, _global_styling.euiPaddingSize)(euiThemeContext, paddingSize);
63
63
  var spacing = (0, _global_styling.euiPaddingSize)(euiThemeContext, paddingKey);
@@ -94,7 +94,10 @@ var euiCardStyles = function euiCardStyles(euiThemeContext, paddingSize, color)
94
94
  },
95
95
  disabled: _ref2
96
96
  },
97
- euiCard__image: /*#__PURE__*/(0, _react.css)("position:relative;overflow:hidden;", (0, _global_styling.logicalCSS)('width', "calc(100% + (".concat(paddingAmount, " * 2))")), ";", (0, _global_styling.logicalCSS)('left', "-".concat(paddingAmount)), ";", (0, _global_styling.logicalCSS)('top', "-".concat(paddingAmount)), ";", (0, _global_styling.logicalCSS)('margin-bottom', "-".concat(paddingAmount)), ";", (0, _global_styling.logicalCSS)('border-top-left-radius', "calc(".concat(euiTheme.border.radius.medium, " - ").concat(euiTheme.border.width.thin, ")")), " ", _global_styling.logicals['border-top-right-radius'], ":calc(", euiTheme.border.radius.medium, " - ", euiTheme.border.width.thin, ");", color === 'transparent' ? "border-radius: ".concat(euiTheme.border.radius.medium, ";") : undefined, " img{", (0, _global_styling.logicalCSS)('width', '100%'), ";};label:euiCard__image;"),
97
+ image: {
98
+ euiCard__image: /*#__PURE__*/(0, _react.css)("position:relative;overflow:hidden;", (0, _global_styling.logicalCSS)('width', "calc(100% + (".concat(paddingAmount, " * 2))")), ";", (0, _global_styling.logicalCSS)('left', "-".concat(paddingAmount)), ";", (0, _global_styling.logicalCSS)('top', "-".concat(paddingAmount)), ";", (0, _global_styling.logicalCSS)('margin-bottom', "-".concat(paddingAmount)), ";", (0, _global_styling.logicalCSS)('border-top-left-radius', "calc(".concat(euiTheme.border.radius.medium, " - ").concat(euiTheme.border.width.thin, ")")), " ", _global_styling.logicals['border-top-right-radius'], ":calc(", euiTheme.border.radius.medium, " - ", euiTheme.border.width.thin, ");img{", (0, _global_styling.logicalCSS)('width', '100%'), ";};label:euiCard__image;"),
99
+ transparent: /*#__PURE__*/(0, _react.css)("border-radius:", euiTheme.border.radius.medium, ";;label:transparent;")
100
+ },
98
101
  icon: {
99
102
  euiCard__icon: /*#__PURE__*/(0, _react.css)(";label:euiCard__icon;"),
100
103
  withImage: /*#__PURE__*/(0, _react.css)("position:absolute;", (0, _global_styling.logicalCSS)('top', '50%'), ";", (0, _global_styling.logicalCSS)('left', '50%'), ";transform:translate(-50%, calc(-50% + -", paddingAmount, "))!important;;label:withImage;"),
@@ -43,9 +43,9 @@ var EuiPopoverTitle = function EuiPopoverTitle(_ref) {
43
43
  panelPadding = _useContext.paddingSize;
44
44
 
45
45
  var euiTheme = (0, _services.useEuiTheme)();
46
- var styles = (0, _popover_title.euiPopoverTitleStyles)(euiTheme, panelPadding);
46
+ var styles = (0, _popover_title.euiPopoverTitleStyles)(euiTheme);
47
47
  var paddingStyles = (0, _global_styling.useEuiPaddingCSS)();
48
- var cssStyles = [styles.euiPopoverTitle, // If a paddingSize is not directly provided, inherit from the EuiPopoverPanel
48
+ var cssStyles = [styles.euiPopoverTitle, styles.panelPaddingSizes[panelPadding], // If a paddingSize is not directly provided, inherit from the EuiPopoverPanel
49
49
  paddingStyles[paddingSize || panelPadding]];
50
50
  var classes = (0, _classnames.default)('euiPopoverTitle', className);
51
51
  return (0, _react2.jsx)("div", (0, _extends2.default)({
@@ -18,15 +18,27 @@ var _title = require("../title/title.styles");
18
18
  * in compliance with, at your election, the Elastic License 2.0 or the Server
19
19
  * Side Public License, v 1.
20
20
  */
21
- var euiPopoverTitleStyles = function euiPopoverTitleStyles(euiThemeContext, panelPadding) {
22
- var euiTheme = euiThemeContext.euiTheme; // If the popover's containing panel has padding applied,
23
- // ensure the title expands to cover that padding and
24
-
25
- var panelPaddingSize = (0, _global_styling.euiPaddingSize)(euiThemeContext, panelPadding);
21
+ var euiPopoverTitleStyles = function euiPopoverTitleStyles(euiThemeContext) {
22
+ var euiTheme = euiThemeContext.euiTheme;
26
23
  return {
27
24
  // Base
28
- euiPopoverTitle: /*#__PURE__*/(0, _react.css)((0, _title.euiTitle)(euiThemeContext, 'xxs'), ";", (0, _global_styling.logicalCSS)('border-bottom', euiTheme.border.thin), ";margin:-", panelPaddingSize, " -", panelPaddingSize, " ", panelPaddingSize, ";;label:euiPopoverTitle;")
25
+ euiPopoverTitle: /*#__PURE__*/(0, _react.css)((0, _title.euiTitle)(euiThemeContext, 'xxs'), ";", (0, _global_styling.logicalCSS)('border-bottom', euiTheme.border.thin), ";;label:euiPopoverTitle;"),
26
+ // If the popover's containing panel has padding applied,
27
+ // ensure the title expands to cover that padding via negative margins
28
+ panelPaddingSizes: {
29
+ none: /*#__PURE__*/(0, _react.css)(";label:none;"),
30
+ xs: /*#__PURE__*/(0, _react.css)(getPaddingOffset(euiThemeContext, 'xs'), ";;label:xs;"),
31
+ s: /*#__PURE__*/(0, _react.css)(getPaddingOffset(euiThemeContext, 's'), ";;label:s;"),
32
+ m: /*#__PURE__*/(0, _react.css)(getPaddingOffset(euiThemeContext, 'm'), ";;label:m;"),
33
+ l: /*#__PURE__*/(0, _react.css)(getPaddingOffset(euiThemeContext, 'l'), ";;label:l;"),
34
+ xl: /*#__PURE__*/(0, _react.css)(getPaddingOffset(euiThemeContext, 'xl'), ";;label:xl;")
35
+ }
29
36
  };
30
37
  };
31
38
 
32
- exports.euiPopoverTitleStyles = euiPopoverTitleStyles;
39
+ exports.euiPopoverTitleStyles = euiPopoverTitleStyles;
40
+
41
+ var getPaddingOffset = function getPaddingOffset(euiThemeContext, size) {
42
+ var panelPaddingSize = (0, _global_styling.euiPaddingSize)(euiThemeContext, size);
43
+ return "margin: -".concat(panelPaddingSize, " -").concat(panelPaddingSize, " ").concat(panelPaddingSize, ";");
44
+ };
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.CustomComponentFilter = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _react2 = require("@emotion/react");
13
+
14
+ /*
15
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
16
+ * or more contributor license agreements. Licensed under the Elastic License
17
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
18
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
19
+ * Side Public License, v 1.
20
+ */
21
+ var CustomComponentFilter = function CustomComponentFilter(props) {
22
+ var CustomComponent = props.config.component;
23
+ return (0, _react2.jsx)(CustomComponent, {
24
+ query: props.query,
25
+ onChange: props.onChange
26
+ });
27
+ };
28
+
29
+ exports.CustomComponentFilter = CustomComponentFilter;
@@ -19,6 +19,8 @@ var _field_value_toggle_filter = require("./field_value_toggle_filter");
19
19
 
20
20
  var _field_value_toggle_group_filter = require("./field_value_toggle_group_filter");
21
21
 
22
+ var _custom_component_filter = require("./custom_component_filter");
23
+
22
24
  var _react2 = require("@emotion/react");
23
25
 
24
26
  /*
@@ -60,6 +62,11 @@ var createFilter = function createFilter(index, config, query, onChange) {
60
62
  config: config
61
63
  }));
62
64
 
65
+ case 'custom_component':
66
+ return (0, _react2.jsx)(_custom_component_filter.CustomComponentFilter, (0, _extends2.default)({}, props, {
67
+ config: config
68
+ }));
69
+
63
70
  default:
64
71
  // @ts-ignore TS knows that we've checked `config.type` exhaustively
65
72
  throw new Error("Unknown search filter type [".concat(config.type, "]"));
@@ -533,6 +533,18 @@ var _AST = /*#__PURE__*/function () {
533
533
  return !Is.isInstance(clause) || clause.flag !== flag;
534
534
  }));
535
535
  }
536
+ }, {
537
+ key: "removeIsClauses",
538
+ value: function removeIsClauses() {
539
+ return new _AST(this._clauses.filter(function (clause) {
540
+ return !Is.isInstance(clause);
541
+ }));
542
+ }
543
+ }, {
544
+ key: "removeAllClauses",
545
+ value: function removeAllClauses() {
546
+ return new _AST();
547
+ }
536
548
  }, {
537
549
  key: "getGroupClauses",
538
550
  value: function getGroupClauses() {
@@ -7,19 +7,19 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.astToEsQueryDsl = exports._termValuesToQuery = exports._isFlagToQuery = exports._fieldValuesToQuery = void 0;
9
9
 
10
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
-
12
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
11
 
14
- var _date_format = require("./date_format");
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
15
13
 
16
- var _date_value = require("./date_value");
14
+ var _predicate = require("../../../services/predicate");
15
+
16
+ var _common = require("../../common");
17
17
 
18
18
  var _ast = require("./ast");
19
19
 
20
- var _predicate = require("../../../services/predicate");
20
+ var _date_format = require("./date_format");
21
21
 
22
- var _common = require("../../common");
22
+ var _date_value = require("./date_value");
23
23
 
24
24
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
25
25
 
@@ -118,12 +118,17 @@ var _fieldValuesToQuery = function _fieldValuesToQuery(field, operations, andOr)
118
118
  }
119
119
  });
120
120
 
121
- if (_terms.length > 0) {
121
+ if (_terms.length > 1) {
122
+ queries.push({
123
+ bool: (0, _defineProperty2.default)({}, andOr === 'and' ? 'must' : 'should', (0, _toConsumableArray2.default)(_terms.map(function (value) {
124
+ return {
125
+ match: (0, _defineProperty2.default)({}, field, value)
126
+ };
127
+ })))
128
+ });
129
+ } else if (_terms.length === 1) {
122
130
  queries.push({
123
- match: (0, _defineProperty2.default)({}, field, {
124
- query: _terms.join(' '),
125
- operator: andOr
126
- })
131
+ match: (0, _defineProperty2.default)({}, field, _terms[0])
127
132
  });
128
133
  }
129
134
 
@@ -52,6 +52,11 @@ var Query = /*#__PURE__*/function () {
52
52
  }
53
53
 
54
54
  (0, _createClass2.default)(Query, [{
55
+ key: "hasClauses",
56
+ value: function hasClauses() {
57
+ return this.ast.clauses.length > 0;
58
+ }
59
+ }, {
55
60
  key: "hasSimpleFieldClause",
56
61
  value: function hasSimpleFieldClause(field, value) {
57
62
  return this.ast.hasSimpleFieldClause(field, value);
@@ -111,6 +116,12 @@ var Query = /*#__PURE__*/function () {
111
116
  var ast = this.ast.removeOrFieldClauses(field);
112
117
  return new Query(ast, this.syntax);
113
118
  }
119
+ }, {
120
+ key: "removeAllClauses",
121
+ value: function removeAllClauses() {
122
+ var ast = this.ast.removeAllClauses();
123
+ return new Query(ast, this.syntax);
124
+ }
114
125
  }, {
115
126
  key: "hasIsClause",
116
127
  value: function hasIsClause(flag) {
@@ -139,6 +150,12 @@ var Query = /*#__PURE__*/function () {
139
150
  var ast = this.ast.removeIsClause(flag);
140
151
  return new Query(ast, this.syntax);
141
152
  }
153
+ }, {
154
+ key: "removeIsClauses",
155
+ value: function removeIsClauses() {
156
+ var ast = this.ast.removeIsClauses();
157
+ return new Query(ast, this.syntax);
158
+ }
142
159
  /**
143
160
  * Executes this query over the given iterable item and returns
144
161
  * an new array of all items that matched this query. Options:
@@ -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.makeHighContrastColor = exports.makeDisabledContrastColor = void 0;
8
+ exports.wcagContrastMin = exports.makeHighContrastColor = exports.makeDisabledContrastColor = void 0;
9
9
 
10
10
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
11
11
 
@@ -22,6 +22,7 @@ var _utils = require("../theme/utils");
22
22
  * in compliance with, at your election, the Elastic License 2.0 or the Server
23
23
  * Side Public License, v 1.
24
24
  */
25
+ var wcagContrastMin = 4.5; // WCAG AA minimum contrast ratio for normal (non-large) text
25
26
 
26
27
  /**
27
28
  * Creates a new color that meets or exceeds WCAG level AA
@@ -30,6 +31,9 @@ var _utils = require("../theme/utils");
30
31
  * *
31
32
  * @param themeOrBackground - Color to use as the contrast basis or just pass EuiTheme
32
33
  */
34
+
35
+ exports.wcagContrastMin = wcagContrastMin;
36
+
33
37
  var makeHighContrastColor = function makeHighContrastColor(_foreground) {
34
38
  var ratio = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 4.85;
35
39
  return function (themeOrBackground) {
@@ -57,6 +57,7 @@ var _exportNames = {
57
57
  lightness: true,
58
58
  makeHighContrastColor: true,
59
59
  makeDisabledContrastColor: true,
60
+ wcagContrastMin: true,
60
61
  useColorPickerState: true,
61
62
  useColorStopsState: true,
62
63
  copyToClipboard: true,
@@ -569,6 +570,12 @@ Object.defineProperty(exports, "useIsWithinMinBreakpoint", {
569
570
  return _breakpoint.useIsWithinMinBreakpoint;
570
571
  }
571
572
  });
573
+ Object.defineProperty(exports, "wcagContrastMin", {
574
+ enumerable: true,
575
+ get: function get() {
576
+ return _color.wcagContrastMin;
577
+ }
578
+ });
572
579
 
573
580
  var keys = _interopRequireWildcard(require("./keys"));
574
581
 
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.EuiThemeContext = exports.EuiSystemContext = exports.EuiModificationsContext = exports.EuiColorModeContext = void 0;
6
+ exports.defaultComputedTheme = exports.EuiThemeContext = exports.EuiSystemContext = exports.EuiModificationsContext = exports.EuiColorModeContext = void 0;
7
7
 
8
8
  var _react = require("react");
9
9
 
@@ -24,5 +24,7 @@ var EuiModificationsContext = /*#__PURE__*/(0, _react.createContext)({});
24
24
  exports.EuiModificationsContext = EuiModificationsContext;
25
25
  var EuiColorModeContext = /*#__PURE__*/(0, _react.createContext)(_utils.DEFAULT_COLOR_MODE);
26
26
  exports.EuiColorModeContext = EuiColorModeContext;
27
- var EuiThemeContext = /*#__PURE__*/(0, _react.createContext)((0, _utils.getComputed)(_theme.EuiThemeAmsterdam, {}, _utils.DEFAULT_COLOR_MODE));
27
+ var defaultComputedTheme = (0, _utils.getComputed)(_theme.EuiThemeAmsterdam, {}, _utils.DEFAULT_COLOR_MODE);
28
+ exports.defaultComputedTheme = defaultComputedTheme;
29
+ var EuiThemeContext = /*#__PURE__*/(0, _react.createContext)(defaultComputedTheme);
28
30
  exports.EuiThemeContext = EuiThemeContext;
@@ -15,6 +15,8 @@ var _react = _interopRequireWildcard(require("react"));
15
15
 
16
16
  var _context = require("./context");
17
17
 
18
+ var _provider = require("./provider");
19
+
18
20
  var _react2 = require("@emotion/react");
19
21
 
20
22
  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); }
@@ -28,10 +30,36 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
28
30
  * in compliance with, at your election, the Elastic License 2.0 or the Server
29
31
  * Side Public License, v 1.
30
32
  */
33
+ var providerMessage = "`EuiProvider` is missing which can result in negative effects.\nWrap your component in `EuiProvider`: https://ela.st/euiprovider.";
34
+
31
35
  var useEuiTheme = function useEuiTheme() {
32
36
  var theme = (0, _react.useContext)(_context.EuiThemeContext);
33
37
  var colorMode = (0, _react.useContext)(_context.EuiColorModeContext);
34
38
  var modifications = (0, _react.useContext)(_context.EuiModificationsContext);
39
+
40
+ if (process.env.NODE_ENV !== 'production') {
41
+ var isFallback = theme === _context.defaultComputedTheme;
42
+ var warningLevel = (0, _provider.getEuiDevProviderWarning)();
43
+
44
+ if (isFallback && typeof warningLevel !== 'undefined') {
45
+ switch (warningLevel) {
46
+ case 'log':
47
+ console.log(providerMessage);
48
+ break;
49
+
50
+ case 'warn':
51
+ console.warn(providerMessage);
52
+ break;
53
+
54
+ case 'error':
55
+ throw new Error(providerMessage);
56
+
57
+ default:
58
+ break;
59
+ }
60
+ }
61
+ }
62
+
35
63
  var assembledTheme = (0, _react.useMemo)(function () {
36
64
  return {
37
65
  euiTheme: theme,
@@ -69,6 +69,12 @@ Object.defineProperty(exports, "getComputed", {
69
69
  return _utils.getComputed;
70
70
  }
71
71
  });
72
+ Object.defineProperty(exports, "getEuiDevProviderWarning", {
73
+ enumerable: true,
74
+ get: function get() {
75
+ return _provider.getEuiDevProviderWarning;
76
+ }
77
+ });
72
78
  Object.defineProperty(exports, "getOn", {
73
79
  enumerable: true,
74
80
  get: function get() {
@@ -87,6 +93,12 @@ Object.defineProperty(exports, "mergeDeep", {
87
93
  return _utils.mergeDeep;
88
94
  }
89
95
  });
96
+ Object.defineProperty(exports, "setEuiDevProviderWarning", {
97
+ enumerable: true,
98
+ get: function get() {
99
+ return _provider.setEuiDevProviderWarning;
100
+ }
101
+ });
90
102
  Object.defineProperty(exports, "setOn", {
91
103
  enumerable: true,
92
104
  get: function get() {
@@ -7,7 +7,9 @@ var _typeof = require("@babel/runtime/helpers/typeof");
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
- exports.EuiThemeProvider = void 0;
10
+ exports.setEuiDevProviderWarning = exports.getEuiDevProviderWarning = exports.EuiThemeProvider = void 0;
11
+
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
13
 
12
14
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
15
 
@@ -25,13 +27,24 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
25
27
 
26
28
  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; }
27
29
 
28
- /*
29
- * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
30
- * or more contributor license agreements. Licensed under the Elastic License
31
- * 2.0 and the Server Side Public License, v 1; you may not use this file except
32
- * in compliance with, at your election, the Elastic License 2.0 or the Server
33
- * Side Public License, v 1.
34
- */
30
+ 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; }
31
+
32
+ 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; }
33
+
34
+ var providerWarning = undefined;
35
+
36
+ var setEuiDevProviderWarning = function setEuiDevProviderWarning(level) {
37
+ return providerWarning = level;
38
+ };
39
+
40
+ exports.setEuiDevProviderWarning = setEuiDevProviderWarning;
41
+
42
+ var getEuiDevProviderWarning = function getEuiDevProviderWarning() {
43
+ return providerWarning;
44
+ };
45
+
46
+ exports.getEuiDevProviderWarning = getEuiDevProviderWarning;
47
+
35
48
  var EuiThemeProvider = function EuiThemeProvider(_ref) {
36
49
  var _system = _ref.theme,
37
50
  _colorMode = _ref.colorMode,
@@ -64,7 +77,8 @@ var EuiThemeProvider = function EuiThemeProvider(_ref) {
64
77
  var prevColorMode = (0, _react.useRef)(colorMode);
65
78
  var isParentTheme = (0, _react.useRef)(prevSystemKey.current === parentSystem.key && colorMode === parentColorMode && (0, _isEqual.default)(parentModifications, modifications));
66
79
 
67
- var _useState7 = (0, _react.useState)(isParentTheme.current && Object.keys(parentTheme).length ? parentTheme : (0, _utils.getComputed)(system, (0, _utils.buildTheme)(modifications, "_".concat(system.key)), colorMode)),
80
+ var _useState7 = (0, _react.useState)(isParentTheme.current && Object.keys(parentTheme).length ? _objectSpread({}, parentTheme) // Intentionally create a new object to break referential equality
81
+ : (0, _utils.getComputed)(system, (0, _utils.buildTheme)(modifications, "_".concat(system.key)), colorMode)),
68
82
  _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
69
83
  theme = _useState8[0],
70
84
  setTheme = _useState8[1];
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@elastic/eui",
3
3
  "description": "Elastic UI Component Library",
4
- "version": "67.0.0",
4
+ "version": "67.1.0",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "main": "lib",
7
7
  "module": "es",
@@ -112,10 +112,10 @@
112
112
  "@babel/preset-env": "^7.11.0",
113
113
  "@babel/preset-react": "^7.10.4",
114
114
  "@babel/preset-typescript": "^7.16.7",
115
- "@cypress/code-coverage": "^3.9.12",
115
+ "@cypress/code-coverage": "^3.10.0",
116
116
  "@cypress/react": "^5.10.3",
117
117
  "@cypress/webpack-dev-server": "^1.7.0",
118
- "@elastic/charts": "^48.0.0",
118
+ "@elastic/charts": "^48.0.1",
119
119
  "@elastic/datemath": "^5.0.3",
120
120
  "@elastic/eslint-config-kibana": "^0.15.0",
121
121
  "@emotion/babel-preset-css-prop": "^11.2.0",
@@ -168,7 +168,7 @@
168
168
  "cross-env": "^7.0.2",
169
169
  "css-loader": "^4.2.2",
170
170
  "cssnano": "^4.1.10",
171
- "cypress": "^9.5.4",
171
+ "cypress": "^10.6.0",
172
172
  "cypress-axe": "^0.14.0",
173
173
  "cypress-plugin-tab": "^1.0.5",
174
174
  "cypress-real-events": "^1.7.0",
@@ -251,8 +251,8 @@
251
251
  },
252
252
  "peerDependencies": {
253
253
  "@elastic/datemath": "^5.0.2",
254
- "@emotion/react": "11.x",
255
254
  "@emotion/cache": "11.x",
255
+ "@emotion/react": "11.x",
256
256
  "@types/react": "^16.9 || ^17.0",
257
257
  "@types/react-dom": "^16.9 || ^17.0",
258
258
  "moment": "^2.13.0",
@@ -1,4 +1,3 @@
1
- @import 'badge';
2
1
  @import 'badge_group/index';
3
2
  @import 'beta_badge/index';
4
3
  @import 'notification_badge/index';