@elastic/eui 72.0.0 → 72.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/dist/eui_charts_theme.js +13 -1
  2. package/dist/eui_charts_theme.js.map +1 -1
  3. package/dist/eui_theme_dark.css +0 -148
  4. package/dist/eui_theme_dark.min.css +1 -1
  5. package/dist/eui_theme_light.css +0 -148
  6. package/dist/eui_theme_light.min.css +1 -1
  7. package/es/components/basic_table/basic_table.js +2 -2
  8. package/es/components/basic_table/in_memory_table.js +3 -6
  9. package/es/components/basic_table/table.a11y.js +128 -0
  10. package/es/components/color_picker/color_picker.styles.js +16 -0
  11. package/es/components/color_picker/color_stops/color_stop_thumb.js +19 -7
  12. package/es/components/color_picker/color_stops/color_stop_thumb.styles.js +59 -0
  13. package/es/components/color_picker/color_stops/color_stops.js +25 -15
  14. package/es/components/color_picker/color_stops/color_stops.styles.js +65 -0
  15. package/es/components/form/range/range_highlight.styles.js +1 -1
  16. package/es/components/form/range/range_levels.styles.js +1 -1
  17. package/es/components/form/range/range_track.js +5 -2
  18. package/es/components/image/image.a11y.js +55 -0
  19. package/es/components/key_pad_menu/key_pad_menu.a11y.js +158 -0
  20. package/es/components/popover/popover.js +2 -2
  21. package/es/components/table/table_footer_cell.js +1 -1
  22. package/es/components/table/table_header_cell.js +1 -1
  23. package/es/components/table/table_row_cell.js +2 -2
  24. package/es/services/color/manipulation.js +9 -0
  25. package/es/services/index.js +11 -11
  26. package/eui.d.ts +154 -106
  27. package/i18ntokens.json +16 -16
  28. package/lib/components/basic_table/basic_table.js +2 -2
  29. package/lib/components/basic_table/in_memory_table.js +3 -6
  30. package/lib/components/basic_table/table.a11y.js +139 -0
  31. package/lib/components/color_picker/color_picker.styles.js +26 -0
  32. package/lib/components/color_picker/color_stops/color_stop_thumb.js +19 -6
  33. package/lib/components/color_picker/color_stops/color_stop_thumb.styles.js +69 -0
  34. package/lib/components/color_picker/color_stops/color_stops.js +25 -14
  35. package/lib/components/color_picker/color_stops/color_stops.styles.js +73 -0
  36. package/lib/components/form/range/range_highlight.styles.js +1 -1
  37. package/lib/components/form/range/range_levels.styles.js +1 -1
  38. package/lib/components/form/range/range_track.js +6 -2
  39. package/lib/components/image/image.a11y.js +61 -0
  40. package/lib/components/key_pad_menu/key_pad_menu.a11y.js +163 -0
  41. package/lib/components/popover/popover.js +2 -2
  42. package/lib/components/table/table_footer_cell.js +1 -1
  43. package/lib/components/table/table_header_cell.js +1 -1
  44. package/lib/components/table/table_row_cell.js +2 -2
  45. package/lib/services/color/manipulation.js +14 -2
  46. package/lib/services/index.js +65 -58
  47. package/optimize/es/components/basic_table/table.a11y.js +128 -0
  48. package/optimize/es/components/color_picker/color_picker.styles.js +16 -0
  49. package/optimize/es/components/color_picker/color_stops/color_stop_thumb.js +19 -7
  50. package/optimize/es/components/color_picker/color_stops/color_stop_thumb.styles.js +59 -0
  51. package/optimize/es/components/color_picker/color_stops/color_stops.js +25 -15
  52. package/optimize/es/components/color_picker/color_stops/color_stops.styles.js +65 -0
  53. package/optimize/es/components/form/range/range_highlight.styles.js +1 -1
  54. package/optimize/es/components/form/range/range_levels.styles.js +1 -1
  55. package/optimize/es/components/form/range/range_track.js +5 -2
  56. package/optimize/es/components/image/image.a11y.js +55 -0
  57. package/optimize/es/components/key_pad_menu/key_pad_menu.a11y.js +148 -0
  58. package/optimize/es/components/popover/popover.js +2 -2
  59. package/optimize/es/services/color/manipulation.js +9 -0
  60. package/optimize/es/services/index.js +11 -11
  61. package/optimize/lib/components/basic_table/table.a11y.js +139 -0
  62. package/optimize/lib/components/color_picker/color_picker.styles.js +26 -0
  63. package/optimize/lib/components/color_picker/color_stops/color_stop_thumb.js +19 -6
  64. package/optimize/lib/components/color_picker/color_stops/color_stop_thumb.styles.js +69 -0
  65. package/optimize/lib/components/color_picker/color_stops/color_stops.js +25 -14
  66. package/optimize/lib/components/color_picker/color_stops/color_stops.styles.js +73 -0
  67. package/optimize/lib/components/form/range/range_highlight.styles.js +1 -1
  68. package/optimize/lib/components/form/range/range_levels.styles.js +1 -1
  69. package/optimize/lib/components/form/range/range_track.js +6 -2
  70. package/optimize/lib/components/image/image.a11y.js +61 -0
  71. package/optimize/lib/components/key_pad_menu/key_pad_menu.a11y.js +163 -0
  72. package/optimize/lib/components/popover/popover.js +2 -2
  73. package/optimize/lib/services/color/manipulation.js +14 -2
  74. package/optimize/lib/services/index.js +65 -58
  75. package/package.json +1 -1
  76. package/src/components/color_picker/_index.scss +0 -1
  77. package/src/themes/amsterdam/overrides/_index.scss +0 -1
  78. package/test-env/components/basic_table/basic_table.js +2 -2
  79. package/test-env/components/basic_table/in_memory_table.js +3 -6
  80. package/test-env/components/basic_table/table.a11y.js +139 -0
  81. package/test-env/components/color_picker/color_picker.styles.js +26 -0
  82. package/test-env/components/color_picker/color_stops/color_stop_thumb.js +19 -6
  83. package/test-env/components/color_picker/color_stops/color_stop_thumb.styles.js +69 -0
  84. package/test-env/components/color_picker/color_stops/color_stops.js +25 -14
  85. package/test-env/components/color_picker/color_stops/color_stops.styles.js +73 -0
  86. package/test-env/components/form/range/range_highlight.styles.js +1 -1
  87. package/test-env/components/form/range/range_levels.styles.js +1 -1
  88. package/test-env/components/form/range/range_track.js +6 -2
  89. package/test-env/components/image/image.a11y.js +61 -0
  90. package/test-env/components/key_pad_menu/key_pad_menu.a11y.js +163 -0
  91. package/test-env/components/popover/popover.js +2 -2
  92. package/test-env/components/table/table_footer_cell.js +1 -1
  93. package/test-env/components/table/table_header_cell.js +1 -1
  94. package/test-env/components/table/table_row_cell.js +2 -2
  95. package/test-env/services/color/manipulation.js +14 -2
  96. package/test-env/services/index.js +65 -58
  97. package/src/components/color_picker/color_stops/_color_stops.scss +0 -101
  98. package/src/components/color_picker/color_stops/_index.scss +0 -1
  99. package/src/themes/amsterdam/overrides/_color_stops.scss +0 -58
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
8
+
9
+ var _react = _interopRequireWildcard(require("react"));
10
+
11
+ var _key_pad_menu = require("./key_pad_menu");
12
+
13
+ var _key_pad_menu_item = require("./key_pad_menu_item");
14
+
15
+ var _icon = require("../icon");
16
+
17
+ var _services = require("../../services");
18
+
19
+ var _react2 = require("@emotion/react");
20
+
21
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
22
+
23
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
24
+
25
+ /*
26
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
27
+ * or more contributor license agreements. Licensed under the Elastic License
28
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
29
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
30
+ * Side Public License, v 1.
31
+ */
32
+ /// <reference types="../../../cypress/support"/>
33
+ var KeyPadMenu = function KeyPadMenu() {
34
+ var keypadButtonId__1 = (0, _services.useGeneratedHtmlId)({
35
+ prefix: 'keypadButton',
36
+ suffix: 'first'
37
+ });
38
+ var keypadButtonId__2 = (0, _services.useGeneratedHtmlId)({
39
+ prefix: 'keypadButton',
40
+ suffix: 'second'
41
+ });
42
+ var keypadButtonId__3 = (0, _services.useGeneratedHtmlId)({
43
+ prefix: 'keypadButton',
44
+ suffix: 'third'
45
+ });
46
+ var keypadButtonId__4 = (0, _services.useGeneratedHtmlId)({
47
+ prefix: 'keypadButton',
48
+ suffix: 'fourth'
49
+ });
50
+ var keypadButtonId__5 = (0, _services.useGeneratedHtmlId)({
51
+ prefix: 'keypadButton',
52
+ suffix: 'fifth'
53
+ });
54
+ var keypadButtonId__6 = (0, _services.useGeneratedHtmlId)({
55
+ prefix: 'keypadButton',
56
+ suffix: 'sixth'
57
+ });
58
+
59
+ var _useState = (0, _react.useState)(keypadButtonId__6),
60
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
61
+ selectedID = _useState2[0],
62
+ setSelectedID = _useState2[1];
63
+
64
+ return (0, _react2.jsx)("div", {
65
+ "aria-label": "Menu keypad"
66
+ }, (0, _react2.jsx)(_key_pad_menu.EuiKeyPadMenu, null, (0, _react2.jsx)(_key_pad_menu_item.EuiKeyPadMenuItem, {
67
+ "data-test-subj": "cy-keypad-button-1",
68
+ id: keypadButtonId__1,
69
+ label: "Button 1",
70
+ isSelected: selectedID === keypadButtonId__1,
71
+ onClick: function onClick() {
72
+ return setSelectedID(keypadButtonId__1);
73
+ }
74
+ }, (0, _react2.jsx)(_icon.EuiIcon, {
75
+ type: "grid",
76
+ size: "l"
77
+ })), (0, _react2.jsx)(_key_pad_menu_item.EuiKeyPadMenuItem, {
78
+ "data-test-subj": "cy-keypad-button-2",
79
+ id: keypadButtonId__2,
80
+ label: "Button 2",
81
+ isSelected: selectedID === keypadButtonId__2,
82
+ onClick: function onClick() {
83
+ return setSelectedID(keypadButtonId__2);
84
+ }
85
+ }, (0, _react2.jsx)(_icon.EuiIcon, {
86
+ type: "grid",
87
+ size: "l"
88
+ })), (0, _react2.jsx)(_key_pad_menu_item.EuiKeyPadMenuItem, {
89
+ "data-test-subj": "cy-keypad-button-3",
90
+ id: keypadButtonId__3,
91
+ label: "Button 3",
92
+ isSelected: selectedID === keypadButtonId__3,
93
+ onClick: function onClick() {
94
+ return setSelectedID(keypadButtonId__3);
95
+ }
96
+ }, (0, _react2.jsx)(_icon.EuiIcon, {
97
+ type: "grid",
98
+ size: "l"
99
+ })), (0, _react2.jsx)(_key_pad_menu_item.EuiKeyPadMenuItem, {
100
+ "data-test-subj": "cy-keypad-link-1",
101
+ id: keypadButtonId__4,
102
+ label: "Link 1",
103
+ href: "#/navigation/key-pad-menu",
104
+ isSelected: selectedID === keypadButtonId__4,
105
+ onClick: function onClick() {
106
+ return setSelectedID(keypadButtonId__4);
107
+ }
108
+ }, (0, _react2.jsx)(_icon.EuiIcon, {
109
+ type: "link",
110
+ size: "l"
111
+ })), (0, _react2.jsx)(_key_pad_menu_item.EuiKeyPadMenuItem, {
112
+ "data-test-subj": "cy-keypad-link-2",
113
+ id: keypadButtonId__5,
114
+ label: "Link 2",
115
+ href: "#/navigation/key-pad-menu",
116
+ isSelected: selectedID === keypadButtonId__5,
117
+ onClick: function onClick() {
118
+ return setSelectedID(keypadButtonId__5);
119
+ }
120
+ }, (0, _react2.jsx)(_icon.EuiIcon, {
121
+ type: "link",
122
+ size: "l"
123
+ })), (0, _react2.jsx)(_key_pad_menu_item.EuiKeyPadMenuItem, {
124
+ "data-test-subj": "cy-keypad-link-3",
125
+ id: keypadButtonId__6,
126
+ label: "Disabled Link 3",
127
+ isDisabled: true,
128
+ isSelected: selectedID === keypadButtonId__6
129
+ }, (0, _react2.jsx)(_icon.EuiIcon, {
130
+ type: "link",
131
+ size: "l"
132
+ }))));
133
+ };
134
+
135
+ beforeEach(function () {
136
+ cy.realMount((0, _react2.jsx)(KeyPadMenu, null));
137
+ cy.get('div[aria-label="Menu keypad"]').should('exist');
138
+ });
139
+ describe('EuiKeyPadMenu', function () {
140
+ describe('Automated accessibility check', function () {
141
+ it('has zero violations on first render', function () {
142
+ cy.checkAxe();
143
+ });
144
+ it('has zero violations on item click', function () {
145
+ cy.get('a[data-test-subj="cy-keypad-link-2"]').realClick();
146
+ cy.get('a[data-test-subj="cy-keypad-link-2"]').should('have.class', 'euiKeyPadMenuItem-isSelected');
147
+ cy.checkAxe();
148
+ });
149
+ it('has zero violations on item keypress', function () {
150
+ cy.repeatRealPress('Tab', 3);
151
+ cy.get('button[data-test-subj="cy-keypad-button-3"]').should('have.focus');
152
+ cy.realPress('Space');
153
+ cy.get('button[data-test-subj="cy-keypad-button-3"]').should('have.class', 'euiKeyPadMenuItem-isSelected');
154
+ cy.checkAxe();
155
+ cy.realPress(['Shift', 'Tab']);
156
+ cy.get('button[data-test-subj="cy-keypad-button-2"]').should('have.focus');
157
+ cy.realPress('Space');
158
+ cy.get('button[data-test-subj="cy-keypad-button-2"]').should('have.class', 'euiKeyPadMenuItem-isSelected');
159
+ cy.get('button[data-test-subj="cy-keypad-button-3"]').should('not.have.class', 'euiKeyPadMenuItem-isSelected');
160
+ cy.checkAxe();
161
+ });
162
+ });
163
+ });
@@ -489,13 +489,13 @@ var EuiPopover = /*#__PURE__*/function (_Component) {
489
489
  panel = (0, _react.jsx)(_portal.EuiPortal, {
490
490
  insert: insert
491
491
  }, (0, _react.jsx)(_focus_trap.EuiFocusTrap, (0, _extends2.default)({
492
- clickOutsideDisables: true
492
+ clickOutsideDisables: true,
493
+ onClickOutside: this.onClickOutside
493
494
  }, focusTrapProps, {
494
495
  returnFocus: returnFocus // Ignore temporary state of indecisive focus
495
496
  ,
496
497
  initialFocus: initialFocus,
497
498
  onDeactivation: onTrapDeactivation,
498
- onClickOutside: this.onClickOutside,
499
499
  onEscapeKey: this.onEscapeKey,
500
500
  disabled: !ownFocus || !this.state.isOpenStable || this.state.isClosing
501
501
  }), (0, _react.jsx)(_popover_panel.EuiPopoverPanel, (0, _extends2.default)({}, panelProps, {
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.transparentize = exports.tintOrShade = exports.tint = exports.shadeOrTint = exports.shade = exports.saturate = exports.lightness = exports.desaturate = exports.darken = void 0;
8
+ exports.transparentize = exports.tintOrShade = exports.tint = exports.shadeOrTint = exports.shade = exports.saturate = exports.lightness = exports.desaturate = exports.darken = exports.brighten = void 0;
9
9
 
10
10
  var _chromaJs = _interopRequireDefault(require("chroma-js"));
11
11
 
@@ -134,5 +134,17 @@ exports.lightness = lightness;
134
134
  var darken = function darken(color, amount) {
135
135
  return (0, _chromaJs.default)(color).darken(amount).hex();
136
136
  };
137
+ /**
138
+ * Returns the brighten value of a color. 0-100
139
+ * @param color - Color to manipulate
140
+ * @param amount - Amount to change in absolute terms. 0-1.
141
+ */
142
+
143
+
144
+ exports.darken = darken;
145
+
146
+ var brighten = function brighten(color, amount) {
147
+ return (0, _chromaJs.default)(color).brighten(amount).hex();
148
+ };
137
149
 
138
- exports.darken = darken;
150
+ exports.brighten = brighten;
@@ -12,83 +12,84 @@ var _exportNames = {
12
12
  comboBoxKeys: true,
13
13
  htmlIdGenerator: true,
14
14
  useGeneratedHtmlId: true,
15
+ CENTER_ALIGNMENT: true,
15
16
  LEFT_ALIGNMENT: true,
16
17
  RIGHT_ALIGNMENT: true,
17
- CENTER_ALIGNMENT: true,
18
- useIsWithinBreakpoints: true,
19
- useIsWithinMaxBreakpoint: true,
20
- useIsWithinMinBreakpoint: true,
21
18
  CurrentEuiBreakpointContext: true,
22
19
  CurrentEuiBreakpointProvider: true,
23
20
  useCurrentEuiBreakpoint: true,
24
- isColorDark: true,
25
- isValidHex: true,
21
+ useIsWithinBreakpoints: true,
22
+ useIsWithinMaxBreakpoint: true,
23
+ useIsWithinMinBreakpoint: true,
24
+ brighten: true,
26
25
  calculateContrast: true,
27
26
  calculateLuminance: true,
28
- hexToHsv: true,
29
- hexToRgb: true,
30
- hsvToHex: true,
31
- hsvToRgb: true,
32
- rgbToHex: true,
33
- rgbToHsv: true,
34
- VISUALIZATION_COLORS: true,
35
- DEFAULT_VISUALIZATION_COLOR: true,
36
27
  colorPalette: true,
37
- euiPaletteForLightBackground: true,
38
- euiPaletteForDarkBackground: true,
28
+ darken: true,
29
+ DEFAULT_VISUALIZATION_COLOR: true,
30
+ desaturate: true,
39
31
  euiPaletteColorBlind: true,
40
32
  euiPaletteColorBlindBehindText: true,
33
+ euiPaletteComplimentary: true,
34
+ euiPaletteCool: true,
35
+ euiPaletteForDarkBackground: true,
36
+ euiPaletteForLightBackground: true,
41
37
  euiPaletteForStatus: true,
42
38
  euiPaletteForTemperature: true,
43
- euiPaletteComplimentary: true,
39
+ euiPaletteGray: true,
44
40
  euiPaletteNegative: true,
45
41
  euiPalettePositive: true,
46
- euiPaletteCool: true,
47
42
  euiPaletteWarm: true,
48
- euiPaletteGray: true,
49
43
  getSteppedGradient: true,
50
- transparentize: true,
51
- tint: true,
52
- shade: true,
53
- tintOrShade: true,
54
- shadeOrTint: true,
55
- saturate: true,
56
- desaturate: true,
44
+ hexToHsv: true,
45
+ hexToRgb: true,
46
+ hsvToHex: true,
47
+ hsvToRgb: true,
48
+ isColorDark: true,
49
+ isValidHex: true,
57
50
  lightness: true,
58
- darken: true,
59
- makeHighContrastColor: true,
60
51
  makeDisabledContrastColor: true,
52
+ makeHighContrastColor: true,
53
+ rgbToHex: true,
54
+ rgbToHsv: true,
55
+ saturate: true,
56
+ shade: true,
57
+ shadeOrTint: true,
58
+ tint: true,
59
+ tintOrShade: true,
60
+ transparentize: true,
61
+ VISUALIZATION_COLORS: true,
61
62
  wcagContrastMin: true,
62
63
  useColorPickerState: true,
63
64
  useColorStopsState: true,
64
65
  copyToClipboard: true,
66
+ dateFormatAliases: true,
65
67
  formatAuto: true,
66
68
  formatBoolean: true,
67
69
  formatDate: true,
68
70
  formatNumber: true,
69
71
  formatText: true,
70
- dateFormatAliases: true,
71
72
  isEvenlyDivisibleBy: true,
72
73
  isWithinRange: true,
73
74
  Pager: true,
75
+ calculatePopoverPosition: true,
76
+ findPopoverPosition: true,
74
77
  Random: true,
75
78
  getSecureRelForTarget: true,
76
- toSentenceCase: true,
77
- toInitials: true,
78
- slugify: true,
79
+ Comparators: true,
79
80
  PropertySortType: true,
80
- SortDirectionType: true,
81
- SortDirection: true,
82
81
  SortableProperties: true,
83
- Comparators: true,
84
- calculatePopoverPosition: true,
85
- findPopoverPosition: true,
82
+ SortDirection: true,
83
+ SortDirectionType: true,
84
+ slugify: true,
85
+ toInitials: true,
86
+ toSentenceCase: true,
87
+ throttle: true,
86
88
  getDurationAndPerformOnFrame: true,
87
89
  getTransitionTimings: true,
88
90
  getWaitDuration: true,
89
91
  performOnFrame: true,
90
- EuiWindowEvent: true,
91
- throttle: true
92
+ EuiWindowEvent: true
92
93
  };
93
94
  Object.defineProperty(exports, "CENTER_ALIGNMENT", {
94
95
  enumerable: true,
@@ -186,6 +187,12 @@ Object.defineProperty(exports, "accessibleClickKeys", {
186
187
  return _accessibility.accessibleClickKeys;
187
188
  }
188
189
  });
190
+ Object.defineProperty(exports, "brighten", {
191
+ enumerable: true,
192
+ get: function get() {
193
+ return _color.brighten;
194
+ }
195
+ });
189
196
  Object.defineProperty(exports, "calculateContrast", {
190
197
  enumerable: true,
191
198
  get: function get() {
@@ -630,24 +637,6 @@ Object.keys(_findElement).forEach(function (key) {
630
637
 
631
638
  var _format = require("./format");
632
639
 
633
- var _number = require("./number");
634
-
635
- var _paging = require("./paging");
636
-
637
- var _random = require("./random");
638
-
639
- var _security = require("./security");
640
-
641
- var _string = require("./string");
642
-
643
- var _sort = require("./sort");
644
-
645
- var _popover = require("./popover");
646
-
647
- var _transition = require("./transition");
648
-
649
- var _window_event = require("./window_event");
650
-
651
640
  var _hooks = require("./hooks");
652
641
 
653
642
  Object.keys(_hooks).forEach(function (key) {
@@ -662,7 +651,19 @@ Object.keys(_hooks).forEach(function (key) {
662
651
  });
663
652
  });
664
653
 
665
- var _throttle = require("./throttle");
654
+ var _number = require("./number");
655
+
656
+ var _paging = require("./paging");
657
+
658
+ var _popover = require("./popover");
659
+
660
+ var _random = require("./random");
661
+
662
+ var _security = require("./security");
663
+
664
+ var _sort = require("./sort");
665
+
666
+ var _string = require("./string");
666
667
 
667
668
  var _theme = require("./theme");
668
669
 
@@ -678,6 +679,12 @@ Object.keys(_theme).forEach(function (key) {
678
679
  });
679
680
  });
680
681
 
682
+ var _throttle = require("./throttle");
683
+
684
+ var _transition = require("./transition");
685
+
686
+ var _window_event = require("./window_event");
687
+
681
688
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
682
689
 
683
690
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@elastic/eui",
3
3
  "description": "Elastic UI Component Library",
4
- "version": "72.0.0",
4
+ "version": "72.1.0",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "main": "lib",
7
7
  "module": "es",
@@ -3,6 +3,5 @@
3
3
  @import 'color_picker_swatch';
4
4
  @import 'hue';
5
5
  @import 'saturation';
6
- @import 'color_stops/index';
7
6
  @import 'color_palette_picker/index';
8
7
  @import 'color_palette_display/index';
@@ -1,4 +1,3 @@
1
- @import 'color_stops';
2
1
  @import 'combo_box';
3
2
  @import 'data_grid';
4
3
  @import 'date_picker';
@@ -1228,7 +1228,7 @@ EuiBasicTable.propTypes = {
1228
1228
  /**
1229
1229
  * Defines the horizontal alignment of the column
1230
1230
  */
1231
- align: _propTypes.default.oneOf(["left", "right", "center"]),
1231
+ align: _propTypes.default.any,
1232
1232
 
1233
1233
  /**
1234
1234
  * Indicates whether this column should truncate its content when it doesn't fit
@@ -1287,7 +1287,7 @@ EuiBasicTable.propTypes = {
1287
1287
  */
1288
1288
  truncateText: _propTypes.default.bool,
1289
1289
  isExpander: _propTypes.default.bool,
1290
- align: _propTypes.default.oneOf(["left", "right", "center"]),
1290
+ align: _propTypes.default.any,
1291
1291
 
1292
1292
  /**
1293
1293
  * Disables the user's ability to change the sort but still shows the current direction
@@ -671,7 +671,7 @@ EuiInMemoryTable.propTypes = {
671
671
  /**
672
672
  * Defines the horizontal alignment of the column
673
673
  */
674
- align: _propTypes.default.oneOf(["left", "right", "center"]),
674
+ align: _propTypes.default.any,
675
675
 
676
676
  /**
677
677
  * Indicates whether this column should truncate its content when it doesn't fit
@@ -730,7 +730,7 @@ EuiInMemoryTable.propTypes = {
730
730
  */
731
731
  truncateText: _propTypes.default.bool,
732
732
  isExpander: _propTypes.default.bool,
733
- align: _propTypes.default.oneOf(["left", "right", "center"]),
733
+ align: _propTypes.default.any,
734
734
 
735
735
  /**
736
736
  * Disables the user's ability to change the sort but still shows the current direction
@@ -1185,10 +1185,7 @@ EuiInMemoryTable.propTypes = {
1185
1185
  "aria-label": _propTypes.default.string
1186
1186
  }).isRequired])]),
1187
1187
  sorting: _propTypes.default.oneOfType([_propTypes.default.bool.isRequired, _propTypes.default.shape({
1188
- sort: _propTypes.default.shape({
1189
- field: _propTypes.default.string.isRequired,
1190
- direction: _propTypes.default.oneOfType([_propTypes.default.any.isRequired, _propTypes.default.any.isRequired]).isRequired
1191
- }).isRequired
1188
+ sort: _propTypes.default.any.isRequired
1192
1189
  }).isRequired]),
1193
1190
 
1194
1191
  /**
@@ -0,0 +1,139 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _react = _interopRequireDefault(require("react"));
6
+
7
+ var _in_memory_table = require("./in_memory_table");
8
+
9
+ var _health = require("../health");
10
+
11
+ var _link = require("../link");
12
+
13
+ var _services = require("../../services");
14
+
15
+ var _data_store = require("../../../src-docs/src/views/tables/data_store");
16
+
17
+ var _react2 = require("@emotion/react");
18
+
19
+ /*
20
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
21
+ * or more contributor license agreements. Licensed under the Elastic License
22
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
23
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
24
+ * Side Public License, v 1.
25
+ */
26
+ /// <reference types="../../../cypress/support"/>
27
+ var store = (0, _data_store.createDataStore)();
28
+
29
+ var InMemoryTable = function InMemoryTable() {
30
+ var columns = [{
31
+ field: 'firstName',
32
+ name: 'First Name',
33
+ sortable: true,
34
+ truncateText: true
35
+ }, {
36
+ field: 'lastName',
37
+ name: 'Last Name',
38
+ truncateText: true
39
+ }, {
40
+ field: 'github',
41
+ name: 'Github',
42
+ render: function render(username) {
43
+ return (0, _react2.jsx)(_link.EuiLink, {
44
+ href: "https://github.com/".concat(username),
45
+ target: "_blank"
46
+ }, username);
47
+ }
48
+ }, {
49
+ field: 'dateOfBirth',
50
+ name: 'Date of Birth',
51
+ dataType: 'date',
52
+ render: function render(date) {
53
+ return (0, _services.formatDate)(date, 'dobLong');
54
+ },
55
+ sortable: true
56
+ }, {
57
+ field: 'nationality',
58
+ name: 'Nationality',
59
+ render: function render(countryCode) {
60
+ var country = store.getCountry(countryCode);
61
+ return "".concat(country.flag, " ").concat(country.name);
62
+ }
63
+ }, {
64
+ field: 'online',
65
+ name: 'Online',
66
+ dataType: 'boolean',
67
+ render: function render(online) {
68
+ var color = online ? 'success' : 'danger';
69
+ var label = online ? 'Online' : 'Offline';
70
+ return (0, _react2.jsx)(_health.EuiHealth, {
71
+ color: color
72
+ }, label);
73
+ },
74
+ sortable: true
75
+ }];
76
+ var sorting = {
77
+ sort: {
78
+ field: 'dateOfBirth',
79
+ direction: 'desc'
80
+ }
81
+ };
82
+ return (0, _react2.jsx)(_in_memory_table.EuiInMemoryTable, {
83
+ "data-test-subj": "cy-in-memory-table",
84
+ tableCaption: "Demo of EuiInMemoryTable",
85
+ items: store.users,
86
+ columns: columns,
87
+ pagination: true,
88
+ sorting: sorting
89
+ });
90
+ };
91
+
92
+ beforeEach(function () {
93
+ cy.viewport(1024, 768); // medium breakpoint
94
+
95
+ cy.realMount((0, _react2.jsx)(InMemoryTable, null));
96
+ cy.get('div[data-test-subj="cy-in-memory-table"]').should('exist');
97
+ });
98
+ describe('EuiInMemoryTable', function () {
99
+ describe('Automated accessibility check', function () {
100
+ it('has zero violations on first render', function () {
101
+ cy.checkAxe();
102
+ });
103
+ it('has zero violations on pagination click', function () {
104
+ cy.get('a[data-test-subj="pagination-button-1"]').realClick();
105
+ cy.get('button[data-test-subj="pagination-button-1"]').should('be.disabled');
106
+ cy.checkAxe();
107
+ });
108
+ it('has zero violations after number of rows is increased', function () {
109
+ cy.get('button[data-test-subj="tablePaginationPopoverButton"]').realClick();
110
+ cy.get('div[data-popover-open="true"]').should('exist');
111
+ cy.get('button[data-test-subj="tablePagination-25-rows"]').realClick();
112
+ cy.get('table.euiTable').find('tr.euiTableRow').should('have.length', 20);
113
+ cy.checkAxe();
114
+ });
115
+ it('has zero violations after sorting on a column', function () {
116
+ cy.realPress('Tab');
117
+ cy.get('button[data-test-subj="tableHeaderSortButton"]').first().should('have.focus');
118
+ cy.realPress('Enter');
119
+ cy.get('tbody tr.euiTableRow span.euiTableCellContent__text').first().contains('Another very long first name which will wrap or be truncated');
120
+ });
121
+ it('has zero violations when number of rows is increased by keyboard', function () {
122
+ cy.repeatRealPress('Tab', 14);
123
+ cy.get('button[data-test-subj="tablePaginationPopoverButton"]').should('have.focus').realPress('Space');
124
+ cy.get('div[data-popover-open="true"]').should('exist');
125
+ cy.get('div[data-popover-open="true"]').should('have.focus');
126
+ cy.repeatRealPress('Tab'); // Switched to Tab from ArrowDown because of flaky test runs
127
+
128
+ cy.get('button[data-test-subj="tablePagination-25-rows"]').realPress('Space');
129
+ cy.get('table.euiTable').find('tr.euiTableRow').should('have.length', 20);
130
+ cy.checkAxe();
131
+ });
132
+ it('has zero violations when pagination is pressed', function () {
133
+ cy.repeatRealPress('Tab', 15);
134
+ cy.get('a[data-test-subj="pagination-button-1"]').should('have.focus').realPress('Enter');
135
+ cy.get('button[data-test-subj="pagination-button-1"]').should('be.disabled');
136
+ cy.checkAxe();
137
+ });
138
+ });
139
+ });
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiColorPickerVariables = void 0;
7
+
8
+ var _global_styling = require("../../global_styling");
9
+
10
+ /*
11
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
12
+ * or more contributor license agreements. Licensed under the Elastic License
13
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
14
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
15
+ * Side Public License, v 1.
16
+ */
17
+ var euiColorPickerVariables = function euiColorPickerVariables(euiThemeContext) {
18
+ var euiTheme = euiThemeContext.euiTheme;
19
+ return {
20
+ width: (0, _global_styling.mathWithUnits)([euiTheme.size.l, euiTheme.size.s], function (x, y) {
21
+ return x * 5 + y * 4;
22
+ })
23
+ };
24
+ };
25
+
26
+ exports.euiColorPickerVariables = euiColorPickerVariables;