@elastic/eui 95.12.0 → 96.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 (99) hide show
  1. package/es/components/breadcrumbs/_breadcrumb_content.js +2 -0
  2. package/es/components/breadcrumbs/breadcrumbs.js +2 -0
  3. package/es/components/datagrid/body/cell/data_grid_cell.styles.js +3 -1
  4. package/es/components/datagrid/controls/column_selector.js +2 -2
  5. package/es/components/datagrid/controls/column_selector.styles.js +2 -2
  6. package/es/components/datagrid/controls/column_sorting.js +0 -1
  7. package/es/components/datagrid/controls/column_sorting.styles.js +2 -2
  8. package/es/components/datagrid/controls/column_sorting_draggable.js +2 -1
  9. package/es/components/drag_and_drop/draggable.js +15 -2
  10. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +2 -0
  11. package/es/components/header/header_links/header_links.js +2 -0
  12. package/es/components/page/page_header/page_header_content.js +32 -31
  13. package/es/components/page/page_header/page_header_content.styles.js +28 -16
  14. package/es/components/popover/popover.js +2 -0
  15. package/es/components/provider/system_color_mode/system_color_mode_provider.js +3 -3
  16. package/es/components/search_bar/search_box.js +2 -3
  17. package/es/components/tour/tour_step.js +2 -0
  18. package/eui.d.ts +23 -6
  19. package/i18ntokens.json +56 -56
  20. package/lib/components/breadcrumbs/_breadcrumb_content.js +2 -0
  21. package/lib/components/datagrid/body/cell/data_grid_cell.styles.js +3 -1
  22. package/lib/components/datagrid/controls/column_selector.js +2 -2
  23. package/lib/components/datagrid/controls/column_selector.styles.js +1 -1
  24. package/lib/components/datagrid/controls/column_sorting.js +0 -1
  25. package/lib/components/datagrid/controls/column_sorting.styles.js +1 -1
  26. package/lib/components/datagrid/controls/column_sorting_draggable.js +2 -1
  27. package/lib/components/drag_and_drop/draggable.js +15 -2
  28. package/lib/components/page/page_header/page_header_content.js +29 -30
  29. package/lib/components/page/page_header/page_header_content.styles.js +28 -16
  30. package/lib/components/popover/popover.js +2 -0
  31. package/lib/components/provider/system_color_mode/system_color_mode_provider.js +3 -3
  32. package/lib/components/search_bar/search_box.js +1 -2
  33. package/optimize/es/components/datagrid/body/cell/data_grid_cell.styles.js +3 -1
  34. package/optimize/es/components/datagrid/controls/column_selector.js +2 -2
  35. package/optimize/es/components/datagrid/controls/column_selector.styles.js +2 -2
  36. package/optimize/es/components/datagrid/controls/column_sorting.js +0 -1
  37. package/optimize/es/components/datagrid/controls/column_sorting.styles.js +2 -2
  38. package/optimize/es/components/datagrid/controls/column_sorting_draggable.js +2 -1
  39. package/optimize/es/components/drag_and_drop/draggable.js +6 -2
  40. package/optimize/es/components/page/page_header/page_header_content.js +26 -28
  41. package/optimize/es/components/page/page_header/page_header_content.styles.js +28 -16
  42. package/optimize/es/components/provider/system_color_mode/system_color_mode_provider.js +3 -3
  43. package/optimize/es/components/search_bar/search_box.js +2 -3
  44. package/optimize/lib/components/datagrid/body/cell/data_grid_cell.styles.js +3 -1
  45. package/optimize/lib/components/datagrid/controls/column_selector.js +2 -2
  46. package/optimize/lib/components/datagrid/controls/column_selector.styles.js +1 -1
  47. package/optimize/lib/components/datagrid/controls/column_sorting.js +0 -1
  48. package/optimize/lib/components/datagrid/controls/column_sorting.styles.js +1 -1
  49. package/optimize/lib/components/datagrid/controls/column_sorting_draggable.js +2 -1
  50. package/optimize/lib/components/drag_and_drop/draggable.js +6 -2
  51. package/optimize/lib/components/page/page_header/page_header_content.js +25 -27
  52. package/optimize/lib/components/page/page_header/page_header_content.styles.js +28 -16
  53. package/optimize/lib/components/provider/system_color_mode/system_color_mode_provider.js +3 -3
  54. package/optimize/lib/components/search_bar/search_box.js +1 -2
  55. package/package.json +1 -1
  56. package/src/global_styling/mixins/_form.scss +0 -245
  57. package/src/global_styling/mixins/_index.scss +0 -3
  58. package/src/global_styling/mixins/_states.scss +0 -33
  59. package/src/global_styling/mixins/_tool_tip.scss +4 -4
  60. package/src/global_styling/variables/_buttons.scss +4 -5
  61. package/src/global_styling/variables/_form.scss +0 -38
  62. package/src/global_styling/variables/_index.scss +0 -3
  63. package/src/themes/amsterdam/global_styling/mixins/_index.scss +0 -3
  64. package/src/themes/amsterdam/global_styling/mixins/_states.scss +0 -33
  65. package/src/themes/amsterdam/global_styling/variables/_index.scss +0 -2
  66. package/test-env/components/breadcrumbs/_breadcrumb_content.js +2 -0
  67. package/test-env/components/datagrid/body/cell/data_grid_cell.styles.js +3 -1
  68. package/test-env/components/datagrid/controls/column_selector.js +2 -2
  69. package/test-env/components/datagrid/controls/column_selector.styles.js +1 -1
  70. package/test-env/components/datagrid/controls/column_sorting.js +0 -1
  71. package/test-env/components/datagrid/controls/column_sorting.styles.js +1 -1
  72. package/test-env/components/datagrid/controls/column_sorting_draggable.js +2 -1
  73. package/test-env/components/drag_and_drop/draggable.js +15 -2
  74. package/test-env/components/page/page_header/page_header_content.js +29 -30
  75. package/test-env/components/page/page_header/page_header_content.styles.js +28 -16
  76. package/test-env/components/popover/popover.js +2 -0
  77. package/test-env/components/provider/system_color_mode/system_color_mode_provider.js +3 -3
  78. package/test-env/components/search_bar/search_box.js +1 -2
  79. package/dist/eui_theme_dark.css +0 -173
  80. package/dist/eui_theme_dark.min.css +0 -1
  81. package/dist/eui_theme_light.css +0 -173
  82. package/dist/eui_theme_light.min.css +0 -1
  83. package/src/global_styling/mixins/_link.scss +0 -11
  84. package/src/global_styling/mixins/_loading.scss +0 -6
  85. package/src/global_styling/mixins/_range.scss +0 -62
  86. package/src/global_styling/variables/_page.scss +0 -2
  87. package/src/global_styling/variables/_panel.scss +0 -21
  88. package/src/global_styling/variables/_tool_tip.scss +0 -9
  89. package/src/themes/amsterdam/global_styling/mixins/_link.scss +0 -23
  90. package/src/themes/amsterdam/global_styling/variables/_buttons.scss +0 -4
  91. package/src/themes/amsterdam/global_styling/variables/_page.scss +0 -1
  92. package/src/themes/legacy/_colors_dark.scss +0 -49
  93. package/src/themes/legacy/_colors_light.scss +0 -49
  94. package/src/themes/legacy/_globals.scss +0 -11
  95. package/src/themes/legacy/legacy_dark.scss +0 -11
  96. package/src/themes/legacy/legacy_light.scss +0 -11
  97. package/src/themes/legacy/reset/_index.scss +0 -2
  98. package/src/themes/legacy/reset/_reset.scss +0 -161
  99. package/src/themes/legacy/reset/_scrollbar.scss +0 -6
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.EuiSearchBox = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _services = require("../../services");
11
10
  var _i18n = require("../i18n");
12
11
  var _form = require("../form");
13
12
  var _popover = require("../popover");
@@ -33,7 +32,7 @@ var EuiSearchBox = exports.EuiSearchBox = function EuiSearchBox(_ref) {
33
32
  hint = _ref.hint,
34
33
  rest = _objectWithoutProperties(_ref, _excluded);
35
34
  var _inputRef = (0, _react.useRef)(null);
36
- (0, _services.useUpdateEffect)(function () {
35
+ (0, _react.useLayoutEffect)(function () {
37
36
  if (_inputRef.current) {
38
37
  _inputRef.current.value = query;
39
38
  _inputRef.current.dispatchEvent(new Event('change'));
@@ -104,7 +104,9 @@ export var euiDataGridRowCellStyles = function euiDataGridRowCellStyles(euiTheme
104
104
  defaultHeight: /*#__PURE__*/css(logicalCSS('height', '100%'), ";;label:defaultHeight;"),
105
105
  // Control columns should be vertically centered with the *first line* of text
106
106
  // for both single and multi-line heights (see https://github.com/elastic/eui/issues/7897)
107
- controlColumn: /*#__PURE__*/css("display:inline-flex;align-items:start;gap:", euiTheme.size.xxs, ";vertical-align:-webkit-baseline-middle;vertical-align:-moz-middle-with-baseline;.euiDataGrid--fontSizeSmall &:where(.euiDataGridRowCell__content--defaultHeight){", logicalCSS('height', '100%'), " align-items:center;}.euiCheckbox:not(:has(label)){display:inline;.euiCheckbox__square{display:inline-flex;vertical-align:text-bottom;@supports (vertical-align: -moz-middle-with-baseline){vertical-align:sub;}}};label:controlColumn;")
107
+ controlColumn: /*#__PURE__*/css(
108
+ // ❗ For some reason Chromium browsers will scrollbar stutter without this :|||
109
+ logicalCSS('max-height', '100%'), " display:inline-flex;align-items:start;gap:", euiTheme.size.xxs, ";vertical-align:-webkit-baseline-middle;vertical-align:-moz-middle-with-baseline;.euiDataGrid--fontSizeSmall &:where(.euiDataGridRowCell__content--defaultHeight){", logicalCSS('height', '100%'), " align-items:center;}.euiCheckbox:not(:has(label)){display:inline;.euiCheckbox__square{display:inline-flex;vertical-align:text-bottom;@supports (vertical-align: -moz-middle-with-baseline){vertical-align:sub;}}};label:controlColumn;")
108
110
  }
109
111
  };
110
112
  };
@@ -94,7 +94,6 @@ export var useDataGridColumnSelector = function useDataGridColumnSelector(availa
94
94
  },
95
95
  anchorPosition: "downLeft",
96
96
  panelPaddingSize: "none",
97
- hasDragDrop: true,
98
97
  button: ___EmotionJSX(EuiDataGridToolbarControl, {
99
98
  badgeContent: numberOfHiddenFields > 0 ? "".concat(orderedVisibleColumns.length, "/").concat(availableColumns.length) : availableColumns.length,
100
99
  iconType: "tableDensityNormal",
@@ -138,7 +137,8 @@ export var useDataGridColumnSelector = function useDataGridColumnSelector(availa
138
137
  index: index,
139
138
  isDragDisabled: !isDragEnabled,
140
139
  hasInteractiveChildren: true,
141
- customDragHandle: true
140
+ customDragHandle: true,
141
+ usePortal: true
142
142
  }, function (provided, state) {
143
143
  return ___EmotionJSX("div", {
144
144
  css: styles.euiDataGridColumnSelector__item,
@@ -7,7 +7,7 @@
7
7
  */
8
8
 
9
9
  import { css } from '@emotion/react';
10
- import { euiYScroll, logicalCSS, mathWithUnits } from '../../../global_styling';
10
+ import { euiYScrollWithShadows, logicalCSS, mathWithUnits } from '../../../global_styling';
11
11
  import { euiShadowLarge } from '../../../themes';
12
12
  export var euiDataGridColumnSelectorStyles = function euiDataGridColumnSelectorStyles(euiThemeContext) {
13
13
  var euiTheme = euiThemeContext.euiTheme;
@@ -16,7 +16,7 @@ export var euiDataGridColumnSelectorStyles = function euiDataGridColumnSelectorS
16
16
  });
17
17
  var maxResponsiveHeight = "min(".concat(maxStaticHeight, ", 50vh)");
18
18
  return {
19
- euiDataGridColumnSelector: /*#__PURE__*/css(euiYScroll(euiThemeContext), " ", logicalCSS('max-height', maxResponsiveHeight), " padding:", euiTheme.size.s, ";;label:euiDataGridColumnSelector;"),
19
+ euiDataGridColumnSelector: /*#__PURE__*/css(euiYScrollWithShadows(euiThemeContext), " ", logicalCSS('max-height', maxResponsiveHeight), " padding:", euiTheme.size.s, ";;label:euiDataGridColumnSelector;"),
20
20
  euiDataGridColumnSelector__item: /*#__PURE__*/css("padding:", euiTheme.size.xs, ";&.euiDataGridColumnSelector__item-isDragging{", euiShadowLarge(euiThemeContext), " background-color:", euiTheme.colors.emptyShade, ";};label:euiDataGridColumnSelector__item;")
21
21
  };
22
22
  };
@@ -132,7 +132,6 @@ export var DataGridSortingControl = /*#__PURE__*/memo(function (_ref2) {
132
132
  },
133
133
  anchorPosition: "downLeft",
134
134
  panelPaddingSize: "s",
135
- hasDragDrop: true,
136
135
  button: ___EmotionJSX(EuiDataGridToolbarControl, {
137
136
  badgeContent: sorting.columns.length,
138
137
  iconType: "sortable",
@@ -7,7 +7,7 @@
7
7
  */
8
8
 
9
9
  import { css } from '@emotion/react';
10
- import { euiFontSize, euiMinBreakpoint, euiYScroll, logicalCSS, mathWithUnits } from '../../../global_styling';
10
+ import { euiFontSize, euiMinBreakpoint, euiYScroll, euiYScrollWithShadows, logicalCSS, mathWithUnits } from '../../../global_styling';
11
11
  import { euiShadowLarge } from '../../../themes';
12
12
  export var euiDataGridColumnSortingStyles = function euiDataGridColumnSortingStyles(euiThemeContext) {
13
13
  var euiTheme = euiThemeContext.euiTheme;
@@ -19,7 +19,7 @@ export var euiDataGridColumnSortingStyles = function euiDataGridColumnSortingSty
19
19
  /**
20
20
  * Sorted fields
21
21
  */
22
- euiDataGridColumnSorting: /*#__PURE__*/css(logicalCSS('max-height', maxResponsiveHeight), " ", logicalCSS('padding-vertical', euiTheme.size.s), "margin:-", euiTheme.size.s, ";", euiYScroll(euiThemeContext), ";;label:euiDataGridColumnSorting;"),
22
+ euiDataGridColumnSorting: /*#__PURE__*/css(logicalCSS('max-height', maxResponsiveHeight), " ", logicalCSS('padding-vertical', euiTheme.size.s), "margin:-", euiTheme.size.s, ";", euiYScrollWithShadows(euiThemeContext), ";;label:euiDataGridColumnSorting;"),
23
23
  euiDataGridColumnSorting__item: /*#__PURE__*/css(logicalCSS('padding-horizontal', euiTheme.size.s), " &.euiDataGridColumnSorting__item-isDragging{", euiShadowLarge(euiThemeContext), " background-color:", euiTheme.colors.emptyShade, ";};label:euiDataGridColumnSorting__item;"),
24
24
  euiDataGridColumnSorting__name: /*#__PURE__*/css(logicalCSS('padding-right', euiTheme.size.xs), " ", euiMinBreakpoint(euiThemeContext, 'm'), "{", logicalCSS('padding-right', euiTheme.size.l), ";};label:euiDataGridColumnSorting__name;"),
25
25
  euiDataGridColumnSorting__order: /*#__PURE__*/css(euiMinBreakpoint(euiThemeContext, 'm'), "{", logicalCSS('min-width', mathWithUnits(euiTheme.size.xxl, function (x) {
@@ -82,7 +82,8 @@ export var EuiDataGridColumnSortingDraggable = function EuiDataGridColumnSorting
82
82
  draggableId: id,
83
83
  index: index,
84
84
  hasInteractiveChildren: true,
85
- customDragHandle: true
85
+ customDragHandle: true,
86
+ usePortal: true
86
87
  }, rest), function (provided, state) {
87
88
  return ___EmotionJSX(EuiFlexGroup, {
88
89
  css: styles.euiDataGridColumnSorting__item,
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- var _excluded = ["customDragHandle", "draggableId", "isDragDisabled", "hasInteractiveChildren", "isRemovable", "index", "children", "className", "spacing", "style", "data-test-subj"];
4
+ var _excluded = ["customDragHandle", "draggableId", "isDragDisabled", "hasInteractiveChildren", "isRemovable", "usePortal", "index", "children", "className", "spacing", "style", "data-test-subj"];
5
5
  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; }
6
6
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
7
7
  /*
@@ -18,6 +18,7 @@ import classNames from 'classnames';
18
18
  import { useEuiTheme, cloneElementWithCss } from '../../services';
19
19
  import { EuiDroppableContext } from './droppable';
20
20
  import { euiDraggableStyles, euiDraggableItemStyles } from './draggable.styles';
21
+ import { EuiPortal } from '../portal';
21
22
  import { jsx as ___EmotionJSX } from "@emotion/react";
22
23
  export var EuiDraggable = function EuiDraggable(_ref) {
23
24
  var _ref$customDragHandle = _ref.customDragHandle,
@@ -29,6 +30,8 @@ export var EuiDraggable = function EuiDraggable(_ref) {
29
30
  hasInteractiveChildren = _ref$hasInteractiveCh === void 0 ? false : _ref$hasInteractiveCh,
30
31
  _ref$isRemovable = _ref.isRemovable,
31
32
  isRemovable = _ref$isRemovable === void 0 ? false : _ref$isRemovable,
33
+ _ref$usePortal = _ref.usePortal,
34
+ usePortal = _ref$usePortal === void 0 ? false : _ref$usePortal,
32
35
  index = _ref.index,
33
36
  children = _ref.children,
34
37
  className = _ref.className,
@@ -55,7 +58,7 @@ export var EuiDraggable = function EuiDraggable(_ref) {
55
58
  'euiDraggable__item-isDisabled': isDragDisabled
56
59
  });
57
60
  var DraggableElement = typeof children === 'function' ? children(provided, snapshot, rubric) : children;
58
- return ___EmotionJSX(React.Fragment, null, ___EmotionJSX("div", _extends({}, provided.draggableProps, !customDragHandle ? provided.dragHandleProps : {}, {
61
+ var content = ___EmotionJSX(React.Fragment, null, ___EmotionJSX("div", _extends({}, provided.draggableProps, !customDragHandle ? provided.dragHandleProps : {}, {
59
62
  ref: provided.innerRef,
60
63
  "data-test-subj": dataTestSubj,
61
64
  className: classes,
@@ -77,5 +80,6 @@ export var EuiDraggable = function EuiDraggable(_ref) {
77
80
  className: classNames(classes, 'euiDraggable--clone'),
78
81
  css: cssStyles
79
82
  }, DraggableElement));
83
+ return isDragging && usePortal ? ___EmotionJSX(EuiPortal, null, content) : content;
80
84
  });
81
85
  };
@@ -19,7 +19,7 @@ import { EuiFlexGroup, EuiFlexItem } from '../../flex';
19
19
  import { EuiSpacer } from '../../spacer';
20
20
  import { EuiTitle } from '../../title';
21
21
  import { EuiText } from '../../text';
22
- import { useIsWithinBreakpoints, useEuiTheme } from '../../../services';
22
+ import { useIsWithinBreakpoints, useEuiMemoizedStyles } from '../../../services';
23
23
  import { EuiScreenReaderOnly } from '../../accessibility';
24
24
  import { EuiBreadcrumbs } from '../../breadcrumbs';
25
25
  import { useEuiPaddingCSS } from '../../../global_styling';
@@ -61,10 +61,9 @@ export var EuiPageHeaderContent = function EuiPageHeaderContent(_ref) {
61
61
  style = _ref.style,
62
62
  rest = _objectWithoutProperties(_ref, _excluded);
63
63
  var isResponsiveBreakpoint = useIsWithinBreakpoints(['xs', 's'], !!responsive);
64
- var useTheme = useEuiTheme();
65
64
  var classes = classNames('euiPageHeaderContent', className);
66
- var pageHeaderStyles = euiPageHeaderStyles(useTheme);
67
- var contentStyles = euiPageHeaderContentStyles(useTheme);
65
+ var pageHeaderStyles = useEuiMemoizedStyles(euiPageHeaderStyles);
66
+ var contentStyles = useEuiMemoizedStyles(euiPageHeaderContentStyles);
68
67
  var styles = setStyleForRestrictedPageWidth(restrictWidth, style);
69
68
  var paddingSides = 'vertical';
70
69
  var paddingSize = _paddingSize;
@@ -87,7 +86,7 @@ export var EuiPageHeaderContent = function EuiPageHeaderContent(_ref) {
87
86
  }
88
87
  var blockPadding = useEuiPaddingCSS(paddingSides);
89
88
  var cssStyles = [contentStyles.euiPageHeaderContent, bottomBorder && pageHeaderStyles.border, blockPadding[paddingSize]];
90
- var childrenOnlyStyles = [contentStyles.flex, contentStyles[alignItems || 'center'], responsive === true && isResponsiveBreakpoint && contentStyles.responsive, responsive === 'reverse' && isResponsiveBreakpoint && contentStyles.responsiveReverse];
89
+ var childrenOnlyStyles = [contentStyles.childrenOnly.flex, contentStyles[alignItems || 'center'], isResponsiveBreakpoint && responsive && (responsive === 'reverse' ? contentStyles.childrenOnly.responsiveReverse : contentStyles.childrenOnly.responsive)];
91
90
 
92
91
  // Don't go any further if there's no other content than children
93
92
  if (onlyChildren) {
@@ -146,10 +145,10 @@ export var EuiPageHeaderContent = function EuiPageHeaderContent(_ref) {
146
145
  }
147
146
  var childrenNode = children && ___EmotionJSX(React.Fragment, null, ___EmotionJSX(EuiSpacer, null), children);
148
147
  var bottomContentNode;
149
- if (childrenNode || tabsNode && pageTitleNode) {
148
+ if (tabsNode && pageTitleNode) {
150
149
  bottomContentNode = ___EmotionJSX("div", {
151
150
  className: "euiPageHeaderContent__bottom"
152
- }, childrenNode, pageTitleNode && tabsNode);
151
+ }, pageTitleNode && tabsNode);
153
152
  }
154
153
 
155
154
  /**
@@ -158,10 +157,14 @@ export var EuiPageHeaderContent = function EuiPageHeaderContent(_ref) {
158
157
  */
159
158
  var leftSideOrder;
160
159
  if (tabsNode && !pageTitleNode) {
161
- leftSideOrder = ___EmotionJSX(React.Fragment, null, tabsNode, descriptionNode);
160
+ leftSideOrder = ___EmotionJSX(React.Fragment, null, tabsNode, descriptionNode, childrenNode);
162
161
  } else {
163
- leftSideOrder = ___EmotionJSX(React.Fragment, null, pageTitleNode, descriptionNode);
162
+ leftSideOrder = ___EmotionJSX(React.Fragment, null, pageTitleNode, descriptionNode, childrenNode);
164
163
  }
164
+ var leftSideFlexItem = ___EmotionJSX(EuiFlexItem, {
165
+ grow: 2,
166
+ css: contentStyles.euiPageHeaderContent__leftSideItems
167
+ }, leftSideOrder);
165
168
  var rightSideFlexItem;
166
169
  if (rightSideItems && rightSideItems.length) {
167
170
  var itemsToRender = isResponsiveBreakpoint ? rightSideItems : _toConsumableArray(rightSideItems).reverse();
@@ -171,30 +174,25 @@ export var EuiPageHeaderContent = function EuiPageHeaderContent(_ref) {
171
174
  key: index
172
175
  }, item);
173
176
  });
174
- rightSideFlexItem = ___EmotionJSX(EuiFlexItem, {
175
- grow: false
176
- }, ___EmotionJSX(EuiFlexGroup, _extends({
177
- wrap: true,
178
- responsive: false
179
- }, rightSideGroupProps), rightSideFlexItems));
177
+ var _cssStyles = [contentStyles.euiPageHeaderContent__rightSideItems, rightSideGroupProps === null || rightSideGroupProps === void 0 ? void 0 : rightSideGroupProps.css];
178
+ rightSideFlexItem = ___EmotionJSX(EuiFlexGroup, _extends({
179
+ gutterSize: "l",
180
+ responsive: false,
181
+ wrap: true
182
+ }, rightSideGroupProps, {
183
+ css: _cssStyles
184
+ }), rightSideFlexItems);
180
185
  }
181
- return alignItems === 'top' || isResponsiveBreakpoint ? ___EmotionJSX("div", _extends({
182
- className: classes,
183
- css: cssStyles,
184
- style: styles
185
- }, rest), optionalBreadcrumbs, ___EmotionJSX(EuiFlexGroup, {
186
- responsive: !!responsive,
187
- className: "euiPageHeaderContent__top",
188
- alignItems: pageTitle ? 'flexStart' : 'baseline',
189
- gutterSize: "l"
190
- }, isResponsiveBreakpoint && responsive === 'reverse' ? ___EmotionJSX(React.Fragment, null, rightSideFlexItem, ___EmotionJSX(EuiFlexItem, null, leftSideOrder)) : ___EmotionJSX(React.Fragment, null, ___EmotionJSX(EuiFlexItem, null, leftSideOrder), rightSideFlexItem)), bottomContentNode) : ___EmotionJSX("div", _extends({
186
+ return ___EmotionJSX("div", _extends({
191
187
  className: classes,
192
188
  css: cssStyles,
193
189
  style: styles
194
190
  }, rest), optionalBreadcrumbs, ___EmotionJSX(EuiFlexGroup, {
195
191
  responsive: !!responsive,
192
+ css: contentStyles.euiPageHeaderContent__top,
196
193
  className: "euiPageHeaderContent__top",
197
- alignItems: alignItems === 'bottom' ? 'flexEnd' : alignItems,
198
- gutterSize: "l"
199
- }, ___EmotionJSX(EuiFlexItem, null, leftSideOrder, bottomContentNode), rightSideFlexItem));
194
+ alignItems: alignItems === 'bottom' ? 'flexEnd' : alignItems === 'top' ? 'flexStart' : alignItems,
195
+ gutterSize: "l",
196
+ wrap: true
197
+ }, isResponsiveBreakpoint && responsive === 'reverse' ? ___EmotionJSX(React.Fragment, null, rightSideFlexItem, leftSideFlexItem) : ___EmotionJSX(React.Fragment, null, leftSideFlexItem, rightSideFlexItem)), bottomContentNode);
200
198
  };
@@ -10,6 +10,14 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
10
10
  import { css } from '@emotion/react';
11
11
  import { logicalCSS } from '../../../global_styling';
12
12
  var _ref = process.env.NODE_ENV === "production" ? {
13
+ name: "1574q9m-euiPageHeaderContent__top",
14
+ styles: "container-type:inline-size;label:euiPageHeaderContent__top;"
15
+ } : {
16
+ name: "1574q9m-euiPageHeaderContent__top",
17
+ styles: "container-type:inline-size;label:euiPageHeaderContent__top;",
18
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
19
+ };
20
+ var _ref2 = process.env.NODE_ENV === "production" ? {
13
21
  name: "1ajq27l-responsiveReverse",
14
22
  styles: "flex-direction:column-reverse;align-items:flex-start;label:responsiveReverse;"
15
23
  } : {
@@ -17,7 +25,7 @@ var _ref = process.env.NODE_ENV === "production" ? {
17
25
  styles: "flex-direction:column-reverse;align-items:flex-start;label:responsiveReverse;",
18
26
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
19
27
  };
20
- var _ref2 = process.env.NODE_ENV === "production" ? {
28
+ var _ref3 = process.env.NODE_ENV === "production" ? {
21
29
  name: "177mkz8-responsive",
22
30
  styles: "flex-direction:column;align-items:flex-start;label:responsive;"
23
31
  } : {
@@ -25,7 +33,7 @@ var _ref2 = process.env.NODE_ENV === "production" ? {
25
33
  styles: "flex-direction:column;align-items:flex-start;label:responsive;",
26
34
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
27
35
  };
28
- var _ref3 = process.env.NODE_ENV === "production" ? {
36
+ var _ref4 = process.env.NODE_ENV === "production" ? {
29
37
  name: "1uwc4oj-stretch",
30
38
  styles: "align-items:stretch;label:stretch;"
31
39
  } : {
@@ -33,7 +41,7 @@ var _ref3 = process.env.NODE_ENV === "production" ? {
33
41
  styles: "align-items:stretch;label:stretch;",
34
42
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
35
43
  };
36
- var _ref4 = process.env.NODE_ENV === "production" ? {
44
+ var _ref5 = process.env.NODE_ENV === "production" ? {
37
45
  name: "8391db-center",
38
46
  styles: "align-items:center;label:center;"
39
47
  } : {
@@ -41,7 +49,7 @@ var _ref4 = process.env.NODE_ENV === "production" ? {
41
49
  styles: "align-items:center;label:center;",
42
50
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
43
51
  };
44
- var _ref5 = process.env.NODE_ENV === "production" ? {
52
+ var _ref6 = process.env.NODE_ENV === "production" ? {
45
53
  name: "1msaet2-bottom",
46
54
  styles: "align-items:flex-end;label:bottom;"
47
55
  } : {
@@ -49,7 +57,7 @@ var _ref5 = process.env.NODE_ENV === "production" ? {
49
57
  styles: "align-items:flex-end;label:bottom;",
50
58
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
51
59
  };
52
- var _ref6 = process.env.NODE_ENV === "production" ? {
60
+ var _ref7 = process.env.NODE_ENV === "production" ? {
53
61
  name: "1gnwbvd-top",
54
62
  styles: "align-items:flex-start;label:top;"
55
63
  } : {
@@ -57,21 +65,25 @@ var _ref6 = process.env.NODE_ENV === "production" ? {
57
65
  styles: "align-items:flex-start;label:top;",
58
66
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
59
67
  };
60
- export var euiPageHeaderContentStyles = function euiPageHeaderContentStyles(_ref7) {
61
- var euiTheme = _ref7.euiTheme;
68
+ export var euiPageHeaderContentStyles = function euiPageHeaderContentStyles(_ref8) {
69
+ var euiTheme = _ref8.euiTheme;
62
70
  return {
63
71
  euiPageHeaderContent: /*#__PURE__*/css(logicalCSS('width', '100%'), " ", logicalCSS('margin-horizontal', 'auto'), ";;label:euiPageHeaderContent;"),
64
72
  // alignItems
65
- top: _ref6,
66
- bottom: _ref5,
67
- center: _ref4,
68
- stretch: _ref3,
73
+ top: _ref7,
74
+ bottom: _ref6,
75
+ center: _ref5,
76
+ stretch: _ref4,
69
77
  // Children only (legacy) expects EuiPageHeaderSections as children
70
- flex: /*#__PURE__*/css("flex-direction:row;display:flex;gap:", euiTheme.size.base, ";justify-content:space-between;;label:flex;"),
71
- // Responsive (what to do at the smaller breakpoint)
72
- responsive: _ref2,
73
- responsiveReverse: _ref,
74
- // Content
78
+ childrenOnly: {
79
+ flex: /*#__PURE__*/css("flex-direction:row;display:flex;gap:", euiTheme.size.base, ";justify-content:space-between;;label:flex;"),
80
+ // Responsive (what to do at the smaller breakpoint)
81
+ responsive: _ref3,
82
+ responsiveReverse: _ref2
83
+ },
84
+ euiPageHeaderContent__top: _ref,
85
+ euiPageHeaderContent__leftSideItems: /*#__PURE__*/css("@container (max-width: ", euiTheme.breakpoint.m, "px){", logicalCSS('min-width', '50%'), ";};label:euiPageHeaderContent__leftSideItems;"),
86
+ euiPageHeaderContent__rightSideItems: /*#__PURE__*/css("flex:0 1 auto;align-content:flex-start;@container (min-width: ", euiTheme.breakpoint.m, "px){", logicalCSS('max-width', '50%'), " justify-content:flex-end;};label:euiPageHeaderContent__rightSideItems;"),
75
87
  euiPageHeaderContent__titleIcon: /*#__PURE__*/css("position:relative;", logicalCSS('top', "-".concat(euiTheme.size.xs)), " ", logicalCSS('margin-right', euiTheme.size.base), ";;label:euiPageHeaderContent__titleIcon;")
76
88
  };
77
89
  };
@@ -11,10 +11,10 @@ import { useState, useEffect } from 'react';
11
11
  export var COLOR_MODE_MEDIA_QUERY = '(prefers-color-scheme: dark)';
12
12
  export var EuiSystemColorModeProvider = function EuiSystemColorModeProvider(_ref) {
13
13
  var children = _ref.children;
14
- // Use optional chaining here for SSR or test environments
14
+ // Check typeof and use optional chaining for SSR or test environments
15
15
  var _useState = useState(function () {
16
- var _window, _window$matchMedia;
17
- return (_window = window) !== null && _window !== void 0 && (_window$matchMedia = _window.matchMedia) !== null && _window$matchMedia !== void 0 && _window$matchMedia.call(_window, COLOR_MODE_MEDIA_QUERY).matches ? 'DARK' : 'LIGHT';
16
+ var _window$matchMedia, _window;
17
+ return typeof window !== 'undefined' && (_window$matchMedia = (_window = window).matchMedia) !== null && _window$matchMedia !== void 0 && (_window$matchMedia = _window$matchMedia.call(_window, COLOR_MODE_MEDIA_QUERY)) !== null && _window$matchMedia !== void 0 && _window$matchMedia.matches ? 'DARK' : 'LIGHT';
18
18
  }),
19
19
  _useState2 = _slicedToArray(_useState, 2),
20
20
  systemColorMode = _useState2[0],
@@ -9,8 +9,7 @@ var _excluded = ["query", "placeholder", "incremental", "hint"];
9
9
  * Side Public License, v 1.
10
10
  */
11
11
 
12
- import React, { useRef } from 'react';
13
- import { useUpdateEffect } from '../../services';
12
+ import React, { useRef, useLayoutEffect } from 'react';
14
13
  import { useEuiI18n } from '../i18n';
15
14
  import { EuiFieldSearch } from '../form';
16
15
  import { EuiInputPopover } from '../popover';
@@ -22,7 +21,7 @@ export var EuiSearchBox = function EuiSearchBox(_ref) {
22
21
  hint = _ref.hint,
23
22
  rest = _objectWithoutProperties(_ref, _excluded);
24
23
  var _inputRef = useRef(null);
25
- useUpdateEffect(function () {
24
+ useLayoutEffect(function () {
26
25
  if (_inputRef.current) {
27
26
  _inputRef.current.value = query;
28
27
  _inputRef.current.dispatchEvent(new Event('change'));
@@ -108,7 +108,9 @@ var euiDataGridRowCellStyles = exports.euiDataGridRowCellStyles = function euiDa
108
108
  defaultHeight: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('height', '100%'), ";;label:defaultHeight;"),
109
109
  // Control columns should be vertically centered with the *first line* of text
110
110
  // for both single and multi-line heights (see https://github.com/elastic/eui/issues/7897)
111
- controlColumn: /*#__PURE__*/(0, _react.css)("display:inline-flex;align-items:start;gap:", euiTheme.size.xxs, ";vertical-align:-webkit-baseline-middle;vertical-align:-moz-middle-with-baseline;.euiDataGrid--fontSizeSmall &:where(.euiDataGridRowCell__content--defaultHeight){", (0, _global_styling.logicalCSS)('height', '100%'), " align-items:center;}.euiCheckbox:not(:has(label)){display:inline;.euiCheckbox__square{display:inline-flex;vertical-align:text-bottom;@supports (vertical-align: -moz-middle-with-baseline){vertical-align:sub;}}};label:controlColumn;")
111
+ controlColumn: /*#__PURE__*/(0, _react.css)(
112
+ // ❗ For some reason Chromium browsers will scrollbar stutter without this :|||
113
+ (0, _global_styling.logicalCSS)('max-height', '100%'), " display:inline-flex;align-items:start;gap:", euiTheme.size.xxs, ";vertical-align:-webkit-baseline-middle;vertical-align:-moz-middle-with-baseline;.euiDataGrid--fontSizeSmall &:where(.euiDataGridRowCell__content--defaultHeight){", (0, _global_styling.logicalCSS)('height', '100%'), " align-items:center;}.euiCheckbox:not(:has(label)){display:inline;.euiCheckbox__square{display:inline-flex;vertical-align:text-bottom;@supports (vertical-align: -moz-middle-with-baseline){vertical-align:sub;}}};label:controlColumn;")
112
114
  }
113
115
  };
114
116
  };
@@ -104,7 +104,6 @@ var useDataGridColumnSelector = exports.useDataGridColumnSelector = function use
104
104
  },
105
105
  anchorPosition: "downLeft",
106
106
  panelPaddingSize: "none",
107
- hasDragDrop: true,
108
107
  button: (0, _react2.jsx)(_data_grid_toolbar_control.EuiDataGridToolbarControl, {
109
108
  badgeContent: numberOfHiddenFields > 0 ? "".concat(orderedVisibleColumns.length, "/").concat(availableColumns.length) : availableColumns.length,
110
109
  iconType: "tableDensityNormal",
@@ -148,7 +147,8 @@ var useDataGridColumnSelector = exports.useDataGridColumnSelector = function use
148
147
  index: index,
149
148
  isDragDisabled: !isDragEnabled,
150
149
  hasInteractiveChildren: true,
151
- customDragHandle: true
150
+ customDragHandle: true,
151
+ usePortal: true
152
152
  }, function (provided, state) {
153
153
  return (0, _react2.jsx)("div", {
154
154
  css: styles.euiDataGridColumnSelector__item,
@@ -22,7 +22,7 @@ var euiDataGridColumnSelectorStyles = exports.euiDataGridColumnSelectorStyles =
22
22
  });
23
23
  var maxResponsiveHeight = "min(".concat(maxStaticHeight, ", 50vh)");
24
24
  return {
25
- euiDataGridColumnSelector: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiYScroll)(euiThemeContext), " ", (0, _global_styling.logicalCSS)('max-height', maxResponsiveHeight), " padding:", euiTheme.size.s, ";;label:euiDataGridColumnSelector;"),
25
+ euiDataGridColumnSelector: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiYScrollWithShadows)(euiThemeContext), " ", (0, _global_styling.logicalCSS)('max-height', maxResponsiveHeight), " padding:", euiTheme.size.s, ";;label:euiDataGridColumnSelector;"),
26
26
  euiDataGridColumnSelector__item: /*#__PURE__*/(0, _react.css)("padding:", euiTheme.size.xs, ";&.euiDataGridColumnSelector__item-isDragging{", (0, _themes.euiShadowLarge)(euiThemeContext), " background-color:", euiTheme.colors.emptyShade, ";};label:euiDataGridColumnSelector__item;")
27
27
  };
28
28
  };
@@ -141,7 +141,6 @@ var DataGridSortingControl = exports.DataGridSortingControl = /*#__PURE__*/(0, _
141
141
  },
142
142
  anchorPosition: "downLeft",
143
143
  panelPaddingSize: "s",
144
- hasDragDrop: true,
145
144
  button: (0, _react2.jsx)(_data_grid_toolbar_control.EuiDataGridToolbarControl, {
146
145
  badgeContent: sorting.columns.length,
147
146
  iconType: "sortable",
@@ -25,7 +25,7 @@ var euiDataGridColumnSortingStyles = exports.euiDataGridColumnSortingStyles = fu
25
25
  /**
26
26
  * Sorted fields
27
27
  */
28
- euiDataGridColumnSorting: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('max-height', maxResponsiveHeight), " ", (0, _global_styling.logicalCSS)('padding-vertical', euiTheme.size.s), "margin:-", euiTheme.size.s, ";", (0, _global_styling.euiYScroll)(euiThemeContext), ";;label:euiDataGridColumnSorting;"),
28
+ euiDataGridColumnSorting: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('max-height', maxResponsiveHeight), " ", (0, _global_styling.logicalCSS)('padding-vertical', euiTheme.size.s), "margin:-", euiTheme.size.s, ";", (0, _global_styling.euiYScrollWithShadows)(euiThemeContext), ";;label:euiDataGridColumnSorting;"),
29
29
  euiDataGridColumnSorting__item: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('padding-horizontal', euiTheme.size.s), " &.euiDataGridColumnSorting__item-isDragging{", (0, _themes.euiShadowLarge)(euiThemeContext), " background-color:", euiTheme.colors.emptyShade, ";};label:euiDataGridColumnSorting__item;"),
30
30
  euiDataGridColumnSorting__name: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('padding-right', euiTheme.size.xs), " ", (0, _global_styling.euiMinBreakpoint)(euiThemeContext, 'm'), "{", (0, _global_styling.logicalCSS)('padding-right', euiTheme.size.l), ";};label:euiDataGridColumnSorting__name;"),
31
31
  euiDataGridColumnSorting__order: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiMinBreakpoint)(euiThemeContext, 'm'), "{", (0, _global_styling.logicalCSS)('min-width', (0, _global_styling.mathWithUnits)(euiTheme.size.xxl, function (x) {
@@ -91,7 +91,8 @@ var EuiDataGridColumnSortingDraggable = exports.EuiDataGridColumnSortingDraggabl
91
91
  draggableId: id,
92
92
  index: index,
93
93
  hasInteractiveChildren: true,
94
- customDragHandle: true
94
+ customDragHandle: true,
95
+ usePortal: true
95
96
  }, rest), function (provided, state) {
96
97
  return (0, _react2.jsx)(_flex.EuiFlexGroup, {
97
98
  css: styles.euiDataGridColumnSorting__item,
@@ -15,8 +15,9 @@ var _classnames = _interopRequireDefault(require("classnames"));
15
15
  var _services = require("../../services");
16
16
  var _droppable = require("./droppable");
17
17
  var _draggable = require("./draggable.styles");
18
+ var _portal = require("../portal");
18
19
  var _react2 = require("@emotion/react");
19
- var _excluded = ["customDragHandle", "draggableId", "isDragDisabled", "hasInteractiveChildren", "isRemovable", "index", "children", "className", "spacing", "style", "data-test-subj"];
20
+ var _excluded = ["customDragHandle", "draggableId", "isDragDisabled", "hasInteractiveChildren", "isRemovable", "usePortal", "index", "children", "className", "spacing", "style", "data-test-subj"];
20
21
  /*
21
22
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
22
23
  * or more contributor license agreements. Licensed under the Elastic License
@@ -38,6 +39,8 @@ var EuiDraggable = exports.EuiDraggable = function EuiDraggable(_ref) {
38
39
  hasInteractiveChildren = _ref$hasInteractiveCh === void 0 ? false : _ref$hasInteractiveCh,
39
40
  _ref$isRemovable = _ref.isRemovable,
40
41
  isRemovable = _ref$isRemovable === void 0 ? false : _ref$isRemovable,
42
+ _ref$usePortal = _ref.usePortal,
43
+ usePortal = _ref$usePortal === void 0 ? false : _ref$usePortal,
41
44
  index = _ref.index,
42
45
  children = _ref.children,
43
46
  className = _ref.className,
@@ -64,7 +67,7 @@ var EuiDraggable = exports.EuiDraggable = function EuiDraggable(_ref) {
64
67
  'euiDraggable__item-isDisabled': isDragDisabled
65
68
  });
66
69
  var DraggableElement = typeof children === 'function' ? children(provided, snapshot, rubric) : children;
67
- return (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)("div", (0, _extends2.default)({}, provided.draggableProps, !customDragHandle ? provided.dragHandleProps : {}, {
70
+ var content = (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)("div", (0, _extends2.default)({}, provided.draggableProps, !customDragHandle ? provided.dragHandleProps : {}, {
68
71
  ref: provided.innerRef,
69
72
  "data-test-subj": dataTestSubj,
70
73
  className: classes,
@@ -86,5 +89,6 @@ var EuiDraggable = exports.EuiDraggable = function EuiDraggable(_ref) {
86
89
  className: (0, _classnames.default)(classes, 'euiDraggable--clone'),
87
90
  css: cssStyles
88
91
  }, DraggableElement));
92
+ return isDragging && usePortal ? (0, _react2.jsx)(_portal.EuiPortal, null, content) : content;
89
93
  });
90
94
  };
@@ -67,10 +67,9 @@ var EuiPageHeaderContent = exports.EuiPageHeaderContent = function EuiPageHeader
67
67
  style = _ref.style,
68
68
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
69
69
  var isResponsiveBreakpoint = (0, _services.useIsWithinBreakpoints)(['xs', 's'], !!responsive);
70
- var useTheme = (0, _services.useEuiTheme)();
71
70
  var classes = (0, _classnames.default)('euiPageHeaderContent', className);
72
- var pageHeaderStyles = (0, _page_header.euiPageHeaderStyles)(useTheme);
73
- var contentStyles = (0, _page_header_content.euiPageHeaderContentStyles)(useTheme);
71
+ var pageHeaderStyles = (0, _services.useEuiMemoizedStyles)(_page_header.euiPageHeaderStyles);
72
+ var contentStyles = (0, _services.useEuiMemoizedStyles)(_page_header_content.euiPageHeaderContentStyles);
74
73
  var styles = (0, _restrict_width.setStyleForRestrictedPageWidth)(restrictWidth, style);
75
74
  var paddingSides = 'vertical';
76
75
  var paddingSize = _paddingSize;
@@ -93,7 +92,7 @@ var EuiPageHeaderContent = exports.EuiPageHeaderContent = function EuiPageHeader
93
92
  }
94
93
  var blockPadding = (0, _global_styling.useEuiPaddingCSS)(paddingSides);
95
94
  var cssStyles = [contentStyles.euiPageHeaderContent, bottomBorder && pageHeaderStyles.border, blockPadding[paddingSize]];
96
- var childrenOnlyStyles = [contentStyles.flex, contentStyles[alignItems || 'center'], responsive === true && isResponsiveBreakpoint && contentStyles.responsive, responsive === 'reverse' && isResponsiveBreakpoint && contentStyles.responsiveReverse];
95
+ var childrenOnlyStyles = [contentStyles.childrenOnly.flex, contentStyles[alignItems || 'center'], isResponsiveBreakpoint && responsive && (responsive === 'reverse' ? contentStyles.childrenOnly.responsiveReverse : contentStyles.childrenOnly.responsive)];
97
96
 
98
97
  // Don't go any further if there's no other content than children
99
98
  if (onlyChildren) {
@@ -152,10 +151,10 @@ var EuiPageHeaderContent = exports.EuiPageHeaderContent = function EuiPageHeader
152
151
  }
153
152
  var childrenNode = children && (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)(_spacer.EuiSpacer, null), children);
154
153
  var bottomContentNode;
155
- if (childrenNode || tabsNode && pageTitleNode) {
154
+ if (tabsNode && pageTitleNode) {
156
155
  bottomContentNode = (0, _react2.jsx)("div", {
157
156
  className: "euiPageHeaderContent__bottom"
158
- }, childrenNode, pageTitleNode && tabsNode);
157
+ }, pageTitleNode && tabsNode);
159
158
  }
160
159
 
161
160
  /**
@@ -164,10 +163,14 @@ var EuiPageHeaderContent = exports.EuiPageHeaderContent = function EuiPageHeader
164
163
  */
165
164
  var leftSideOrder;
166
165
  if (tabsNode && !pageTitleNode) {
167
- leftSideOrder = (0, _react2.jsx)(_react.default.Fragment, null, tabsNode, descriptionNode);
166
+ leftSideOrder = (0, _react2.jsx)(_react.default.Fragment, null, tabsNode, descriptionNode, childrenNode);
168
167
  } else {
169
- leftSideOrder = (0, _react2.jsx)(_react.default.Fragment, null, pageTitleNode, descriptionNode);
168
+ leftSideOrder = (0, _react2.jsx)(_react.default.Fragment, null, pageTitleNode, descriptionNode, childrenNode);
170
169
  }
170
+ var leftSideFlexItem = (0, _react2.jsx)(_flex.EuiFlexItem, {
171
+ grow: 2,
172
+ css: contentStyles.euiPageHeaderContent__leftSideItems
173
+ }, leftSideOrder);
171
174
  var rightSideFlexItem;
172
175
  if (rightSideItems && rightSideItems.length) {
173
176
  var itemsToRender = isResponsiveBreakpoint ? rightSideItems : (0, _toConsumableArray2.default)(rightSideItems).reverse();
@@ -177,30 +180,25 @@ var EuiPageHeaderContent = exports.EuiPageHeaderContent = function EuiPageHeader
177
180
  key: index
178
181
  }, item);
179
182
  });
180
- rightSideFlexItem = (0, _react2.jsx)(_flex.EuiFlexItem, {
181
- grow: false
182
- }, (0, _react2.jsx)(_flex.EuiFlexGroup, (0, _extends2.default)({
183
- wrap: true,
184
- responsive: false
185
- }, rightSideGroupProps), rightSideFlexItems));
183
+ var _cssStyles = [contentStyles.euiPageHeaderContent__rightSideItems, rightSideGroupProps === null || rightSideGroupProps === void 0 ? void 0 : rightSideGroupProps.css];
184
+ rightSideFlexItem = (0, _react2.jsx)(_flex.EuiFlexGroup, (0, _extends2.default)({
185
+ gutterSize: "l",
186
+ responsive: false,
187
+ wrap: true
188
+ }, rightSideGroupProps, {
189
+ css: _cssStyles
190
+ }), rightSideFlexItems);
186
191
  }
187
- return alignItems === 'top' || isResponsiveBreakpoint ? (0, _react2.jsx)("div", (0, _extends2.default)({
188
- className: classes,
189
- css: cssStyles,
190
- style: styles
191
- }, rest), optionalBreadcrumbs, (0, _react2.jsx)(_flex.EuiFlexGroup, {
192
- responsive: !!responsive,
193
- className: "euiPageHeaderContent__top",
194
- alignItems: pageTitle ? 'flexStart' : 'baseline',
195
- gutterSize: "l"
196
- }, isResponsiveBreakpoint && responsive === 'reverse' ? (0, _react2.jsx)(_react.default.Fragment, null, rightSideFlexItem, (0, _react2.jsx)(_flex.EuiFlexItem, null, leftSideOrder)) : (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)(_flex.EuiFlexItem, null, leftSideOrder), rightSideFlexItem)), bottomContentNode) : (0, _react2.jsx)("div", (0, _extends2.default)({
192
+ return (0, _react2.jsx)("div", (0, _extends2.default)({
197
193
  className: classes,
198
194
  css: cssStyles,
199
195
  style: styles
200
196
  }, rest), optionalBreadcrumbs, (0, _react2.jsx)(_flex.EuiFlexGroup, {
201
197
  responsive: !!responsive,
198
+ css: contentStyles.euiPageHeaderContent__top,
202
199
  className: "euiPageHeaderContent__top",
203
- alignItems: alignItems === 'bottom' ? 'flexEnd' : alignItems,
204
- gutterSize: "l"
205
- }, (0, _react2.jsx)(_flex.EuiFlexItem, null, leftSideOrder, bottomContentNode), rightSideFlexItem));
200
+ alignItems: alignItems === 'bottom' ? 'flexEnd' : alignItems === 'top' ? 'flexStart' : alignItems,
201
+ gutterSize: "l",
202
+ wrap: true
203
+ }, isResponsiveBreakpoint && responsive === 'reverse' ? (0, _react2.jsx)(_react.default.Fragment, null, rightSideFlexItem, leftSideFlexItem) : (0, _react2.jsx)(_react.default.Fragment, null, leftSideFlexItem, rightSideFlexItem)), bottomContentNode);
206
204
  };