@elastic/eui 77.1.0 → 77.2.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 (138) hide show
  1. package/README.md +30 -29
  2. package/dist/eui_theme_dark.css +70 -158
  3. package/dist/eui_theme_dark.min.css +1 -1
  4. package/dist/eui_theme_light.css +70 -158
  5. package/dist/eui_theme_light.min.css +1 -1
  6. package/es/components/basic_table/basic_table.a11y.js +202 -0
  7. package/es/components/basic_table/{table.a11y.js → in_memory_table.a11y.js} +1 -1
  8. package/es/components/date_picker/date_picker.js +23 -15
  9. package/es/components/date_picker/date_picker_range.js +36 -42
  10. package/es/components/date_picker/super_date_picker/super_date_picker.js +99 -84
  11. package/es/components/form/field_number/field_number.js +39 -8
  12. package/es/components/form/field_text/field_text.js +1 -1
  13. package/es/components/form/form_control_layout/form_control_layout.js +67 -30
  14. package/es/components/form/form_control_layout/form_control_layout_delimited.js +31 -11
  15. package/es/components/form/form_control_layout/form_control_layout_icons.js +12 -20
  16. package/es/components/form/range/dual_range.js +2 -4
  17. package/es/components/form/range/range.js +0 -2
  18. package/es/components/form/range/range_input.js +54 -13
  19. package/es/components/form/validatable_control/validatable_control.js +15 -5
  20. package/es/components/index.js +0 -1
  21. package/es/components/search_bar/query/ast_to_es_query_dsl.js +6 -1
  22. package/es/components/search_bar/query/ast_to_es_query_string.js +3 -0
  23. package/es/components/suggest/suggest.a11y.js +70 -0
  24. package/es/components/table/table.a11y.js +75 -0
  25. package/eui.d.ts +55 -173
  26. package/i18ntokens.json +26 -44
  27. package/lib/components/basic_table/basic_table.a11y.js +194 -0
  28. package/lib/components/basic_table/{table.a11y.js → in_memory_table.a11y.js} +2 -2
  29. package/lib/components/date_picker/date_picker.js +23 -15
  30. package/lib/components/date_picker/date_picker_range.js +35 -41
  31. package/lib/components/date_picker/super_date_picker/super_date_picker.js +99 -84
  32. package/lib/components/form/field_number/field_number.js +42 -8
  33. package/lib/components/form/field_text/field_text.js +1 -1
  34. package/lib/components/form/form_control_layout/form_control_layout.js +67 -35
  35. package/lib/components/form/form_control_layout/form_control_layout_delimited.js +31 -11
  36. package/lib/components/form/form_control_layout/form_control_layout_icons.js +11 -19
  37. package/lib/components/form/range/dual_range.js +2 -4
  38. package/lib/components/form/range/range.js +0 -2
  39. package/lib/components/form/range/range_input.js +52 -11
  40. package/lib/components/form/validatable_control/validatable_control.js +14 -12
  41. package/lib/components/index.js +0 -11
  42. package/lib/components/search_bar/query/ast_to_es_query_dsl.js +6 -1
  43. package/lib/components/search_bar/query/ast_to_es_query_string.js +3 -0
  44. package/lib/components/suggest/suggest.a11y.js +73 -0
  45. package/lib/components/table/table.a11y.js +78 -0
  46. package/optimize/es/components/basic_table/basic_table.a11y.js +194 -0
  47. package/optimize/es/components/basic_table/{table.a11y.js → in_memory_table.a11y.js} +1 -1
  48. package/optimize/es/components/date_picker/date_picker.js +17 -14
  49. package/optimize/es/components/date_picker/date_picker_range.js +20 -14
  50. package/optimize/es/components/date_picker/super_date_picker/super_date_picker.js +99 -84
  51. package/optimize/es/components/form/field_number/field_number.js +34 -8
  52. package/optimize/es/components/form/field_text/field_text.js +1 -1
  53. package/optimize/es/components/form/form_control_layout/form_control_layout.js +67 -30
  54. package/optimize/es/components/form/form_control_layout/form_control_layout_delimited.js +31 -11
  55. package/optimize/es/components/form/form_control_layout/form_control_layout_icons.js +10 -20
  56. package/optimize/es/components/form/range/dual_range.js +2 -4
  57. package/optimize/es/components/form/range/range.js +0 -2
  58. package/optimize/es/components/form/range/range_input.js +49 -12
  59. package/optimize/es/components/form/validatable_control/validatable_control.js +10 -5
  60. package/optimize/es/components/index.js +0 -1
  61. package/optimize/es/components/search_bar/query/ast_to_es_query_dsl.js +6 -1
  62. package/optimize/es/components/search_bar/query/ast_to_es_query_string.js +3 -0
  63. package/optimize/es/components/suggest/suggest.a11y.js +70 -0
  64. package/optimize/es/components/table/table.a11y.js +75 -0
  65. package/optimize/lib/components/basic_table/basic_table.a11y.js +188 -0
  66. package/{test-env/components/basic_table/table.a11y.js → optimize/lib/components/basic_table/in_memory_table.a11y.js} +2 -2
  67. package/optimize/lib/components/date_picker/date_picker.js +17 -14
  68. package/optimize/lib/components/date_picker/date_picker_range.js +19 -13
  69. package/optimize/lib/components/date_picker/super_date_picker/super_date_picker.js +99 -84
  70. package/optimize/lib/components/form/field_number/field_number.js +37 -8
  71. package/optimize/lib/components/form/field_text/field_text.js +1 -1
  72. package/optimize/lib/components/form/form_control_layout/form_control_layout.js +67 -35
  73. package/optimize/lib/components/form/form_control_layout/form_control_layout_delimited.js +31 -11
  74. package/optimize/lib/components/form/form_control_layout/form_control_layout_icons.js +9 -19
  75. package/optimize/lib/components/form/range/dual_range.js +2 -4
  76. package/optimize/lib/components/form/range/range.js +0 -2
  77. package/optimize/lib/components/form/range/range_input.js +47 -10
  78. package/optimize/lib/components/form/validatable_control/validatable_control.js +10 -4
  79. package/optimize/lib/components/index.js +0 -11
  80. package/optimize/lib/components/search_bar/query/ast_to_es_query_dsl.js +6 -1
  81. package/optimize/lib/components/search_bar/query/ast_to_es_query_string.js +3 -0
  82. package/optimize/lib/components/suggest/suggest.a11y.js +73 -0
  83. package/optimize/lib/components/table/table.a11y.js +78 -0
  84. package/package.json +1 -1
  85. package/src/components/date_picker/_date_picker_range.scss +0 -60
  86. package/src/components/date_picker/super_date_picker/_super_date_picker.scss +23 -11
  87. package/src/components/date_picker/super_date_picker/_variables.scss +3 -0
  88. package/src/components/date_picker/super_date_picker/date_popover/_date_popover_button.scss +5 -7
  89. package/src/components/form/form_control_layout/_form_control_layout.scss +2 -2
  90. package/src/components/form/form_control_layout/_form_control_layout_delimited.scss +12 -36
  91. package/src/components/form/form_control_layout/_form_control_layout_icons.scss +27 -6
  92. package/src/themes/amsterdam/overrides/_date_picker.scss +0 -14
  93. package/src/themes/amsterdam/overrides/_index.scss +0 -1
  94. package/test-env/components/basic_table/basic_table.a11y.js +188 -0
  95. package/{optimize/lib/components/basic_table/table.a11y.js → test-env/components/basic_table/in_memory_table.a11y.js} +2 -2
  96. package/test-env/components/date_picker/date_picker.js +23 -15
  97. package/test-env/components/date_picker/date_picker_range.js +35 -41
  98. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +99 -84
  99. package/test-env/components/form/field_number/field_number.js +37 -8
  100. package/test-env/components/form/field_text/field_text.js +1 -1
  101. package/test-env/components/form/form_control_layout/form_control_layout.js +68 -35
  102. package/test-env/components/form/form_control_layout/form_control_layout_delimited.js +31 -11
  103. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +11 -19
  104. package/test-env/components/form/range/dual_range.js +2 -4
  105. package/test-env/components/form/range/range.js +0 -2
  106. package/test-env/components/form/range/range_input.js +47 -11
  107. package/test-env/components/form/validatable_control/validatable_control.js +9 -4
  108. package/test-env/components/index.js +0 -11
  109. package/test-env/components/search_bar/query/ast_to_es_query_dsl.js +6 -1
  110. package/test-env/components/search_bar/query/ast_to_es_query_string.js +3 -0
  111. package/test-env/components/suggest/suggest.a11y.js +73 -0
  112. package/test-env/components/table/table.a11y.js +78 -0
  113. package/es/components/inline_edit/index.js +0 -10
  114. package/es/components/inline_edit/inline_edit.styles.js +0 -15
  115. package/es/components/inline_edit/inline_edit_form.js +0 -190
  116. package/es/components/inline_edit/inline_edit_text.js +0 -97
  117. package/es/components/inline_edit/inline_edit_title.js +0 -105
  118. package/lib/components/inline_edit/index.js +0 -19
  119. package/lib/components/inline_edit/inline_edit.styles.js +0 -22
  120. package/lib/components/inline_edit/inline_edit_form.js +0 -193
  121. package/lib/components/inline_edit/inline_edit_text.js +0 -97
  122. package/lib/components/inline_edit/inline_edit_title.js +0 -106
  123. package/optimize/es/components/inline_edit/index.js +0 -10
  124. package/optimize/es/components/inline_edit/inline_edit.styles.js +0 -15
  125. package/optimize/es/components/inline_edit/inline_edit_form.js +0 -133
  126. package/optimize/es/components/inline_edit/inline_edit_text.js +0 -52
  127. package/optimize/es/components/inline_edit/inline_edit_title.js +0 -56
  128. package/optimize/lib/components/inline_edit/index.js +0 -19
  129. package/optimize/lib/components/inline_edit/inline_edit.styles.js +0 -22
  130. package/optimize/lib/components/inline_edit/inline_edit_form.js +0 -144
  131. package/optimize/lib/components/inline_edit/inline_edit_text.js +0 -52
  132. package/optimize/lib/components/inline_edit/inline_edit_title.js +0 -57
  133. package/src/themes/amsterdam/overrides/_date_popover_button.scss +0 -14
  134. package/test-env/components/inline_edit/index.js +0 -19
  135. package/test-env/components/inline_edit/inline_edit.styles.js +0 -22
  136. package/test-env/components/inline_edit/inline_edit_form.js +0 -196
  137. package/test-env/components/inline_edit/inline_edit_text.js +0 -96
  138. package/test-env/components/inline_edit/inline_edit_title.js +0 -105
@@ -0,0 +1,194 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+ var _react = _interopRequireWildcard(require("react"));
5
+ var _basic_table = require("./basic_table");
6
+ var _button = require("../button");
7
+ var _health = require("../health");
8
+ var _link = require("../link");
9
+ var _accessibility = require("../accessibility");
10
+ var _services = require("../../services");
11
+ var _faker = require("@faker-js/faker");
12
+ var _react2 = require("@emotion/react");
13
+ 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); }
14
+ 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; }
15
+ 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; }
16
+ 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; }
17
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
18
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
19
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
20
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
21
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
22
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
23
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
24
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
25
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
26
+ var users = [];
27
+ for (var i = 0; i < 20; i++) {
28
+ users.push({
29
+ id: i + 1,
30
+ firstName: _faker.faker.name.firstName(),
31
+ lastName: _faker.faker.name.lastName(),
32
+ github: _faker.faker.internet.userName(),
33
+ dateOfBirth: _faker.faker.date.past(),
34
+ online: _faker.faker.datatype.boolean(),
35
+ location: {
36
+ city: _faker.faker.address.city(),
37
+ country: _faker.faker.address.country()
38
+ }
39
+ });
40
+ }
41
+ var columns = [{
42
+ field: 'firstName',
43
+ name: 'First Name',
44
+ sortable: true,
45
+ truncateText: true,
46
+ mobileOptions: {
47
+ render: function render(user) {
48
+ return (0, _react2.jsx)("span", null, user.firstName, " ", user.lastName);
49
+ },
50
+ header: false,
51
+ truncateText: false,
52
+ enlarge: true,
53
+ width: '100%'
54
+ }
55
+ }, {
56
+ field: 'lastName',
57
+ name: 'Last Name',
58
+ truncateText: true,
59
+ mobileOptions: {
60
+ show: false
61
+ }
62
+ }, {
63
+ field: 'github',
64
+ name: 'Github',
65
+ render: function render(username) {
66
+ return (0, _react2.jsx)(_link.EuiLink, {
67
+ href: "#",
68
+ target: "_blank"
69
+ }, username);
70
+ }
71
+ }, {
72
+ field: 'dateOfBirth',
73
+ name: 'Date of Birth',
74
+ dataType: 'date',
75
+ render: function render(dateOfBirth) {
76
+ return (0, _services.formatDate)(dateOfBirth, 'dobLong');
77
+ },
78
+ sortable: true
79
+ }, {
80
+ field: 'location',
81
+ name: 'Location',
82
+ truncateText: true,
83
+ textOnly: true,
84
+ render: function render(location) {
85
+ return "".concat(location.city, ", ").concat(location.country);
86
+ }
87
+ }, {
88
+ field: 'online',
89
+ name: 'Online',
90
+ dataType: 'boolean',
91
+ render: function render(online) {
92
+ var color = online ? 'success' : 'danger';
93
+ var label = online ? 'Online' : 'Offline';
94
+ return (0, _react2.jsx)(_health.EuiHealth, {
95
+ color: color
96
+ }, label);
97
+ },
98
+ sortable: true,
99
+ mobileOptions: {
100
+ show: false
101
+ }
102
+ }];
103
+ describe('EuiTable', function () {
104
+ var BasicTable = function BasicTable() {
105
+ return (0, _react2.jsx)(_basic_table.EuiBasicTable, {
106
+ tableCaption: "Demo of EuiBasicTable",
107
+ columns: columns,
108
+ items: users,
109
+ "data-test-subj": "cy-basic-table"
110
+ });
111
+ };
112
+ describe('Basic table', function () {
113
+ describe('Automated accessibility check', function () {
114
+ it('has zero violations on render', function () {
115
+ cy.viewport(1024, 768); // medium breakpoint
116
+ cy.realMount((0, _react2.jsx)(BasicTable, null));
117
+ cy.get('[data-test-subj="cy-basic-table"]').should('exist');
118
+ cy.checkAxe();
119
+ });
120
+ });
121
+ });
122
+ describe('Mobile basic table', function () {
123
+ describe('Automated accessibility check', function () {
124
+ it('has zero violations on render', function () {
125
+ cy.viewport(375, 667); // small breakpoint
126
+ cy.realMount((0, _react2.jsx)(BasicTable, null));
127
+ cy.get('[data-test-subj="cy-basic-table"]').should('exist');
128
+ cy.checkAxe();
129
+ });
130
+ });
131
+ });
132
+ describe('Expandable rows', function () {
133
+ var ExpandableRowTable = function ExpandableRowTable() {
134
+ var _useState = (0, _react.useState)({}),
135
+ _useState2 = _slicedToArray(_useState, 2),
136
+ itemIdToExpandedRowMap = _useState2[0],
137
+ setItemIdToExpandedRowMap = _useState2[1];
138
+ var toggleDetails = function toggleDetails(user) {
139
+ var itemIdToExpandedRowMapValues = _objectSpread({}, itemIdToExpandedRowMap);
140
+ if (itemIdToExpandedRowMapValues[user.id]) {
141
+ delete itemIdToExpandedRowMapValues[user.id];
142
+ } else {
143
+ itemIdToExpandedRowMapValues[user.id] = (0, _react2.jsx)("div", null, (0, _react2.jsx)("p", null, "Location: ".concat(user.location.city)), (0, _react2.jsx)("p", null, "This person is online."));
144
+ }
145
+ setItemIdToExpandedRowMap(itemIdToExpandedRowMapValues);
146
+ };
147
+ var columnsWithExpandingRowToggle = [].concat(columns, [{
148
+ align: 'right',
149
+ width: '40px',
150
+ isExpander: true,
151
+ name: (0, _react2.jsx)(_accessibility.EuiScreenReaderOnly, null, (0, _react2.jsx)("span", null, "Expand rows")),
152
+ render: function render(user) {
153
+ var itemIdToExpandedRowMapValues = _objectSpread({}, itemIdToExpandedRowMap);
154
+ return (0, _react2.jsx)(_button.EuiButtonIcon, {
155
+ id: user.id.toString(),
156
+ onClick: function onClick() {
157
+ return toggleDetails(user);
158
+ },
159
+ "aria-label": itemIdToExpandedRowMapValues[user.id] ? 'Collapse' : 'Expand',
160
+ iconType: itemIdToExpandedRowMapValues[user.id] ? 'arrowDown' : 'arrowRight'
161
+ });
162
+ }
163
+ }]);
164
+ return (0, _react2.jsx)(_basic_table.EuiBasicTable, {
165
+ tableCaption: "Demo of EuiBasicTable with expanding rows",
166
+ itemIdToExpandedRowMap: itemIdToExpandedRowMap,
167
+ isExpandable: true,
168
+ columns: columnsWithExpandingRowToggle,
169
+ items: users,
170
+ itemId: "id",
171
+ "data-test-subj": "cy-expandable-row-table"
172
+ });
173
+ };
174
+ beforeEach(function () {
175
+ cy.viewport(1024, 768); // medium breakpoint
176
+ cy.realMount((0, _react2.jsx)(ExpandableRowTable, null));
177
+ cy.get('[data-test-subj="cy-expandable-row-table"]').should('exist');
178
+ });
179
+ describe('Automated accessibility check', function () {
180
+ it('has zero violations on render', function () {
181
+ cy.checkAxe();
182
+ });
183
+ });
184
+ describe('Keyboard accessibility', function () {
185
+ it('has zero violations after expanding a row', function () {
186
+ cy.repeatRealPress('Tab');
187
+ cy.get('button#1').should('have.focus');
188
+ cy.realPress('Enter');
189
+ cy.get('tr.euiTableRow-isExpandedRow div.euiTableCellContent').should('exist');
190
+ cy.checkAxe();
191
+ });
192
+ });
193
+ });
194
+ });
@@ -2,7 +2,7 @@
2
2
 
3
3
  var _react = _interopRequireDefault(require("react"));
4
4
  var _faker = require("@faker-js/faker");
5
- var _index = require("./index");
5
+ var _ = require(".");
6
6
  var _health = require("../health");
7
7
  var _link = require("../link");
8
8
  var _services = require("../../services");
@@ -99,7 +99,7 @@ var columns = [{
99
99
  }];
100
100
  describe('EuiInMemoryTable', function () {
101
101
  var mountTable = function mountTable() {
102
- cy.realMount((0, _react2.jsx)(_index.EuiInMemoryTable, {
102
+ cy.realMount((0, _react2.jsx)(_.EuiInMemoryTable, {
103
103
  "data-test-subj": "cy-in-memory-table",
104
104
  tableCaption: "Demo of EuiInMemoryTable",
105
105
  items: users,
@@ -14,7 +14,7 @@ var _services = require("../../services");
14
14
  var _context = require("../context");
15
15
  var _reactDatepicker = require("./react-datepicker");
16
16
  var _react2 = require("@emotion/react");
17
- var _excluded = ["adjustDateOnChange", "calendarClassName", "className", "customInput", "dateFormat", "dayClassName", "disabled", "excludeDates", "filterDate", "fullWidth", "iconType", "injectTimes", "inline", "inputRef", "isInvalid", "isLoading", "locale", "maxDate", "maxTime", "minDate", "minTime", "onChange", "onClear", "openToDate", "placeholder", "popperClassName", "popoverPlacement", "selected", "shadow", "shouldCloseOnSelect", "showIcon", "showTimeSelect", "showTimeSelectOnly", "timeFormat", "utcOffset"];
17
+ var _excluded = ["adjustDateOnChange", "calendarClassName", "className", "controlOnly", "customInput", "dateFormat", "dayClassName", "disabled", "excludeDates", "filterDate", "fullWidth", "iconType", "injectTimes", "inline", "inputRef", "isInvalid", "isLoading", "locale", "maxDate", "maxTime", "minDate", "minTime", "onChange", "onClear", "openToDate", "placeholder", "popperClassName", "popoverPlacement", "selected", "shadow", "shouldCloseOnSelect", "showIcon", "showTimeSelect", "showTimeSelectOnly", "timeFormat", "utcOffset"];
18
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
19
  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); }
20
20
  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; }
@@ -63,6 +63,7 @@ var EuiDatePicker = function EuiDatePicker(_ref) {
63
63
  adjustDateOnChange = _ref$adjustDateOnChan === void 0 ? true : _ref$adjustDateOnChan,
64
64
  calendarClassName = _ref.calendarClassName,
65
65
  className = _ref.className,
66
+ controlOnly = _ref.controlOnly,
66
67
  customInput = _ref.customInput,
67
68
  _ref$dateFormat = _ref.dateFormat,
68
69
  dateFormat = _ref$dateFormat === void 0 ? euiDatePickerDefaultDateFormat : _ref$dateFormat,
@@ -108,7 +109,7 @@ var EuiDatePicker = function EuiDatePicker(_ref) {
108
109
  'euiDatePicker--shadow': shadow,
109
110
  'euiDatePicker--inline': inline
110
111
  });
111
- var numIconsClass = (0, _num_icons.getFormControlClassNameForIconCount)({
112
+ var numIconsClass = controlOnly ? false : (0, _num_icons.getFormControlClassNameForIconCount)({
112
113
  isInvalid: isInvalid,
113
114
  isLoading: isLoading
114
115
  });
@@ -149,17 +150,7 @@ var EuiDatePicker = function EuiDatePicker(_ref) {
149
150
  controlEl: inputValidityRef
150
151
  });
151
152
  var inputRefs = (0, _services.useCombinedRefs)([inputRef, setInputValidityRef]);
152
- return (0, _react2.jsx)("span", {
153
- className: classes
154
- }, (0, _react2.jsx)(_form.EuiFormControlLayout, {
155
- icon: optionalIcon,
156
- fullWidth: fullWidth,
157
- clear: selected && onClear ? {
158
- onClick: onClear
159
- } : undefined,
160
- isLoading: isLoading,
161
- isInvalid: isInvalid
162
- }, (0, _react2.jsx)(_context.EuiI18nConsumer, null, function (_ref2) {
153
+ var control = (0, _react2.jsx)(_context.EuiI18nConsumer, null, function (_ref2) {
163
154
  var contextLocale = _ref2.locale;
164
155
  return (0, _react2.jsx)(_reactDatepicker.ReactDatePicker, _extends({
165
156
  adjustDateOnChange: adjustDateOnChange,
@@ -195,7 +186,19 @@ var EuiDatePicker = function EuiDatePicker(_ref) {
195
186
  accessibleMode: true,
196
187
  popperPlacement: popoverPlacement
197
188
  }, rest));
198
- })));
189
+ });
190
+ if (controlOnly) return control;
191
+ return (0, _react2.jsx)("span", {
192
+ className: classes
193
+ }, (0, _react2.jsx)(_form.EuiFormControlLayout, {
194
+ icon: optionalIcon,
195
+ fullWidth: fullWidth,
196
+ clear: selected && onClear ? {
197
+ onClick: onClear
198
+ } : undefined,
199
+ isLoading: isLoading,
200
+ isInvalid: isInvalid
201
+ }, control));
199
202
  };
200
203
  exports.EuiDatePicker = EuiDatePicker;
201
204
  EuiDatePicker.propTypes = {
@@ -257,5 +260,10 @@ EuiDatePicker.propTypes = {
257
260
  *
258
261
  * **Use [EuiPopover](/#/layout/popover) values**: 'upCenter', 'upLeft', 'upRight', downCenter', 'downLeft', 'downRight', 'leftCenter', 'leftUp', 'leftDown', 'rightCenter', 'rightUp', 'rightDown'.
259
262
  */
260
- popoverPlacement: _propTypes.default.any
263
+ popoverPlacement: _propTypes.default.any,
264
+ /**
265
+ * Completely removes form control layout wrapper and ignores
266
+ * iconType. Best used inside EuiFormControlLayoutDelimited.
267
+ */
268
+ controlOnly: _propTypes.default.bool
261
269
  };
@@ -8,9 +8,9 @@ exports.EuiDatePickerRange = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
10
  var _classnames = _interopRequireDefault(require("classnames"));
11
- var _icon = require("../icon");
11
+ var _form = require("../form");
12
12
  var _react2 = require("@emotion/react");
13
- var _excluded = ["children", "className", "startDateControl", "endDateControl", "iconType", "fullWidth", "isCustom", "readOnly", "isInvalid", "disabled", "onFocus", "onBlur"];
13
+ var _excluded = ["children", "className", "startDateControl", "endDateControl", "iconType", "fullWidth", "isCustom", "readOnly", "isInvalid", "disabled", "onFocus", "onBlur", "append", "prepend"];
14
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
15
  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); }
16
16
  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; }
@@ -31,6 +31,8 @@ var EuiDatePickerRange = function EuiDatePickerRange(_ref) {
31
31
  disabled = _ref.disabled,
32
32
  _onFocus = _ref.onFocus,
33
33
  _onBlur = _ref.onBlur,
34
+ append = _ref.append,
35
+ prepend = _ref.prepend,
34
36
  rest = _objectWithoutProperties(_ref, _excluded);
35
37
  var classes = (0, _classnames.default)('euiDatePickerRange', {
36
38
  'euiDatePickerRange--fullWidth': fullWidth,
@@ -42,8 +44,8 @@ var EuiDatePickerRange = function EuiDatePickerRange(_ref) {
42
44
  var endControl = endDateControl;
43
45
  if (!isCustom) {
44
46
  startControl = /*#__PURE__*/(0, _react.cloneElement)(startDateControl, {
45
- iconType: typeof iconType === 'boolean' ? undefined : iconType,
46
- showIcon: !!iconType,
47
+ controlOnly: true,
48
+ showIcon: false,
47
49
  fullWidth: fullWidth,
48
50
  readOnly: readOnly,
49
51
  disabled: disabled || startDateControl.props.disabled,
@@ -61,6 +63,7 @@ var EuiDatePickerRange = function EuiDatePickerRange(_ref) {
61
63
  }
62
64
  });
63
65
  endControl = /*#__PURE__*/(0, _react.cloneElement)(endDateControl, {
66
+ controlOnly: true,
64
67
  showIcon: false,
65
68
  fullWidth: fullWidth,
66
69
  readOnly: readOnly,
@@ -80,15 +83,18 @@ var EuiDatePickerRange = function EuiDatePickerRange(_ref) {
80
83
  }
81
84
  });
82
85
  }
83
- var delimiter = (0, _react2.jsx)("span", {
84
- className: "euiDatePickerRange__delimeter"
85
- }, (0, _react2.jsx)(_icon.EuiIcon, {
86
- color: isInvalid ? 'danger' : 'subdued',
87
- type: "sortRight"
88
- }));
89
- return (0, _react2.jsx)("div", _extends({
90
- className: classes
91
- }, rest), children ? children : (0, _react2.jsx)(_react.Fragment, null, startControl, delimiter, endControl));
86
+ return (0, _react2.jsx)(_form.EuiFormControlLayoutDelimited, _extends({
87
+ icon: iconType === true ? 'calendar' : iconType || undefined,
88
+ className: classes,
89
+ startControl: startControl,
90
+ endControl: endControl,
91
+ fullWidth: fullWidth,
92
+ readOnly: readOnly,
93
+ isDisabled: disabled,
94
+ isInvalid: isInvalid,
95
+ append: append,
96
+ prepend: prepend
97
+ }, rest));
92
98
  };
93
99
  exports.EuiDatePickerRange = EuiDatePickerRange;
94
100
  EuiDatePickerRange.propTypes = {
@@ -97,47 +103,35 @@ EuiDatePickerRange.propTypes = {
97
103
  "data-test-subj": _propTypes.default.string,
98
104
  css: _propTypes.default.any,
99
105
  /**
100
- * Including any children will replace all innards with the provided children
101
- */
106
+ * Including any children will replace all innards with the provided children
107
+ */
102
108
  children: _propTypes.default.node,
103
109
  /**
104
- * The end date `EuiDatePicker` element
105
- */
110
+ * The end date `EuiDatePicker` element
111
+ */
106
112
  endDateControl: _propTypes.default.element.isRequired,
107
113
  /**
108
- * The start date `EuiDatePicker` element
109
- */
114
+ * The start date `EuiDatePicker` element
115
+ */
110
116
  startDateControl: _propTypes.default.element.isRequired,
111
117
  /**
112
- * Pass either an icon type or set to `false` to remove icon entirely
113
- */
118
+ * Pass either an icon type or set to `false` to remove icon entirely
119
+ */
114
120
  iconType: _propTypes.default.oneOfType([_propTypes.default.bool.isRequired, _propTypes.default.oneOfType([_propTypes.default.oneOf(["accessibility", "addDataApp", "advancedSettingsApp", "agentApp", "aggregate", "analyzeEvent", "annotation", "apmApp", "apmTrace", "appSearchApp", "apps", "arrowDown", "arrowLeft", "arrowRight", "arrowUp", "arrowStart", "arrowEnd", "article", "asterisk", "auditbeatApp", "beaker", "bell", "bellSlash", "beta", "bolt", "boxesHorizontal", "boxesVertical", "branch", "branchUser", "broom", "brush", "bug", "bullseye", "calendar", "canvasApp", "casesApp", "check", "checkInCircleFilled", "cheer", "classificationJob", "clock", "cloudDrizzle", "cloudStormy", "cloudSunny", "cluster", "codeApp", "color", "compute", "console", "consoleApp", "container", "continuityAbove", "continuityAboveBelow", "continuityBelow", "continuityWithin", "controlsHorizontal", "controlsVertical", "copy", "copyClipboard", "createAdvancedJob", "createMultiMetricJob", "createPopulationJob", "createSingleMetricJob", "cross", "crossClusterReplicationApp", "crosshairs", "currency", "cut", "dashboardApp", "dataVisualizer", "database", "desktop", "devToolsApp", "discoverApp", "discuss", "document", "documentEdit", "documentation", "documents", "dot", "dotInCircle", "doubleArrowLeft", "doubleArrowRight", "download", "editorAlignCenter", "editorAlignLeft", "editorAlignRight", "editorBold", "editorChecklist", "editorCodeBlock", "editorComment", "editorDistributeHorizontal", "editorDistributeVertical", "editorHeading", "editorItalic", "editorItemAlignBottom", "editorItemAlignCenter", "editorItemAlignLeft", "editorItemAlignMiddle", "editorItemAlignRight", "editorItemAlignTop", "editorLink", "editorOrderedList", "editorPositionBottomLeft", "editorPositionBottomRight", "editorPositionTopLeft", "editorPositionTopRight", "editorRedo", "editorStrike", "editorTable", "editorUnderline", "editorUndo", "editorUnorderedList", "email", "empty", "emsApp", "eql", "eraser", "error", "exit", "expand", "expandMini", "exportAction", "eye", "eyeClosed", "faceHappy", "faceNeutral", "faceSad", "filebeatApp", "filter", "filterExclude", "filterIgnore", "filterInclude", "filterInCircle", "flag", "fleetApp", "fold", "folderCheck", "folderClosed", "folderExclamation", "folderOpen", "frameNext", "framePrevious", "fullScreen", "fullScreenExit", "function", "gear", "gisApp", "glasses", "globe", "grab", "grabHorizontal", "graphApp", "grid", "grokApp", "heart", "heartbeatApp", "heatmap", "help", "home", "iInCircle", "image", "importAction", "indexClose", "indexEdit", "indexFlush", "indexManagementApp", "indexMapping", "indexOpen", "indexPatternApp", "indexRollupApp", "indexRuntime", "indexSettings", "indexTemporary", "infinity", "inputOutput", "inspect", "invert", "ip", "keyboard", "kqlField", "kqlFunction", "kqlOperand", "kqlSelector", "kqlValue", "kubernetesNode", "kubernetesPod", "launch", "layers", "lensApp", "lettering", "lineDashed", "lineDotted", "lineSolid", "link", "list", "listAdd", "lock", "lockOpen", "logoAWS", "logoAWSMono", "logoAerospike", "logoApache", "logoAppSearch", "logoAzure", "logoAzureMono", "logoBeats", "logoBusinessAnalytics", "logoCeph", "logoCloud", "logoCloudEnterprise", "logoCode", "logoCodesandbox", "logoCouchbase", "logoDocker", "logoDropwizard", "logoElastic", "logoElasticStack", "logoElasticsearch", "logoEnterpriseSearch", "logoEtcd", "logoGCP", "logoGCPMono", "logoGithub", "logoGmail", "logoGolang", "logoGoogleG", "logoHAproxy", "logoIBM", "logoIBMMono", "logoKafka", "logoKibana", "logoKubernetes", "logoLogging", "logoLogstash", "logoMaps", "logoMemcached", "logoMetrics", "logoMongodb", "logoMySQL", "logoNginx", "logoObservability", "logoOsquery", "logoPhp", "logoPostgres", "logoPrometheus", "logoRabbitmq", "logoRedis", "logoSecurity", "logoSiteSearch", "logoSketch", "logoSlack", "logoUptime", "logoWebhook", "logoWindows", "logoWorkplaceSearch", "logsApp", "logstashFilter", "logstashIf", "logstashInput", "logstashOutput", "logstashQueue", "machineLearningApp", "magnet", "magnifyWithExclamation", "magnifyWithMinus", "magnifyWithPlus", "managementApp", "mapMarker", "memory", "menu", "menuDown", "menuLeft", "menuRight", "menuUp", "merge", "metricbeatApp", "metricsApp", "minimize", "minus", "minusInCircle", "minusInCircleFilled", "mobile", "monitoringApp", "moon", "namespace", "nested", "node", "notebookApp", "number", "offline", "online", "outlierDetectionJob", "package", "packetbeatApp", "pageSelect", "pagesSelect", "paperClip", "partial", "pause", "payment", "pencil", "percent", "pin", "pinFilled", "pipelineApp", "pivot", "play", "playFilled", "plus", "plusInCircle", "plusInCircleFilled", "popout", "push", "questionInCircle", "quote", "recentlyViewedApp", "refresh", "regressionJob", "reporter", "reportingApp", "returnKey", "save", "savedObjectsApp", "scale", "search", "searchProfilerApp", "securityAnalyticsApp", "securityApp", "securitySignal", "securitySignalDetected", "securitySignalResolved", "sessionViewer", "shard", "share", "snowflake", "sortAscending", "sortDescending", "sortDown", "sortLeft", "sortRight", "sortUp", "sortable", "spaces", "spacesApp", "sqlApp", "starEmpty", "starEmptySpace", "starFilled", "starFilledSpace", "starMinusEmpty", "starMinusFilled", "starPlusEmpty", "starPlusFilled", "stats", "stop", "stopFilled", "stopSlash", "storage", "string", "submodule", "sun", "swatchInput", "symlink", "tableDensityCompact", "tableDensityExpanded", "tableDensityNormal", "tableOfContents", "tag", "tear", "temperature", "timeline", "timelionApp", "timeRefresh", "timeslider", "training", "trash", "unfold", "unlink", "upgradeAssistantApp", "uptimeApp", "user", "userAvatar", "users", "usersRolesApp", "vector", "videoPlayer", "visArea", "visAreaStacked", "visBarHorizontal", "visBarHorizontalStacked", "visBarVertical", "visBarVerticalStacked", "visGauge", "visGoal", "visLine", "visMapCoordinate", "visMapRegion", "visMetric", "visPie", "visTable", "visTagCloud", "visText", "visTimelion", "visVega", "visVisualBuilder", "visualizeApp", "warning", "alert", "watchesApp", "wordWrap", "wordWrapDisabled", "workplaceSearchApp", "wrench", "tokenAlias", "tokenAnnotation", "tokenArray", "tokenBinary", "tokenBoolean", "tokenClass", "tokenCompletionSuggester", "tokenConstant", "tokenDate", "tokenDenseVector", "tokenElement", "tokenEnum", "tokenEnumMember", "tokenEvent", "tokenException", "tokenField", "tokenFile", "tokenFlattened", "tokenFunction", "tokenGeo", "tokenHistogram", "tokenInterface", "tokenIP", "tokenJoin", "tokenKey", "tokenKeyword", "tokenMethod", "tokenMetricCounter", "tokenMetricGauge", "tokenModule", "tokenNamespace", "tokenNested", "tokenNull", "tokenNumber", "tokenObject", "tokenOperator", "tokenPackage", "tokenParameter", "tokenPercolator", "tokenProperty", "tokenRange", "tokenRankFeature", "tokenRankFeatures", "tokenRepo", "tokenSearchType", "tokenShape", "tokenString", "tokenStruct", "tokenSymbol", "tokenTag", "tokenText", "tokenTokenCount", "tokenVariable"]).isRequired, _propTypes.default.string.isRequired, _propTypes.default.elementType.isRequired]).isRequired]),
115
121
  /**
116
- * Won't apply any additional props to start and end date components
117
- */
122
+ * Won't apply any additional props to start and end date components
123
+ */
118
124
  isCustom: _propTypes.default.bool,
119
125
  /**
120
- * Will color the range delimiter the `danger` color and pass through to each control
121
- */
122
- isInvalid: _propTypes.default.bool,
123
- /**
124
- * Passes through to each control
125
- */
126
+ * Passes through to each control
127
+ */
126
128
  disabled: _propTypes.default.bool,
127
129
  /**
128
- * Passes through to each control
129
- */
130
- readOnly: _propTypes.default.bool,
131
- /**
132
- * Passes through to each control
133
- */
134
- fullWidth: _propTypes.default.bool,
135
- /**
136
- * Triggered whenever the start or end controls are blurred
137
- */
130
+ * Triggered whenever the start or end controls are blurred
131
+ */
138
132
  onBlur: _propTypes.default.any,
139
133
  /**
140
- * Triggered whenever the start or end controls are focused
141
- */
134
+ * Triggered whenever the start or end controls are focused
135
+ */
142
136
  onFocus: _propTypes.default.any
143
137
  };