@elastic/eui 108.0.0 → 109.1.0-snapshot.1763390960850

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 (405) hide show
  1. package/es/components/accessibility/skip_link/skip_link.js +10 -1
  2. package/es/components/basic_table/collapsed_item_actions.js +3 -1
  3. package/es/components/basic_table/default_item_action.js +7 -4
  4. package/es/components/bottom_bar/bottom_bar.js +12 -2
  5. package/es/components/button/button.js +20 -25
  6. package/es/components/button/button_display/_button_display.js +32 -30
  7. package/es/components/button/button_display/_button_display.styles.js +4 -4
  8. package/es/components/button/button_empty/button_empty.js +32 -14
  9. package/es/components/button/button_group/button_group.js +49 -31
  10. package/es/components/button/button_group/button_group_button.js +16 -5
  11. package/es/components/button/button_group/button_group_button.styles.js +12 -8
  12. package/es/components/button/button_icon/button_icon.js +30 -6
  13. package/es/components/card/card.js +20 -25
  14. package/es/components/card/card_select/card_select.js +20 -25
  15. package/es/components/code/code_block_virtualized.js +9 -7
  16. package/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +13 -1
  17. package/es/components/datagrid/body/cell/data_grid_cell.js +35 -12
  18. package/es/components/datagrid/body/data_grid_body.js +23 -6
  19. package/es/components/datagrid/body/data_grid_body_custom.js +23 -6
  20. package/es/components/datagrid/body/data_grid_body_virtualized.js +23 -6
  21. package/es/components/datagrid/body/header/column_actions.js +5 -21
  22. package/es/components/datagrid/body/header/data_grid_header_cell.js +29 -10
  23. package/es/components/datagrid/body/header/data_grid_header_cell.styles.js +8 -2
  24. package/es/components/datagrid/body/header/data_grid_header_cell_wrapper.js +5 -2
  25. package/es/components/datagrid/controls/column_selector.js +36 -19
  26. package/es/components/datagrid/controls/column_sorting.js +23 -6
  27. package/es/components/datagrid/controls/data_grid_toolbar_control.js +13 -7
  28. package/es/components/datagrid/data_grid.js +5 -1
  29. package/es/components/datagrid/utils/in_memory.js +25 -7
  30. package/es/components/date_picker/auto_refresh/auto_refresh.js +11 -2
  31. package/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +31 -5
  32. package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +24 -3
  33. package/es/components/date_picker/super_date_picker/date_popover/date_popover_content.js +26 -4
  34. package/es/components/date_picker/super_date_picker/date_popover/relative_tab.js +29 -3
  35. package/es/components/date_picker/super_date_picker/date_popover/timezone_display.js +98 -0
  36. package/es/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +19 -0
  37. package/es/components/date_picker/super_date_picker/pretty_duration.js +1 -8
  38. package/es/components/date_picker/super_date_picker/relative_utils.js +8 -0
  39. package/es/components/date_picker/super_date_picker/super_date_picker.js +118 -26
  40. package/es/components/date_picker/super_date_picker/time_window_buttons.js +185 -0
  41. package/es/components/facet/facet_button.js +9 -19
  42. package/es/components/filter_group/filter_button.js +14 -1
  43. package/es/components/flyout/flyout.js +27 -10
  44. package/es/components/form/file_picker/file_picker.styles.js +3 -3
  45. package/es/components/form/form_control_button/form_control_button.js +13 -7
  46. package/es/components/header/header_links/header_link.js +13 -7
  47. package/es/components/header/header_section/header_section_item_button.js +13 -7
  48. package/es/components/icon/assets/boxes_vertical.js +1 -1
  49. package/es/components/icon/assets/checkInCircleFilled.js +1 -2
  50. package/es/components/icon/assets/errorFilled.js +1 -2
  51. package/es/components/icon/assets/paper_clip.js +1 -1
  52. package/es/components/icon/assets/streams_wired.js +3 -2
  53. package/es/components/icon/assets/warningFilled.js +1 -2
  54. package/es/components/icon/icon_map.js +3 -6
  55. package/es/components/list_group/list_group.js +13 -1
  56. package/es/components/list_group/list_group_item.js +13 -1
  57. package/es/components/list_group/list_group_item_extra_action.js +13 -1
  58. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +15 -2
  59. package/es/components/overlay_mask/overlay_mask.styles.js +1 -1
  60. package/es/components/pagination/pagination_button.js +13 -7
  61. package/es/components/popover/popover.js +22 -16
  62. package/es/components/provider/component_defaults/component_defaults.js +22 -2
  63. package/es/components/table/table_row.styles.js +1 -1
  64. package/es/components/tool_tip/tool_tip.js +24 -24
  65. package/es/global_styling/index.js +2 -1
  66. package/es/global_styling/mixins/_button.js +1 -1
  67. package/es/global_styling/utility/selectors.js +9 -0
  68. package/es/services/focus_trap/focus_trap_pub_sub.js +74 -0
  69. package/es/services/focus_trap/index.js +9 -0
  70. package/es/services/hooks/index.js +2 -1
  71. package/es/services/hooks/useEuiDisabledElement.js +195 -0
  72. package/es/services/index.js +1 -0
  73. package/es/services/popover/reposition_on_scroll.js +61 -0
  74. package/es/services/theme/high_contrast_overrides.js +5 -1
  75. package/es/test/cypress/index.d.ts +12 -0
  76. package/es/test/cypress/index.js +9 -0
  77. package/es/test/cypress/matchers.d.ts +20 -0
  78. package/es/test/cypress/matchers.js +54 -0
  79. package/es/test/cypress/test_reposition_on_scroll.js +66 -0
  80. package/es/test/enzyme/enzyme_matchers.d.ts +36 -0
  81. package/es/test/enzyme/enzyme_matchers.js +43 -0
  82. package/es/test/enzyme/index.d.ts +14 -0
  83. package/es/test/enzyme/index.js +10 -0
  84. package/es/test/rtl/index.d.ts +9 -1
  85. package/es/test/rtl/index.js +2 -1
  86. package/es/test/rtl/matchers.d.ts +36 -0
  87. package/es/test/rtl/matchers.js +82 -0
  88. package/es/utils/element_can_be_disabled.js +16 -0
  89. package/es/utils/index.js +2 -1
  90. package/eui.d.ts +604 -183
  91. package/i18ntokens.json +1357 -1231
  92. package/lib/components/accessibility/skip_link/skip_link.js +10 -1
  93. package/lib/components/basic_table/collapsed_item_actions.js +3 -1
  94. package/lib/components/basic_table/default_item_action.js +7 -4
  95. package/lib/components/bottom_bar/bottom_bar.js +11 -1
  96. package/lib/components/button/button.js +21 -26
  97. package/lib/components/button/button_display/_button_display.js +31 -29
  98. package/lib/components/button/button_display/_button_display.styles.js +4 -4
  99. package/lib/components/button/button_empty/button_empty.js +31 -13
  100. package/lib/components/button/button_group/button_group.js +49 -31
  101. package/lib/components/button/button_group/button_group_button.js +16 -5
  102. package/lib/components/button/button_group/button_group_button.styles.js +10 -6
  103. package/lib/components/button/button_icon/button_icon.js +29 -5
  104. package/lib/components/card/card.js +21 -26
  105. package/lib/components/card/card_select/card_select.js +21 -26
  106. package/lib/components/code/code_block_virtualized.js +9 -7
  107. package/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +13 -1
  108. package/lib/components/datagrid/body/cell/data_grid_cell.js +35 -12
  109. package/lib/components/datagrid/body/data_grid_body.js +23 -6
  110. package/lib/components/datagrid/body/data_grid_body_custom.js +23 -6
  111. package/lib/components/datagrid/body/data_grid_body_virtualized.js +23 -6
  112. package/lib/components/datagrid/body/header/column_actions.js +5 -21
  113. package/lib/components/datagrid/body/header/data_grid_header_cell.js +29 -10
  114. package/lib/components/datagrid/body/header/data_grid_header_cell.styles.js +8 -1
  115. package/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.js +5 -2
  116. package/lib/components/datagrid/controls/column_selector.js +36 -19
  117. package/lib/components/datagrid/controls/column_sorting.js +23 -6
  118. package/lib/components/datagrid/controls/data_grid_toolbar_control.js +13 -7
  119. package/lib/components/datagrid/data_grid.js +5 -1
  120. package/lib/components/datagrid/utils/in_memory.js +25 -7
  121. package/lib/components/date_picker/auto_refresh/auto_refresh.js +12 -3
  122. package/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +30 -4
  123. package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +24 -3
  124. package/lib/components/date_picker/super_date_picker/date_popover/date_popover_content.js +26 -4
  125. package/lib/components/date_picker/super_date_picker/date_popover/relative_tab.js +29 -3
  126. package/lib/components/date_picker/super_date_picker/date_popover/timezone_display.js +104 -0
  127. package/lib/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +25 -0
  128. package/lib/components/date_picker/super_date_picker/pretty_duration.js +2 -9
  129. package/lib/components/date_picker/super_date_picker/relative_utils.js +9 -0
  130. package/lib/components/date_picker/super_date_picker/super_date_picker.js +118 -26
  131. package/lib/components/date_picker/super_date_picker/time_window_buttons.js +193 -0
  132. package/lib/components/facet/facet_button.js +9 -19
  133. package/lib/components/filter_group/filter_button.js +14 -1
  134. package/lib/components/flyout/flyout.js +26 -9
  135. package/lib/components/form/file_picker/file_picker.styles.js +3 -3
  136. package/lib/components/form/form_control_button/form_control_button.js +13 -7
  137. package/lib/components/header/header_links/header_link.js +13 -7
  138. package/lib/components/header/header_section/header_section_item_button.js +13 -7
  139. package/lib/components/icon/assets/boxes_vertical.js +1 -1
  140. package/lib/components/icon/assets/checkInCircleFilled.js +1 -2
  141. package/lib/components/icon/assets/errorFilled.js +1 -2
  142. package/lib/components/icon/assets/paper_clip.js +1 -1
  143. package/lib/components/icon/assets/streams_wired.js +3 -2
  144. package/lib/components/icon/assets/warningFilled.js +1 -2
  145. package/lib/components/icon/icon_map.js +3 -6
  146. package/lib/components/icon/svgs/boxes_vertical.svg +1 -1
  147. package/lib/components/icon/svgs/checkInCircleFilled.svg +1 -1
  148. package/lib/components/icon/svgs/errorFilled.svg +1 -1
  149. package/lib/components/icon/svgs/paper_clip.svg +3 -3
  150. package/lib/components/icon/svgs/warningFilled.svg +1 -1
  151. package/lib/components/list_group/list_group.js +13 -1
  152. package/lib/components/list_group/list_group_item.js +13 -1
  153. package/lib/components/list_group/list_group_item_extra_action.js +13 -1
  154. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +15 -2
  155. package/lib/components/overlay_mask/overlay_mask.styles.js +1 -1
  156. package/lib/components/pagination/pagination_button.js +13 -7
  157. package/lib/components/popover/popover.js +21 -15
  158. package/lib/components/provider/component_defaults/component_defaults.js +22 -2
  159. package/lib/components/table/table_row.styles.js +1 -1
  160. package/lib/components/tool_tip/tool_tip.js +24 -24
  161. package/lib/global_styling/index.js +16 -1
  162. package/lib/global_styling/mixins/_button.js +1 -1
  163. package/lib/global_styling/utility/selectors.js +15 -0
  164. package/lib/services/focus_trap/focus_trap_pub_sub.js +80 -0
  165. package/lib/services/focus_trap/index.js +12 -0
  166. package/lib/services/hooks/index.js +18 -1
  167. package/lib/services/hooks/useEuiDisabledElement.js +199 -0
  168. package/lib/services/index.js +8 -0
  169. package/lib/services/popover/reposition_on_scroll.js +67 -0
  170. package/lib/services/theme/high_contrast_overrides.js +5 -1
  171. package/lib/test/cypress/index.d.ts +12 -0
  172. package/lib/test/cypress/index.js +18 -0
  173. package/lib/test/cypress/matchers.d.ts +20 -0
  174. package/lib/test/cypress/matchers.js +61 -0
  175. package/lib/test/cypress/test_reposition_on_scroll.js +69 -0
  176. package/lib/test/enzyme/enzyme_matchers.d.ts +36 -0
  177. package/lib/test/enzyme/enzyme_matchers.js +49 -0
  178. package/lib/test/enzyme/index.d.ts +14 -0
  179. package/lib/test/enzyme/index.js +24 -0
  180. package/lib/test/rtl/index.d.ts +9 -1
  181. package/lib/test/rtl/index.js +24 -2
  182. package/lib/test/rtl/matchers.d.ts +36 -0
  183. package/lib/test/rtl/matchers.js +86 -0
  184. package/lib/utils/element_can_be_disabled.js +22 -0
  185. package/lib/utils/index.js +14 -1
  186. package/optimize/es/components/basic_table/collapsed_item_actions.js +3 -1
  187. package/optimize/es/components/basic_table/default_item_action.js +7 -4
  188. package/optimize/es/components/bottom_bar/bottom_bar.js +12 -2
  189. package/optimize/es/components/button/button_display/_button_display.js +24 -12
  190. package/optimize/es/components/button/button_display/_button_display.styles.js +4 -4
  191. package/optimize/es/components/button/button_empty/button_empty.js +18 -6
  192. package/optimize/es/components/button/button_group/button_group.js +10 -5
  193. package/optimize/es/components/button/button_group/button_group_button.js +2 -3
  194. package/optimize/es/components/button/button_group/button_group_button.styles.js +12 -8
  195. package/optimize/es/components/button/button_icon/button_icon.js +17 -5
  196. package/optimize/es/components/code/code_block_virtualized.js +9 -7
  197. package/optimize/es/components/datagrid/body/header/column_actions.js +5 -21
  198. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +6 -4
  199. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.styles.js +8 -2
  200. package/optimize/es/components/datagrid/body/header/data_grid_header_cell_wrapper.js +4 -2
  201. package/optimize/es/components/datagrid/controls/column_selector.js +36 -19
  202. package/optimize/es/components/datagrid/data_grid.js +5 -1
  203. package/optimize/es/components/datagrid/utils/in_memory.js +2 -1
  204. package/optimize/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +12 -4
  205. package/optimize/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +5 -2
  206. package/optimize/es/components/date_picker/super_date_picker/date_popover/date_popover_content.js +7 -3
  207. package/optimize/es/components/date_picker/super_date_picker/date_popover/relative_tab.js +10 -2
  208. package/optimize/es/components/date_picker/super_date_picker/date_popover/timezone_display.js +97 -0
  209. package/optimize/es/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +19 -0
  210. package/optimize/es/components/date_picker/super_date_picker/pretty_duration.js +1 -8
  211. package/optimize/es/components/date_picker/super_date_picker/relative_utils.js +8 -0
  212. package/optimize/es/components/date_picker/super_date_picker/super_date_picker.js +49 -25
  213. package/optimize/es/components/date_picker/super_date_picker/time_window_buttons.js +185 -0
  214. package/optimize/es/components/flyout/flyout.js +27 -10
  215. package/optimize/es/components/form/file_picker/file_picker.styles.js +3 -3
  216. package/optimize/es/components/icon/assets/boxes_vertical.js +1 -1
  217. package/optimize/es/components/icon/assets/checkInCircleFilled.js +1 -2
  218. package/optimize/es/components/icon/assets/errorFilled.js +1 -2
  219. package/optimize/es/components/icon/assets/paper_clip.js +1 -1
  220. package/optimize/es/components/icon/assets/streams_wired.js +3 -2
  221. package/optimize/es/components/icon/assets/warningFilled.js +1 -2
  222. package/optimize/es/components/icon/icon_map.js +3 -6
  223. package/optimize/es/components/overlay_mask/overlay_mask.styles.js +1 -1
  224. package/optimize/es/components/popover/popover.js +22 -16
  225. package/optimize/es/components/table/table_row.styles.js +1 -1
  226. package/optimize/es/components/tool_tip/tool_tip.js +24 -24
  227. package/optimize/es/global_styling/index.js +2 -1
  228. package/optimize/es/global_styling/mixins/_button.js +1 -1
  229. package/optimize/es/global_styling/utility/selectors.js +9 -0
  230. package/optimize/es/services/focus_trap/focus_trap_pub_sub.js +74 -0
  231. package/optimize/es/services/focus_trap/index.js +9 -0
  232. package/optimize/es/services/hooks/index.js +2 -1
  233. package/optimize/es/services/hooks/useEuiDisabledElement.js +192 -0
  234. package/optimize/es/services/index.js +1 -0
  235. package/optimize/es/services/popover/reposition_on_scroll.js +61 -0
  236. package/optimize/es/services/theme/high_contrast_overrides.js +5 -1
  237. package/optimize/es/test/cypress/index.d.ts +12 -0
  238. package/optimize/es/test/cypress/index.js +9 -0
  239. package/optimize/es/test/cypress/matchers.d.ts +20 -0
  240. package/optimize/es/test/cypress/matchers.js +54 -0
  241. package/optimize/es/test/cypress/test_reposition_on_scroll.js +63 -0
  242. package/optimize/es/test/enzyme/enzyme_matchers.d.ts +36 -0
  243. package/optimize/es/test/enzyme/enzyme_matchers.js +43 -0
  244. package/optimize/es/test/enzyme/index.d.ts +14 -0
  245. package/optimize/es/test/enzyme/index.js +10 -0
  246. package/optimize/es/test/rtl/index.d.ts +9 -1
  247. package/optimize/es/test/rtl/index.js +2 -1
  248. package/optimize/es/test/rtl/matchers.d.ts +36 -0
  249. package/optimize/es/test/rtl/matchers.js +82 -0
  250. package/optimize/es/utils/element_can_be_disabled.js +16 -0
  251. package/optimize/es/utils/index.js +2 -1
  252. package/optimize/lib/components/basic_table/collapsed_item_actions.js +3 -1
  253. package/optimize/lib/components/basic_table/default_item_action.js +7 -4
  254. package/optimize/lib/components/bottom_bar/bottom_bar.js +11 -1
  255. package/optimize/lib/components/button/button_display/_button_display.js +23 -11
  256. package/optimize/lib/components/button/button_display/_button_display.styles.js +4 -4
  257. package/optimize/lib/components/button/button_empty/button_empty.js +17 -5
  258. package/optimize/lib/components/button/button_group/button_group.js +10 -5
  259. package/optimize/lib/components/button/button_group/button_group_button.js +2 -3
  260. package/optimize/lib/components/button/button_group/button_group_button.styles.js +10 -6
  261. package/optimize/lib/components/button/button_icon/button_icon.js +16 -4
  262. package/optimize/lib/components/code/code_block_virtualized.js +9 -7
  263. package/optimize/lib/components/datagrid/body/header/column_actions.js +5 -21
  264. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +6 -4
  265. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.styles.js +8 -1
  266. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.js +4 -2
  267. package/optimize/lib/components/datagrid/controls/column_selector.js +36 -19
  268. package/optimize/lib/components/datagrid/data_grid.js +5 -1
  269. package/optimize/lib/components/datagrid/utils/in_memory.js +2 -1
  270. package/optimize/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +11 -3
  271. package/optimize/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +5 -2
  272. package/optimize/lib/components/date_picker/super_date_picker/date_popover/date_popover_content.js +7 -3
  273. package/optimize/lib/components/date_picker/super_date_picker/date_popover/relative_tab.js +10 -2
  274. package/optimize/lib/components/date_picker/super_date_picker/date_popover/timezone_display.js +103 -0
  275. package/optimize/lib/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +25 -0
  276. package/optimize/lib/components/date_picker/super_date_picker/pretty_duration.js +2 -9
  277. package/optimize/lib/components/date_picker/super_date_picker/relative_utils.js +9 -0
  278. package/optimize/lib/components/date_picker/super_date_picker/super_date_picker.js +49 -25
  279. package/optimize/lib/components/date_picker/super_date_picker/time_window_buttons.js +193 -0
  280. package/optimize/lib/components/flyout/flyout.js +26 -9
  281. package/optimize/lib/components/form/file_picker/file_picker.styles.js +3 -3
  282. package/optimize/lib/components/icon/assets/boxes_vertical.js +1 -1
  283. package/optimize/lib/components/icon/assets/checkInCircleFilled.js +1 -2
  284. package/optimize/lib/components/icon/assets/errorFilled.js +1 -2
  285. package/optimize/lib/components/icon/assets/paper_clip.js +1 -1
  286. package/optimize/lib/components/icon/assets/streams_wired.js +3 -2
  287. package/optimize/lib/components/icon/assets/warningFilled.js +1 -2
  288. package/optimize/lib/components/icon/icon_map.js +3 -6
  289. package/optimize/lib/components/icon/svgs/boxes_vertical.svg +1 -1
  290. package/optimize/lib/components/icon/svgs/checkInCircleFilled.svg +1 -1
  291. package/optimize/lib/components/icon/svgs/errorFilled.svg +1 -1
  292. package/optimize/lib/components/icon/svgs/paper_clip.svg +3 -3
  293. package/optimize/lib/components/icon/svgs/warningFilled.svg +1 -1
  294. package/optimize/lib/components/overlay_mask/overlay_mask.styles.js +1 -1
  295. package/optimize/lib/components/popover/popover.js +21 -15
  296. package/optimize/lib/components/table/table_row.styles.js +1 -1
  297. package/optimize/lib/components/tool_tip/tool_tip.js +24 -24
  298. package/optimize/lib/global_styling/index.js +16 -1
  299. package/optimize/lib/global_styling/mixins/_button.js +1 -1
  300. package/optimize/lib/global_styling/utility/selectors.js +15 -0
  301. package/optimize/lib/services/focus_trap/focus_trap_pub_sub.js +80 -0
  302. package/optimize/lib/services/focus_trap/index.js +12 -0
  303. package/optimize/lib/services/hooks/index.js +18 -1
  304. package/optimize/lib/services/hooks/useEuiDisabledElement.js +197 -0
  305. package/optimize/lib/services/index.js +8 -0
  306. package/optimize/lib/services/popover/reposition_on_scroll.js +67 -0
  307. package/optimize/lib/services/theme/high_contrast_overrides.js +5 -1
  308. package/optimize/lib/test/cypress/index.d.ts +12 -0
  309. package/optimize/lib/test/cypress/index.js +18 -0
  310. package/optimize/lib/test/cypress/matchers.d.ts +20 -0
  311. package/optimize/lib/test/cypress/matchers.js +61 -0
  312. package/optimize/lib/test/cypress/test_reposition_on_scroll.js +70 -0
  313. package/optimize/lib/test/enzyme/enzyme_matchers.d.ts +36 -0
  314. package/optimize/lib/test/enzyme/enzyme_matchers.js +50 -0
  315. package/optimize/lib/test/enzyme/index.d.ts +14 -0
  316. package/optimize/lib/test/enzyme/index.js +24 -0
  317. package/optimize/lib/test/rtl/index.d.ts +9 -1
  318. package/optimize/lib/test/rtl/index.js +24 -2
  319. package/optimize/lib/test/rtl/matchers.d.ts +36 -0
  320. package/optimize/lib/test/rtl/matchers.js +86 -0
  321. package/optimize/lib/utils/element_can_be_disabled.js +22 -0
  322. package/optimize/lib/utils/index.js +14 -1
  323. package/package.json +6 -5
  324. package/test-env/components/accessibility/skip_link/skip_link.js +10 -1
  325. package/test-env/components/basic_table/collapsed_item_actions.js +3 -1
  326. package/test-env/components/basic_table/default_item_action.js +7 -4
  327. package/test-env/components/bottom_bar/bottom_bar.js +11 -1
  328. package/test-env/components/button/button.js +21 -26
  329. package/test-env/components/button/button_display/_button_display.js +31 -29
  330. package/test-env/components/button/button_display/_button_display.styles.js +4 -4
  331. package/test-env/components/button/button_empty/button_empty.js +31 -13
  332. package/test-env/components/button/button_group/button_group.js +49 -31
  333. package/test-env/components/button/button_group/button_group_button.js +16 -5
  334. package/test-env/components/button/button_group/button_group_button.styles.js +10 -6
  335. package/test-env/components/button/button_icon/button_icon.js +29 -5
  336. package/test-env/components/card/card.js +21 -26
  337. package/test-env/components/card/card_select/card_select.js +21 -26
  338. package/test-env/components/code/code_block_virtualized.js +9 -7
  339. package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +13 -1
  340. package/test-env/components/datagrid/body/cell/data_grid_cell.js +35 -12
  341. package/test-env/components/datagrid/body/data_grid_body.js +23 -6
  342. package/test-env/components/datagrid/body/data_grid_body_custom.js +23 -6
  343. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +23 -6
  344. package/test-env/components/datagrid/body/header/column_actions.js +5 -21
  345. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +29 -10
  346. package/test-env/components/datagrid/body/header/data_grid_header_cell.styles.js +8 -1
  347. package/test-env/components/datagrid/body/header/data_grid_header_cell_wrapper.js +5 -2
  348. package/test-env/components/datagrid/controls/column_selector.js +36 -19
  349. package/test-env/components/datagrid/controls/column_sorting.js +23 -6
  350. package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +13 -7
  351. package/test-env/components/datagrid/data_grid.js +5 -1
  352. package/test-env/components/datagrid/utils/in_memory.js +25 -7
  353. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +12 -3
  354. package/test-env/components/date_picker/super_date_picker/date_popover/absolute_tab.js +30 -4
  355. package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.js +24 -3
  356. package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_content.js +26 -4
  357. package/test-env/components/date_picker/super_date_picker/date_popover/relative_tab.js +29 -3
  358. package/test-env/components/date_picker/super_date_picker/date_popover/timezone_display.js +103 -0
  359. package/test-env/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +25 -0
  360. package/test-env/components/date_picker/super_date_picker/pretty_duration.js +2 -9
  361. package/test-env/components/date_picker/super_date_picker/relative_utils.js +9 -0
  362. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +118 -26
  363. package/test-env/components/date_picker/super_date_picker/time_window_buttons.js +193 -0
  364. package/test-env/components/facet/facet_button.js +9 -19
  365. package/test-env/components/filter_group/filter_button.js +14 -1
  366. package/test-env/components/form/file_picker/file_picker.styles.js +3 -3
  367. package/test-env/components/form/form_control_button/form_control_button.js +13 -7
  368. package/test-env/components/header/header_links/header_link.js +13 -7
  369. package/test-env/components/header/header_section/header_section_item_button.js +13 -7
  370. package/test-env/components/icon/assets/boxes_vertical.js +1 -1
  371. package/test-env/components/icon/assets/checkInCircleFilled.js +1 -2
  372. package/test-env/components/icon/assets/errorFilled.js +1 -2
  373. package/test-env/components/icon/assets/paper_clip.js +1 -1
  374. package/test-env/components/icon/assets/streams_wired.js +3 -2
  375. package/test-env/components/icon/assets/warningFilled.js +1 -2
  376. package/test-env/components/icon/icon_map.js +3 -6
  377. package/test-env/components/list_group/list_group.js +13 -1
  378. package/test-env/components/list_group/list_group_item.js +13 -1
  379. package/test-env/components/list_group/list_group_item_extra_action.js +13 -1
  380. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +15 -2
  381. package/test-env/components/overlay_mask/overlay_mask.styles.js +1 -1
  382. package/test-env/components/pagination/pagination_button.js +13 -7
  383. package/test-env/components/popover/popover.js +21 -15
  384. package/test-env/components/provider/component_defaults/component_defaults.js +22 -2
  385. package/test-env/components/table/table_row.styles.js +1 -1
  386. package/test-env/components/tool_tip/tool_tip.js +24 -24
  387. package/test-env/global_styling/index.js +16 -1
  388. package/test-env/global_styling/mixins/_button.js +1 -1
  389. package/test-env/global_styling/utility/selectors.js +15 -0
  390. package/test-env/services/focus_trap/focus_trap_pub_sub.js +80 -0
  391. package/test-env/services/focus_trap/index.js +12 -0
  392. package/test-env/services/hooks/index.js +18 -1
  393. package/test-env/services/hooks/useEuiDisabledElement.js +197 -0
  394. package/test-env/services/index.js +8 -0
  395. package/test-env/services/popover/reposition_on_scroll.js +67 -0
  396. package/test-env/services/theme/high_contrast_overrides.js +5 -1
  397. package/test-env/test/cypress/index.js +18 -0
  398. package/test-env/test/cypress/matchers.js +61 -0
  399. package/test-env/test/cypress/test_reposition_on_scroll.js +70 -0
  400. package/test-env/test/enzyme/enzyme_matchers.js +50 -0
  401. package/test-env/test/enzyme/index.js +24 -0
  402. package/test-env/test/rtl/index.js +24 -2
  403. package/test-env/test/rtl/matchers.js +86 -0
  404. package/test-env/utils/element_can_be_disabled.js +22 -0
  405. package/test-env/utils/index.js +14 -1
package/eui.d.ts CHANGED
@@ -399,6 +399,72 @@ declare module '@elastic/eui/src/services/hooks/useMouseMove' {
399
399
  (e: MouseEvent<T> | TouchEvent<T>, isFirstInteraction?: boolean) => void
400
400
  ];
401
401
 
402
+ }
403
+ declare module '@elastic/eui/src/services/hooks/useEuiDisabledElement' {
404
+ export type EuiDisabledProps = {
405
+ /**
406
+ * Controls the disabled behavior via the native `disabled` attribute.
407
+ */
408
+ isDisabled?: boolean;
409
+ /**
410
+ * NOTE: Beta feature, may be changed or removed in the future
411
+ *
412
+ * Changes the native `disabled` attribute to `aria-disabled` to preserve focusability.
413
+ * This results in a semantically disabled button without the default browser handling of the disabled state.
414
+ *
415
+ * Use e.g. when a disabled button should have a tooltip.
416
+ */
417
+ hasAriaDisabled?: boolean;
418
+ };
419
+ type DisabledElementKeyEventHandlers = {
420
+ onKeyDown?: React.KeyboardEventHandler<HTMLElement>;
421
+ onKeyUp?: React.KeyboardEventHandler<HTMLElement>;
422
+ onKeyPress?: React.KeyboardEventHandler<HTMLElement>;
423
+ };
424
+ export type DisabledElementEventHandlers = DisabledElementKeyEventHandlers & {
425
+ onClick?: React.MouseEventHandler<HTMLElement>;
426
+ onMouseDown?: React.MouseEventHandler<HTMLElement>;
427
+ onMouseUp?: React.MouseEventHandler<HTMLElement>;
428
+ onMouseEnter?: React.MouseEventHandler<HTMLElement>;
429
+ onMouseLeave?: React.MouseEventHandler<HTMLElement>;
430
+ onMouseOut?: React.MouseEventHandler<HTMLElement>;
431
+ onMouseMove?: React.MouseEventHandler<HTMLElement>;
432
+ onMouseOver?: React.MouseEventHandler<HTMLElement>;
433
+ onPointerDown?: React.PointerEventHandler<HTMLElement>;
434
+ onPointerUp?: React.PointerEventHandler<HTMLElement>;
435
+ onPointerEnter?: React.PointerEventHandler<HTMLElement>;
436
+ onPointerLeave?: React.PointerEventHandler<HTMLElement>;
437
+ onPointerMove?: React.PointerEventHandler<HTMLElement>;
438
+ onPointerOver?: React.PointerEventHandler<HTMLElement>;
439
+ onTouchStart?: React.TouchEventHandler<HTMLElement>;
440
+ onTouchEnd?: React.TouchEventHandler<HTMLElement>;
441
+ onTouchMove?: React.TouchEventHandler<HTMLElement>;
442
+ onSubmit?: React.FormEventHandler<HTMLElement>;
443
+ };
444
+ type DisabledElementProps<T extends HTMLElement> = {
445
+ ref: React.Ref<T>;
446
+ disabled?: boolean;
447
+ };
448
+ type AriaDisabledElementProps<T extends HTMLElement> = DisabledElementEventHandlers & DisabledElementProps<T> & {
449
+ ref: React.Ref<T>;
450
+ 'aria-disabled'?: boolean;
451
+ };
452
+ type EuiDisabledElementArgs = EuiDisabledProps & DisabledElementKeyEventHandlers;
453
+ /**
454
+ * NOTE: Beta feature, may be changed or removed in the future
455
+ *
456
+ * Utility to apply either the native or a custom semantic disabled state.
457
+ *
458
+ * It applies `aria-disabled` instead of `disabled` when `hasAriaDisabled=true`
459
+ * to ensure the element is semantically disabled while still focusable.
460
+ *
461
+ * It mimics the native `disabled` behavior by removing any programmatic mouse, pointer, touch
462
+ * or keyboard event handler but it differs to the native `disabled` behavior in that it preserves
463
+ * the focus, blur and tabIndex behavior.
464
+ */
465
+ export const useEuiDisabledElement: <T extends HTMLElement>({ isDisabled, hasAriaDisabled, onKeyDown, onKeyUp, onKeyPress, }: EuiDisabledElementArgs) => DisabledElementProps<T> | AriaDisabledElementProps<T>;
466
+ export {};
467
+
402
468
  }
403
469
  declare module '@elastic/eui/src/services/hooks' {
404
470
  export * from '@elastic/eui/src/services/hooks/useDependentState';
@@ -408,6 +474,7 @@ declare module '@elastic/eui/src/services/hooks' {
408
474
  export * from '@elastic/eui/src/services/hooks/useDeepEqual';
409
475
  export * from '@elastic/eui/src/services/hooks/useMouseMove';
410
476
  export * from '@elastic/eui/src/services/hooks/useUpdateEffect';
477
+ export { type EuiDisabledProps, useEuiDisabledElement, } from '@elastic/eui/src/services/hooks/useEuiDisabledElement';
411
478
 
412
479
  }
413
480
  declare module '@elastic/eui/src/services/theme/style_memoization' {
@@ -455,38 +522,46 @@ declare module '@elastic/eui/src/services/theme/high_contrast_overrides' {
455
522
  borderBasePrimary: string;
456
523
  borderBaseAccent: string;
457
524
  borderBaseAccentSecondary: string;
525
+ borderBaseNeutral: string;
458
526
  borderBaseSuccess: string;
459
527
  borderBaseWarning: string;
528
+ borderBaseRisk: string;
460
529
  borderBaseDanger: string;
461
530
  borderBasePlain: string;
462
531
  borderBaseSubdued: string;
532
+ borderBaseProminent: string;
463
533
  borderBaseDisabled: string;
464
534
  borderBaseFloating: string;
465
- borderBaseFormsControl: string;
466
535
  borderStrongPrimary: string;
467
536
  borderStrongAccent: string;
468
537
  borderStrongAccentSecondary: string;
538
+ borderStrongNeutral: string;
469
539
  borderStrongSuccess: string;
470
540
  borderStrongWarning: string;
541
+ borderStrongRisk: string;
471
542
  borderStrongDanger: string;
472
543
  };
473
544
  DARK: {
474
545
  borderBasePrimary: string;
475
546
  borderBaseAccent: string;
476
547
  borderBaseAccentSecondary: string;
548
+ borderBaseNeutral: string;
477
549
  borderBaseSuccess: string;
478
550
  borderBaseWarning: string;
551
+ borderBaseRisk: string;
479
552
  borderBaseDanger: string;
480
553
  borderBasePlain: string;
481
554
  borderBaseSubdued: string;
555
+ borderBaseProminent: string;
482
556
  borderBaseDisabled: string;
483
557
  borderBaseFloating: string;
484
- borderBaseFormsControl: string;
485
558
  borderStrongPrimary: string;
486
559
  borderStrongAccent: string;
487
560
  borderStrongAccentSecondary: string;
561
+ borderStrongNeutral: string;
488
562
  borderStrongSuccess: string;
489
563
  borderStrongWarning: string;
564
+ borderStrongRisk: string;
490
565
  borderStrongDanger: string;
491
566
  };
492
567
  };
@@ -1439,6 +1514,10 @@ declare module '@elastic/eui/src/global_styling/utility/animations' {
1439
1514
  export const euiAnimSlideX: (size: string) => import("@emotion/serialize").Keyframes;
1440
1515
  export const euiAnimScale: import("@emotion/serialize").Keyframes;
1441
1516
 
1517
+ }
1518
+ declare module '@elastic/eui/src/global_styling/utility/selectors' {
1519
+ export const euiDisabledSelector = ":disabled, [aria-disabled=\"true\"]";
1520
+
1442
1521
  }
1443
1522
  declare module '@elastic/eui/src/global_styling' {
1444
1523
  export * from '@elastic/eui/src/global_styling/reset/global_styles';
@@ -1446,6 +1525,7 @@ declare module '@elastic/eui/src/global_styling' {
1446
1525
  export * from '@elastic/eui/src/global_styling/variables';
1447
1526
  export * from '@elastic/eui/src/global_styling/mixins';
1448
1527
  export * from '@elastic/eui/src/global_styling/utility/animations';
1528
+ export { euiDisabledSelector } from '@elastic/eui/src/global_styling/utility/selectors';
1449
1529
 
1450
1530
  }
1451
1531
  declare module '@elastic/eui/src/components/spacer/spacer.styles' {
@@ -3047,7 +3127,7 @@ declare module '@elastic/eui/src/components/icon/icon' {
3047
3127
  import { WithEuiStylesMemoizerProps } from '@elastic/eui/src/services';
3048
3128
  export { COLORS } from '@elastic/eui/src/components/icon/named_colors';
3049
3129
  import { NamedColor } from '@elastic/eui/src/components/icon/named_colors';
3050
- export const TYPES: ("string" | "number" | "function" | "article" | "code" | "link" | "menu" | "search" | "section" | "filter" | "image" | "stop" | "at" | "key" | "error" | "warning" | "scale" | "color" | "refresh" | "push" | "copy" | "cut" | "pause" | "play" | "offline" | "online" | "storage" | "temperature" | "wordWrap" | "grid" | "empty" | "invert" | "grab" | "help" | "move" | "spaces" | "dot" | "alert" | "document" | "list" | "email" | "annotation" | "container" | "accessibility" | "aggregate" | "analyzeEvent" | "apps" | "arrowStart" | "arrowEnd" | "asterisk" | "flask" | "bell" | "bellSlash" | "beta" | "bolt" | "branch" | "branchUser" | "broom" | "brush" | "bug" | "bullseye" | "calendar" | "check" | "checkCircle" | "cheer" | "clickLeft" | "clickRight" | "clock" | "clockCounter" | "cloudDrizzle" | "cloudStormy" | "cloudSunny" | "cluster" | "comment" | "compute" | "console" | "continuityAbove" | "continuityAboveBelow" | "continuityBelow" | "continuityWithin" | "contrast" | "contrastHigh" | "controls" | "cross" | "crosshairs" | "currency" | "database" | "desktop" | "diff" | "pencil" | "documentation" | "documents" | "dotInCircle" | "doubleArrowLeft" | "doubleArrowRight" | "download" | "editorDistributeHorizontal" | "editorDistributeVertical" | "editorItemAlignBottom" | "editorItemAlignCenter" | "editorItemAlignLeft" | "editorItemAlignMiddle" | "editorItemAlignRight" | "editorItemAlignTop" | "editorPositionBottomLeft" | "editorPositionBottomRight" | "editorPositionTopLeft" | "editorPositionTopRight" | "endpoint" | "eql" | "eraser" | "esqlVis" | "exit" | "expand" | "export" | "eye" | "filterExclude" | "filterIgnore" | "filterInclude" | "flag" | "fold" | "frameNext" | "framePrevious" | "fullScreenExit" | "gear" | "readOnly" | "globe" | "grabOmnidirectional" | "gradient" | "heart" | "heatmap" | "home" | "info" | "index" | "indexTemporary" | "infinity" | "inputOutput" | "inspect" | "ip" | "keyboard" | "kubernetesNode" | "kubernetesPod" | "launch" | "layers" | "lineDashed" | "lineDotted" | "lineSolid" | "lock" | "lockOpen" | "magnet" | "magnifyWithExclamation" | "magnifyWithMinus" | "magnifyWithPlus" | "memory" | "menuDown" | "menuLeft" | "menuRight" | "menuUp" | "merge" | "minimize" | "minus" | "mobile" | "moon" | "namespace" | "nested" | "node" | "package" | "pageSelect" | "pagesSelect" | "palette" | "partial" | "payment" | "percent" | "pin" | "pipeBreaks" | "pipeNoBreaks" | "pivot" | "plugs" | "plus" | "popout" | "question" | "quote" | "reporter" | "save" | "securitySignal" | "securitySignalDetected" | "securitySignalResolved" | "sessionViewer" | "shard" | "share" | "snowflake" | "sortAscending" | "sortDescending" | "sortLeft" | "sortRight" | "sortable" | "sparkles" | "starPlusEmpty" | "starPlusFilled" | "stats" | "sun" | "symlink" | "tableOfContents" | "tag" | "tear" | "thumbDown" | "thumbUp" | "timeline" | "timelineWithArrow" | "timeRefresh" | "timeslider" | "training" | "transitionLeftIn" | "transitionLeftOut" | "transitionTopIn" | "transitionTopOut" | "trash" | "unfold" | "unlink" | "user" | "users" | "vector" | "videoPlayer" | "web" | "wordWrapDisabled" | "wrench" | "tokenAlias" | "tokenAnnotation" | "tokenArray" | "tokenBinary" | "tokenBoolean" | "tokenClass" | "tokenCompletionSuggester" | "tokenConstant" | "tokenDate" | "tokenDimension" | "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" | "tokenSemanticText" | "tokenShape" | "tokenString" | "tokenStruct" | "tokenSymbol" | "tokenTag" | "tokenText" | "tokenTokenCount" | "tokenVariable" | "tokenVectorDense" | "tokenVectorSparse" | "addDataApp" | "advancedSettingsApp" | "agentApp" | "anomalyChart" | "anomalySwimLane" | "apmApp" | "apmTrace" | "appSearchApp" | "arrowDown" | "arrowLeft" | "arrowRight" | "arrowUp" | "auditbeatApp" | "backgroundTask" | "beaker" | "boxesHorizontal" | "boxesVertical" | "canvasApp" | "casesApp" | "changePointDetection" | "checkInCircleFilled" | "classificationJob" | "codeApp" | "consoleApp" | "controlsHorizontal" | "controlsVertical" | "copyClipboard" | "createAdvancedJob" | "createGenericJob" | "createGeoJob" | "createMultiMetricJob" | "createPopulationJob" | "createSingleMetricJob" | "crossClusterReplicationApp" | "crossInCircle" | "dashboardApp" | "dataVisualizer" | "devToolsApp" | "discoverApp" | "discuss" | "documentEdit" | "editorAlignCenter" | "editorAlignLeft" | "editorAlignRight" | "editorBold" | "editorChecklist" | "editorCodeBlock" | "editorComment" | "editorHeading" | "editorItalic" | "editorLink" | "editorOrderedList" | "editorRedo" | "editorStrike" | "editorTable" | "editorUnderline" | "editorUndo" | "editorUnorderedList" | "emsApp" | "errorFilled" | "expandMini" | "exportAction" | "eyeClosed" | "faceHappy" | "faceNeutral" | "faceSad" | "fieldStatistics" | "filebeatApp" | "filterInCircle" | "fleetApp" | "folderCheck" | "folderClosed" | "folderExclamation" | "folderOpen" | "fullScreen" | "gisApp" | "glasses" | "grabHorizontal" | "graphApp" | "grokApp" | "heartbeatApp" | "importAction" | "indexClose" | "indexEdit" | "indexFlush" | "indexManagementApp" | "indexMapping" | "indexOpen" | "indexPatternApp" | "indexRollupApp" | "indexRuntime" | "indexSettings" | "kqlField" | "kqlFunction" | "kqlOperand" | "kqlSelector" | "kqlValue" | "lensApp" | "lettering" | "listAdd" | "logPatternAnalysis" | "logRateAnalysis" | "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" | "logoVulnerabilityManagement" | "logoWebhook" | "logoWindows" | "logoWorkplaceSearch" | "logsApp" | "logstashFilter" | "logstashIf" | "logstashInput" | "logstashOutput" | "logstashQueue" | "machineLearningApp" | "managementApp" | "mapMarker" | "metricbeatApp" | "metricsApp" | "minusInCircle" | "minusInCircleFilled" | "minusInSquare" | "monitoringApp" | "newChat" | "notebookApp" | "outlierDetectionJob" | "packetbeatApp" | "paperClip" | "pinFilled" | "pipelineApp" | "playFilled" | "plusInCircle" | "plusInCircleFilled" | "plusInSquare" | "recentlyViewedApp" | "regressionJob" | "reportingApp" | "returnKey" | "savedObjectsApp" | "searchProfilerApp" | "securityAnalyticsApp" | "securityApp" | "singleMetricViewer" | "sortDown" | "sortUp" | "spacesApp" | "sqlApp" | "starEmpty" | "starEmptySpace" | "starFilled" | "starFilledSpace" | "starMinusEmpty" | "starMinusFilled" | "stopFilled" | "stopSlash" | "streamsClassic" | "streamsWired" | "submodule" | "swatchInput" | "tableDensityCompact" | "tableDensityExpanded" | "tableDensityNormal" | "timelionApp" | "upgradeAssistantApp" | "uptimeApp" | "userAvatar" | "usersRolesApp" | "visArea" | "visAreaStacked" | "visBarHorizontal" | "visBarHorizontalStacked" | "visBarVertical" | "visBarVerticalStacked" | "visGauge" | "visGoal" | "visLine" | "visMapCoordinate" | "visMapRegion" | "visMetric" | "visPie" | "visTable" | "visTagCloud" | "visText" | "visTimelion" | "visVega" | "visVisualBuilder" | "visualizeApp" | "vulnerabilityManagementApp" | "warningFilled" | "watchesApp" | "workflowsApp" | "workplaceSearchApp" | "tokenDenseVector")[];
3130
+ export const TYPES: ("string" | "number" | "function" | "article" | "code" | "link" | "menu" | "search" | "section" | "filter" | "image" | "stop" | "at" | "key" | "error" | "warning" | "scale" | "color" | "refresh" | "push" | "copy" | "cut" | "pause" | "play" | "offline" | "online" | "storage" | "temperature" | "wordWrap" | "grid" | "empty" | "invert" | "grab" | "help" | "move" | "spaces" | "dot" | "alert" | "document" | "list" | "email" | "annotation" | "container" | "accessibility" | "aggregate" | "analyzeEvent" | "apps" | "arrowStart" | "arrowEnd" | "asterisk" | "flask" | "bell" | "bellSlash" | "beta" | "bolt" | "branch" | "branchUser" | "broom" | "brush" | "bug" | "bullseye" | "calendar" | "check" | "checkCircle" | "checkInCircleFilled" | "cheer" | "clickLeft" | "clickRight" | "clock" | "clockCounter" | "cloudDrizzle" | "cloudStormy" | "cloudSunny" | "cluster" | "comment" | "compute" | "console" | "continuityAbove" | "continuityAboveBelow" | "continuityBelow" | "continuityWithin" | "contrast" | "contrastHigh" | "controls" | "cross" | "crosshairs" | "currency" | "database" | "desktop" | "diff" | "pencil" | "documentation" | "documents" | "dotInCircle" | "doubleArrowLeft" | "doubleArrowRight" | "download" | "editorDistributeHorizontal" | "editorDistributeVertical" | "editorItemAlignBottom" | "editorItemAlignCenter" | "editorItemAlignLeft" | "editorItemAlignMiddle" | "editorItemAlignRight" | "editorItemAlignTop" | "editorPositionBottomLeft" | "editorPositionBottomRight" | "editorPositionTopLeft" | "editorPositionTopRight" | "endpoint" | "eql" | "eraser" | "errorFilled" | "esqlVis" | "exit" | "expand" | "export" | "eye" | "filterExclude" | "filterIgnore" | "filterInclude" | "flag" | "fold" | "frameNext" | "framePrevious" | "fullScreenExit" | "gear" | "readOnly" | "globe" | "grabOmnidirectional" | "gradient" | "heart" | "heatmap" | "home" | "info" | "index" | "indexTemporary" | "infinity" | "inputOutput" | "inspect" | "ip" | "keyboard" | "kubernetesNode" | "kubernetesPod" | "launch" | "layers" | "lineDashed" | "lineDotted" | "lineSolid" | "lock" | "lockOpen" | "magnet" | "magnifyWithExclamation" | "magnifyWithMinus" | "magnifyWithPlus" | "memory" | "menuDown" | "menuLeft" | "menuRight" | "menuUp" | "merge" | "minimize" | "minus" | "mobile" | "moon" | "namespace" | "nested" | "node" | "package" | "pageSelect" | "pagesSelect" | "palette" | "partial" | "payment" | "percent" | "pin" | "pipeBreaks" | "pipeNoBreaks" | "pivot" | "plugs" | "plus" | "popout" | "question" | "quote" | "reporter" | "save" | "securitySignal" | "securitySignalDetected" | "securitySignalResolved" | "sessionViewer" | "shard" | "share" | "snowflake" | "sortAscending" | "sortDescending" | "sortLeft" | "sortRight" | "sortable" | "sparkles" | "starPlusEmpty" | "starPlusFilled" | "stats" | "sun" | "symlink" | "tableOfContents" | "tag" | "tear" | "thumbDown" | "thumbUp" | "timeline" | "timelineWithArrow" | "timeRefresh" | "timeslider" | "training" | "transitionLeftIn" | "transitionLeftOut" | "transitionTopIn" | "transitionTopOut" | "trash" | "unfold" | "unlink" | "user" | "users" | "vector" | "videoPlayer" | "warningFilled" | "web" | "wordWrapDisabled" | "wrench" | "tokenAlias" | "tokenAnnotation" | "tokenArray" | "tokenBinary" | "tokenBoolean" | "tokenClass" | "tokenCompletionSuggester" | "tokenConstant" | "tokenDate" | "tokenDimension" | "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" | "tokenSemanticText" | "tokenShape" | "tokenString" | "tokenStruct" | "tokenSymbol" | "tokenTag" | "tokenText" | "tokenTokenCount" | "tokenVariable" | "tokenVectorDense" | "tokenVectorSparse" | "addDataApp" | "advancedSettingsApp" | "agentApp" | "anomalyChart" | "anomalySwimLane" | "apmApp" | "apmTrace" | "appSearchApp" | "arrowDown" | "arrowLeft" | "arrowRight" | "arrowUp" | "auditbeatApp" | "backgroundTask" | "beaker" | "boxesHorizontal" | "boxesVertical" | "canvasApp" | "casesApp" | "changePointDetection" | "classificationJob" | "codeApp" | "consoleApp" | "controlsHorizontal" | "controlsVertical" | "copyClipboard" | "createAdvancedJob" | "createGenericJob" | "createGeoJob" | "createMultiMetricJob" | "createPopulationJob" | "createSingleMetricJob" | "crossClusterReplicationApp" | "crossInCircle" | "dashboardApp" | "dataVisualizer" | "devToolsApp" | "discoverApp" | "discuss" | "documentEdit" | "editorAlignCenter" | "editorAlignLeft" | "editorAlignRight" | "editorBold" | "editorChecklist" | "editorCodeBlock" | "editorComment" | "editorHeading" | "editorItalic" | "editorLink" | "editorOrderedList" | "editorRedo" | "editorStrike" | "editorTable" | "editorUnderline" | "editorUndo" | "editorUnorderedList" | "emsApp" | "expandMini" | "exportAction" | "eyeClosed" | "faceHappy" | "faceNeutral" | "faceSad" | "fieldStatistics" | "filebeatApp" | "filterInCircle" | "fleetApp" | "folderCheck" | "folderClosed" | "folderExclamation" | "folderOpen" | "fullScreen" | "gisApp" | "glasses" | "grabHorizontal" | "graphApp" | "grokApp" | "heartbeatApp" | "importAction" | "indexClose" | "indexEdit" | "indexFlush" | "indexManagementApp" | "indexMapping" | "indexOpen" | "indexPatternApp" | "indexRollupApp" | "indexRuntime" | "indexSettings" | "kqlField" | "kqlFunction" | "kqlOperand" | "kqlSelector" | "kqlValue" | "lensApp" | "lettering" | "listAdd" | "logPatternAnalysis" | "logRateAnalysis" | "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" | "logoVulnerabilityManagement" | "logoWebhook" | "logoWindows" | "logoWorkplaceSearch" | "logsApp" | "logstashFilter" | "logstashIf" | "logstashInput" | "logstashOutput" | "logstashQueue" | "machineLearningApp" | "managementApp" | "mapMarker" | "metricbeatApp" | "metricsApp" | "minusInCircle" | "minusInCircleFilled" | "minusInSquare" | "monitoringApp" | "newChat" | "notebookApp" | "outlierDetectionJob" | "packetbeatApp" | "paperClip" | "pinFilled" | "pipelineApp" | "playFilled" | "plusInCircle" | "plusInCircleFilled" | "plusInSquare" | "recentlyViewedApp" | "regressionJob" | "reportingApp" | "returnKey" | "savedObjectsApp" | "searchProfilerApp" | "securityAnalyticsApp" | "securityApp" | "singleMetricViewer" | "sortDown" | "sortUp" | "spacesApp" | "sqlApp" | "starEmpty" | "starEmptySpace" | "starFilled" | "starFilledSpace" | "starMinusEmpty" | "starMinusFilled" | "stopFilled" | "stopSlash" | "streamsClassic" | "streamsWired" | "submodule" | "swatchInput" | "tableDensityCompact" | "tableDensityExpanded" | "tableDensityNormal" | "timelionApp" | "upgradeAssistantApp" | "uptimeApp" | "userAvatar" | "usersRolesApp" | "visArea" | "visAreaStacked" | "visBarHorizontal" | "visBarHorizontalStacked" | "visBarVertical" | "visBarVerticalStacked" | "visGauge" | "visGoal" | "visLine" | "visMapCoordinate" | "visMapRegion" | "visMetric" | "visPie" | "visTable" | "visTagCloud" | "visText" | "visTimelion" | "visVega" | "visVisualBuilder" | "visualizeApp" | "vulnerabilityManagementApp" | "watchesApp" | "workflowsApp" | "workplaceSearchApp" | "tokenDenseVector")[];
3051
3131
  export type EuiIconType = keyof typeof typeToPathMap;
3052
3132
  export type IconType = EuiIconType | string | ComponentType;
3053
3133
  export type IconColor = string | NamedColor;
@@ -3401,6 +3481,48 @@ declare module '@elastic/eui/src/components/tool_tip/tool_tip_popover' {
3401
3481
  export const EuiToolTipPopover: FunctionComponent<Props>;
3402
3482
  export {};
3403
3483
 
3484
+ }
3485
+ declare module '@elastic/eui/src/services/popover/reposition_on_scroll' {
3486
+ type SupportedComponentDefaults = {
3487
+ repositionOnScroll?: boolean;
3488
+ };
3489
+ type RepositionOnScrollArgs<T extends SupportedComponentDefaults> = {
3490
+ /**
3491
+ * The component's `repositionOnScroll` prop.
3492
+ */
3493
+ repositionOnScroll?: boolean;
3494
+ /**
3495
+ * The function to be called on scroll to reposition the component.
3496
+ */
3497
+ repositionFn: () => void;
3498
+ /**
3499
+ * The component's defaults context.
3500
+ */
3501
+ componentDefaults?: T;
3502
+ };
3503
+ /**
3504
+ * Returns the value of the `repositionOnScroll` from the props, component's defaults context
3505
+ * or default to `false`.
3506
+ *
3507
+ * @param args The arguments for `getRepositionOnScroll`. See {@link RepositionOnScrollArgs}.
3508
+ * @returns The value of the `repositionOnScroll`.
3509
+ */
3510
+ export const getRepositionOnScroll: <T extends SupportedComponentDefaults>(args: RepositionOnScrollArgs<T>) => boolean;
3511
+ export type CreateRepositionOnScrollReturnType = {
3512
+ subscribe: () => void;
3513
+ update: () => void;
3514
+ cleanup: () => void;
3515
+ };
3516
+ /**
3517
+ * Creates a manager for handling `repositionOnScroll` logic in overlay components.
3518
+ * This utility abstracts the adding, updating, and removing of window scroll event listeners.
3519
+ *
3520
+ * @param getArgs A function that returns the arguments for `getRepositionOnScroll`. See {@link RepositionOnScrollArgs}.
3521
+ * @returns An object with `subscribe`, `update`, and `cleanup` methods to manage the scroll listener.
3522
+ */
3523
+ export const createRepositionOnScroll: <T extends SupportedComponentDefaults>(getArgs: () => RepositionOnScrollArgs<T>) => CreateRepositionOnScrollReturnType;
3524
+ export {};
3525
+
3404
3526
  }
3405
3527
  declare module '@elastic/eui/src/components/tool_tip/tool_tip_anchor' {
3406
3528
  import React, { HTMLAttributes } from 'react';
@@ -3436,9 +3558,10 @@ declare module '@elastic/eui/src/components/tool_tip/tool_tip_manager' {
3436
3558
 
3437
3559
  }
3438
3560
  declare module '@elastic/eui/src/components/tool_tip/tool_tip' {
3439
- import React, { Component, ReactElement, ReactNode, MouseEvent as ReactMouseEvent, HTMLAttributes } from 'react';
3561
+ import React, { Component, ContextType, ReactElement, ReactNode, MouseEvent as ReactMouseEvent, HTMLAttributes } from 'react';
3440
3562
  import { CommonProps } from '@elastic/eui/src/components/common';
3441
3563
  import { type EuiPopoverPosition } from '@elastic/eui/src/services/popover';
3564
+ import { EuiComponentDefaultsContext } from '@elastic/eui/src/components/provider/component_defaults';
3442
3565
  import { ToolTipPositions } from '@elastic/eui/src/components/tool_tip/tool_tip_popover';
3443
3566
  export const POSITIONS: readonly ["top", "right", "bottom", "left"]; const DISPLAYS: readonly ["inlineBlock", "block"];
3444
3567
  export type ToolTipDelay = 'regular' | 'long';
@@ -3526,11 +3649,14 @@ declare module '@elastic/eui/src/components/tool_tip/tool_tip' {
3526
3649
  id: string;
3527
3650
  }
3528
3651
  export class EuiToolTip extends Component<EuiToolTipProps, State> {
3652
+ static contextType: React.Context<import ("@elastic/eui/src/components/provider/component_defaults").EuiComponentDefaults>;
3653
+ context: ContextType<typeof EuiComponentDefaultsContext>;
3654
+ private repositionOnScroll;
3529
3655
  _isMounted: boolean;
3530
3656
  anchor: null | HTMLElement;
3531
3657
  popover: null | HTMLElement;
3532
3658
  private timeoutId?;
3533
- state: State;
3659
+ constructor(props: EuiToolTipProps);
3534
3660
  static defaultProps: Partial<EuiToolTipProps>;
3535
3661
  clearAnimationTimeout: () => void;
3536
3662
  componentDidMount(): void;
@@ -3596,6 +3722,10 @@ declare module '@elastic/eui/src/components/tool_tip' {
3596
3722
  export type { EuiIconTipProps } from '@elastic/eui/src/components/tool_tip/icon_tip';
3597
3723
  export { EuiIconTip } from '@elastic/eui/src/components/tool_tip/icon_tip';
3598
3724
 
3725
+ }
3726
+ declare module '@elastic/eui/src/services/security/href_validator' {
3727
+ export function validateHref(href: string): boolean;
3728
+
3599
3729
  }
3600
3730
  declare module '@elastic/eui/src/components/button/button_display/_button_display.styles' {
3601
3731
  import { UseEuiTheme } from '@elastic/eui/src/services';
@@ -3786,13 +3916,10 @@ declare module '@elastic/eui/src/components/button/button_display/_button_displa
3786
3916
  }
3787
3917
  export const EuiButtonDisplayContent: FunctionComponent<EuiButtonDisplayContentType & EuiButtonDisplayContentProps>;
3788
3918
 
3789
- }
3790
- declare module '@elastic/eui/src/services/security/href_validator' {
3791
- export function validateHref(href: string): boolean;
3792
-
3793
3919
  }
3794
3920
  declare module '@elastic/eui/src/components/button/button_display/_button_display' {
3795
3921
  import React, { CSSProperties, ReactNode, Ref, ButtonHTMLAttributes } from 'react';
3922
+ import { EuiDisabledProps } from '@elastic/eui/src/services/hooks/useEuiDisabledElement';
3796
3923
  import { CommonProps, ExclusiveUnion, PropsForAnchor, PropsForButton } from '@elastic/eui/src/components/common';
3797
3924
  import { EuiButtonDisplayContentProps, EuiButtonDisplayContentType } from '@elastic/eui/src/components/button/button_display/_button_display_content'; const SIZES: readonly ["xs", "s", "m"];
3798
3925
  export type EuiButtonDisplaySizes = (typeof SIZES)[number];
@@ -3800,7 +3927,7 @@ declare module '@elastic/eui/src/components/button/button_display/_button_displa
3800
3927
  * Extends EuiButtonDisplayContentProps which provides
3801
3928
  * `iconType`, `iconSide`, and `textProps`
3802
3929
  */
3803
- export interface EuiButtonDisplayCommonProps extends EuiButtonDisplayContentProps, CommonProps {
3930
+ export interface EuiButtonDisplayCommonProps extends Omit<EuiButtonDisplayContentProps, 'disabled'>, EuiDisabledProps, CommonProps {
3804
3931
  element?: 'a' | 'button' | 'span';
3805
3932
  children?: ReactNode;
3806
3933
  size?: EuiButtonDisplaySizes;
@@ -3860,13 +3987,14 @@ declare module '@elastic/eui/src/components/button/button_display/_button_displa
3860
3987
  declare module '@elastic/eui/src/components/button/button' {
3861
3988
  import { FunctionComponent, Ref, ReactNode } from 'react';
3862
3989
  import { CommonProps, ExclusiveUnion, PropsForAnchor, PropsForButton } from '@elastic/eui/src/components/common';
3990
+ import { EuiDisabledProps } from '@elastic/eui/src/services/hooks/useEuiDisabledElement';
3863
3991
  import { _EuiExtendedButtonColor } from '@elastic/eui/src/global_styling/mixins/_button';
3864
3992
  import { EuiButtonDisplayCommonProps } from '@elastic/eui/src/components/button/button_display/_button_display';
3865
3993
  export const COLORS: readonly ["text", "accent", "accentSecondary", "primary", "success", "warning", "danger"];
3866
3994
  export type EuiButtonColor = _EuiExtendedButtonColor;
3867
3995
  export const SIZES: readonly ["s", "m"];
3868
3996
  export type EuiButtonSize = (typeof SIZES)[number];
3869
- interface BaseProps {
3997
+ interface BaseProps extends EuiDisabledProps {
3870
3998
  children?: ReactNode;
3871
3999
  /**
3872
4000
  * Make button a solid color for prominence
@@ -3887,10 +4015,6 @@ declare module '@elastic/eui/src/components/button/button' {
3887
4015
  * Use size `s` in confined spaces
3888
4016
  */
3889
4017
  size?: EuiButtonSize;
3890
- /**
3891
- * `disabled` is also allowed
3892
- */
3893
- isDisabled?: boolean;
3894
4018
  }
3895
4019
  export interface EuiButtonProps extends BaseProps, Omit<EuiButtonDisplayCommonProps, 'size'>, CommonProps {
3896
4020
  }
@@ -3927,8 +4051,9 @@ declare module '@elastic/eui/src/components/button/button_empty/button_empty.sty
3927
4051
  declare module '@elastic/eui/src/components/button/button_empty/button_empty' {
3928
4052
  import { FunctionComponent, Ref, ButtonHTMLAttributes } from 'react';
3929
4053
  import { CommonProps, ExclusiveUnion, PropsForAnchor, PropsForButton } from '@elastic/eui/src/components/common';
3930
- import { EuiButtonDisplayContentProps, EuiButtonDisplayContentType } from '@elastic/eui/src/components/button/button_display/_button_display_content';
4054
+ import { EuiDisabledProps } from '@elastic/eui/src/services/hooks/useEuiDisabledElement';
3931
4055
  import { _EuiExtendedButtonColor } from '@elastic/eui/src/global_styling/mixins/_button';
4056
+ import { EuiButtonDisplayContentProps, EuiButtonDisplayContentType } from '@elastic/eui/src/components/button/button_display/_button_display_content';
3932
4057
  export const SIZES: readonly ["xs", "s", "m"];
3933
4058
  export type EuiButtonEmptySizes = (typeof SIZES)[number];
3934
4059
  export const FLUSH_TYPES: readonly ["left", "right", "both"];
@@ -3937,7 +4062,7 @@ declare module '@elastic/eui/src/components/button/button_empty/button_empty' {
3937
4062
  * Extends EuiButtonContentProps which provides
3938
4063
  * `iconType`, `iconSide`, and `textProps`
3939
4064
  */
3940
- export interface CommonEuiButtonEmptyProps extends EuiButtonDisplayContentProps, CommonProps {
4065
+ export interface CommonEuiButtonEmptyProps extends EuiButtonDisplayContentProps, EuiDisabledProps, CommonProps {
3941
4066
  /**
3942
4067
  * Any of the named color palette options.
3943
4068
  *
@@ -3954,10 +4079,6 @@ declare module '@elastic/eui/src/components/button/button_empty/button_empty' {
3954
4079
  * Ensure the text of the button sits flush to the left, right, or both sides of its container
3955
4080
  */
3956
4081
  flush?: EuiButtonEmptyFlush;
3957
- /**
3958
- * `disabled` is also allowed
3959
- */
3960
- isDisabled?: boolean;
3961
4082
  /**
3962
4083
  * Force disables the button and changes the icon to a loading spinner
3963
4084
  */
@@ -4003,6 +4124,7 @@ declare module '@elastic/eui/src/components/button/button_icon/button_icon.style
4003
4124
  }
4004
4125
  declare module '@elastic/eui/src/components/button/button_icon/button_icon' {
4005
4126
  import { AnchorHTMLAttributes, ButtonHTMLAttributes, FunctionComponent, Ref } from 'react';
4127
+ import { EuiDisabledProps } from '@elastic/eui/src/services/hooks/useEuiDisabledElement';
4006
4128
  import { CommonProps, ExclusiveUnion, PropsForAnchor, PropsForButton } from '@elastic/eui/src/components/common';
4007
4129
  import { IconType, IconSize } from '@elastic/eui/src/components/icon';
4008
4130
  import { _EuiExtendedButtonColor } from '@elastic/eui/src/global_styling/mixins/_button';
@@ -4010,7 +4132,7 @@ declare module '@elastic/eui/src/components/button/button_icon/button_icon' {
4010
4132
  export type EuiButtonIconSizes = (typeof SIZES)[number];
4011
4133
  export const DISPLAYS: readonly ["base", "empty", "fill"];
4012
4134
  type EuiButtonIconDisplay = (typeof DISPLAYS)[number];
4013
- export interface EuiButtonIconProps extends CommonProps {
4135
+ export interface EuiButtonIconProps extends CommonProps, EuiDisabledProps {
4014
4136
  iconType: IconType;
4015
4137
  /**
4016
4138
  * Any of the named color palette options.
@@ -4025,7 +4147,6 @@ declare module '@elastic/eui/src/components/button/button_icon/button_icon' {
4025
4147
  color?: _EuiExtendedButtonColor;
4026
4148
  'aria-label'?: string;
4027
4149
  'aria-labelledby'?: string;
4028
- isDisabled?: boolean;
4029
4150
  /**
4030
4151
  * Overall size of button.
4031
4152
  * Matches the sizes of other EuiButtons
@@ -4072,6 +4193,71 @@ declare module '@elastic/eui/src/components/button/button_icon' {
4072
4193
  export type { EuiButtonIconProps, EuiButtonIconPropsForButton, EuiButtonIconPropsForAnchor, } from '@elastic/eui/src/components/button/button_icon/button_icon';
4073
4194
  export { EuiButtonIcon } from '@elastic/eui/src/components/button/button_icon/button_icon';
4074
4195
 
4196
+ }
4197
+ declare module '@elastic/eui/src/components/button/button_group/button_group_button.styles' {
4198
+ import { type SerializedStyles } from '@emotion/react';
4199
+ import { UseEuiTheme } from '@elastic/eui/src/services';
4200
+ export const euiButtonGroupButtonStyles: (euiThemeContext: UseEuiTheme) => {
4201
+ euiButtonGroupButton: SerializedStyles;
4202
+ iconOnly: {
4203
+ iconOnly: SerializedStyles;
4204
+ s: string;
4205
+ m: string;
4206
+ compressed: string;
4207
+ };
4208
+ uncompressed: {
4209
+ uncompressed: SerializedStyles;
4210
+ readonly borders: string;
4211
+ readonly s: SerializedStyles;
4212
+ readonly m: SerializedStyles;
4213
+ hasToolTip: SerializedStyles;
4214
+ };
4215
+ compressed: SerializedStyles;
4216
+ disabledAndSelected: SerializedStyles;
4217
+ hasBorder: string;
4218
+ tooltipWrapper: SerializedStyles;
4219
+ content: {
4220
+ euiButtonGroupButton__content: SerializedStyles;
4221
+ compressed: SerializedStyles;
4222
+ };
4223
+ text: {
4224
+ euiButtonGroupButton__text: SerializedStyles;
4225
+ euiButtonGroupButton__iconOnly: SerializedStyles;
4226
+ };
4227
+ };
4228
+ export const _compressedButtonFocusColors: (euiThemeContext: UseEuiTheme) => Record<"text" | "primary" | "accent" | "accentSecondary" | "success" | "warning" | "danger" | "disabled", SerializedStyles>;
4229
+
4230
+ }
4231
+ declare module '@elastic/eui/src/components/button/button_group/button_group_button' {
4232
+ import { FunctionComponent, MouseEventHandler } from 'react';
4233
+ import { EuiButtonDisplayCommonProps } from '@elastic/eui/src/components/button/button_display/_button_display';
4234
+ import { EuiButtonGroupOptionProps, EuiButtonGroupProps } from '@elastic/eui/src/components/button/button_group/button_group';
4235
+ type Props = EuiButtonGroupOptionProps & {
4236
+ /**
4237
+ * Styles the selected button to look selected (usually with `fill`)
4238
+ */
4239
+ isSelected?: boolean;
4240
+ /**
4241
+ * Inherit from EuiButtonGroup
4242
+ */
4243
+ color: EuiButtonGroupProps['color'];
4244
+ /**
4245
+ * Inherit from EuiButtonGroup
4246
+ */
4247
+ size: NonNullable<EuiButtonGroupProps['buttonSize']>;
4248
+ /**
4249
+ * Inherit from EuiButtonGroup
4250
+ */
4251
+ isIconOnly: EuiButtonGroupProps['isIconOnly'];
4252
+ /**
4253
+ * Inherit from EuiButtonGroup
4254
+ */
4255
+ onClick: MouseEventHandler<HTMLButtonElement>;
4256
+ contentProps?: EuiButtonDisplayCommonProps['contentProps'];
4257
+ };
4258
+ export const EuiButtonGroupButton: FunctionComponent<Props>;
4259
+ export {};
4260
+
4075
4261
  }
4076
4262
  declare module '@elastic/eui/src/components/form/form.styles' {
4077
4263
  import { UseEuiTheme } from '@elastic/eui/src/services';
@@ -4191,66 +4377,6 @@ declare module '@elastic/eui/src/components/form/form.styles' {
4191
4377
  };
4192
4378
  };
4193
4379
 
4194
- }
4195
- declare module '@elastic/eui/src/components/button/button_group/button_group_button.styles' {
4196
- import { type SerializedStyles } from '@emotion/react';
4197
- import { UseEuiTheme } from '@elastic/eui/src/services';
4198
- export const euiButtonGroupButtonStyles: (euiThemeContext: UseEuiTheme) => {
4199
- euiButtonGroupButton: SerializedStyles;
4200
- iconOnly: SerializedStyles;
4201
- uncompressed: {
4202
- uncompressed: SerializedStyles;
4203
- readonly borders: string;
4204
- readonly s: SerializedStyles;
4205
- readonly m: SerializedStyles;
4206
- hasToolTip: SerializedStyles;
4207
- };
4208
- compressed: SerializedStyles;
4209
- disabledAndSelected: SerializedStyles;
4210
- hasBorder: string;
4211
- tooltipWrapper: SerializedStyles;
4212
- content: {
4213
- euiButtonGroupButton__content: SerializedStyles;
4214
- compressed: SerializedStyles;
4215
- };
4216
- text: {
4217
- euiButtonGroupButton__text: SerializedStyles;
4218
- euiButtonGroupButton__iconOnly: SerializedStyles;
4219
- };
4220
- };
4221
- export const _compressedButtonFocusColors: (euiThemeContext: UseEuiTheme) => Record<"text" | "primary" | "accent" | "accentSecondary" | "success" | "warning" | "danger" | "disabled", SerializedStyles>;
4222
-
4223
- }
4224
- declare module '@elastic/eui/src/components/button/button_group/button_group_button' {
4225
- import { FunctionComponent, MouseEventHandler } from 'react';
4226
- import { EuiButtonDisplayCommonProps } from '@elastic/eui/src/components/button/button_display/_button_display';
4227
- import { EuiButtonGroupOptionProps, EuiButtonGroupProps } from '@elastic/eui/src/components/button/button_group/button_group';
4228
- type Props = EuiButtonGroupOptionProps & {
4229
- /**
4230
- * Styles the selected button to look selected (usually with `fill`)
4231
- */
4232
- isSelected?: boolean;
4233
- /**
4234
- * Inherit from EuiButtonGroup
4235
- */
4236
- color: EuiButtonGroupProps['color'];
4237
- /**
4238
- * Inherit from EuiButtonGroup
4239
- */
4240
- size: NonNullable<EuiButtonGroupProps['buttonSize']>;
4241
- /**
4242
- * Inherit from EuiButtonGroup
4243
- */
4244
- isIconOnly: EuiButtonGroupProps['isIconOnly'];
4245
- /**
4246
- * Inherit from EuiButtonGroup
4247
- */
4248
- onClick: MouseEventHandler<HTMLButtonElement>;
4249
- contentProps?: EuiButtonDisplayCommonProps['contentProps'];
4250
- };
4251
- export const EuiButtonGroupButton: FunctionComponent<Props>;
4252
- export {};
4253
-
4254
4380
  }
4255
4381
  declare module '@elastic/eui/src/components/button/button_group/button_group.styles' {
4256
4382
  import { UseEuiTheme } from '@elastic/eui/src/services';
@@ -4269,11 +4395,12 @@ declare module '@elastic/eui/src/components/button/button_group/button_group.sty
4269
4395
  }
4270
4396
  declare module '@elastic/eui/src/components/button/button_group/button_group' {
4271
4397
  import { FunctionComponent, HTMLAttributes, ButtonHTMLAttributes, ReactNode } from 'react';
4398
+ import { type EuiDisabledProps } from '@elastic/eui/src/services/hooks/useEuiDisabledElement';
4272
4399
  import { CommonProps } from '@elastic/eui/src/components/common';
4273
4400
  import { _EuiButtonColor } from '@elastic/eui/src/global_styling/mixins';
4274
4401
  import { EuiToolTipProps } from '@elastic/eui/src/components/tool_tip';
4275
4402
  import { EuiButtonDisplayContentProps } from '@elastic/eui/src/components/button/button_display/_button_display_content';
4276
- export interface EuiButtonGroupOptionProps extends EuiButtonDisplayContentProps, CommonProps {
4403
+ export interface EuiButtonGroupOptionProps extends EuiButtonDisplayContentProps, CommonProps, EuiDisabledProps {
4277
4404
  /**
4278
4405
  * Each option must have a unique `id` for maintaining selection
4279
4406
  */
@@ -4282,7 +4409,6 @@ declare module '@elastic/eui/src/components/button/button_group/button_group' {
4282
4409
  * Each option must have a `label` even for icons which will be applied as the `aria-label`
4283
4410
  */
4284
4411
  label: ReactNode;
4285
- isDisabled?: boolean;
4286
4412
  /**
4287
4413
  * The value of the radio input.
4288
4414
  */
@@ -4306,13 +4432,12 @@ declare module '@elastic/eui/src/components/button/button_group/button_group' {
4306
4432
  */
4307
4433
  toolTipProps?: Partial<Omit<EuiToolTipProps, 'content' | 'children'>>;
4308
4434
  }
4309
- export type EuiButtonGroupProps = CommonProps & {
4435
+ export type EuiButtonGroupProps = CommonProps & EuiDisabledProps & {
4310
4436
  /**
4311
4437
  * Typical sizing is `s`. Medium `m` size should be reserved for major features.
4312
4438
  * `compressed` is meant to be used alongside and within compressed forms.
4313
4439
  */
4314
4440
  buttonSize?: 's' | 'm' | 'compressed';
4315
- isDisabled?: boolean;
4316
4441
  /**
4317
4442
  * Expands the whole group to the full width of the container.
4318
4443
  * Each button gets equal widths no matter the content
@@ -6957,6 +7082,8 @@ declare module '@elastic/eui/src/components/provider/component_defaults/componen
6957
7082
  import type { EuiFocusTrapProps } from '@elastic/eui/src/components/focus_trap';
6958
7083
  import type { EuiTablePaginationProps, EuiTableProps } from '@elastic/eui/src/components/table';
6959
7084
  import type { EuiFlyoutProps } from '@elastic/eui/src/components/flyout';
7085
+ import type { EuiPopoverProps } from '@elastic/eui/src/components/popover';
7086
+ import type { EuiToolTipProps } from '@elastic/eui/src/components/tool_tip';
6960
7087
  export type EuiComponentDefaults = {
6961
7088
  /**
6962
7089
  * Provide a global configuration for EuiPortal's default insertion position.
@@ -6984,6 +7111,16 @@ declare module '@elastic/eui/src/components/provider/component_defaults/componen
6984
7111
  * Defaults will be inherited by all `EuiFlyout`s.
6985
7112
  */
6986
7113
  EuiFlyout?: Pick<EuiFlyoutProps, 'includeSelectorInFocusTrap' | 'includeFixedHeadersInFocusTrap'>;
7114
+ /**
7115
+ * Provide a global configuration for `EuiPopover`s.
7116
+ * Defaults will be inherited by every `EuiPopover`.
7117
+ */
7118
+ EuiPopover?: Pick<EuiPopoverProps, 'repositionOnScroll'>;
7119
+ /**
7120
+ * Provide a global configuration for `EuiToolTip`s.
7121
+ * Defaults will be inherited by every `EuiToolTip`.
7122
+ */
7123
+ EuiToolTip?: Pick<EuiToolTipProps, 'repositionOnScroll'>;
6987
7124
  };
6988
7125
  export const EuiComponentDefaultsContext: React.Context<EuiComponentDefaults>;
6989
7126
  export type EuiComponentDefaultsProviderProps = PropsWithChildren & {
@@ -7219,13 +7356,14 @@ declare module '@elastic/eui/src/components/popover/popover_panel' {
7219
7356
 
7220
7357
  }
7221
7358
  declare module '@elastic/eui/src/components/popover/popover' {
7222
- import React, { Component, KeyboardEvent, CSSProperties, HTMLAttributes, ReactNode, Ref, RefCallback, PropsWithChildren } from 'react';
7359
+ import React, { Component, KeyboardEvent, CSSProperties, HTMLAttributes, ReactNode, Ref, RefCallback, PropsWithChildren, ContextType } from 'react';
7223
7360
  import { CommonProps, NoArgCallback } from '@elastic/eui/src/components/common';
7224
7361
  import { FocusTarget, EuiFocusTrapProps } from '@elastic/eui/src/components/focus_trap';
7225
7362
  import { EuiPopoverPosition } from '@elastic/eui/src/services/popover';
7226
7363
  import { EuiPopoverArrowPositions } from '@elastic/eui/src/components/popover/popover_arrow';
7227
7364
  import { EuiPopoverPanelProps } from '@elastic/eui/src/components/popover/popover_panel/_popover_panel';
7228
7365
  import { EuiPaddingSize } from '@elastic/eui/src/global_styling';
7366
+ import { EuiComponentDefaultsContext } from '@elastic/eui/src/components/provider/component_defaults';
7229
7367
  export const popoverAnchorPosition: readonly ["upCenter", "upLeft", "upRight", "downCenter", "downLeft", "downRight", "leftCenter", "leftUp", "leftDown", "rightCenter", "rightUp", "rightDown"];
7230
7368
  export type PopoverAnchorPosition = (typeof popoverAnchorPosition)[number];
7231
7369
  export interface EuiPopoverProps extends PropsWithChildren, CommonProps {
@@ -7388,9 +7526,12 @@ declare module '@elastic/eui/src/components/popover/popover' {
7388
7526
  panelPaddingSize: EuiPaddingSize;
7389
7527
  };
7390
7528
  export class EuiPopover extends Component<Props, State> {
7529
+ static contextType: React.Context<import ("@elastic/eui/src/components/provider/component_defaults").EuiComponentDefaults>;
7530
+ context: ContextType<typeof EuiComponentDefaultsContext>;
7531
+ private repositionOnScroll;
7391
7532
  static defaultProps: Partial<PropsWithDefaults>;
7392
7533
  static getDerivedStateFromProps(nextProps: Props, prevState: State): Partial<State> | null;
7393
- private respositionTimeout;
7534
+ private repositionTimeout;
7394
7535
  private strandedFocusTimeout;
7395
7536
  private closingTransitionTimeout;
7396
7537
  private closingTransitionAnimationFrame;
@@ -8507,6 +8648,36 @@ declare module '@elastic/eui/src/services/findElement' {
8507
8648
  export type ElementTarget = HTMLElement | string | (() => HTMLElement);
8508
8649
  export const findElementBySelectorOrRef: (elementTarget?: ElementTarget) => HTMLElement | null;
8509
8650
 
8651
+ }
8652
+ declare module '@elastic/eui/src/services/focus_trap/focus_trap_pub_sub' {
8653
+ type Listener = () => void;
8654
+ /**
8655
+ * A lightweight, global PubSub service for loose coupling of components
8656
+ * that need to interact with the same focus trap.
8657
+ *
8658
+ * This allows a component (like `EuiPopover`) to be rendered in a React Portal
8659
+ * and still be included in the focus trap of another component (like `EuiFlyout`)
8660
+ * without either component needing a direct reference to the other.
8661
+ *
8662
+ * How it works:
8663
+ *
8664
+ * 1. A container component (e.g., `EuiFlyout`) `subscribe`s to this service on mount.
8665
+ * 2. An ephemeral component (e.g., `EuiPopover`) calls `publish` when its state
8666
+ * changes in a way that affects the DOM (e.g., opening, closing, unmounting).
8667
+ * 3. The container component's subscribed callback fires, causing it to re-query
8668
+ * the DOM for any elements it should include in its focus trap.
8669
+ */
8670
+ export const focusTrapPubSub: {
8671
+ subscribe: (listener: Listener) => () => void;
8672
+ unsubscribe: (listener: Listener) => void;
8673
+ publish: () => void;
8674
+ };
8675
+ export {};
8676
+
8677
+ }
8678
+ declare module '@elastic/eui/src/services/focus_trap' {
8679
+ export { focusTrapPubSub } from '@elastic/eui/src/services/focus_trap/focus_trap_pub_sub';
8680
+
8510
8681
  }
8511
8682
  declare module '@elastic/eui/src/services/format/format_boolean' {
8512
8683
  export const formatBoolean: (value: boolean, { yes, no, nil }?: {
@@ -8813,6 +8984,7 @@ declare module '@elastic/eui/src/services' {
8813
8984
  export * from '@elastic/eui/src/services/copy';
8814
8985
  export * from '@elastic/eui/src/services/emotion';
8815
8986
  export * from '@elastic/eui/src/services/findElement';
8987
+ export { focusTrapPubSub } from '@elastic/eui/src/services/focus_trap';
8816
8988
  export { dateFormatAliases, formatAuto, formatBoolean, formatDate, formatNumber, formatText, } from '@elastic/eui/src/services/format';
8817
8989
  export * from '@elastic/eui/src/services/hooks';
8818
8990
  export { isEvenlyDivisibleBy, isWithinRange } from '@elastic/eui/src/services/number';
@@ -15256,6 +15428,7 @@ declare module '@elastic/eui/src/components/datagrid/data_grid_types' {
15256
15428
  width?: number | null;
15257
15429
  className?: string;
15258
15430
  'aria-label'?: AriaAttributes['aria-label'];
15431
+ 'aria-labelledby'?: AriaAttributes['aria-labelledby'];
15259
15432
  hasColumnActions?: boolean;
15260
15433
  isDragging?: boolean;
15261
15434
  onKeyDown?: KeyboardEventHandler;
@@ -16540,11 +16713,16 @@ declare module '@elastic/eui/src/utils/is_jest' {
16540
16713
  declare module '@elastic/eui/src/utils/type_guards' {
16541
16714
  export const isDOMNode: (el: any) => el is Node;
16542
16715
 
16716
+ }
16717
+ declare module '@elastic/eui/src/utils/element_can_be_disabled' {
16718
+ export const elementCanBeDisabled: <T extends HTMLElement>(htmlElement: T | null) => boolean;
16719
+
16543
16720
  }
16544
16721
  declare module '@elastic/eui/src/utils' {
16545
16722
  export * from '@elastic/eui/src/utils/prop_types';
16546
16723
  export * from '@elastic/eui/src/utils/is_jest';
16547
16724
  export * from '@elastic/eui/src/utils/type_guards';
16725
+ export { elementCanBeDisabled } from '@elastic/eui/src/utils/element_can_be_disabled';
16548
16726
 
16549
16727
  }
16550
16728
  declare module '@elastic/eui/src/components/datagrid/body/cell/focus_utils' {
@@ -16639,7 +16817,11 @@ declare module '@elastic/eui/src/components/datagrid/body/header/data_grid_heade
16639
16817
  euiDataGridHeaderCell__content: import("@emotion/react").SerializedStyles;
16640
16818
  right: import("@emotion/react").SerializedStyles;
16641
16819
  euiDataGridHeaderCell__popover: import("@emotion/react").SerializedStyles;
16642
- euiDataGridHeaderCell__actions: import("@emotion/react").SerializedStyles;
16820
+ euiDataGridHeaderCell__actions: {
16821
+ action: import("@emotion/react").SerializedStyles;
16822
+ start: import("@emotion/react").SerializedStyles;
16823
+ end: import("@emotion/react").SerializedStyles;
16824
+ };
16643
16825
  };
16644
16826
 
16645
16827
  }
@@ -18176,10 +18358,11 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/time_o
18176
18358
 
18177
18359
  }
18178
18360
  declare module '@elastic/eui/src/components/date_picker/super_date_picker/relative_utils' {
18179
- import { TimeUnitId, RelativeParts } from '@elastic/eui/src/components/date_picker/types';
18361
+ import { TimeUnitId, RelativeParts, ShortDate } from '@elastic/eui/src/components/date_picker/types';
18180
18362
  export const relativeUnitsFromLargestToSmallest: TimeUnitId[];
18181
18363
  export function parseRelativeParts(value: string): RelativeParts;
18182
18364
  export const toRelativeStringFromParts: (relativeParts: RelativeParts) => string;
18365
+ export const isRelativeToNow: (timeFrom: ShortDate, timeTo: ShortDate) => boolean;
18183
18366
 
18184
18367
  }
18185
18368
  declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_modes' {
@@ -18194,12 +18377,66 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_m
18194
18377
  export function toAbsoluteString(value: string, roundUp?: boolean): string;
18195
18378
  export function toRelativeString(value: string): string;
18196
18379
 
18380
+ }
18381
+ declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/timezone_display.styles' {
18382
+ import { UseEuiTheme } from '@elastic/eui/src/services';
18383
+ export const euiTimeZoneDisplayStyles: (euiThemeContext: UseEuiTheme) => {
18384
+ euiTimeZoneDisplay: import("@emotion/react").SerializedStyles;
18385
+ };
18386
+
18387
+ }
18388
+ declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/timezone_display' {
18389
+ import React, { type ReactNode, type ComponentPropsWithoutRef } from 'react';
18390
+ import { Moment } from 'moment';
18391
+ /**
18392
+ * Available elements to render passed to the
18393
+ * `customRender` render function.
18394
+ */
18395
+ type TimeZoneCustomDisplayRenderOptions = {
18396
+ nameDisplay?: ReactNode;
18397
+ };
18398
+ export type EuiTimeZoneDisplayProps = ComponentPropsWithoutRef<'div'> & {
18399
+ /**
18400
+ * A valid time zone name, from the IANA database, e.g. "America/Los_Angeles".
18401
+ *
18402
+ * @link https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
18403
+ */
18404
+ timeZone?: string;
18405
+ /**
18406
+ * Render prop function to add additional content to the time zone display.
18407
+ * Useful for e.g. adding links to documentation or setting pages.
18408
+ */
18409
+ customRender?: (options: TimeZoneCustomDisplayRenderOptions) => ReactNode;
18410
+ /**
18411
+ * Reference date to be used while resolving the UTC offset.
18412
+ * Only useful for edge cases involving daylight saving time.
18413
+ */
18414
+ date?: Moment;
18415
+ };
18416
+ /**
18417
+ * Display time zone information.
18418
+ */
18419
+ export const EuiTimeZoneDisplay: React.FC<EuiTimeZoneDisplayProps>;
18420
+ /**
18421
+ * Get the UTC offset display in hours e.g. "UTC+2" from time zone name.
18422
+ *
18423
+ * @param timeZoneName IANA time zone name
18424
+ * @param [date] Reference date to get offset with Intl.DateTimeFormat
18425
+ */
18426
+ export function useEuiUTCOffsetDisplay(timeZoneName: string, date?: Date): {
18427
+ utc: string;
18428
+ name: string;
18429
+ isInvalid: boolean;
18430
+ };
18431
+ export {};
18432
+
18197
18433
  }
18198
18434
  declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/relative_tab' {
18199
18435
  import { FunctionComponent } from 'react';
18200
18436
  import { LocaleSpecifier } from 'moment';
18201
18437
  import { TimeOptions } from '@elastic/eui/src/components/date_picker/super_date_picker/time_options';
18202
18438
  import { EuiDatePopoverContentProps } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/date_popover_content';
18439
+ import { type EuiTimeZoneDisplayProps } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/timezone_display';
18203
18440
  export interface EuiRelativeTabProps {
18204
18441
  dateFormat: string;
18205
18442
  locale?: LocaleSpecifier;
@@ -18208,6 +18445,7 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_p
18208
18445
  roundUp?: boolean;
18209
18446
  labelPrefix: string;
18210
18447
  timeOptions: TimeOptions;
18448
+ timeZoneDisplayProps?: EuiTimeZoneDisplayProps;
18211
18449
  }
18212
18450
  export const EuiRelativeTab: FunctionComponent<EuiRelativeTabProps>;
18213
18451
 
@@ -18223,6 +18461,7 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_p
18223
18461
  import { FunctionComponent } from 'react';
18224
18462
  import { LocaleSpecifier, Moment } from 'moment';
18225
18463
  import { TimeOptions } from '@elastic/eui/src/components/date_picker/super_date_picker/time_options';
18464
+ import { type EuiTimeZoneDisplayProps } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/timezone_display';
18226
18465
  export interface EuiDatePopoverContentProps {
18227
18466
  value: string;
18228
18467
  onChange: (date: string) => void;
@@ -18236,6 +18475,7 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_p
18236
18475
  minDate?: Moment;
18237
18476
  maxDate?: Moment;
18238
18477
  timeOptions: TimeOptions;
18478
+ timeZoneDisplayProps?: EuiTimeZoneDisplayProps;
18239
18479
  }
18240
18480
  export const EuiDatePopoverContent: FunctionComponent<EuiDatePopoverContentProps>;
18241
18481
 
@@ -18253,6 +18493,7 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_p
18253
18493
  import { FunctionComponent } from 'react';
18254
18494
  import { Moment, LocaleSpecifier } from 'moment';
18255
18495
  import { EuiDatePopoverContentProps } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/date_popover_content';
18496
+ import { type EuiTimeZoneDisplayProps } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/timezone_display';
18256
18497
  export interface EuiAbsoluteTabProps {
18257
18498
  dateFormat: string;
18258
18499
  timeFormat: string;
@@ -18264,6 +18505,7 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_p
18264
18505
  utcOffset?: number;
18265
18506
  minDate?: Moment;
18266
18507
  maxDate?: Moment;
18508
+ timeZoneDisplayProps?: EuiTimeZoneDisplayProps;
18267
18509
  }
18268
18510
  export const EuiAbsoluteTab: FunctionComponent<EuiAbsoluteTabProps>;
18269
18511
 
@@ -18341,6 +18583,7 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_p
18341
18583
  import { EuiPopoverProps } from '@elastic/eui/src/components/popover';
18342
18584
  import { TimeOptions } from '@elastic/eui/src/components/date_picker/super_date_picker/time_options';
18343
18585
  import { EuiDatePopoverContentProps } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/date_popover_content';
18586
+ import { type EuiTimeZoneDisplayProps } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/timezone_display';
18344
18587
  export interface EuiDatePopoverButtonProps {
18345
18588
  className?: string;
18346
18589
  buttonProps?: CommonProps & ButtonHTMLAttributes<HTMLButtonElement>;
@@ -18363,6 +18606,7 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_p
18363
18606
  maxDate?: Moment;
18364
18607
  compressed?: boolean;
18365
18608
  timeOptions: TimeOptions;
18609
+ timeZoneDisplayProps?: EuiTimeZoneDisplayProps;
18366
18610
  }
18367
18611
  export const EuiDatePopoverButton: FunctionComponent<EuiDatePopoverButtonProps>;
18368
18612
 
@@ -18376,6 +18620,7 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/date_p
18376
18620
  export { EuiDatePopoverContent } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/date_popover_content';
18377
18621
  export type { EuiRelativeTabProps } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/relative_tab';
18378
18622
  export { EuiRelativeTab } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/relative_tab';
18623
+ export type { EuiTimeZoneDisplayProps } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/timezone_display';
18379
18624
 
18380
18625
  }
18381
18626
  declare module '@elastic/eui/src/components/date_picker/super_date_picker/quick_select_popover/quick_select_panel.styles' {
@@ -18669,6 +18914,69 @@ declare module '@elastic/eui/src/components/date_picker/date_picker_range' {
18669
18914
  };
18670
18915
  export const EuiDatePickerRange: FunctionComponent<EuiDatePickerRangeProps>;
18671
18916
 
18917
+ }
18918
+ declare module '@elastic/eui/src/components/date_picker/super_date_picker/pretty_interval' {
18919
+ const MS_INTERVALS: {
18920
+ readonly s: 1000;
18921
+ readonly m: number;
18922
+ readonly h: number;
18923
+ readonly d: number;
18924
+ };
18925
+ type IntervalUnitId = keyof typeof MS_INTERVALS;
18926
+ export const usePrettyInterval: (isPaused: boolean, intervalInMs: number, options?: {
18927
+ shortHand?: boolean;
18928
+ unit?: IntervalUnitId;
18929
+ }) => string;
18930
+ export {};
18931
+
18932
+ }
18933
+ declare module '@elastic/eui/src/components/date_picker/super_date_picker/time_window_buttons' {
18934
+ import React from 'react';
18935
+ import { ShortDate, ApplyTime } from '@elastic/eui/src/components/date_picker/types';
18936
+ export const ZOOM_FACTOR_DEFAULT = 0.5;
18937
+ export interface EuiTimeWindowButtonsConfig {
18938
+ /**
18939
+ * Show button for zooming out
18940
+ * @default true
18941
+ */
18942
+ showZoomOut?: boolean;
18943
+ /**
18944
+ * Show buttons for shifting the time window forward and backward
18945
+ * @default true
18946
+ */
18947
+ showShiftArrows?: boolean;
18948
+ /**
18949
+ * How much the time window is increased when zooming.
18950
+ * A number between 0 and 1 e.g. 0.25, or a string representing a percentage e.g. 25%
18951
+ * @default 0.5
18952
+ * */
18953
+ zoomFactor?: number | string;
18954
+ }
18955
+ export type EuiTimeWindowButtonsProps = EuiTimeWindowButtonsConfig & {
18956
+ applyTime: ApplyTime;
18957
+ start: ShortDate;
18958
+ end: ShortDate;
18959
+ compressed?: boolean;
18960
+ isDisabled?: boolean;
18961
+ };
18962
+ /**
18963
+ * Button group with time window controls for shifting the time window
18964
+ * forwards and backwards, and zooming out.
18965
+ */
18966
+ export const EuiTimeWindowButtons: React.FC<EuiTimeWindowButtonsProps>;
18967
+ /**
18968
+ * Partly adapted from date_picker/super_date_picker/quick_select_popover/quick_select.tsx
18969
+ */
18970
+ export function useEuiTimeWindow(start: ShortDate, end: ShortDate, apply: ApplyTime, options?: {
18971
+ zoomFactor?: EuiTimeWindowButtonsConfig['zoomFactor'];
18972
+ }): {
18973
+ displayInterval: string;
18974
+ isInvalid: boolean;
18975
+ stepForward: () => void;
18976
+ stepBackward: () => void;
18977
+ expandWindow: () => void;
18978
+ };
18979
+
18672
18980
  }
18673
18981
  declare module '@elastic/eui/src/components/responsive/hide_for' {
18674
18982
  import { ReactNode, FunctionComponent } from 'react';
@@ -18776,21 +19084,6 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/super_
18776
19084
  }
18777
19085
  export {};
18778
19086
 
18779
- }
18780
- declare module '@elastic/eui/src/components/date_picker/super_date_picker/pretty_interval' {
18781
- const MS_INTERVALS: {
18782
- readonly s: 1000;
18783
- readonly m: number;
18784
- readonly h: number;
18785
- readonly d: number;
18786
- };
18787
- type IntervalUnitId = keyof typeof MS_INTERVALS;
18788
- export const usePrettyInterval: (isPaused: boolean, intervalInMs: number, options?: {
18789
- shortHand?: boolean;
18790
- unit?: IntervalUnitId;
18791
- }) => string;
18792
- export {};
18793
-
18794
19087
  }
18795
19088
  declare module '@elastic/eui/src/components/date_picker/auto_refresh/auto_refresh' {
18796
19089
  import { FunctionComponent } from 'react';
@@ -18822,9 +19115,11 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/super_
18822
19115
  import { CommonProps } from '@elastic/eui/src/components/common';
18823
19116
  import { ShortDate, Milliseconds, DurationRange, ApplyTime, ApplyRefreshInterval, RefreshUnitsOptions, QuickSelectPanel } from '@elastic/eui/src/components/date_picker/types';
18824
19117
  import { TimeOptions } from '@elastic/eui/src/components/date_picker/super_date_picker/time_options';
19118
+ import { type EuiTimeWindowButtonsConfig } from '@elastic/eui/src/components/date_picker/super_date_picker/time_window_buttons';
18825
19119
  import { AsyncInterval } from '@elastic/eui/src/components/date_picker/super_date_picker/async_interval';
18826
19120
  import { EuiSuperUpdateButtonProps } from '@elastic/eui/src/components/date_picker/super_date_picker/super_update_button';
18827
19121
  import { CustomQuickSelectRenderOptions, EuiQuickSelectButtonProps } from '@elastic/eui/src/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover';
19122
+ import { type EuiTimeZoneDisplayProps } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/timezone_display';
18828
19123
  import { EuiDatePopoverContentProps } from '@elastic/eui/src/components/date_picker/super_date_picker/date_popover/date_popover_content';
18829
19124
  import { euiSuperDatePickerStyles } from '@elastic/eui/src/components/date_picker/super_date_picker/super_date_picker.styles';
18830
19125
  export interface OnTimeChangeProps extends DurationRange {
@@ -18948,6 +19243,11 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/super_
18948
19243
  * @default true
18949
19244
  */
18950
19245
  showUpdateButton?: boolean | 'iconOnly';
19246
+ /**
19247
+ * Set to true to display buttons for time shifting and zooming out,
19248
+ * next to the top-level control.
19249
+ */
19250
+ showTimeWindowButtons?: boolean | EuiTimeWindowButtonsConfig;
18951
19251
  /**
18952
19252
  * Hides the actual input reducing to just the quick select button.
18953
19253
  */
@@ -18968,6 +19268,14 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/super_
18968
19268
  * input by the user, set this flag to `false`.
18969
19269
  */
18970
19270
  canRoundRelativeUnits?: boolean;
19271
+ /**
19272
+ * Props passed to the time zone display in the popovers {@link EuiTimeZoneDisplayProps}
19273
+ *
19274
+ * Setting `timeZoneDisplayProps.timeZone` with a valid time zone name will make
19275
+ * the time zone information be visible below the start and end input fields.
19276
+ * This is informational only, it will not affect how date/times are handled.
19277
+ */
19278
+ timeZoneDisplayProps?: EuiTimeZoneDisplayProps;
18971
19279
  };
18972
19280
  type EuiSuperDatePickerInternalProps = EuiSuperDatePickerProps & {
18973
19281
  memoizedStyles: ReturnType<typeof euiSuperDatePickerStyles>;
@@ -19041,6 +19349,7 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/super_
19041
19349
  renderQuickSelect: () => React.JSX.Element;
19042
19350
  renderDatePickerRange: () => React.JSX.Element;
19043
19351
  handleClickUpdateButton: () => void;
19352
+ renderTimeWindowButtons: () => React.JSX.Element | null;
19044
19353
  renderUpdateButton: () => React.JSX.Element | null;
19045
19354
  render(): React.JSX.Element;
19046
19355
  }
@@ -19056,6 +19365,7 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker' {
19056
19365
  export { EuiSuperDatePicker } from '@elastic/eui/src/components/date_picker/super_date_picker/super_date_picker';
19057
19366
  export type { EuiSuperUpdateButtonProps } from '@elastic/eui/src/components/date_picker/super_date_picker/super_update_button';
19058
19367
  export { EuiSuperUpdateButton } from '@elastic/eui/src/components/date_picker/super_date_picker/super_update_button';
19368
+ export type { EuiTimeWindowButtonsConfig } from '@elastic/eui/src/components/date_picker/super_date_picker/time_window_buttons';
19059
19369
  export { PrettyDuration, usePrettyDuration } from '@elastic/eui/src/components/date_picker/super_date_picker/pretty_duration';
19060
19370
 
19061
19371
  }
@@ -19461,6 +19771,7 @@ declare module '@elastic/eui/src/components/filter_group/filter_group' {
19461
19771
  declare module '@elastic/eui/src/components/filter_group/filter_button' {
19462
19772
  import { FunctionComponent } from 'react';
19463
19773
  import { _EuiButtonColor } from '@elastic/eui/src/global_styling';
19774
+ import { type EuiDisabledProps } from '@elastic/eui/src/services/hooks/useEuiDisabledElement';
19464
19775
  import { DistributiveOmit } from '@elastic/eui/src/components/common';
19465
19776
  import { BadgeNotificationColor } from '@elastic/eui/src/components/badge/notification_badge/badge_notification';
19466
19777
  import { EuiButtonEmptyProps } from '@elastic/eui/src/components/button/button_empty';
@@ -19518,7 +19829,7 @@ declare module '@elastic/eui/src/components/filter_group/filter_button' {
19518
19829
  * - warning
19519
19830
  */
19520
19831
  color?: _EuiButtonColor;
19521
- } & DistributiveOmit<EuiButtonEmptyProps, 'flush' | 'size' | 'color' | 'isSelected'>;
19832
+ } & DistributiveOmit<EuiButtonEmptyProps, 'flush' | 'size' | 'color' | 'isSelected'> & EuiDisabledProps;
19522
19833
  export const EuiFilterButton: FunctionComponent<EuiFilterButtonProps>;
19523
19834
 
19524
19835
  }
@@ -23441,6 +23752,28 @@ declare module '@elastic/eui/src/components/selectable/selectable_list/selectabl
23441
23752
  content?: string | undefined;
23442
23753
  hidden?: boolean | undefined;
23443
23754
  css?: import("@emotion/serialize").Interpolation<import("@emotion/react").Theme>;
23755
+ onClick?: React.MouseEventHandler<HTMLDivElement> | undefined;
23756
+ onMouseDown?: React.MouseEventHandler<HTMLDivElement> | undefined;
23757
+ onMouseUp?: React.MouseEventHandler<HTMLDivElement> | undefined;
23758
+ onMouseEnter?: React.MouseEventHandler<HTMLDivElement> | undefined;
23759
+ onMouseLeave?: React.MouseEventHandler<HTMLDivElement> | undefined;
23760
+ onMouseOut?: React.MouseEventHandler<HTMLDivElement> | undefined;
23761
+ onMouseMove?: React.MouseEventHandler<HTMLDivElement> | undefined;
23762
+ onMouseOver?: React.MouseEventHandler<HTMLDivElement> | undefined;
23763
+ onPointerDown?: React.PointerEventHandler<HTMLDivElement> | undefined;
23764
+ onPointerUp?: React.PointerEventHandler<HTMLDivElement> | undefined;
23765
+ onPointerEnter?: React.PointerEventHandler<HTMLDivElement> | undefined;
23766
+ onPointerLeave?: React.PointerEventHandler<HTMLDivElement> | undefined;
23767
+ onPointerMove?: React.PointerEventHandler<HTMLDivElement> | undefined;
23768
+ onPointerOver?: React.PointerEventHandler<HTMLDivElement> | undefined;
23769
+ onTouchStart?: React.TouchEventHandler<HTMLDivElement> | undefined;
23770
+ onTouchEnd?: React.TouchEventHandler<HTMLDivElement> | undefined;
23771
+ onTouchMove?: React.TouchEventHandler<HTMLDivElement> | undefined;
23772
+ onKeyDown?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
23773
+ onKeyUp?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
23774
+ onKeyPress?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
23775
+ onSubmit?: React.FormEventHandler<HTMLDivElement> | undefined;
23776
+ "aria-disabled"?: (boolean | "false" | "true") | undefined;
23444
23777
  translate?: "yes" | "no" | undefined;
23445
23778
  property?: string | undefined;
23446
23779
  className?: string | undefined;
@@ -23498,7 +23831,6 @@ declare module '@elastic/eui/src/components/selectable/selectable_list/selectabl
23498
23831
  "aria-describedby"?: string | undefined;
23499
23832
  "aria-description"?: string | undefined;
23500
23833
  "aria-details"?: string | undefined;
23501
- "aria-disabled"?: (boolean | "false" | "true") | undefined;
23502
23834
  "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined;
23503
23835
  "aria-errormessage"?: string | undefined;
23504
23836
  "aria-expanded"?: (boolean | "false" | "true") | undefined;
@@ -23562,7 +23894,6 @@ declare module '@elastic/eui/src/components/selectable/selectable_list/selectabl
23562
23894
  onInputCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
23563
23895
  onReset?: React.FormEventHandler<HTMLDivElement> | undefined;
23564
23896
  onResetCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
23565
- onSubmit?: React.FormEventHandler<HTMLDivElement> | undefined;
23566
23897
  onSubmitCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
23567
23898
  onInvalid?: React.FormEventHandler<HTMLDivElement> | undefined;
23568
23899
  onInvalidCapture?: React.FormEventHandler<HTMLDivElement> | undefined;
@@ -23570,11 +23901,8 @@ declare module '@elastic/eui/src/components/selectable/selectable_list/selectabl
23570
23901
  onLoadCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
23571
23902
  onError?: React.ReactEventHandler<HTMLDivElement> | undefined;
23572
23903
  onErrorCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
23573
- onKeyDown?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
23574
23904
  onKeyDownCapture?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
23575
- onKeyPress?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
23576
23905
  onKeyPressCapture?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
23577
- onKeyUp?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
23578
23906
  onKeyUpCapture?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
23579
23907
  onAbort?: React.ReactEventHandler<HTMLDivElement> | undefined;
23580
23908
  onAbortCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
@@ -23624,7 +23952,6 @@ declare module '@elastic/eui/src/components/selectable/selectable_list/selectabl
23624
23952
  onWaitingCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
23625
23953
  onAuxClick?: React.MouseEventHandler<HTMLDivElement> | undefined;
23626
23954
  onAuxClickCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
23627
- onClick?: React.MouseEventHandler<HTMLDivElement> | undefined;
23628
23955
  onClickCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
23629
23956
  onContextMenu?: React.MouseEventHandler<HTMLDivElement> | undefined;
23630
23957
  onContextMenuCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
@@ -23646,39 +23973,23 @@ declare module '@elastic/eui/src/components/selectable/selectable_list/selectabl
23646
23973
  onDragStartCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
23647
23974
  onDrop?: React.DragEventHandler<HTMLDivElement> | undefined;
23648
23975
  onDropCapture?: React.DragEventHandler<HTMLDivElement> | undefined;
23649
- onMouseDown?: React.MouseEventHandler<HTMLDivElement> | undefined;
23650
23976
  onMouseDownCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
23651
- onMouseEnter?: React.MouseEventHandler<HTMLDivElement> | undefined;
23652
- onMouseLeave?: React.MouseEventHandler<HTMLDivElement> | undefined;
23653
- onMouseMove?: React.MouseEventHandler<HTMLDivElement> | undefined;
23654
23977
  onMouseMoveCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
23655
- onMouseOut?: React.MouseEventHandler<HTMLDivElement> | undefined;
23656
23978
  onMouseOutCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
23657
- onMouseOver?: React.MouseEventHandler<HTMLDivElement> | undefined;
23658
23979
  onMouseOverCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
23659
- onMouseUp?: React.MouseEventHandler<HTMLDivElement> | undefined;
23660
23980
  onMouseUpCapture?: React.MouseEventHandler<HTMLDivElement> | undefined;
23661
23981
  onSelect?: React.ReactEventHandler<HTMLDivElement> | undefined;
23662
23982
  onSelectCapture?: React.ReactEventHandler<HTMLDivElement> | undefined;
23663
23983
  onTouchCancel?: React.TouchEventHandler<HTMLDivElement> | undefined;
23664
23984
  onTouchCancelCapture?: React.TouchEventHandler<HTMLDivElement> | undefined;
23665
- onTouchEnd?: React.TouchEventHandler<HTMLDivElement> | undefined;
23666
23985
  onTouchEndCapture?: React.TouchEventHandler<HTMLDivElement> | undefined;
23667
- onTouchMove?: React.TouchEventHandler<HTMLDivElement> | undefined;
23668
23986
  onTouchMoveCapture?: React.TouchEventHandler<HTMLDivElement> | undefined;
23669
- onTouchStart?: React.TouchEventHandler<HTMLDivElement> | undefined;
23670
23987
  onTouchStartCapture?: React.TouchEventHandler<HTMLDivElement> | undefined;
23671
- onPointerDown?: React.PointerEventHandler<HTMLDivElement> | undefined;
23672
23988
  onPointerDownCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
23673
- onPointerMove?: React.PointerEventHandler<HTMLDivElement> | undefined;
23674
23989
  onPointerMoveCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
23675
- onPointerUp?: React.PointerEventHandler<HTMLDivElement> | undefined;
23676
23990
  onPointerUpCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
23677
23991
  onPointerCancel?: React.PointerEventHandler<HTMLDivElement> | undefined;
23678
23992
  onPointerCancelCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
23679
- onPointerEnter?: React.PointerEventHandler<HTMLDivElement> | undefined;
23680
- onPointerLeave?: React.PointerEventHandler<HTMLDivElement> | undefined;
23681
- onPointerOver?: React.PointerEventHandler<HTMLDivElement> | undefined;
23682
23993
  onPointerOverCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
23683
23994
  onPointerOut?: React.PointerEventHandler<HTMLDivElement> | undefined;
23684
23995
  onPointerOutCapture?: React.PointerEventHandler<HTMLDivElement> | undefined;
@@ -31929,6 +32240,109 @@ declare module 'text-diff' {
31929
32240
  }
31930
32241
  export = Diff;
31931
32242
  }
32243
+ declare module '@elastic/eui/cypress/support/setup/mount' {
32244
+ import { ReactNode } from 'react';
32245
+ import { EuiProviderProps } from '../../../src';
32246
+ import type { mount } from '@cypress/react18';
32247
+ export interface MountOptions {
32248
+ providerProps?: Partial<EuiProviderProps<any>>;
32249
+ } const mountCommand: (children: ReactNode, options?: MountOptions) => ReturnType<typeof mount>;
32250
+ export type mountCommand = typeof mountCommand;
32251
+ export {};
32252
+
32253
+ }
32254
+ declare module '@elastic/eui/cypress/support/setup/realMount' {
32255
+ import { ReactNode } from 'react';
32256
+ import './mount';
32257
+ import { MountOptions } from './mount'; const realMountCommand: (children: ReactNode, options?: MountOptions) => void;
32258
+ export type realMountCommand = typeof realMountCommand;
32259
+ export {};
32260
+
32261
+ }
32262
+ declare module '@elastic/eui' {
32263
+ import { ContextObject, Result, RunOptions } from 'axe-core';
32264
+ import { realPress } from 'cypress-real-events/commands/realPress';
32265
+ import type { mountCommand } from './setup/mount';
32266
+ import type { realMountCommand } from './setup/realMount';
32267
+
32268
+ type KeyOrShortcut = Parameters<typeof realPress>[0];
32269
+ type RealPressOptions = Parameters<typeof realPress>[1]; global {
32270
+ namespace Cypress {
32271
+ interface Chainable<Subject> {
32272
+ /**
32273
+ * Convenience method to run the axe-core accessibility scanner without having to establish
32274
+ * `cy.injectAxe()` in a `beforeEach` block. This method also reports axe violations in the
32275
+ * console output for debugging.
32276
+ *
32277
+ * @param skipFailures Set to true to report failures to the console without Cypress failing the test.
32278
+ * @param context Any valid node or CSS selector. Defaults to the Cypress containing `<div>`.
32279
+ * @param axeConfig Add or change rules in the `axe.run` config object
32280
+ * @see https://www.deque.com/axe/core-documentation/api-documentation/#api-name-axerun
32281
+ * @param callback Provide a custom callback function to handle the violations array from the Results object
32282
+ * @see https://www.deque.com/axe/core-documentation/api-documentation/#results-object
32283
+ */
32284
+ checkAxe(options?: {
32285
+ skipFailures?: boolean;
32286
+ context?: ContextObject | string;
32287
+ axeConfig?: RunOptions;
32288
+ callback?: (violations: Result[]) => void;
32289
+ }): void;
32290
+
32291
+ /**
32292
+ * Mounts components with a basic `EuiProvider` wrapper
32293
+ */
32294
+ mount: mountCommand;
32295
+
32296
+ /**
32297
+ * This ensures the correct testing window has focus when using Cypress Real Events.
32298
+ * @see https://github.com/dmtrKovalenko/cypress-real-events/issues/196
32299
+ */
32300
+ realMount: realMountCommand;
32301
+
32302
+ /**
32303
+ * Repeat the Real Events `realPress()` method 2 or more times
32304
+ * @param keyToPress Any valid key or array of keys https://docs.cypress.io/api/commands/type#Arguments
32305
+ * @param count Number of times to invoke `realPress()`. Defaults to 2.
32306
+ */
32307
+ repeatRealPress(
32308
+ keyToPress: KeyOrShortcut,
32309
+ count?: number,
32310
+ options?: RealPressOptions
32311
+ ): void;
32312
+
32313
+ /**
32314
+ * Select an element's content and copy it to the browser clipboard
32315
+ * @param selectorToCopy e.g. '.euiDataGrid__content'
32316
+ * @returns a chainable .then((string) => { doSomethingWith(string); })
32317
+ */
32318
+ selectAndCopy(selectorToCopy: string): Chainable<string>;
32319
+
32320
+ /*
32321
+ * Get the value of a CSS variable from the element's computed styles.
32322
+ * Params: variableName - the name of the CSS variable (e.g. '--euiColorPrimary')
32323
+ */
32324
+ cssVar(variableName: string): Chainable<string | null>;
32325
+
32326
+ /**
32327
+ * Waits for an element's position to remain stable for a few consecutive checks.
32328
+ * This is useful for ensuring that repositioning logic has completed after an event like a scroll.
32329
+ */
32330
+ waitForPositionToSettle(): Chainable<JQuery<HTMLElement>>;
32331
+ }
32332
+ interface Chainer<Subject> {
32333
+ (chainer: 'be.euiDisabled'): Chainable<Subject>;
32334
+ (chainer: 'be.euiEnabled'): Chainable<Subject>;
32335
+ }
32336
+ }
32337
+ namespace Chai {
32338
+ interface Assertion {
32339
+ euiDisabled: Assertion;
32340
+ euiEnabled: Assertion;
32341
+ }
32342
+ }
32343
+ }
32344
+
32345
+ }
31932
32346
  // TODO: remove once exported by package itself
31933
32347
  // https://github.com/oblador/loki/pull/516
31934
32348
  declare module '@loki/create-async-callback' {
@@ -31947,12 +32361,13 @@ declare module '@elastic/eui' {
31947
32361
  "euiTourFooter.endTour": any;
31948
32362
  "euiTourFooter.skipTour": any;
31949
32363
  "euiTourFooter.closeTour": any;
31950
- "euiIconTip.defaultAriaLabel": any;
31951
32364
  "euiToast.newNotification": any;
31952
32365
  "euiToast.notification": any;
31953
32366
  "euiToast.dismissToast": any;
31954
32367
  "euiGlobalToastList.clearAllToastsButtonAriaLabel": any;
31955
32368
  "euiGlobalToastList.clearAllToastsButtonDisplayText": any;
32369
+ "euiIconTip.defaultAriaLabel": any;
32370
+ "euiTableHeaderCell.titleTextWithDesc": any;
31956
32371
  "euiStepStrings.step": any;
31957
32372
  "euiStepStrings.simpleStep": any;
31958
32373
  "euiStepStrings.complete": any;
@@ -31970,22 +32385,21 @@ declare module '@elastic/eui' {
31970
32385
  "euiStepStrings.current": any;
31971
32386
  "euiStepStrings.simpleCurrent": any;
31972
32387
  "euiStat.loadingText": any;
31973
- "euiTableHeaderCell.titleTextWithDesc": any;
31974
32388
  "euiSkeletonLoading.loadedAriaText": any;
31975
32389
  "euiSkeletonLoading.loadingAriaText": any;
32390
+ "euiSearchBox.placeholder": any;
32391
+ "euiSearchBox.incrementalAriaLabel": any;
32392
+ "euiSearchBox.ariaLabel": any;
31976
32393
  "euiSideNav.mobileToggleAriaLabel": any;
32394
+ "euiResizablePanel.toggleButtonAriaLabel": any;
32395
+ "euiResizableButton.horizontalResizerAriaLabel": any;
32396
+ "euiResizableButton.verticalResizerAriaLabel": any;
31977
32397
  "euiSelectable.loadingOptions": any;
31978
32398
  "euiSelectable.noMatchingOptions": any;
31979
32399
  "euiSelectable.noAvailableOptions": any;
31980
32400
  "euiSelectable.screenReaderInstructions": any;
31981
32401
  "euiSelectable.placeholderName": any;
31982
32402
  "euiSelectable.searchResults": any;
31983
- "euiSearchBox.placeholder": any;
31984
- "euiSearchBox.incrementalAriaLabel": any;
31985
- "euiSearchBox.ariaLabel": any;
31986
- "euiResizablePanel.toggleButtonAriaLabel": any;
31987
- "euiResizableButton.horizontalResizerAriaLabel": any;
31988
- "euiResizableButton.verticalResizerAriaLabel": any;
31989
32403
  "euiProgress.valueText": any;
31990
32404
  "euiPopover.screenReaderAnnouncement": any;
31991
32405
  "euiPaginationButtonArrow.firstPage": any;
@@ -32002,14 +32416,10 @@ declare module '@elastic/eui' {
32002
32416
  "euiPagination.of": any;
32003
32417
  "euiPagination.collection": any;
32004
32418
  "euiPagination.fromEndLabel": any;
32419
+ "euiModal.screenReaderModalDialog": any;
32420
+ "euiModal.closeModal": any;
32005
32421
  "euiMarkdownEditorToolbar.editor": any;
32006
32422
  "euiMarkdownEditorToolbar.previewMarkdown": any;
32007
- "euiMarkdownEditorFooter.uploadingFiles": any;
32008
- "euiMarkdownEditorFooter.openUploadModal": any;
32009
- "euiMarkdownEditorFooter.unsupportedFileType": any;
32010
- "euiMarkdownEditorFooter.supportedFileTypes": any;
32011
- "euiMarkdownEditorFooter.showSyntaxErrors": any;
32012
- "euiMarkdownEditorFooter.errorsTitle": any;
32013
32423
  "euiMarkdownEditorHelpButton.mdSyntaxLink": any;
32014
32424
  "euiMarkdownEditorHelpButton.syntaxTitle": any;
32015
32425
  "euiMarkdownEditorHelpButton.showMarkdownHelp": any;
@@ -32017,10 +32427,14 @@ declare module '@elastic/eui' {
32017
32427
  "euiMarkdownEditorHelpButton.syntaxModalDescriptionSuffix": any;
32018
32428
  "euiMarkdownEditorHelpButton.closeButton": any;
32019
32429
  "euiMarkdownEditorHelpButton.syntaxPopoverDescription": any;
32430
+ "euiMarkdownEditorFooter.uploadingFiles": any;
32431
+ "euiMarkdownEditorFooter.openUploadModal": any;
32432
+ "euiMarkdownEditorFooter.unsupportedFileType": any;
32433
+ "euiMarkdownEditorFooter.supportedFileTypes": any;
32434
+ "euiMarkdownEditorFooter.showSyntaxErrors": any;
32435
+ "euiMarkdownEditorFooter.errorsTitle": any;
32020
32436
  "euiMark.highlightStart": any;
32021
32437
  "euiMark.highlightEnd": any;
32022
- "euiModal.screenReaderModalDialog": any;
32023
- "euiModal.closeModal": any;
32024
32438
  "euiLoadingStrings.ariaLabel": any;
32025
32439
  "euiExternalLinkIcon.newTarget.screenReaderOnlyText": any;
32026
32440
  "euiExternalLinkIcon.externalTarget.screenReaderOnlyText": any;
@@ -32041,7 +32455,6 @@ declare module '@elastic/eui' {
32041
32455
  "euiDataGrid.ariaLabel": any;
32042
32456
  "euiDataGrid.ariaLabelledBy": any;
32043
32457
  "euiDataGrid.screenReaderNotice": any;
32044
- "euiCollapsibleNavBeta.ariaLabel": any;
32045
32458
  "euiComboBox.listboxAriaLabel": any;
32046
32459
  "euiSaturation.ariaLabel": any;
32047
32460
  "euiSaturation.roleDescription": any;
@@ -32058,19 +32471,20 @@ declare module '@elastic/eui' {
32058
32471
  "euiColorPicker.alphaLabel": any;
32059
32472
  "euiColorPicker.openLabel": any;
32060
32473
  "euiColorPicker.closeLabel": any;
32061
- "euiCallOut.dismissAriaLabel": any;
32474
+ "euiCollapsibleNavBeta.ariaLabel": any;
32062
32475
  "euiCodeBlockFullScreen.fullscreenCollapse": any;
32063
32476
  "euiCodeBlockFullScreen.fullscreenExpand": any;
32064
32477
  "euiCodeBlockFullScreen.ariaLabel": any;
32065
32478
  "euiCodeBlockCopy.copy": any;
32066
32479
  "euiCodeBlockAnnotations.ariaLabel": any;
32067
32480
  "euiCodeBlock.label": any;
32068
- "euiBottomBar.screenReaderHeading": any;
32069
- "euiBottomBar.customScreenReaderAnnouncement": any;
32070
- "euiBottomBar.screenReaderAnnouncement": any;
32481
+ "euiCallOut.dismissAriaLabel": any;
32071
32482
  "euiBreadcrumbs.nav.ariaLabel": any;
32072
32483
  "euiBreadcrumb.collapsedBadge.ariaLabel": any;
32073
32484
  "euiBreadcrumb.popoverAriaLabel": any;
32485
+ "euiBottomBar.screenReaderHeading": any;
32486
+ "euiBottomBar.customScreenReaderAnnouncement": any;
32487
+ "euiBottomBar.screenReaderAnnouncement": any;
32074
32488
  "euiCollapsedItemActions.allActionsTooltip": any;
32075
32489
  "euiCollapsedItemActions.allActions": any;
32076
32490
  "euiCollapsedItemActions.allActionsDisabled": any;
@@ -32088,6 +32502,7 @@ declare module '@elastic/eui' {
32088
32502
  "euiTablePagination.rowsPerPageOptionShowAllRows": any;
32089
32503
  "euiTablePagination.rowsPerPageOption": any;
32090
32504
  "euiTableSortMobile.sorting": any;
32505
+ "euiFieldValueSelectionFilter.buttonLabelHint": any;
32091
32506
  "euiSelectableTemplateSitewide.searchPlaceholder": any;
32092
32507
  "euiSelectableTemplateSitewide.loadingResults": any;
32093
32508
  "euiSelectableTemplateSitewide.noResults": any;
@@ -32101,7 +32516,6 @@ declare module '@elastic/eui' {
32101
32516
  "euiSelectableListItem.mixedOptionInstructions": any;
32102
32517
  "euiSelectableListItem.mixedOptionUncheckInstructions": any;
32103
32518
  "euiSelectableListItem.mixedOptionExcludeInstructions": any;
32104
- "euiFieldValueSelectionFilter.buttonLabelHint": any;
32105
32519
  "euiPinnableListGroup.pinExtraActionLabel": any;
32106
32520
  "euiPinnableListGroup.pinnedExtraActionLabel": any;
32107
32521
  "euiHeaderLinks.appNavigation": any;
@@ -32110,15 +32524,20 @@ declare module '@elastic/eui' {
32110
32524
  "euiSuperSelect.ariaLabel": any;
32111
32525
  "euiRange.sliderScreenReaderInstructions": any;
32112
32526
  "euiDualRange.sliderScreenReaderInstructions": any;
32113
- "euiFormControlLayoutDelimited.delimiterLabel": any;
32114
- "euiFormControlLayoutClearButton.label": any;
32115
32527
  "euiFilePicker.promptText": any;
32116
32528
  "euiFilePicker.filesSelected": any;
32117
32529
  "euiFilePicker.removeSelectedAriaLabel": any;
32118
32530
  "euiFilePicker.removeSelected": any;
32531
+ "euiFormControlLayoutDelimited.delimiterLabel": any;
32532
+ "euiFormControlLayoutClearButton.label": any;
32533
+ "euiFieldSearch.clearSearchButtonLabel": any;
32119
32534
  "euiFieldPassword.showPassword": any;
32120
32535
  "euiFieldPassword.maskPassword": any;
32121
- "euiFieldSearch.clearSearchButtonLabel": any;
32536
+ "euiSuperUpdateButton.updatingButtonLabel": any;
32537
+ "euiSuperUpdateButton.updateButtonLabel": any;
32538
+ "euiSuperUpdateButton.refreshButtonLabel": any;
32539
+ "euiSuperUpdateButton.cannotUpdateTooltip": any;
32540
+ "euiSuperUpdateButton.clickToApplyTooltip": any;
32122
32541
  "euiTimeOptions.last": any;
32123
32542
  "euiTimeOptions.next": any;
32124
32543
  "euiTimeOptions.seconds": any;
@@ -32157,11 +32576,13 @@ declare module '@elastic/eui' {
32157
32576
  "euiTimeOptions.weekToDate": any;
32158
32577
  "euiTimeOptions.monthToDate": any;
32159
32578
  "euiTimeOptions.yearToDate": any;
32160
- "euiSuperUpdateButton.updatingButtonLabel": any;
32161
- "euiSuperUpdateButton.updateButtonLabel": any;
32162
- "euiSuperUpdateButton.refreshButtonLabel": any;
32163
- "euiSuperUpdateButton.cannotUpdateTooltip": any;
32164
- "euiSuperUpdateButton.clickToApplyTooltip": any;
32579
+ "euiTimeWindowButtons.invalidShiftLabel": any;
32580
+ "euiTimeWindowButtons.invalidZoomOutLabel": any;
32581
+ "euiTimeWindowButtons.previousLabel": any;
32582
+ "euiTimeWindowButtons.previousDescription": any;
32583
+ "euiTimeWindowButtons.zoomOutLabel": any;
32584
+ "euiTimeWindowButtons.nextLabel": any;
32585
+ "euiTimeWindowButtons.nextDescription": any;
32165
32586
  "euiPrettyInterval.seconds": any;
32166
32587
  "euiPrettyInterval.minutes": any;
32167
32588
  "euiPrettyInterval.hours": any;
@@ -32242,6 +32663,7 @@ declare module '@elastic/eui' {
32242
32663
  "euiKeyboardShortcuts.escapeDescription": any;
32243
32664
  "euiFullscreenSelector.fullscreenButton": any;
32244
32665
  "euiFullscreenSelector.fullscreenButtonActive": any;
32666
+ "euiDataGridToolbarControl.badgeAriaLabel": any;
32245
32667
  "euiDisplaySelector.densityLabel": any;
32246
32668
  "euiDisplaySelector.labelCompact": any;
32247
32669
  "euiDisplaySelector.labelNormal": any;
@@ -32252,31 +32674,23 @@ declare module '@elastic/eui' {
32252
32674
  "euiDisplaySelector.labelMax": any;
32253
32675
  "euiDisplaySelector.buttonText": any;
32254
32676
  "euiDisplaySelector.resetButtonText": any;
32255
- "euiDataGridToolbarControl.badgeAriaLabel": any;
32677
+ "euiColumnSorting.button": any;
32678
+ "euiColumnSorting.sortFieldAriaLabel": any;
32679
+ "euiColumnSorting.emptySorting": any;
32680
+ "euiColumnSorting.pickFields": any;
32681
+ "euiColumnSorting.clearAll": any;
32256
32682
  "euiColumnSortingDraggable.defaultSortAsc": any;
32257
32683
  "euiColumnSortingDraggable.defaultSortDesc": any;
32258
32684
  "euiColumnSortingDraggable.dragHandleAriaLabel": any;
32259
32685
  "euiColumnSortingDraggable.activeSortLabel": any;
32260
32686
  "euiColumnSortingDraggable.removeSortLabel": any;
32261
32687
  "euiColumnSortingDraggable.toggleLegend": any;
32262
- "euiColumnSorting.button": any;
32263
- "euiColumnSorting.sortFieldAriaLabel": any;
32264
- "euiColumnSorting.emptySorting": any;
32265
- "euiColumnSorting.pickFields": any;
32266
- "euiColumnSorting.clearAll": any;
32267
32688
  "euiColumnSelector.dragHandleAriaLabel": any;
32268
32689
  "euiColumnSelector.button": any;
32269
32690
  "euiColumnSelector.search": any;
32270
32691
  "euiColumnSelector.searchcolumns": any;
32271
32692
  "euiColumnSelector.selectAll": any;
32272
32693
  "euiColumnSelector.hideAll": any;
32273
- "euiCollapsibleNavButton.ariaLabelExpand": any;
32274
- "euiCollapsibleNavButton.ariaLabelCollapse": any;
32275
- "euiCollapsibleNavButton.ariaLabelOpen": any;
32276
- "euiCollapsibleNavButton.ariaLabelClose": any;
32277
- "euiCollapsibleNavKibanaSolution.switcherTitle": any;
32278
- "euiCollapsibleNavKibanaSolution.switcherAriaLabel": any;
32279
- "euiCollapsibleNavKibanaSolution.groupLabel": any;
32280
32694
  "euiComboBoxOptionsList.loadingOptions": any;
32281
32695
  "euiComboBoxOptionsList.delimiterMessage": any;
32282
32696
  "euiComboBoxOptionsList.alreadyAdded": any;
@@ -32285,10 +32699,28 @@ declare module '@elastic/eui' {
32285
32699
  "euiComboBoxOptionsList.noAvailableOptions": any;
32286
32700
  "euiComboBoxOptionsList.allOptionsSelected": any;
32287
32701
  "euiComboBoxPill.removeSelection": any;
32702
+ "euiCollapsibleNavButton.ariaLabelExpand": any;
32703
+ "euiCollapsibleNavButton.ariaLabelCollapse": any;
32704
+ "euiCollapsibleNavButton.ariaLabelOpen": any;
32705
+ "euiCollapsibleNavButton.ariaLabelClose": any;
32706
+ "euiCollapsibleNavKibanaSolution.switcherTitle": any;
32707
+ "euiCollapsibleNavKibanaSolution.switcherAriaLabel": any;
32708
+ "euiCollapsibleNavKibanaSolution.groupLabel": any;
32288
32709
  "euiCardSelect.selected": any;
32289
32710
  "euiCardSelect.unavailable": any;
32290
32711
  "euiCardSelect.select": any;
32291
32712
  "euiAccordionChildrenLoading.message": any;
32713
+ "euiRecentlyUsed.legend": any;
32714
+ "euiQuickSelectPopover.buttonLabel": any;
32715
+ "euiQuickSelect.quickSelectTitle": any;
32716
+ "euiQuickSelect.previousLabel": any;
32717
+ "euiQuickSelect.nextLabel": any;
32718
+ "euiQuickSelect.tenseLabel": any;
32719
+ "euiQuickSelect.valueLabel": any;
32720
+ "euiQuickSelect.unitLabel": any;
32721
+ "euiQuickSelect.applyButton": any;
32722
+ "euiQuickSelect.fullDescription": any;
32723
+ "euiCommonlyUsedTimeRanges.legend": any;
32292
32724
  "euiRelativeTab.numberInputLabel": any;
32293
32725
  "euiRelativeTab.numberInputError": any;
32294
32726
  "euiRelativeTab.dateInputError": any;
@@ -32306,17 +32738,6 @@ declare module '@elastic/eui' {
32306
32738
  "euiDatePopoverButton.outdatedTitle": any;
32307
32739
  "euiAbsoluteTab.dateFormatButtonLabel": any;
32308
32740
  "euiAbsoluteTab.dateFormatError": any;
32309
- "euiRecentlyUsed.legend": any;
32310
- "euiQuickSelectPopover.buttonLabel": any;
32311
- "euiQuickSelect.quickSelectTitle": any;
32312
- "euiQuickSelect.previousLabel": any;
32313
- "euiQuickSelect.nextLabel": any;
32314
- "euiQuickSelect.tenseLabel": any;
32315
- "euiQuickSelect.valueLabel": any;
32316
- "euiQuickSelect.unitLabel": any;
32317
- "euiQuickSelect.applyButton": any;
32318
- "euiQuickSelect.fullDescription": any;
32319
- "euiCommonlyUsedTimeRanges.legend": any;
32320
32741
  "euiDataGridHeaderCell.sortedByAscendingSingle": any;
32321
32742
  "euiDataGridHeaderCell.sortedByDescendingSingle": any;
32322
32743
  "euiDataGridHeaderCell.sortedByAscendingFirst": any;