@elastic/eui 87.0.0 → 87.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. package/dist/eui_theme_dark.css +0 -234
  2. package/dist/eui_theme_dark.min.css +1 -1
  3. package/dist/eui_theme_light.css +0 -234
  4. package/dist/eui_theme_light.min.css +1 -1
  5. package/es/components/accordion/accordion.js +82 -35
  6. package/es/components/auto_sizer/index.js +1 -1
  7. package/es/components/breadcrumbs/breadcrumb.js +2 -3
  8. package/es/components/breadcrumbs/breadcrumbs.js +2 -3
  9. package/es/components/code/code_block_virtualized.js +25 -17
  10. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +14 -1
  11. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +8 -7
  12. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +6 -6
  13. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +7 -7
  14. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -6
  15. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +9 -9
  16. package/es/components/color_picker/color_palette_picker/color_palette_picker.js +1 -1
  17. package/es/components/control_bar/control_bar.js +2 -3
  18. package/es/components/date_picker/date_picker_range.js +5 -2
  19. package/es/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  20. package/es/components/date_picker/super_date_picker/super_update_button.js +1 -1
  21. package/es/components/empty_prompt/empty_prompt.js +0 -1
  22. package/es/components/flyout/flyout.js +9 -7
  23. package/es/components/flyout/flyout_body.js +15 -3
  24. package/es/components/form/range/dual_range.js +33 -6
  25. package/es/components/form/range/range.js +31 -6
  26. package/es/components/form/super_select/super_select.js +1 -1
  27. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +2 -3
  28. package/es/components/header/header_links/header_links.js +2 -3
  29. package/es/components/page/page_header/page_header_content.js +2 -3
  30. package/es/components/page/page_sidebar/page_sidebar.js +2 -2
  31. package/es/components/page_template/page_template.js +14 -5
  32. package/es/components/popover/input_popover.js +24 -9
  33. package/es/components/popover/popover.js +4 -6
  34. package/es/components/resizable_container/index.js +2 -1
  35. package/es/components/resizable_container/resizable_button.js +81 -50
  36. package/es/components/resizable_container/resizable_button.styles.js +66 -0
  37. package/es/components/resizable_container/resizable_collapse_button.js +24 -14
  38. package/es/components/resizable_container/resizable_collapse_button.styles.js +85 -0
  39. package/es/components/selectable/selectable_list/selectable_list.js +97 -79
  40. package/es/components/steps/step.styles.js +5 -5
  41. package/es/components/tool_tip/icon_tip.js +1 -1
  42. package/es/components/tool_tip/tool_tip.js +4 -14
  43. package/es/components/tool_tip/tool_tip_anchor.js +5 -14
  44. package/es/components/tour/tour_step.js +2 -3
  45. package/es/services/accessibility/html_id_generator.js +19 -3
  46. package/es/themes/amsterdam/global_styling/mixins/shadow.js +0 -1
  47. package/eui.d.ts +198 -56
  48. package/i18ntokens.json +64 -46
  49. package/lib/components/accordion/accordion.js +82 -35
  50. package/lib/components/auto_sizer/index.js +11 -7
  51. package/lib/components/breadcrumbs/breadcrumb.js +2 -3
  52. package/lib/components/code/code_block_virtualized.js +25 -17
  53. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +14 -1
  54. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +8 -7
  55. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +6 -6
  56. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +7 -7
  57. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -6
  58. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +9 -9
  59. package/lib/components/color_picker/color_palette_picker/color_palette_picker.js +1 -1
  60. package/lib/components/date_picker/date_picker_range.js +5 -2
  61. package/lib/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  62. package/lib/components/date_picker/super_date_picker/super_update_button.js +1 -1
  63. package/lib/components/empty_prompt/empty_prompt.js +0 -1
  64. package/lib/components/flyout/flyout.js +9 -7
  65. package/lib/components/flyout/flyout_body.js +15 -3
  66. package/lib/components/form/range/dual_range.js +33 -6
  67. package/lib/components/form/range/range.js +14 -6
  68. package/lib/components/form/super_select/super_select.js +1 -1
  69. package/lib/components/page/page_sidebar/page_sidebar.js +1 -1
  70. package/lib/components/page_template/page_template.js +14 -5
  71. package/lib/components/popover/input_popover.js +23 -8
  72. package/lib/components/popover/popover.js +4 -6
  73. package/lib/components/resizable_container/index.js +8 -1
  74. package/lib/components/resizable_container/resizable_button.js +83 -51
  75. package/lib/components/resizable_container/resizable_button.styles.js +71 -0
  76. package/lib/components/resizable_container/resizable_collapse_button.js +24 -14
  77. package/lib/components/resizable_container/resizable_collapse_button.styles.js +90 -0
  78. package/lib/components/selectable/selectable_list/selectable_list.js +97 -79
  79. package/lib/components/steps/step.styles.js +5 -5
  80. package/lib/components/tool_tip/icon_tip.js +1 -1
  81. package/lib/components/tool_tip/tool_tip.js +4 -14
  82. package/lib/components/tool_tip/tool_tip_anchor.js +5 -13
  83. package/lib/services/accessibility/html_id_generator.js +21 -2
  84. package/lib/themes/amsterdam/global_styling/mixins/shadow.js +0 -1
  85. package/optimize/es/components/accordion/accordion.js +82 -35
  86. package/optimize/es/components/auto_sizer/index.js +1 -1
  87. package/optimize/es/components/code/code_block_virtualized.js +25 -17
  88. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +5 -1
  89. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +2 -1
  90. package/optimize/es/components/date_picker/date_picker_range.js +5 -2
  91. package/optimize/es/components/flyout/flyout.js +9 -7
  92. package/optimize/es/components/flyout/flyout_body.js +4 -2
  93. package/optimize/es/components/form/range/dual_range.js +7 -4
  94. package/optimize/es/components/form/range/range.js +5 -4
  95. package/optimize/es/components/page/page_sidebar/page_sidebar.js +2 -2
  96. package/optimize/es/components/page_template/page_template.js +14 -5
  97. package/optimize/es/components/popover/input_popover.js +13 -8
  98. package/optimize/es/components/popover/popover.js +2 -3
  99. package/optimize/es/components/resizable_container/index.js +2 -1
  100. package/optimize/es/components/resizable_container/resizable_button.js +61 -44
  101. package/optimize/es/components/resizable_container/resizable_button.styles.js +66 -0
  102. package/optimize/es/components/resizable_container/resizable_collapse_button.js +19 -11
  103. package/optimize/es/components/resizable_container/resizable_collapse_button.styles.js +85 -0
  104. package/optimize/es/components/selectable/selectable_list/selectable_list.js +97 -79
  105. package/optimize/es/components/steps/step.styles.js +5 -5
  106. package/optimize/es/components/tool_tip/tool_tip.js +3 -13
  107. package/optimize/es/components/tool_tip/tool_tip_anchor.js +4 -8
  108. package/optimize/es/services/accessibility/html_id_generator.js +19 -3
  109. package/optimize/es/themes/amsterdam/global_styling/mixins/shadow.js +0 -1
  110. package/optimize/lib/components/accordion/accordion.js +82 -35
  111. package/optimize/lib/components/auto_sizer/index.js +11 -7
  112. package/optimize/lib/components/code/code_block_virtualized.js +25 -17
  113. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +5 -1
  114. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +2 -1
  115. package/optimize/lib/components/date_picker/date_picker_range.js +5 -2
  116. package/optimize/lib/components/flyout/flyout.js +9 -7
  117. package/optimize/lib/components/flyout/flyout_body.js +4 -2
  118. package/optimize/lib/components/form/range/dual_range.js +7 -4
  119. package/optimize/lib/components/form/range/range.js +5 -4
  120. package/optimize/lib/components/page/page_sidebar/page_sidebar.js +1 -1
  121. package/optimize/lib/components/page_template/page_template.js +14 -5
  122. package/optimize/lib/components/popover/input_popover.js +12 -7
  123. package/optimize/lib/components/popover/popover.js +2 -3
  124. package/optimize/lib/components/resizable_container/index.js +8 -1
  125. package/optimize/lib/components/resizable_container/resizable_button.js +63 -45
  126. package/optimize/lib/components/resizable_container/resizable_button.styles.js +71 -0
  127. package/optimize/lib/components/resizable_container/resizable_collapse_button.js +19 -11
  128. package/optimize/lib/components/resizable_container/resizable_collapse_button.styles.js +90 -0
  129. package/optimize/lib/components/selectable/selectable_list/selectable_list.js +97 -79
  130. package/optimize/lib/components/steps/step.styles.js +5 -5
  131. package/optimize/lib/components/tool_tip/tool_tip.js +3 -13
  132. package/optimize/lib/components/tool_tip/tool_tip_anchor.js +4 -8
  133. package/optimize/lib/services/accessibility/html_id_generator.js +21 -2
  134. package/optimize/lib/themes/amsterdam/global_styling/mixins/shadow.js +0 -1
  135. package/package.json +19 -21
  136. package/src/components/index.scss +0 -1
  137. package/test-env/components/accordion/accordion.js +82 -35
  138. package/test-env/components/auto_sizer/index.js +11 -7
  139. package/test-env/components/breadcrumbs/breadcrumb.js +2 -3
  140. package/test-env/components/code/code_block_virtualized.js +25 -17
  141. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +14 -1
  142. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +8 -7
  143. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +6 -6
  144. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +7 -7
  145. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -6
  146. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +9 -9
  147. package/test-env/components/color_picker/color_palette_picker/color_palette_picker.js +1 -1
  148. package/test-env/components/date_picker/date_picker_range.js +5 -2
  149. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +2 -2
  150. package/test-env/components/date_picker/super_date_picker/super_update_button.js +1 -1
  151. package/test-env/components/empty_prompt/empty_prompt.js +0 -1
  152. package/test-env/components/flyout/flyout_body.js +15 -3
  153. package/test-env/components/form/range/dual_range.js +33 -6
  154. package/test-env/components/form/range/range.js +14 -6
  155. package/test-env/components/form/super_select/super_select.js +1 -1
  156. package/test-env/components/page/page_sidebar/page_sidebar.js +1 -1
  157. package/test-env/components/page_template/page_template.js +14 -5
  158. package/test-env/components/popover/input_popover.js +23 -8
  159. package/test-env/components/popover/popover.js +4 -6
  160. package/test-env/components/resizable_container/index.js +8 -1
  161. package/test-env/components/resizable_container/resizable_button.js +83 -51
  162. package/test-env/components/resizable_container/resizable_button.styles.js +71 -0
  163. package/test-env/components/resizable_container/resizable_collapse_button.js +19 -14
  164. package/test-env/components/resizable_container/resizable_collapse_button.styles.js +90 -0
  165. package/test-env/components/selectable/selectable_list/selectable_list.js +97 -79
  166. package/test-env/components/steps/step.styles.js +5 -5
  167. package/test-env/components/tool_tip/icon_tip.js +1 -1
  168. package/test-env/components/tool_tip/tool_tip.js +4 -14
  169. package/test-env/components/tool_tip/tool_tip_anchor.js +5 -11
  170. package/test-env/themes/amsterdam/global_styling/mixins/shadow.js +0 -1
  171. package/src/components/resizable_container/_index.scss +0 -3
  172. package/src/components/resizable_container/_resizable_button.scss +0 -129
  173. package/src/components/resizable_container/_resizable_collapse_button.scss +0 -145
  174. package/src/components/resizable_container/_variables.scss +0 -2
package/eui.d.ts CHANGED
@@ -1699,7 +1699,6 @@ declare module '@elastic/eui/src/themes/amsterdam/global_styling/mixins/shadow'
1699
1699
  export const euiShadowXLarge: ({ euiTheme, colorMode }: UseEuiTheme, { color: _color, reverse }?: EuiShadowXLarge) => string;
1700
1700
  /**
1701
1701
  * slightShadowHover
1702
- * TODO: I think this is only used by panels/cards in the Amsterdam theme, move there
1703
1702
  */
1704
1703
  export const euiSlightShadowHover: ({ euiTheme, colorMode }: UseEuiTheme, { color: _color }?: _EuiThemeShadowCustomColor) => string;
1705
1704
  export const useEuiSlightShadowHover: (color?: _EuiThemeShadowCustomColor['color']) => string;
@@ -5010,15 +5009,18 @@ declare module '@elastic/eui/src/components/tool_tip/tool_tip_popover' {
5010
5009
 
5011
5010
  }
5012
5011
  declare module '@elastic/eui/src/components/tool_tip/tool_tip_anchor' {
5013
- import React, { HTMLAttributes, ReactElement } from 'react';
5014
- export interface EuiToolTipAnchorProps extends Omit<HTMLAttributes<HTMLSpanElement>, 'onBlur' | 'onFocus' | 'children'> {
5012
+ import React, { HTMLAttributes } from 'react';
5013
+ import type { EuiToolTipProps } from '@elastic/eui/src/components/tool_tip/tool_tip';
5014
+ export type EuiToolTipAnchorProps = Omit<HTMLAttributes<HTMLSpanElement>, 'onBlur' | 'onFocus' | 'children'> & Required<Pick<EuiToolTipProps, 'display' | 'children'>> & {
5015
5015
  onBlur: () => void;
5016
5016
  onFocus: () => void;
5017
- children: ReactElement;
5018
5017
  isVisible: boolean;
5019
- display: 'block' | 'inlineBlock';
5020
- }
5021
- export const EuiToolTipAnchor: React.ForwardRefExoticComponent<EuiToolTipAnchorProps & React.RefAttributes<HTMLSpanElement>>;
5018
+ };
5019
+ export const EuiToolTipAnchor: React.ForwardRefExoticComponent<Omit<React.HTMLAttributes<HTMLSpanElement>, "children" | "onFocus" | "onBlur"> & Required<Pick<EuiToolTipProps, "display" | "children">> & {
5020
+ onBlur: () => void;
5021
+ onFocus: () => void;
5022
+ isVisible: boolean;
5023
+ } & React.RefAttributes<HTMLSpanElement>>;
5022
5024
 
5023
5025
  }
5024
5026
  declare module '@elastic/eui/src/components/tool_tip/tool_tip_arrow' {
@@ -5043,7 +5045,7 @@ declare module '@elastic/eui/src/components/tool_tip/tool_tip' {
5043
5045
  import React, { Component, ReactElement, ReactNode, MouseEvent as ReactMouseEvent, HTMLAttributes } from 'react';
5044
5046
  import { CommonProps } from '@elastic/eui/src/components/common';
5045
5047
  import { ToolTipPositions } from '@elastic/eui/src/components/tool_tip/tool_tip_popover';
5046
- export const POSITIONS: ToolTipPositions[];
5048
+ export const POSITIONS: readonly ["top", "right", "bottom", "left"]; const DISPLAYS: readonly ["inlineBlock", "block"];
5047
5049
  export type ToolTipDelay = 'regular' | 'long';
5048
5050
  interface ToolTipStyles {
5049
5051
  top: number;
@@ -5051,10 +5053,7 @@ declare module '@elastic/eui/src/components/tool_tip/tool_tip' {
5051
5053
  right?: number | 'auto';
5052
5054
  opacity?: number;
5053
5055
  visibility?: 'hidden';
5054
- } const displayToClassNameMap: {
5055
- inlineBlock: undefined;
5056
- block: string;
5057
- };
5056
+ }
5058
5057
  export interface EuiToolTipProps extends CommonProps {
5059
5058
  /**
5060
5059
  * Passes onto the span wrapping the trigger.
@@ -5079,7 +5078,7 @@ declare module '@elastic/eui/src/components/tool_tip/tool_tip' {
5079
5078
  /**
5080
5079
  * Common display alternatives for the anchor wrapper
5081
5080
  */
5082
- display?: keyof typeof displayToClassNameMap;
5081
+ display?: (typeof DISPLAYS)[number];
5083
5082
  /**
5084
5083
  * Delay before showing tooltip. Good for repeatable items.
5085
5084
  */
@@ -6271,9 +6270,8 @@ declare module '@elastic/eui/src/components/popover/popover' {
6271
6270
  */
6272
6271
  anchorPosition?: PopoverAnchorPosition;
6273
6272
  /**
6274
- * Style and position alteration for arrow-less, left-aligned
6275
- * attachment. Intended for use with inputs as anchors, e.g.
6276
- * EuiInputPopover
6273
+ * Style and position alteration for arrow-less attachment.
6274
+ * Intended for use with inputs as anchors, e.g. EuiInputPopover
6277
6275
  */
6278
6276
  attachToAnchor?: boolean;
6279
6277
  /**
@@ -6453,12 +6451,22 @@ declare module '@elastic/eui/src/components/popover/input_popover' {
6453
6451
  import { FunctionComponent, HTMLAttributes } from 'react';
6454
6452
  import { CommonProps } from '@elastic/eui/src/components/common';
6455
6453
  import { EuiPopoverProps } from '@elastic/eui/src/components/popover/popover';
6456
- export interface _EuiInputPopoverProps extends Omit<EuiPopoverProps, 'button' | 'buttonRef'> {
6454
+ export interface _EuiInputPopoverProps extends Omit<EuiPopoverProps, 'button' | 'buttonRef' | 'anchorPosition'> {
6455
+ /**
6456
+ * Alignment of the popover relative to the input
6457
+ */
6458
+ anchorPosition?: 'downLeft' | 'downRight' | 'downCenter';
6457
6459
  disableFocusTrap?: boolean;
6458
6460
  fullWidth?: boolean;
6459
6461
  input: EuiPopoverProps['button'];
6460
6462
  inputRef?: EuiPopoverProps['buttonRef'];
6461
6463
  onPanelResize?: (width?: number) => void;
6464
+ /**
6465
+ * By default, **EuiInputPopovers** inherit the same width as the passed input element.
6466
+ * However, if the input width is too small, you can pass a minimum panel width
6467
+ * (that should be based on the popover content).
6468
+ */
6469
+ panelMinWidth?: number;
6462
6470
  }
6463
6471
  export type EuiInputPopoverProps = CommonProps & HTMLAttributes<HTMLDivElement> & _EuiInputPopoverProps;
6464
6472
  export const EuiInputPopover: FunctionComponent<EuiInputPopoverProps>;
@@ -6587,9 +6595,10 @@ declare module '@elastic/eui/src/components/form/range/range_input' {
6587
6595
  declare module '@elastic/eui/src/components/form/range/types' {
6588
6596
  import type { ReactNode, CSSProperties, InputHTMLAttributes } from 'react';
6589
6597
  import type { CommonProps } from '@elastic/eui/src/components/common';
6598
+ import type { EuiInputPopoverProps } from '@elastic/eui/src/components/popover/input_popover';
6590
6599
  import type { EuiFormControlLayoutProps } from '@elastic/eui/src/components/form/form_control_layout';
6591
6600
  import type { EuiRangeLevelColor } from '@elastic/eui/src/components/form/range/range_levels_colors';
6592
- import { EuiRangeInputProps } from '@elastic/eui/src/components/form/range/range_input';
6601
+ import type { EuiRangeInputProps } from '@elastic/eui/src/components/form/range/range_input';
6593
6602
  /**
6594
6603
  * Internal type atoms split up both for easier categorization
6595
6604
  * and for easier reusing/picking
@@ -6672,14 +6681,21 @@ declare module '@elastic/eui/src/components/form/range/types' {
6672
6681
  * @default false
6673
6682
  */
6674
6683
  fullWidth?: boolean;
6684
+ /**
6685
+ * Only impacts inputs rendered by the `showInput` prop
6686
+ */
6687
+ isInvalid?: boolean;
6675
6688
  /**
6676
6689
  * Only impacts inputs rendered when the `showInput` prop is set to `"inputWithPopover"`
6677
6690
  */
6678
6691
  isLoading?: boolean;
6679
6692
  /**
6680
- * Only impacts inputs rendered by the `showInput` prop
6693
+ * Only impacts input popovers rendered when the `showInput` prop is set to `"inputWithPopover"`
6694
+ *
6695
+ * Allows customizing the underlying [EuiInputPopover](/#/layout/popover#popover-attached-to-input-element),
6696
+ * except for props controlled by the range component
6681
6697
  */
6682
- isInvalid?: boolean;
6698
+ inputPopoverProps?: Omit<EuiInputPopoverProps, 'input' | 'isOpen' | 'closePopover' | 'disableFocusTrap' | 'popoverScreenReaderText' | 'fullWidth'>;
6683
6699
  }
6684
6700
  export type _SharedRangeInputSide = {
6685
6701
  /**
@@ -7264,7 +7280,7 @@ declare module '@elastic/eui/src/components/form/super_select/super_select' {
7264
7280
  import React, { Component, FocusEvent, ReactNode } from 'react';
7265
7281
  import { CommonProps } from '@elastic/eui/src/components/common';
7266
7282
  import { EuiSuperSelectControlProps, EuiSuperSelectOption } from '@elastic/eui/src/components/form/super_select/super_select_control';
7267
- import { EuiPopoverProps } from '@elastic/eui/src/components/popover';
7283
+ import { EuiInputPopoverProps } from '@elastic/eui/src/components/popover';
7268
7284
  import { EuiContextMenuItemLayoutAlignment } from '@elastic/eui/src/components/context_menu'; enum ShiftDirection {
7269
7285
  BACK = "back",
7270
7286
  FORWARD = "forward"
@@ -7306,7 +7322,7 @@ declare module '@elastic/eui/src/components/form/super_select/super_select' {
7306
7322
  */
7307
7323
  isOpen?: boolean;
7308
7324
  /**
7309
- * Optional props to pass to the underlying [EuiPopover](/#/layout/popover).
7325
+ * Optional props to pass to the underlying [EuiInputPopover](/#/layout/popover#popover-attached-to-input-element).
7310
7326
  * Allows fine-grained control of the popover dropdown menu, including
7311
7327
  * `repositionOnScroll` for EuiSuperSelects used within scrollable containers,
7312
7328
  * and customizing popover panel styling.
@@ -7314,7 +7330,7 @@ declare module '@elastic/eui/src/components/form/super_select/super_select' {
7314
7330
  * Does not accept a nested `popoverProps.isOpen` property - use the top level
7315
7331
  * `isOpen` API instead.
7316
7332
  */
7317
- popoverProps?: Partial<CommonProps & Omit<EuiPopoverProps, 'isOpen'>>;
7333
+ popoverProps?: Partial<CommonProps & Omit<EuiInputPopoverProps, 'isOpen'>>;
7318
7334
  };
7319
7335
  export class EuiSuperSelect<T extends string> extends Component<EuiSuperSelectProps<T>> {
7320
7336
  static defaultProps: {
@@ -8698,6 +8714,7 @@ declare module '@elastic/eui/src/components/accordion/accordion.styles' {
8698
8714
  }
8699
8715
  declare module '@elastic/eui/src/components/accordion/accordion' {
8700
8716
  import React, { Component, HTMLAttributes, ReactNode } from 'react';
8717
+ import { FocusableElement } from 'tabbable';
8701
8718
  import { CommonProps } from '@elastic/eui/src/components/common';
8702
8719
  import { WithEuiThemeProps } from '@elastic/eui/src/services';
8703
8720
  import { EuiButtonIconProps } from '@elastic/eui/src/components/button';
@@ -8771,10 +8788,10 @@ declare module '@elastic/eui/src/components/accordion/accordion' {
8771
8788
  * Disable the open/close interaction and visually subdues the trigger
8772
8789
  */
8773
8790
  isDisabled?: boolean;
8774
- };
8775
- export class EuiAccordionClass extends Component<WithEuiThemeProps & EuiAccordionProps, {
8791
+ }; type EuiAccordionState = {
8776
8792
  isOpen: boolean;
8777
- }> {
8793
+ };
8794
+ export class EuiAccordionClass extends Component<WithEuiThemeProps & EuiAccordionProps, EuiAccordionState> {
8778
8795
  static defaultProps: {
8779
8796
  initialIsOpen: boolean;
8780
8797
  paddingSize: "none";
@@ -8787,13 +8804,17 @@ declare module '@elastic/eui/src/components/accordion/accordion' {
8787
8804
  };
8788
8805
  childContent: HTMLDivElement | null;
8789
8806
  childWrapper: HTMLDivElement | null;
8807
+ tabbableChildren: FocusableElement[] | null;
8790
8808
  state: {
8791
8809
  isOpen: boolean;
8792
8810
  };
8811
+ get isOpen(): boolean;
8793
8812
  setChildContentHeight: () => void;
8794
8813
  componentDidMount(): void;
8795
- componentDidUpdate(): void;
8814
+ componentDidUpdate(prevProps: EuiAccordionProps, prevState: EuiAccordionState): void;
8796
8815
  onToggle: () => void;
8816
+ preventTabbing: () => void;
8817
+ enableTabbing: () => void;
8797
8818
  setChildContentRef: (node: HTMLDivElement | null) => void;
8798
8819
  generatedId: string;
8799
8820
  resizeRef: (e: HTMLElement | null) => void;
@@ -8801,6 +8822,7 @@ declare module '@elastic/eui/src/components/accordion/accordion' {
8801
8822
  render(): React.JSX.Element;
8802
8823
  }
8803
8824
  export const EuiAccordion: React.ForwardRefExoticComponent<Omit<EuiAccordionProps, "theme"> & React.RefAttributes<Omit<EuiAccordionProps, "theme">>>;
8825
+ export {};
8804
8826
 
8805
8827
  }
8806
8828
  declare module '@elastic/eui/src/components/accordion' {
@@ -8835,16 +8857,19 @@ declare module '@elastic/eui/src/components/aspect_ratio' {
8835
8857
 
8836
8858
  }
8837
8859
  declare module '@elastic/eui/src/components/auto_sizer/auto_sizer' {
8838
- import AutoSizer, { AutoSizerProps } from 'react-virtualized-auto-sizer';
8839
- export interface EuiAutoSizerProps extends AutoSizerProps {
8840
- }
8860
+ import type { ComponentProps } from 'react';
8861
+ import type { Size, HorizontalSize, VerticalSize } from 'react-virtualized-auto-sizer';
8862
+ export type EuiAutoSizerProps = ComponentProps<typeof AutoSizer>;
8863
+ export type EuiAutoSize = Size;
8864
+ export type EuiAutoSizeHorizontal = HorizontalSize;
8865
+ export type EuiAutoSizeVertical = VerticalSize;
8866
+ import AutoSizer from 'react-virtualized-auto-sizer';
8841
8867
  export class EuiAutoSizer extends AutoSizer {
8842
8868
  }
8843
8869
 
8844
8870
  }
8845
8871
  declare module '@elastic/eui/src/components/auto_sizer' {
8846
- export type { EuiAutoSizerProps } from '@elastic/eui/src/components/auto_sizer/auto_sizer';
8847
- export { EuiAutoSizer } from '@elastic/eui/src/components/auto_sizer/auto_sizer';
8872
+ export * from '@elastic/eui/src/components/auto_sizer/auto_sizer';
8848
8873
 
8849
8874
  }
8850
8875
  declare module '@elastic/eui/src/components/avatar/avatar.styles' {
@@ -10487,6 +10512,16 @@ declare module '@elastic/eui/src/components/flyout/flyout_body' {
10487
10512
  * Use to display a banner at the top of the body. It is suggested to use `EuiCallOut` for it.
10488
10513
  */
10489
10514
  banner?: ReactNode;
10515
+ /**
10516
+ * [Scrollable regions (or their children) should be focusable](https://dequeuniversity.com/rules/axe/4.0/scrollable-region-focusable)
10517
+ * to allow keyboard users to scroll the region via arrow keys.
10518
+ *
10519
+ * By default, EuiFlyoutBody's scroll overflow wrapper sets a `tabIndex` of `0`.
10520
+ * If you know your flyout body content already contains focusable children
10521
+ * that satisfy keyboard accessibility requirements, you can use this prop
10522
+ * to override this default.
10523
+ */
10524
+ scrollableTabIndex?: number;
10490
10525
  }>;
10491
10526
  export const EuiFlyoutBody: EuiFlyoutBodyProps;
10492
10527
 
@@ -10692,6 +10727,16 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
10692
10727
  * take up the full width of the page.
10693
10728
  */
10694
10729
  width?: number;
10730
+ /**
10731
+ * Overlay flyouts are considered dialogs, and dialogs must have a label.
10732
+ * By default, a label of `Site menu` will be applied.
10733
+ *
10734
+ * If your usage of this component is not actually for site-wide navigation,
10735
+ * please set your own `aria-label` or `aria-labelledby`.
10736
+ *
10737
+ * @default 'Site menu'
10738
+ */
10739
+ 'aria-label'?: string;
10695
10740
  };
10696
10741
  export const EuiCollapsibleNavBeta: FunctionComponent<EuiCollapsibleNavBetaProps>;
10697
10742
 
@@ -10854,7 +10899,7 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
10854
10899
 
10855
10900
  }
10856
10901
  declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item' {
10857
- import { FunctionComponent, ReactNode, HTMLAttributes } from 'react';
10902
+ import { FunctionComponent, HTMLAttributes } from 'react';
10858
10903
  import { CommonProps, ExclusiveUnion } from '@elastic/eui/src/components/common';
10859
10904
  import { IconType, EuiIconProps } from '@elastic/eui/src/components/icon';
10860
10905
  import { EuiLinkProps } from '@elastic/eui/src/components/link';
@@ -10891,11 +10936,11 @@ declare module '@elastic/eui/src/components/collapsible_nav_beta/collapsible_nav
10891
10936
  };
10892
10937
  export type EuiCollapsibleNavItemProps = {
10893
10938
  /**
10894
- * ReactNode to render as this component's title
10939
+ * Required text to render as the nav item title
10895
10940
  */
10896
- title: ReactNode;
10941
+ title: string;
10897
10942
  /**
10898
- * Allows customizing title's element.
10943
+ * Allows customizing the title element.
10899
10944
  * Consider using a heading element for better accessibility.
10900
10945
  * Defaults to an unsemantic `span` or `div`, depending on context.
10901
10946
  */
@@ -15261,7 +15306,7 @@ declare module '@elastic/eui/src/components/date_picker/date_picker_range' {
15261
15306
  import { IconType } from '@elastic/eui/src/components/icon';
15262
15307
  import { CommonProps } from '@elastic/eui/src/components/common';
15263
15308
  import { EuiDatePickerProps } from '@elastic/eui/src/components/date_picker/date_picker';
15264
- export type EuiDatePickerRangeProps = CommonProps & Pick<EuiFormControlLayoutDelimitedProps, 'isLoading' | 'isInvalid' | 'readOnly' | 'fullWidth' | 'prepend' | 'append'> & {
15309
+ export type EuiDatePickerRangeProps = CommonProps & Pick<EuiFormControlLayoutDelimitedProps, 'isLoading' | 'isInvalid' | 'readOnly' | 'fullWidth' | 'compressed' | 'prepend' | 'append'> & {
15265
15310
  /**
15266
15311
  * Including any children will replace all innards with the provided children
15267
15312
  */
@@ -15721,7 +15766,7 @@ declare module '@elastic/eui/src/components/empty_prompt/empty_prompt' {
15721
15766
  import { _EuiPanelDivlike } from '@elastic/eui/src/components/panel/panel';
15722
15767
  export const PADDING_SIZES: ("s" | "m" | "l" | "none")[];
15723
15768
  export type PaddingSize = (typeof PADDING_SIZES)[number];
15724
- export type EuiEmptyPromptProps = CommonProps & Omit<_EuiPanelDivlike, 'borderRadius' | 'grow' | 'panelRef' | 'paddingSize' | 'title'> & {
15769
+ export type EuiEmptyPromptProps = CommonProps & Omit<_EuiPanelDivlike, 'borderRadius' | 'grow' | 'panelRef' | 'paddingSize' | 'title' | 'element'> & {
15725
15770
  iconType?: IconType;
15726
15771
  /**
15727
15772
  * Color for `iconType` when passed as an `IconType`
@@ -19806,6 +19851,7 @@ declare module '@elastic/eui/src/components/selectable/selectable_list/selectabl
19806
19851
  ariaPosInSetMap: Record<number, number>;
19807
19852
  calculateAriaSetAttrs: (optionArray: Array<EuiSelectableOption<T>>) => void;
19808
19853
  ListRow: React.MemoExoticComponent<({ data, index, style }: ListChildComponentProps<T>) => React.JSX.Element>;
19854
+ renderVirtualizedList: (heightIsFull: boolean, optionArray: EuiSelectableOption[]) => React.JSX.Element | null;
19809
19855
  render(): React.JSX.Element;
19810
19856
  onAddOrRemoveOption: (option: EuiSelectableOption<T>, event: EuiSelectableOnChangeEvent) => void;
19811
19857
  private onAddOption;
@@ -20641,7 +20687,7 @@ declare module '@elastic/eui/src/components/steps/step.styles' {
20641
20687
  export const euiStepContentStyles: (euiThemeContext: UseEuiTheme) => {
20642
20688
  euiStep__content: import("@emotion/utils").SerializedStyles;
20643
20689
  m: import("@emotion/utils").SerializedStyles;
20644
- s: import("@emotion/utils").SerializedStyles;
20690
+ readonly s: import("@emotion/utils").SerializedStyles;
20645
20691
  xs: import("@emotion/utils").SerializedStyles;
20646
20692
  };
20647
20693
  export const euiStepTitleStyles: (euiThemeContext: UseEuiTheme) => {
@@ -22167,29 +22213,125 @@ declare module '@elastic/eui/src/components/resizable_container/context' {
22167
22213
  export const useEuiResizableContainerContext: () => ContainerContextProps;
22168
22214
  export {};
22169
22215
 
22216
+ }
22217
+ declare module '@elastic/eui/src/components/resizable_container/resizable_button.styles' {
22218
+ import { UseEuiTheme } from '@elastic/eui/src/services';
22219
+ export const euiResizableButtonStyles: (euiThemeContext: UseEuiTheme) => {
22220
+ euiResizableButton: import("@emotion/utils").SerializedStyles;
22221
+ horizontal: import("@emotion/utils").SerializedStyles;
22222
+ vertical: import("@emotion/utils").SerializedStyles;
22223
+ alignIndicator: {
22224
+ center: import("@emotion/utils").SerializedStyles;
22225
+ start: import("@emotion/utils").SerializedStyles;
22226
+ end: import("@emotion/utils").SerializedStyles;
22227
+ };
22228
+ };
22229
+
22170
22230
  }
22171
22231
  declare module '@elastic/eui/src/components/resizable_container/resizable_button' {
22172
22232
  import React, { FunctionComponent, ButtonHTMLAttributes } from 'react';
22173
22233
  import { CommonProps } from '@elastic/eui/src/components/common';
22174
22234
  import { EuiResizableButtonController, EuiResizableButtonMouseEvent, EuiResizableButtonKeyEvent } from '@elastic/eui/src/components/resizable_container/types';
22175
- interface EuiResizableButtonControls {
22176
- onKeyDown: (eve: EuiResizableButtonKeyEvent) => void;
22177
- onKeyUp: (eve: EuiResizableButtonKeyEvent) => void;
22178
- onMouseDown: (eve: EuiResizableButtonMouseEvent) => void;
22179
- onTouchStart: (eve: EuiResizableButtonMouseEvent) => void;
22180
- onFocus: (id: string) => void;
22181
- onBlur: () => void;
22235
+ export type EuiResizableButtonProps = ButtonHTMLAttributes<HTMLButtonElement> & CommonProps & {
22236
+ /**
22237
+ * Defaults to displaying a resizer for vertical (y-axis) resizing.
22238
+ * Set to `true` to display a resizer for horizontal (x-axis) resizing.
22239
+ */
22240
+ isHorizontal?: boolean;
22241
+ /**
22242
+ * Specify the alignment of the initial resize indicator. Defaults to `center`,
22243
+ * but consider using `start` for extremely tall content that scrolls off-screen
22244
+ */
22245
+ alignIndicator?: 'center' | 'start' | 'end';
22246
+ /**
22247
+ * When disabled, the resizer button will be completely hidden
22248
+ */
22249
+ disabled?: boolean;
22250
+ };
22251
+ /**
22252
+ * A generic button for indicating/facilitating resizable content,
22253
+ * usable outside of the EuiResizableContainer context
22254
+ */
22255
+ export const EuiResizableButton: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & CommonProps & {
22256
+ /**
22257
+ * Defaults to displaying a resizer for vertical (y-axis) resizing.
22258
+ * Set to `true` to display a resizer for horizontal (x-axis) resizing.
22259
+ */
22260
+ isHorizontal?: boolean | undefined;
22261
+ /**
22262
+ * Specify the alignment of the initial resize indicator. Defaults to `center`,
22263
+ * but consider using `start` for extremely tall content that scrolls off-screen
22264
+ */
22265
+ alignIndicator?: "center" | "start" | "end" | undefined;
22266
+ /**
22267
+ * When disabled, the resizer button will be completely hidden
22268
+ */
22269
+ disabled?: boolean | undefined;
22270
+ } & React.RefAttributes<HTMLButtonElement>>;
22271
+ /**
22272
+ * Resizer button specific to controlled EuiResizableContainer usage
22273
+ */
22274
+ export type EuiResizableButtonControls = Omit<EuiResizableButtonProps, 'onFocus'> & {
22182
22275
  registration: {
22183
22276
  register: (resizer: EuiResizableButtonController) => void;
22184
22277
  deregister: (resizerId: EuiResizableButtonController['id']) => void;
22185
22278
  };
22186
- isHorizontal: boolean;
22187
- }
22188
- export interface EuiResizableButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, keyof EuiResizableButtonControls>, CommonProps, Partial<EuiResizableButtonControls> {
22189
- }
22190
- export const EuiResizableButton: FunctionComponent<EuiResizableButtonProps>;
22191
- export function euiResizableButtonWithControls(controls: EuiResizableButtonControls): (props: CommonProps) => React.JSX.Element;
22192
- export {};
22279
+ onKeyDown: (e: EuiResizableButtonKeyEvent) => void;
22280
+ onKeyUp: (e: EuiResizableButtonKeyEvent) => void;
22281
+ onMouseDown: (e: EuiResizableButtonMouseEvent) => void;
22282
+ onTouchStart: (e: EuiResizableButtonMouseEvent) => void;
22283
+ onBlur: () => void;
22284
+ onFocus: (id: string) => void;
22285
+ };
22286
+ export const EuiResizableButtonControlled: FunctionComponent<Partial<EuiResizableButtonControls>>;
22287
+ export const euiResizableButtonWithControls: (controls: EuiResizableButtonControls) => (props: CommonProps) => React.JSX.Element;
22288
+
22289
+ }
22290
+ declare module '@elastic/eui/src/components/resizable_container/resizable_collapse_button.styles' {
22291
+ import { UseEuiTheme } from '@elastic/eui/src/services';
22292
+ export const euiResizableCollapseButtonStyles: (euiThemeContext: UseEuiTheme) => {
22293
+ euiResizableCollapseButton: import("@emotion/utils").SerializedStyles;
22294
+ collapsible: {
22295
+ collapsible: import("@emotion/utils").SerializedStyles;
22296
+ horizontal: {
22297
+ after: import("@emotion/utils").SerializedStyles;
22298
+ before: import("@emotion/utils").SerializedStyles;
22299
+ middle: import("@emotion/utils").SerializedStyles;
22300
+ top: import("@emotion/utils").SerializedStyles;
22301
+ bottom: import("@emotion/utils").SerializedStyles;
22302
+ readonly left: import("@emotion/utils").SerializedStyles;
22303
+ readonly right: import("@emotion/utils").SerializedStyles;
22304
+ };
22305
+ vertical: {
22306
+ after: import("@emotion/utils").SerializedStyles;
22307
+ before: import("@emotion/utils").SerializedStyles;
22308
+ middle: import("@emotion/utils").SerializedStyles;
22309
+ left: import("@emotion/utils").SerializedStyles;
22310
+ right: import("@emotion/utils").SerializedStyles;
22311
+ readonly top: import("@emotion/utils").SerializedStyles;
22312
+ readonly bottom: import("@emotion/utils").SerializedStyles;
22313
+ };
22314
+ };
22315
+ collapsed: {
22316
+ collapsed: import("@emotion/utils").SerializedStyles;
22317
+ horizontal: import("@emotion/utils").SerializedStyles;
22318
+ vertical: import("@emotion/utils").SerializedStyles;
22319
+ horizontalPositions: {
22320
+ top: import("@emotion/utils").SerializedStyles;
22321
+ bottom: import("@emotion/utils").SerializedStyles;
22322
+ middle: import("@emotion/utils").SerializedStyles;
22323
+ left: import("@emotion/utils").SerializedStyles;
22324
+ right: import("@emotion/utils").SerializedStyles;
22325
+ };
22326
+ verticalPositions: {
22327
+ left: import("@emotion/utils").SerializedStyles;
22328
+ right: import("@emotion/utils").SerializedStyles;
22329
+ middle: import("@emotion/utils").SerializedStyles;
22330
+ top: import("@emotion/utils").SerializedStyles;
22331
+ bottom: import("@emotion/utils").SerializedStyles;
22332
+ };
22333
+ };
22334
+ };
22193
22335
 
22194
22336
  }
22195
22337
  declare module '@elastic/eui/src/components/resizable_container/resizable_collapse_button' {
@@ -22212,9 +22354,6 @@ declare module '@elastic/eui/src/components/resizable_container/resizable_collap
22212
22354
  * Same direction derived from EuiResizableContainer
22213
22355
  */
22214
22356
  direction?: EuiResizableContainerProps['direction'];
22215
- /**
22216
- *
22217
- */
22218
22357
  isVisible?: boolean;
22219
22358
  isCollapsed?: boolean;
22220
22359
  };
@@ -22405,6 +22544,8 @@ declare module '@elastic/eui/src/components/resizable_container/resizable_contai
22405
22544
  declare module '@elastic/eui/src/components/resizable_container' {
22406
22545
  export type { EuiResizableContainerProps } from '@elastic/eui/src/components/resizable_container/resizable_container';
22407
22546
  export { EuiResizableContainer } from '@elastic/eui/src/components/resizable_container/resizable_container';
22547
+ export type { EuiResizableButtonProps } from '@elastic/eui/src/components/resizable_container/resizable_button';
22548
+ export { EuiResizableButton } from '@elastic/eui/src/components/resizable_container/resizable_button';
22408
22549
 
22409
22550
  }
22410
22551
  declare module '@elastic/eui/src/components' {
@@ -27823,6 +27964,7 @@ declare module '@elastic/eui' {
27823
27964
  "euiCodeBlockCopy.copy": any;
27824
27965
  "euiCodeBlockFullScreen.fullscreenCollapse": any;
27825
27966
  "euiCodeBlockFullScreen.fullscreenExpand": any;
27967
+ "euiCollapsibleNavBeta.ariaLabel": any;
27826
27968
  "euiCollapsibleNavButton.ariaLabelOpen": any;
27827
27969
  "euiCollapsibleNavButton.ariaLabelClose": any;
27828
27970
  "euiColorPickerSwatch.ariaLabel": any;