@elastic/eui 92.2.0 → 93.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 (157) hide show
  1. package/dist/eui_theme_dark.css +0 -200
  2. package/dist/eui_theme_dark.min.css +1 -1
  3. package/dist/eui_theme_light.css +0 -200
  4. package/dist/eui_theme_light.min.css +1 -1
  5. package/es/components/basic_table/basic_table.js +0 -9
  6. package/es/components/basic_table/in_memory_table.js +0 -10
  7. package/es/components/beacon/beacon.js +9 -6
  8. package/es/components/breadcrumbs/breadcrumb.js +0 -10
  9. package/es/components/breadcrumbs/breadcrumbs.js +0 -10
  10. package/es/components/code/code.js +2 -2
  11. package/es/components/code/code.styles.js +2 -4
  12. package/es/components/code/code_block.js +5 -3
  13. package/es/components/code/code_block.styles.js +4 -7
  14. package/es/components/code/code_block_controls.js +2 -2
  15. package/es/components/code/code_block_controls.styles.js +2 -4
  16. package/es/components/code/code_block_full_screen.js +2 -2
  17. package/es/components/code/code_syntax.styles.js +39 -34
  18. package/es/components/comment_list/comment_event.js +3 -2
  19. package/es/components/comment_list/comment_event.styles.js +2 -18
  20. package/es/components/context_menu/context_menu.js +2 -6
  21. package/es/components/context_menu/context_menu_item.js +2 -14
  22. package/es/components/empty_prompt/empty_prompt.js +62 -65
  23. package/es/components/empty_prompt/empty_prompt.styles.js +115 -0
  24. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +0 -10
  25. package/es/components/header/header_links/header_links.js +0 -10
  26. package/es/components/page/page_header/page_header_content.js +0 -10
  27. package/es/components/popover/popover.js +3 -15
  28. package/es/components/search_bar/search_bar.js +36 -32
  29. package/es/components/search_bar/search_bar.styles.js +22 -0
  30. package/es/components/text_truncate/text_truncate.js +4 -1
  31. package/es/components/tour/_tour_footer.js +97 -0
  32. package/es/components/tour/_tour_footer.styles.js +23 -0
  33. package/es/components/tour/_tour_header.js +37 -0
  34. package/es/components/tour/_tour_header.styles.js +20 -0
  35. package/es/components/tour/tour.styles.js +5 -28
  36. package/es/components/tour/tour_step.js +45 -130
  37. package/es/global_styling/mixins/_color.js +46 -13
  38. package/eui.d.ts +125 -66
  39. package/i18ntokens.json +94 -148
  40. package/lib/components/basic_table/basic_table.js +0 -9
  41. package/lib/components/basic_table/in_memory_table.js +0 -10
  42. package/lib/components/beacon/beacon.js +11 -6
  43. package/lib/components/breadcrumbs/breadcrumb.js +0 -10
  44. package/lib/components/code/code.js +2 -2
  45. package/lib/components/code/code.styles.js +2 -4
  46. package/lib/components/code/code_block.js +5 -3
  47. package/lib/components/code/code_block.styles.js +4 -7
  48. package/lib/components/code/code_block_controls.js +2 -2
  49. package/lib/components/code/code_block_controls.styles.js +2 -4
  50. package/lib/components/code/code_block_full_screen.js +2 -2
  51. package/lib/components/code/code_syntax.styles.js +40 -36
  52. package/lib/components/comment_list/comment_event.js +2 -1
  53. package/lib/components/comment_list/comment_event.styles.js +3 -20
  54. package/lib/components/context_menu/context_menu.js +2 -6
  55. package/lib/components/context_menu/context_menu_item.js +2 -14
  56. package/lib/components/empty_prompt/empty_prompt.js +64 -64
  57. package/lib/components/empty_prompt/empty_prompt.styles.js +120 -0
  58. package/lib/components/popover/popover.js +3 -15
  59. package/lib/components/search_bar/search_bar.js +37 -33
  60. package/lib/components/search_bar/search_bar.styles.js +30 -0
  61. package/lib/components/text_truncate/text_truncate.js +4 -1
  62. package/lib/components/tour/_tour_footer.js +105 -0
  63. package/lib/components/tour/_tour_footer.styles.js +31 -0
  64. package/lib/components/tour/_tour_header.js +48 -0
  65. package/lib/components/tour/_tour_header.styles.js +27 -0
  66. package/lib/components/tour/tour.styles.js +7 -32
  67. package/lib/components/tour/tour_step.js +42 -117
  68. package/lib/global_styling/mixins/_color.js +50 -15
  69. package/optimize/es/components/basic_table/basic_table.js +0 -9
  70. package/optimize/es/components/basic_table/in_memory_table.js +0 -10
  71. package/optimize/es/components/beacon/beacon.js +9 -6
  72. package/optimize/es/components/code/code.js +2 -2
  73. package/optimize/es/components/code/code.styles.js +2 -4
  74. package/optimize/es/components/code/code_block.js +5 -3
  75. package/optimize/es/components/code/code_block.styles.js +4 -7
  76. package/optimize/es/components/code/code_block_controls.js +2 -2
  77. package/optimize/es/components/code/code_block_controls.styles.js +2 -4
  78. package/optimize/es/components/code/code_block_full_screen.js +2 -2
  79. package/optimize/es/components/code/code_syntax.styles.js +39 -34
  80. package/optimize/es/components/comment_list/comment_event.js +3 -2
  81. package/optimize/es/components/comment_list/comment_event.styles.js +2 -18
  82. package/optimize/es/components/context_menu/context_menu.js +2 -6
  83. package/optimize/es/components/context_menu/context_menu_item.js +2 -6
  84. package/optimize/es/components/empty_prompt/empty_prompt.js +62 -62
  85. package/optimize/es/components/empty_prompt/empty_prompt.styles.js +112 -0
  86. package/optimize/es/components/popover/popover.js +3 -5
  87. package/optimize/es/components/search_bar/search_bar.js +36 -32
  88. package/optimize/es/components/search_bar/search_bar.styles.js +22 -0
  89. package/optimize/es/components/text_truncate/text_truncate.js +4 -1
  90. package/optimize/es/components/tour/_tour_footer.js +89 -0
  91. package/optimize/es/components/tour/_tour_footer.styles.js +23 -0
  92. package/optimize/es/components/tour/_tour_header.js +33 -0
  93. package/optimize/es/components/tour/_tour_header.styles.js +20 -0
  94. package/optimize/es/components/tour/tour.styles.js +5 -28
  95. package/optimize/es/components/tour/tour_step.js +45 -113
  96. package/optimize/es/global_styling/mixins/_color.js +46 -13
  97. package/optimize/lib/components/basic_table/basic_table.js +0 -9
  98. package/optimize/lib/components/basic_table/in_memory_table.js +0 -10
  99. package/optimize/lib/components/beacon/beacon.js +12 -6
  100. package/optimize/lib/components/code/code.js +2 -2
  101. package/optimize/lib/components/code/code.styles.js +2 -4
  102. package/optimize/lib/components/code/code_block.js +5 -3
  103. package/optimize/lib/components/code/code_block.styles.js +4 -7
  104. package/optimize/lib/components/code/code_block_controls.js +2 -2
  105. package/optimize/lib/components/code/code_block_controls.styles.js +2 -4
  106. package/optimize/lib/components/code/code_block_full_screen.js +2 -2
  107. package/optimize/lib/components/code/code_syntax.styles.js +40 -36
  108. package/optimize/lib/components/comment_list/comment_event.js +2 -1
  109. package/optimize/lib/components/comment_list/comment_event.styles.js +3 -20
  110. package/optimize/lib/components/context_menu/context_menu.js +2 -6
  111. package/optimize/lib/components/context_menu/context_menu_item.js +2 -6
  112. package/optimize/lib/components/empty_prompt/empty_prompt.js +65 -62
  113. package/optimize/lib/components/empty_prompt/empty_prompt.styles.js +118 -0
  114. package/optimize/lib/components/popover/popover.js +3 -5
  115. package/optimize/lib/components/search_bar/search_bar.js +37 -33
  116. package/optimize/lib/components/search_bar/search_bar.styles.js +30 -0
  117. package/optimize/lib/components/text_truncate/text_truncate.js +4 -1
  118. package/optimize/lib/components/tour/_tour_footer.js +100 -0
  119. package/optimize/lib/components/tour/_tour_footer.styles.js +31 -0
  120. package/optimize/lib/components/tour/_tour_header.js +43 -0
  121. package/optimize/lib/components/tour/_tour_header.styles.js +27 -0
  122. package/optimize/lib/components/tour/tour.styles.js +7 -32
  123. package/optimize/lib/components/tour/tour_step.js +42 -110
  124. package/optimize/lib/global_styling/mixins/_color.js +50 -15
  125. package/package.json +1 -1
  126. package/src/components/index.scss +0 -2
  127. package/test-env/components/basic_table/basic_table.js +0 -9
  128. package/test-env/components/basic_table/in_memory_table.js +0 -10
  129. package/test-env/components/beacon/beacon.js +12 -6
  130. package/test-env/components/breadcrumbs/breadcrumb.js +0 -10
  131. package/test-env/components/code/code.styles.js +2 -4
  132. package/test-env/components/code/code_block.styles.js +4 -7
  133. package/test-env/components/code/code_block_controls.js +2 -2
  134. package/test-env/components/code/code_block_controls.styles.js +2 -4
  135. package/test-env/components/code/code_block_full_screen.js +2 -2
  136. package/test-env/components/code/code_syntax.styles.js +40 -36
  137. package/test-env/components/comment_list/comment_event.js +2 -1
  138. package/test-env/components/comment_list/comment_event.styles.js +3 -20
  139. package/test-env/components/context_menu/context_menu.js +2 -6
  140. package/test-env/components/context_menu/context_menu_item.js +2 -14
  141. package/test-env/components/empty_prompt/empty_prompt.js +65 -62
  142. package/test-env/components/empty_prompt/empty_prompt.styles.js +118 -0
  143. package/test-env/components/popover/popover.js +3 -15
  144. package/test-env/components/search_bar/search_bar.js +37 -33
  145. package/test-env/components/search_bar/search_bar.styles.js +30 -0
  146. package/test-env/components/text_truncate/text_truncate.js +4 -1
  147. package/test-env/components/tour/_tour_footer.js +100 -0
  148. package/test-env/components/tour/_tour_footer.styles.js +31 -0
  149. package/test-env/components/tour/_tour_header.js +48 -0
  150. package/test-env/components/tour/_tour_header.styles.js +27 -0
  151. package/test-env/components/tour/tour.styles.js +7 -32
  152. package/test-env/components/tour/tour_step.js +42 -114
  153. package/test-env/global_styling/mixins/_color.js +50 -15
  154. package/src/components/empty_prompt/_empty_prompt.scss +0 -128
  155. package/src/components/empty_prompt/_index.scss +0 -1
  156. package/src/components/search_bar/_index.scss +0 -1
  157. package/src/components/search_bar/_search_bar.scss +0 -10
@@ -0,0 +1,22 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+
9
+ import { css } from '@emotion/react';
10
+ import { euiBreakpoint, logicalCSS, mathWithUnits } from '../../global_styling';
11
+ import { euiFormVariables } from '../form/form.styles';
12
+ export var euiSearchBar__searchHolder = function euiSearchBar__searchHolder(euiThemeContext) {
13
+ var _euiFormVariables = euiFormVariables(euiThemeContext),
14
+ maxWidth = _euiFormVariables.maxWidth;
15
+ return /*#__PURE__*/css(logicalCSS('min-width', mathWithUnits(maxWidth, function (x) {
16
+ return x / 2;
17
+ })), ";;label:euiSearchBar__searchHolder;");
18
+ };
19
+ export var euiSearchBar__filtersHolder = function euiSearchBar__filtersHolder(euiThemeContext) {
20
+ var euiTheme = euiThemeContext.euiTheme;
21
+ return /*#__PURE__*/css(euiBreakpoint(euiThemeContext, ['m', 'l', 'xl']), "{", logicalCSS('max-width', "calc(100% - ".concat(euiTheme.size.base, ")")), ";};label:euiSearchBar__filtersHolder;");
22
+ };
@@ -59,9 +59,12 @@ var EuiTextTruncateWithWidth = function EuiTextTruncateWithWidth(_ref2) {
59
59
  setReady = _useState4[1];
60
60
  useEffect(function () {
61
61
  if (calculationDelayMs) {
62
- setTimeout(function () {
62
+ var timerId = setTimeout(function () {
63
63
  return setReady(true);
64
64
  }, calculationDelayMs);
65
+ return function () {
66
+ return clearTimeout(timerId);
67
+ };
65
68
  }
66
69
  }, [calculationDelayMs]);
67
70
 
@@ -0,0 +1,89 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
+ /*
4
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
5
+ * or more contributor license agreements. Licensed under the Elastic License
6
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
7
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
8
+ * Side Public License, v 1.
9
+ */
10
+
11
+ import React, { useMemo, memo } from 'react';
12
+ import { useEuiTheme } from '../../services';
13
+ import { EuiI18n } from '../i18n';
14
+ import { EuiPopoverFooter } from '../popover';
15
+ import { EuiButtonEmpty } from '../button';
16
+ import { EuiFlexGroup, EuiFlexItem } from '../flex';
17
+ import { EuiTourStepIndicator } from './tour_step_indicator';
18
+ import { euiTourFooterStyles } from './_tour_footer.styles';
19
+ import { jsx as ___EmotionJSX } from "@emotion/react";
20
+ export var EuiTourFooter = /*#__PURE__*/memo(function (_ref) {
21
+ var footerAction = _ref.footerAction,
22
+ step = _ref.step,
23
+ stepsTotal = _ref.stepsTotal,
24
+ onFinish = _ref.onFinish;
25
+ var euiTheme = useEuiTheme();
26
+ var footerStyles = euiTourFooterStyles(euiTheme);
27
+ var customFooterAction = useMemo(function () {
28
+ if (!footerAction) return null;
29
+ return Array.isArray(footerAction) ? ___EmotionJSX(EuiFlexGroup, {
30
+ gutterSize: "s",
31
+ alignItems: "center",
32
+ justifyContent: "flexEnd",
33
+ responsive: false,
34
+ wrap: true
35
+ }, footerAction.map(function (action, index) {
36
+ return ___EmotionJSX(EuiFlexItem, {
37
+ key: index,
38
+ grow: false
39
+ }, action);
40
+ })) : ___EmotionJSX(EuiFlexItem, {
41
+ grow: false
42
+ }, footerAction);
43
+ }, [footerAction]);
44
+ var indicators = useMemo(function () {
45
+ if (stepsTotal <= 1) return null;
46
+ return ___EmotionJSX(EuiFlexItem, {
47
+ grow: false
48
+ }, ___EmotionJSX("ul", {
49
+ className: "euiTourFooter__stepList"
50
+ }, _toConsumableArray(Array(stepsTotal).keys()).map(function (_, i) {
51
+ var status = 'complete';
52
+ if (step === i + 1) {
53
+ status = 'active';
54
+ } else if (step <= i) {
55
+ status = 'incomplete';
56
+ }
57
+ return ___EmotionJSX(EuiTourStepIndicator, {
58
+ key: i,
59
+ number: i + 1,
60
+ status: status
61
+ });
62
+ })));
63
+ }, [step, stepsTotal]);
64
+ return ___EmotionJSX(EuiPopoverFooter, {
65
+ css: footerStyles.euiTourFooter,
66
+ className: "euiTourFooter"
67
+ }, ___EmotionJSX(EuiFlexGroup, {
68
+ responsive: false,
69
+ justifyContent: stepsTotal > 1 ? 'spaceBetween' : 'flexEnd',
70
+ alignItems: "center"
71
+ }, indicators, footerAction ? customFooterAction : ___EmotionJSX(EuiFlexItem, {
72
+ grow: false
73
+ }, ___EmotionJSX(EuiI18n, {
74
+ tokens: ['euiTourFooter.endTour', 'euiTourFooter.skipTour', 'euiTourFooter.closeTour'],
75
+ defaults: ['End tour', 'Skip tour', 'Close tour']
76
+ }, function (_ref2) {
77
+ var _ref3 = _slicedToArray(_ref2, 3),
78
+ endTour = _ref3[0],
79
+ skipTour = _ref3[1],
80
+ closeTour = _ref3[2];
81
+ return ___EmotionJSX(EuiButtonEmpty, {
82
+ onClick: onFinish,
83
+ color: "text",
84
+ flush: "right",
85
+ size: "xs"
86
+ }, stepsTotal > 1 ? stepsTotal === step ? endTour : skipTour : closeTour);
87
+ }))));
88
+ });
89
+ EuiTourFooter.displayName = '_EuiTourFooter';
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+
9
+ import { css } from '@emotion/react';
10
+ import { shade, tint } from '../../services';
11
+ import { logicalCSS } from '../../global_styling';
12
+ export var _tourFooterBgColor = function _tourFooterBgColor(_ref) {
13
+ var colorMode = _ref.colorMode,
14
+ euiTheme = _ref.euiTheme;
15
+ return colorMode === 'DARK' ? shade(euiTheme.colors.lightestShade, 0.45) : tint(euiTheme.colors.lightestShade, 0.5);
16
+ };
17
+ export var euiTourFooterStyles = function euiTourFooterStyles(euiThemeContext) {
18
+ var euiTheme = euiThemeContext.euiTheme;
19
+ return {
20
+ // Base
21
+ euiTourFooter: /*#__PURE__*/css("background-color:", _tourFooterBgColor(euiThemeContext), ";", logicalCSS('border-bottom-left-radius', euiTheme.border.radius.medium), " ", logicalCSS('border-bottom-right-radius', euiTheme.border.radius.medium), ";;label:euiTourFooter;")
22
+ };
23
+ };
@@ -0,0 +1,33 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+
9
+ import React, { memo } from 'react';
10
+ import { useEuiTheme } from '../../services';
11
+ import { EuiPopoverTitle } from '../popover';
12
+ import { EuiTitle } from '../title';
13
+ import { euiTourHeaderStyles } from './_tour_header.styles';
14
+ import { jsx as ___EmotionJSX } from "@emotion/react";
15
+ export var EuiTourHeader = /*#__PURE__*/memo(function (_ref) {
16
+ var id = _ref.id,
17
+ title = _ref.title,
18
+ subtitle = _ref.subtitle;
19
+ var euiTheme = useEuiTheme();
20
+ var headerStyles = euiTourHeaderStyles(euiTheme);
21
+ return ___EmotionJSX(EuiPopoverTitle, {
22
+ css: headerStyles.euiTourHeader,
23
+ className: "euiTourHeader",
24
+ id: id
25
+ }, subtitle && ___EmotionJSX(EuiTitle, {
26
+ css: headerStyles.euiTourHeader__subtitle,
27
+ size: "xxxs"
28
+ }, ___EmotionJSX("h2", null, subtitle)), ___EmotionJSX(EuiTitle, {
29
+ css: headerStyles.euiTourHeader__title,
30
+ size: "xxs"
31
+ }, subtitle ? ___EmotionJSX("h3", null, title) : ___EmotionJSX("h2", null, title)));
32
+ });
33
+ EuiTourHeader.displayName = '_EuiTourHeader';
@@ -0,0 +1,20 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+
9
+ import { css } from '@emotion/react';
10
+ import { logicalCSS } from '../../global_styling';
11
+ export var euiTourHeaderStyles = function euiTourHeaderStyles(_ref) {
12
+ var euiTheme = _ref.euiTheme;
13
+ return {
14
+ // Base
15
+ euiTourHeader: /*#__PURE__*/css(logicalCSS('border-bottom', 'none'), logicalCSS('margin-bottom', euiTheme.size.s), ";;label:euiTourHeader;"),
16
+ // Elements
17
+ euiTourHeader__title: /*#__PURE__*/css(logicalCSS('margin-top', 0), ";;label:euiTourHeader__title;"),
18
+ euiTourHeader__subtitle: /*#__PURE__*/css("color:", euiTheme.colors.subduedText, ";padding-block-end:", euiTheme.size.xs, ";;label:euiTourHeader__subtitle;")
19
+ };
20
+ };
@@ -7,23 +7,18 @@
7
7
  */
8
8
 
9
9
  import { css } from '@emotion/react';
10
- import { shade, tint, COLOR_MODES_STANDARD } from '../../services';
11
10
  import { logicalCSS, mathWithUnits, euiCanAnimate } from '../../global_styling';
12
11
  import { openAnimationTiming } from '../popover/popover_panel/_popover_panel.styles';
13
12
  import { popoverArrowSize } from '../popover/popover_arrow/_popover_arrow.styles';
14
- var backgroundColor = function backgroundColor(color, colorMode) {
15
- return colorMode === COLOR_MODES_STANDARD.dark ? shade(color, 0.45) : tint(color, 0.5);
16
- };
17
- export var euiTourStyles = function euiTourStyles(_ref) {
18
- var euiTheme = _ref.euiTheme,
19
- colorMode = _ref.colorMode;
13
+ import { _tourFooterBgColor } from './_tour_footer.styles';
14
+ export var euiTourStyles = function euiTourStyles(euiThemeContext) {
20
15
  return {
21
16
  // Targets EuiPopoverPanel
22
- euiTour: /*#__PURE__*/css("[data-popover-arrow='top']::before{", logicalCSS('border-top-color', backgroundColor(euiTheme.colors.lightestShade, colorMode)), ";};label:euiTour;")
17
+ euiTour: /*#__PURE__*/css("[data-popover-arrow='top']::before{", logicalCSS('border-top-color', _tourFooterBgColor(euiThemeContext)), ";};label:euiTour;")
23
18
  };
24
19
  };
25
- export var euiTourBeaconStyles = function euiTourBeaconStyles(_ref2) {
26
- var euiTheme = _ref2.euiTheme;
20
+ export var euiTourBeaconStyles = function euiTourBeaconStyles(_ref) {
21
+ var euiTheme = _ref.euiTheme;
27
22
  var arrowSize = euiTheme.size[popoverArrowSize];
28
23
  var arrowHalfSize = mathWithUnits(arrowSize, function (x) {
29
24
  return x / 2;
@@ -41,22 +36,4 @@ export var euiTourBeaconStyles = function euiTourBeaconStyles(_ref2) {
41
36
  top: /*#__PURE__*/css(logicalCSS('top', arrowSize), " ", logicalCSS('left', arrowHalfSize), ";;label:top;"),
42
37
  bottom: /*#__PURE__*/css(logicalCSS('top', arrowOffset), " ", logicalCSS('left', arrowHalfSize), ";;label:bottom;")
43
38
  };
44
- };
45
- export var euiTourHeaderStyles = function euiTourHeaderStyles(_ref3) {
46
- var euiTheme = _ref3.euiTheme;
47
- return {
48
- // Base
49
- euiTourHeader: /*#__PURE__*/css(logicalCSS('border-bottom', 'none'), logicalCSS('margin-bottom', euiTheme.size.s), ";;label:euiTourHeader;"),
50
- // Elements
51
- euiTourHeader__title: /*#__PURE__*/css(logicalCSS('margin-top', 0), ";;label:euiTourHeader__title;"),
52
- euiTourHeader__subtitle: /*#__PURE__*/css("color:", euiTheme.colors.subduedText, ";padding-block-end:", euiTheme.size.xs, ";;label:euiTourHeader__subtitle;")
53
- };
54
- };
55
- export var euiTourFooterStyles = function euiTourFooterStyles(_ref4) {
56
- var euiTheme = _ref4.euiTheme,
57
- colorMode = _ref4.colorMode;
58
- return {
59
- // Base
60
- euiTourFooter: /*#__PURE__*/css("background-color:", backgroundColor(euiTheme.colors.lightestShade, colorMode), ";", logicalCSS('border-bottom-left-radius', euiTheme.border.radius.medium), " ", logicalCSS('border-bottom-right-radius', euiTheme.border.radius.medium), ";;label:euiTourFooter;")
61
- };
62
39
  };
@@ -1,9 +1,8 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
1
  import _extends from "@babel/runtime/helpers/extends";
3
- import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
3
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
5
4
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
6
- var _excluded = ["anchorPosition", "anchor", "children", "className", "css", "closePopover", "content", "isStepOpen", "minWidth", "maxWidth", "onFinish", "step", "stepsTotal", "style", "subtitle", "title", "decoration", "footerAction", "panelProps"];
5
+ var _excluded = ["anchorPosition", "anchor", "children", "className", "css", "closePopover", "content", "isStepOpen", "minWidth", "maxWidth", "onFinish", "step", "stepsTotal", "subtitle", "title", "decoration", "footerAction", "panelProps", "panelClassName"];
7
6
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
8
7
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
9
8
  /*
@@ -14,17 +13,15 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
14
13
  * Side Public License, v 1.
15
14
  */
16
15
 
17
- import React, { useEffect, useState } from 'react';
16
+ import React, { useEffect, useState, useMemo, useCallback } from 'react';
18
17
  import classNames from 'classnames';
18
+ import { logicalStyles } from '../../global_styling';
19
19
  import { EuiBeacon } from '../beacon';
20
- import { EuiButtonEmpty } from '../button';
21
- import { EuiFlexGroup, EuiFlexItem } from '../flex';
22
- import { EuiI18n } from '../i18n';
23
- import { EuiPopover, EuiPopoverFooter, EuiPopoverTitle, EuiWrappingPopover } from '../popover';
24
- import { EuiTitle } from '../title';
25
- import { EuiTourStepIndicator } from './tour_step_indicator';
20
+ import { EuiPopover, EuiWrappingPopover } from '../popover';
26
21
  import { useGeneratedHtmlId, findElementBySelectorOrRef, useEuiTheme } from '../../services';
27
- import { euiTourStyles, euiTourBeaconStyles, euiTourFooterStyles, euiTourHeaderStyles } from './tour.styles';
22
+ import { EuiTourHeader } from './_tour_header';
23
+ import { EuiTourFooter } from './_tour_footer';
24
+ import { euiTourStyles, euiTourBeaconStyles } from './tour.styles';
28
25
  import { jsx as ___EmotionJSX } from "@emotion/react";
29
26
  export var EuiTourStep = function EuiTourStep(_ref) {
30
27
  var _ref$anchorPosition = _ref.anchorPosition,
@@ -46,17 +43,17 @@ export var EuiTourStep = function EuiTourStep(_ref) {
46
43
  _ref$step = _ref.step,
47
44
  step = _ref$step === void 0 ? 1 : _ref$step,
48
45
  stepsTotal = _ref.stepsTotal,
49
- style = _ref.style,
50
46
  subtitle = _ref.subtitle,
51
47
  title = _ref.title,
52
48
  _ref$decoration = _ref.decoration,
53
49
  decoration = _ref$decoration === void 0 ? 'beacon' : _ref$decoration,
54
50
  footerAction = _ref.footerAction,
55
51
  panelProps = _ref.panelProps,
52
+ panelClassName = _ref.panelClassName,
56
53
  rest = _objectWithoutProperties(_ref, _excluded);
57
54
  var titleId = useGeneratedHtmlId();
58
55
  if (step === 0) {
59
- console.warn('EuiTourStep `step` should 1-based indexing. Please update to eliminate 0 indexes.');
56
+ console.warn('EuiTourStep `step` should use 1-based indexing. Please update to eliminate 0 indexes.');
60
57
  }
61
58
  var _useState = useState(null),
62
59
  _useState2 = _slicedToArray(_useState, 2),
@@ -66,11 +63,10 @@ export var EuiTourStep = function EuiTourStep(_ref) {
66
63
  _useState4 = _slicedToArray(_useState3, 2),
67
64
  popoverPosition = _useState4[0],
68
65
  setPopoverPosition = _useState4[1];
69
- var onPositionChange = function onPositionChange(position) {
66
+ var onPositionChange = useCallback(function (position) {
70
67
  setPopoverPosition(position);
71
- };
68
+ }, []);
72
69
  useEffect(function () {
73
- var timeout;
74
70
  if (anchor) {
75
71
  // Wait until next tick to find anchor node in case it's not already
76
72
  // in DOM requestAnimationFrame isn't used here because we don't need to
@@ -78,124 +74,60 @@ export var EuiTourStep = function EuiTourStep(_ref) {
78
74
  // needs to go through a react DOM rerender which may take more than
79
75
  // 1 frame (16ms) of time.
80
76
  // TODO: It would be ideal to have some kind of intersection observer here instead
81
- timeout = window.setTimeout(function () {
77
+ var timeout = window.setTimeout(function () {
82
78
  setAnchorNode(findElementBySelectorOrRef(anchor));
83
79
  });
80
+ return function () {
81
+ return window.clearTimeout(timeout);
82
+ };
84
83
  }
85
- return function () {
86
- timeout && window.clearTimeout(timeout);
87
- };
88
84
  }, [anchor]);
89
- var classes = classNames('euiTour', className);
85
+ var anchorClasses = classNames('euiTourAnchor', className);
86
+ var popoverClasses = classNames('euiTour', panelClassName);
90
87
  var euiTheme = useEuiTheme();
91
88
  var tourStyles = euiTourStyles(euiTheme);
92
- var headerStyles = euiTourHeaderStyles(euiTheme);
93
- var footerStyles = euiTourFooterStyles(euiTheme);
94
89
  var beaconStyles = euiTourBeaconStyles(euiTheme);
95
90
  var beaconCss = [beaconStyles.euiTourBeacon, isStepOpen && beaconStyles.isOpen, popoverPosition && beaconStyles[popoverPosition]];
96
- var finishButtonProps = {
97
- color: 'text',
98
- flush: 'right',
99
- size: 'xs'
100
- };
101
- var optionalFooterAction = Array.isArray(footerAction) ? ___EmotionJSX(EuiFlexGroup, {
102
- gutterSize: "s",
103
- alignItems: "center",
104
- justifyContent: "flexEnd",
105
- responsive: false,
106
- wrap: true
107
- }, footerAction.map(function (action, index) {
108
- return ___EmotionJSX(EuiFlexItem, {
109
- key: index,
110
- grow: false
111
- }, action);
112
- })) : ___EmotionJSX(EuiFlexItem, {
113
- grow: false
114
- }, footerAction);
115
- var footer = ___EmotionJSX(EuiFlexGroup, {
116
- responsive: false,
117
- justifyContent: stepsTotal > 1 ? 'spaceBetween' : 'flexEnd',
118
- alignItems: "center"
119
- }, stepsTotal > 1 && ___EmotionJSX(EuiFlexItem, {
120
- grow: false
121
- }, ___EmotionJSX("ul", {
122
- className: "euiTourFooter__stepList"
123
- }, _toConsumableArray(Array(stepsTotal).keys()).map(function (_, i) {
124
- var status = 'complete';
125
- if (step === i + 1) {
126
- status = 'active';
127
- } else if (step <= i) {
128
- status = 'incomplete';
129
- }
130
- return ___EmotionJSX(EuiTourStepIndicator, {
131
- key: i,
132
- number: i + 1,
133
- status: status
134
- });
135
- }))), footerAction ? optionalFooterAction : ___EmotionJSX(EuiFlexItem, {
136
- grow: false
137
- }, ___EmotionJSX(EuiI18n, {
138
- tokens: ['euiTourStep.endTour', 'euiTourStep.skipTour', 'euiTourStep.closeTour'],
139
- defaults: ['End tour', 'Skip tour', 'Close tour']
140
- }, function (_ref2) {
141
- var _ref3 = _slicedToArray(_ref2, 3),
142
- endTour = _ref3[0],
143
- skipTour = _ref3[1],
144
- closeTour = _ref3[2];
145
- var content = closeTour;
146
- if (stepsTotal > 1) {
147
- content = stepsTotal === step ? endTour : skipTour;
148
- }
149
- return ___EmotionJSX(EuiButtonEmpty, _extends({
150
- onClick: onFinish
151
- }, finishButtonProps), content);
152
- })));
153
91
  var hasBeacon = decoration === 'beacon';
154
- var popoverProps = _objectSpread({
92
+ var widthStyles = useMemo(function () {
93
+ return logicalStyles({
94
+ minWidth: minWidth,
95
+ maxWidth: maxWidth
96
+ });
97
+ }, [minWidth, maxWidth]);
98
+ var noAnchor = !anchor && children;
99
+ var PopoverComponent = noAnchor ? EuiPopover : EuiWrappingPopover;
100
+ var button = noAnchor ? children : anchorNode;
101
+ return button ? ___EmotionJSX(PopoverComponent, _extends({
102
+ button: button,
103
+ className: anchorClasses,
155
104
  anchorPosition: anchorPosition,
156
105
  closePopover: closePopover,
157
106
  isOpen: isStepOpen,
158
107
  ownFocus: false,
159
- panelClassName: classes,
160
- panelStyle: style,
108
+ panelClassName: popoverClasses,
161
109
  panelProps: _objectSpread(_objectSpread({}, panelProps), {}, {
162
110
  css: [tourStyles.euiTour, css, panelProps === null || panelProps === void 0 ? void 0 : panelProps.css]
163
111
  }),
164
112
  offset: hasBeacon ? 10 : 0,
165
- 'aria-labelledby': titleId,
113
+ "aria-labelledby": titleId,
166
114
  arrowChildren: hasBeacon && ___EmotionJSX(EuiBeacon, {
167
115
  css: beaconCss,
168
116
  className: "euiTour__beacon"
169
117
  }),
170
118
  onPositionChange: onPositionChange
171
- }, rest);
172
- var layout = ___EmotionJSX("div", {
173
- style: {
174
- minWidth: minWidth,
175
- maxWidth: maxWidth
176
- }
177
- }, ___EmotionJSX(EuiPopoverTitle, {
178
- css: headerStyles.euiTourHeader,
179
- className: "euiTourHeader",
180
- id: titleId
181
- }, subtitle && ___EmotionJSX(EuiTitle, {
182
- css: headerStyles.euiTourHeader__subtitle,
183
- size: "xxxs"
184
- }, ___EmotionJSX("h2", null, subtitle)), ___EmotionJSX(EuiTitle, {
185
- css: headerStyles.euiTourHeader__title,
186
- size: "xxs"
187
- }, subtitle ? ___EmotionJSX("h3", null, title) : ___EmotionJSX("h2", null, title))), ___EmotionJSX("div", {
119
+ }, rest), ___EmotionJSX("div", {
120
+ style: widthStyles
121
+ }, ___EmotionJSX(EuiTourHeader, {
122
+ id: titleId,
123
+ title: title,
124
+ subtitle: subtitle
125
+ }), ___EmotionJSX("div", {
188
126
  className: "euiTour__content"
189
- }, content), ___EmotionJSX(EuiPopoverFooter, {
190
- css: footerStyles.euiTourFooter,
191
- className: "euiTourFooter"
192
- }, footer));
193
- if (!anchor && children) {
194
- return ___EmotionJSX(EuiPopover, _extends({
195
- button: children
196
- }, popoverProps), layout);
197
- }
198
- return anchorNode ? ___EmotionJSX(EuiWrappingPopover, _extends({
199
- button: anchorNode
200
- }, popoverProps), layout) : null;
127
+ }, content), ___EmotionJSX(EuiTourFooter, {
128
+ footerAction: footerAction,
129
+ step: step,
130
+ stepsTotal: stepsTotal,
131
+ onFinish: onFinish
132
+ }))) : null;
201
133
  };
@@ -6,8 +6,9 @@
6
6
  * Side Public License, v 1.
7
7
  */
8
8
 
9
+ import { useMemo } from 'react';
9
10
  import { css } from '@emotion/react';
10
- import { shade, tint, transparentize, useEuiTheme } from '../../services';
11
+ import { shade, tint, tintOrShade, transparentize, useEuiTheme } from '../../services';
11
12
  export var BACKGROUND_COLORS = ['transparent', 'plain', 'subdued', 'accent', 'primary', 'success', 'warning', 'danger'];
12
13
  export var euiBackgroundColor = function euiBackgroundColor(_ref, color) {
13
14
  var euiTheme = _ref.euiTheme,
@@ -24,7 +25,7 @@ export var euiBackgroundColor = function euiBackgroundColor(_ref, color) {
24
25
  return transparentize(euiTheme.colors[color], 0.1);
25
26
  }
26
27
  } else {
27
- var tintOrShade = function tintOrShade(color) {
28
+ var _tintOrShade = function _tintOrShade(color) {
28
29
  return colorMode === 'DARK' ? shade(color, 0.8) : tint(color, 0.9);
29
30
  };
30
31
  switch (color) {
@@ -33,7 +34,7 @@ export var euiBackgroundColor = function euiBackgroundColor(_ref, color) {
33
34
  case 'subdued':
34
35
  return euiTheme.colors.body;
35
36
  default:
36
- return tintOrShade(euiTheme.colors[color]);
37
+ return _tintOrShade(euiTheme.colors[color]);
37
38
  }
38
39
  }
39
40
  };
@@ -46,14 +47,46 @@ export var useEuiBackgroundColor = function useEuiBackgroundColor(color) {
46
47
  });
47
48
  };
48
49
  export var useEuiBackgroundColorCSS = function useEuiBackgroundColorCSS() {
49
- return {
50
- transparent: /*#__PURE__*/css("background-color:", useEuiBackgroundColor('transparent'), ";;label:transparent;"),
51
- plain: /*#__PURE__*/css("background-color:", useEuiBackgroundColor('plain'), ";;label:plain;"),
52
- subdued: /*#__PURE__*/css("background-color:", useEuiBackgroundColor('subdued'), ";;label:subdued;"),
53
- accent: /*#__PURE__*/css("background-color:", useEuiBackgroundColor('accent'), ";;label:accent;"),
54
- primary: /*#__PURE__*/css("background-color:", useEuiBackgroundColor('primary'), ";;label:primary;"),
55
- success: /*#__PURE__*/css("background-color:", useEuiBackgroundColor('success'), ";;label:success;"),
56
- warning: /*#__PURE__*/css("background-color:", useEuiBackgroundColor('warning'), ";;label:warning;"),
57
- danger: /*#__PURE__*/css("background-color:", useEuiBackgroundColor('danger'), ";;label:danger;")
58
- };
50
+ var euiThemeContext = useEuiTheme();
51
+ return useMemo(function () {
52
+ return {
53
+ transparent: /*#__PURE__*/css("background-color:", euiBackgroundColor(euiThemeContext, 'transparent'), ";;label:transparent;"),
54
+ plain: /*#__PURE__*/css("background-color:", euiBackgroundColor(euiThemeContext, 'plain'), ";;label:plain;"),
55
+ subdued: /*#__PURE__*/css("background-color:", euiBackgroundColor(euiThemeContext, 'subdued'), ";;label:subdued;"),
56
+ accent: /*#__PURE__*/css("background-color:", euiBackgroundColor(euiThemeContext, 'accent'), ";;label:accent;"),
57
+ primary: /*#__PURE__*/css("background-color:", euiBackgroundColor(euiThemeContext, 'primary'), ";;label:primary;"),
58
+ success: /*#__PURE__*/css("background-color:", euiBackgroundColor(euiThemeContext, 'success'), ";;label:success;"),
59
+ warning: /*#__PURE__*/css("background-color:", euiBackgroundColor(euiThemeContext, 'warning'), ";;label:warning;"),
60
+ danger: /*#__PURE__*/css("background-color:", euiBackgroundColor(euiThemeContext, 'danger'), ";;label:danger;")
61
+ };
62
+ }, [euiThemeContext]);
63
+ };
64
+ export var euiBorderColor = function euiBorderColor(_ref4, color) {
65
+ var euiTheme = _ref4.euiTheme,
66
+ colorMode = _ref4.colorMode;
67
+ switch (color) {
68
+ case 'transparent':
69
+ case 'plain':
70
+ case 'subdued':
71
+ return euiTheme.border.color;
72
+ case 'warning':
73
+ return tintOrShade(euiTheme.colors.warning, 0.4, colorMode);
74
+ default:
75
+ return tintOrShade(euiTheme.colors[color], 0.6, colorMode);
76
+ }
77
+ };
78
+ export var useEuiBorderColorCSS = function useEuiBorderColorCSS() {
79
+ var euiThemeContext = useEuiTheme();
80
+ return useMemo(function () {
81
+ return {
82
+ transparent: /*#__PURE__*/css("border-color:", euiBorderColor(euiThemeContext, 'transparent'), ";;label:transparent;"),
83
+ plain: /*#__PURE__*/css("border-color:", euiBorderColor(euiThemeContext, 'plain'), ";;label:plain;"),
84
+ subdued: /*#__PURE__*/css("border-color:", euiBorderColor(euiThemeContext, 'subdued'), ";;label:subdued;"),
85
+ accent: /*#__PURE__*/css("border-color:", euiBorderColor(euiThemeContext, 'accent'), ";;label:accent;"),
86
+ primary: /*#__PURE__*/css("border-color:", euiBorderColor(euiThemeContext, 'primary'), ";;label:primary;"),
87
+ success: /*#__PURE__*/css("border-color:", euiBorderColor(euiThemeContext, 'success'), ";;label:success;"),
88
+ warning: /*#__PURE__*/css("border-color:", euiBorderColor(euiThemeContext, 'warning'), ";;label:warning;"),
89
+ danger: /*#__PURE__*/css("border-color:", euiBorderColor(euiThemeContext, 'danger'), ";;label:danger;")
90
+ };
91
+ }, [euiThemeContext]);
59
92
  };
@@ -244,15 +244,6 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
244
244
  });
245
245
  }
246
246
  }
247
-
248
- /**
249
- * @deprecated Use `selection.selected` instead to declaratively control table selection
250
- */
251
- }, {
252
- key: "setSelection",
253
- value: function setSelection(newSelection) {
254
- this.changeSelection(newSelection);
255
- }
256
247
  }, {
257
248
  key: "buildCriteria",
258
249
  value: function buildCriteria(props) {
@@ -126,7 +126,6 @@ var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
126
126
  var _this;
127
127
  (0, _classCallCheck2.default)(this, EuiInMemoryTable);
128
128
  _this = _super.call(this, props);
129
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "tableRef", void 0);
130
129
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onTableChange", function (_ref4) {
131
130
  var page = _ref4.page,
132
131
  sort = _ref4.sort;
@@ -259,17 +258,9 @@ var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
259
258
  allowNeutralSort: allowNeutralSort !== false,
260
259
  showPerPageOptions: showPerPageOptions
261
260
  };
262
- _this.tableRef = /*#__PURE__*/_react.default.createRef();
263
261
  return _this;
264
262
  }
265
263
  (0, _createClass2.default)(EuiInMemoryTable, [{
266
- key: "setSelection",
267
- value: function setSelection(newSelection) {
268
- if (this.tableRef.current) {
269
- this.tableRef.current.setSelection(newSelection);
270
- }
271
- }
272
- }, {
273
264
  key: "renderSearchBar",
274
265
  value: function renderSearchBar() {
275
266
  var _this$props = this.props,
@@ -438,7 +429,6 @@ var EuiInMemoryTable = /*#__PURE__*/function (_Component) {
438
429
  var table =
439
430
  // @ts-ignore complex relationship between pagination's existence and criteria, the code logic ensures this is correctly maintained
440
431
  (0, _react2.jsx)(_basic_table.EuiBasicTable, (0, _extends2.default)({
441
- ref: this.tableRef,
442
432
  items: items,
443
433
  itemId: itemId,
444
434
  rowProps: rowProps,