@elastic/eui 67.1.8 → 67.1.10

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 (75) hide show
  1. package/es/components/button/button.js +1 -0
  2. package/es/components/button/button_display/_button_display.js +3 -3
  3. package/es/components/button/button_display/_button_display.styles.js +2 -1
  4. package/es/components/date_picker/super_date_picker/super_update_button.js +1 -1
  5. package/es/components/description_list/description_list.styles.js +2 -2
  6. package/es/components/description_list/description_list_description.js +6 -2
  7. package/es/components/description_list/description_list_description.styles.js +2 -2
  8. package/es/components/description_list/description_list_title.styles.js +2 -2
  9. package/es/components/facet/facet_button.js +55 -1
  10. package/es/components/flyout/flyout.styles.js +7 -7
  11. package/es/components/image/image_wrapper.styles.js +3 -3
  12. package/es/components/page/page.styles.js +2 -2
  13. package/es/components/toast/global_toast_list.styles.js +5 -5
  14. package/es/global_styling/mixins/_helpers.js +1 -1
  15. package/es/global_styling/mixins/_responsive.js +46 -1
  16. package/eui.d.ts +23 -4
  17. package/lib/components/button/button.js +1 -0
  18. package/lib/components/button/button_display/_button_display.js +3 -3
  19. package/lib/components/button/button_display/_button_display.styles.js +2 -1
  20. package/lib/components/date_picker/super_date_picker/super_update_button.js +1 -1
  21. package/lib/components/description_list/description_list.styles.js +1 -1
  22. package/lib/components/description_list/description_list_description.js +5 -1
  23. package/lib/components/description_list/description_list_description.styles.js +1 -1
  24. package/lib/components/description_list/description_list_title.styles.js +1 -1
  25. package/lib/components/facet/facet_button.js +56 -2
  26. package/lib/components/flyout/flyout.styles.js +6 -6
  27. package/lib/components/image/image_wrapper.styles.js +2 -2
  28. package/lib/components/page/page.styles.js +1 -1
  29. package/lib/components/toast/global_toast_list.styles.js +4 -4
  30. package/lib/global_styling/mixins/_helpers.js +1 -1
  31. package/lib/global_styling/mixins/_responsive.js +60 -3
  32. package/optimize/es/components/button/button.js +1 -0
  33. package/optimize/es/components/button/button_display/_button_display.js +2 -2
  34. package/optimize/es/components/button/button_display/_button_display.styles.js +2 -1
  35. package/optimize/es/components/date_picker/super_date_picker/super_update_button.js +1 -1
  36. package/optimize/es/components/description_list/description_list.styles.js +2 -2
  37. package/optimize/es/components/description_list/description_list_description.js +6 -2
  38. package/optimize/es/components/description_list/description_list_description.styles.js +2 -2
  39. package/optimize/es/components/description_list/description_list_title.styles.js +2 -2
  40. package/optimize/es/components/flyout/flyout.styles.js +7 -7
  41. package/optimize/es/components/image/image_wrapper.styles.js +3 -3
  42. package/optimize/es/components/page/page.styles.js +2 -2
  43. package/optimize/es/components/toast/global_toast_list.styles.js +5 -5
  44. package/optimize/es/global_styling/mixins/_helpers.js +1 -1
  45. package/optimize/es/global_styling/mixins/_responsive.js +46 -1
  46. package/optimize/lib/components/button/button.js +1 -0
  47. package/optimize/lib/components/button/button_display/_button_display.js +2 -2
  48. package/optimize/lib/components/button/button_display/_button_display.styles.js +2 -1
  49. package/optimize/lib/components/date_picker/super_date_picker/super_update_button.js +1 -1
  50. package/optimize/lib/components/description_list/description_list.styles.js +1 -1
  51. package/optimize/lib/components/description_list/description_list_description.js +5 -1
  52. package/optimize/lib/components/description_list/description_list_description.styles.js +1 -1
  53. package/optimize/lib/components/description_list/description_list_title.styles.js +1 -1
  54. package/optimize/lib/components/flyout/flyout.styles.js +6 -6
  55. package/optimize/lib/components/image/image_wrapper.styles.js +2 -2
  56. package/optimize/lib/components/page/page.styles.js +1 -1
  57. package/optimize/lib/components/toast/global_toast_list.styles.js +4 -4
  58. package/optimize/lib/global_styling/mixins/_helpers.js +1 -1
  59. package/optimize/lib/global_styling/mixins/_responsive.js +60 -3
  60. package/package.json +1 -1
  61. package/test-env/components/button/button.js +1 -0
  62. package/test-env/components/button/button_display/_button_display.js +3 -3
  63. package/test-env/components/button/button_display/_button_display.styles.js +2 -1
  64. package/test-env/components/date_picker/super_date_picker/super_update_button.js +1 -1
  65. package/test-env/components/description_list/description_list.styles.js +1 -1
  66. package/test-env/components/description_list/description_list_description.js +5 -1
  67. package/test-env/components/description_list/description_list_description.styles.js +1 -1
  68. package/test-env/components/description_list/description_list_title.styles.js +1 -1
  69. package/test-env/components/facet/facet_button.js +56 -2
  70. package/test-env/components/flyout/flyout.styles.js +6 -6
  71. package/test-env/components/image/image_wrapper.styles.js +2 -2
  72. package/test-env/components/page/page.styles.js +1 -1
  73. package/test-env/components/toast/global_toast_list.styles.js +4 -4
  74. package/test-env/global_styling/mixins/_helpers.js +1 -1
  75. package/test-env/global_styling/mixins/_responsive.js +60 -3
@@ -212,6 +212,7 @@ export var EuiButtonDisplayDeprecated = /*#__PURE__*/forwardRef(function (_ref,
212
212
 
213
213
  if (minWidth !== undefined || minWidth !== null) {
214
214
  calculatedStyle = _objectSpread(_objectSpread({}, calculatedStyle), {}, {
215
+ // @ts-ignore - deprecated component
215
216
  minWidth: minWidth
216
217
  });
217
218
  }
@@ -74,7 +74,7 @@ export var EuiButtonDisplay = /*#__PURE__*/forwardRef(function (_ref2, ref) {
74
74
  var theme = useEuiTheme();
75
75
  var styles = euiButtonDisplayStyles(theme);
76
76
  var buttonRadiusStyle = useEuiButtonRadiusCSS()[size];
77
- var cssStyles = [styles.euiButtonDisplay, styles[size], fullWidth && styles.fullWidth, buttonIsDisabled && styles.isDisabled, buttonRadiusStyle];
77
+ var cssStyles = [styles.euiButtonDisplay, styles[size], fullWidth && styles.fullWidth, minWidth == null && styles.defaultMinWidth, buttonIsDisabled && styles.isDisabled, buttonRadiusStyle];
78
78
 
79
79
  var innerNode = ___EmotionJSX(EuiButtonDisplayContent, _extends({
80
80
  isLoading: isLoading,
@@ -111,7 +111,7 @@ export var EuiButtonDisplay = /*#__PURE__*/forwardRef(function (_ref2, ref) {
111
111
 
112
112
  return createElement(element, _objectSpread(_objectSpread(_objectSpread({
113
113
  css: cssStyles,
114
- style: minWidth != null ? _objectSpread(_objectSpread({}, style), {}, {
114
+ style: minWidth ? _objectSpread(_objectSpread({}, style), {}, {
115
115
  minInlineSize: minWidth
116
116
  }) : style,
117
117
  ref: ref
@@ -150,7 +150,7 @@ EuiButtonDisplay.propTypes = {
150
150
  /**
151
151
  * Override the default minimum width
152
152
  */
153
- minWidth: PropTypes.any,
153
+ minWidth: PropTypes.oneOfType([PropTypes.any.isRequired, PropTypes.oneOf([false])]),
154
154
 
155
155
  /**
156
156
  * Force disables the button and changes the icon to a loading spinner
@@ -32,10 +32,11 @@ export var euiButtonDisplayStyles = function euiButtonDisplayStyles(euiThemeCont
32
32
  var euiTheme = euiThemeContext.euiTheme;
33
33
  return {
34
34
  // Base
35
- euiButtonDisplay: /*#__PURE__*/css(euiButtonBaseCSS(), ";", logicalCSS('min-width', "".concat(euiTheme.base * 7, "px")), " font-weight:", euiTheme.font.weight.medium, ";padding:0 ", euiTheme.size.m, ";&:hover:not(:disabled),&:focus{text-decoration:underline;};label:euiButtonDisplay;"),
35
+ euiButtonDisplay: /*#__PURE__*/css(euiButtonBaseCSS(), ";font-weight:", euiTheme.font.weight.medium, ";padding:0 ", euiTheme.size.m, ";&:hover:not(:disabled),&:focus{text-decoration:underline;};label:euiButtonDisplay;"),
36
36
  // States
37
37
  isDisabled: _ref,
38
38
  fullWidth: /*#__PURE__*/css("display:block;", logicalCSS('width', '100%'), ";;label:fullWidth;"),
39
+ defaultMinWidth: /*#__PURE__*/css(logicalCSS('min-width', "".concat(euiTheme.base * 7, "px")), ";;label:defaultMinWidth;"),
39
40
  // Sizes
40
41
  xs: /*#__PURE__*/css(_buttonSize(euiTheme.size.l), euiFontSize(euiThemeContext, 'xs'), ";label:xs;"),
41
42
  s: /*#__PURE__*/css(_buttonSize(euiTheme.size.xl), euiFontSize(euiThemeContext, 's'), ";label:s;"),
@@ -181,7 +181,7 @@ export var EuiSuperUpdateButton = /*#__PURE__*/function (_Component) {
181
181
  sizes: responsive || 'none'
182
182
  }, ___EmotionJSX(EuiButton, _extends({
183
183
  className: classes,
184
- minWidth: 0
184
+ minWidth: false
185
185
  }, sharedButtonProps, {
186
186
  fill: fill,
187
187
  textProps: _objectSpread(_objectSpread({}, restTextProps), {}, {
@@ -6,7 +6,7 @@
6
6
  * Side Public License, v 1.
7
7
  */
8
8
  import { css } from '@emotion/react';
9
- import { logicalTextAlignCSS, euiBreakpoint } from '../../global_styling';
9
+ import { logicalTextAlignCSS, euiMinBreakpoint } from '../../global_styling';
10
10
  export var euiDescriptionListStyles = function euiDescriptionListStyles(euiThemeContext) {
11
11
  // Flex display for column and responsive column
12
12
  var columnDisplay = "\n display: flex;\n align-items: baseline;\n flex-wrap: wrap; \n ";
@@ -17,7 +17,7 @@ export var euiDescriptionListStyles = function euiDescriptionListStyles(euiTheme
17
17
  inline: /*#__PURE__*/css(";label:inline;"),
18
18
  column: /*#__PURE__*/css(columnDisplay, ";;label:column;"),
19
19
  // Responsive columns behave as a row on breakpoints xs-s
20
- responsiveColumn: /*#__PURE__*/css(euiBreakpoint(euiThemeContext, ['m', 'xl']), "{", columnDisplay, ";};label:responsiveColumn;"),
20
+ responsiveColumn: /*#__PURE__*/css(euiMinBreakpoint(euiThemeContext, 'm'), "{", columnDisplay, ";};label:responsiveColumn;"),
21
21
  // Alignment
22
22
  center: /*#__PURE__*/css(logicalTextAlignCSS('center'), ";;label:center;"),
23
23
  left: /*#__PURE__*/css(logicalTextAlignCSS('left'), ";;label:left;")
@@ -28,7 +28,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
28
28
  import React, { useContext } from 'react';
29
29
  import PropTypes from "prop-types";
30
30
  import classNames from 'classnames';
31
- import { useEuiTheme } from '../../services';
31
+ import { useEuiTheme, useIsWithinMinBreakpoint } from '../../services';
32
32
  import { euiDescriptionListDescriptionStyles } from './description_list_description.styles';
33
33
  import { EuiDescriptionListContext } from './description_list_context'; // Export required for correct inference by HOCs
34
34
 
@@ -45,6 +45,7 @@ export var EuiDescriptionListDescription = function EuiDescriptionListDescriptio
45
45
  align = _useContext.align,
46
46
  gutterSize = _useContext.gutterSize;
47
47
 
48
+ var showResponsiveColumns = useIsWithinMinBreakpoint('m');
48
49
  var theme = useEuiTheme();
49
50
  var styles = euiDescriptionListDescriptionStyles(theme);
50
51
  var conditionalStyles = compressed && textStyle === 'reverse' ? [styles.fontStyles.compressed] : [styles.fontStyles[textStyle]];
@@ -60,7 +61,10 @@ export var EuiDescriptionListDescription = function EuiDescriptionListDescriptio
60
61
  conditionalStyles.push(styles.left);
61
62
  }
62
63
 
63
- conditionalStyles.push(styles[gutterSize]);
64
+ if (type === 'column' || showResponsiveColumns) {
65
+ conditionalStyles.push(styles[gutterSize]);
66
+ }
67
+
64
68
  break;
65
69
  }
66
70
 
@@ -8,7 +8,7 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
8
8
  * Side Public License, v 1.
9
9
  */
10
10
  import { css } from '@emotion/react';
11
- import { euiFontSize, euiBreakpoint, logicalTextAlignCSS, logicalCSS } from '../../global_styling';
11
+ import { euiFontSize, euiMaxBreakpoint, euiMinBreakpoint, logicalTextAlignCSS, logicalCSS } from '../../global_styling';
12
12
  import { euiTitle } from '../title/title.styles';
13
13
 
14
14
  var _ref = process.env.NODE_ENV === "production" ? {
@@ -28,7 +28,7 @@ export var euiDescriptionListDescriptionStyles = function euiDescriptionListDesc
28
28
  // Types
29
29
  row: /*#__PURE__*/css(";label:row;"),
30
30
  column: /*#__PURE__*/css(columnDisplay, ";;label:column;"),
31
- responsiveColumn: /*#__PURE__*/css(euiBreakpoint(euiThemeContext, ['xs', 's']), "{", logicalCSS('width', '100%'), " padding:0;}", euiBreakpoint(euiThemeContext, ['m', 'xl']), "{", columnDisplay, ";};label:responsiveColumn;"),
31
+ responsiveColumn: /*#__PURE__*/css(euiMaxBreakpoint(euiThemeContext, 'm'), "{", logicalCSS('width', '100%'), " padding:0;}", euiMinBreakpoint(euiThemeContext, 'm'), "{", columnDisplay, ";};label:responsiveColumn;"),
32
32
  inline: _ref,
33
33
  // This nested block handles just the font styling based on compressed and reverse
34
34
  fontStyles: {
@@ -6,7 +6,7 @@
6
6
  * Side Public License, v 1.
7
7
  */
8
8
  import { css } from '@emotion/react';
9
- import { euiFontSize, euiTextBreakWord, logicalTextAlignCSS, euiBreakpoint, logicalCSS } from '../../global_styling';
9
+ import { euiFontSize, euiTextBreakWord, logicalTextAlignCSS, euiMaxBreakpoint, euiMinBreakpoint, logicalCSS } from '../../global_styling';
10
10
  import { tint } from '../../services';
11
11
  import { euiTitle } from '../title/title.styles';
12
12
  export var euiDescriptionListTitleStyles = function euiDescriptionListTitleStyles(euiThemeContext) {
@@ -18,7 +18,7 @@ export var euiDescriptionListTitleStyles = function euiDescriptionListTitleStyle
18
18
  // Types
19
19
  row: /*#__PURE__*/css(";label:row;"),
20
20
  column: /*#__PURE__*/css(columnDisplay, ";;label:column;"),
21
- responsiveColumn: /*#__PURE__*/css(euiBreakpoint(euiThemeContext, ['xs', 's']), "{", logicalCSS('width', '100%'), " padding:0;}", euiBreakpoint(euiThemeContext, ['m', 'xl']), "{", columnDisplay, ";};label:responsiveColumn;"),
21
+ responsiveColumn: /*#__PURE__*/css(euiMaxBreakpoint(euiThemeContext, 'm'), "{", logicalCSS('width', '100%'), " padding:0;}", euiMinBreakpoint(euiThemeContext, 'm'), "{", columnDisplay, ";};label:responsiveColumn;"),
22
22
  inline: /*#__PURE__*/css("display:inline;border-radius:", euiTheme.border.radius.small, ";font-weight:", euiTheme.font.weight.medium, ";background-color:", colorMode === 'DARK' ? tint(euiTheme.colors.lightestShade, 0.5) : euiTheme.colors.lightestShade, ";", logicalCSS('margin-vertical', '0'), " ", logicalCSS('margin-horizontal', euiTheme.size.xs), "&:first-of-type{", logicalCSS('margin-left', '0'), ";};label:inline;"),
23
23
  // This nested block handles just the font styling based on compressed and reverse
24
24
  fontStyles: {
@@ -105,7 +105,7 @@ EuiFacetButton.propTypes = {
105
105
  /**
106
106
  * ReactNode to render as this component's content
107
107
  */
108
- children: PropTypes.node.isRequired,
108
+ children: PropTypes.oneOfType([PropTypes.node.isRequired, PropTypes.node]),
109
109
 
110
110
  /**
111
111
  * Any node, but preferably a `EuiIcon` or `EuiAvatar`
@@ -113,11 +113,20 @@ EuiFacetButton.propTypes = {
113
113
  icon: PropTypes.node,
114
114
  isDisabled: PropTypes.bool,
115
115
 
116
+ /**
117
+ * Force disables the button and changes the icon to a loading spinner
118
+ */
119
+
116
120
  /**
117
121
  * Adds/swaps for loading spinner & disables
118
122
  */
119
123
  isLoading: PropTypes.bool,
120
124
 
125
+ /**
126
+ * Applies the boolean state as the `aria-pressed` property to create a toggle button.
127
+ * *Only use when the readable text does not change between states.*
128
+ */
129
+
121
130
  /**
122
131
  * Changes visual of button to indicate it's currently selected
123
132
  */
@@ -127,6 +136,51 @@ EuiFacetButton.propTypes = {
127
136
  * Adds a notification indicator for displaying the quantity provided
128
137
  */
129
138
  quantity: PropTypes.number,
139
+ size: PropTypes.any,
140
+
141
+ /**
142
+ * Extends the button to 100% width
143
+ */
144
+ fullWidth: PropTypes.bool,
145
+
146
+ /**
147
+ * Override the default minimum width
148
+ */
149
+ minWidth: PropTypes.oneOfType([PropTypes.any.isRequired, PropTypes.oneOf([false])]),
150
+
151
+ /**
152
+ * Object of props passed to the <span/> wrapping the button's content
153
+ */
154
+ contentProps: PropTypes.shape({
155
+ className: PropTypes.string,
156
+ "aria-label": PropTypes.string,
157
+ "data-test-subj": PropTypes.string,
158
+ css: PropTypes.any
159
+ }),
160
+ style: PropTypes.any,
161
+
162
+ /**
163
+ * Any `type` accepted by EuiIcon
164
+ */
165
+ iconType: PropTypes.oneOfType([PropTypes.oneOf(["accessibility", "addDataApp", "advancedSettingsApp", "agentApp", "aggregate", "alert", "analyzeEvent", "annotation", "apmApp", "apmTrace", "appSearchApp", "apps", "arrowDown", "arrowLeft", "arrowRight", "arrowUp", "arrowStart", "arrowEnd", "asterisk", "auditbeatApp", "beaker", "bell", "bellSlash", "bolt", "boxesHorizontal", "boxesVertical", "branch", "branchUser", "broom", "brush", "bug", "bullseye", "calendar", "canvasApp", "casesApp", "check", "checkInCircleFilled", "cheer", "classificationJob", "clock", "cloudDrizzle", "cloudStormy", "cloudSunny", "cluster", "codeApp", "color", "compute", "console", "consoleApp", "container", "continuityAbove", "continuityAboveBelow", "continuityBelow", "continuityWithin", "controlsHorizontal", "controlsVertical", "copy", "copyClipboard", "createAdvancedJob", "createMultiMetricJob", "createPopulationJob", "createSingleMetricJob", "cross", "crossClusterReplicationApp", "crossInACircleFilled", "crosshairs", "currency", "cut", "dashboardApp", "dataVisualizer", "database", "desktop", "devToolsApp", "discoverApp", "document", "documentEdit", "documentation", "documents", "dot", "doubleArrowLeft", "doubleArrowRight", "download", "editorAlignCenter", "editorAlignLeft", "editorAlignRight", "editorBold", "editorChecklist", "editorCodeBlock", "editorComment", "editorDistributeHorizontal", "editorDistributeVertical", "editorHeading", "editorItalic", "editorItemAlignBottom", "editorItemAlignCenter", "editorItemAlignLeft", "editorItemAlignMiddle", "editorItemAlignRight", "editorItemAlignTop", "editorLink", "editorOrderedList", "editorPositionBottomLeft", "editorPositionBottomRight", "editorPositionTopLeft", "editorPositionTopRight", "editorRedo", "editorStrike", "editorTable", "editorUnderline", "editorUndo", "editorUnorderedList", "email", "empty", "emsApp", "eql", "eraser", "exit", "expand", "expandMini", "exportAction", "eye", "eyeClosed", "faceHappy", "faceNeutral", "faceSad", "filebeatApp", "filter", "flag", "fleetApp", "fold", "folderCheck", "folderClosed", "folderExclamation", "folderOpen", "frameNext", "framePrevious", "fullScreen", "fullScreenExit", "function", "gear", "gisApp", "glasses", "globe", "grab", "grabHorizontal", "graphApp", "grid", "grokApp", "heart", "heartbeatApp", "heatmap", "help", "home", "iInCircle", "image", "importAction", "indexClose", "indexEdit", "indexFlush", "indexManagementApp", "indexMapping", "indexOpen", "indexPatternApp", "indexRollupApp", "indexRuntime", "indexSettings", "inputOutput", "inspect", "invert", "ip", "keyboard", "kqlField", "kqlFunction", "kqlOperand", "kqlSelector", "kqlValue", "kubernetesNode", "kubernetesPod", "layers", "lensApp", "lettering", "lineDashed", "lineDotted", "lineSolid", "link", "list", "listAdd", "lock", "lockOpen", "logoAWS", "logoAWSMono", "logoAerospike", "logoApache", "logoAppSearch", "logoAzure", "logoAzureMono", "logoBeats", "logoBusinessAnalytics", "logoCeph", "logoCloud", "logoCloudEnterprise", "logoCode", "logoCodesandbox", "logoCouchbase", "logoDocker", "logoDropwizard", "logoElastic", "logoElasticStack", "logoElasticsearch", "logoEnterpriseSearch", "logoEtcd", "logoGCP", "logoGCPMono", "logoGithub", "logoGmail", "logoGolang", "logoGoogleG", "logoHAproxy", "logoIBM", "logoIBMMono", "logoKafka", "logoKibana", "logoKubernetes", "logoLogging", "logoLogstash", "logoMaps", "logoMemcached", "logoMetrics", "logoMongodb", "logoMySQL", "logoNginx", "logoObservability", "logoOsquery", "logoPhp", "logoPostgres", "logoPrometheus", "logoRabbitmq", "logoRedis", "logoSecurity", "logoSiteSearch", "logoSketch", "logoSlack", "logoUptime", "logoWebhook", "logoWindows", "logoWorkplaceSearch", "logsApp", "logstashFilter", "logstashIf", "logstashInput", "logstashOutput", "logstashQueue", "machineLearningApp", "magnet", "magnifyWithExclamation", "magnifyWithMinus", "magnifyWithPlus", "managementApp", "mapMarker", "memory", "menu", "menuDown", "menuLeft", "menuRight", "menuUp", "merge", "metricbeatApp", "metricsApp", "minimize", "minus", "minusInCircle", "minusInCircleFilled", "mobile", "monitoringApp", "moon", "namespace", "nested", "node", "notebookApp", "number", "offline", "online", "outlierDetectionJob", "package", "packetbeatApp", "pageSelect", "pagesSelect", "paperClip", "partial", "pause", "payment", "pencil", "percent", "pin", "pinFilled", "pipelineApp", "play", "playFilled", "plus", "plusInCircle", "plusInCircleFilled", "popout", "push", "questionInCircle", "quote", "recentlyViewedApp", "refresh", "regressionJob", "reporter", "reportingApp", "returnKey", "save", "savedObjectsApp", "scale", "search", "searchProfilerApp", "securityAnalyticsApp", "securityApp", "securitySignal", "securitySignalDetected", "securitySignalResolved", "sessionViewer", "shard", "share", "snowflake", "sortDown", "sortLeft", "sortRight", "sortUp", "sortable", "spacesApp", "sqlApp", "starEmpty", "starEmptySpace", "starFilled", "starFilledSpace", "starMinusEmpty", "starMinusFilled", "starPlusEmpty", "starPlusFilled", "stats", "stop", "stopFilled", "stopSlash", "storage", "string", "submodule", "sun", "swatchInput", "symlink", "tableDensityCompact", "tableDensityExpanded", "tableDensityNormal", "tableOfContents", "tag", "tear", "temperature", "timeline", "timelionApp", "timeRefresh", "timeslider", "training", "trash", "unfold", "unlink", "upgradeAssistantApp", "uptimeApp", "user", "userAvatar", "users", "usersRolesApp", "vector", "videoPlayer", "visArea", "visAreaStacked", "visBarHorizontal", "visBarHorizontalStacked", "visBarVertical", "visBarVerticalStacked", "visGauge", "visGoal", "visLine", "visMapCoordinate", "visMapRegion", "visMetric", "visPie", "visTable", "visTagCloud", "visText", "visTimelion", "visVega", "visVisualBuilder", "visualizeApp", "watchesApp", "wordWrap", "wordWrapDisabled", "workplaceSearchApp", "wrench", "tokenAlias", "tokenAnnotation", "tokenArray", "tokenBinary", "tokenBoolean", "tokenClass", "tokenCompletionSuggester", "tokenConstant", "tokenDate", "tokenDenseVector", "tokenElement", "tokenEnum", "tokenEnumMember", "tokenEvent", "tokenException", "tokenField", "tokenFile", "tokenFlattened", "tokenFunction", "tokenGeo", "tokenHistogram", "tokenInterface", "tokenIP", "tokenJoin", "tokenKey", "tokenKeyword", "tokenMethod", "tokenMetricCounter", "tokenMetricGauge", "tokenModule", "tokenNamespace", "tokenNested", "tokenNull", "tokenNumber", "tokenObject", "tokenOperator", "tokenPackage", "tokenParameter", "tokenPercolator", "tokenProperty", "tokenRange", "tokenRankFeature", "tokenRankFeatures", "tokenRepo", "tokenSearchType", "tokenShape", "tokenString", "tokenStruct", "tokenSymbol", "tokenTag", "tokenText", "tokenTokenCount", "tokenVariable"]).isRequired, PropTypes.string.isRequired, PropTypes.elementType.isRequired]),
166
+
167
+ /**
168
+ * Can only be one side `left` or `right`
169
+ */
170
+ iconSide: PropTypes.oneOfType([PropTypes.any.isRequired, PropTypes.oneOf([undefined])]),
171
+
172
+ /**
173
+ * Object of props passed to the <span/> wrapping the content's text/children only (not icon)
174
+ */
175
+ textProps: PropTypes.shape({
176
+ className: PropTypes.string,
177
+ "aria-label": PropTypes.string,
178
+ "data-test-subj": PropTypes.string,
179
+ css: PropTypes.any,
180
+ ref: PropTypes.any,
181
+ "data-text": PropTypes.string
182
+ }),
183
+ iconSize: PropTypes.any,
130
184
  className: PropTypes.string,
131
185
  "aria-label": PropTypes.string,
132
186
  "data-test-subj": PropTypes.string,
@@ -10,12 +10,12 @@ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(
10
10
  * Side Public License, v 1.
11
11
  */
12
12
  import { css, keyframes } from '@emotion/react';
13
- import { euiCanAnimate, euiBreakpoint, logicalCSS, mathWithUnits } from '../../global_styling';
13
+ import { euiCanAnimate, euiMaxBreakpoint, euiMinBreakpoint, logicalCSS, mathWithUnits } from '../../global_styling';
14
14
  import { euiShadowXLarge } from '../../themes/amsterdam/global_styling/mixins';
15
15
  import { transparentize } from '../../services/color';
16
16
  import { euiFormMaxWidth } from '../form/form.styles';
17
17
  var euiFlyoutSlideInRight = keyframes(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n 0% {\n opacity: 0;\n transform: translateX(100%);\n }\n 75% {\n opacity: 1;\n transform: translateX(0%);\n }\n"])));
18
- var euiFlyoutSlideInLeft = keyframes(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n 0% {\n opacity: 0;\n transform: translateX(-100%);\n }\n 75% {\n opacity: 1;\n transform: translateX(0%);\n}\n"])));
18
+ var euiFlyoutSlideInLeft = keyframes(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n 0% {\n opacity: 0;\n transform: translateX(-100%);\n }\n 75% {\n opacity: 1;\n transform: translateX(0%);\n }\n"])));
19
19
  export var euiFlyoutCloseButtonStyles = function euiFlyoutCloseButtonStyles(euiThemeContext) {
20
20
  var euiTheme = euiThemeContext.euiTheme;
21
21
  return {
@@ -25,15 +25,15 @@ export var euiFlyoutCloseButtonStyles = function euiFlyoutCloseButtonStyles(euiT
25
25
  outsideSide: {
26
26
  // `transforms` pull in close buttons a little
27
27
  // `!important` is necessary here to override the hover/focus transitions of buttons
28
- right: /*#__PURE__*/css(logicalCSS('left', 0), " ", euiBreakpoint(euiThemeContext, ['m', 'xl']), "{transform:translateX(calc(-100% - ", euiTheme.size.l, "))!important;}", euiBreakpoint(euiThemeContext, ['xs', 's']), "{transform:translateX(calc(-100% - ", euiTheme.size.xs, "))!important;};label:right;"),
29
- left: /*#__PURE__*/css(logicalCSS('right', 0), " ", euiBreakpoint(euiThemeContext, ['m', 'xl']), "{transform:translateX(calc(100% + ", euiTheme.size.l, "))!important;}", euiBreakpoint(euiThemeContext, ['xs', 's']), "{transform:translateX(calc(100% + ", euiTheme.size.xs, "))!important;};label:left;")
28
+ right: /*#__PURE__*/css(logicalCSS('left', 0), " ", euiMaxBreakpoint(euiThemeContext, 'm'), "{transform:translateX(calc(-100% - ", euiTheme.size.xs, "))!important;}", euiMinBreakpoint(euiThemeContext, 'm'), "{transform:translateX(calc(-100% - ", euiTheme.size.l, "))!important;};label:right;"),
29
+ left: /*#__PURE__*/css(logicalCSS('right', 0), " ", euiMaxBreakpoint(euiThemeContext, 'm'), "{transform:translateX(calc(100% + ", euiTheme.size.xs, "))!important;}", euiMinBreakpoint(euiThemeContext, 'm'), "{transform:translateX(calc(100% + ", euiTheme.size.l, "))!important;};label:left;")
30
30
  }
31
31
  };
32
32
  };
33
33
  export var euiFlyoutStyles = function euiFlyoutStyles(euiThemeContext) {
34
34
  var euiTheme = euiThemeContext.euiTheme;
35
35
  return {
36
- euiFlyout: /*#__PURE__*/css("position:fixed;", logicalCSS('top', 0), " ", logicalCSS('bottom', 0), " ", logicalCSS('height', '100%'), " z-index:", euiTheme.levels.flyout, ";background:", euiTheme.colors.emptyShade, ";display:flex;flex-direction:column;align-items:stretch;&:focus{outline:none;}", euiBreakpoint(euiThemeContext, ['xs', 's']), "{", logicalCSS('max-width', '90vw !important'), ";};label:euiFlyout;"),
36
+ euiFlyout: /*#__PURE__*/css("position:fixed;", logicalCSS('top', 0), " ", logicalCSS('bottom', 0), " ", logicalCSS('height', '100%'), " z-index:", euiTheme.levels.flyout, ";background:", euiTheme.colors.emptyShade, ";display:flex;flex-direction:column;align-items:stretch;&:focus{outline:none;}", euiMaxBreakpoint(euiThemeContext, 'm'), "{", logicalCSS('max-width', '90vw !important'), ";};label:euiFlyout;"),
37
37
  // Flyout sizes
38
38
  s: /*#__PURE__*/css(composeFlyoutSizing(euiThemeContext, 's'), ";;label:s;"),
39
39
  m: /*#__PURE__*/css(composeFlyoutSizing(euiThemeContext, 'm'), ";;label:m;"),
@@ -42,7 +42,7 @@ export var euiFlyoutStyles = function euiFlyoutStyles(euiThemeContext) {
42
42
  // Side
43
43
  right: /*#__PURE__*/css("clip-path:polygon(-50% 0, 100% 0, 100% 100%, -50% 100%);", logicalCSS('right', 0), " ", euiCanAnimate, "{animation:", euiFlyoutSlideInRight, " ", euiTheme.animation.normal, " ", euiTheme.animation.resistance, ";};label:right;"),
44
44
  // Left-side flyouts should only be used for navigation
45
- left: /*#__PURE__*/css(logicalCSS('left', 0), " clip-path:polygon(0 0, 150% 0, 150% 100%, 0 100%);", euiCanAnimate, "{animation:", euiFlyoutSlideInLeft, ";};label:left;"),
45
+ left: /*#__PURE__*/css(logicalCSS('left', 0), " clip-path:polygon(0 0, 150% 0, 150% 100%, 0 100%);", euiCanAnimate, "{animation:", euiFlyoutSlideInLeft, " ", euiTheme.animation.normal, " ", euiTheme.animation.resistance, ";};label:left;"),
46
46
  // Type
47
47
  overlay: /*#__PURE__*/css(euiShadowXLarge(euiThemeContext), ";;label:overlay;"),
48
48
  push: /*#__PURE__*/css("clip-path:none;animation-duration:0s!important;z-index:", Number(euiTheme.levels.flyout) - 1, ";;label:push;"),
@@ -85,7 +85,7 @@ var composeFlyoutSizing = function composeFlyoutSizing(euiThemeContext, size) {
85
85
  max: "".concat(euiTheme.breakpoint.l, "px")
86
86
  }
87
87
  };
88
- return "\n ".concat(logicalCSS('max-width', flyoutSizes[size].max), "\n\n ").concat(euiBreakpoint(euiThemeContext, ['m', 'xl']), " {\n ").concat(logicalCSS('min-width', flyoutSizes[size].min), "\n ").concat(logicalCSS('width', flyoutSizes[size].width), "\n }\n ").concat(euiBreakpoint(euiThemeContext, ['xs', 's']), " {\n ").concat(logicalCSS('min-width', 0), "\n ").concat(logicalCSS('width', flyoutSizes[size].min), "\n }\n ");
88
+ return "\n ".concat(logicalCSS('max-width', flyoutSizes[size].max), "\n\n ").concat(euiMaxBreakpoint(euiThemeContext, 'm'), " {\n ").concat(logicalCSS('min-width', 0), "\n ").concat(logicalCSS('width', flyoutSizes[size].min), "\n }\n ").concat(euiMinBreakpoint(euiThemeContext, 'm'), " {\n ").concat(logicalCSS('min-width', flyoutSizes[size].min), "\n ").concat(logicalCSS('width', flyoutSizes[size].width), "\n }\n ");
89
89
  };
90
90
 
91
91
  var composeFlyoutPadding = function composeFlyoutPadding(euiThemeContext, paddingSize) {
@@ -8,7 +8,7 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
8
8
  * Side Public License, v 1.
9
9
  */
10
10
  import { css } from '@emotion/react';
11
- import { euiBreakpoint, logicalCSS, logicalTextAlignCSS, logicalSide } from '../../global_styling';
11
+ import { euiMinBreakpoint, logicalCSS, logicalTextAlignCSS, logicalSide } from '../../global_styling';
12
12
 
13
13
  var _ref = process.env.NODE_ENV === "production" ? {
14
14
  name: "gacnmc-allowFullScreen",
@@ -33,8 +33,8 @@ export var euiImageWrapperStyles = function euiImageWrapperStyles(euiThemeContex
33
33
  // Floats
34
34
  // 1: Logical properties/values in `float` is currently not yet supported by all browsers w/o flags
35
35
  // @see https://caniuse.com/mdn-css_properties_float_flow_relative_values for when we can remove left/right fallbacks
36
- left: /*#__PURE__*/css(euiBreakpoint(euiThemeContext, ['m', 'xl']), "{float:left;float:", logicalSide.left, ";", logicalCSS('margin-left', '0'), ";", logicalCSS('margin-top', '0'), ";};label:left;"),
37
- right: /*#__PURE__*/css(euiBreakpoint(euiThemeContext, ['m', 'xl']), "{float:right;float:", logicalSide.right, ";", logicalCSS('margin-right', '0'), ";", logicalCSS('margin-top', '0'), ";};label:right;"),
36
+ left: /*#__PURE__*/css(euiMinBreakpoint(euiThemeContext, 'm'), "{float:left;float:", logicalSide.left, ";", logicalCSS('margin-left', '0'), ";", logicalCSS('margin-top', '0'), ";};label:left;"),
37
+ right: /*#__PURE__*/css(euiMinBreakpoint(euiThemeContext, 'm'), "{float:right;float:", logicalSide.right, ";", logicalCSS('margin-right', '0'), ";", logicalCSS('margin-top', '0'), ";};label:right;"),
38
38
  // Sizes
39
39
  fullWidth: /*#__PURE__*/css(logicalCSS('width', '100%'), ";;label:fullWidth;")
40
40
  };
@@ -8,7 +8,7 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
8
8
  * Side Public License, v 1.
9
9
  */
10
10
  import { css } from '@emotion/react';
11
- import { euiBreakpoint, logicalCSS } from '../../global_styling';
11
+ import { euiMinBreakpoint, logicalCSS } from '../../global_styling';
12
12
 
13
13
  var _ref = process.env.NODE_ENV === "production" ? {
14
14
  name: "ll8kmq-column",
@@ -36,7 +36,7 @@ export var euiPageStyles = function euiPageStyles(euiThemeContext) {
36
36
  grow: _ref2,
37
37
  // Direction
38
38
  column: _ref,
39
- row: /*#__PURE__*/css("flex-direction:column;", euiBreakpoint(euiThemeContext, ['m', 'xl']), "{flex-direction:row;};label:row;"),
39
+ row: /*#__PURE__*/css("flex-direction:column;", euiMinBreakpoint(euiThemeContext, 'm'), "{flex-direction:row;};label:row;"),
40
40
  // Max widths
41
41
  restrictWidth: /*#__PURE__*/css(logicalCSS('margin-horizontal', 'auto'), ";;label:restrictWidth;")
42
42
  };
@@ -10,20 +10,20 @@ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(
10
10
  * Side Public License, v 1.
11
11
  */
12
12
  import { css, keyframes } from '@emotion/react';
13
- import { euiBreakpoint, euiScrollBarStyles, logicalCSS, logicalCSSWithFallback, logicalSizeCSS } from '../../global_styling';
13
+ import { euiMaxBreakpoint, euiMinBreakpoint, euiScrollBarStyles, logicalCSS, logicalCSSWithFallback, logicalSizeCSS } from '../../global_styling';
14
14
  export var euiGlobalToastListStyles = function euiGlobalToastListStyles(euiThemeContext) {
15
15
  var euiTheme = euiThemeContext.euiTheme;
16
- var euiToastWidth = euiTheme.base * 20;
16
+ var euiToastWidth = euiTheme.base * 25;
17
17
  return {
18
18
  /**
19
19
  * 1. Allow list to expand as items are added, but cap it at the screen height.
20
20
  * 2. Allow some padding for shadow
21
21
  */
22
22
  // Base
23
- euiGlobalToastList: /*#__PURE__*/css(euiScrollBarStyles(euiThemeContext), " display:flex;flex-direction:column;align-items:stretch;position:fixed;z-index:", euiTheme.levels.toast, ";", logicalCSS('bottom', 0), ";", logicalCSS('width', "".concat(euiToastWidth + euiTheme.base * 5, "px")), ";", logicalCSS('max-height', '100vh'), ";", logicalCSSWithFallback('overflow-y', 'auto'), ";scrollbar-width:none;&::-webkit-scrollbar{", logicalSizeCSS(0, 0), ";}&:not(:empty){", logicalCSS('padding-left', euiTheme.size.base), ";", logicalCSS('padding-right', euiTheme.size.base), ";", logicalCSS('padding-vertical', euiTheme.size.base), ";}", euiBreakpoint(euiThemeContext, ['xs', 's']), "{&:not(:empty){", logicalCSS('left', 0), ";", logicalCSS('width', '100%'), ";}};label:euiGlobalToastList;"),
23
+ euiGlobalToastList: /*#__PURE__*/css(euiScrollBarStyles(euiThemeContext), " display:flex;flex-direction:column;align-items:stretch;position:fixed;z-index:", euiTheme.levels.toast, ";", logicalCSS('bottom', 0), ";", logicalCSS('width', "".concat(euiToastWidth, "px")), ";", logicalCSS('max-height', '100vh'), ";", logicalCSSWithFallback('overflow-y', 'auto'), ";scrollbar-width:none;&::-webkit-scrollbar{", logicalSizeCSS(0, 0), ";}&:not(:empty){", logicalCSS('padding-left', euiTheme.size.base), ";", logicalCSS('padding-right', euiTheme.size.base), ";", logicalCSS('padding-vertical', euiTheme.size.base), ";}", euiMaxBreakpoint(euiThemeContext, 'm'), "{&:not(:empty){", logicalCSS('left', 0), ";", logicalCSS('width', '100%'), ";}};label:euiGlobalToastList;"),
24
24
  // Variants
25
- right: /*#__PURE__*/css("&:not(:empty){", logicalCSS('right', 0), ";", logicalCSS('padding-left', "".concat(euiTheme.base * 4, "px")), ";}", euiBreakpoint(euiThemeContext, ['xs', 's']), "{&:not(:empty){", logicalCSS('padding-left', euiTheme.size.base), ";}};label:right;"),
26
- left: /*#__PURE__*/css("&:not(:empty){", logicalCSS('left', 0), ";", logicalCSS('padding-right', "".concat(euiTheme.base * 4, "px")), ";}", euiBreakpoint(euiThemeContext, ['xs', 's']), "{&:not(:empty){", logicalCSS('padding-right', euiTheme.size.base), ";}};label:left;")
25
+ right: /*#__PURE__*/css("&:not(:empty){", logicalCSS('right', 0), ";", euiMinBreakpoint(euiThemeContext, 'm'), "{", logicalCSS('padding-left', "".concat(euiTheme.base * 4, "px")), ";}};label:right;"),
26
+ left: /*#__PURE__*/css("&:not(:empty){", logicalCSS('left', 0), ";", euiMinBreakpoint(euiThemeContext, 'm'), "{", logicalCSS('padding-right', "".concat(euiTheme.base * 4, "px")), ";}};label:left;")
27
27
  };
28
28
  };
29
29
  export var euiGlobalToastListItemStyles = function euiGlobalToastListItemStyles(_ref) {
@@ -55,7 +55,7 @@ var euiOverflowShadowStyles = function euiOverflowShadowStyles(_ref3) {
55
55
 
56
56
  var direction = _direction || 'y';
57
57
  var side = _side || 'both';
58
- var hideHeight = "calc(".concat(size.base, " * 0.75 * 1.25)");
58
+ var hideHeight = size.s;
59
59
  var gradientStart = "\n ".concat(transparentize('red', 0.1), " 0%,\n ").concat(transparentize('red', 1), " ").concat(hideHeight, "\n ");
60
60
  var gradientEnd = "\n ".concat(transparentize('red', 1), " calc(100% - ").concat(hideHeight, "),\n ").concat(transparentize('red', 0.1), " 100%\n ");
61
61
  var gradient = '';
@@ -9,7 +9,7 @@ import { sortMapBySmallToLargeValues } from '../../services/breakpoint/_sorting'
9
9
  import { useEuiTheme } from '../../services/theme/hooks';
10
10
 
11
11
  /**
12
- * Generates a CSS media query rule string based on the input breakpoint ranges.
12
+ * Generates a CSS media query rule string based on the input breakpoint *ranges*.
13
13
  * Examples with default theme breakpoints:
14
14
  *
15
15
  * euiBreakpoint(['s']) becomes `@media only screen and (min-width: 575px) and (max-width: 767px)`
@@ -47,4 +47,49 @@ export var euiBreakpoint = function euiBreakpoint(_ref, sizes) {
47
47
  export var useEuiBreakpoint = function useEuiBreakpoint(sizes) {
48
48
  var euiTheme = useEuiTheme();
49
49
  return euiBreakpoint(euiTheme, sizes);
50
+ };
51
+ /**
52
+ * Min/Max width breakpoint utilities that generate only a single min/max query/bound
53
+ *
54
+ * *Unlike the above euiBreakpoint utility*, these utilities treat breakpoint
55
+ * sizes as a one-dimensional point, rather than a two-dimensional *screen range*.
56
+ * Examples with default theme breakpoints:
57
+ *
58
+ * euiMaxBreakpoint('m') becomes `@media only screen and (max-width: 767px)`
59
+ * euiMinBreakpoint('m') becomes `@media only screen and (min-width: 768px)`
60
+ *
61
+ * This is safer and more intentional to use than euiBreakpoint(['xs', 's']) / euiBreakpoint(['m', 'xl'])
62
+ * in the event that consumers add larger or smaller custom breakpoints (e.g 'xxs' or `xxl`)
63
+ * and if the intention of the media query is actually "m and below/above" vs. "only screens m/l/xl".
64
+ */
65
+
66
+ export var euiMinBreakpoint = function euiMinBreakpoint(_ref2, size) {
67
+ var euiTheme = _ref2.euiTheme;
68
+ var minBreakpointSize = euiTheme.breakpoint[size];
69
+
70
+ if (minBreakpointSize) {
71
+ return "@media only screen and (min-width: ".concat(minBreakpointSize, "px)");
72
+ } else {
73
+ console.warn("Invalid min breakpoint size: ".concat(size));
74
+ return '@media only screen';
75
+ }
76
+ };
77
+ export var useEuiMinBreakpoint = function useEuiMinBreakpoint(size) {
78
+ var euiTheme = useEuiTheme();
79
+ return euiMinBreakpoint(euiTheme, size);
80
+ };
81
+ export var euiMaxBreakpoint = function euiMaxBreakpoint(_ref3, size) {
82
+ var euiTheme = _ref3.euiTheme;
83
+ var maxBreakpointSize = euiTheme.breakpoint[size];
84
+
85
+ if (maxBreakpointSize) {
86
+ return "@media only screen and (max-width: ".concat(maxBreakpointSize - 1, "px)");
87
+ } else {
88
+ console.warn("Invalid max breakpoint size: ".concat(size));
89
+ return '@media only screen';
90
+ }
91
+ };
92
+ export var useEuiMaxBreakpoint = function useEuiMaxBreakpoint(size) {
93
+ var euiTheme = useEuiTheme();
94
+ return euiMaxBreakpoint(euiTheme, size);
50
95
  };
package/eui.d.ts CHANGED
@@ -1891,6 +1891,7 @@ declare module '@elastic/eui/src/components/button/button_display/_button_displa
1891
1891
  euiButtonDisplay: import("@emotion/utils").SerializedStyles;
1892
1892
  isDisabled: import("@emotion/utils").SerializedStyles;
1893
1893
  fullWidth: import("@emotion/utils").SerializedStyles;
1894
+ defaultMinWidth: import("@emotion/utils").SerializedStyles;
1894
1895
  xs: import("@emotion/utils").SerializedStyles;
1895
1896
  s: import("@emotion/utils").SerializedStyles;
1896
1897
  m: import("@emotion/utils").SerializedStyles;
@@ -2042,7 +2043,7 @@ declare module '@elastic/eui/src/components/button/button_display/_button_displa
2042
2043
  /**
2043
2044
  * Override the default minimum width
2044
2045
  */
2045
- minWidth?: CSSProperties['minWidth'];
2046
+ minWidth?: CSSProperties['minWidth'] | false;
2046
2047
  /**
2047
2048
  * Force disables the button and changes the icon to a loading spinner
2048
2049
  */
@@ -7289,7 +7290,7 @@ declare module '@elastic/eui/src/global_styling/mixins/_responsive' {
7289
7290
  import { UseEuiTheme } from '@elastic/eui/src/services/theme/hooks';
7290
7291
  import { _EuiThemeBreakpoint } from '@elastic/eui/src/global_styling/variables';
7291
7292
  /**
7292
- * Generates a CSS media query rule string based on the input breakpoint ranges.
7293
+ * Generates a CSS media query rule string based on the input breakpoint *ranges*.
7293
7294
  * Examples with default theme breakpoints:
7294
7295
  *
7295
7296
  * euiBreakpoint(['s']) becomes `@media only screen and (min-width: 575px) and (max-width: 767px)`
@@ -7303,6 +7304,24 @@ declare module '@elastic/eui/src/global_styling/mixins/_responsive' {
7303
7304
  */
7304
7305
  export const euiBreakpoint: ({ euiTheme }: UseEuiTheme, sizes: [_EuiThemeBreakpoint, ..._EuiThemeBreakpoint[]]) => string;
7305
7306
  export const useEuiBreakpoint: (sizes: [_EuiThemeBreakpoint, ..._EuiThemeBreakpoint[]]) => string;
7307
+ /**
7308
+ * Min/Max width breakpoint utilities that generate only a single min/max query/bound
7309
+ *
7310
+ * *Unlike the above euiBreakpoint utility*, these utilities treat breakpoint
7311
+ * sizes as a one-dimensional point, rather than a two-dimensional *screen range*.
7312
+ * Examples with default theme breakpoints:
7313
+ *
7314
+ * euiMaxBreakpoint('m') becomes `@media only screen and (max-width: 767px)`
7315
+ * euiMinBreakpoint('m') becomes `@media only screen and (min-width: 768px)`
7316
+ *
7317
+ * This is safer and more intentional to use than euiBreakpoint(['xs', 's']) / euiBreakpoint(['m', 'xl'])
7318
+ * in the event that consumers add larger or smaller custom breakpoints (e.g 'xxs' or `xxl`)
7319
+ * and if the intention of the media query is actually "m and below/above" vs. "only screens m/l/xl".
7320
+ */
7321
+ export const euiMinBreakpoint: ({ euiTheme }: UseEuiTheme, size: _EuiThemeBreakpoint) => string;
7322
+ export const useEuiMinBreakpoint: (size: _EuiThemeBreakpoint) => string;
7323
+ export const euiMaxBreakpoint: ({ euiTheme }: UseEuiTheme, size: _EuiThemeBreakpoint) => string;
7324
+ export const useEuiMaxBreakpoint: (size: _EuiThemeBreakpoint) => string;
7306
7325
 
7307
7326
  }
7308
7327
  declare module '@elastic/eui/src/global_styling/mixins' {
@@ -13786,8 +13805,8 @@ declare module '@elastic/eui/src/components/facet/facet_button.styles' {
13786
13805
  }
13787
13806
  declare module '@elastic/eui/src/components/facet/facet_button' {
13788
13807
  import { FunctionComponent, HTMLAttributes, ReactNode, RefCallback } from 'react';
13789
- import { CommonProps } from '@elastic/eui/src/components/common';
13790
- export interface EuiFacetButtonProps extends CommonProps, HTMLAttributes<HTMLButtonElement> {
13808
+ import { EuiButtonDisplayCommonProps } from '@elastic/eui/src/components/button/button_display/_button_display';
13809
+ export interface EuiFacetButtonProps extends EuiButtonDisplayCommonProps, HTMLAttributes<HTMLButtonElement> {
13791
13810
  buttonRef?: RefCallback<HTMLButtonElement>;
13792
13811
  /**
13793
13812
  * ReactNode to render as this component's content
@@ -231,6 +231,7 @@ var EuiButtonDisplayDeprecated = /*#__PURE__*/(0, _react.forwardRef)(function (_
231
231
 
232
232
  if (minWidth !== undefined || minWidth !== null) {
233
233
  calculatedStyle = _objectSpread(_objectSpread({}, calculatedStyle), {}, {
234
+ // @ts-ignore - deprecated component
234
235
  minWidth: minWidth
235
236
  });
236
237
  }
@@ -91,7 +91,7 @@ var EuiButtonDisplay = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref)
91
91
  var theme = (0, _services.useEuiTheme)();
92
92
  var styles = (0, _button_display.euiButtonDisplayStyles)(theme);
93
93
  var buttonRadiusStyle = (0, _mixins.useEuiButtonRadiusCSS)()[size];
94
- var cssStyles = [styles.euiButtonDisplay, styles[size], fullWidth && styles.fullWidth, buttonIsDisabled && styles.isDisabled, buttonRadiusStyle];
94
+ var cssStyles = [styles.euiButtonDisplay, styles[size], fullWidth && styles.fullWidth, minWidth == null && styles.defaultMinWidth, buttonIsDisabled && styles.isDisabled, buttonRadiusStyle];
95
95
  var innerNode = (0, _react2.jsx)(_button_display_content.EuiButtonDisplayContent, _extends({
96
96
  isLoading: isLoading,
97
97
  isDisabled: buttonIsDisabled,
@@ -126,7 +126,7 @@ var EuiButtonDisplay = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref)
126
126
 
127
127
  return (0, _react2.createElement)(element, _objectSpread(_objectSpread(_objectSpread({
128
128
  css: cssStyles,
129
- style: minWidth != null ? _objectSpread(_objectSpread({}, style), {}, {
129
+ style: minWidth ? _objectSpread(_objectSpread({}, style), {}, {
130
130
  minInlineSize: minWidth
131
131
  }) : style,
132
132
  ref: ref
@@ -166,7 +166,7 @@ EuiButtonDisplay.propTypes = {
166
166
  /**
167
167
  * Override the default minimum width
168
168
  */
169
- minWidth: _propTypes.default.any,
169
+ minWidth: _propTypes.default.oneOfType([_propTypes.default.any.isRequired, _propTypes.default.oneOf([false])]),
170
170
 
171
171
  /**
172
172
  * Force disables the button and changes the icon to a loading spinner
@@ -36,10 +36,11 @@ var euiButtonDisplayStyles = function euiButtonDisplayStyles(euiThemeContext) {
36
36
  var euiTheme = euiThemeContext.euiTheme;
37
37
  return {
38
38
  // Base
39
- euiButtonDisplay: /*#__PURE__*/(0, _react.css)(euiButtonBaseCSS(), ";", (0, _global_styling.logicalCSS)('min-width', "".concat(euiTheme.base * 7, "px")), " font-weight:", euiTheme.font.weight.medium, ";padding:0 ", euiTheme.size.m, ";&:hover:not(:disabled),&:focus{text-decoration:underline;};label:euiButtonDisplay;"),
39
+ euiButtonDisplay: /*#__PURE__*/(0, _react.css)(euiButtonBaseCSS(), ";font-weight:", euiTheme.font.weight.medium, ";padding:0 ", euiTheme.size.m, ";&:hover:not(:disabled),&:focus{text-decoration:underline;};label:euiButtonDisplay;"),
40
40
  // States
41
41
  isDisabled: _ref,
42
42
  fullWidth: /*#__PURE__*/(0, _react.css)("display:block;", (0, _global_styling.logicalCSS)('width', '100%'), ";;label:fullWidth;"),
43
+ defaultMinWidth: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('min-width', "".concat(euiTheme.base * 7, "px")), ";;label:defaultMinWidth;"),
43
44
  // Sizes
44
45
  xs: /*#__PURE__*/(0, _react.css)(_buttonSize(euiTheme.size.l), (0, _global_styling.euiFontSize)(euiThemeContext, 'xs'), ";label:xs;"),
45
46
  s: /*#__PURE__*/(0, _react.css)(_buttonSize(euiTheme.size.xl), (0, _global_styling.euiFontSize)(euiThemeContext, 's'), ";label:s;"),
@@ -194,7 +194,7 @@ var EuiSuperUpdateButton = /*#__PURE__*/function (_Component) {
194
194
  sizes: responsive || 'none'
195
195
  }, (0, _react2.jsx)(_button.EuiButton, _extends({
196
196
  className: classes,
197
- minWidth: 0
197
+ minWidth: false
198
198
  }, sharedButtonProps, {
199
199
  fill: fill,
200
200
  textProps: _objectSpread(_objectSpread({}, restTextProps), {}, {
@@ -26,7 +26,7 @@ var euiDescriptionListStyles = function euiDescriptionListStyles(euiThemeContext
26
26
  inline: /*#__PURE__*/(0, _react.css)(";label:inline;"),
27
27
  column: /*#__PURE__*/(0, _react.css)(columnDisplay, ";;label:column;"),
28
28
  // Responsive columns behave as a row on breakpoints xs-s
29
- responsiveColumn: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiBreakpoint)(euiThemeContext, ['m', 'xl']), "{", columnDisplay, ";};label:responsiveColumn;"),
29
+ responsiveColumn: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiMinBreakpoint)(euiThemeContext, 'm'), "{", columnDisplay, ";};label:responsiveColumn;"),
30
30
  // Alignment
31
31
  center: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalTextAlignCSS)('center'), ";;label:center;"),
32
32
  left: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalTextAlignCSS)('left'), ";;label:left;")
@@ -59,6 +59,7 @@ var EuiDescriptionListDescription = function EuiDescriptionListDescription(_ref)
59
59
  align = _useContext.align,
60
60
  gutterSize = _useContext.gutterSize;
61
61
 
62
+ var showResponsiveColumns = (0, _services.useIsWithinMinBreakpoint)('m');
62
63
  var theme = (0, _services.useEuiTheme)();
63
64
  var styles = (0, _description_list_description.euiDescriptionListDescriptionStyles)(theme);
64
65
  var conditionalStyles = compressed && textStyle === 'reverse' ? [styles.fontStyles.compressed] : [styles.fontStyles[textStyle]];
@@ -74,7 +75,10 @@ var EuiDescriptionListDescription = function EuiDescriptionListDescription(_ref)
74
75
  conditionalStyles.push(styles.left);
75
76
  }
76
77
 
77
- conditionalStyles.push(styles[gutterSize]);
78
+ if (type === 'column' || showResponsiveColumns) {
79
+ conditionalStyles.push(styles[gutterSize]);
80
+ }
81
+
78
82
  break;
79
83
  }
80
84
 
@@ -30,7 +30,7 @@ var euiDescriptionListDescriptionStyles = function euiDescriptionListDescription
30
30
  // Types
31
31
  row: /*#__PURE__*/(0, _react.css)(";label:row;"),
32
32
  column: /*#__PURE__*/(0, _react.css)(columnDisplay, ";;label:column;"),
33
- responsiveColumn: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiBreakpoint)(euiThemeContext, ['xs', 's']), "{", (0, _global_styling.logicalCSS)('width', '100%'), " padding:0;}", (0, _global_styling.euiBreakpoint)(euiThemeContext, ['m', 'xl']), "{", columnDisplay, ";};label:responsiveColumn;"),
33
+ responsiveColumn: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiMaxBreakpoint)(euiThemeContext, 'm'), "{", (0, _global_styling.logicalCSS)('width', '100%'), " padding:0;}", (0, _global_styling.euiMinBreakpoint)(euiThemeContext, 'm'), "{", columnDisplay, ";};label:responsiveColumn;"),
34
34
  inline: _ref,
35
35
  // This nested block handles just the font styling based on compressed and reverse
36
36
  fontStyles: {