@elastic/eui 70.0.0 → 70.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.
- package/dist/eui_theme_dark.css +11 -180
- package/dist/eui_theme_dark.min.css +1 -1
- package/dist/eui_theme_light.css +11 -180
- package/dist/eui_theme_light.min.css +1 -1
- package/es/components/accessibility/screen_reader_only/screen_reader_only.js +1 -1
- package/es/components/accessibility/screen_reader_only/screen_reader_only.styles.js +1 -1
- package/es/components/accordion/accordion.a11y.js +35 -0
- package/es/components/badge/beta_badge/beta_badge.js +6 -6
- package/es/components/basic_table/in_memory_table.js +8 -0
- package/es/components/button/button_display/_button_display.js +7 -6
- package/es/components/button/button_display/_button_display.styles.js +4 -4
- package/es/components/button/button_display/_button_display_content.js +6 -9
- package/es/components/button/button_display/_button_display_content.styles.js +3 -41
- package/es/components/card/card.js +13 -31
- package/es/components/card/card.styles.js +15 -3
- package/es/components/card/card_select/card_select.styles.js +4 -4
- package/es/components/card/checkable_card/checkable_card.js +3 -2
- package/es/components/context_menu/context_menu_panel.a11y.js +34 -0
- package/es/components/datagrid/controls/column_selector.js +1 -1
- package/es/components/datagrid/controls/column_sorting.js +1 -1
- package/es/components/datagrid/controls/data_grid_toolbar.js +6 -2
- package/es/components/datagrid/controls/index.js +1 -0
- package/es/components/datagrid/controls/keyboard_shortcuts.js +191 -0
- package/es/components/datagrid/data_grid.js +12 -2
- package/es/components/date_picker/super_date_picker/super_date_picker.js +22 -4
- package/es/components/header/header_links/header_links.js +6 -0
- package/es/components/loading/loading_spinner.js +14 -3
- package/es/components/loading/loading_spinner.styles.js +11 -7
- package/es/components/modal/modal.js +17 -2
- package/es/components/page_template/page_template.js +6 -9
- package/es/components/popover/popover.js +13 -3
- package/es/components/popover/popover_arrow/_popover_arrow.js +1 -0
- package/es/components/popover/popover_panel/_popover_panel.js +8 -2
- package/es/components/popover/popover_panel/_popover_panel.styles.js +15 -1
- package/es/components/search_bar/search_bar.js +39 -5
- package/es/components/search_bar/search_box.js +37 -4
- package/es/components/selectable/selectable.a11y.js +118 -0
- package/es/components/selectable/selectable.js +9 -6
- package/es/components/tabs/tab.js +31 -7
- package/es/components/tabs/tab.styles.js +63 -0
- package/es/components/tabs/tabbed_content/tabbed_content.js +17 -1
- package/es/components/tabs/tabs.js +20 -14
- package/es/components/tabs/tabs.styles.js +21 -0
- package/es/components/tour/tour_step.js +6 -0
- package/es/services/string/to_initials.js +1 -1
- package/eui.d.ts +305 -198
- package/i18ntokens.json +442 -10
- package/lib/components/accessibility/screen_reader_only/screen_reader_only.js +1 -1
- package/lib/components/accessibility/screen_reader_only/screen_reader_only.styles.js +1 -1
- package/lib/components/accordion/accordion.a11y.js +44 -0
- package/lib/components/badge/beta_badge/beta_badge.js +6 -10
- package/lib/components/basic_table/in_memory_table.js +8 -0
- package/lib/components/button/button_display/_button_display.js +7 -6
- package/lib/components/button/button_display/_button_display.styles.js +4 -4
- package/lib/components/button/button_display/_button_display_content.js +6 -9
- package/lib/components/button/button_display/_button_display_content.styles.js +10 -40
- package/lib/components/card/card.js +14 -33
- package/lib/components/card/card.styles.js +15 -3
- package/lib/components/card/card_select/card_select.styles.js +4 -4
- package/lib/components/card/checkable_card/checkable_card.js +3 -2
- package/lib/components/context_menu/context_menu_panel.a11y.js +42 -0
- package/lib/components/datagrid/controls/column_selector.js +1 -1
- package/lib/components/datagrid/controls/column_sorting.js +1 -1
- package/lib/components/datagrid/controls/data_grid_toolbar.js +7 -2
- package/lib/components/datagrid/controls/index.js +8 -0
- package/lib/components/datagrid/controls/keyboard_shortcuts.js +208 -0
- package/lib/components/datagrid/data_grid.js +11 -1
- package/lib/components/date_picker/super_date_picker/super_date_picker.js +22 -4
- package/lib/components/header/header_links/header_links.js +6 -0
- package/lib/components/loading/loading_spinner.js +13 -2
- package/lib/components/loading/loading_spinner.styles.js +14 -6
- package/lib/components/modal/modal.js +23 -2
- package/lib/components/page_template/page_template.js +6 -9
- package/lib/components/popover/popover.js +13 -3
- package/lib/components/popover/popover_arrow/_popover_arrow.js +1 -0
- package/lib/components/popover/popover_panel/_popover_panel.js +8 -2
- package/lib/components/popover/popover_panel/_popover_panel.styles.js +16 -1
- package/lib/components/search_bar/search_bar.js +40 -5
- package/lib/components/search_bar/search_box.js +38 -4
- package/lib/components/selectable/selectable.a11y.js +122 -0
- package/lib/components/selectable/selectable.js +9 -6
- package/lib/components/tabs/tab.js +31 -6
- package/lib/components/tabs/tab.styles.js +69 -0
- package/lib/components/tabs/tabbed_content/tabbed_content.js +17 -1
- package/lib/components/tabs/tabs.js +24 -14
- package/lib/components/tabs/tabs.styles.js +32 -0
- package/lib/services/string/to_initials.js +1 -1
- package/optimize/es/components/accessibility/screen_reader_only/screen_reader_only.styles.js +1 -1
- package/optimize/es/components/accordion/accordion.a11y.js +35 -0
- package/optimize/es/components/badge/beta_badge/beta_badge.js +6 -6
- package/optimize/es/components/button/button_display/_button_display.js +6 -5
- package/optimize/es/components/button/button_display/_button_display.styles.js +4 -4
- package/optimize/es/components/button/button_display/_button_display_content.js +6 -9
- package/optimize/es/components/button/button_display/_button_display_content.styles.js +3 -41
- package/optimize/es/components/card/card.js +12 -30
- package/optimize/es/components/card/card.styles.js +15 -3
- package/optimize/es/components/card/card_select/card_select.styles.js +4 -4
- package/optimize/es/components/card/checkable_card/checkable_card.js +3 -2
- package/optimize/es/components/context_menu/context_menu_panel.a11y.js +34 -0
- package/optimize/es/components/datagrid/controls/column_selector.js +1 -1
- package/optimize/es/components/datagrid/controls/column_sorting.js +1 -1
- package/optimize/es/components/datagrid/controls/data_grid_toolbar.js +6 -2
- package/optimize/es/components/datagrid/controls/index.js +1 -0
- package/optimize/es/components/datagrid/controls/keyboard_shortcuts.js +181 -0
- package/optimize/es/components/datagrid/data_grid.js +6 -2
- package/optimize/es/components/date_picker/super_date_picker/super_date_picker.js +12 -4
- package/optimize/es/components/loading/loading_spinner.js +13 -3
- package/optimize/es/components/loading/loading_spinner.styles.js +11 -7
- package/optimize/es/components/modal/modal.js +17 -2
- package/optimize/es/components/page_template/page_template.js +6 -9
- package/optimize/es/components/popover/popover.js +7 -3
- package/optimize/es/components/popover/popover_arrow/_popover_arrow.js +1 -0
- package/optimize/es/components/popover/popover_panel/_popover_panel.js +6 -1
- package/optimize/es/components/popover/popover_panel/_popover_panel.styles.js +15 -1
- package/optimize/es/components/search_bar/search_bar.js +31 -5
- package/optimize/es/components/search_bar/search_box.js +29 -3
- package/optimize/es/components/selectable/selectable.a11y.js +107 -0
- package/optimize/es/components/selectable/selectable.js +9 -6
- package/optimize/es/components/tabs/tab.js +19 -7
- package/optimize/es/components/tabs/tab.styles.js +63 -0
- package/optimize/es/components/tabs/tabs.js +20 -14
- package/optimize/es/components/tabs/tabs.styles.js +21 -0
- package/optimize/es/services/string/to_initials.js +1 -1
- package/optimize/lib/components/accessibility/screen_reader_only/screen_reader_only.styles.js +1 -1
- package/optimize/lib/components/accordion/accordion.a11y.js +44 -0
- package/optimize/lib/components/badge/beta_badge/beta_badge.js +6 -13
- package/optimize/lib/components/button/button_display/_button_display.js +7 -6
- package/optimize/lib/components/button/button_display/_button_display.styles.js +4 -4
- package/optimize/lib/components/button/button_display/_button_display_content.js +6 -9
- package/optimize/lib/components/button/button_display/_button_display_content.styles.js +10 -40
- package/optimize/lib/components/card/card.js +13 -32
- package/optimize/lib/components/card/card.styles.js +15 -3
- package/optimize/lib/components/card/card_select/card_select.styles.js +4 -4
- package/optimize/lib/components/card/checkable_card/checkable_card.js +3 -2
- package/optimize/lib/components/context_menu/context_menu_panel.a11y.js +42 -0
- package/optimize/lib/components/datagrid/controls/column_selector.js +1 -1
- package/optimize/lib/components/datagrid/controls/column_sorting.js +1 -1
- package/optimize/lib/components/datagrid/controls/data_grid_toolbar.js +7 -2
- package/optimize/lib/components/datagrid/controls/index.js +8 -0
- package/optimize/lib/components/datagrid/controls/keyboard_shortcuts.js +207 -0
- package/optimize/lib/components/datagrid/data_grid.js +5 -1
- package/optimize/lib/components/date_picker/super_date_picker/super_date_picker.js +12 -4
- package/optimize/lib/components/loading/loading_spinner.js +14 -2
- package/optimize/lib/components/loading/loading_spinner.styles.js +14 -6
- package/optimize/lib/components/modal/modal.js +22 -2
- package/optimize/lib/components/page_template/page_template.js +6 -9
- package/optimize/lib/components/popover/popover.js +7 -3
- package/optimize/lib/components/popover/popover_arrow/_popover_arrow.js +1 -0
- package/optimize/lib/components/popover/popover_panel/_popover_panel.js +6 -1
- package/optimize/lib/components/popover/popover_panel/_popover_panel.styles.js +16 -1
- package/optimize/lib/components/search_bar/search_bar.js +31 -5
- package/optimize/lib/components/search_bar/search_box.js +30 -3
- package/optimize/lib/components/selectable/selectable.a11y.js +122 -0
- package/optimize/lib/components/selectable/selectable.js +9 -6
- package/optimize/lib/components/tabs/tab.js +19 -6
- package/optimize/lib/components/tabs/tab.styles.js +69 -0
- package/optimize/lib/components/tabs/tabs.js +24 -14
- package/optimize/lib/components/tabs/tabs.styles.js +32 -0
- package/optimize/lib/services/string/to_initials.js +1 -1
- package/package.json +5 -4
- package/src/components/datagrid/_index.scss +1 -0
- package/src/components/datagrid/controls/_data_grid_keyboard_shortcuts.scss +17 -0
- package/src/components/datagrid/controls/_data_grid_toolbar.scss +0 -8
- package/src/components/index.scss +0 -1
- package/src/components/modal/_modal.scss +3 -1
- package/src/themes/amsterdam/overrides/_index.scss +0 -1
- package/test-env/components/accessibility/screen_reader_only/screen_reader_only.js +1 -1
- package/test-env/components/accessibility/screen_reader_only/screen_reader_only.styles.js +1 -1
- package/test-env/components/accordion/accordion.a11y.js +44 -0
- package/test-env/components/badge/beta_badge/beta_badge.js +6 -13
- package/test-env/components/basic_table/in_memory_table.js +8 -0
- package/test-env/components/button/button_display/_button_display.js +7 -6
- package/test-env/components/button/button_display/_button_display.styles.js +4 -4
- package/test-env/components/button/button_display/_button_display_content.js +6 -9
- package/test-env/components/button/button_display/_button_display_content.styles.js +10 -40
- package/test-env/components/card/card.js +14 -33
- package/test-env/components/card/card.styles.js +15 -3
- package/test-env/components/card/card_select/card_select.styles.js +4 -4
- package/test-env/components/card/checkable_card/checkable_card.js +3 -2
- package/test-env/components/context_menu/context_menu_panel.a11y.js +42 -0
- package/test-env/components/datagrid/controls/column_selector.js +1 -1
- package/test-env/components/datagrid/controls/column_sorting.js +1 -1
- package/test-env/components/datagrid/controls/data_grid_toolbar.js +7 -2
- package/test-env/components/datagrid/controls/index.js +8 -0
- package/test-env/components/datagrid/controls/keyboard_shortcuts.js +207 -0
- package/test-env/components/datagrid/data_grid.js +11 -1
- package/test-env/components/date_picker/super_date_picker/super_date_picker.js +22 -4
- package/test-env/components/header/header_links/header_links.js +6 -0
- package/test-env/components/loading/loading_spinner.js +14 -2
- package/test-env/components/loading/loading_spinner.styles.js +14 -6
- package/test-env/components/modal/modal.js +22 -2
- package/test-env/components/page_template/page_template.js +6 -9
- package/test-env/components/popover/popover.js +13 -3
- package/test-env/components/popover/popover_arrow/_popover_arrow.js +1 -0
- package/test-env/components/popover/popover_panel/_popover_panel.js +8 -2
- package/test-env/components/popover/popover_panel/_popover_panel.styles.js +16 -1
- package/test-env/components/search_bar/search_bar.js +39 -5
- package/test-env/components/search_bar/search_box.js +38 -4
- package/test-env/components/selectable/selectable.a11y.js +122 -0
- package/test-env/components/selectable/selectable.js +9 -6
- package/test-env/components/tabs/tab.js +31 -6
- package/test-env/components/tabs/tab.styles.js +69 -0
- package/test-env/components/tabs/tabbed_content/tabbed_content.js +17 -1
- package/test-env/components/tabs/tabs.js +24 -14
- package/test-env/components/tabs/tabs.styles.js +32 -0
- package/test-env/services/string/to_initials.js +1 -1
- package/src/components/tabs/_index.scss +0 -1
- package/src/components/tabs/_tabs.scss +0 -110
- package/src/themes/amsterdam/overrides/_tabs.scss +0 -80
|
@@ -9,6 +9,8 @@ var _react = require("@emotion/react");
|
|
|
9
9
|
|
|
10
10
|
var _mixins = require("../../../themes/amsterdam/global_styling/mixins");
|
|
11
11
|
|
|
12
|
+
var _functions = require("../../../themes/amsterdam/global_styling/functions");
|
|
13
|
+
|
|
12
14
|
var _global_styling = require("../../../global_styling");
|
|
13
15
|
|
|
14
16
|
/*
|
|
@@ -28,7 +30,8 @@ var translateDistance = 's';
|
|
|
28
30
|
*/
|
|
29
31
|
|
|
30
32
|
var euiPopoverPanelStyles = function euiPopoverPanelStyles(euiThemeContext) {
|
|
31
|
-
var euiTheme = euiThemeContext.euiTheme
|
|
33
|
+
var euiTheme = euiThemeContext.euiTheme,
|
|
34
|
+
colorMode = euiThemeContext.colorMode;
|
|
32
35
|
return {
|
|
33
36
|
// Base
|
|
34
37
|
euiPopover__panel: /*#__PURE__*/(0, _react.css)("position:absolute;", (0, _global_styling.logicalCSS)('min-width', "".concat(euiTheme.base * 7, "px")), ";", (0, _global_styling.logicalCSS)('max-width', "calc(100vw - ".concat(euiTheme.size.xl, ")")), ";backface-visibility:hidden;pointer-events:none;opacity:0;transform:translateY(0) translateX(0) translateZ(0);", (0, _mixins.euiShadowMedium)(euiThemeContext, {
|
|
@@ -49,6 +52,18 @@ var euiPopoverPanelStyles = function euiPopoverPanelStyles(euiThemeContext) {
|
|
|
49
52
|
// Satisfies TS
|
|
50
53
|
left: /*#__PURE__*/(0, _react.css)(";label:left;"),
|
|
51
54
|
right: /*#__PURE__*/(0, _react.css)(";label:right;")
|
|
55
|
+
},
|
|
56
|
+
// Overrides for drag & drop contexts within popovers. This is required because
|
|
57
|
+
// the fixed positions of drag and drop don't work inside of transformed elements
|
|
58
|
+
hasDragDrop: {
|
|
59
|
+
hasDragDrop: /*#__PURE__*/(0, _react.css)("transform:none;filter:none;", (0, _mixins.euiShadowMedium)(euiThemeContext, {
|
|
60
|
+
property: 'box-shadow'
|
|
61
|
+
}), ";;label:hasDragDrop;"),
|
|
62
|
+
// The offset transforms must be recreated in margins
|
|
63
|
+
top: /*#__PURE__*/(0, _react.css)("margin-block-start:", euiTheme.size[translateDistance], ";;label:top;"),
|
|
64
|
+
bottom: /*#__PURE__*/(0, _react.css)("margin-block-start:-", euiTheme.size[translateDistance], ";.euiPopover__arrow{filter:drop-shadow(\n 0 -6px 6px ", (0, _functions.getShadowColor)(euiTheme.colors.shadow, 0.12, colorMode), "\n );};label:bottom;"),
|
|
65
|
+
left: /*#__PURE__*/(0, _react.css)("margin-inline-start:", euiTheme.size[translateDistance], ";.euiPopover__arrow{filter:drop-shadow(\n 6px 0 6px ", (0, _functions.getShadowColor)(euiTheme.colors.shadow, 0.12, colorMode), "\n );};label:left;"),
|
|
66
|
+
right: /*#__PURE__*/(0, _react.css)("margin-inline-start:-", euiTheme.size[translateDistance], ";.euiPopover__arrow{filter:drop-shadow(\n -6px 0 6px ", (0, _functions.getShadowColor)(euiTheme.colors.shadow, 0.12, colorMode), "\n );};label:right;")
|
|
52
67
|
}
|
|
53
68
|
};
|
|
54
69
|
};
|
|
@@ -45,6 +45,8 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
45
45
|
|
|
46
46
|
var _react = _interopRequireWildcard(require("react"));
|
|
47
47
|
|
|
48
|
+
var _accessibility = require("../../services/accessibility");
|
|
49
|
+
|
|
48
50
|
var _predicate = require("../../services/predicate");
|
|
49
51
|
|
|
50
52
|
var _flex = require("../flex");
|
|
@@ -63,6 +65,10 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
63
65
|
|
|
64
66
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(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; }
|
|
65
67
|
|
|
68
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
69
|
+
|
|
70
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
71
|
+
|
|
66
72
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
67
73
|
|
|
68
74
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
@@ -97,6 +103,7 @@ var EuiSearchBar = /*#__PURE__*/function (_Component) {
|
|
|
97
103
|
|
|
98
104
|
(0, _classCallCheck2.default)(this, EuiSearchBar);
|
|
99
105
|
_this = _super.call(this, props);
|
|
106
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "hintId", (0, _accessibility.htmlIdGenerator)('__hint')());
|
|
100
107
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onSearch", function (queryText) {
|
|
101
108
|
try {
|
|
102
109
|
var query = parseQuery(queryText, _this.props);
|
|
@@ -152,7 +159,8 @@ var EuiSearchBar = /*#__PURE__*/function (_Component) {
|
|
|
152
159
|
_this.state = {
|
|
153
160
|
query: _query,
|
|
154
161
|
queryText: _query.text,
|
|
155
|
-
error: null
|
|
162
|
+
error: null,
|
|
163
|
+
isHintVisible: false
|
|
156
164
|
};
|
|
157
165
|
return _this;
|
|
158
166
|
}
|
|
@@ -214,10 +222,15 @@ var EuiSearchBar = /*#__PURE__*/function (_Component) {
|
|
|
214
222
|
}, {
|
|
215
223
|
key: "render",
|
|
216
224
|
value: function render() {
|
|
225
|
+
var _hint$popoverProps$is,
|
|
226
|
+
_hint$popoverProps,
|
|
227
|
+
_this2 = this;
|
|
228
|
+
|
|
217
229
|
var _this$state = this.state,
|
|
218
230
|
query = _this$state.query,
|
|
219
231
|
queryText = _this$state.queryText,
|
|
220
|
-
error = _this$state.error
|
|
232
|
+
error = _this$state.error,
|
|
233
|
+
isHintVisibleState = _this$state.isHintVisible;
|
|
221
234
|
var _this$props = this.props,
|
|
222
235
|
_this$props$box = _this$props.box;
|
|
223
236
|
_this$props$box = _this$props$box === void 0 ? {
|
|
@@ -227,7 +240,8 @@ var EuiSearchBar = /*#__PURE__*/function (_Component) {
|
|
|
227
240
|
box = (0, _objectWithoutProperties2.default)(_this$props$box, _excluded),
|
|
228
241
|
filters = _this$props.filters,
|
|
229
242
|
toolsLeft = _this$props.toolsLeft,
|
|
230
|
-
toolsRight = _this$props.toolsRight
|
|
243
|
+
toolsRight = _this$props.toolsRight,
|
|
244
|
+
hint = _this$props.hint;
|
|
231
245
|
var toolsLeftEl = this.renderTools(toolsLeft);
|
|
232
246
|
var filtersBar = !filters ? undefined : (0, _react2.jsx)(_flex.EuiFlexItem, {
|
|
233
247
|
className: "euiSearchBar__filtersHolder",
|
|
@@ -238,6 +252,7 @@ var EuiSearchBar = /*#__PURE__*/function (_Component) {
|
|
|
238
252
|
onChange: this.onFiltersChange
|
|
239
253
|
}));
|
|
240
254
|
var toolsRightEl = this.renderTools(toolsRight);
|
|
255
|
+
var isHintVisible = (_hint$popoverProps$is = hint === null || hint === void 0 ? void 0 : (_hint$popoverProps = hint.popoverProps) === null || _hint$popoverProps === void 0 ? void 0 : _hint$popoverProps.isOpen) !== null && _hint$popoverProps$is !== void 0 ? _hint$popoverProps$is : isHintVisibleState;
|
|
241
256
|
return (0, _react2.jsx)(_flex.EuiFlexGroup, {
|
|
242
257
|
gutterSize: "m",
|
|
243
258
|
alignItems: "center",
|
|
@@ -249,7 +264,17 @@ var EuiSearchBar = /*#__PURE__*/function (_Component) {
|
|
|
249
264
|
query: queryText,
|
|
250
265
|
onSearch: this.onSearch,
|
|
251
266
|
isInvalid: error != null,
|
|
252
|
-
title: error ? error.message : undefined
|
|
267
|
+
title: error ? error.message : undefined,
|
|
268
|
+
"aria-describedby": isHintVisible ? "".concat(this.hintId) : undefined,
|
|
269
|
+
hint: hint ? _objectSpread({
|
|
270
|
+
isVisible: isHintVisible,
|
|
271
|
+
setIsVisible: function setIsVisible(isVisible) {
|
|
272
|
+
_this2.setState({
|
|
273
|
+
isHintVisible: isVisible
|
|
274
|
+
});
|
|
275
|
+
},
|
|
276
|
+
id: this.hintId
|
|
277
|
+
}, hint) : undefined
|
|
253
278
|
}))), filtersBar, toolsRightEl);
|
|
254
279
|
}
|
|
255
280
|
}], [{
|
|
@@ -260,7 +285,8 @@ var EuiSearchBar = /*#__PURE__*/function (_Component) {
|
|
|
260
285
|
return {
|
|
261
286
|
query: query,
|
|
262
287
|
queryText: query.text,
|
|
263
|
-
error: null
|
|
288
|
+
error: null,
|
|
289
|
+
isHintVisible: prevState.isHintVisible
|
|
264
290
|
};
|
|
265
291
|
}
|
|
266
292
|
|
|
@@ -451,6 +477,14 @@ EuiSearchBar.propTypes = {
|
|
|
451
477
|
* Date formatter to use when parsing date values
|
|
452
478
|
*/
|
|
453
479
|
dateFormat: _propTypes.default.any,
|
|
480
|
+
|
|
481
|
+
/**
|
|
482
|
+
* Hint to render below the search bar
|
|
483
|
+
*/
|
|
484
|
+
hint: _propTypes.default.shape({
|
|
485
|
+
content: _propTypes.default.node.isRequired,
|
|
486
|
+
popoverProps: _propTypes.default.any
|
|
487
|
+
}),
|
|
454
488
|
className: _propTypes.default.string,
|
|
455
489
|
"aria-label": _propTypes.default.string,
|
|
456
490
|
"data-test-subj": _propTypes.default.string,
|
|
@@ -33,9 +33,11 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
33
33
|
|
|
34
34
|
var _form = require("../form");
|
|
35
35
|
|
|
36
|
+
var _popover = require("../popover");
|
|
37
|
+
|
|
36
38
|
var _react2 = require("@emotion/react");
|
|
37
39
|
|
|
38
|
-
var _excluded = ["query", "incremental"];
|
|
40
|
+
var _excluded = ["query", "incremental", "hint"];
|
|
39
41
|
|
|
40
42
|
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); }
|
|
41
43
|
|
|
@@ -80,6 +82,7 @@ var EuiSearchBox = /*#__PURE__*/function (_Component) {
|
|
|
80
82
|
var _this$props = this.props,
|
|
81
83
|
query = _this$props.query,
|
|
82
84
|
incremental = _this$props.incremental,
|
|
85
|
+
hint = _this$props.hint,
|
|
83
86
|
rest = (0, _objectWithoutProperties2.default)(_this$props, _excluded);
|
|
84
87
|
var ariaLabel;
|
|
85
88
|
|
|
@@ -89,15 +92,39 @@ var EuiSearchBox = /*#__PURE__*/function (_Component) {
|
|
|
89
92
|
ariaLabel = 'This is a search bar. After typing your query, hit enter to filter the results lower in the page.';
|
|
90
93
|
}
|
|
91
94
|
|
|
92
|
-
|
|
95
|
+
var search = (0, _react2.jsx)(_form.EuiFieldSearch, (0, _extends2.default)({
|
|
93
96
|
inputRef: function inputRef(input) {
|
|
94
97
|
return _this2.inputElement = input;
|
|
95
98
|
},
|
|
96
99
|
fullWidth: true,
|
|
97
100
|
defaultValue: query,
|
|
98
101
|
incremental: incremental,
|
|
99
|
-
"aria-label": ariaLabel
|
|
102
|
+
"aria-label": ariaLabel,
|
|
103
|
+
onFocus: function onFocus() {
|
|
104
|
+
hint === null || hint === void 0 ? void 0 : hint.setIsVisible(true);
|
|
105
|
+
}
|
|
100
106
|
}, rest));
|
|
107
|
+
|
|
108
|
+
if (hint) {
|
|
109
|
+
return (0, _react2.jsx)(_popover.EuiInputPopover, (0, _extends2.default)({
|
|
110
|
+
disableFocusTrap: true,
|
|
111
|
+
input: search,
|
|
112
|
+
isOpen: hint.isVisible,
|
|
113
|
+
fullWidth: true,
|
|
114
|
+
closePopover: function closePopover() {
|
|
115
|
+
hint.setIsVisible(false);
|
|
116
|
+
},
|
|
117
|
+
panelProps: {
|
|
118
|
+
'aria-live': undefined,
|
|
119
|
+
'aria-modal': undefined,
|
|
120
|
+
role: undefined,
|
|
121
|
+
tabIndex: -1,
|
|
122
|
+
id: hint.id
|
|
123
|
+
}
|
|
124
|
+
}, hint.popoverProps), hint.content);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
return search;
|
|
101
128
|
}
|
|
102
129
|
}]);
|
|
103
130
|
return EuiSearchBox;
|
|
@@ -111,5 +138,12 @@ exports.EuiSearchBox = EuiSearchBox;
|
|
|
111
138
|
EuiSearchBox.propTypes = {
|
|
112
139
|
query: _propTypes.default.string.isRequired,
|
|
113
140
|
// This is optional in EuiFieldSearchProps
|
|
114
|
-
onSearch: _propTypes.default.func.isRequired
|
|
141
|
+
onSearch: _propTypes.default.func.isRequired,
|
|
142
|
+
hint: _propTypes.default.shape({
|
|
143
|
+
id: _propTypes.default.string.isRequired,
|
|
144
|
+
isVisible: _propTypes.default.bool.isRequired,
|
|
145
|
+
setIsVisible: _propTypes.default.func.isRequired,
|
|
146
|
+
content: _propTypes.default.node.isRequired,
|
|
147
|
+
popoverProps: _propTypes.default.any
|
|
148
|
+
})
|
|
115
149
|
};
|
|
@@ -0,0 +1,122 @@
|
|
|
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 _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
|
|
11
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
+
|
|
13
|
+
var _button = require("../button");
|
|
14
|
+
|
|
15
|
+
var _popover = require("../popover");
|
|
16
|
+
|
|
17
|
+
var _selectable = require("./selectable");
|
|
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 options = [{
|
|
34
|
+
label: 'Titan',
|
|
35
|
+
'data-test-subj': 'titanOption'
|
|
36
|
+
}, {
|
|
37
|
+
label: 'Enceladus'
|
|
38
|
+
}, {
|
|
39
|
+
label: "Pandora is one of Saturn's moons, named for a Titaness of Greek mythology"
|
|
40
|
+
}];
|
|
41
|
+
|
|
42
|
+
var EuiSelectableListboxOnly = function EuiSelectableListboxOnly(args) {
|
|
43
|
+
return (0, _react2.jsx)(_selectable.EuiSelectable, (0, _extends2.default)({
|
|
44
|
+
options: options
|
|
45
|
+
}, args), function (list) {
|
|
46
|
+
return (0, _react2.jsx)(_react.default.Fragment, null, list);
|
|
47
|
+
});
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
var EuiSelectableWithSearchInput = function EuiSelectableWithSearchInput(args) {
|
|
51
|
+
return (0, _react2.jsx)(_selectable.EuiSelectable, (0, _extends2.default)({
|
|
52
|
+
searchable: true,
|
|
53
|
+
options: options
|
|
54
|
+
}, args), function (list, search) {
|
|
55
|
+
return (0, _react2.jsx)(_react.default.Fragment, null, search, list);
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
describe('EuiSelectable', function () {
|
|
60
|
+
describe('with a `searchable` configuration', function () {
|
|
61
|
+
it('has no accessibility errors', function () {
|
|
62
|
+
var onChange = cy.stub();
|
|
63
|
+
cy.realMount((0, _react2.jsx)(EuiSelectableWithSearchInput, {
|
|
64
|
+
onChange: onChange
|
|
65
|
+
}));
|
|
66
|
+
cy.checkAxe();
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
describe('without a `searchable` configuration', function () {
|
|
70
|
+
it('has no accessibility errors', function () {
|
|
71
|
+
var onChange = cy.stub();
|
|
72
|
+
cy.realMount((0, _react2.jsx)(EuiSelectableListboxOnly, {
|
|
73
|
+
"aria-label": "No search box",
|
|
74
|
+
onChange: onChange
|
|
75
|
+
}));
|
|
76
|
+
cy.checkAxe();
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
describe('nested in `EuiPopover` component', function () {
|
|
80
|
+
var EuiSelectableNested = function EuiSelectableNested() {
|
|
81
|
+
var _useState = (0, _react.useState)(false),
|
|
82
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
83
|
+
isPopoverOpen = _useState2[0],
|
|
84
|
+
setIsPopoverOpen = _useState2[1];
|
|
85
|
+
|
|
86
|
+
var onChange = function onChange() {};
|
|
87
|
+
|
|
88
|
+
var onClosePopover = function onClosePopover() {};
|
|
89
|
+
|
|
90
|
+
var onButtonClick = function onButtonClick() {
|
|
91
|
+
setIsPopoverOpen(!isPopoverOpen);
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
var button = (0, _react2.jsx)(_button.EuiButton, {
|
|
95
|
+
iconType: "arrowDown",
|
|
96
|
+
iconSide: "right",
|
|
97
|
+
onClick: onButtonClick
|
|
98
|
+
}, "Show popover");
|
|
99
|
+
return (0, _react2.jsx)(_popover.EuiPopover, {
|
|
100
|
+
id: "data-cy-popover-1",
|
|
101
|
+
panelPaddingSize: "s",
|
|
102
|
+
button: button,
|
|
103
|
+
isOpen: isPopoverOpen,
|
|
104
|
+
closePopover: onClosePopover
|
|
105
|
+
}, (0, _react2.jsx)(EuiSelectableWithSearchInput, {
|
|
106
|
+
"aria-label": "With popover",
|
|
107
|
+
options: options,
|
|
108
|
+
onChange: onChange
|
|
109
|
+
}, function (list) {
|
|
110
|
+
return (0, _react2.jsx)(_react.default.Fragment, null, list);
|
|
111
|
+
}));
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
it('has no accessibility errors', function () {
|
|
115
|
+
cy.realMount((0, _react2.jsx)(EuiSelectableNested, null));
|
|
116
|
+
cy.get('button').realClick();
|
|
117
|
+
cy.get('li[role=option]').first(); // Make sure the EuiSelectable is rendered before a11y check
|
|
118
|
+
|
|
119
|
+
cy.checkAxe();
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
});
|
|
@@ -584,25 +584,28 @@ var EuiSelectable = /*#__PURE__*/function (_Component) {
|
|
|
584
584
|
}], [{
|
|
585
585
|
key: "getDerivedStateFromProps",
|
|
586
586
|
value: function getDerivedStateFromProps(nextProps, prevState) {
|
|
587
|
+
var _stateUpdate$searchVa;
|
|
588
|
+
|
|
587
589
|
var options = nextProps.options,
|
|
588
590
|
isPreFiltered = nextProps.isPreFiltered,
|
|
589
591
|
searchProps = nextProps.searchProps;
|
|
590
592
|
var activeOptionIndex = prevState.activeOptionIndex,
|
|
591
593
|
searchValue = prevState.searchValue;
|
|
592
|
-
var matchingOptions = (0, _matching_options.getMatchingOptions)(options, searchValue, isPreFiltered);
|
|
593
594
|
var stateUpdate = {
|
|
594
|
-
|
|
595
|
+
searchValue: searchValue,
|
|
595
596
|
activeOptionIndex: activeOptionIndex
|
|
596
597
|
};
|
|
597
598
|
|
|
598
|
-
if (activeOptionIndex != null && activeOptionIndex >= matchingOptions.length) {
|
|
599
|
-
stateUpdate.activeOptionIndex = -1;
|
|
600
|
-
}
|
|
601
|
-
|
|
602
599
|
if ((searchProps === null || searchProps === void 0 ? void 0 : searchProps.value) != null && searchProps.value !== searchValue) {
|
|
603
600
|
stateUpdate.searchValue = searchProps.value;
|
|
604
601
|
}
|
|
605
602
|
|
|
603
|
+
stateUpdate.visibleOptions = (0, _matching_options.getMatchingOptions)(options, (_stateUpdate$searchVa = stateUpdate.searchValue) !== null && _stateUpdate$searchVa !== void 0 ? _stateUpdate$searchVa : '', isPreFiltered);
|
|
604
|
+
|
|
605
|
+
if (activeOptionIndex != null && activeOptionIndex >= stateUpdate.visibleOptions.length) {
|
|
606
|
+
stateUpdate.activeOptionIndex = -1;
|
|
607
|
+
}
|
|
608
|
+
|
|
606
609
|
return stateUpdate;
|
|
607
610
|
}
|
|
608
611
|
}]);
|
|
@@ -21,9 +21,11 @@ var _services = require("../../services");
|
|
|
21
21
|
|
|
22
22
|
var _href_validator = require("../../services/security/href_validator");
|
|
23
23
|
|
|
24
|
+
var _tab = require("./tab.styles");
|
|
25
|
+
|
|
24
26
|
var _react2 = require("@emotion/react");
|
|
25
27
|
|
|
26
|
-
var _excluded = ["isSelected", "children", "className", "disabled", "href", "target", "rel", "prepend", "append"];
|
|
28
|
+
var _excluded = ["isSelected", "children", "className", "disabled", "href", "target", "rel", "prepend", "append", "size", "expand"];
|
|
27
29
|
|
|
28
30
|
var EuiTab = function EuiTab(_ref) {
|
|
29
31
|
var isSelected = _ref.isSelected,
|
|
@@ -35,13 +37,20 @@ var EuiTab = function EuiTab(_ref) {
|
|
|
35
37
|
rel = _ref.rel,
|
|
36
38
|
prepend = _ref.prepend,
|
|
37
39
|
append = _ref.append,
|
|
40
|
+
size = _ref.size,
|
|
41
|
+
expand = _ref.expand,
|
|
38
42
|
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
43
|
+
var euiTheme = (0, _services.useEuiTheme)();
|
|
39
44
|
var isHrefValid = !href || (0, _href_validator.validateHref)(href);
|
|
40
|
-
var disabled = _disabled || !isHrefValid;
|
|
45
|
+
var disabled = _disabled || !isHrefValid; // Keep CSS classnames for reference
|
|
46
|
+
|
|
41
47
|
var classes = (0, _classnames.default)('euiTab', className, {
|
|
42
|
-
'euiTab-isSelected': isSelected
|
|
43
|
-
'euiTab-isDisabled': disabled
|
|
48
|
+
'euiTab-isSelected': isSelected
|
|
44
49
|
});
|
|
50
|
+
var tabStyles = (0, _tab.euiTabStyles)(euiTheme);
|
|
51
|
+
var cssTabStyles = [tabStyles.euiTab, expand && tabStyles.expanded, disabled && tabStyles.disabled.disabled, isSelected && (disabled ? tabStyles.disabled.selected : tabStyles.selected)];
|
|
52
|
+
var tabContentStyles = (0, _tab.euiTabContentStyles)(euiTheme);
|
|
53
|
+
var cssTabContentStyles = [tabContentStyles.euiTab__content, size && tabContentStyles[size], isSelected && tabContentStyles.selected, disabled && tabContentStyles.disabled];
|
|
45
54
|
var prependNode = prepend && (0, _react2.jsx)("span", {
|
|
46
55
|
className: "euiTab__prepend"
|
|
47
56
|
}, prepend);
|
|
@@ -60,11 +69,13 @@ var EuiTab = function EuiTab(_ref) {
|
|
|
60
69
|
role: "tab",
|
|
61
70
|
"aria-selected": !!isSelected,
|
|
62
71
|
className: classes,
|
|
72
|
+
css: cssTabStyles,
|
|
63
73
|
href: href,
|
|
64
74
|
target: target,
|
|
65
75
|
rel: secureRel
|
|
66
76
|
}, rest), prependNode, (0, _react2.jsx)("span", {
|
|
67
|
-
className: "euiTab__content"
|
|
77
|
+
className: "euiTab__content",
|
|
78
|
+
css: cssTabContentStyles
|
|
68
79
|
}, children), appendNode);
|
|
69
80
|
}
|
|
70
81
|
|
|
@@ -73,9 +84,11 @@ var EuiTab = function EuiTab(_ref) {
|
|
|
73
84
|
"aria-selected": !!isSelected,
|
|
74
85
|
type: "button",
|
|
75
86
|
className: classes,
|
|
87
|
+
css: cssTabStyles,
|
|
76
88
|
disabled: disabled
|
|
77
89
|
}, rest), prependNode, (0, _react2.jsx)("span", {
|
|
78
|
-
className: "euiTab__content"
|
|
90
|
+
className: "euiTab__content",
|
|
91
|
+
css: cssTabContentStyles
|
|
79
92
|
}, children), appendNode);
|
|
80
93
|
};
|
|
81
94
|
|
|
@@ -105,6 +118,18 @@ EuiTab.propTypes = {
|
|
|
105
118
|
* Will be excluded from interactive effects.
|
|
106
119
|
*/
|
|
107
120
|
append: _propTypes.default.node,
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* Evenly stretches each tab to fill the
|
|
124
|
+
* horizontal space
|
|
125
|
+
*/
|
|
126
|
+
expand: _propTypes.default.bool,
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* Sizes affect both font size and overall size.
|
|
130
|
+
* Only use the `xl` size when displayed as page titles.
|
|
131
|
+
*/
|
|
132
|
+
size: _propTypes.default.any,
|
|
108
133
|
className: _propTypes.default.string,
|
|
109
134
|
"aria-label": _propTypes.default.string,
|
|
110
135
|
"data-test-subj": _propTypes.default.string,
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.euiTabStyles = exports.euiTabContentStyles = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = require("@emotion/react");
|
|
9
|
+
|
|
10
|
+
var _global_styling = require("../../global_styling");
|
|
11
|
+
|
|
12
|
+
var _title = require("../title/title.styles");
|
|
13
|
+
|
|
14
|
+
function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
|
|
15
|
+
|
|
16
|
+
var _ref2 = process.env.NODE_ENV === "production" ? {
|
|
17
|
+
name: "10tso78-expanded",
|
|
18
|
+
styles: "flex-basis:0%;flex-grow:1;justify-content:center;label:expanded;"
|
|
19
|
+
} : {
|
|
20
|
+
name: "10tso78-expanded",
|
|
21
|
+
styles: "flex-basis:0%;flex-grow:1;justify-content:center;label:expanded;",
|
|
22
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
var euiTabStyles = function euiTabStyles(_ref3) {
|
|
26
|
+
var euiTheme = _ref3.euiTheme;
|
|
27
|
+
return {
|
|
28
|
+
euiTab: /*#__PURE__*/(0, _react.css)("display:flex;cursor:pointer;flex-direction:row;align-items:center;font-weight:", euiTheme.font.weight.semiBold, ";gap:", euiTheme.size.s, ";", (0, _global_styling.logicalCSS)('padding-vertical', 0), " ", (0, _global_styling.logicalCSS)('padding-horizontal', euiTheme.size.xs), " &:focus{background-color:transparent;outline-offset:-", euiTheme.focus.width, ";};label:euiTab;"),
|
|
29
|
+
// variations
|
|
30
|
+
expanded: _ref2,
|
|
31
|
+
selected: /*#__PURE__*/(0, _react.css)("box-shadow:inset 0 -", euiTheme.border.width.thick, " 0 ", euiTheme.colors.primary, ";;label:selected;"),
|
|
32
|
+
disabled: {
|
|
33
|
+
disabled: /*#__PURE__*/(0, _react.css)("cursor:not-allowed;color:", euiTheme.colors.disabledText, ";;label:disabled;"),
|
|
34
|
+
selected: /*#__PURE__*/(0, _react.css)("box-shadow:inset 0 -", euiTheme.border.width.thick, " 0 ", euiTheme.colors.disabledText, ";;label:selected;")
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
exports.euiTabStyles = euiTabStyles;
|
|
40
|
+
|
|
41
|
+
var _ref = process.env.NODE_ENV === "production" ? {
|
|
42
|
+
name: "1yhgei9-euiTab__content",
|
|
43
|
+
styles: "&:hover{text-decoration:none;};label:euiTab__content;"
|
|
44
|
+
} : {
|
|
45
|
+
name: "1yhgei9-euiTab__content",
|
|
46
|
+
styles: "&:hover{text-decoration:none;};label:euiTab__content;",
|
|
47
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
var euiTabContentStyles = function euiTabContentStyles(euiThemeContext) {
|
|
51
|
+
var euiTheme = euiThemeContext.euiTheme;
|
|
52
|
+
return {
|
|
53
|
+
euiTab__content: _ref,
|
|
54
|
+
// sizes
|
|
55
|
+
s: /*#__PURE__*/(0, _react.css)((0, _title.euiTitle)(euiThemeContext, 'xxxs'), ";line-height:", euiTheme.size.xl, ";;label:s;"),
|
|
56
|
+
m: /*#__PURE__*/(0, _react.css)((0, _title.euiTitle)(euiThemeContext, 'xxs'), ";line-height:", euiTheme.size.xxl, ";;label:m;"),
|
|
57
|
+
l: /*#__PURE__*/(0, _react.css)((0, _title.euiTitle)(euiThemeContext, 'xs'), ";line-height:", (0, _global_styling.mathWithUnits)([euiTheme.size.xl, euiTheme.size.s], function (x, y) {
|
|
58
|
+
return x + y;
|
|
59
|
+
}), ";;label:l;"),
|
|
60
|
+
xl: /*#__PURE__*/(0, _react.css)((0, _title.euiTitle)(euiThemeContext, 's'), ";line-height:", (0, _global_styling.mathWithUnits)([euiTheme.size.xxxl, euiTheme.size.s], function (x, y) {
|
|
61
|
+
return x + y;
|
|
62
|
+
}), ";;label:xl;"),
|
|
63
|
+
// variations
|
|
64
|
+
selected: /*#__PURE__*/(0, _react.css)("color:", euiTheme.colors.primaryText, ";;label:selected;"),
|
|
65
|
+
disabled: /*#__PURE__*/(0, _react.css)("color:", euiTheme.colors.disabledText, ";;label:disabled;")
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
exports.euiTabContentStyles = euiTabContentStyles;
|
|
@@ -236,6 +236,18 @@ EuiTabbedContent.propTypes = {
|
|
|
236
236
|
* Will be excluded from interactive effects.
|
|
237
237
|
*/
|
|
238
238
|
append: _propTypes.default.node,
|
|
239
|
+
|
|
240
|
+
/**
|
|
241
|
+
* Evenly stretches each tab to fill the
|
|
242
|
+
* horizontal space
|
|
243
|
+
*/
|
|
244
|
+
expand: _propTypes.default.bool,
|
|
245
|
+
|
|
246
|
+
/**
|
|
247
|
+
* Sizes affect both font size and overall size.
|
|
248
|
+
* Only use the `xl` size when displayed as page titles.
|
|
249
|
+
*/
|
|
250
|
+
size: _propTypes.default.any,
|
|
239
251
|
className: _propTypes.default.string,
|
|
240
252
|
"aria-label": _propTypes.default.string,
|
|
241
253
|
"data-test-subj": _propTypes.default.string,
|
|
@@ -254,12 +266,14 @@ EuiTabbedContent.propTypes = {
|
|
|
254
266
|
disabled: _propTypes.default.bool,
|
|
255
267
|
prepend: _propTypes.default.node,
|
|
256
268
|
append: _propTypes.default.node,
|
|
269
|
+
expand: _propTypes.default.bool,
|
|
270
|
+
size: _propTypes.default.any,
|
|
257
271
|
className: _propTypes.default.string,
|
|
258
272
|
"aria-label": _propTypes.default.string,
|
|
259
273
|
"data-test-subj": _propTypes.default.string,
|
|
260
274
|
css: _propTypes.default.any
|
|
261
275
|
}),
|
|
262
|
-
size: _propTypes.default.
|
|
276
|
+
size: _propTypes.default.any,
|
|
263
277
|
|
|
264
278
|
/**
|
|
265
279
|
* Each tab needs id and content properties, so we can associate it with its panel for accessibility.
|
|
@@ -273,6 +287,8 @@ EuiTabbedContent.propTypes = {
|
|
|
273
287
|
disabled: _propTypes.default.bool,
|
|
274
288
|
prepend: _propTypes.default.node,
|
|
275
289
|
append: _propTypes.default.node,
|
|
290
|
+
expand: _propTypes.default.bool,
|
|
291
|
+
size: _propTypes.default.any,
|
|
276
292
|
className: _propTypes.default.string,
|
|
277
293
|
"aria-label": _propTypes.default.string,
|
|
278
294
|
"data-test-subj": _propTypes.default.string,
|
|
@@ -17,7 +17,11 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
17
17
|
|
|
18
18
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
19
19
|
|
|
20
|
-
var
|
|
20
|
+
var _services = require("../../services");
|
|
21
|
+
|
|
22
|
+
var _clone_element = require("../../services/theme/clone_element");
|
|
23
|
+
|
|
24
|
+
var _tabs = require("./tabs.styles");
|
|
21
25
|
|
|
22
26
|
var _react2 = require("@emotion/react");
|
|
23
27
|
|
|
@@ -27,13 +31,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
27
31
|
|
|
28
32
|
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; }
|
|
29
33
|
|
|
30
|
-
var
|
|
31
|
-
s: 'euiTabs--small',
|
|
32
|
-
m: null,
|
|
33
|
-
l: 'euiTabs--large',
|
|
34
|
-
xl: 'euiTabs--xlarge'
|
|
35
|
-
};
|
|
36
|
-
var SIZES = (0, _common.keysOf)(sizeToClassNameMap);
|
|
34
|
+
var SIZES = ['s', 'm', 'l', 'xl'];
|
|
37
35
|
exports.SIZES = SIZES;
|
|
38
36
|
var EuiTabs = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
39
37
|
var children = _ref.children,
|
|
@@ -45,16 +43,28 @@ var EuiTabs = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
45
43
|
_ref$size = _ref.size,
|
|
46
44
|
size = _ref$size === void 0 ? 'm' : _ref$size,
|
|
47
45
|
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
48
|
-
var
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
46
|
+
var euiTheme = (0, _services.useEuiTheme)();
|
|
47
|
+
var classes = (0, _classnames.default)('euiTabs', className);
|
|
48
|
+
var styles = (0, _tabs.euiTabsStyles)(euiTheme);
|
|
49
|
+
var cssStyles = [styles.euiTabs, styles[size], bottomBorder && styles.bottomBorder];
|
|
50
|
+
|
|
51
|
+
var tabItems = _react.default.Children.map(children, function (child) {
|
|
52
|
+
if ( /*#__PURE__*/_react.default.isValidElement(child)) {
|
|
53
|
+
return (0, _clone_element.cloneElementWithCss)(child, {
|
|
54
|
+
// we're passing the parent `size` and `expand` down to the children
|
|
55
|
+
size: size,
|
|
56
|
+
expand: expand
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
|
|
52
61
|
return (0, _react2.jsx)("div", (0, _extends2.default)({
|
|
53
62
|
ref: ref,
|
|
54
|
-
className: classes
|
|
63
|
+
className: classes,
|
|
64
|
+
css: cssStyles
|
|
55
65
|
}, children && {
|
|
56
66
|
role: 'tablist'
|
|
57
|
-
}, rest),
|
|
67
|
+
}, rest), tabItems);
|
|
58
68
|
});
|
|
59
69
|
exports.EuiTabs = EuiTabs;
|
|
60
70
|
EuiTabs.displayName = 'EuiTabs';
|