@elastic/eui 102.2.0 → 102.3.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 (162) hide show
  1. package/dist/eui_theme_borealis_dark.json +1 -1
  2. package/es/components/badge/color_utils.js +1 -3
  3. package/es/components/badge/notification_badge/badge_notification.styles.js +6 -1
  4. package/es/components/basic_table/basic_table.js +4 -1
  5. package/es/components/basic_table/in_memory_table.js +4 -1
  6. package/es/components/breadcrumbs/_breadcrumb_content.styles.js +6 -3
  7. package/es/components/button/button_display/_button_display.js +1 -1
  8. package/es/components/button/button_display/_button_display.styles.js +11 -2
  9. package/es/components/button/button_display/_button_display_content.styles.js +6 -3
  10. package/es/components/button/button_empty/button_empty.styles.js +9 -12
  11. package/es/components/button/button_group/button_group.styles.js +5 -3
  12. package/es/components/button/button_group/button_group_button.js +19 -9
  13. package/es/components/button/button_group/button_group_button.styles.js +43 -19
  14. package/es/components/button/button_icon/button_icon.js +4 -2
  15. package/es/components/collapsible_nav/collapsible_nav.js +1 -0
  16. package/es/components/datagrid/controls/data_grid_toolbar_control.js +11 -1
  17. package/es/components/datagrid/utils/focus.js +2 -2
  18. package/es/components/filter_group/filter_button.js +88 -23
  19. package/es/components/filter_group/filter_button.styles.js +51 -15
  20. package/es/components/filter_group/filter_group.styles.js +18 -6
  21. package/es/components/markdown_editor/markdown_editor_footer.js +9 -4
  22. package/es/components/search_bar/filters/field_value_selection_filter.js +1 -0
  23. package/es/components/search_bar/filters/field_value_toggle_filter.js +3 -1
  24. package/es/components/search_bar/filters/field_value_toggle_group_filter.js +3 -1
  25. package/es/components/search_bar/filters/is_filter.js +3 -1
  26. package/es/components/search_bar/search_bar.a11y.js +3 -3
  27. package/es/global_styling/mixins/_button.js +95 -28
  28. package/es/services/theme/index.js +2 -1
  29. package/es/services/theme/provider.js +28 -2
  30. package/es/services/theme/theme_variant.js +22 -0
  31. package/es/themes/amsterdam/global_styling/variables/_buttons.js +348 -147
  32. package/es/themes/amsterdam/global_styling/variables/_components.js +229 -224
  33. package/es/themes/amsterdam/theme.js +2 -1
  34. package/es/themes/json/eui_theme_borealis_dark.json +1 -1
  35. package/eui.d.ts +194 -161
  36. package/lib/components/badge/color_utils.js +1 -3
  37. package/lib/components/badge/notification_badge/badge_notification.styles.js +6 -1
  38. package/lib/components/basic_table/basic_table.js +4 -1
  39. package/lib/components/basic_table/in_memory_table.js +4 -1
  40. package/lib/components/breadcrumbs/_breadcrumb_content.styles.js +5 -2
  41. package/lib/components/button/button_display/_button_display.js +1 -1
  42. package/lib/components/button/button_display/_button_display.styles.js +11 -2
  43. package/lib/components/button/button_display/_button_display_content.styles.js +6 -3
  44. package/lib/components/button/button_empty/button_empty.styles.js +10 -11
  45. package/lib/components/button/button_group/button_group.styles.js +5 -3
  46. package/lib/components/button/button_group/button_group_button.js +18 -8
  47. package/lib/components/button/button_group/button_group_button.styles.js +41 -17
  48. package/lib/components/button/button_icon/button_icon.js +3 -1
  49. package/lib/components/collapsible_nav/collapsible_nav.js +1 -0
  50. package/lib/components/datagrid/controls/data_grid_toolbar_control.js +11 -1
  51. package/lib/components/datagrid/utils/focus.js +1 -1
  52. package/lib/components/filter_group/filter_button.js +86 -21
  53. package/lib/components/filter_group/filter_button.styles.js +51 -15
  54. package/lib/components/filter_group/filter_group.styles.js +18 -6
  55. package/lib/components/markdown_editor/markdown_editor_footer.js +8 -3
  56. package/lib/components/search_bar/filters/field_value_selection_filter.js +1 -0
  57. package/lib/components/search_bar/filters/field_value_toggle_filter.js +3 -1
  58. package/lib/components/search_bar/filters/field_value_toggle_group_filter.js +3 -1
  59. package/lib/components/search_bar/filters/is_filter.js +3 -1
  60. package/lib/components/search_bar/search_bar.a11y.js +3 -3
  61. package/lib/global_styling/mixins/_button.js +94 -27
  62. package/lib/services/theme/index.js +42 -1
  63. package/lib/services/theme/provider.js +28 -2
  64. package/lib/services/theme/theme_variant.js +28 -0
  65. package/lib/themes/amsterdam/global_styling/variables/_buttons.js +348 -147
  66. package/lib/themes/amsterdam/global_styling/variables/_components.js +229 -224
  67. package/lib/themes/amsterdam/theme.js +2 -1
  68. package/lib/themes/json/eui_theme_borealis_dark.json +1 -1
  69. package/optimize/es/components/badge/color_utils.js +1 -3
  70. package/optimize/es/components/badge/notification_badge/badge_notification.styles.js +6 -1
  71. package/optimize/es/components/breadcrumbs/_breadcrumb_content.styles.js +6 -3
  72. package/optimize/es/components/button/button_display/_button_display.js +1 -1
  73. package/optimize/es/components/button/button_display/_button_display.styles.js +11 -2
  74. package/optimize/es/components/button/button_display/_button_display_content.styles.js +6 -3
  75. package/optimize/es/components/button/button_empty/button_empty.styles.js +9 -12
  76. package/optimize/es/components/button/button_group/button_group.styles.js +5 -3
  77. package/optimize/es/components/button/button_group/button_group_button.js +12 -8
  78. package/optimize/es/components/button/button_group/button_group_button.styles.js +43 -19
  79. package/optimize/es/components/button/button_icon/button_icon.js +4 -2
  80. package/optimize/es/components/datagrid/controls/data_grid_toolbar_control.js +11 -1
  81. package/optimize/es/components/datagrid/utils/focus.js +2 -2
  82. package/optimize/es/components/filter_group/filter_button.js +78 -21
  83. package/optimize/es/components/filter_group/filter_button.styles.js +51 -15
  84. package/optimize/es/components/filter_group/filter_group.styles.js +18 -6
  85. package/optimize/es/components/markdown_editor/markdown_editor_footer.js +9 -4
  86. package/optimize/es/components/search_bar/filters/field_value_selection_filter.js +1 -0
  87. package/optimize/es/components/search_bar/filters/field_value_toggle_filter.js +3 -1
  88. package/optimize/es/components/search_bar/filters/field_value_toggle_group_filter.js +3 -1
  89. package/optimize/es/components/search_bar/filters/is_filter.js +3 -1
  90. package/optimize/es/components/search_bar/search_bar.a11y.js +3 -3
  91. package/optimize/es/global_styling/mixins/_button.js +95 -28
  92. package/optimize/es/services/theme/index.js +2 -1
  93. package/optimize/es/services/theme/provider.js +28 -2
  94. package/optimize/es/services/theme/theme_variant.js +22 -0
  95. package/optimize/es/themes/amsterdam/global_styling/variables/_buttons.js +348 -147
  96. package/optimize/es/themes/amsterdam/global_styling/variables/_components.js +229 -224
  97. package/optimize/es/themes/amsterdam/theme.js +2 -1
  98. package/optimize/es/themes/json/eui_theme_borealis_dark.json +1 -1
  99. package/optimize/lib/components/badge/color_utils.js +1 -3
  100. package/optimize/lib/components/badge/notification_badge/badge_notification.styles.js +6 -1
  101. package/optimize/lib/components/breadcrumbs/_breadcrumb_content.styles.js +5 -2
  102. package/optimize/lib/components/button/button_display/_button_display.js +1 -1
  103. package/optimize/lib/components/button/button_display/_button_display.styles.js +11 -2
  104. package/optimize/lib/components/button/button_display/_button_display_content.styles.js +6 -3
  105. package/optimize/lib/components/button/button_empty/button_empty.styles.js +10 -11
  106. package/optimize/lib/components/button/button_group/button_group.styles.js +5 -3
  107. package/optimize/lib/components/button/button_group/button_group_button.js +11 -7
  108. package/optimize/lib/components/button/button_group/button_group_button.styles.js +41 -17
  109. package/optimize/lib/components/button/button_icon/button_icon.js +3 -1
  110. package/optimize/lib/components/datagrid/controls/data_grid_toolbar_control.js +11 -1
  111. package/optimize/lib/components/datagrid/utils/focus.js +1 -1
  112. package/optimize/lib/components/filter_group/filter_button.js +76 -19
  113. package/optimize/lib/components/filter_group/filter_button.styles.js +51 -15
  114. package/optimize/lib/components/filter_group/filter_group.styles.js +18 -6
  115. package/optimize/lib/components/markdown_editor/markdown_editor_footer.js +8 -3
  116. package/optimize/lib/components/search_bar/filters/field_value_selection_filter.js +1 -0
  117. package/optimize/lib/components/search_bar/filters/field_value_toggle_filter.js +3 -1
  118. package/optimize/lib/components/search_bar/filters/field_value_toggle_group_filter.js +3 -1
  119. package/optimize/lib/components/search_bar/filters/is_filter.js +3 -1
  120. package/optimize/lib/components/search_bar/search_bar.a11y.js +3 -3
  121. package/optimize/lib/global_styling/mixins/_button.js +94 -27
  122. package/optimize/lib/services/theme/index.js +42 -1
  123. package/optimize/lib/services/theme/provider.js +28 -2
  124. package/optimize/lib/services/theme/theme_variant.js +28 -0
  125. package/optimize/lib/themes/amsterdam/global_styling/variables/_buttons.js +348 -147
  126. package/optimize/lib/themes/amsterdam/global_styling/variables/_components.js +229 -224
  127. package/optimize/lib/themes/amsterdam/theme.js +2 -1
  128. package/optimize/lib/themes/json/eui_theme_borealis_dark.json +1 -1
  129. package/package.json +4 -4
  130. package/test-env/components/badge/color_utils.js +1 -3
  131. package/test-env/components/badge/notification_badge/badge_notification.styles.js +6 -1
  132. package/test-env/components/basic_table/basic_table.js +4 -1
  133. package/test-env/components/basic_table/in_memory_table.js +4 -1
  134. package/test-env/components/breadcrumbs/_breadcrumb_content.styles.js +5 -2
  135. package/test-env/components/button/button_display/_button_display.js +1 -1
  136. package/test-env/components/button/button_display/_button_display.styles.js +11 -2
  137. package/test-env/components/button/button_display/_button_display_content.styles.js +6 -3
  138. package/test-env/components/button/button_empty/button_empty.styles.js +10 -11
  139. package/test-env/components/button/button_group/button_group.styles.js +5 -3
  140. package/test-env/components/button/button_group/button_group_button.js +18 -8
  141. package/test-env/components/button/button_group/button_group_button.styles.js +41 -17
  142. package/test-env/components/button/button_icon/button_icon.js +3 -1
  143. package/test-env/components/collapsible_nav/collapsible_nav.js +1 -0
  144. package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +11 -1
  145. package/test-env/components/datagrid/utils/focus.js +1 -1
  146. package/test-env/components/filter_group/filter_button.js +86 -21
  147. package/test-env/components/filter_group/filter_button.styles.js +51 -15
  148. package/test-env/components/filter_group/filter_group.styles.js +18 -6
  149. package/test-env/components/markdown_editor/markdown_editor_footer.js +8 -3
  150. package/test-env/components/search_bar/filters/field_value_selection_filter.js +1 -0
  151. package/test-env/components/search_bar/filters/field_value_toggle_filter.js +3 -1
  152. package/test-env/components/search_bar/filters/field_value_toggle_group_filter.js +3 -1
  153. package/test-env/components/search_bar/filters/is_filter.js +3 -1
  154. package/test-env/components/search_bar/search_bar.a11y.js +3 -3
  155. package/test-env/global_styling/mixins/_button.js +94 -27
  156. package/test-env/services/theme/index.js +42 -1
  157. package/test-env/services/theme/provider.js +28 -2
  158. package/test-env/services/theme/theme_variant.js +28 -0
  159. package/test-env/themes/amsterdam/global_styling/variables/_buttons.js +348 -147
  160. package/test-env/themes/amsterdam/global_styling/variables/_components.js +229 -224
  161. package/test-env/themes/amsterdam/theme.js +2 -1
  162. package/test-env/themes/json/eui_theme_borealis_dark.json +1 -1
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.EuiFilterButton = void 0;
8
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
12
  var _react = _interopRequireDefault(require("react"));
@@ -18,8 +18,10 @@ var _inner_text = require("../inner_text");
18
18
  var _badge = require("../badge");
19
19
  var _button_empty = require("../button/button_empty");
20
20
  var _filter_button = require("./filter_button.styles");
21
+ var _button_group_button = require("../button/button_group/button_group_button");
22
+ var _button_group_button2 = require("../button/button_group/button_group_button.styles");
21
23
  var _react2 = require("@emotion/react");
22
- var _excluded = ["children", "className", "iconType", "iconSide", "color", "badgeColor", "hasActiveFilters", "numFilters", "numActiveFilters", "isDisabled", "isSelected", "type", "grow", "withNext", "textProps", "contentProps"];
24
+ var _excluded = ["children", "className", "iconType", "iconSide", "color", "badgeColor", "hasActiveFilters", "numFilters", "numActiveFilters", "isToggle", "isDisabled", "isSelected", "type", "grow", "withNext", "textProps", "contentProps"];
23
25
  /*
24
26
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
25
27
  * or more contributor license agreements. Licensed under the Elastic License
@@ -42,6 +44,7 @@ var EuiFilterButton = exports.EuiFilterButton = function EuiFilterButton(_ref) {
42
44
  hasActiveFilters = _ref.hasActiveFilters,
43
45
  numFilters = _ref.numFilters,
44
46
  numActiveFilters = _ref.numActiveFilters,
47
+ isToggle = _ref.isToggle,
45
48
  isDisabled = _ref.isDisabled,
46
49
  isSelected = _ref.isSelected,
47
50
  _ref$type = _ref.type,
@@ -52,18 +55,37 @@ var EuiFilterButton = exports.EuiFilterButton = function EuiFilterButton(_ref) {
52
55
  textProps = _ref.textProps,
53
56
  contentProps = _ref.contentProps,
54
57
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
58
+ var id = (0, _services.useGeneratedHtmlId)({
59
+ prefix: 'filter-button'
60
+ });
55
61
  var numFiltersDefined = numFilters != null; // != instead of !== to allow for null and undefined
56
62
  var numActiveFiltersDefined = numActiveFilters != null && numActiveFilters > 0;
63
+ var euiThemeContext = (0, _services.useEuiTheme)();
64
+ var colorMode = euiThemeContext.colorMode;
65
+ var isRefreshVariant = (0, _services.useEuiThemeRefreshVariant)('buttonVariant');
66
+
67
+ // assumption about type of usage based on icon usage
68
+ // requires manual override to apply correct aria attributes for more custom usages
69
+ var isCollapsible = !isToggle && iconType === 'arrowDown';
70
+ // NOTE: in Amsterdam `hasActiveFilters` applies selected styling while `isSelected` does not.
71
+ // With Borealis this is more granular as EuiFilterButton now supports proper toggle buttons next to regular buttons
72
+ var isExpanded = isCollapsible && (isSelected !== null && isSelected !== void 0 ? isSelected : hasActiveFilters);
57
73
  var styles = (0, _services.useEuiMemoizedStyles)(_filter_button.euiFilterButtonStyles);
58
- var cssStyles = [styles.euiFilterButton, withNext && styles.withNext, !grow && styles.noGrow, hasActiveFilters && styles.hasActiveFilters, numFiltersDefined && styles.hasNotification];
74
+ var focusColorStyles = (0, _services.useEuiMemoizedStyles)(_button_group_button2._compressedButtonFocusColors);
75
+ var toggleVariantStyles = isRefreshVariant ? [isToggle && styles.buttonType.toggle, !isToggle && !isDisabled && focusColorStyles[color], !isToggle && styles.buttonType.default] : [isToggle && styles.buttonType.toggle];
76
+ var cssStyles = [styles.euiFilterButton, !isRefreshVariant && withNext && styles.withNext, hasActiveFilters && styles.hasActiveFilters].concat(toggleVariantStyles);
77
+ var wrapperStyles = (0, _services.useEuiMemoizedStyles)(_filter_button.euiFilterButtonWrapperStyles);
78
+ var wrapperCssStyles = [wrapperStyles.wrapper, isRefreshVariant && withNext && styles.withNext, numFiltersDefined && styles.hasNotification, isToggle && wrapperStyles.hasToggle, !grow && styles.noGrow];
59
79
  var _useEuiMemoizedStyles = (0, _services.useEuiMemoizedStyles)(_filter_button.euiFilterButtonChildStyles),
60
80
  contentStyles = _useEuiMemoizedStyles.content,
61
81
  textStyles = _useEuiMemoizedStyles.text,
62
82
  notificationStyles = _useEuiMemoizedStyles.notification;
83
+ var wrapperClasses = (0, _classnames.default)('euiFilterButton__wrapper');
63
84
  var classes = (0, _classnames.default)('euiFilterButton', {
64
85
  'euiFilterButton-isSelected': isSelected,
65
86
  'euiFilterButton-hasActiveFilters': hasActiveFilters,
66
- 'euiFilterButton-hasNotification': numFiltersDefined
87
+ 'euiFilterButton-hasNotification': numFiltersDefined,
88
+ 'euiFilterButton-isToggle': isRefreshVariant && isToggle
67
89
  }, className);
68
90
 
69
91
  /**
@@ -78,6 +100,16 @@ var EuiFilterButton = exports.EuiFilterButton = function EuiFilterButton(_ref) {
78
100
  count: badgeCount
79
101
  });
80
102
  var badgeStyles = [notificationStyles.euiFilterButton__notification, isDisabled && notificationStyles.disabled];
103
+ var badgeContent = (0, _react2.jsx)(_badge.EuiNotificationBadge, {
104
+ className: "euiFilterButton__notification",
105
+ css: badgeStyles,
106
+ "aria-label": hasActiveFilters ? activeBadgeLabel : availableBadgeLabel,
107
+ color: isDisabled || !hasActiveFilters ? 'subdued' : badgeColor,
108
+ role: "marquee" // https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/marquee_role
109
+ }, badgeCount);
110
+ var badgeElement = showBadge && (isRefreshVariant ? (0, _react2.jsx)(_services.EuiThemeProvider, {
111
+ colorMode: isToggle && isSelected ? 'INVERSE' : colorMode
112
+ }, badgeContent) : badgeContent);
81
113
 
82
114
  /**
83
115
  * Text
@@ -91,7 +123,17 @@ var EuiFilterButton = exports.EuiFilterButton = function EuiFilterButton(_ref) {
91
123
  ref = _useInnerText2[0],
92
124
  innerText = _useInnerText2[1];
93
125
  var dataText = children && typeof children === 'string' ? children : innerText;
94
- return (0, _react2.jsx)(_button_empty.EuiButtonEmpty, (0, _extends2.default)({
126
+ var textContent = (0, _react2.jsx)("span", (0, _extends2.default)({
127
+ ref: ref,
128
+ "data-text": dataText,
129
+ title: dataText
130
+ }, textProps, {
131
+ className: buttonTextClassNames,
132
+ css: textCssStyles
133
+ }), children);
134
+
135
+ /** Button element */
136
+ var button = (0, _react2.jsx)(_button_empty.EuiButtonEmpty, (0, _extends2.default)({
95
137
  className: classes,
96
138
  css: cssStyles,
97
139
  color: color,
@@ -100,27 +142,42 @@ var EuiFilterButton = exports.EuiFilterButton = function EuiFilterButton(_ref) {
100
142
  iconType: iconType,
101
143
  type: type,
102
144
  textProps: false,
145
+ contentProps: _objectSpread(_objectSpread({}, contentProps), {}, {
146
+ css: [contentStyles.euiFilterButton__content, iconType && contentStyles.hasIcon, contentProps === null || contentProps === void 0 ? void 0 : contentProps.css]
147
+ }),
148
+ "aria-expanded": isCollapsible ? isExpanded : undefined
149
+ }, rest), textContent, badgeElement);
150
+ var onToggleClick = function onToggleClick(e) {
151
+ var _rest$onClick;
152
+ rest === null || rest === void 0 || (_rest$onClick = rest.onClick) === null || _rest$onClick === void 0 || _rest$onClick.call(rest, e);
153
+ };
154
+ return (0, _react2.jsx)("div", {
155
+ className: wrapperClasses,
156
+ css: wrapperCssStyles
157
+ }, isToggle && !isCollapsible ? (0, _react2.jsx)(_button_group_button.EuiButtonGroupButton, (0, _extends2.default)({
158
+ id: id,
159
+ label: (0, _react2.jsx)(_react.default.Fragment, null, textContent, badgeElement),
160
+ className: classes,
161
+ css: cssStyles,
162
+ color: color,
163
+ isSelected: isSelected,
164
+ size: "compressed",
165
+ isDisabled: isDisabled,
166
+ iconSide: iconSide,
167
+ iconType: iconType,
168
+ isIconOnly: false,
169
+ type: type,
170
+ textProps: false,
103
171
  contentProps: _objectSpread(_objectSpread({}, contentProps), {}, {
104
172
  css: [contentStyles.euiFilterButton__content, iconType && contentStyles.hasIcon, contentProps === null || contentProps === void 0 ? void 0 : contentProps.css]
105
173
  })
106
- }, rest), (0, _react2.jsx)("span", (0, _extends2.default)({
107
- ref: ref,
108
- "data-text": dataText,
109
- title: dataText
110
- }, textProps, {
111
- className: buttonTextClassNames,
112
- css: textCssStyles
113
- }), children), showBadge && (0, _react2.jsx)(_badge.EuiNotificationBadge, {
114
- className: "euiFilterButton__notification",
115
- css: badgeStyles,
116
- "aria-label": hasActiveFilters ? activeBadgeLabel : availableBadgeLabel,
117
- color: isDisabled || !hasActiveFilters ? 'subdued' : badgeColor,
118
- role: "marquee" // https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/marquee_role
119
- }, badgeCount));
174
+ }, rest, {
175
+ onClick: onToggleClick
176
+ })) : button);
120
177
  };
121
178
  EuiFilterButton.propTypes = {
122
179
  /**
123
- * Bolds the button if true
180
+ * Highlights active filters
124
181
  */
125
182
  hasActiveFilters: _propTypes.default.bool,
126
183
  /**
@@ -134,7 +191,15 @@ EuiFilterButton.propTypes = {
134
191
  */
135
192
  numActiveFilters: _propTypes.default.number,
136
193
  /**
137
- * Applies a visual state to the button useful when using with a popover.
194
+ * Switches between toggle and regular button
195
+ * @default false
196
+ */
197
+ isToggle: _propTypes.default.bool,
198
+ /**
199
+ * Applies a visual state to the button.
200
+ * Automatically applies `aria-pressed` when used with `isToggle={true}`.
201
+ * Otherwise applies `aria-expanded` when used with `isToggle={false}` and
202
+ * `iconType="arrowDown"` as trigger button for e.g. a popover.
138
203
  */
139
204
  isSelected: _propTypes.default.bool,
140
205
  /**
@@ -3,9 +3,11 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.euiFilterButtonStyles = exports.euiFilterButtonDisplay = exports.euiFilterButtonChildStyles = void 0;
6
+ exports.euiFilterButtonWrapperStyles = exports.euiFilterButtonStyles = exports.euiFilterButtonDisplay = exports.euiFilterButtonChildStyles = void 0;
7
7
  var _react = require("@emotion/react");
8
+ var _services = require("../../services");
8
9
  var _global_styling = require("../../global_styling");
10
+ var _supports = require("../../global_styling/functions/supports");
9
11
  var _form = require("../form/form.styles");
10
12
  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)."; } /*
11
13
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
@@ -14,12 +16,13 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
14
16
  * in compliance with, at your election, the Elastic License 2.0 or the Server
15
17
  * Side Public License, v 1.
16
18
  */
17
- var euiFilterButtonDisplay = exports.euiFilterButtonDisplay = function euiFilterButtonDisplay(_ref4) {
18
- var euiTheme = _ref4.euiTheme;
19
+ var euiFilterButtonDisplay = exports.euiFilterButtonDisplay = function euiFilterButtonDisplay(euiThemeContext) {
20
+ var euiTheme = euiThemeContext.euiTheme;
21
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'buttonVariant');
19
22
  return {
20
23
  flex: '1 1 auto',
21
24
  minInlineSize: (0, _global_styling.mathWithUnits)(euiTheme.size.base, function (x) {
22
- return x * 3;
25
+ return x * (isRefreshVariant ? 2.75 : 3);
23
26
  })
24
27
  };
25
28
  };
@@ -33,9 +36,11 @@ var _ref3 = process.env.NODE_ENV === "production" ? {
33
36
  };
34
37
  var euiFilterButtonStyles = exports.euiFilterButtonStyles = function euiFilterButtonStyles(euiThemeContext) {
35
38
  var euiTheme = euiThemeContext.euiTheme;
39
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'buttonVariant');
36
40
  var _euiFormVariables = (0, _form.euiFormVariables)(euiThemeContext),
37
41
  controlHeight = _euiFormVariables.controlHeight,
38
42
  borderColor = _euiFormVariables.borderColor;
43
+ var selectedSelector = '.euiFilterButton-isSelected';
39
44
  var border = "".concat(euiTheme.border.width.thin, " solid ").concat(borderColor);
40
45
 
41
46
  // Pseudo elements create borders without affecting width. We also prefer them
@@ -43,14 +48,44 @@ var euiFilterButtonStyles = exports.euiFilterButtonStyles = function euiFilterBu
43
48
  var leftBorder = "\n &::before {\n content: '';\n position: absolute;\n ".concat((0, _global_styling.logicalCSS)('right', '100%'), "\n ").concat((0, _global_styling.logicalCSS)('vertical', 0), "\n ").concat((0, _global_styling.logicalCSS)('border-left', border), "\n }\n ");
44
49
  // Bottom borders are needed for responsive flex-wrap behavior
45
50
  var bottomBorder = "\n &::after {\n content: '';\n position: absolute;\n ".concat((0, _global_styling.logicalCSS)('top', '100%'), "\n ").concat((0, _global_styling.logicalCSS)('horizontal', 0), "\n ").concat((0, _global_styling.logicalCSS)('border-bottom', border), "\n }\n ");
51
+ var buttonStyles = isRefreshVariant ? "\n ".concat((0, _global_styling.logicalCSS)('width', '100%'), "\n\n &:not(").concat(selectedSelector, ") {\n &:hover,\n &:active {\n .euiFilterButton__notification[class*=\"subdued\"] {\n background-color: ").concat(euiTheme.components.filterButtonBadgeBackgroundHover, "\n }\n }\n }\n ") : "\n ".concat((0, _global_styling.logicalCSS)('height', controlHeight), "\n border-radius: 0;\n ").concat(leftBorder, "\n ").concat(bottomBorder, "\n\n /* :not(:disabled) specificity needed to override EuiButtonEmpty styles */\n &:hover:not(:disabled),\n &:focus:not(:disabled) {\n /* Remove underline from whole button so notifications don't get the underline */\n text-decoration: none;\n\n .euiFilterButton__text {\n /* And put it only on the actual text part */\n text-decoration: underline;\n }\n }\n ");
52
+ var toggleTypeStyles = isRefreshVariant ? "\n ".concat(euiFilterButtonDisplay(euiThemeContext), ";\n\n ").concat((0, _global_styling.highContrastModeStyles)(euiThemeContext, {
53
+ forced: "\n &:is(".concat(selectedSelector, ") {\n ").concat((0, _global_styling.preventForcedColors)(euiThemeContext), "\n color: ").concat(euiTheme.colors.emptyShade, ";\n background-color: ").concat(euiTheme.colors.fullShade, ";\n }\n ")
54
+ }), "\n ") : "\n font-weight: ".concat(euiTheme.font.weight.medium, ";\n padding: 0;\n\n &:is(").concat(selectedSelector, ") {\n color: ").concat((0, _global_styling.euiButtonEmptyColor)(euiThemeContext, 'text').color, ";\n background-color: transparent;\n font-weight: ").concat(euiTheme.font.weight.bold, ";\n }\n ");
55
+ var withNextSelector = isRefreshVariant ? '& + .euiFilterButton__wrapper' : '.euiFilterButton__wrapper:has(&) + .euiFilterButton__wrapper';
56
+ // handles display of borders between buttons
57
+ var withNextStyles = isRefreshVariant ? "\n &::before {\n border: none;\n }\n\n ".concat((0, _supports.cssSupportsHasWithNextSibling)("\n &:has(+ :not(&)) {\n ".concat((0, _global_styling.logicalCSS)('padding-right', '0'), "\n }\n ")), "\n ") : "\n .euiFilterButton {\n &::before {\n border: none;\n }\n }\n ";
46
58
  return {
47
- euiFilterButton: /*#__PURE__*/(0, _react.css)("position:relative;", euiFilterButtonDisplay(euiThemeContext), " ", (0, _global_styling.logicalCSS)('height', controlHeight), " border-radius:0;", leftBorder, " ", bottomBorder, "&:hover:not(:disabled),&:focus:not(:disabled){text-decoration:none;.euiFilterButton__text{text-decoration:underline;}}&:focus-visible{outline-offset:-", euiTheme.focus.width, ";};label:euiFilterButton;"),
48
- withNext: /*#__PURE__*/(0, _react.css)("&+.euiFilterButton{", (0, _global_styling.logicalCSS)('margin-left', "-".concat(euiTheme.size.xs)), "&::before{display:none;}};label:withNext;"),
59
+ euiFilterButton: /*#__PURE__*/(0, _react.css)(!isRefreshVariant && euiFilterButtonDisplay(euiThemeContext), ";position:relative;", buttonStyles, ";;label:euiFilterButton;"),
60
+ buttonType: {
61
+ default: /*#__PURE__*/(0, _react.css)(isRefreshVariant && "\n border-radius: 0;\n\n &:focus-visible {\n z-index: 1;\n outline-offset: -".concat(euiTheme.border.width.thick, ";\n border-radius: ").concat(euiTheme.border.radius.small, ";\n transition: none;\n }\n "), ";;label:default;"),
62
+ toggle: /*#__PURE__*/(0, _react.css)("&:focus-visible{outline-offset:", (0, _global_styling.mathWithUnits)(euiTheme.focus.width, function (x) {
63
+ return isRefreshVariant ? x / 2 : x * -1;
64
+ }), ";}", toggleTypeStyles, ";;label:toggle;")
65
+ },
66
+ withNext: /*#__PURE__*/(0, _react.css)(withNextSelector, "{", (0, _global_styling.logicalCSS)('margin-left', "-".concat(euiTheme.size.xs)), withNextStyles, ";};label:withNext;"),
49
67
  noGrow: _ref3,
50
68
  hasNotification: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('min-width', (0, _global_styling.mathWithUnits)(euiTheme.size.base, function (x) {
51
69
  return x * 6;
52
70
  })), ";;label:hasNotification;"),
53
- hasActiveFilters: /*#__PURE__*/(0, _react.css)("font-weight:", euiTheme.font.weight.bold, ";;label:hasActiveFilters;")
71
+ hasActiveFilters: /*#__PURE__*/(0, _react.css)("font-weight:", isRefreshVariant ? euiTheme.font.weight.regular : euiTheme.font.weight.bold, ";;label:hasActiveFilters;")
72
+ };
73
+ };
74
+ var euiFilterButtonWrapperStyles = exports.euiFilterButtonWrapperStyles = function euiFilterButtonWrapperStyles(euiThemeContext) {
75
+ var euiTheme = euiThemeContext.euiTheme;
76
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'buttonVariant');
77
+ var _euiFormVariables2 = (0, _form.euiFormVariables)(euiThemeContext),
78
+ borderColor = _euiFormVariables2.borderColor;
79
+ var border = "".concat(euiTheme.border.width.thin, " solid ").concat(borderColor);
80
+
81
+ // Pseudo elements create borders without affecting width. We also prefer them
82
+ // over box-shadow for Windows high contrast theme compatibility
83
+ var leftBorder = "\n &::before {\n content: '';\n position: absolute;\n inset: 0;\n ".concat((0, _global_styling.logicalCSS)('border-left', border), "\n\n pointer-events: none;\n }\n ");
84
+ // Bottom borders are needed for responsive flex-wrap behavior
85
+ var bottomBorder = "\n &::after {\n content: '';\n position: absolute;\n inset: 0;\n ".concat((0, _global_styling.logicalCSS)('border-bottom', border), "\n pointer-events: none;\n }\n ");
86
+ return {
87
+ wrapper: /*#__PURE__*/(0, _react.css)(euiFilterButtonDisplay(euiThemeContext), " position:relative;display:flex;align-items:center;", isRefreshVariant && "\n ".concat(leftBorder, "\n ").concat(bottomBorder, "\n "), " ", (0, _global_styling.logicalCSS)('padding-vertical', euiTheme.border.width.thin), ";;label:wrapper;"),
88
+ hasToggle: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('padding-horizontal', isRefreshVariant ? euiTheme.border.width.thin : '0'), (0, _supports.cssSupportsHasWithNextSibling)("\n &:not([class*=\"withNext\"]):has(+ :not(&)) {\n ".concat((0, _global_styling.logicalCSS)('padding-right', '0'), "\n }\n ")), ";;label:hasToggle;")
54
89
  };
55
90
  };
56
91
  var _ref = process.env.NODE_ENV === "production" ? {
@@ -62,24 +97,25 @@ var _ref = process.env.NODE_ENV === "production" ? {
62
97
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
63
98
  };
64
99
  var _ref2 = process.env.NODE_ENV === "production" ? {
65
- name: "nd1u8j-euiFilterButton__notification",
66
- styles: "cursor:inherit;label:euiFilterButton__notification;"
100
+ name: "zxesfz-euiFilterButton__notification",
101
+ styles: "cursor:inherit;forced-color-adjust:auto;&{transition:none;};label:euiFilterButton__notification;"
67
102
  } : {
68
- name: "nd1u8j-euiFilterButton__notification",
69
- styles: "cursor:inherit;label:euiFilterButton__notification;",
103
+ name: "zxesfz-euiFilterButton__notification",
104
+ styles: "cursor:inherit;forced-color-adjust:auto;&{transition:none;};label:euiFilterButton__notification;",
70
105
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
71
106
  };
72
- var euiFilterButtonChildStyles = exports.euiFilterButtonChildStyles = function euiFilterButtonChildStyles(_ref5) {
73
- var euiTheme = _ref5.euiTheme;
107
+ var euiFilterButtonChildStyles = exports.euiFilterButtonChildStyles = function euiFilterButtonChildStyles(euiThemeContext) {
108
+ var euiTheme = euiThemeContext.euiTheme;
109
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'buttonVariant');
74
110
  return {
75
111
  content: {
76
- euiFilterButton__content: /*#__PURE__*/(0, _react.css)(";label:euiFilterButton__content;"),
112
+ euiFilterButton__content: /*#__PURE__*/(0, _react.css)(isRefreshVariant && "\n .euiThemeProvider {\n display: inline-flex;\n }\n ", ";;label:euiFilterButton__content;"),
77
113
  hasIcon: /*#__PURE__*/(0, _react.css)("&>.euiIcon:last-child{", (0, _global_styling.logicalCSS)('margin-left', 'auto'), ";};label:hasIcon;")
78
114
  },
79
115
  text: {
80
116
  euiFilterButton__text: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiTextShift)('bold', 'data-text', euiTheme), " ", (0, _global_styling.euiTextTruncate)(), ";;label:euiFilterButton__text;"),
81
117
  hasNotification: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('min-width', (0, _global_styling.mathWithUnits)(euiTheme.size.base, function (x) {
82
- return x * 3;
118
+ return x * (isRefreshVariant ? 2 : 3);
83
119
  })), ";;label:hasNotification;")
84
120
  },
85
121
  notification: {
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.euiFilterGroupStyles = void 0;
7
7
  var _react = require("@emotion/react");
8
+ var _services = require("../../services");
8
9
  var _global_styling = require("../../global_styling");
9
10
  var _high_contrast = require("../../global_styling/functions/high_contrast");
10
11
  var _form = require("../form/form.styles");
@@ -26,20 +27,31 @@ var _ref = process.env.NODE_ENV === "production" ? {
26
27
  };
27
28
  var euiFilterGroupStyles = exports.euiFilterGroupStyles = function euiFilterGroupStyles(euiThemeContext) {
28
29
  var euiTheme = euiThemeContext.euiTheme;
30
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'buttonVariant');
29
31
  var _euiFormVariables = (0, _form.euiFormVariables)(euiThemeContext),
30
32
  backgroundColor = _euiFormVariables.backgroundColor,
31
33
  borderColor = _euiFormVariables.borderColor,
32
34
  controlBorderRadius = _euiFormVariables.controlBorderRadius,
35
+ controlHeight = _euiFormVariables.controlHeight,
33
36
  controlCompressedBorderRadius = _euiFormVariables.controlCompressedBorderRadius,
34
37
  controlCompressedHeight = _euiFormVariables.controlCompressedHeight;
38
+ var borderRadius = isRefreshVariant ? euiTheme.border.radius.small : controlBorderRadius;
39
+ var borderRadiusCompressed = isRefreshVariant ? euiTheme.border.radius.small : controlCompressedBorderRadius;
40
+ var borderStyle = isRefreshVariant ? "\n /* Adds the border on a pseudo element to prevent height differences between wrapper and buttons.\n Uses ::after to ensure overlap and prevents blocking by setting pointer-events: none */\n &::after {\n content: '';\n position: absolute;\n inset: 0;\n border: ".concat(euiTheme.border.width.thin, " solid ").concat(euiTheme.colors.borderBasePlain, ";\n border-radius: inherit;\n pointer-events: none;\n }\n ") : "\n ".concat((0, _high_contrast.highContrastModeStyles)(euiThemeContext, {
41
+ none: "box-shadow: inset 0 0 0 ".concat(euiTheme.border.width.thin, " ").concat(borderColor, ";"),
42
+ forced: "border: ".concat(euiTheme.border.thin, ";")
43
+ }), "\n ");
35
44
  return {
36
- euiFilterGroup: /*#__PURE__*/(0, _react.css)("display:inline-flex;", (0, _global_styling.logicalCSS)('max-width', '100%'), " overflow:hidden;background-color:", backgroundColor, ";", (0, _high_contrast.highContrastModeStyles)(euiThemeContext, {
37
- none: "box-shadow: inset 0 0 0 ".concat(euiTheme.border.width.thin, " ").concat(borderColor, ";"),
38
- forced: "border: ".concat(euiTheme.border.thin, ";")
39
- }), ">*:not(.euiFilterButton){", (0, _filter_button.euiFilterButtonDisplay)(euiThemeContext), ";}.euiPopover>.euiFilterButton{", (0, _global_styling.logicalCSS)('width', '100%'), ";}", (0, _global_styling.euiBreakpoint)(euiThemeContext, ['xs', 's']), "{flex-wrap:wrap;}", (0, _global_styling.euiBreakpoint)(euiThemeContext, ['xs']), "{display:flex;.euiFilterButton{flex-grow:1;}};label:euiFilterGroup;"),
45
+ euiFilterGroup: /*#__PURE__*/(0, _react.css)(isRefreshVariant && "position: relative;", " display:inline-flex;", (0, _global_styling.logicalCSS)('max-width', '100%'), " overflow:hidden;background-color:", backgroundColor, ";", borderStyle, ">*:not(.euiFilterButton__wrapper, .euiFilterButton){", (0, _filter_button.euiFilterButtonDisplay)(euiThemeContext), ";}.euiPopover>.euiFilterButton{", (0, _global_styling.logicalCSS)('width', '100%'), ";}", (0, _global_styling.euiBreakpoint)(euiThemeContext, ['xs', 's']), "{flex-wrap:wrap;}", (0, _global_styling.euiBreakpoint)(euiThemeContext, ['xs']), "{display:flex;", isRefreshVariant && "\n .euiPopover:focus-within {\n z-index: 1;\n }\n \n .euiFilterButton__wrapper {\n flex-grow: 1;\n }\n ", ";.euiFilterButton__wrapper{flex-grow:1;}};label:euiFilterGroup;"),
40
46
  fullWidth: _ref,
41
- uncompressed: /*#__PURE__*/(0, _react.css)("border-radius:", controlBorderRadius, ";", buttonChildrenBorderRadii(controlBorderRadius), ";;label:uncompressed;"),
42
- compressed: /*#__PURE__*/(0, _react.css)("border-radius:", controlCompressedBorderRadius, ";", buttonChildrenBorderRadii(controlCompressedBorderRadius), " .euiFilterButton{", (0, _global_styling.logicalCSS)('height', controlCompressedHeight), ";};label:compressed;"),
47
+ uncompressed: /*#__PURE__*/(0, _react.css)("border-radius:", borderRadius, ";.euiFilterButton__wrapper{", (0, _global_styling.logicalCSS)('height', controlHeight), ";}.euiFilterButton{", (0, _global_styling.logicalCSS)('height', controlHeight), ";}", !isRefreshVariant && buttonChildrenBorderRadii(borderRadius), " ", isRefreshVariant && "\n .euiFilterButton-isToggle {\n ".concat((0, _global_styling.logicalCSS)('height', (0, _global_styling.mathWithUnits)([controlHeight, euiTheme.size.xxs], function (x, y) {
48
+ return x - 3 * y;
49
+ })), "\n }\n "), ";;label:uncompressed;"),
50
+ compressed: /*#__PURE__*/(0, _react.css)("border-radius:", borderRadiusCompressed, ";", !isRefreshVariant && buttonChildrenBorderRadii(borderRadiusCompressed), " .euiFilterButton{", (0, _global_styling.logicalCSS)('height', isRefreshVariant ? (0, _global_styling.mathWithUnits)([controlCompressedHeight, euiTheme.border.width.thin], function (x, y) {
51
+ return x - 2 * y;
52
+ }) : controlCompressedHeight), ";}", isRefreshVariant && "\n .euiFilterButton-isToggle {\n ".concat((0, _global_styling.logicalCSS)('height', (0, _global_styling.mathWithUnits)([controlCompressedHeight, euiTheme.size.xxs], function (x, y) {
53
+ return x - 3 * y;
54
+ })), "\n }\n "), ";;label:compressed;"),
43
55
  /**
44
56
  * Not used in EuiFilterGroup directly, but used by EuiSearchBar and consumers
45
57
  * A fixed width is required because of the shift in widths that can be caused
@@ -85,6 +85,7 @@ var EuiMarkdownEditorFooter = exports.EuiMarkdownEditorFooter = /*#__PURE__*/(0,
85
85
  var syntaxTitle = (0, _i18n.useEuiI18n)('euiMarkdownEditorFooter.syntaxTitle', 'Syntax help');
86
86
  var _useContext = (0, _react.useContext)(_markdown_context.EuiMarkdownContext),
87
87
  readOnly = _useContext.readOnly;
88
+ var helpModalTitleId = (0, _services.useGeneratedHtmlId)();
88
89
  if (isUploadingFiles) {
89
90
  uploadButton = (0, _react2.jsx)(_button.EuiButtonIcon, {
90
91
  size: "s",
@@ -175,8 +176,11 @@ var EuiMarkdownEditorFooter = exports.EuiMarkdownEditorFooter = /*#__PURE__*/(0,
175
176
  })), isShowingHelpModal && (0, _react2.jsx)(_modal.EuiModal, {
176
177
  onClose: function onClose() {
177
178
  return setIsShowingHelpModal(false);
178
- }
179
- }, (0, _react2.jsx)(_modal.EuiModalHeader, null, (0, _react2.jsx)(_title.EuiTitle, null, (0, _react2.jsx)("h1", null, syntaxTitle))), (0, _react2.jsx)(_modal.EuiModalBody, null, (0, _react2.jsx)(_text.EuiText, null, (0, _react2.jsx)(_i18n.EuiI18n, {
179
+ },
180
+ "aria-labelledby": helpModalTitleId
181
+ }, (0, _react2.jsx)(_modal.EuiModalHeader, null, (0, _react2.jsx)(_title.EuiTitle, null, (0, _react2.jsx)("h1", {
182
+ id: helpModalTitleId
183
+ }, syntaxTitle))), (0, _react2.jsx)(_modal.EuiModalBody, null, (0, _react2.jsx)(_text.EuiText, null, (0, _react2.jsx)(_i18n.EuiI18n, {
180
184
  tokens: ['euiMarkdownEditorFooter.syntaxModalDescriptionPrefix', 'euiMarkdownEditorFooter.syntaxModalDescriptionSuffix'],
181
185
  defaults: ['This editor uses', 'You can also utilize these additional syntax plugins to add rich content to your text.']
182
186
  }, function (_ref3) {
@@ -224,7 +228,8 @@ var EuiMarkdownEditorFooter = exports.EuiMarkdownEditorFooter = /*#__PURE__*/(0,
224
228
  return setIsShowingHelpPopover(false);
225
229
  },
226
230
  panelPaddingSize: "s",
227
- anchorPosition: "upCenter"
231
+ anchorPosition: "upCenter",
232
+ "aria-labelledby": helpModalTitleId
228
233
  }, (0, _react2.jsx)(_i18n.EuiI18n, {
229
234
  tokens: ['euiMarkdownEditorFooter.syntaxPopoverDescription'],
230
235
  defaults: ['This editor uses']
@@ -293,6 +293,7 @@ var FieldValueSelectionFilter = exports.FieldValueSelectionFilter = /*#__PURE__*
293
293
  return (0, _react2.jsx)(_filter_group.EuiFilterButton, {
294
294
  iconType: "arrowDown",
295
295
  iconSide: "right",
296
+ isSelected: active,
296
297
  hasActiveFilters: active,
297
298
  numActiveFilters: active ? activeItemsCount : undefined,
298
299
  grow: true,
@@ -80,8 +80,10 @@ var FieldValueToggleFilter = exports.FieldValueToggleFilter = /*#__PURE__*/funct
80
80
  };
81
81
  return (0, _react2.jsx)(_filter_group.EuiFilterButton, {
82
82
  onClick: onClick,
83
+ isSelected: hasActiveFilters,
83
84
  hasActiveFilters: hasActiveFilters,
84
- "aria-pressed": !!hasActiveFilters
85
+ "aria-pressed": !!hasActiveFilters,
86
+ isToggle: true
85
87
  }, name);
86
88
  }
87
89
  }]);
@@ -81,9 +81,11 @@ var FieldValueToggleGroupFilter = exports.FieldValueToggleGroupFilter = /*#__PUR
81
81
  return (0, _react2.jsx)(_filter_group.EuiFilterButton, {
82
82
  key: key,
83
83
  onClick: onClick,
84
+ isSelected: active,
84
85
  hasActiveFilters: active,
85
86
  "aria-pressed": !!active,
86
- withNext: !isLastItem
87
+ withNext: !isLastItem,
88
+ isToggle: true
87
89
  }, name);
88
90
  });
89
91
  }
@@ -76,8 +76,10 @@ var IsFilter = exports.IsFilter = /*#__PURE__*/function (_Component) {
76
76
  };
77
77
  return (0, _react2.jsx)(_filter_group.EuiFilterButton, {
78
78
  onClick: onClick,
79
+ isSelected: hasActiveFilters,
79
80
  hasActiveFilters: hasActiveFilters,
80
- "aria-pressed": !!hasActiveFilters
81
+ "aria-pressed": !!hasActiveFilters,
82
+ isToggle: true
81
83
  }, name);
82
84
  }
83
85
  }]);
@@ -194,7 +194,7 @@ describe('EuiSearchBar', function () {
194
194
  cy.checkAxe();
195
195
  });
196
196
  it('has zero violations after filtering on Open items', function () {
197
- cy.get('button.euiButtonEmpty').first().focus();
197
+ cy.get('button.euiFilterButton').first().focus();
198
198
  cy.realPress('Enter');
199
199
  cy.get('table.euiTable tbody').find('tr').should('have.length', 3);
200
200
  cy.checkAxe();
@@ -205,12 +205,12 @@ describe('EuiSearchBar', function () {
205
205
  cy.checkAxe();
206
206
  });
207
207
  it('has zero violations after filtering by Tags', function () {
208
- cy.get('button.euiButtonEmpty').last().focus();
208
+ cy.get('button.euiFilterButton').last().focus();
209
209
  cy.realPress('Enter');
210
210
  cy.realPress('ArrowDown');
211
211
  cy.realPress('Enter');
212
212
  cy.realPress('Escape');
213
- cy.get('button.euiButtonEmpty').last().should('have.focus');
213
+ cy.get('button.euiFilterButton').last().should('have.focus');
214
214
  cy.get('table.euiTable tbody').find('tr').should('have.length', 3);
215
215
  cy.checkAxe();
216
216
  cy.repeatRealPress(['Shift', 'Tab'], 3);