@elastic/eui 109.2.0 → 110.0.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 (97) hide show
  1. package/es/components/basic_table/in_memory_table.js +87 -61
  2. package/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +5 -1
  3. package/es/components/date_picker/super_date_picker/date_popover/relative_tab.js +5 -1
  4. package/es/components/date_picker/super_date_picker/date_popover/timezone_display.js +3 -1
  5. package/es/components/date_picker/super_date_picker/quick_select_popover/index.js +1 -0
  6. package/es/components/date_picker/super_date_picker/time_window_buttons.js +1 -1
  7. package/es/components/filter_group/filter_group.a11y.js +1 -1
  8. package/es/components/header/header_logo/header_logo.js +6 -1
  9. package/es/components/header/header_logo/header_logo.styles.js +1 -1
  10. package/es/components/icon/icon.styles.js +4 -4
  11. package/es/components/page/page.js +11 -3
  12. package/es/components/page/page.styles.js +1 -2
  13. package/es/components/page/page_header/page_header.js +11 -3
  14. package/es/components/page_template/outer/page_outer.js +2 -3
  15. package/es/components/page_template/outer/page_outer.styles.js +29 -35
  16. package/es/components/page_template/page_template.js +8 -2
  17. package/es/components/search_bar/search_bar.js +10 -4
  18. package/es/components/selectable/selectable.js +7 -2
  19. package/es/services/string/to_initials.js +26 -4
  20. package/eui.d.ts +41 -18
  21. package/lib/components/basic_table/in_memory_table.js +87 -61
  22. package/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +5 -1
  23. package/lib/components/date_picker/super_date_picker/date_popover/relative_tab.js +5 -1
  24. package/lib/components/date_picker/super_date_picker/date_popover/timezone_display.js +3 -1
  25. package/lib/components/date_picker/super_date_picker/quick_select_popover/index.js +7 -0
  26. package/lib/components/date_picker/super_date_picker/time_window_buttons.js +1 -1
  27. package/lib/components/filter_group/filter_group.a11y.js +1 -1
  28. package/lib/components/header/header_logo/header_logo.js +6 -1
  29. package/lib/components/header/header_logo/header_logo.styles.js +1 -1
  30. package/lib/components/icon/icon.styles.js +4 -4
  31. package/lib/components/page/page.js +10 -2
  32. package/lib/components/page/page.styles.js +1 -2
  33. package/lib/components/page/page_header/page_header.js +10 -2
  34. package/lib/components/page_template/outer/page_outer.js +1 -2
  35. package/lib/components/page_template/outer/page_outer.styles.js +29 -35
  36. package/lib/components/page_template/page_template.js +8 -2
  37. package/lib/components/search_bar/search_bar.js +9 -4
  38. package/lib/components/selectable/selectable.js +7 -2
  39. package/lib/services/string/to_initials.js +26 -4
  40. package/optimize/es/components/basic_table/in_memory_table.js +71 -46
  41. package/optimize/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +5 -1
  42. package/optimize/es/components/date_picker/super_date_picker/date_popover/relative_tab.js +5 -1
  43. package/optimize/es/components/date_picker/super_date_picker/date_popover/timezone_display.js +3 -1
  44. package/optimize/es/components/date_picker/super_date_picker/quick_select_popover/index.js +1 -0
  45. package/optimize/es/components/date_picker/super_date_picker/time_window_buttons.js +1 -1
  46. package/optimize/es/components/filter_group/filter_group.a11y.js +1 -1
  47. package/optimize/es/components/header/header_logo/header_logo.js +6 -1
  48. package/optimize/es/components/header/header_logo/header_logo.styles.js +1 -1
  49. package/optimize/es/components/icon/icon.styles.js +4 -4
  50. package/optimize/es/components/page/page.js +6 -3
  51. package/optimize/es/components/page/page.styles.js +1 -2
  52. package/optimize/es/components/page/page_header/page_header.js +6 -3
  53. package/optimize/es/components/page_template/outer/page_outer.js +2 -3
  54. package/optimize/es/components/page_template/outer/page_outer.styles.js +29 -35
  55. package/optimize/es/components/page_template/page_template.js +2 -1
  56. package/optimize/es/components/search_bar/search_bar.js +6 -0
  57. package/optimize/es/components/selectable/selectable.js +7 -2
  58. package/optimize/es/services/string/to_initials.js +26 -4
  59. package/optimize/lib/components/basic_table/in_memory_table.js +71 -46
  60. package/optimize/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +5 -1
  61. package/optimize/lib/components/date_picker/super_date_picker/date_popover/relative_tab.js +5 -1
  62. package/optimize/lib/components/date_picker/super_date_picker/date_popover/timezone_display.js +3 -1
  63. package/optimize/lib/components/date_picker/super_date_picker/quick_select_popover/index.js +7 -0
  64. package/optimize/lib/components/date_picker/super_date_picker/time_window_buttons.js +1 -1
  65. package/optimize/lib/components/filter_group/filter_group.a11y.js +1 -1
  66. package/optimize/lib/components/header/header_logo/header_logo.js +6 -1
  67. package/optimize/lib/components/header/header_logo/header_logo.styles.js +1 -1
  68. package/optimize/lib/components/icon/icon.styles.js +4 -4
  69. package/optimize/lib/components/page/page.js +5 -2
  70. package/optimize/lib/components/page/page.styles.js +1 -2
  71. package/optimize/lib/components/page/page_header/page_header.js +5 -2
  72. package/optimize/lib/components/page_template/outer/page_outer.js +1 -2
  73. package/optimize/lib/components/page_template/outer/page_outer.styles.js +29 -35
  74. package/optimize/lib/components/page_template/page_template.js +2 -1
  75. package/optimize/lib/components/search_bar/search_bar.js +5 -0
  76. package/optimize/lib/components/selectable/selectable.js +7 -2
  77. package/optimize/lib/services/string/to_initials.js +26 -4
  78. package/package.json +1 -1
  79. package/test-env/components/basic_table/in_memory_table.js +87 -61
  80. package/test-env/components/date_picker/super_date_picker/date_popover/absolute_tab.js +5 -1
  81. package/test-env/components/date_picker/super_date_picker/date_popover/relative_tab.js +5 -1
  82. package/test-env/components/date_picker/super_date_picker/date_popover/timezone_display.js +3 -1
  83. package/test-env/components/date_picker/super_date_picker/quick_select_popover/index.js +7 -0
  84. package/test-env/components/date_picker/super_date_picker/time_window_buttons.js +1 -1
  85. package/test-env/components/filter_group/filter_group.a11y.js +1 -1
  86. package/test-env/components/header/header_logo/header_logo.js +6 -1
  87. package/test-env/components/header/header_logo/header_logo.styles.js +1 -1
  88. package/test-env/components/icon/icon.styles.js +4 -4
  89. package/test-env/components/page/page.js +10 -2
  90. package/test-env/components/page/page.styles.js +1 -2
  91. package/test-env/components/page/page_header/page_header.js +10 -2
  92. package/test-env/components/page_template/outer/page_outer.js +1 -2
  93. package/test-env/components/page_template/outer/page_outer.styles.js +29 -35
  94. package/test-env/components/page_template/page_template.js +8 -2
  95. package/test-env/components/search_bar/search_bar.js +9 -4
  96. package/test-env/components/selectable/selectable.js +7 -2
  97. package/test-env/services/string/to_initials.js +26 -4
@@ -13,39 +13,33 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
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
- var _ref = process.env.NODE_ENV === "production" ? {
17
- name: "15mvjmo-row",
18
- styles: "flex-direction:row;label:row;"
19
- } : {
20
- name: "15mvjmo-row",
21
- styles: "flex-direction:row;label:row;",
22
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
23
- };
24
- var _ref2 = process.env.NODE_ENV === "production" ? {
25
- name: "ll8kmq-column",
26
- styles: "flex-direction:column;label:column;"
27
- } : {
28
- name: "ll8kmq-column",
29
- styles: "flex-direction:column;label:column;",
30
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
31
- };
32
- var _ref3 = process.env.NODE_ENV === "production" ? {
33
- name: "122lw0e-grow",
34
- styles: "flex-grow:1;label:grow;"
35
- } : {
36
- name: "122lw0e-grow",
37
- styles: "flex-grow:1;label:grow;",
38
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
39
- };
40
- var euiPageOuterStyles = exports.euiPageOuterStyles = function euiPageOuterStyles(_ref4) {
41
- var euiTheme = _ref4.euiTheme;
42
- return {
43
- euiPageOuter: /*#__PURE__*/(0, _react.css)("display:flex;background-color:", euiTheme.colors.body, ";flex-shrink:0;", (0, _global_styling.logicalCSS)('max-width', '100%' // Ensures Firefox doesn't expand width beyond bounds
44
- ), ";;label:euiPageOuter;"),
45
- // Grow
46
- grow: _ref3,
47
- // Direction
48
- column: _ref2,
49
- row: _ref
50
- };
16
+ var euiPageOuterStyles = exports.euiPageOuterStyles = {
17
+ euiPageOuter: /*#__PURE__*/(0, _react.css)("display:flex;flex-shrink:0;", (0, _global_styling.logicalCSS)('max-width', '100%' // Ensures Firefox doesn't expand width beyond bounds
18
+ ), ";;label:euiPageOuter;"),
19
+ // Grow
20
+ grow: process.env.NODE_ENV === "production" ? {
21
+ name: "122lw0e-grow",
22
+ styles: "flex-grow:1;label:grow;"
23
+ } : {
24
+ name: "122lw0e-grow",
25
+ styles: "flex-grow:1;label:grow;",
26
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
27
+ },
28
+ // Direction
29
+ column: process.env.NODE_ENV === "production" ? {
30
+ name: "ll8kmq-column",
31
+ styles: "flex-direction:column;label:column;"
32
+ } : {
33
+ name: "ll8kmq-column",
34
+ styles: "flex-direction:column;label:column;",
35
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
36
+ },
37
+ row: process.env.NODE_ENV === "production" ? {
38
+ name: "15mvjmo-row",
39
+ styles: "flex-direction:row;label:row;"
40
+ } : {
41
+ name: "15mvjmo-row",
42
+ styles: "flex-direction:row;label:row;",
43
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
44
+ }
51
45
  };
@@ -116,7 +116,8 @@ var _EuiPageTemplate = exports._EuiPageTemplate = function _EuiPageTemplate(_ref
116
116
  header: {
117
117
  restrictWidth: restrictWidth,
118
118
  paddingSize: paddingSize,
119
- bottomBorder: headerBottomBorder
119
+ bottomBorder: headerBottomBorder,
120
+ color: panelled === false ? 'transparent' : 'plain'
120
121
  },
121
122
  section: {
122
123
  restrictWidth: restrictWidth,
@@ -173,7 +174,7 @@ _EuiPageTemplate.propTypes = {
173
174
  "data-test-subj": _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.string]),
174
175
  css: _propTypes.default.oneOfType([_propTypes.default.any, _propTypes.default.any]),
175
176
  /**
176
- * Adds a white background and shadow to define the area.
177
+ * Adds a background and shadow to define the area.
177
178
  */
178
179
  panelled: _propTypes.default.bool,
179
180
  /**
@@ -321,6 +322,11 @@ _EuiPageHeader.propTypes = {
321
322
  * Adjust the overall padding.
322
323
  */
323
324
  paddingSize: _propTypes.default.any,
325
+ /**
326
+ * Define the header background color
327
+ * @default 'transparent'
328
+ */
329
+ color: _propTypes.default.oneOf(["plain", "transparent"]),
324
330
  className: _propTypes.default.string,
325
331
  "aria-label": _propTypes.default.string,
326
332
  "data-test-subj": _propTypes.default.string,
@@ -55,6 +55,11 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
55
55
  * in compliance with, at your election, the Elastic License 2.0 or the Server
56
56
  * Side Public License, v 1.
57
57
  */
58
+ /**
59
+ * When `searchFormat` is 'text', `query` is null and the search is performed
60
+ * on the `queryText` directly without EQL parsing
61
+ */
62
+
58
63
  var parseQuery = function parseQuery(query, props) {
59
64
  var _props$box, _props$box2;
60
65
  var schema = undefined;
@@ -260,15 +265,15 @@ _defineProperty(EuiSearchBar, "Query", _query2.Query);
260
265
  EuiSearchBar.propTypes = {
261
266
  onChange: _propTypes.default.func,
262
267
  /**
263
- The initial query the bar will hold when first mounted
268
+ * The initial query the bar will hold when first mounted
264
269
  */
265
270
  defaultQuery: _propTypes.default.oneOfType([_propTypes.default.any.isRequired, _propTypes.default.string.isRequired]),
266
271
  /**
267
- If you wish to use the search bar as a controlled component, continuously pass the query via this prop.
272
+ * If you wish to use the search bar as a controlled component, continuously pass the query via this prop.
268
273
  */
269
274
  query: _propTypes.default.oneOfType([_propTypes.default.any.isRequired, _propTypes.default.string.isRequired]),
270
275
  /**
271
- Configures the search box. Set `placeholder` to change the placeholder text in the box and `incremental` to support incremental (as you type) search.
276
+ * Configures the search box. Set `placeholder` to change the placeholder text in the box and `incremental` to support incremental (as you type) search.
272
277
  */
273
278
  box: _propTypes.default.shape({
274
279
  name: _propTypes.default.string,
@@ -328,7 +333,7 @@ EuiSearchBar.propTypes = {
328
333
  }).isRequired, _propTypes.default.bool.isRequired])
329
334
  }),
330
335
  /**
331
- An array of search filters. See {@link SearchFilterConfig}.
336
+ * An array of search filters. See {@link SearchFilterConfig}.
332
337
  */
333
338
  filters: _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.shape({
334
339
  type: _propTypes.default.oneOf(["is"]).isRequired,
@@ -96,6 +96,12 @@ var EuiSelectable = exports.EuiSelectable = /*#__PURE__*/function (_Component) {
96
96
  _this.preventOnFocus = false;
97
97
  return;
98
98
  }
99
+ if (event && _this.props.searchable && event.target === _this.inputRef) {
100
+ _this.setState({
101
+ isFocused: true
102
+ });
103
+ return;
104
+ }
99
105
  if (!_this.state.visibleOptions.length || _this.state.activeOptionIndex != null) {
100
106
  return;
101
107
  }
@@ -471,8 +477,7 @@ var EuiSelectable = exports.EuiSelectable = /*#__PURE__*/function (_Component) {
471
477
  onChange: _this2.onSearchChange,
472
478
  listId: _this2.optionsListRef.current ? _this2.listId : undefined // Only pass the listId if it exists on the page
473
479
  ,
474
- "aria-activedescendant": _this2.makeOptionId(activeOptionIndex) // the current faux-focused option
475
- ,
480
+ "aria-activedescendant": activeOptionIndex != null ? _this2.makeOptionId(activeOptionIndex) : undefined,
476
481
  placeholder: placeholderName,
477
482
  isPreFiltered: !!isPreFiltered,
478
483
  optionMatcher: optionMatcher,
@@ -13,6 +13,8 @@ exports.toInitials = toInitials;
13
13
  * Side Public License, v 1.
14
14
  */
15
15
 
16
+ var MAX_INITIALS = exports.MAX_INITIALS = 2;
17
+
16
18
  /**
17
19
  * This function calculates the initials/acronym for a given name.
18
20
  * It defaults to only 2 characters and will take the first character (of each word).
@@ -24,11 +26,20 @@ exports.toInitials = toInitials;
24
26
  * @param {string} name The full name of the item to turn into initials
25
27
  * @param {number} initialsLength (Optional) How many characters to show (max 2 allowed)
26
28
  * @param {string} initials (Optional) Custom initials (max 2 characters)
27
- * @returns {string} True if the color is dark, false otherwise.
28
29
  */
29
-
30
- var MAX_INITIALS = exports.MAX_INITIALS = 2;
31
30
  function toInitials(name, initialsLength, initials) {
31
+ // If `initials` provided, check if it's a single emoji
32
+ // in order to support complex, "multi-character" ones
33
+ if (initials && typeof Intl !== 'undefined' && 'Segmenter' in Intl) {
34
+ var segmenter = new Intl.Segmenter('en', {
35
+ granularity: 'grapheme'
36
+ });
37
+ var segments = Array.from(segmenter.segment(initials));
38
+ if (segments.length === 1 && isEmoji(segments[0].segment)) {
39
+ return segments[0].segment;
40
+ }
41
+ }
42
+
32
43
  // Calculate the number of initials to show, maxing out at MAX_INITIALS
33
44
  var calculatedInitialsLength = initials ? initials.split('').length : name.split(' ').length;
34
45
  calculatedInitialsLength = calculatedInitialsLength > MAX_INITIALS ? MAX_INITIALS : calculatedInitialsLength;
@@ -51,5 +62,16 @@ function toInitials(name, initialsLength, initials) {
51
62
  calculatedInitials = name.substring(0, calculatedInitialsLength);
52
63
  }
53
64
  }
54
- return calculatedInitials;
65
+ return calculatedInitials || '';
66
+ }
67
+ function isEmoji(str) {
68
+ /**
69
+ * The \p escape sequence allows matching a character based on its Unicode properties
70
+ * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Regular_expressions/Unicode_character_class_escape
71
+ * @see https://www.unicode.org/Public/UCD/latest/ucd/emoji/emoji-data.txt
72
+ * @see https://www.unicode.org/reports/tr51/#Definitions
73
+ * @see https://util.unicode.org/UnicodeJsps/character.jsp?a=1F440&B1=Show
74
+ */
75
+ var emojiRegex = /(?:[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u2388\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2605\u2607-\u2612\u2614-\u2685\u2690-\u2705\u2708-\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763-\u2767\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC00-\uDCFF\uDD0D-\uDD0F\uDD2F\uDD6C-\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDAD-\uDDFF\uDE01-\uDE0F\uDE1A\uDE2F\uDE32-\uDE3A\uDE3C-\uDE3F\uDE49-\uDFFF]|\uD83D[\uDC00-\uDD3D\uDD46-\uDE4F\uDE80-\uDEFF\uDF74-\uDF7F\uDFD5-\uDFFF]|\uD83E[\uDC0C-\uDC0F\uDC48-\uDC4F\uDC5A-\uDC5F\uDC88-\uDC8F\uDCAE-\uDCFF\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDEFF]|\uD83F[\uDC00-\uDFFD])/;
76
+ return emojiRegex.test(str);
55
77
  }
@@ -8,7 +8,7 @@ import _inherits from "@babel/runtime/helpers/inherits";
8
8
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
9
  var _excluded = ["schema"],
10
10
  _excluded2 = ["onChange"],
11
- _excluded3 = ["columns", "loading", "message", "noItemsMessage", "error", "selection", "compressed", "pagination", "sorting", "itemIdToExpandedRowMap", "itemId", "rowProps", "cellProps", "tableLayout", "items", "search", "searchFormat", "onTableChange", "executeQueryOptions", "allowNeutralSort", "childrenBetween"];
11
+ _excluded3 = ["columns", "loading", "noItemsMessage", "error", "selection", "compressed", "pagination", "sorting", "itemIdToExpandedRowMap", "itemId", "rowProps", "cellProps", "tableLayout", "items", "search", "searchFormat", "onTableChange", "executeQueryOptions", "allowNeutralSort", "childrenBetween"];
12
12
  function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
13
13
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
14
14
  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; }
@@ -34,17 +34,27 @@ import { jsx as ___EmotionJSX } from "@emotion/react";
34
34
  function isEuiSearchBarProps(x) {
35
35
  return typeof x !== 'boolean';
36
36
  }
37
- var getQueryFromSearch = function getQueryFromSearch(search, defaultQuery) {
38
- var query;
37
+ /**
38
+ * Extracts and formats a query from search props based on the search format
39
+ * @param search - The search configuration
40
+ * @param defaultQuery - Whether to use the defaultQuery property as fallback
41
+ * @param searchFormat - The search format: 'eql' for parsed queries, 'text' for plain text
42
+ * @returns Formatted query string or Query object
43
+ */
44
+ var getQueryFromSearch = function getQueryFromSearch(search, defaultQuery, searchFormat) {
45
+ var _ref, _searchProps$defaultQ, _searchProps$query;
39
46
  if (!search) {
40
- query = '';
41
- } else {
42
- query = (defaultQuery ? search.defaultQuery || search.query || '' : search.query) || '';
47
+ return searchFormat === 'text' ? '""' : '';
48
+ }
49
+ var searchProps = search;
50
+ var queryString = defaultQuery ? (_ref = (_searchProps$defaultQ = searchProps.defaultQuery) !== null && _searchProps$defaultQ !== void 0 ? _searchProps$defaultQ : searchProps.query) !== null && _ref !== void 0 ? _ref : '' : (_searchProps$query = searchProps.query) !== null && _searchProps$query !== void 0 ? _searchProps$query : '';
51
+ if (searchFormat === 'text') {
52
+ return "\"".concat(queryString, "\"");
43
53
  }
44
- return isString(query) ? EuiSearchBar.Query.parse(query) : query;
54
+ return isString(queryString) ? EuiSearchBar.Query.parse(queryString) : queryString;
45
55
  };
46
56
  var getInitialPagination = function getInitialPagination(pagination, consumerDefaults) {
47
- var _ref2, _pagination$pageIndex, _ref3, _pagination$pageSize;
57
+ var _ref3, _pagination$pageIndex, _ref4, _pagination$pageSize;
48
58
  if (!pagination) {
49
59
  return {
50
60
  pageIndex: undefined,
@@ -52,14 +62,14 @@ var getInitialPagination = function getInitialPagination(pagination, consumerDef
52
62
  };
53
63
  }
54
64
  var defaults = _objectSpread(_objectSpread({}, euiTablePaginationDefaults), consumerDefaults);
55
- var _ref = pagination,
56
- _ref$pageSizeOptions = _ref.pageSizeOptions,
57
- pageSizeOptions = _ref$pageSizeOptions === void 0 ? defaults.itemsPerPageOptions : _ref$pageSizeOptions,
58
- _ref$showPerPageOptio = _ref.showPerPageOptions,
59
- showPerPageOptions = _ref$showPerPageOptio === void 0 ? defaults.showPerPageOptions : _ref$showPerPageOptio;
65
+ var _ref2 = pagination,
66
+ _ref2$pageSizeOptions = _ref2.pageSizeOptions,
67
+ pageSizeOptions = _ref2$pageSizeOptions === void 0 ? defaults.itemsPerPageOptions : _ref2$pageSizeOptions,
68
+ _ref2$showPerPageOpti = _ref2.showPerPageOptions,
69
+ showPerPageOptions = _ref2$showPerPageOpti === void 0 ? defaults.showPerPageOptions : _ref2$showPerPageOpti;
60
70
  var defaultPageSize = pageSizeOptions !== null && pageSizeOptions !== void 0 && pageSizeOptions.includes(defaults.itemsPerPage) ? defaults.itemsPerPage : pageSizeOptions[0];
61
- var initialPageIndex = pagination === true ? 0 : (_ref2 = (_pagination$pageIndex = pagination.pageIndex) !== null && _pagination$pageIndex !== void 0 ? _pagination$pageIndex : pagination.initialPageIndex) !== null && _ref2 !== void 0 ? _ref2 : 0;
62
- var initialPageSize = pagination === true ? defaultPageSize : (_ref3 = (_pagination$pageSize = pagination.pageSize) !== null && _pagination$pageSize !== void 0 ? _pagination$pageSize : pagination.initialPageSize) !== null && _ref3 !== void 0 ? _ref3 : defaultPageSize;
71
+ var initialPageIndex = pagination === true ? 0 : (_ref3 = (_pagination$pageIndex = pagination.pageIndex) !== null && _pagination$pageIndex !== void 0 ? _pagination$pageIndex : pagination.initialPageIndex) !== null && _ref3 !== void 0 ? _ref3 : 0;
72
+ var initialPageSize = pagination === true ? defaultPageSize : (_ref4 = (_pagination$pageSize = pagination.pageSize) !== null && _pagination$pageSize !== void 0 ? _pagination$pageSize : pagination.initialPageSize) !== null && _ref4 !== void 0 ? _ref4 : defaultPageSize;
63
73
  if (showPerPageOptions && initialPageSize != null && !(pageSizeOptions !== null && pageSizeOptions !== void 0 && pageSizeOptions.includes(initialPageSize))) {
64
74
  throw new Error("EuiInMemoryTable received initialPageSize ".concat(initialPageSize, ", which wasn't provided within pageSizeOptions."));
65
75
  }
@@ -112,15 +122,16 @@ function getInitialSorting(columns, sorting) {
112
122
  }
113
123
  export var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
114
124
  function EuiInMemoryTable(props, context) {
125
+ var _props$searchFormat;
115
126
  var _this;
116
127
  _classCallCheck(this, EuiInMemoryTable);
117
128
  _this = _callSuper(this, EuiInMemoryTable, [props]);
118
- _defineProperty(_this, "onTableChange", function (_ref4) {
119
- var page = _ref4.page,
120
- sort = _ref4.sort;
121
- var _ref5 = page || {},
122
- pageIndex = _ref5.index,
123
- pageSize = _ref5.size;
129
+ _defineProperty(_this, "onTableChange", function (_ref5) {
130
+ var page = _ref5.page,
131
+ sort = _ref5.sort;
132
+ var _ref6 = page || {},
133
+ pageIndex = _ref6.index,
134
+ pageSize = _ref6.size;
124
135
 
125
136
  // don't apply pagination changes that are otherwise controlled
126
137
  // `page` is left unchanged as it goes to the consumer's `onTableChange` callback, allowing the app to respond
@@ -129,9 +140,9 @@ export var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
129
140
  if (pagination.pageSize != null) pageSize = pagination.pageSize;
130
141
  if (pagination.pageIndex != null) pageIndex = pagination.pageIndex;
131
142
  }
132
- var _ref6 = sort || {},
133
- sortName = _ref6.field,
134
- sortDirection = _ref6.direction;
143
+ var _ref7 = sort || {},
144
+ sortName = _ref7.field,
145
+ sortDirection = _ref7.direction;
135
146
 
136
147
  // To keep backwards compatibility reportedSortName needs to be tracked separately
137
148
  // from sortName; sortName gets stored internally while reportedSortName is sent to the callback
@@ -174,10 +185,10 @@ export var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
174
185
  sortDirection: sortDirection
175
186
  });
176
187
  });
177
- _defineProperty(_this, "onQueryChange", function (_ref7) {
178
- var query = _ref7.query,
179
- queryText = _ref7.queryText,
180
- error = _ref7.error;
188
+ _defineProperty(_this, "onQueryChange", function (_ref8) {
189
+ var query = _ref8.query,
190
+ queryText = _ref8.queryText,
191
+ error = _ref8.error;
181
192
  var search = _this.props.search;
182
193
  if (isEuiSearchBarProps(search)) {
183
194
  if (search.onChange) {
@@ -211,12 +222,11 @@ export var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
211
222
  // search bar to ignore EQL syntax and only use the searchbar for plain text
212
223
  _defineProperty(_this, "onPlainTextSearch", function (searchValue) {
213
224
  var escapedQueryText = searchValue.replace(/["\\]/g, '\\$&');
214
- var finalQuery = "\"".concat(escapedQueryText, "\"");
215
225
  var search = _this.props.search;
216
226
  if (isEuiSearchBarProps(search)) {
217
227
  if (search.onChange) {
218
228
  var shouldQueryInMemory = search.onChange({
219
- query: EuiSearchBar.Query.parse(finalQuery),
229
+ query: null,
220
230
  queryText: escapedQueryText,
221
231
  error: null
222
232
  });
@@ -226,7 +236,7 @@ export var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
226
236
  }
227
237
  }
228
238
  _this.setState({
229
- query: EuiSearchBar.Query.parse(finalQuery)
239
+ query: "\"".concat(escapedQueryText, "\"")
230
240
  });
231
241
  });
232
242
  var columns = props.columns,
@@ -250,7 +260,7 @@ export var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
250
260
  search: _search
251
261
  },
252
262
  search: _search,
253
- query: getQueryFromSearch(_search, true),
263
+ query: getQueryFromSearch(_search, true, (_props$searchFormat = props.searchFormat) !== null && _props$searchFormat !== void 0 ? _props$searchFormat : 'eql'),
254
264
  pageIndex: _pageIndex || 0,
255
265
  pageSize: _pageSize,
256
266
  pageSizeOptions: pageSizeOptions,
@@ -271,13 +281,28 @@ export var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
271
281
  if (!search) return;
272
282
  var searchBar;
273
283
  if (searchFormat === 'text') {
274
- var _searchBoxProps = (search === null || search === void 0 ? void 0 : search.box) || {}; // Work around | boolean type
275
- var schema = _searchBoxProps.schema,
276
- searchBoxProps = _objectWithoutProperties(_searchBoxProps, _excluded); // Destructure `schema` so it doesn't get rendered to DOM
284
+ var _ref9 = search,
285
+ _ref9$box = _ref9.box,
286
+ box = _ref9$box === void 0 ? {} : _ref9$box,
287
+ query = _ref9.query,
288
+ defaultQuery = _ref9.defaultQuery;
289
+ var schema = box.schema,
290
+ searchBoxProps = _objectWithoutProperties(box, _excluded);
291
+
292
+ // in the unexpected case a Query object is passed with searchFormat=text
293
+ if (process.env.NODE_ENV === 'development') {
294
+ if (query != null && !isString(query)) {
295
+ console.warn('EuiInMemoryTable: `query` should be a string when using searchFormat="text". Query objects are only supported with searchFormat="eql".');
296
+ }
297
+ if (defaultQuery != null && !isString(defaultQuery)) {
298
+ console.warn('EuiInMemoryTable: `defaultQuery` should be a string when using searchFormat="text". Query objects are only supported with searchFormat="eql".');
299
+ }
300
+ }
277
301
 
278
- searchBar = ___EmotionJSX(EuiSearchBox, _extends({
279
- query: "" // Unused, passed to satisfy Typescript
280
- }, searchBoxProps, {
302
+ // use only string values, ignore Query objects
303
+ var displayQuery = isString(query) ? query : isString(defaultQuery) ? defaultQuery : '';
304
+ searchBar = ___EmotionJSX(EuiSearchBox, _extends({}, searchBoxProps, {
305
+ query: displayQuery,
281
306
  onSearch: this.onPlainTextSearch
282
307
  }));
283
308
  } else {
@@ -305,9 +330,9 @@ export var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
305
330
  value: function resolveSearchSchema() {
306
331
  var columns = this.props.columns;
307
332
  return columns.reduce(function (schema, column) {
308
- var _ref8 = column,
309
- field = _ref8.field,
310
- dataType = _ref8.dataType;
333
+ var _ref10 = column,
334
+ field = _ref10.field,
335
+ dataType = _ref10.dataType;
311
336
  if (field) {
312
337
  var type = dataType || 'string';
313
338
  schema.fields[field] = {
@@ -327,8 +352,8 @@ export var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
327
352
  sortName = _this$state.sortName,
328
353
  sortDirection = _this$state.sortDirection;
329
354
  var columns = this.props.columns;
330
- var sortColumn = columns.find(function (_ref9) {
331
- var name = _ref9.name;
355
+ var sortColumn = columns.find(function (_ref11) {
356
+ var name = _ref11.name;
332
357
  return name === sortName;
333
358
  });
334
359
  if (sortColumn == null) {
@@ -378,7 +403,6 @@ export var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
378
403
  var _this$props2 = this.props,
379
404
  columns = _this$props2.columns,
380
405
  loading = _this$props2.loading,
381
- message = _this$props2.message,
382
406
  noItemsMessage = _this$props2.noItemsMessage,
383
407
  error = _this$props2.error,
384
408
  selection = _this$props2.selection,
@@ -441,7 +465,7 @@ export var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
441
465
  onChange: this.onTableChange,
442
466
  error: error,
443
467
  loading: loading,
444
- noItemsMessage: noItemsMessage || message,
468
+ noItemsMessage: noItemsMessage,
445
469
  tableLayout: tableLayout,
446
470
  compressed: compressed,
447
471
  itemIdToExpandedRowMap: itemIdToExpandedRowMap
@@ -499,11 +523,12 @@ export var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
499
523
  var nextQuery = nextProps.search ? nextProps.search.query : '';
500
524
  var prevQuery = prevState.prevProps.search ? prevState.prevProps.search.query : '';
501
525
  if (nextQuery !== prevQuery) {
526
+ var _nextProps$searchForm;
502
527
  updatedPrevState = _objectSpread(_objectSpread({}, updatedPrevState), {}, {
503
528
  prevProps: _objectSpread(_objectSpread({}, updatedPrevState.prevProps), {}, {
504
529
  search: nextProps.search
505
530
  }),
506
- query: getQueryFromSearch(nextProps.search, false)
531
+ query: getQueryFromSearch(nextProps.search, false, (_nextProps$searchForm = nextProps.searchFormat) !== null && _nextProps$searchForm !== void 0 ? _nextProps$searchForm : 'eql')
507
532
  });
508
533
  }
509
534
  if (updatedPrevState !== prevState) {
@@ -57,6 +57,7 @@ export var EuiAbsoluteTab = function EuiAbsoluteTab(_ref) {
57
57
  setHasUnparsedText(false);
58
58
  setIsTextInvalid(false);
59
59
  }, [dateFormat]);
60
+ var textInputLabelId = useGeneratedHtmlId();
60
61
  var timeZomeDescriptionId = useGeneratedHtmlId();
61
62
  var submitButtonLabel = useEuiI18n('euiAbsoluteTab.dateFormatButtonLabel', 'Parse date');
62
63
  var dateFormatError = useEuiI18n('euiAbsoluteTab.dateFormatError', 'Allowed formats: {dateFormat}, ISO 8601, RFC 2822, or Unix timestamp.', {
@@ -157,6 +158,7 @@ export var EuiAbsoluteTab = function EuiAbsoluteTab(_ref) {
157
158
  helpText: hasUnparsedText && !isTextInvalid ? dateFormatError : undefined,
158
159
  describedByIds: [timeZomeDescriptionId]
159
160
  }, ___EmotionJSX(EuiFieldText, {
161
+ "aria-labelledby": textInputLabelId,
160
162
  compressed: true,
161
163
  isInvalid: isTextInvalid,
162
164
  value: textInputValue,
@@ -169,7 +171,9 @@ export var EuiAbsoluteTab = function EuiAbsoluteTab(_ref) {
169
171
  setIsReadyToParse(true);
170
172
  },
171
173
  "data-test-subj": "superDatePickerAbsoluteDateInput",
172
- prepend: ___EmotionJSX(EuiFormLabel, null, labelPrefix)
174
+ prepend: ___EmotionJSX(EuiFormLabel, {
175
+ id: textInputLabelId
176
+ }, labelPrefix)
173
177
  })), hasUnparsedText && ___EmotionJSX(EuiButtonIcon, {
174
178
  type: "submit",
175
179
  css: styles.euiAbsoluteTabDateForm__submit,
@@ -80,6 +80,7 @@ export var EuiRelativeTab = function EuiRelativeTab(_ref) {
80
80
  if (!parsedValue || !parsedValue.isValid()) return '';
81
81
  return parsedValue.locale(locale || 'en').format(dateFormat);
82
82
  }, [isInvalid, value, roundUp, locale, dateFormat]);
83
+ var textInputLabelId = useGeneratedHtmlId();
83
84
  var relativeDateInputNumberDescriptionId = useGeneratedHtmlId();
84
85
  var timeZomeDescriptionId = useGeneratedHtmlId();
85
86
  var numberAriaLabel = useEuiI18n('euiRelativeTab.numberInputLabel', 'Time span amount');
@@ -112,11 +113,14 @@ export var EuiRelativeTab = function EuiRelativeTab(_ref) {
112
113
  }))), ___EmotionJSX(EuiSpacer, {
113
114
  size: "s"
114
115
  }), ___EmotionJSX(EuiFieldText, {
116
+ "aria-labelledby": textInputLabelId,
115
117
  compressed: true,
116
118
  value: formattedValue,
117
119
  readOnly: true,
118
120
  "aria-describedby": timeZomeDescriptionId,
119
- prepend: ___EmotionJSX(EuiFormLabel, null, labelPrefix)
121
+ prepend: ___EmotionJSX(EuiFormLabel, {
122
+ id: textInputLabelId
123
+ }, labelPrefix)
120
124
  }), ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", {
121
125
  id: relativeDateInputNumberDescriptionId
122
126
  }, ___EmotionJSX(EuiI18n, {
@@ -53,7 +53,9 @@ export var EuiTimeZoneDisplay = function EuiTimeZoneDisplay(_ref) {
53
53
  "data-test-subj": "euiTimeZoneDisplay",
54
54
  "aria-label": label
55
55
  }, rest), typeof customRender === 'function' ? customRender({
56
- nameDisplay: nameDisplay
56
+ nameDisplay: nameDisplay,
57
+ utcOffset: utc,
58
+ timeZoneName: name
57
59
  }) : nameDisplay);
58
60
  };
59
61
 
@@ -9,4 +9,5 @@
9
9
  export { EuiCommonlyUsedTimeRanges } from './commonly_used_time_ranges';
10
10
  export { EuiQuickSelectPopover } from './quick_select_popover';
11
11
  export { EuiQuickSelect } from './quick_select';
12
+ export { EuiQuickSelectPanel } from './quick_select_panel';
12
13
  export { EuiRecentlyUsed } from './recently_used';
@@ -35,7 +35,7 @@ export var EuiTimeWindowButtons = function EuiTimeWindowButtons(_ref) {
35
35
  zoomFactor = _ref$zoomFactor === void 0 ? ZOOM_FACTOR_DEFAULT : _ref$zoomFactor;
36
36
  var buttonColor = 'text';
37
37
  var buttonSize = compressed ? 's' : 'm';
38
- var iconSize = compressed ? 's' : 'm';
38
+ var iconSize = 'm';
39
39
  var styles = useEuiMemoizedStyles(euiButtonGroupButtonsStyles);
40
40
  var _useEuiTimeWindow = useEuiTimeWindow(start, end, applyTime, {
41
41
  zoomFactor: zoomFactor
@@ -231,7 +231,7 @@ describe('EuiFilterGroup multiselect example', function () {
231
231
  cy.realPress('Enter');
232
232
  cy.get('div[data-test-subj="euiSelectableList"]').should('exist');
233
233
  cy.realPress('Tab');
234
- cy.repeatRealPress('ArrowDown', 3);
234
+ cy.repeatRealPress('ArrowDown', 4);
235
235
  cy.realPress('Enter');
236
236
  cy.get('li[aria-selected="true"]').find('span.euiSelectableListItem__text').should('have.text', 'Dmitri Shostakovich. Checked option. To exclude this option, press Enter.');
237
237
  cy.realPress('ArrowDown');
@@ -13,6 +13,7 @@ import React from 'react';
13
13
  import classNames from 'classnames';
14
14
  import { useEuiMemoizedStyles, getSecureRelForTarget } from '../../../services';
15
15
  import { validateHref } from '../../../services/security/href_validator';
16
+ import { useEuiButtonColorCSS } from '../../../global_styling';
16
17
  import { EuiIcon } from '../../icon';
17
18
  import { euiHeaderLogoStyles } from './header_logo.styles';
18
19
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -29,6 +30,10 @@ export var EuiHeaderLogo = function EuiHeaderLogo(_ref) {
29
30
  rest = _objectWithoutProperties(_ref, _excluded);
30
31
  var classes = classNames('euiHeaderLogo', className);
31
32
  var styles = useEuiMemoizedStyles(euiHeaderLogoStyles);
33
+ var buttonColorStyles = useEuiButtonColorCSS({
34
+ display: 'empty'
35
+ });
36
+ var cssStyles = [styles.euiHeaderLogo, buttonColorStyles.text];
32
37
  var secureRel = getSecureRelForTarget({
33
38
  href: href,
34
39
  rel: rel,
@@ -39,7 +44,7 @@ export var EuiHeaderLogo = function EuiHeaderLogo(_ref) {
39
44
  href: isHrefValid ? href : '',
40
45
  rel: secureRel,
41
46
  target: target,
42
- css: styles.euiHeaderLogo,
47
+ css: cssStyles,
43
48
  className: classes
44
49
  }, rest), ___EmotionJSX(EuiIcon, {
45
50
  "aria-label": iconTitle,
@@ -15,7 +15,7 @@ export var euiHeaderLogoStyles = function euiHeaderLogoStyles(euiThemeContext) {
15
15
  var _euiHeaderVariables = euiHeaderVariables(euiThemeContext),
16
16
  childHeight = _euiHeaderVariables.childHeight;
17
17
  return {
18
- euiHeaderLogo: /*#__PURE__*/css("position:relative;", logicalCSS('height', childHeight), " line-height:", childHeight, ";", logicalCSS('min-width', childHeight), " padding-inline:", euiTheme.size.s, ";display:inline-flex;align-items:center;white-space:nowrap;", euiBreakpoint(euiThemeContext, ['xs']), "{", logicalCSS('padding-left', euiTheme.size.xs), ";};label:euiHeaderLogo;"),
18
+ euiHeaderLogo: /*#__PURE__*/css("position:relative;", logicalCSS('height', childHeight), " line-height:", childHeight, ";", logicalCSS('min-width', childHeight), " padding-inline:", euiTheme.size.s, ";display:inline-flex;border-radius:", euiTheme.border.radius.small, ";align-items:center;white-space:nowrap;", euiBreakpoint(euiThemeContext, ['xs']), "{", logicalCSS('padding-left', euiTheme.size.xs), ";};label:euiHeaderLogo;"),
19
19
  euiHeaderLogo__text: /*#__PURE__*/css(euiTitle(euiThemeContext, 'xxs'), " ", logicalCSS('padding-left', euiTheme.size.base), " ", euiBreakpoint(euiThemeContext, ['xs']), "{", logicalCSS('padding-left', euiTheme.size.s), ";};label:euiHeaderLogo__text;")
20
20
  };
21
21
  };
@@ -14,11 +14,11 @@ import { logicalSizeCSS, euiCanAnimate } from '../../global_styling';
14
14
  export var iconLoadingOpacity = 0.05;
15
15
  var iconLoading = keyframes(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n 0% {\n opacity: ", ";\n }\n\n 100% {\n opacity: 1;\n }\n"])), iconLoadingOpacity);
16
16
  var _ref = process.env.NODE_ENV === "production" ? {
17
- name: "njd749-logoElasticOutline",
18
- styles: "*[fill]{fill:none!important;}.outline{fill:currentColor!important;};label:logoElasticOutline;"
17
+ name: "p0011s-logoElasticOutline",
18
+ styles: "*[fill]{fill:none!important;stroke:currentColor!important;};label:logoElasticOutline;"
19
19
  } : {
20
- name: "njd749-logoElasticOutline",
21
- styles: "*[fill]{fill:none!important;}.outline{fill:currentColor!important;};label:logoElasticOutline;",
20
+ name: "p0011s-logoElasticOutline",
21
+ styles: "*[fill]{fill:none!important;stroke:currentColor!important;};label:logoElasticOutline;",
22
22
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
23
23
  };
24
24
  var _ref2 = process.env.NODE_ENV === "production" ? {
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- var _excluded = ["children", "restrictWidth", "className", "paddingSize", "grow", "direction"];
3
+ var _excluded = ["children", "restrictWidth", "className", "paddingSize", "grow", "direction", "color"];
4
4
  /*
5
5
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
6
6
  * or more contributor license agreements. Licensed under the Elastic License
@@ -12,7 +12,7 @@ var _excluded = ["children", "restrictWidth", "className", "paddingSize", "grow"
12
12
  import React from 'react';
13
13
  import classNames from 'classnames';
14
14
  import { setStyleForRestrictedPageWidth } from './_restrict_width';
15
- import { useEuiPaddingCSS } from '../../global_styling';
15
+ import { useEuiPaddingCSS, useEuiBackgroundColorCSS } from '../../global_styling';
16
16
  import { euiPageStyles } from './page.styles';
17
17
  import { useEuiTheme } from '../../services';
18
18
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -27,13 +27,16 @@ export var EuiPage = function EuiPage(_ref) {
27
27
  grow = _ref$grow === void 0 ? true : _ref$grow,
28
28
  _ref$direction = _ref.direction,
29
29
  direction = _ref$direction === void 0 ? 'row' : _ref$direction,
30
+ _ref$color = _ref.color,
31
+ color = _ref$color === void 0 ? 'transparent' : _ref$color,
30
32
  rest = _objectWithoutProperties(_ref, _excluded);
31
33
  // Set max-width as a style prop
32
34
  var widthStyles = setStyleForRestrictedPageWidth(restrictWidth, rest === null || rest === void 0 ? void 0 : rest.style);
33
35
  var euiTheme = useEuiTheme();
34
36
  var styles = euiPageStyles(euiTheme);
35
37
  var padding = useEuiPaddingCSS()[paddingSize];
36
- var stylesCSS = [styles.euiPage, styles[direction], grow && styles.grow, padding, restrictWidth && styles.restrictWidth];
38
+ var backgroundColor = useEuiBackgroundColorCSS()[color];
39
+ var stylesCSS = [styles.euiPage, styles[direction], backgroundColor, grow && styles.grow, padding, restrictWidth && styles.restrictWidth];
37
40
  var classes = classNames('euiPage', className);
38
41
  return ___EmotionJSX("div", _extends({
39
42
  css: stylesCSS,