@elastic/eui 116.3.1 → 116.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (382) hide show
  1. package/es/components/avatar/avatar.js +1 -1
  2. package/es/components/badge/badge.js +1 -1
  3. package/es/components/badge/beta_badge/beta_badge.js +1 -1
  4. package/es/components/banner/banner.js +1 -2
  5. package/es/components/banner/banner.styles.js +1 -1
  6. package/es/components/basic_table/basic_table.js +39 -9
  7. package/es/components/basic_table/basic_table.styles.js +19 -1
  8. package/es/components/basic_table/in_memory_table.js +21 -4
  9. package/es/components/basic_table/index.js +2 -1
  10. package/es/components/basic_table/pagination_bar.js +19 -4
  11. package/es/components/basic_table/pagination_bar.styles.js +21 -0
  12. package/es/components/basic_table/panel.styles.js +14 -0
  13. package/es/components/basic_table/use_panel_props.js +28 -0
  14. package/es/components/button/button_display/_button_display_content.js +1 -1
  15. package/es/components/button/button_empty/button_empty.js +1 -1
  16. package/es/components/button/button_icon/button_icon.js +1 -1
  17. package/es/components/call_out/call_out.js +1 -1
  18. package/es/components/card/card.js +1 -1
  19. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  20. package/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
  21. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
  22. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  23. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
  24. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
  25. package/es/components/comment_list/comment.js +2 -2
  26. package/es/components/comment_list/comment_event.js +1 -1
  27. package/es/components/comment_list/comment_list.js +2 -2
  28. package/es/components/comment_list/comment_timeline.js +1 -1
  29. package/es/components/context_menu/context_menu_item.js +1 -1
  30. package/es/components/datagrid/body/cell/data_grid_cell.js +12 -12
  31. package/es/components/datagrid/body/data_grid_body.js +7 -7
  32. package/es/components/datagrid/body/data_grid_body_custom.js +7 -7
  33. package/es/components/datagrid/body/data_grid_body_virtualized.js +7 -7
  34. package/es/components/datagrid/body/header/data_grid_header_cell.js +6 -6
  35. package/es/components/datagrid/controls/column_sorting.js +7 -7
  36. package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
  37. package/es/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
  38. package/es/components/datagrid/utils/in_memory.js +6 -6
  39. package/es/components/date_picker/auto_refresh/refresh_interval.js +176 -229
  40. package/es/components/date_picker/date_picker.js +2 -2
  41. package/es/components/date_picker/date_picker_range.js +1 -1
  42. package/es/components/empty_prompt/empty_prompt.js +1 -1
  43. package/es/components/flyout/flyout.component.js +10 -6
  44. package/es/components/flyout/flyout_menu.js +114 -21
  45. package/es/components/flyout/flyout_menu.styles.js +2 -1
  46. package/es/components/flyout/manager/actions.js +20 -0
  47. package/es/components/flyout/manager/flyout_child.js +24 -2
  48. package/es/components/flyout/manager/flyout_managed.js +66 -20
  49. package/es/components/flyout/manager/hooks.js +1 -1
  50. package/es/components/flyout/manager/index.js +2 -2
  51. package/es/components/flyout/manager/reducer.js +32 -8
  52. package/es/components/flyout/manager/selectors.js +8 -2
  53. package/es/components/flyout/manager/store.js +35 -2
  54. package/es/components/flyout/use_flyout_menu.js +2 -2
  55. package/es/components/form/field_number/field_number.js +2 -2
  56. package/es/components/form/field_text/field_text.js +2 -2
  57. package/es/components/form/form_control_button/form_control_button.js +1 -1
  58. package/es/components/form/form_control_layout/append_prepend/form_append_prepend.js +2 -2
  59. package/es/components/form/form_control_layout/form_control_layout.js +2 -2
  60. package/es/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  61. package/es/components/form/form_control_layout/form_control_layout_icons.js +95 -143
  62. package/es/components/form/text_area/text_area.js +2 -2
  63. package/es/components/header/header_links/header_link.js +1 -1
  64. package/es/components/header/header_links/header_links.js +1 -1
  65. package/es/components/header/header_logo/header_logo.js +1 -1
  66. package/es/components/header/header_section/header_section_item_button.js +1 -1
  67. package/es/components/icon/assets/logo_vector_db.js +42 -0
  68. package/es/components/icon/icon.js +1 -1
  69. package/es/components/icon/icon.styles.js +3 -2
  70. package/es/components/icon/icon_map.js +3 -0
  71. package/es/components/key_pad_menu/key_pad_menu_item.js +1 -1
  72. package/es/components/list_group/list_group.js +2 -2
  73. package/es/components/list_group/list_group_item.js +2 -2
  74. package/es/components/list_group/list_group_item_extra_action.js +1 -1
  75. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  76. package/es/components/loading/loading_logo.js +1 -1
  77. package/es/components/markdown_editor/markdown_editor.js +1 -1
  78. package/es/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  79. package/es/components/markdown_editor/markdown_editor_footer.js +1 -1
  80. package/es/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  81. package/es/components/notification_icon/assets/info_fill.js +34 -0
  82. package/es/components/notification_icon/assets/warning_static.js +40 -0
  83. package/es/components/notification_icon/notification_icon.js +87 -0
  84. package/es/components/notification_icon/notification_icon.styles.js +22 -0
  85. package/es/components/page/page_header/page_header_content.js +1 -1
  86. package/es/components/pagination/pagination_button.js +1 -1
  87. package/es/components/selectable/selectable_list/selectable_list.js +1 -1
  88. package/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
  89. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  90. package/es/components/table/mobile/table_sort_mobile.js +64 -103
  91. package/es/components/table/table_header_cell.js +1 -1
  92. package/es/components/timeline/timeline_item_icon.js +1 -1
  93. package/es/components/toast/global_toast_list.js +133 -7
  94. package/es/components/toast/global_toast_list.styles.js +31 -7
  95. package/es/components/toast/toast.js +243 -48
  96. package/es/components/toast/toast.styles.js +35 -47
  97. package/es/components/toast/toast_action.js +34 -0
  98. package/es/components/toast/types.js +9 -0
  99. package/es/components/tool_tip/icon_tip.js +1 -1
  100. package/es/components/tool_tip/tool_tip.js +3 -3
  101. package/eui.d.ts +1217 -973
  102. package/i18ntokens.json +1582 -1546
  103. package/lib/components/avatar/avatar.js +1 -1
  104. package/lib/components/badge/badge.js +1 -1
  105. package/lib/components/badge/beta_badge/beta_badge.js +1 -1
  106. package/lib/components/banner/banner.js +1 -2
  107. package/lib/components/banner/banner.styles.js +1 -1
  108. package/lib/components/basic_table/basic_table.js +38 -8
  109. package/lib/components/basic_table/basic_table.styles.js +19 -1
  110. package/lib/components/basic_table/in_memory_table.js +21 -4
  111. package/lib/components/basic_table/index.js +8 -1
  112. package/lib/components/basic_table/pagination_bar.js +19 -4
  113. package/lib/components/basic_table/pagination_bar.styles.js +26 -0
  114. package/lib/components/basic_table/panel.styles.js +20 -0
  115. package/lib/components/basic_table/use_panel_props.js +33 -0
  116. package/lib/components/button/button_display/_button_display_content.js +1 -1
  117. package/lib/components/button/button_empty/button_empty.js +1 -1
  118. package/lib/components/button/button_icon/button_icon.js +1 -1
  119. package/lib/components/call_out/call_out.js +1 -1
  120. package/lib/components/card/card.js +1 -1
  121. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  122. package/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
  123. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
  124. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  125. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
  126. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
  127. package/lib/components/comment_list/comment.js +2 -2
  128. package/lib/components/comment_list/comment_event.js +1 -1
  129. package/lib/components/comment_list/comment_list.js +2 -2
  130. package/lib/components/comment_list/comment_timeline.js +1 -1
  131. package/lib/components/context_menu/context_menu_item.js +1 -1
  132. package/lib/components/datagrid/body/cell/data_grid_cell.js +12 -12
  133. package/lib/components/datagrid/body/data_grid_body.js +7 -7
  134. package/lib/components/datagrid/body/data_grid_body_custom.js +7 -7
  135. package/lib/components/datagrid/body/data_grid_body_virtualized.js +7 -7
  136. package/lib/components/datagrid/body/header/data_grid_header_cell.js +6 -6
  137. package/lib/components/datagrid/controls/column_sorting.js +7 -7
  138. package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
  139. package/lib/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
  140. package/lib/components/datagrid/utils/in_memory.js +6 -6
  141. package/lib/components/date_picker/auto_refresh/refresh_interval.js +175 -229
  142. package/lib/components/date_picker/date_picker.js +2 -2
  143. package/lib/components/date_picker/date_picker_range.js +1 -1
  144. package/lib/components/empty_prompt/empty_prompt.js +1 -1
  145. package/lib/components/flyout/flyout.component.js +10 -6
  146. package/lib/components/flyout/flyout_menu.js +112 -21
  147. package/lib/components/flyout/flyout_menu.styles.js +2 -1
  148. package/lib/components/flyout/manager/actions.js +21 -1
  149. package/lib/components/flyout/manager/flyout_child.js +24 -2
  150. package/lib/components/flyout/manager/flyout_managed.js +41 -17
  151. package/lib/components/flyout/manager/hooks.js +6 -0
  152. package/lib/components/flyout/manager/index.js +12 -0
  153. package/lib/components/flyout/manager/reducer.js +31 -7
  154. package/lib/components/flyout/manager/selectors.js +9 -3
  155. package/lib/components/flyout/manager/store.js +34 -1
  156. package/lib/components/flyout/use_flyout_menu.js +2 -2
  157. package/lib/components/form/field_number/field_number.js +2 -2
  158. package/lib/components/form/field_text/field_text.js +2 -2
  159. package/lib/components/form/form_control_button/form_control_button.js +1 -1
  160. package/lib/components/form/form_control_layout/append_prepend/form_append_prepend.js +2 -2
  161. package/lib/components/form/form_control_layout/form_control_layout.js +2 -2
  162. package/lib/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  163. package/lib/components/form/form_control_layout/form_control_layout_icons.js +95 -145
  164. package/lib/components/form/text_area/text_area.js +2 -2
  165. package/lib/components/header/header_links/header_link.js +1 -1
  166. package/lib/components/header/header_links/header_links.js +1 -1
  167. package/lib/components/header/header_logo/header_logo.js +1 -1
  168. package/lib/components/header/header_section/header_section_item_button.js +1 -1
  169. package/lib/components/icon/assets/logo_vector_db.js +49 -0
  170. package/lib/components/icon/icon.js +1 -1
  171. package/lib/components/icon/icon.styles.js +3 -2
  172. package/lib/components/icon/icon_map.js +5 -0
  173. package/lib/components/icon/svgs/logo_vector_db.svg +5 -0
  174. package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -1
  175. package/lib/components/list_group/list_group.js +2 -2
  176. package/lib/components/list_group/list_group_item.js +2 -2
  177. package/lib/components/list_group/list_group_item_extra_action.js +1 -1
  178. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  179. package/lib/components/loading/loading_logo.js +1 -1
  180. package/lib/components/markdown_editor/markdown_editor.js +1 -1
  181. package/lib/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  182. package/lib/components/markdown_editor/markdown_editor_footer.js +1 -1
  183. package/lib/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  184. package/lib/components/notification_icon/assets/info_fill.js +41 -0
  185. package/lib/components/notification_icon/assets/warning_static.js +47 -0
  186. package/lib/components/notification_icon/notification_icon.js +93 -0
  187. package/lib/components/notification_icon/notification_icon.styles.js +28 -0
  188. package/lib/components/notification_icon/svgs/info_fill.svg +3 -0
  189. package/lib/components/notification_icon/svgs/warning_static.svg +5 -0
  190. package/lib/components/page/page_header/page_header_content.js +1 -1
  191. package/lib/components/pagination/pagination_button.js +1 -1
  192. package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
  193. package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
  194. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  195. package/lib/components/table/mobile/table_sort_mobile.js +71 -108
  196. package/lib/components/table/table_header_cell.js +1 -1
  197. package/lib/components/timeline/timeline_item_icon.js +1 -1
  198. package/lib/components/toast/global_toast_list.js +133 -7
  199. package/lib/components/toast/global_toast_list.styles.js +31 -8
  200. package/lib/components/toast/toast.js +245 -48
  201. package/lib/components/toast/toast.styles.js +32 -45
  202. package/lib/components/toast/toast_action.js +40 -0
  203. package/lib/components/toast/types.js +15 -0
  204. package/lib/components/tool_tip/icon_tip.js +1 -1
  205. package/lib/components/tool_tip/tool_tip.js +2 -2
  206. package/optimize/es/components/banner/banner.js +1 -2
  207. package/optimize/es/components/banner/banner.styles.js +1 -1
  208. package/optimize/es/components/basic_table/basic_table.js +18 -5
  209. package/optimize/es/components/basic_table/basic_table.styles.js +19 -1
  210. package/optimize/es/components/basic_table/index.js +2 -1
  211. package/optimize/es/components/basic_table/pagination_bar.js +19 -4
  212. package/optimize/es/components/basic_table/pagination_bar.styles.js +21 -0
  213. package/optimize/es/components/basic_table/panel.styles.js +14 -0
  214. package/optimize/es/components/basic_table/use_panel_props.js +28 -0
  215. package/optimize/es/components/date_picker/auto_refresh/refresh_interval.js +172 -196
  216. package/optimize/es/components/flyout/flyout.component.js +10 -6
  217. package/optimize/es/components/flyout/flyout_menu.js +89 -18
  218. package/optimize/es/components/flyout/flyout_menu.styles.js +2 -1
  219. package/optimize/es/components/flyout/manager/actions.js +20 -0
  220. package/optimize/es/components/flyout/manager/flyout_managed.js +42 -18
  221. package/optimize/es/components/flyout/manager/hooks.js +1 -1
  222. package/optimize/es/components/flyout/manager/index.js +2 -2
  223. package/optimize/es/components/flyout/manager/reducer.js +32 -8
  224. package/optimize/es/components/flyout/manager/selectors.js +8 -2
  225. package/optimize/es/components/flyout/manager/store.js +35 -2
  226. package/optimize/es/components/flyout/use_flyout_menu.js +2 -2
  227. package/optimize/es/components/form/form_control_layout/form_control_layout_icons.js +96 -115
  228. package/optimize/es/components/icon/assets/logo_vector_db.js +41 -0
  229. package/optimize/es/components/icon/icon.styles.js +3 -2
  230. package/optimize/es/components/icon/icon_map.js +3 -0
  231. package/optimize/es/components/notification_icon/assets/info_fill.js +33 -0
  232. package/optimize/es/components/notification_icon/assets/warning_static.js +39 -0
  233. package/optimize/es/components/notification_icon/notification_icon.js +77 -0
  234. package/optimize/es/components/notification_icon/notification_icon.styles.js +22 -0
  235. package/optimize/es/components/table/mobile/table_sort_mobile.js +59 -82
  236. package/optimize/es/components/toast/global_toast_list.js +31 -6
  237. package/optimize/es/components/toast/global_toast_list.styles.js +31 -7
  238. package/optimize/es/components/toast/toast.js +143 -47
  239. package/optimize/es/components/toast/toast.styles.js +35 -47
  240. package/optimize/es/components/toast/toast_action.js +33 -0
  241. package/optimize/es/components/toast/types.js +9 -0
  242. package/optimize/es/components/tool_tip/tool_tip.js +3 -3
  243. package/optimize/lib/components/banner/banner.js +1 -2
  244. package/optimize/lib/components/banner/banner.styles.js +1 -1
  245. package/optimize/lib/components/basic_table/basic_table.js +17 -4
  246. package/optimize/lib/components/basic_table/basic_table.styles.js +19 -1
  247. package/optimize/lib/components/basic_table/index.js +8 -1
  248. package/optimize/lib/components/basic_table/pagination_bar.js +19 -4
  249. package/optimize/lib/components/basic_table/pagination_bar.styles.js +26 -0
  250. package/optimize/lib/components/basic_table/panel.styles.js +20 -0
  251. package/optimize/lib/components/basic_table/use_panel_props.js +33 -0
  252. package/optimize/lib/components/date_picker/auto_refresh/refresh_interval.js +170 -194
  253. package/optimize/lib/components/flyout/flyout.component.js +10 -6
  254. package/optimize/lib/components/flyout/flyout_menu.js +88 -18
  255. package/optimize/lib/components/flyout/flyout_menu.styles.js +2 -1
  256. package/optimize/lib/components/flyout/manager/actions.js +21 -1
  257. package/optimize/lib/components/flyout/manager/flyout_managed.js +41 -17
  258. package/optimize/lib/components/flyout/manager/hooks.js +6 -0
  259. package/optimize/lib/components/flyout/manager/index.js +12 -0
  260. package/optimize/lib/components/flyout/manager/reducer.js +31 -7
  261. package/optimize/lib/components/flyout/manager/selectors.js +9 -3
  262. package/optimize/lib/components/flyout/manager/store.js +34 -1
  263. package/optimize/lib/components/flyout/use_flyout_menu.js +2 -2
  264. package/optimize/lib/components/form/form_control_layout/form_control_layout_icons.js +96 -117
  265. package/optimize/lib/components/icon/assets/logo_vector_db.js +49 -0
  266. package/optimize/lib/components/icon/icon.styles.js +3 -2
  267. package/optimize/lib/components/icon/icon_map.js +5 -0
  268. package/optimize/lib/components/icon/svgs/logo_vector_db.svg +5 -0
  269. package/optimize/lib/components/notification_icon/assets/info_fill.js +41 -0
  270. package/optimize/lib/components/notification_icon/assets/warning_static.js +47 -0
  271. package/optimize/lib/components/notification_icon/notification_icon.js +83 -0
  272. package/optimize/lib/components/notification_icon/notification_icon.styles.js +28 -0
  273. package/optimize/lib/components/notification_icon/svgs/info_fill.svg +3 -0
  274. package/optimize/lib/components/notification_icon/svgs/warning_static.svg +5 -0
  275. package/optimize/lib/components/table/mobile/table_sort_mobile.js +61 -83
  276. package/optimize/lib/components/toast/global_toast_list.js +31 -6
  277. package/optimize/lib/components/toast/global_toast_list.styles.js +30 -7
  278. package/optimize/lib/components/toast/toast.js +146 -47
  279. package/optimize/lib/components/toast/toast.styles.js +33 -45
  280. package/optimize/lib/components/toast/toast_action.js +39 -0
  281. package/optimize/lib/components/toast/types.js +15 -0
  282. package/optimize/lib/components/tool_tip/tool_tip.js +2 -2
  283. package/package.json +7 -5
  284. package/test-env/components/avatar/avatar.js +1 -1
  285. package/test-env/components/badge/badge.js +1 -1
  286. package/test-env/components/badge/beta_badge/beta_badge.js +1 -1
  287. package/test-env/components/banner/banner.js +1 -2
  288. package/test-env/components/banner/banner.styles.js +1 -1
  289. package/test-env/components/basic_table/basic_table.js +38 -8
  290. package/test-env/components/basic_table/basic_table.styles.js +19 -1
  291. package/test-env/components/basic_table/in_memory_table.js +21 -4
  292. package/test-env/components/basic_table/index.js +8 -1
  293. package/test-env/components/basic_table/pagination_bar.js +19 -4
  294. package/test-env/components/basic_table/pagination_bar.styles.js +26 -0
  295. package/test-env/components/basic_table/panel.styles.js +20 -0
  296. package/test-env/components/basic_table/use_panel_props.js +33 -0
  297. package/test-env/components/button/button_display/_button_display_content.js +1 -1
  298. package/test-env/components/button/button_empty/button_empty.js +1 -1
  299. package/test-env/components/button/button_icon/button_icon.js +1 -1
  300. package/test-env/components/call_out/call_out.js +1 -1
  301. package/test-env/components/card/card.js +1 -1
  302. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  303. package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
  304. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
  305. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  306. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
  307. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
  308. package/test-env/components/comment_list/comment.js +2 -2
  309. package/test-env/components/comment_list/comment_event.js +1 -1
  310. package/test-env/components/comment_list/comment_list.js +2 -2
  311. package/test-env/components/comment_list/comment_timeline.js +1 -1
  312. package/test-env/components/context_menu/context_menu_item.js +1 -1
  313. package/test-env/components/datagrid/body/cell/data_grid_cell.js +12 -12
  314. package/test-env/components/datagrid/body/data_grid_body.js +7 -7
  315. package/test-env/components/datagrid/body/data_grid_body_custom.js +7 -7
  316. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +7 -7
  317. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +6 -6
  318. package/test-env/components/datagrid/controls/column_sorting.js +7 -7
  319. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  320. package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
  321. package/test-env/components/datagrid/utils/in_memory.js +6 -6
  322. package/test-env/components/date_picker/auto_refresh/refresh_interval.js +170 -220
  323. package/test-env/components/date_picker/date_picker.js +2 -2
  324. package/test-env/components/date_picker/date_picker_range.js +1 -1
  325. package/test-env/components/empty_prompt/empty_prompt.js +1 -1
  326. package/test-env/components/flyout/flyout.component.js +10 -6
  327. package/test-env/components/flyout/flyout_menu.js +113 -21
  328. package/test-env/components/flyout/flyout_menu.styles.js +2 -1
  329. package/test-env/components/flyout/manager/actions.js +21 -1
  330. package/test-env/components/flyout/manager/flyout_child.js +24 -2
  331. package/test-env/components/flyout/manager/flyout_managed.js +41 -17
  332. package/test-env/components/flyout/manager/hooks.js +6 -0
  333. package/test-env/components/flyout/manager/index.js +12 -0
  334. package/test-env/components/flyout/manager/reducer.js +31 -7
  335. package/test-env/components/flyout/manager/selectors.js +9 -3
  336. package/test-env/components/flyout/manager/store.js +34 -1
  337. package/test-env/components/flyout/use_flyout_menu.js +2 -2
  338. package/test-env/components/form/field_number/field_number.js +2 -2
  339. package/test-env/components/form/field_text/field_text.js +2 -2
  340. package/test-env/components/form/form_control_button/form_control_button.js +1 -1
  341. package/test-env/components/form/form_control_layout/append_prepend/form_append_prepend.js +2 -2
  342. package/test-env/components/form/form_control_layout/form_control_layout.js +2 -2
  343. package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  344. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +95 -139
  345. package/test-env/components/form/text_area/text_area.js +2 -2
  346. package/test-env/components/header/header_links/header_link.js +1 -1
  347. package/test-env/components/header/header_links/header_links.js +1 -1
  348. package/test-env/components/header/header_logo/header_logo.js +1 -1
  349. package/test-env/components/header/header_section/header_section_item_button.js +1 -1
  350. package/test-env/components/icon/assets/logo_vector_db.js +49 -0
  351. package/test-env/components/icon/icon.styles.js +3 -2
  352. package/test-env/components/icon/icon_map.js +5 -0
  353. package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
  354. package/test-env/components/list_group/list_group.js +2 -2
  355. package/test-env/components/list_group/list_group_item.js +2 -2
  356. package/test-env/components/list_group/list_group_item_extra_action.js +1 -1
  357. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  358. package/test-env/components/loading/loading_logo.js +1 -1
  359. package/test-env/components/markdown_editor/markdown_editor.js +1 -1
  360. package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  361. package/test-env/components/markdown_editor/markdown_editor_footer.js +1 -1
  362. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  363. package/test-env/components/notification_icon/assets/info_fill.js +41 -0
  364. package/test-env/components/notification_icon/assets/warning_static.js +47 -0
  365. package/test-env/components/notification_icon/notification_icon.js +46 -0
  366. package/test-env/components/notification_icon/notification_icon.styles.js +28 -0
  367. package/test-env/components/page/page_header/page_header_content.js +1 -1
  368. package/test-env/components/pagination/pagination_button.js +1 -1
  369. package/test-env/components/selectable/selectable_list/selectable_list.js +1 -1
  370. package/test-env/components/selectable/selectable_list/selectable_list_item.js +1 -1
  371. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  372. package/test-env/components/table/mobile/table_sort_mobile.js +61 -98
  373. package/test-env/components/table/table_header_cell.js +1 -1
  374. package/test-env/components/timeline/timeline_item_icon.js +1 -1
  375. package/test-env/components/toast/global_toast_list.js +133 -7
  376. package/test-env/components/toast/global_toast_list.styles.js +30 -7
  377. package/test-env/components/toast/toast.js +243 -48
  378. package/test-env/components/toast/toast.styles.js +33 -45
  379. package/test-env/components/toast/toast_action.js +39 -0
  380. package/test-env/components/toast/types.js +15 -0
  381. package/test-env/components/tool_tip/icon_tip.js +1 -1
  382. package/test-env/components/tool_tip/tool_tip.js +2 -2
package/eui.d.ts CHANGED
@@ -6370,6 +6370,17 @@ declare module '@elastic/eui/src/components/icon/assets/logo_uptime' {
6370
6370
  export const icon: ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => React.JSX.Element;
6371
6371
  export {};
6372
6372
 
6373
+ }
6374
+ declare module '@elastic/eui/src/components/icon/assets/logo_vector_db' {
6375
+ import * as React from 'react';
6376
+ import type { SVGProps } from 'react';
6377
+ interface SVGRProps {
6378
+ title?: string;
6379
+ titleId?: string;
6380
+ }
6381
+ export const icon: ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => React.JSX.Element;
6382
+ export {};
6383
+
6373
6384
  }
6374
6385
  declare module '@elastic/eui/src/components/icon/assets/logo_vulnerability_management' {
6375
6386
  import * as React from 'react';
@@ -9280,6 +9291,7 @@ declare module '@elastic/eui/src/components/icon/icon_map' {
9280
9291
  logoSketch: () => Promise<typeof import ("@elastic/eui/src/components/icon/assets/logo_sketch")>;
9281
9292
  logoSlack: () => Promise<typeof import ("@elastic/eui/src/components/icon/assets/logo_slack")>;
9282
9293
  logoUptime: () => Promise<typeof import ("@elastic/eui/src/components/icon/assets/logo_uptime")>;
9294
+ logoVectorDB: () => Promise<typeof import ("@elastic/eui/src/components/icon/assets/logo_vector_db")>;
9283
9295
  logoVulnerabilityManagement: () => Promise<typeof import ("@elastic/eui/src/components/icon/assets/logo_vulnerability_management")>;
9284
9296
  logoWebhook: () => Promise<typeof import ("@elastic/eui/src/components/icon/assets/logo_webhook")>;
9285
9297
  logoWindows: () => Promise<typeof import ("@elastic/eui/src/components/icon/assets/logo_windows")>;
@@ -9586,7 +9598,7 @@ declare module '@elastic/eui/src/components/icon/named_colors' {
9586
9598
  declare module '@elastic/eui/src/components/icon/icon.styles' {
9587
9599
  import { UseEuiTheme } from '@elastic/eui/src/services';
9588
9600
  export const iconLoadingOpacity = 0.05;
9589
- export const euiIconStyles: ({ euiTheme }: UseEuiTheme) => {
9601
+ export const euiIconStyles: ({ euiTheme, colorMode }: UseEuiTheme) => {
9590
9602
  euiIcon: import("@emotion/react").SerializedStyles;
9591
9603
  primary: import("@emotion/react").SerializedStyles;
9592
9604
  accent: import("@emotion/react").SerializedStyles;
@@ -9623,7 +9635,7 @@ declare module '@elastic/eui/src/components/icon/icon' {
9623
9635
  import { WithEuiStylesMemoizerProps } from '@elastic/eui/src/services';
9624
9636
  export { COLORS } from '@elastic/eui/src/components/icon/named_colors';
9625
9637
  import { NamedColor } from '@elastic/eui/src/components/icon/named_colors';
9626
- export const TYPES: ("string" | "number" | "function" | "article" | "code" | "link" | "map" | "menu" | "search" | "section" | "table" | "filter" | "image" | "pattern" | "stop" | "text" | "at" | "key" | "error" | "warning" | "textHeading" | "scale" | "color" | "refresh" | "push" | "copy" | "cut" | "drag" | "pause" | "play" | "offline" | "online" | "storage" | "temperature" | "display" | "lineBreak" | "wordWrap" | "grid" | "empty" | "invert" | "ellipsis" | "crosshair" | "grab" | "help" | "move" | "spaces" | "dot" | "alert" | "document" | "list" | "presentation" | "email" | "annotation" | "mapping" | "container" | "logoElastic" | "accessibility" | "addDataApp" | "addToDashboard" | "advancedSettingsApp" | "agentApp" | "aggregate" | "alignBottom" | "alignBottomLeft" | "alignBottomRight" | "alignCenterHorizontal" | "alignCenterVertical" | "alignLeft" | "alignRight" | "alignTop" | "alignTopLeft" | "alignTopRight" | "analyzeEvent" | "anomalyChart" | "chartAnomaly" | "anomalySwimLane" | "apmApp" | "apmTrace" | "chartWaterfall" | "appSearchApp" | "apps" | "arrowDown" | "chevronSingleDown" | "arrowLeft" | "chevronSingleLeft" | "arrowRight" | "chevronSingleRight" | "arrowUp" | "chevronSingleUp" | "arrowStart" | "chevronLimitLeft" | "arrowEnd" | "chevronLimitRight" | "asterisk" | "archive" | "axisX" | "axisYLeft" | "axisYRight" | "auditbeatApp" | "backgroundTask" | "beaker" | "bell" | "bellSlash" | "beta" | "bolt" | "boxesHorizontal" | "boxesVertical" | "branch" | "briefcase" | "branchUser" | "broom" | "brush" | "bug" | "bulb" | "bullseye" | "calendar" | "canvasApp" | "casesApp" | "changePointDetection" | "chartChangePoint" | "chartArea" | "chartAreaStack" | "chartBarHorizontal" | "chartBarHorizontalStack" | "chartBarVertical" | "chartBarVerticalStack" | "chartGauge" | "chartHeatmap" | "chartLine" | "chartPie" | "chartTagCloud" | "chartThreshold" | "check" | "checkCircle" | "checkInCircleFilled" | "checkCircleFill" | "cheer" | "popper" | "classificationJob" | "clickLeft" | "clickRight" | "clock" | "clockCounter" | "clockControl" | "cloud" | "cloudDrizzle" | "cloudStormy" | "cloudSunny" | "cluster" | "codeApp" | "paintBucket" | "commandLine" | "comment" | "compare" | "compute" | "processor" | "console" | "consoleApp" | "continuityAbove" | "continuityAboveBelow" | "continuityBelow" | "continuityWithin" | "contrast" | "contrastHigh" | "contrastFill" | "controls" | "controlsHorizontal" | "controlsVertical" | "copyClipboard" | "crossProjectSearch" | "createAdvancedJob" | "createGenericJob" | "createGeoJob" | "createMultiMetricJob" | "createPopulationJob" | "createSingleMetricJob" | "cross" | "crossClusterReplicationApp" | "crossInCircle" | "crossCircle" | "crosshairs" | "currency" | "money" | "scissors" | "dashboardApp" | "dashedCircle" | "dataVisualizer" | "database" | "desktop" | "devToolsApp" | "diff" | "discoverApp" | "distributeHorizontal" | "distributeVertical" | "download" | "dragHorizontal" | "dragVertical" | "discuss" | "documentEdit" | "documentation" | "documents" | "dotInCircle" | "doubleArrowLeft" | "chevronDoubleLeft" | "doubleArrowRight" | "chevronDoubleRight" | "editorAlignCenter" | "textAlignCenter" | "editorAlignLeft" | "textAlignLeft" | "editorAlignRight" | "textAlignRight" | "editorBold" | "textBold" | "editorChecklist" | "listCheck" | "editorCodeBlock" | "editorComment" | "editorDistributeHorizontal" | "editorDistributeVertical" | "editorHeading" | "editorItalic" | "textItalic" | "editorItemAlignBottom" | "editorItemAlignCenter" | "editorItemAlignLeft" | "editorItemAlignMiddle" | "editorItemAlignRight" | "editorItemAlignTop" | "editorLink" | "editorOrderedList" | "listNumber" | "editorPositionBottomLeft" | "editorPositionBottomRight" | "editorPositionTopLeft" | "editorPositionTopRight" | "editorRedo" | "redo" | "editorStrike" | "textStrike" | "editorTable" | "editorUnderline" | "textUnderline" | "editorUndo" | "undo" | "editorUnorderedList" | "listBullet" | "mail" | "emsApp" | "endpoint" | "eql" | "query" | "eraser" | "errorFilled" | "errorFill" | "esqlVis" | "exit" | "logOut" | "expand" | "maximize" | "expandMini" | "export" | "exportAction" | "upload" | "external" | "eye" | "eyeClosed" | "eyeSlash" | "faceHappy" | "faceNeutral" | "faceSad" | "fieldStatistics" | "tableInfo" | "filebeatApp" | "filterExclude" | "filterIgnore" | "filterInclude" | "filterInCircle" | "flask" | "flag" | "fleetApp" | "fold" | "folder" | "folderClosed" | "folderClose" | "folderCheck" | "folderExclamation" | "folderOpen" | "folderOpened" | "frameNext" | "framePrevious" | "fullScreen" | "fullScreenExit" | "gear" | "gisApp" | "glasses" | "globe" | "grabHorizontal" | "grabOmnidirectional" | "gradient" | "graphApp" | "grokApp" | "heart" | "heartbeatApp" | "heatmap" | "home" | "hourglass" | "if" | "info" | "importAction" | "index" | "indexClose" | "indexEdit" | "indexFlush" | "indexManagementApp" | "indexMapping" | "indexOpen" | "indexPatternApp" | "indexRollupApp" | "indexRuntime" | "indexSettings" | "indexTemporary" | "tableTime" | "infinity" | "inputOutput" | "inspect" | "ip" | "keyboard" | "kqlField" | "queryField" | "kqlFunction" | "kqlOperand" | "queryOperand" | "kqlSelector" | "querySelector" | "kqlValue" | "queryValue" | "kubernetesNode" | "kubernetesPod" | "launch" | "rocket" | "layers" | "lensApp" | "lettering" | "lineBreakSlash" | "lineDash" | "lineDashed" | "lineDot" | "lineDotted" | "lineSolid" | "linkSlash" | "listAdd" | "lock" | "lockOpen" | "logPatternAnalysis" | "logRateAnalysis" | "logoAWS" | "logoAWSMono" | "logoAerospike" | "logoApache" | "logoAppSearch" | "logoAzure" | "logoAzureMono" | "logoBeats" | "logoBusinessAnalytics" | "logoCeph" | "logoCloud" | "logoCloudEnterprise" | "logoCode" | "logoCodesandbox" | "logoCouchbase" | "logoDocker" | "logoDropwizard" | "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" | "queue" | "machineLearningApp" | "magnet" | "magnify" | "magnifyExclamation" | "magnifyMinus" | "magnifyPlus" | "magnifyWithExclamation" | "magnifyWithMinus" | "magnifyWithPlus" | "managementApp" | "mapMarker" | "waypoint" | "megaphone" | "memory" | "menuDown" | "menuLeft" | "menuRight" | "menuUp" | "merge" | "metricbeatApp" | "metricsApp" | "minimize" | "minus" | "minusCircle" | "minusInCircle" | "minusInCircleFilled" | "minusInSquare" | "minusSquare" | "mobile" | "monitoringApp" | "moon" | "namespace" | "nested" | "newChat" | "node" | "vectorTriangle" | "notebookApp" | "wifiSlash" | "wifi" | "outlierDetectionJob" | "package" | "packetbeatApp" | "pageSelect" | "pagesSelect" | "palette" | "paperClip" | "partial" | "payment" | "pencil" | "percent" | "pin" | "pinFill" | "pinFilled" | "pipeBreaks" | "pipelineApp" | "pipeNoBreaks" | "pivot" | "playFilled" | "plugs" | "plus" | "plusCircle" | "plusInCircle" | "plusInCircleFilled" | "plusInSquare" | "plusSquare" | "popout" | "productRobot" | "productAgent" | "productCloudInfra" | "productDashboard" | "productDiscover" | "productML" | "productStreamsClassic" | "productStreamsWired" | "send" | "question" | "quote" | "radar" | "readOnly" | "recentlyViewedApp" | "regressionJob" | "reporter" | "reportingApp" | "return" | "returnKey" | "save" | "savedObjectsApp" | "searchProfilerApp" | "securityAnalyticsApp" | "securityApp" | "securitySignal" | "securitySignalDetected" | "securitySignalResolved" | "server" | "sessionViewer" | "shard" | "share" | "significantEvents" | "singleMetricViewer" | "snowflake" | "sortAscending" | "sortDescending" | "sortDown" | "sortLeft" | "sortRight" | "sortUp" | "sortable" | "spacesApp" | "sparkles" | "sqlApp" | "star" | "starEmpty" | "starEmptySpace" | "starFill" | "starFilled" | "starFillSpace" | "starFilledSpace" | "starMinusEmpty" | "starMinusFill" | "starMinusFilled" | "starPlusEmpty" | "starPlusFill" | "starPlusFilled" | "stats" | "stopFill" | "stopFilled" | "stopSlash" | "streamsClassic" | "streamsWired" | "submodule" | "sun" | "swatchInput" | "symlink" | "tableDensityCompact" | "tableDensityHigh" | "tableDensityExpanded" | "tableDensityLow" | "tableDensityNormal" | "tableOfContents" | "tag" | "tear" | "thermometer" | "thumbDown" | "thumbUp" | "timeline" | "timelineWithArrow" | "timelionApp" | "timeRefresh" | "refreshTime" | "timeslider" | "training" | "transitionBottomIn" | "transitionBottomOut" | "transitionLeftIn" | "transitionLeftOut" | "transitionTopIn" | "transitionTopOut" | "trash" | "unfold" | "unlink" | "upgradeAssistantApp" | "uptimeApp" | "user" | "userAvatar" | "users" | "usersRolesApp" | "unarchive" | "vector" | "vectorSquare" | "videoPlayer" | "visArea" | "visAreaStacked" | "visBarHorizontal" | "visBarHorizontalStacked" | "visBarVertical" | "visBarVerticalStacked" | "visGauge" | "visGoal" | "visLine" | "visMapCoordinate" | "visMapRegion" | "visMetric" | "chartMetric" | "visPie" | "visTable" | "visTagCloud" | "visText" | "visTimelion" | "visVega" | "visVisualBuilder" | "visualizeApp" | "vulnerabilityManagementApp" | "warningFilled" | "warningFill" | "watchesApp" | "web" | "wordWrapDisabled" | "workflowsApp" | "workflow" | "workplaceSearchApp" | "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" | "tokenDenseVector" | "tokenVectorSparse")[];
9638
+ export const TYPES: ("string" | "number" | "function" | "article" | "code" | "link" | "map" | "menu" | "search" | "section" | "table" | "filter" | "image" | "pattern" | "stop" | "text" | "at" | "key" | "error" | "warning" | "textHeading" | "scale" | "color" | "refresh" | "push" | "copy" | "cut" | "drag" | "pause" | "play" | "offline" | "online" | "storage" | "temperature" | "display" | "lineBreak" | "wordWrap" | "grid" | "empty" | "invert" | "ellipsis" | "crosshair" | "grab" | "help" | "move" | "spaces" | "dot" | "alert" | "document" | "list" | "presentation" | "email" | "annotation" | "mapping" | "container" | "logoElastic" | "logoVectorDB" | "accessibility" | "addDataApp" | "addToDashboard" | "advancedSettingsApp" | "agentApp" | "aggregate" | "alignBottom" | "alignBottomLeft" | "alignBottomRight" | "alignCenterHorizontal" | "alignCenterVertical" | "alignLeft" | "alignRight" | "alignTop" | "alignTopLeft" | "alignTopRight" | "analyzeEvent" | "anomalyChart" | "chartAnomaly" | "anomalySwimLane" | "apmApp" | "apmTrace" | "chartWaterfall" | "appSearchApp" | "apps" | "arrowDown" | "chevronSingleDown" | "arrowLeft" | "chevronSingleLeft" | "arrowRight" | "chevronSingleRight" | "arrowUp" | "chevronSingleUp" | "arrowStart" | "chevronLimitLeft" | "arrowEnd" | "chevronLimitRight" | "asterisk" | "archive" | "axisX" | "axisYLeft" | "axisYRight" | "auditbeatApp" | "backgroundTask" | "beaker" | "bell" | "bellSlash" | "beta" | "bolt" | "boxesHorizontal" | "boxesVertical" | "branch" | "briefcase" | "branchUser" | "broom" | "brush" | "bug" | "bulb" | "bullseye" | "calendar" | "canvasApp" | "casesApp" | "changePointDetection" | "chartChangePoint" | "chartArea" | "chartAreaStack" | "chartBarHorizontal" | "chartBarHorizontalStack" | "chartBarVertical" | "chartBarVerticalStack" | "chartGauge" | "chartHeatmap" | "chartLine" | "chartPie" | "chartTagCloud" | "chartThreshold" | "check" | "checkCircle" | "checkInCircleFilled" | "checkCircleFill" | "cheer" | "popper" | "classificationJob" | "clickLeft" | "clickRight" | "clock" | "clockCounter" | "clockControl" | "cloud" | "cloudDrizzle" | "cloudStormy" | "cloudSunny" | "cluster" | "codeApp" | "paintBucket" | "commandLine" | "comment" | "compare" | "compute" | "processor" | "console" | "consoleApp" | "continuityAbove" | "continuityAboveBelow" | "continuityBelow" | "continuityWithin" | "contrast" | "contrastHigh" | "contrastFill" | "controls" | "controlsHorizontal" | "controlsVertical" | "copyClipboard" | "crossProjectSearch" | "createAdvancedJob" | "createGenericJob" | "createGeoJob" | "createMultiMetricJob" | "createPopulationJob" | "createSingleMetricJob" | "cross" | "crossClusterReplicationApp" | "crossInCircle" | "crossCircle" | "crosshairs" | "currency" | "money" | "scissors" | "dashboardApp" | "dashedCircle" | "dataVisualizer" | "database" | "desktop" | "devToolsApp" | "diff" | "discoverApp" | "distributeHorizontal" | "distributeVertical" | "download" | "dragHorizontal" | "dragVertical" | "discuss" | "documentEdit" | "documentation" | "documents" | "dotInCircle" | "doubleArrowLeft" | "chevronDoubleLeft" | "doubleArrowRight" | "chevronDoubleRight" | "editorAlignCenter" | "textAlignCenter" | "editorAlignLeft" | "textAlignLeft" | "editorAlignRight" | "textAlignRight" | "editorBold" | "textBold" | "editorChecklist" | "listCheck" | "editorCodeBlock" | "editorComment" | "editorDistributeHorizontal" | "editorDistributeVertical" | "editorHeading" | "editorItalic" | "textItalic" | "editorItemAlignBottom" | "editorItemAlignCenter" | "editorItemAlignLeft" | "editorItemAlignMiddle" | "editorItemAlignRight" | "editorItemAlignTop" | "editorLink" | "editorOrderedList" | "listNumber" | "editorPositionBottomLeft" | "editorPositionBottomRight" | "editorPositionTopLeft" | "editorPositionTopRight" | "editorRedo" | "redo" | "editorStrike" | "textStrike" | "editorTable" | "editorUnderline" | "textUnderline" | "editorUndo" | "undo" | "editorUnorderedList" | "listBullet" | "mail" | "emsApp" | "endpoint" | "eql" | "query" | "eraser" | "errorFilled" | "errorFill" | "esqlVis" | "exit" | "logOut" | "expand" | "maximize" | "expandMini" | "export" | "exportAction" | "upload" | "external" | "eye" | "eyeClosed" | "eyeSlash" | "faceHappy" | "faceNeutral" | "faceSad" | "fieldStatistics" | "tableInfo" | "filebeatApp" | "filterExclude" | "filterIgnore" | "filterInclude" | "filterInCircle" | "flask" | "flag" | "fleetApp" | "fold" | "folder" | "folderClosed" | "folderClose" | "folderCheck" | "folderExclamation" | "folderOpen" | "folderOpened" | "frameNext" | "framePrevious" | "fullScreen" | "fullScreenExit" | "gear" | "gisApp" | "glasses" | "globe" | "grabHorizontal" | "grabOmnidirectional" | "gradient" | "graphApp" | "grokApp" | "heart" | "heartbeatApp" | "heatmap" | "home" | "hourglass" | "if" | "info" | "importAction" | "index" | "indexClose" | "indexEdit" | "indexFlush" | "indexManagementApp" | "indexMapping" | "indexOpen" | "indexPatternApp" | "indexRollupApp" | "indexRuntime" | "indexSettings" | "indexTemporary" | "tableTime" | "infinity" | "inputOutput" | "inspect" | "ip" | "keyboard" | "kqlField" | "queryField" | "kqlFunction" | "kqlOperand" | "queryOperand" | "kqlSelector" | "querySelector" | "kqlValue" | "queryValue" | "kubernetesNode" | "kubernetesPod" | "launch" | "rocket" | "layers" | "lensApp" | "lettering" | "lineBreakSlash" | "lineDash" | "lineDashed" | "lineDot" | "lineDotted" | "lineSolid" | "linkSlash" | "listAdd" | "lock" | "lockOpen" | "logPatternAnalysis" | "logRateAnalysis" | "logoAWS" | "logoAWSMono" | "logoAerospike" | "logoApache" | "logoAppSearch" | "logoAzure" | "logoAzureMono" | "logoBeats" | "logoBusinessAnalytics" | "logoCeph" | "logoCloud" | "logoCloudEnterprise" | "logoCode" | "logoCodesandbox" | "logoCouchbase" | "logoDocker" | "logoDropwizard" | "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" | "queue" | "machineLearningApp" | "magnet" | "magnify" | "magnifyExclamation" | "magnifyMinus" | "magnifyPlus" | "magnifyWithExclamation" | "magnifyWithMinus" | "magnifyWithPlus" | "managementApp" | "mapMarker" | "waypoint" | "megaphone" | "memory" | "menuDown" | "menuLeft" | "menuRight" | "menuUp" | "merge" | "metricbeatApp" | "metricsApp" | "minimize" | "minus" | "minusCircle" | "minusInCircle" | "minusInCircleFilled" | "minusInSquare" | "minusSquare" | "mobile" | "monitoringApp" | "moon" | "namespace" | "nested" | "newChat" | "node" | "vectorTriangle" | "notebookApp" | "wifiSlash" | "wifi" | "outlierDetectionJob" | "package" | "packetbeatApp" | "pageSelect" | "pagesSelect" | "palette" | "paperClip" | "partial" | "payment" | "pencil" | "percent" | "pin" | "pinFill" | "pinFilled" | "pipeBreaks" | "pipelineApp" | "pipeNoBreaks" | "pivot" | "playFilled" | "plugs" | "plus" | "plusCircle" | "plusInCircle" | "plusInCircleFilled" | "plusInSquare" | "plusSquare" | "popout" | "productRobot" | "productAgent" | "productCloudInfra" | "productDashboard" | "productDiscover" | "productML" | "productStreamsClassic" | "productStreamsWired" | "send" | "question" | "quote" | "radar" | "readOnly" | "recentlyViewedApp" | "regressionJob" | "reporter" | "reportingApp" | "return" | "returnKey" | "save" | "savedObjectsApp" | "searchProfilerApp" | "securityAnalyticsApp" | "securityApp" | "securitySignal" | "securitySignalDetected" | "securitySignalResolved" | "server" | "sessionViewer" | "shard" | "share" | "significantEvents" | "singleMetricViewer" | "snowflake" | "sortAscending" | "sortDescending" | "sortDown" | "sortLeft" | "sortRight" | "sortUp" | "sortable" | "spacesApp" | "sparkles" | "sqlApp" | "star" | "starEmpty" | "starEmptySpace" | "starFill" | "starFilled" | "starFillSpace" | "starFilledSpace" | "starMinusEmpty" | "starMinusFill" | "starMinusFilled" | "starPlusEmpty" | "starPlusFill" | "starPlusFilled" | "stats" | "stopFill" | "stopFilled" | "stopSlash" | "streamsClassic" | "streamsWired" | "submodule" | "sun" | "swatchInput" | "symlink" | "tableDensityCompact" | "tableDensityHigh" | "tableDensityExpanded" | "tableDensityLow" | "tableDensityNormal" | "tableOfContents" | "tag" | "tear" | "thermometer" | "thumbDown" | "thumbUp" | "timeline" | "timelineWithArrow" | "timelionApp" | "timeRefresh" | "refreshTime" | "timeslider" | "training" | "transitionBottomIn" | "transitionBottomOut" | "transitionLeftIn" | "transitionLeftOut" | "transitionTopIn" | "transitionTopOut" | "trash" | "unfold" | "unlink" | "upgradeAssistantApp" | "uptimeApp" | "user" | "userAvatar" | "users" | "usersRolesApp" | "unarchive" | "vector" | "vectorSquare" | "videoPlayer" | "visArea" | "visAreaStacked" | "visBarHorizontal" | "visBarHorizontalStacked" | "visBarVertical" | "visBarVerticalStacked" | "visGauge" | "visGoal" | "visLine" | "visMapCoordinate" | "visMapRegion" | "visMetric" | "chartMetric" | "visPie" | "visTable" | "visTagCloud" | "visText" | "visTimelion" | "visVega" | "visVisualBuilder" | "visualizeApp" | "vulnerabilityManagementApp" | "warningFilled" | "warningFill" | "watchesApp" | "web" | "wordWrapDisabled" | "workflowsApp" | "workflow" | "workplaceSearchApp" | "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" | "tokenDenseVector" | "tokenVectorSparse")[];
9627
9639
  export type EuiIconType = keyof typeof typeToPathMap;
9628
9640
  export type IconType = EuiIconType | string | ComponentType;
9629
9641
  export type IconColor = string | NamedColor;
@@ -11835,7 +11847,7 @@ declare module '@elastic/eui/src/components/form/form_control_layout/form_contro
11835
11847
 
11836
11848
  }
11837
11849
  declare module '@elastic/eui/src/components/form/form_control_layout/form_control_layout_icons' {
11838
- import React, { Component } from 'react';
11850
+ import React from 'react';
11839
11851
  import { DistributiveOmit } from '@elastic/eui/src/components/common';
11840
11852
  import { IconColor, IconType } from '@elastic/eui/src/components/icon';
11841
11853
  import { EuiFormControlLayoutClearButtonProps } from '@elastic/eui/src/components/form/form_control_layout/form_control_layout_clear_button';
@@ -11859,14 +11871,7 @@ declare module '@elastic/eui/src/components/form/form_control_layout/form_contro
11859
11871
  compressed?: boolean;
11860
11872
  isDisabled?: boolean;
11861
11873
  }
11862
- export class EuiFormControlLayoutIcons extends Component<EuiFormControlLayoutIconsProps> {
11863
- render(): React.JSX.Element;
11864
- renderCustomIcon(): React.JSX.Element | null;
11865
- renderDropdownIcon(): React.JSX.Element | null;
11866
- renderLoadingSpinner(): React.JSX.Element | null;
11867
- renderClearButton(): React.JSX.Element | null;
11868
- renderInvalidIcon(): React.JSX.Element | null;
11869
- }
11874
+ export const EuiFormControlLayoutIcons: ({ side, iconsPosition, compressed, isDisabled, icon, clear, isLoading, isInvalid, isDropdown, }: EuiFormControlLayoutIconsProps) => React.JSX.Element;
11870
11875
 
11871
11876
  }
11872
11877
  declare module '@elastic/eui/src/components/form/form_control_layout/_num_icons' {
@@ -16825,10 +16830,22 @@ declare module '@elastic/eui/src/components/table/table_pagination' {
16825
16830
  export { EuiTablePagination } from '@elastic/eui/src/components/table/table_pagination/table_pagination';
16826
16831
  export { useEuiTablePaginationDefaults, euiTablePaginationDefaults, } from '@elastic/eui/src/components/table/table_pagination/table_pagination_defaults';
16827
16832
 
16833
+ }
16834
+ declare module '@elastic/eui/src/components/basic_table/pagination_bar.styles' {
16835
+ import { UseEuiTheme } from '@elastic/eui/src/services';
16836
+ /**
16837
+ * @internal
16838
+ */
16839
+ export const euiBasicTablePaginationBarStyles: (theme: UseEuiTheme) => {
16840
+ root: import("@emotion/react").SerializedStyles;
16841
+ panelled: import("@emotion/react").SerializedStyles;
16842
+ };
16843
+
16828
16844
  }
16829
16845
  declare module '@elastic/eui/src/components/basic_table/pagination_bar' {
16830
16846
  import React from 'react';
16831
- import { ItemsPerPageChangeHandler, PageChangeHandler } from '@elastic/eui/src/components/table/table_pagination/table_pagination';
16847
+ import { EuiBreakpointSize } from '@elastic/eui/src/services';
16848
+ import type { ItemsPerPageChangeHandler, PageChangeHandler } from '@elastic/eui/src/components/table/table_pagination/table_pagination';
16832
16849
  export interface Pagination {
16833
16850
  /**
16834
16851
  * The current page (zero-based) index
@@ -16859,8 +16876,21 @@ declare module '@elastic/eui/src/components/basic_table/pagination_bar' {
16859
16876
  */
16860
16877
  showPerPageOptions?: boolean;
16861
16878
  }
16862
- export interface PaginationBarProps {
16879
+ /**
16880
+ * @internal
16881
+ */
16882
+ interface PaginationBarProps {
16863
16883
  pagination: Pagination;
16884
+ /**
16885
+ * Enable the panelled style.
16886
+ *
16887
+ * Panelled style adds contrast between the table navigation controls
16888
+ * and table content itself. It should be used in tables rendered outside
16889
+ * EUI containers like `<EuiPanel>` or `<EuiFlyout>`.
16890
+ * @default false
16891
+ */
16892
+ panelled?: boolean;
16893
+ responsiveBreakpoint?: EuiBreakpointSize | boolean;
16864
16894
  onPageSizeChange: ItemsPerPageChangeHandler;
16865
16895
  onPageChange: PageChangeHandler;
16866
16896
  /**
@@ -16869,7 +16899,13 @@ declare module '@elastic/eui/src/components/basic_table/pagination_bar' {
16869
16899
  'aria-controls'?: string;
16870
16900
  'aria-label'?: string;
16871
16901
  }
16872
- export const PaginationBar: ({ pagination, onPageSizeChange, onPageChange, "aria-controls": ariaControls, "aria-label": ariaLabel, }: PaginationBarProps) => React.JSX.Element;
16902
+ /**
16903
+ * An internal utility component that renders EuiTablePagination with
16904
+ * proper configuration and handles the `panelled` styles.
16905
+ * @internal
16906
+ */
16907
+ export const PaginationBar: ({ pagination, panelled, responsiveBreakpoint, onPageSizeChange, onPageChange, "aria-controls": ariaControls, "aria-label": ariaLabel, }: PaginationBarProps) => React.JSX.Element;
16908
+ export {};
16873
16909
 
16874
16910
  }
16875
16911
  declare module '@elastic/eui/src/components/basic_table/action_types' {
@@ -17353,7 +17389,7 @@ declare module '@elastic/eui/src/components/table/mobile/table_sort_mobile_item'
17353
17389
 
17354
17390
  }
17355
17391
  declare module '@elastic/eui/src/components/table/mobile/table_sort_mobile' {
17356
- import React, { Component, ReactNode, Key } from 'react';
17392
+ import React, { Key, ReactNode } from 'react';
17357
17393
  import { CommonProps } from '@elastic/eui/src/components/common';
17358
17394
  import { PopoverAnchorPosition } from '@elastic/eui/src/components/popover';
17359
17395
  interface ItemProps {
@@ -17367,21 +17403,10 @@ declare module '@elastic/eui/src/components/table/mobile/table_sort_mobile' {
17367
17403
  anchorPosition?: PopoverAnchorPosition;
17368
17404
  items?: ItemProps[];
17369
17405
  }
17370
- interface State {
17371
- isPopoverOpen: boolean;
17372
- }
17373
- export class EuiTableSortMobile extends Component<EuiTableSortMobileProps, State> {
17374
- state: {
17375
- isPopoverOpen: boolean;
17376
- };
17377
- onButtonClick: () => void;
17378
- closePopover: () => void;
17379
- euiTableSortMobileStyles: {
17380
- marginInlineStart: string;
17381
- label: string;
17382
- };
17383
- render(): React.JSX.Element;
17384
- }
17406
+ export const EuiTableSortMobile: {
17407
+ ({ className, anchorPosition, items, ...rest }: EuiTableSortMobileProps): React.JSX.Element;
17408
+ displayName: string;
17409
+ };
17385
17410
  export {};
17386
17411
 
17387
17412
  }
@@ -17504,948 +17529,1027 @@ declare module '@elastic/eui/src/components/table' {
17504
17529
  export { EUI_TABLE_CSS_CONTAINER_NAME } from '@elastic/eui/src/components/table/const';
17505
17530
 
17506
17531
  }
17507
- declare module '@elastic/eui/src/components/flyout/manager/const' {
17508
- /**
17509
- * Allowed values for `session` prop to control the way the session is managed for a flyout.
17510
- */
17511
- export const SESSION_START = "start";
17512
- export const SESSION_INHERIT = "inherit";
17513
- export const SESSION_NEVER = "never";
17514
- /**
17515
- * Data attribute applied to a managed flyout element to help identify it as a managed flyout.
17516
- */
17517
- export const PROPERTY_FLYOUT = "data-managed-flyout";
17518
- /**
17519
- * Data attribute indicating whether the flyout is the `main` or `child` flyout.
17520
- */
17521
- export const PROPERTY_LEVEL = "data-managed-flyout-level";
17522
- /**
17523
- * Data attribute representing how multiple flyouts are laid out
17524
- * (`side-by-side` or `stacked`).
17525
- */
17526
- export const PROPERTY_LAYOUT_MODE = "data-managed-flyout-layout-mode";
17527
- /** Stacked layout mode where child flyouts overlay on top of the main flyout. */
17528
- export const LAYOUT_MODE_STACKED = "stacked";
17529
- /** Side-by-side layout mode where child flyouts render adjacent to the main flyout. */
17530
- export const LAYOUT_MODE_SIDE_BY_SIDE = "side-by-side";
17531
- /** The primary (parent) flyout in a session. */
17532
- export const LEVEL_MAIN = "main";
17533
- /** The secondary (child) flyout spawned by the main flyout. */
17534
- export const LEVEL_CHILD = "child";
17535
- /** Flyout is mounting and playing its opening animation. */
17536
- export const STAGE_OPENING = "opening";
17537
- /** Flyout is fully visible and interactive. */
17538
- export const STAGE_ACTIVE = "active";
17539
- /** Flyout is unmounted or not currently visible/interactable. */
17540
- export const STAGE_INACTIVE = "inactive";
17541
- /** Main flyout is transitioning behind an active session flyout. */
17542
- export const STAGE_BACKGROUNDING = "backgrounding";
17543
- /** Main flyout is backgrounded behind an active session flyout. */
17544
- export const STAGE_BACKGROUNDED = "backgrounded";
17545
- /** Flyout is returning to the foreground from a backgrounded state. */
17546
- export const STAGE_RETURNING = "returning";
17547
- /** Flyout is playing its closing animation. */
17548
- export const STAGE_CLOSING = "closing";
17532
+ declare module '@elastic/eui/src/components/list_group/list_group_item_extra_action.styles' {
17533
+ import { UseEuiTheme } from '@elastic/eui/src/services';
17534
+ export const euiListGroupItemExtraActionStyles: ({ euiTheme, }: UseEuiTheme) => {
17535
+ euiListGroupItemExtraAction: import("@emotion/react").SerializedStyles;
17536
+ hoverStyles: import("@emotion/react").SerializedStyles;
17537
+ alwaysShow: import("@emotion/react").SerializedStyles;
17538
+ };
17549
17539
 
17550
17540
  }
17551
- declare module '@elastic/eui/src/components/flyout/manager/types' {
17552
- import type { IconType } from '@elastic/eui/src/components/icon';
17553
- import type { Action } from '@elastic/eui/src/components/flyout/manager/actions';
17554
- import { STAGE_CLOSING, STAGE_OPENING, STAGE_ACTIVE, STAGE_INACTIVE, STAGE_BACKGROUNDING, STAGE_BACKGROUNDED, STAGE_RETURNING, LAYOUT_MODE_SIDE_BY_SIDE, LAYOUT_MODE_STACKED, LEVEL_CHILD, LEVEL_MAIN } from '@elastic/eui/src/components/flyout/manager/const';
17555
- export type EuiFlyoutLayoutMode = typeof LAYOUT_MODE_STACKED | typeof LAYOUT_MODE_SIDE_BY_SIDE;
17556
- export type EuiFlyoutLevel = typeof LEVEL_MAIN | typeof LEVEL_CHILD;
17557
- export type EuiFlyoutActivityStage = typeof STAGE_OPENING | typeof STAGE_ACTIVE | typeof STAGE_INACTIVE | typeof STAGE_BACKGROUNDING | typeof STAGE_BACKGROUNDED | typeof STAGE_RETURNING | typeof STAGE_CLOSING;
17558
- export interface EuiManagedFlyoutState {
17559
- flyoutId: string;
17560
- level: EuiFlyoutLevel;
17561
- width?: number;
17562
- size?: string;
17563
- minWidth?: number;
17564
- activityStage?: EuiFlyoutActivityStage;
17565
- }
17566
- /** Entry for a child flyout in session history. */
17567
- export interface ChildHistoryEntry {
17568
- flyoutId: string;
17569
- title: string;
17570
- iconType?: IconType;
17571
- }
17572
- export interface FlyoutSession {
17573
- /** ID of the main flyout for this session */
17574
- mainFlyoutId: string;
17575
- /** ID of the child flyout for this session */
17576
- childFlyoutId: string | null;
17577
- /** Title of the main flyout in this session */
17578
- title: string;
17579
- /** Optional icon for this session when shown in history popover */
17541
+ declare module '@elastic/eui/src/components/list_group/list_group_item_extra_action' {
17542
+ import { FunctionComponent } from 'react';
17543
+ import { EuiButtonIconPropsForButton } from '@elastic/eui/src/components/button';
17544
+ export type EuiListGroupItemExtraActionProps = {
17545
+ alwaysShow?: boolean;
17546
+ } & EuiButtonIconPropsForButton;
17547
+ type _FromEuiListGroupItem = {
17548
+ parentIsDisabled?: boolean;
17549
+ };
17550
+ export const EuiListGroupItemExtraAction: FunctionComponent<EuiListGroupItemExtraActionProps & _FromEuiListGroupItem>;
17551
+ export {};
17552
+
17553
+ }
17554
+ declare module '@elastic/eui/src/components/list_group/list_group_item.styles' {
17555
+ import { UseEuiTheme } from '@elastic/eui/src/services';
17556
+ export const euiListGroupItemStyles: (euiThemeContext: UseEuiTheme) => {
17557
+ euiListGroupItem: import("@emotion/react").SerializedStyles;
17558
+ euiListGroupItem__inner: import("@emotion/react").SerializedStyles;
17559
+ primary: import("@emotion/react").SerializedStyles;
17560
+ text: import("@emotion/react").SerializedStyles;
17561
+ subdued: import("@emotion/react").SerializedStyles;
17562
+ };
17563
+ export const euiListGroupItemTooltipStyles: {
17564
+ euiListGroupItem__tooltip: import("@emotion/react").SerializedStyles;
17565
+ };
17566
+
17567
+ }
17568
+ declare module '@elastic/eui/src/components/list_group/list_group_item' {
17569
+ import React, { HTMLAttributes, AnchorHTMLAttributes, ButtonHTMLAttributes, ReactNode, ReactElement, MouseEventHandler, FunctionComponent } from 'react';
17570
+ import { EuiDisabledProps } from '@elastic/eui/src/services';
17571
+ import { ExclusiveUnion, CommonProps } from '@elastic/eui/src/components/common';
17572
+ import { IconType, EuiIconProps } from '@elastic/eui/src/components/icon';
17573
+ import { EuiToolTipProps } from '@elastic/eui/src/components/tool_tip';
17574
+ import { EuiListGroupItemExtraActionProps } from '@elastic/eui/src/components/list_group/list_group_item_extra_action';
17575
+ export const COLORS: readonly ["primary", "text", "subdued"];
17576
+ export type EuiListGroupItemColor = (typeof COLORS)[number];
17577
+ export type EuiListGroupItemProps = CommonProps & Omit<ExclusiveUnion<ExclusiveUnion<ButtonHTMLAttributes<HTMLButtonElement>, Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'href'>>, HTMLAttributes<HTMLSpanElement>>, 'onClick' | 'color' | 'target' | 'rel'> & EuiDisabledProps & {
17578
+ /**
17579
+ * By default the item will get the color `text`.
17580
+ * You can customize the color of the item by passing a color name.
17581
+ * @default 'text'
17582
+ */
17583
+ color?: EuiListGroupItemColor;
17584
+ /**
17585
+ * Content to be displayed in the list item
17586
+ */
17587
+ label: ReactNode;
17588
+ /**
17589
+ * Apply styles indicating an item is active
17590
+ */
17591
+ isActive?: boolean;
17592
+ /**
17593
+ * Make the list item label a link.
17594
+ * While permitted, `href` and `onClick` should not be used together in most cases and may create problems.
17595
+ */
17596
+ href?: string;
17597
+ rel?: string;
17598
+ target?: string;
17599
+ /**
17600
+ * Set to true to show an icon indicating that it is an external link;
17601
+ * Defaults to true if `target="_blank"`
17602
+ */
17603
+ external?: boolean;
17604
+ /**
17605
+ * Adds `EuiIcon` of `EuiIcon.type`
17606
+ */
17580
17607
  iconType?: IconType;
17581
- /** z-index value to be used by the flyout session */
17582
- zIndex: number;
17583
- /** Title of the current child flyout. */
17584
- childTitle?: string;
17585
- /** Icon of the current child flyout. */
17586
- childIconType?: IconType;
17587
- /** Stack of child flyouts we navigated away from. */
17588
- childHistory: ChildHistoryEntry[];
17589
- /** Key that scopes this session's history; same Symbol reference = same history group. Always set (from action or Symbol()). */
17590
- historyKey: symbol;
17591
- }
17592
- export interface PushPaddingOffsets {
17593
- /** Push padding applied to the left side (in pixels) */
17594
- left: number;
17595
- /** Push padding applied to the right side (in pixels) */
17596
- right: number;
17597
- }
17598
- export interface EuiFlyoutManagerState {
17599
- sessions: FlyoutSession[];
17600
- flyouts: EuiManagedFlyoutState[];
17601
- layoutMode: EuiFlyoutLayoutMode;
17602
- /** Active push padding offsets (updated by active push flyouts) */
17603
- pushPadding?: PushPaddingOffsets;
17604
- currentZIndex: number;
17605
- unmanagedFlyouts: string[];
17606
- /** The container element that flyouts are positioned relative to (if any). */
17607
- containerElement?: HTMLElement | null;
17608
17608
  /**
17609
- * Reference width used for layout and resize clamping (container or viewport).
17610
- * Set by the layout mode hook so flyouts use the same value for consistent clamping.
17609
+ * Further extend the props applied to EuiIcon
17611
17610
  */
17612
- referenceWidth?: number;
17613
- }
17614
- /**
17615
- * Public API surface provided through React context.
17616
- * Kept intentionally decoupled from action types to avoid module cycles.
17617
- */
17618
- export interface FlyoutManagerApi {
17619
- state: EuiFlyoutManagerState;
17620
- dispatch: (action: Action) => void;
17621
- addFlyout: (flyoutId: string, title: string, level?: EuiFlyoutLevel, size?: string, historyKey?: symbol, iconType?: IconType, minWidth?: number) => void;
17622
- closeFlyout: (flyoutId: string) => void;
17623
- closeAllFlyouts: () => void;
17624
- setActiveFlyout: (flyoutId: string | null) => void;
17625
- setFlyoutWidth: (flyoutId: string, width: number) => void;
17626
- setPushPadding: (side: 'left' | 'right', width: number) => void;
17627
- setContainerElement: (element: HTMLElement | null) => void;
17628
- goBack: () => void;
17629
- goToFlyout: (flyoutId: string, level?: EuiFlyoutLevel) => void;
17630
- addUnmanagedFlyout: (flyoutId: string) => void;
17631
- closeUnmanagedFlyout: (flyoutId: string) => void;
17632
- historyItems: Array<{
17633
- title: string;
17634
- iconType?: IconType;
17635
- onClick: () => void;
17636
- }>;
17637
- }
17638
-
17639
- }
17640
- declare module '@elastic/eui/src/components/flyout/manager/actions' {
17641
- import type { IconType } from '@elastic/eui/src/components/icon';
17642
- import { EuiFlyoutActivityStage, EuiFlyoutLevel, EuiFlyoutLayoutMode } from '@elastic/eui/src/components/flyout/manager/types'; const PREFIX: "eui/flyoutManager";
17643
- interface BaseAction {
17644
- type: `${typeof PREFIX}/${string}`;
17645
- }
17646
- /** Dispatched when a flyout registers itself with the manager. */
17647
- export const ACTION_ADD: "eui/flyoutManager/add";
17648
- /** Dispatched to remove a flyout from the manager (usually on close/unmount). */
17649
- export const ACTION_CLOSE: "eui/flyoutManager/close";
17650
- /** Dispatched to remove all flyouts from the manager. */
17651
- export const ACTION_CLOSE_ALL: "eui/flyoutManager/closeAll";
17652
- /** Dispatched to set which flyout is currently active within the session. */
17653
- export const ACTION_SET_ACTIVE: "eui/flyoutManager/setActive";
17654
- /** Dispatched when an active flyout's pixel width changes (for responsive layout). */
17655
- export const ACTION_SET_WIDTH: "eui/flyoutManager/setWidth";
17656
- /** Dispatched to switch layout mode between `side-by-side` and `stacked`. */
17657
- export const ACTION_SET_LAYOUT_MODE: "eui/flyoutManager/setLayoutMode";
17658
- /** Dispatched to update a flyout's activity stage (e.g., opening -> active). */
17659
- export const ACTION_SET_ACTIVITY_STAGE: "eui/flyoutManager/setActivityStage";
17660
- /** Dispatched to go back one session (remove current session). */
17661
- export const ACTION_GO_BACK: "eui/flyoutManager/goBack";
17662
- /** Dispatched to navigate to a specific flyout (remove all sessions after it). */
17663
- export const ACTION_GO_TO_FLYOUT: "eui/flyoutManager/goToFlyout";
17664
- /** Dispatched to set push padding offset for a side. */
17665
- export const ACTION_SET_PUSH_PADDING: "eui/flyoutManager/setPushPadding";
17666
- /** Dispatched to set the container element for container-relative flyouts. */
17667
- export const ACTION_SET_CONTAINER_ELEMENT: "eui/flyoutManager/setContainerElement";
17668
- /** Dispatched to set the reference width used for layout and resize clamping. */
17669
- export const ACTION_SET_REFERENCE_WIDTH: "eui/flyoutManager/setReferenceWidth";
17670
- export const ACTION_ADD_UNMANAGED_FLYOUT: "eui/flyoutManager/addUnmanagedFlyout";
17671
- export const ACTION_CLOSE_UNMANAGED_FLYOUT: "eui/flyoutManager/closeUnmanagedFlyout";
17672
- /**
17673
- * Add a flyout to manager state. The manager will create or update
17674
- * the current session depending on the `level` provided.
17675
- */
17676
- export interface AddFlyoutAction extends BaseAction {
17677
- type: typeof ACTION_ADD;
17678
- flyoutId: string;
17679
- title: string;
17680
- level: EuiFlyoutLevel;
17681
- size?: string;
17682
- historyKey?: symbol;
17683
- iconType?: IconType;
17684
- minWidth?: number;
17685
- }
17686
- /** Remove a flyout from manager state. Also updates the active session. */
17687
- export interface CloseFlyoutAction extends BaseAction {
17688
- type: typeof ACTION_CLOSE;
17689
- flyoutId: string;
17690
- }
17691
- /** Remove all flyouts from manager state. */
17692
- export interface CloseAllFlyoutsAction extends BaseAction {
17693
- type: typeof ACTION_CLOSE_ALL;
17694
- }
17695
- /** Set the active flyout within the current session (or clear with `null`). */
17696
- export interface SetActiveFlyoutAction extends BaseAction {
17697
- type: typeof ACTION_SET_ACTIVE;
17698
- flyoutId: string | null;
17699
- }
17700
- /** Update a flyout's measured width in pixels. */
17701
- export interface SetWidthAction extends BaseAction {
17702
- type: typeof ACTION_SET_WIDTH;
17703
- flyoutId: string;
17704
- width: number;
17705
- }
17706
- /** Change how flyouts are arranged: `side-by-side` or `stacked`. */
17707
- export interface SetLayoutModeAction extends BaseAction {
17708
- type: typeof ACTION_SET_LAYOUT_MODE;
17709
- layoutMode: EuiFlyoutLayoutMode;
17710
- }
17711
- /** Set a specific flyout's activity stage. */
17712
- export interface SetActivityStageAction extends BaseAction {
17713
- type: typeof ACTION_SET_ACTIVITY_STAGE;
17714
- flyoutId: string;
17715
- activityStage: EuiFlyoutActivityStage;
17716
- }
17717
- /** Go back one session (remove current session from stack). */
17718
- export interface GoBackAction extends BaseAction {
17719
- type: typeof ACTION_GO_BACK;
17720
- }
17721
- /** Navigate to a specific flyout (remove all sessions after it, or pop to child in history). */
17722
- export interface GoToFlyoutAction extends BaseAction {
17723
- type: typeof ACTION_GO_TO_FLYOUT;
17724
- flyoutId: string;
17725
- /** When 'child', find flyout in current session's childHistory and pop to it. When 'main' or omitted, find session by mainFlyoutId. */
17726
- level?: EuiFlyoutLevel;
17727
- }
17728
- /** Set push padding offset for a specific side. */
17729
- export interface SetPushPaddingAction extends BaseAction {
17730
- type: typeof ACTION_SET_PUSH_PADDING;
17731
- side: 'left' | 'right';
17732
- width: number;
17733
- }
17734
- export interface AddUnmanagedFlyoutAction extends BaseAction {
17735
- type: typeof ACTION_ADD_UNMANAGED_FLYOUT;
17736
- flyoutId: string;
17737
- }
17738
- export interface CloseUnmanagedFlyoutAction extends BaseAction {
17739
- type: typeof ACTION_CLOSE_UNMANAGED_FLYOUT;
17740
- flyoutId: string;
17741
- }
17742
- /** Set the container element for container-relative positioning. */
17743
- export interface SetContainerElementAction extends BaseAction {
17744
- type: typeof ACTION_SET_CONTAINER_ELEMENT;
17745
- element: HTMLElement | null;
17746
- }
17747
- /** Set the reference width for layout and resize clamping. */
17748
- export interface SetReferenceWidthAction extends BaseAction {
17749
- type: typeof ACTION_SET_REFERENCE_WIDTH;
17750
- width: number;
17751
- }
17752
- /** Union of all flyout manager actions. */
17753
- export type Action = AddFlyoutAction | CloseFlyoutAction | CloseAllFlyoutsAction | SetActiveFlyoutAction | SetWidthAction | SetLayoutModeAction | SetActivityStageAction | GoBackAction | GoToFlyoutAction | SetPushPaddingAction | AddUnmanagedFlyoutAction | CloseUnmanagedFlyoutAction | SetContainerElementAction | SetReferenceWidthAction;
17754
- /**
17755
- * Register a flyout with the manager.
17756
- * - `title` is used for the flyout menu.
17757
- * - `level` determines whether the flyout is `main` or `child`.
17758
- * - Optional `size` is the named EUI size (e.g. `s`, `m`, `l`).
17759
- * - Optional `historyKey` (Symbol) scopes history; only flyouts with the same reference share Back/history. Omit for a unique group per session.
17760
- * - Optional `iconType` is shown next to the session title in the history menu.
17761
- */
17762
- export const addFlyout: (flyoutId: string, title: string, level?: EuiFlyoutLevel, size?: string, historyKey?: symbol, iconType?: IconType, minWidth?: number) => AddFlyoutAction;
17763
- /** Unregister a flyout and update the session accordingly. */
17764
- export const closeFlyout: (flyoutId: string) => CloseFlyoutAction;
17765
- /** Unregister all flyouts. */
17766
- export const closeAllFlyouts: () => CloseAllFlyoutsAction;
17767
- /** Set or clear the active flyout for the current session. */
17768
- export const setActiveFlyout: (flyoutId: string | null) => SetActiveFlyoutAction;
17769
- /** Record a flyout's current width in pixels. */
17770
- export const setFlyoutWidth: (flyoutId: string, width: number) => SetWidthAction;
17771
- /** Switch layout mode between `side-by-side` and `stacked`. */
17772
- export const setLayoutMode: (layoutMode: EuiFlyoutLayoutMode) => SetLayoutModeAction;
17773
- /** Update a flyout's activity stage. */
17774
- export const setActivityStage: (flyoutId: string, activityStage: EuiFlyoutActivityStage) => SetActivityStageAction;
17775
- /** Go back one session (remove current session from stack). */
17776
- export const goBack: () => GoBackAction;
17777
- /** Navigate to a specific flyout (remove all sessions after it, or pop to child in history when level === 'child'). */
17778
- export const goToFlyout: (flyoutId: string, level?: EuiFlyoutLevel) => GoToFlyoutAction;
17779
- /** Set push padding offset for a specific side. */
17780
- export const setPushPadding: (side: "left" | "right", width: number) => SetPushPaddingAction;
17781
- /** Register an unmanaged flyout for z-index positioning purposes */
17782
- export const addUnmanagedFlyout: (flyoutId: string) => AddUnmanagedFlyoutAction;
17783
- /** Unregister an unmanaged flyout */
17784
- export const closeUnmanagedFlyout: (flyoutId: string) => CloseUnmanagedFlyoutAction;
17785
- /** Set the container element for container-relative flyout positioning. */
17786
- export const setContainerElement: (element: HTMLElement | null) => SetContainerElementAction;
17787
- /** Set the reference width for layout and resize clamping. */
17788
- export const setReferenceWidth: (width: number) => SetReferenceWidthAction;
17789
- export {};
17611
+ iconProps?: Omit<EuiIconProps, 'type'>;
17612
+ /**
17613
+ * Custom node to pass as the icon. Cannot be used in conjunction
17614
+ * with `iconType` and `iconProps`.
17615
+ */
17616
+ icon?: ReactElement;
17617
+ /**
17618
+ * Display tooltip on list item
17619
+ */
17620
+ showToolTip?: boolean;
17621
+ /**
17622
+ * An object of {@link EuiListGroupItemExtraAction} props.
17623
+ * Adds an `EuiButtonIcon` to the right side of the item; `iconType` is required;
17624
+ * pass `alwaysShow` if you don't want the default behavior of only showing on hover
17625
+ */
17626
+ extraAction?: EuiListGroupItemExtraActionProps;
17627
+ /**
17628
+ * Make the list item label a button.
17629
+ * While permitted, `href` and `onClick` should not be used together in most cases and may create problems.
17630
+ */
17631
+ onClick?: MouseEventHandler<HTMLButtonElement>;
17632
+ /**
17633
+ * Allow link text to wrap
17634
+ */
17635
+ wrapText?: boolean;
17636
+ /**
17637
+ * Pass-through ref reference specifically for targeting
17638
+ * instances where the item content is rendered as a `button`
17639
+ */
17640
+ buttonRef?: React.Ref<HTMLButtonElement>;
17641
+ /**
17642
+ * Text to be displayed in the tooltip when `showToolTip` is true.
17643
+ * By default the text will be same as the label text.
17644
+ */
17645
+ toolTipText?: string;
17646
+ /**
17647
+ * Allows customizing the tooltip shown when `showToolTip` is true.
17648
+ * Accepts any props that [EuiToolTip](/#/display/tooltip) accepts.
17649
+ */
17650
+ toolTipProps?: Partial<EuiToolTipProps>;
17651
+ };
17652
+ export const EuiListGroupItem: FunctionComponent<EuiListGroupItemProps>;
17790
17653
 
17791
17654
  }
17792
- declare module '@elastic/eui/src/components/flyout/manager/reducer' {
17793
- import { Action } from '@elastic/eui/src/components/flyout/manager/actions';
17794
- import { EuiFlyoutManagerState } from '@elastic/eui/src/components/flyout/manager/types';
17795
- /**
17796
- * Default flyout manager state used to initialize the reducer.
17797
- */
17798
- export const initialState: EuiFlyoutManagerState;
17799
- /**
17800
- * Reducer handling all flyout manager actions and state transitions.
17801
- */
17802
- export function flyoutManagerReducer(state: EuiFlyoutManagerState | undefined, action: Action): EuiFlyoutManagerState;
17655
+ declare module '@elastic/eui/src/components/list_group/list_group.styles' {
17656
+ import { UseEuiTheme } from '@elastic/eui/src/services';
17657
+ export const euiListGroupStyles: (euiThemeContext: UseEuiTheme) => {
17658
+ euiListGroup: import("@emotion/react").SerializedStyles;
17659
+ bordered: import("@emotion/react").SerializedStyles;
17660
+ maxWidthDefault: import("@emotion/react").SerializedStyles;
17661
+ };
17803
17662
 
17804
17663
  }
17805
- declare module '@elastic/eui/src/components/flyout/manager/store' {
17806
- import type { IconType } from '@elastic/eui/src/components/icon';
17807
- import type { EuiFlyoutLevel, EuiFlyoutManagerState, FlyoutSession } from '@elastic/eui/src/components/flyout/manager/types';
17808
- import type { Action } from '@elastic/eui/src/components/flyout/manager/actions';
17809
- type Listener = () => void;
17810
- /**
17811
- * Events emitted by the flyout manager store for external consumers.
17812
- */
17813
- export type FlyoutManagerEvent = {
17814
- type: 'CLOSE_SESSION';
17815
- session: FlyoutSession;
17664
+ declare module '@elastic/eui/src/components/list_group/list_group' {
17665
+ import { FunctionComponent, HTMLAttributes, CSSProperties } from 'react';
17666
+ import { CommonProps } from '@elastic/eui/src/components/common';
17667
+ import { EuiListGroupItemProps } from '@elastic/eui/src/components/list_group/list_group_item';
17668
+ export type EuiListGroupProps = CommonProps & Omit<HTMLAttributes<HTMLUListElement>, 'color'> & {
17669
+ /**
17670
+ * Add a border to the list container
17671
+ */
17672
+ bordered?: boolean;
17673
+ /**
17674
+ * Items to display in this group. See {@link EuiListGroupItem}
17675
+ */
17676
+ listItems?: EuiListGroupItemProps[];
17677
+ /**
17678
+ * Change the colors of all `listItems` at once
17679
+ * @default text
17680
+ */
17681
+ color?: EuiListGroupItemProps['color'];
17682
+ /**
17683
+ * Sets the max-width of the page.
17684
+ * Set to `true` to use the default size,
17685
+ * set to `false` to not restrict the width,
17686
+ * or set to a number/string for a custom CSS width/measurement.
17687
+ */
17688
+ maxWidth?: boolean | CSSProperties['maxWidth'];
17689
+ /**
17690
+ * Display tooltips on all list items
17691
+ */
17692
+ showToolTips?: boolean;
17693
+ /**
17694
+ * Allow link text to wrap vs truncated
17695
+ */
17696
+ wrapText?: boolean;
17697
+ ariaLabelledby?: string;
17816
17698
  };
17817
- type EventListener = (event: FlyoutManagerEvent) => void;
17818
- export interface FlyoutManagerStore {
17819
- getState: () => EuiFlyoutManagerState;
17820
- subscribe: (listener: Listener) => () => void;
17821
- subscribeToEvents: (listener: EventListener) => () => void;
17822
- dispatch: (action: Action) => void;
17823
- addFlyout: (flyoutId: string, title: string, level?: EuiFlyoutLevel, size?: string, historyKey?: symbol, iconType?: IconType, minWidth?: number) => void;
17824
- closeFlyout: (flyoutId: string) => void;
17825
- closeAllFlyouts: () => void;
17826
- setActiveFlyout: (flyoutId: string | null) => void;
17827
- setFlyoutWidth: (flyoutId: string, width: number) => void;
17828
- setPushPadding: (side: 'left' | 'right', width: number) => void;
17829
- setContainerElement: (element: HTMLElement | null) => void;
17830
- goBack: () => void;
17831
- goToFlyout: (flyoutId: string, level?: EuiFlyoutLevel) => void;
17832
- addUnmanagedFlyout: (flyoutId: string) => void;
17833
- closeUnmanagedFlyout: (flyoutId: string) => void;
17834
- historyItems: Array<{
17835
- title: string;
17836
- iconType?: IconType;
17837
- onClick: () => void;
17838
- }>;
17699
+ export const EuiListGroup: FunctionComponent<EuiListGroupProps>;
17700
+
17701
+ }
17702
+ declare module '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group.styles' {
17703
+ import { UseEuiTheme } from '@elastic/eui/src/services';
17704
+ export const euiPinnableListGroupItemExtraActionStyles: ({ euiTheme, }: UseEuiTheme) => {
17705
+ euiPinnableListGroup__itemExtraAction: import("@emotion/react").SerializedStyles;
17706
+ pinned: import("@emotion/react").SerializedStyles;
17707
+ };
17708
+
17709
+ }
17710
+ declare module '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group' {
17711
+ import { FunctionComponent } from 'react';
17712
+ import { CommonProps } from '@elastic/eui/src/components/common';
17713
+ import { EuiListGroupProps } from '@elastic/eui/src/components/list_group/list_group';
17714
+ import { EuiListGroupItemProps } from '@elastic/eui/src/components/list_group/list_group_item';
17715
+ export type EuiPinnableListGroupItemProps = EuiListGroupItemProps & {
17716
+ /**
17717
+ * Saves the pinned status and changes the visibility of the pin icon
17718
+ */
17719
+ pinned?: boolean;
17720
+ /**
17721
+ * Passing `onPinClick` to the full EuiPinnableListGroup, will make every item pinnable.
17722
+ * Set this property to `false` to turn off individual item pinnability
17723
+ */
17724
+ pinnable?: boolean;
17725
+ };
17726
+ export interface EuiPinnableListGroupProps extends CommonProps, EuiListGroupProps {
17727
+ /**
17728
+ * Extends `EuiListGroupItemProps`, at the very least, expecting a `label`.
17729
+ * See {@link EuiPinnableListGroupItemProps}
17730
+ */
17731
+ listItems: EuiPinnableListGroupItemProps[];
17732
+ /**
17733
+ * Shows the pin icon and calls this function on click.
17734
+ * Returns `item: EuiPinnableListGroupItemProps`
17735
+ */
17736
+ onPinClick: (item: EuiPinnableListGroupItemProps) => void;
17737
+ /**
17738
+ * The pin icon needs a title/aria-label for accessibility.
17739
+ * It is a function that passes the item back and must return a string `(item) => string`.
17740
+ * Default is `"Pin item"`
17741
+ */
17742
+ pinTitle?: (item: EuiPinnableListGroupItemProps) => string;
17743
+ /**
17744
+ * The unpin icon needs a title/aria-label for accessibility.
17745
+ * It is a function that passes the item back and must return a string `(item) => string`.
17746
+ * Default is `"Unpin item"`
17747
+ */
17748
+ unpinTitle?: (item: EuiPinnableListGroupItemProps) => string;
17839
17749
  }
17840
- /**
17841
- * Returns a singleton store instance shared across all React roots within the same JS context.
17842
- * Uses module-level singleton to ensure deduplication even if modules are loaded twice.
17843
- */
17844
- export function getFlyoutManagerStore(): FlyoutManagerStore;
17845
- /**
17846
- * For testing purposes - allows resetting the store
17847
- */
17848
- export function _resetFlyoutManagerStore(): void;
17849
- export {};
17750
+ export const EuiPinnableListGroup: FunctionComponent<EuiPinnableListGroupProps>;
17850
17751
 
17851
17752
  }
17852
- declare module '@elastic/eui/src/components/flyout/manager/selectors' {
17853
- export const useSession: (flyoutId?: string | null) => import ("@elastic/eui/src/components/flyout/manager/types").FlyoutSession | null;
17854
- /** True when any managed flyout session is currently active. */
17855
- export const useHasActiveSession: () => boolean;
17856
- /** True if the given `flyoutId` is the main or child flyout in the latest session. */
17857
- export const useIsFlyoutActive: (flyoutId: string) => boolean;
17858
- export const useFlyout: (flyoutId?: string | null) => import ("@elastic/eui/src/components/flyout/manager/types").EuiManagedFlyoutState | null;
17859
- export const useIsFlyoutRegistered: (flyoutId?: string | null) => boolean;
17860
- /** The most recent flyout session or `null` if none. */
17861
- export const useCurrentSession: () => import ("@elastic/eui/src/components/flyout/manager/types").FlyoutSession | null;
17862
- /** The registered state of the current session's main flyout, if present. */
17863
- export const useCurrentMainFlyout: () => import ("@elastic/eui/src/components/flyout/manager/types").EuiManagedFlyoutState | null;
17864
- /** The registered state of the current session's child flyout, if present. */
17865
- export const useCurrentChildFlyout: () => import ("@elastic/eui/src/components/flyout/manager/types").EuiManagedFlyoutState | null;
17866
- /** The measured width (px) of the specified flyout, or `null` if unknown. */
17867
- export const useFlyoutWidth: (flyoutId?: string | null) => number | undefined;
17868
- /** The configured minWidth (px) of the specified flyout, or `undefined` if not set. */
17869
- export const useFlyoutMinWidth: (flyoutId?: string | null) => number | undefined;
17870
- /** The configured size of the parent (main) flyout for a given child flyout ID. */
17871
- export const useParentFlyoutSize: (childFlyoutId: string) => string | undefined;
17872
- /** True if the provided `flyoutId` is the main flyout and it currently has a child. */
17873
- export const useHasChildFlyout: (flyoutId: string) => boolean;
17874
- /** Get the current push padding offsets from manager state. */
17875
- export const usePushPaddingOffsets: () => import ("@elastic/eui/src/components/flyout/manager/types").PushPaddingOffsets;
17876
- /** True if there's any active push padding (left or right side). */
17877
- export const useHasPushPadding: () => boolean;
17878
- /** Get the ref for the current flyout z-index to be used */
17879
- export const useCurrentFlyoutZIndexRef: () => import("react").MutableRefObject<number>;
17753
+ declare module '@elastic/eui/src/components/list_group/pinnable_list_group' {
17754
+ export type { EuiPinnableListGroupProps, EuiPinnableListGroupItemProps, } from '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group';
17755
+ export { EuiPinnableListGroup } from '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group';
17880
17756
 
17881
17757
  }
17882
- declare module '@elastic/eui/src/components/flyout/manager/context' {
17883
- import React from 'react';
17884
- /**
17885
- * React provider that marks descendants as being rendered inside
17886
- * an EUI managed flyout. Used by hooks/components to alter behavior
17887
- * (e.g., focus handling) when inside a managed flyout tree.
17888
- */
17889
- export const EuiFlyoutIsManagedProvider: ({ isManaged, children, }: {
17890
- isManaged: boolean;
17891
- children: React.ReactNode;
17892
- }) => React.JSX.Element;
17893
- /**
17894
- * Hook that returns `true` when called within an EUI managed flyout subtree.
17895
- */
17896
- export const useIsInManagedFlyout: () => boolean;
17758
+ declare module '@elastic/eui/src/components/list_group' {
17759
+ export type { EuiListGroupProps } from '@elastic/eui/src/components/list_group/list_group';
17760
+ export { EuiListGroup } from '@elastic/eui/src/components/list_group/list_group';
17761
+ export type { EuiListGroupItemProps } from '@elastic/eui/src/components/list_group/list_group_item';
17762
+ export type { EuiListGroupItemExtraActionProps } from '@elastic/eui/src/components/list_group/list_group_item_extra_action';
17763
+ export { EuiListGroupItem } from '@elastic/eui/src/components/list_group/list_group_item';
17764
+ export type { EuiPinnableListGroupProps, EuiPinnableListGroupItemProps, } from '@elastic/eui/src/components/list_group/pinnable_list_group';
17765
+ export { EuiPinnableListGroup } from '@elastic/eui/src/components/list_group/pinnable_list_group';
17897
17766
 
17898
17767
  }
17899
- declare module '@elastic/eui/src/components/flyout/manager/hooks' {
17900
- export { useIsFlyoutActive, useHasActiveSession, useCurrentSession, useCurrentMainFlyout, useCurrentChildFlyout, useFlyoutWidth, useParentFlyoutSize, useHasChildFlyout, usePushPaddingOffsets, useHasPushPadding, } from '@elastic/eui/src/components/flyout/manager/selectors';
17901
- export { useFlyoutLayoutMode } from '@elastic/eui/src/components/flyout/manager/layout_mode';
17902
- export { useIsInManagedFlyout } from '@elastic/eui/src/components/flyout/manager/context';
17903
- export type { EuiFlyoutActivityStage } from '@elastic/eui/src/components/flyout/manager/types';
17904
- /** Access the flyout manager context (state and actions). */
17905
- export const useFlyoutManager: () => import ("@elastic/eui/src/components/flyout/manager/types").FlyoutManagerApi | null;
17768
+ declare module '@elastic/eui/src/components/flyout/const' {
17769
+ import { EuiBreakpointSize } from '@elastic/eui/src/services';
17770
+ /** Allowed flyout render types. */
17771
+ export const FLYOUT_TYPES: readonly ["push", "overlay"];
17772
+ /** Type representing a supported flyout render type. */
17773
+ export type _EuiFlyoutType = (typeof FLYOUT_TYPES)[number];
17774
+ /** Allowed flyout attachment sides. */
17775
+ export const FLYOUT_SIDES: readonly ["left", "right"];
17776
+ /** Type representing a supported flyout side. */
17777
+ export type _EuiFlyoutSide = (typeof FLYOUT_SIDES)[number];
17778
+ /** Allowed named flyout sizes used by the manager. */
17779
+ export const FLYOUT_SIZES: readonly ["s", "m", "l", "fill"];
17780
+ /** Type representing a supported named flyout size. */
17781
+ export type EuiFlyoutSize = (typeof FLYOUT_SIZES)[number];
17782
+ /** Menu display mode: always render menu when flyoutMenuProps is provided. */
17783
+ export const MENU_DISPLAY_ALWAYS: "always";
17784
+ /** Menu display mode: only render menu when it has content (back button, history, title, or custom actions). */
17785
+ export const MENU_DISPLAY_AUTO: "auto";
17786
+ /** Allowed flyout menu display modes. */
17787
+ export const FLYOUT_MENU_DISPLAY_MODES: readonly ["always", "auto"];
17788
+ /** Type representing a supported flyout menu display mode. */
17789
+ export type EuiFlyoutMenuDisplayMode = (typeof FLYOUT_MENU_DISPLAY_MODES)[number];
17790
+ /** Allowed padding sizes for flyout content. */
17791
+ export const FLYOUT_PADDING_SIZES: readonly ["none", "s", "m", "l"];
17792
+ /** Type representing a supported flyout padding size. */
17793
+ export type _EuiFlyoutPaddingSize = (typeof FLYOUT_PADDING_SIZES)[number];
17794
+ /** Default minimum breakpoint at which push-type flyouts begin to push content. */
17795
+ export const DEFAULT_PUSH_MIN_BREAKPOINT: EuiBreakpointSize;
17796
+ /** Default flyout type when none is provided. */
17797
+ export const DEFAULT_TYPE: _EuiFlyoutType;
17798
+ /** Default side where flyouts anchor when none is provided. */
17799
+ export const DEFAULT_SIDE: _EuiFlyoutSide;
17800
+ /** Default named flyout size. */
17801
+ export const DEFAULT_SIZE: EuiFlyoutSize;
17802
+ /** Default padding size inside flyouts. */
17803
+ export const DEFAULT_PADDING_SIZE: _EuiFlyoutPaddingSize;
17804
+ /** Default flyout menu display mode. */
17805
+ export const DEFAULT_MENU_DISPLAY_MODE: EuiFlyoutMenuDisplayMode;
17906
17806
  /**
17907
- * Stable flyout ID utility. Uses the passed `id` if provided and not already registered,
17908
- * otherwise generates a deterministic ID for the component's lifetime.
17909
- * The ID remains stable across re-renders to maintain consistency in effects and other hooks.
17807
+ * Custom type checker for named flyout sizes since the prop
17808
+ * `size` can also be CSSProperties['width'] (string | number)
17910
17809
  */
17911
- export const useFlyoutId: (flyoutId?: string) => string;
17810
+ export function isEuiFlyoutSizeNamed(value: unknown): value is EuiFlyoutSize;
17912
17811
 
17913
17812
  }
17914
- declare module '@elastic/eui/src/components/flyout/manager/layout_mode' {
17915
- import { EuiFlyoutLayoutMode } from '@elastic/eui/src/components/flyout/manager/types';
17813
+ declare module '@elastic/eui/src/components/flyout/flyout.styles' {
17814
+ import { EuiFlyoutSize } from '@elastic/eui/src/components/flyout/const';
17815
+ import { UseEuiTheme } from '@elastic/eui/src/services';
17816
+ export const FLYOUT_BREAKPOINT: "m";
17817
+ export const euiFlyoutSlideInRight: import("@emotion/serialize").Keyframes;
17818
+ export const euiFlyoutSlideOutRight: import("@emotion/serialize").Keyframes;
17819
+ export const euiFlyoutSlideInLeft: import("@emotion/serialize").Keyframes;
17820
+ export const euiFlyoutSlideOutLeft: import("@emotion/serialize").Keyframes;
17916
17821
  /**
17917
- * Hook to handle responsive layout mode for managed flyouts.
17918
- * Decides whether to place flyouts side-by-side or stacked based on
17919
- * the reference width (the reference container's width, defaulting to
17920
- * document.body when not set) and flyout widths/sizes.
17822
+ * When a `container` reference element is provided, the flyout's position
17823
+ * and dimensions are constrained to the container's bounding rect via
17824
+ * inline styles computed in JS.
17921
17825
  */
17922
- export const useApplyFlyoutLayoutMode: () => void;
17826
+ export const euiFlyoutStyles: (euiThemeContext: UseEuiTheme) => {
17827
+ noMaxWidth: import("@emotion/react").SerializedStyles;
17828
+ right: import("@emotion/react").SerializedStyles;
17829
+ left: import("@emotion/react").SerializedStyles;
17830
+ overlay: {
17831
+ overlay: import("@emotion/react").SerializedStyles;
17832
+ left: import("@emotion/react").SerializedStyles;
17833
+ right: import("@emotion/react").SerializedStyles;
17834
+ };
17835
+ push: {
17836
+ push: import("@emotion/react").SerializedStyles;
17837
+ right: import("@emotion/react").SerializedStyles;
17838
+ left: import("@emotion/react").SerializedStyles;
17839
+ };
17840
+ noAnimation: import("@emotion/react").SerializedStyles;
17841
+ paddingSizes: {
17842
+ none: import("@emotion/react").SerializedStyles;
17843
+ s: import("@emotion/react").SerializedStyles;
17844
+ m: import("@emotion/react").SerializedStyles;
17845
+ l: import("@emotion/react").SerializedStyles;
17846
+ };
17847
+ s: import("@emotion/react").SerializedStyles;
17848
+ m: import("@emotion/react").SerializedStyles;
17849
+ l: import("@emotion/react").SerializedStyles;
17850
+ fill: import("@emotion/react").SerializedStyles;
17851
+ euiFlyout: import("@emotion/react").SerializedStyles;
17852
+ };
17923
17853
  /**
17924
- * Convert a flyout `size` value to a pixel width.
17925
- * When `referenceWidth` is provided, named sizes are calculated as a percentage
17926
- * of that width (container-relative). Otherwise falls back to `window.innerWidth`.
17854
+ * Applies a max-width constraint at the flyout breakpoint.
17927
17855
  */
17928
- export const getWidthFromSize: (size: string | number, referenceWidth?: number) => number;
17929
- /** Current layout mode for managed flyouts (`side-by-side` or `stacked`). */
17930
- export const useFlyoutLayoutMode: () => EuiFlyoutLayoutMode;
17931
-
17932
- }
17933
- declare module '@elastic/eui/src/components/flyout/manager/provider' {
17934
- import React from 'react';
17935
- import { FlyoutManagerApi } from '@elastic/eui/src/components/flyout/manager/types';
17856
+ export const maxedFlyoutWidth: (euiThemeContext: UseEuiTheme) => string;
17936
17857
  /**
17937
- * React context that exposes the Flyout Manager API (state + actions).
17858
+ * Composes the full set of named size styles (`s`, `m`, `l`, `fill`).
17859
+ *
17860
+ * Uses `%` units for widths. Media queries drive responsive breakpoints.
17861
+ *
17862
+ * When a child flyout is stacked on top of the parent, the parent flyout
17863
+ * size will match the child flyout size. The `s` and `m` sizes include
17864
+ * overrides for this stacked-child behavior.
17938
17865
  */
17939
- export const EuiFlyoutManagerContext: React.Context<FlyoutManagerApi | null>;
17866
+ export const composeFlyoutSizing: (euiThemeContext: UseEuiTheme) => {
17867
+ s: import("@emotion/react").SerializedStyles;
17868
+ m: import("@emotion/react").SerializedStyles;
17869
+ l: import("@emotion/react").SerializedStyles;
17870
+ fill: import("@emotion/react").SerializedStyles;
17871
+ };
17940
17872
  /**
17941
- * Provides the Flyout Manager API via context and runs layout-mode logic.
17873
+ * Composes all inline styles for a flyout based on its configuration.
17874
+ * Uses a CSS custom property (`--euiFlyoutMainWidth`) for synchronous
17875
+ * tracking of the main flyout width during resize drag, falling back to
17876
+ * the pixel value from manager state when the variable is not set.
17942
17877
  */
17943
- export const EuiFlyoutManager: React.FC<{
17944
- children: React.ReactNode;
17945
- }>;
17946
- /** Hook to access the Flyout Manager API from context. */
17947
- export const useFlyoutManager: () => FlyoutManagerApi | null;
17878
+ export const composeFlyoutInlineStyles: (size: EuiFlyoutSize | string | number, layoutMode: "side-by-side" | "stacked", siblingFlyoutId: string | null, siblingFlyoutWidth: number | null, maxWidth: boolean | number | string | undefined, zIndex?: number) => React.CSSProperties;
17948
17879
 
17949
17880
  }
17950
- declare module '@elastic/eui/src/components/list_group/list_group_item_extra_action.styles' {
17881
+ declare module '@elastic/eui/src/components/flyout/_flyout_close_button.styles' {
17951
17882
  import { UseEuiTheme } from '@elastic/eui/src/services';
17952
- export const euiListGroupItemExtraActionStyles: ({ euiTheme, }: UseEuiTheme) => {
17953
- euiListGroupItemExtraAction: import("@emotion/react").SerializedStyles;
17954
- hoverStyles: import("@emotion/react").SerializedStyles;
17955
- alwaysShow: import("@emotion/react").SerializedStyles;
17883
+ export const euiFlyoutCloseButtonStyles: (euiThemeContext: UseEuiTheme) => {
17884
+ euiFlyout__closeButton: import("@emotion/react").SerializedStyles;
17885
+ inside: import("@emotion/react").SerializedStyles;
17886
+ outside: import("@emotion/react").SerializedStyles;
17887
+ outsideSide: {
17888
+ right: import("@emotion/react").SerializedStyles;
17889
+ left: import("@emotion/react").SerializedStyles;
17890
+ };
17956
17891
  };
17957
17892
 
17958
17893
  }
17959
- declare module '@elastic/eui/src/components/list_group/list_group_item_extra_action' {
17894
+ declare module '@elastic/eui/src/components/flyout/_flyout_close_button' {
17960
17895
  import { FunctionComponent } from 'react';
17961
- import { EuiButtonIconPropsForButton } from '@elastic/eui/src/components/button';
17962
- export type EuiListGroupItemExtraActionProps = {
17963
- alwaysShow?: boolean;
17964
- } & EuiButtonIconPropsForButton;
17965
- type _FromEuiListGroupItem = {
17966
- parentIsDisabled?: boolean;
17967
- };
17968
- export const EuiListGroupItemExtraAction: FunctionComponent<EuiListGroupItemExtraActionProps & _FromEuiListGroupItem>;
17896
+ import type { EuiFlyoutProps } from '@elastic/eui/src/components/flyout/flyout';
17897
+ type EuiFlyoutCloseButtonProps = EuiFlyoutProps['closeButtonProps'] & Required<Pick<EuiFlyoutProps, 'closeButtonPosition' | 'onClose' | 'side'>>;
17898
+ export const EuiFlyoutCloseButton: FunctionComponent<EuiFlyoutCloseButtonProps>;
17969
17899
  export {};
17970
17900
 
17971
17901
  }
17972
- declare module '@elastic/eui/src/components/list_group/list_group_item.styles' {
17902
+ declare module '@elastic/eui/src/components/flyout/flyout_menu.styles' {
17973
17903
  import { UseEuiTheme } from '@elastic/eui/src/services';
17974
- export const euiListGroupItemStyles: (euiThemeContext: UseEuiTheme) => {
17975
- euiListGroupItem: import("@emotion/react").SerializedStyles;
17976
- euiListGroupItem__inner: import("@emotion/react").SerializedStyles;
17977
- primary: import("@emotion/react").SerializedStyles;
17978
- text: import("@emotion/react").SerializedStyles;
17979
- subdued: import("@emotion/react").SerializedStyles;
17980
- };
17981
- export const euiListGroupItemTooltipStyles: {
17982
- euiListGroupItem__tooltip: import("@emotion/react").SerializedStyles;
17904
+ export const euiFlyoutMenuStyles: (euiThemeContext: UseEuiTheme) => {
17905
+ euiFlyoutMenu__container: import("@emotion/react").SerializedStyles;
17906
+ euiFlyoutMenu__spacer: import("@emotion/react").SerializedStyles;
17907
+ euiFlyoutMenu__actions: import("@emotion/react").SerializedStyles;
17908
+ euiFlyoutMenu__hiddenTitle: import("@emotion/react").SerializedStyles;
17909
+ euiFlyoutMenu__paginationCounter: import("@emotion/react").SerializedStyles;
17983
17910
  };
17984
17911
 
17985
17912
  }
17986
- declare module '@elastic/eui/src/components/list_group/list_group_item' {
17987
- import React, { HTMLAttributes, AnchorHTMLAttributes, ButtonHTMLAttributes, ReactNode, ReactElement, MouseEventHandler, FunctionComponent } from 'react';
17988
- import { EuiDisabledProps } from '@elastic/eui/src/services';
17989
- import { ExclusiveUnion, CommonProps } from '@elastic/eui/src/components/common';
17990
- import { IconType, EuiIconProps } from '@elastic/eui/src/components/icon';
17991
- import { EuiToolTipProps } from '@elastic/eui/src/components/tool_tip';
17992
- import { EuiListGroupItemExtraActionProps } from '@elastic/eui/src/components/list_group/list_group_item_extra_action';
17993
- export const COLORS: readonly ["primary", "text", "subdued"];
17994
- export type EuiListGroupItemColor = (typeof COLORS)[number];
17995
- export type EuiListGroupItemProps = CommonProps & Omit<ExclusiveUnion<ExclusiveUnion<ButtonHTMLAttributes<HTMLButtonElement>, Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'href'>>, HTMLAttributes<HTMLSpanElement>>, 'onClick' | 'color' | 'target' | 'rel'> & EuiDisabledProps & {
17996
- /**
17997
- * By default the item will get the color `text`.
17998
- * You can customize the color of the item by passing a color name.
17999
- * @default 'text'
18000
- */
18001
- color?: EuiListGroupItemColor;
18002
- /**
18003
- * Content to be displayed in the list item
18004
- */
18005
- label: ReactNode;
18006
- /**
18007
- * Apply styles indicating an item is active
18008
- */
18009
- isActive?: boolean;
18010
- /**
18011
- * Make the list item label a link.
18012
- * While permitted, `href` and `onClick` should not be used together in most cases and may create problems.
18013
- */
18014
- href?: string;
18015
- rel?: string;
18016
- target?: string;
17913
+ declare module '@elastic/eui/src/components/flyout/flyout_menu_context' {
17914
+ import { EuiFlyoutProps } from '@elastic/eui/src/components/flyout/flyout';
17915
+ interface EuiFlyoutMenuContextProps {
17916
+ onClose?: EuiFlyoutProps['onClose'];
17917
+ }
17918
+ export const EuiFlyoutMenuContext: import("react").Context<EuiFlyoutMenuContextProps>;
17919
+ export {};
17920
+
17921
+ }
17922
+ declare module '@elastic/eui/src/components/flyout/types' {
17923
+ export type EuiFlyoutCloseEvent = MouseEvent | TouchEvent | KeyboardEvent;
17924
+ /**
17925
+ * Describes the source that triggered a flyout close. Passed to `onClose` via
17926
+ * the optional `meta` argument so consumers can react differently per source.
17927
+ *
17928
+ * - `close-button`: the default/X close button (base flyout and managed menu)
17929
+ * - `escape`: the Escape key
17930
+ * - `outside-click`: a click on the overlay mask or outside the flyout
17931
+ * - `navigation-back`: a managed flyout closed because the user pressed Back
17932
+ * - `navigation-cascade`: a managed flyout closed because a parent navigated
17933
+ * away or the main flyout closed (e.g. a tab switch)
17934
+ */
17935
+ export type EuiFlyoutCloseReason = 'close-button' | 'escape' | 'outside-click' | 'navigation-back' | 'navigation-cascade';
17936
+ /**
17937
+ * Optional metadata passed as the second argument to a flyout's `onClose`
17938
+ * callback, describing why the flyout closed.
17939
+ */
17940
+ export interface EuiFlyoutCloseMeta {
17941
+ reason: EuiFlyoutCloseReason;
17942
+ }
17943
+
17944
+ }
17945
+ declare module '@elastic/eui/src/components/flyout/flyout_menu' {
17946
+ import React, { FunctionComponent, HTMLAttributes } from 'react';
17947
+ import { EuiButtonProps } from '@elastic/eui/src/components/button';
17948
+ import { CommonProps, PropsForAnchor } from '@elastic/eui/src/components/common';
17949
+ import type { IconType } from '@elastic/eui/src/components/icon';
17950
+ type EuiFlyoutMenuBackButtonProps = Pick<PropsForAnchor<EuiButtonProps>, 'aria-label' | 'data-test-subj' | 'onClick'>;
17951
+ /**
17952
+ * History item for the flyout menu history popover
17953
+ */
17954
+ export interface EuiFlyoutHistoryItem {
18017
17955
  /**
18018
- * Set to true to show an icon indicating that it is an external link;
18019
- * Defaults to true if `target="_blank"`
17956
+ * Title for the history item
18020
17957
  */
18021
- external?: boolean;
17958
+ title: string;
18022
17959
  /**
18023
- * Adds `EuiIcon` of `EuiIcon.type`
17960
+ * An optional icon to display next to the session title in the history menu
18024
17961
  */
18025
17962
  iconType?: IconType;
18026
17963
  /**
18027
- * Further extend the props applied to EuiIcon
18028
- */
18029
- iconProps?: Omit<EuiIconProps, 'type'>;
18030
- /**
18031
- * Custom node to pass as the icon. Cannot be used in conjunction
18032
- * with `iconType` and `iconProps`.
18033
- */
18034
- icon?: ReactElement;
18035
- /**
18036
- * Display tooltip on list item
18037
- */
18038
- showToolTip?: boolean;
18039
- /**
18040
- * An object of {@link EuiListGroupItemExtraAction} props.
18041
- * Adds an `EuiButtonIcon` to the right side of the item; `iconType` is required;
18042
- * pass `alwaysShow` if you don't want the default behavior of only showing on hover
18043
- */
18044
- extraAction?: EuiListGroupItemExtraActionProps;
18045
- /**
18046
- * Make the list item label a button.
18047
- * While permitted, `href` and `onClick` should not be used together in most cases and may create problems.
18048
- */
18049
- onClick?: MouseEventHandler<HTMLButtonElement>;
18050
- /**
18051
- * Allow link text to wrap
18052
- */
18053
- wrapText?: boolean;
18054
- /**
18055
- * Pass-through ref reference specifically for targeting
18056
- * instances where the item content is rendered as a `button`
17964
+ * onClick handler for the history item
18057
17965
  */
18058
- buttonRef?: React.Ref<HTMLButtonElement>;
17966
+ onClick: () => void;
17967
+ }
17968
+ /**
17969
+ * Pagination configuration for the flyout menu
17970
+ */
17971
+ export interface EuiFlyoutMenuPagination {
18059
17972
  /**
18060
- * Text to be displayed in the tooltip when `showToolTip` is true.
18061
- * By default the text will be same as the label text.
17973
+ * Zero-based index of the currently displayed item
18062
17974
  */
18063
- toolTipText?: string;
17975
+ currentIndex: number;
18064
17976
  /**
18065
- * Allows customizing the tooltip shown when `showToolTip` is true.
18066
- * Accepts any props that [EuiToolTip](/#/display/tooltip) accepts.
18067
- */
18068
- toolTipProps?: Partial<EuiToolTipProps>;
18069
- };
18070
- export const EuiListGroupItem: FunctionComponent<EuiListGroupItemProps>;
18071
-
18072
- }
18073
- declare module '@elastic/eui/src/components/list_group/list_group.styles' {
18074
- import { UseEuiTheme } from '@elastic/eui/src/services';
18075
- export const euiListGroupStyles: (euiThemeContext: UseEuiTheme) => {
18076
- euiListGroup: import("@emotion/react").SerializedStyles;
18077
- bordered: import("@emotion/react").SerializedStyles;
18078
- maxWidthDefault: import("@emotion/react").SerializedStyles;
18079
- };
18080
-
18081
- }
18082
- declare module '@elastic/eui/src/components/list_group/list_group' {
18083
- import { FunctionComponent, HTMLAttributes, CSSProperties } from 'react';
18084
- import { CommonProps } from '@elastic/eui/src/components/common';
18085
- import { EuiListGroupItemProps } from '@elastic/eui/src/components/list_group/list_group_item';
18086
- export type EuiListGroupProps = CommonProps & Omit<HTMLAttributes<HTMLUListElement>, 'color'> & {
17977
+ * Total number of items
17978
+ */
17979
+ total: number;
18087
17980
  /**
18088
- * Add a border to the list container
17981
+ * Called when the user clicks the Previous button
18089
17982
  */
18090
- bordered?: boolean;
17983
+ onPrevious: () => void;
18091
17984
  /**
18092
- * Items to display in this group. See {@link EuiListGroupItem}
17985
+ * Called when the user clicks the Next button
18093
17986
  */
18094
- listItems?: EuiListGroupItemProps[];
17987
+ onNext: () => void;
17988
+ }
17989
+ /**
17990
+ * Custom action item for the flyout menu component
17991
+ */
17992
+ export interface EuiFlyoutMenuCustomAction {
18095
17993
  /**
18096
- * Change the colors of all `listItems` at once
18097
- * @default text
17994
+ * Icon type for the action button
18098
17995
  */
18099
- color?: EuiListGroupItemProps['color'];
17996
+ iconType: string;
18100
17997
  /**
18101
- * Sets the max-width of the page.
18102
- * Set to `true` to use the default size,
18103
- * set to `false` to not restrict the width,
18104
- * or set to a number/string for a custom CSS width/measurement.
17998
+ * onClick handler for the action button
18105
17999
  */
18106
- maxWidth?: boolean | CSSProperties['maxWidth'];
18000
+ onClick: () => void;
18107
18001
  /**
18108
- * Display tooltips on all list items
18002
+ * Aria label for the action button
18109
18003
  */
18110
- showToolTips?: boolean;
18004
+ 'aria-label': string;
18005
+ }
18006
+ /**
18007
+ * Props for EuiFlyoutMenu
18008
+ */
18009
+ export type EuiFlyoutMenuProps = CommonProps & HTMLAttributes<HTMLDivElement> & {
18111
18010
  /**
18112
- * Allow link text to wrap vs truncated
18011
+ * An id to use for the title element. Useful for setting aria-labelledby on the flyout.
18012
+ * Example:
18013
+ * ```jsx
18014
+ * <EuiFlyout
18015
+ * aria-labelledby="myMenuTitleId"
18016
+ * flyoutMenuProps={{ title: 'Menu title', titleId: 'myMenuTitleId' }
18017
+ * >
18018
+ * ...
18019
+ * </EuiFlyout>
18020
+ * ```
18113
18021
  */
18114
- wrapText?: boolean;
18115
- ariaLabelledby?: string;
18116
- };
18117
- export const EuiListGroup: FunctionComponent<EuiListGroupProps>;
18118
-
18119
- }
18120
- declare module '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group.styles' {
18121
- import { UseEuiTheme } from '@elastic/eui/src/services';
18122
- export const euiPinnableListGroupItemExtraActionStyles: ({ euiTheme, }: UseEuiTheme) => {
18123
- euiPinnableListGroup__itemExtraAction: import("@emotion/react").SerializedStyles;
18124
- pinned: import("@emotion/react").SerializedStyles;
18125
- };
18126
-
18127
- }
18128
- declare module '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group' {
18129
- import { FunctionComponent } from 'react';
18130
- import { CommonProps } from '@elastic/eui/src/components/common';
18131
- import { EuiListGroupProps } from '@elastic/eui/src/components/list_group/list_group';
18132
- import { EuiListGroupItemProps } from '@elastic/eui/src/components/list_group/list_group_item';
18133
- export type EuiPinnableListGroupItemProps = EuiListGroupItemProps & {
18022
+ titleId?: string;
18134
18023
  /**
18135
- * Saves the pinned status and changes the visibility of the pin icon
18024
+ * Title for the menu component. In a managed flyout context, the title is used to indicate the flyout session for history navigation.
18136
18025
  */
18137
- pinned?: boolean;
18026
+ title?: React.ReactNode;
18138
18027
  /**
18139
- * Passing `onPinClick` to the full EuiPinnableListGroup, will make every item pinnable.
18140
- * Set this property to `false` to turn off individual item pinnability
18028
+ * An optional icon to display next to the session title in the history menu
18141
18029
  */
18142
- pinnable?: boolean;
18143
- };
18144
- export interface EuiPinnableListGroupProps extends CommonProps, EuiListGroupProps {
18030
+ iconType?: IconType;
18145
18031
  /**
18146
- * Extends `EuiListGroupItemProps`, at the very least, expecting a `label`.
18147
- * See {@link EuiPinnableListGroupItemProps}
18032
+ * Hides the title in the `EuiFlyoutMenu`.
18033
+ * @default true
18034
+ * @deprecated Use `EuiFlyoutHeader` for visible titles instead.
18035
+ * `hideTitle` is still honored but may be removed in a future major version.
18148
18036
  */
18149
- listItems: EuiPinnableListGroupItemProps[];
18037
+ hideTitle?: boolean;
18150
18038
  /**
18151
- * Shows the pin icon and calls this function on click.
18152
- * Returns `item: EuiPinnableListGroupItemProps`
18039
+ * Hides the close button in the menu component
18040
+ * @default false
18153
18041
  */
18154
- onPinClick: (item: EuiPinnableListGroupItemProps) => void;
18042
+ hideCloseButton?: boolean;
18155
18043
  /**
18156
- * The pin icon needs a title/aria-label for accessibility.
18157
- * It is a function that passes the item back and must return a string `(item) => string`.
18158
- * Default is `"Pin item"`
18044
+ * Shows a back button in the menu component
18045
+ * @default false
18159
18046
  */
18160
- pinTitle?: (item: EuiPinnableListGroupItemProps) => string;
18047
+ showBackButton?: boolean;
18161
18048
  /**
18162
- * The unpin icon needs a title/aria-label for accessibility.
18163
- * It is a function that passes the item back and must return a string `(item) => string`.
18164
- * Default is `"Unpin item"`
18049
+ * Props to pass to the back button, such as `onClick` handler
18165
18050
  */
18166
- unpinTitle?: (item: EuiPinnableListGroupItemProps) => string;
18167
- }
18168
- export const EuiPinnableListGroup: FunctionComponent<EuiPinnableListGroupProps>;
18051
+ backButtonProps?: EuiFlyoutMenuBackButtonProps;
18052
+ /**
18053
+ * List of history items for the history popover
18054
+ */
18055
+ historyItems?: EuiFlyoutHistoryItem[];
18056
+ /**
18057
+ * List of custom action items for the menu component
18058
+ */
18059
+ customActions?: EuiFlyoutMenuCustomAction[];
18060
+ /**
18061
+ * Enables Prev/Next navigation controls and a position counter in the menu bar.
18062
+ * Pagination replaces back/history navigation in the left menu slot.
18063
+ */
18064
+ pagination?: EuiFlyoutMenuPagination;
18065
+ };
18066
+ /**
18067
+ * The component for the top menu bar inside a flyout. Since this is a private
18068
+ * component, rendering is controlled using the `flyoutMenuProps` prop on
18069
+ * `EuiFlyout`. In managed session flyouts, the Flyout Manager controls a back
18070
+ * button and history popover for navigating to different flyout sessions
18071
+ * within the managed context.
18072
+ *
18073
+ * @private
18074
+ */
18075
+ export const EuiFlyoutMenu: FunctionComponent<EuiFlyoutMenuProps>;
18076
+ export {};
18169
18077
 
18170
18078
  }
18171
- declare module '@elastic/eui/src/components/list_group/pinnable_list_group' {
18172
- export type { EuiPinnableListGroupProps, EuiPinnableListGroupItemProps, } from '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group';
18173
- export { EuiPinnableListGroup } from '@elastic/eui/src/components/list_group/pinnable_list_group/pinnable_list_group';
18079
+ declare module '@elastic/eui/src/components/flyout/manager/const' {
18080
+ /**
18081
+ * Allowed values for `session` prop to control the way the session is managed for a flyout.
18082
+ */
18083
+ export const SESSION_START = "start";
18084
+ export const SESSION_INHERIT = "inherit";
18085
+ export const SESSION_NEVER = "never";
18086
+ /**
18087
+ * Data attribute applied to a managed flyout element to help identify it as a managed flyout.
18088
+ */
18089
+ export const PROPERTY_FLYOUT = "data-managed-flyout";
18090
+ /**
18091
+ * Data attribute indicating whether the flyout is the `main` or `child` flyout.
18092
+ */
18093
+ export const PROPERTY_LEVEL = "data-managed-flyout-level";
18094
+ /**
18095
+ * Data attribute representing how multiple flyouts are laid out
18096
+ * (`side-by-side` or `stacked`).
18097
+ */
18098
+ export const PROPERTY_LAYOUT_MODE = "data-managed-flyout-layout-mode";
18099
+ /** Stacked layout mode where child flyouts overlay on top of the main flyout. */
18100
+ export const LAYOUT_MODE_STACKED = "stacked";
18101
+ /** Side-by-side layout mode where child flyouts render adjacent to the main flyout. */
18102
+ export const LAYOUT_MODE_SIDE_BY_SIDE = "side-by-side";
18103
+ /** The primary (parent) flyout in a session. */
18104
+ export const LEVEL_MAIN = "main";
18105
+ /** The secondary (child) flyout spawned by the main flyout. */
18106
+ export const LEVEL_CHILD = "child";
18107
+ /** Flyout is mounting and playing its opening animation. */
18108
+ export const STAGE_OPENING = "opening";
18109
+ /** Flyout is fully visible and interactive. */
18110
+ export const STAGE_ACTIVE = "active";
18111
+ /** Flyout is unmounted or not currently visible/interactable. */
18112
+ export const STAGE_INACTIVE = "inactive";
18113
+ /** Main flyout is transitioning behind an active session flyout. */
18114
+ export const STAGE_BACKGROUNDING = "backgrounding";
18115
+ /** Main flyout is backgrounded behind an active session flyout. */
18116
+ export const STAGE_BACKGROUNDED = "backgrounded";
18117
+ /** Flyout is returning to the foreground from a backgrounded state. */
18118
+ export const STAGE_RETURNING = "returning";
18119
+ /** Flyout is playing its closing animation. */
18120
+ export const STAGE_CLOSING = "closing";
18174
18121
 
18175
18122
  }
18176
- declare module '@elastic/eui/src/components/list_group' {
18177
- export type { EuiListGroupProps } from '@elastic/eui/src/components/list_group/list_group';
18178
- export { EuiListGroup } from '@elastic/eui/src/components/list_group/list_group';
18179
- export type { EuiListGroupItemProps } from '@elastic/eui/src/components/list_group/list_group_item';
18180
- export type { EuiListGroupItemExtraActionProps } from '@elastic/eui/src/components/list_group/list_group_item_extra_action';
18181
- export { EuiListGroupItem } from '@elastic/eui/src/components/list_group/list_group_item';
18182
- export type { EuiPinnableListGroupProps, EuiPinnableListGroupItemProps, } from '@elastic/eui/src/components/list_group/pinnable_list_group';
18183
- export { EuiPinnableListGroup } from '@elastic/eui/src/components/list_group/pinnable_list_group';
18123
+ declare module '@elastic/eui/src/components/flyout/manager/types' {
18124
+ import type { IconType } from '@elastic/eui/src/components/icon';
18125
+ import type { EuiFlyoutMenuPagination } from '@elastic/eui/src/components/flyout/flyout_menu';
18126
+ import type { Action } from '@elastic/eui/src/components/flyout/manager/actions';
18127
+ import { STAGE_CLOSING, STAGE_OPENING, STAGE_ACTIVE, STAGE_INACTIVE, STAGE_BACKGROUNDING, STAGE_BACKGROUNDED, STAGE_RETURNING, LAYOUT_MODE_SIDE_BY_SIDE, LAYOUT_MODE_STACKED, LEVEL_CHILD, LEVEL_MAIN } from '@elastic/eui/src/components/flyout/manager/const';
18128
+ export type EuiFlyoutLayoutMode = typeof LAYOUT_MODE_STACKED | typeof LAYOUT_MODE_SIDE_BY_SIDE;
18129
+ export type EuiFlyoutLevel = typeof LEVEL_MAIN | typeof LEVEL_CHILD;
18130
+ export type EuiFlyoutActivityStage = typeof STAGE_OPENING | typeof STAGE_ACTIVE | typeof STAGE_INACTIVE | typeof STAGE_BACKGROUNDING | typeof STAGE_BACKGROUNDED | typeof STAGE_RETURNING | typeof STAGE_CLOSING;
18131
+ export interface EuiManagedFlyoutState {
18132
+ flyoutId: string;
18133
+ level: EuiFlyoutLevel;
18134
+ width?: number;
18135
+ size?: string;
18136
+ minWidth?: number;
18137
+ activityStage?: EuiFlyoutActivityStage;
18138
+ pagination?: EuiFlyoutMenuPagination;
18139
+ }
18140
+ /** Entry for a child flyout in session history. */
18141
+ export interface ChildHistoryEntry {
18142
+ flyoutId: string;
18143
+ title: string;
18144
+ iconType?: IconType;
18145
+ }
18146
+ export interface FlyoutSession {
18147
+ /** ID of the main flyout for this session */
18148
+ mainFlyoutId: string;
18149
+ /** ID of the child flyout for this session */
18150
+ childFlyoutId: string | null;
18151
+ /** Title of the main flyout in this session */
18152
+ title: string;
18153
+ /** Optional icon for this session when shown in history popover */
18154
+ iconType?: IconType;
18155
+ /** z-index value to be used by the flyout session */
18156
+ zIndex: number;
18157
+ /** Title of the current child flyout. */
18158
+ childTitle?: string;
18159
+ /** Icon of the current child flyout. */
18160
+ childIconType?: IconType;
18161
+ /** Stack of child flyouts we navigated away from. */
18162
+ childHistory: ChildHistoryEntry[];
18163
+ /** Key that scopes this session's history; same Symbol reference = same history group. Always set (from action or Symbol()). */
18164
+ historyKey: symbol;
18165
+ }
18166
+ export interface PushPaddingOffsets {
18167
+ /** Push padding applied to the left side (in pixels) */
18168
+ left: number;
18169
+ /** Push padding applied to the right side (in pixels) */
18170
+ right: number;
18171
+ }
18172
+ export interface EuiFlyoutManagerState {
18173
+ sessions: FlyoutSession[];
18174
+ flyouts: EuiManagedFlyoutState[];
18175
+ layoutMode: EuiFlyoutLayoutMode;
18176
+ /** Active push padding offsets (updated by active push flyouts) */
18177
+ pushPadding?: PushPaddingOffsets;
18178
+ currentZIndex: number;
18179
+ unmanagedFlyouts: string[];
18180
+ /** The container element that flyouts are positioned relative to (if any). */
18181
+ containerElement?: HTMLElement | null;
18182
+ /**
18183
+ * Reference width used for layout and resize clamping (container or viewport).
18184
+ * Set by the layout mode hook so flyouts use the same value for consistent clamping.
18185
+ */
18186
+ referenceWidth?: number;
18187
+ }
18188
+ /**
18189
+ * Public API surface provided through React context.
18190
+ * Kept intentionally decoupled from action types to avoid module cycles.
18191
+ */
18192
+ export interface FlyoutManagerApi {
18193
+ state: EuiFlyoutManagerState;
18194
+ dispatch: (action: Action) => void;
18195
+ addFlyout: (flyoutId: string, title: string, level?: EuiFlyoutLevel, size?: string, historyKey?: symbol, iconType?: IconType, minWidth?: number) => void;
18196
+ closeFlyout: (flyoutId: string) => void;
18197
+ closeAllFlyouts: () => void;
18198
+ setActiveFlyout: (flyoutId: string | null) => void;
18199
+ setFlyoutWidth: (flyoutId: string, width: number) => void;
18200
+ setPagination: (flyoutId: string, pagination: EuiFlyoutMenuPagination | undefined) => void;
18201
+ setPushPadding: (side: 'left' | 'right', width: number) => void;
18202
+ setContainerElement: (element: HTMLElement | null) => void;
18203
+ goBack: () => void;
18204
+ goToFlyout: (flyoutId: string, level?: EuiFlyoutLevel) => void;
18205
+ addUnmanagedFlyout: (flyoutId: string) => void;
18206
+ closeUnmanagedFlyout: (flyoutId: string) => void;
18207
+ historyItems: Array<{
18208
+ title: string;
18209
+ iconType?: IconType;
18210
+ onClick: () => void;
18211
+ }>;
18212
+ }
18184
18213
 
18185
18214
  }
18186
- declare module '@elastic/eui/src/components/flyout/const' {
18187
- import { EuiBreakpointSize } from '@elastic/eui/src/services';
18188
- /** Allowed flyout render types. */
18189
- export const FLYOUT_TYPES: readonly ["push", "overlay"];
18190
- /** Type representing a supported flyout render type. */
18191
- export type _EuiFlyoutType = (typeof FLYOUT_TYPES)[number];
18192
- /** Allowed flyout attachment sides. */
18193
- export const FLYOUT_SIDES: readonly ["left", "right"];
18194
- /** Type representing a supported flyout side. */
18195
- export type _EuiFlyoutSide = (typeof FLYOUT_SIDES)[number];
18196
- /** Allowed named flyout sizes used by the manager. */
18197
- export const FLYOUT_SIZES: readonly ["s", "m", "l", "fill"];
18198
- /** Type representing a supported named flyout size. */
18199
- export type EuiFlyoutSize = (typeof FLYOUT_SIZES)[number];
18200
- /** Menu display mode: always render menu when flyoutMenuProps is provided. */
18201
- export const MENU_DISPLAY_ALWAYS: "always";
18202
- /** Menu display mode: only render menu when it has content (back button, history, title, or custom actions). */
18203
- export const MENU_DISPLAY_AUTO: "auto";
18204
- /** Allowed flyout menu display modes. */
18205
- export const FLYOUT_MENU_DISPLAY_MODES: readonly ["always", "auto"];
18206
- /** Type representing a supported flyout menu display mode. */
18207
- export type EuiFlyoutMenuDisplayMode = (typeof FLYOUT_MENU_DISPLAY_MODES)[number];
18208
- /** Allowed padding sizes for flyout content. */
18209
- export const FLYOUT_PADDING_SIZES: readonly ["none", "s", "m", "l"];
18210
- /** Type representing a supported flyout padding size. */
18211
- export type _EuiFlyoutPaddingSize = (typeof FLYOUT_PADDING_SIZES)[number];
18212
- /** Default minimum breakpoint at which push-type flyouts begin to push content. */
18213
- export const DEFAULT_PUSH_MIN_BREAKPOINT: EuiBreakpointSize;
18214
- /** Default flyout type when none is provided. */
18215
- export const DEFAULT_TYPE: _EuiFlyoutType;
18216
- /** Default side where flyouts anchor when none is provided. */
18217
- export const DEFAULT_SIDE: _EuiFlyoutSide;
18218
- /** Default named flyout size. */
18219
- export const DEFAULT_SIZE: EuiFlyoutSize;
18220
- /** Default padding size inside flyouts. */
18221
- export const DEFAULT_PADDING_SIZE: _EuiFlyoutPaddingSize;
18222
- /** Default flyout menu display mode. */
18223
- export const DEFAULT_MENU_DISPLAY_MODE: EuiFlyoutMenuDisplayMode;
18215
+ declare module '@elastic/eui/src/components/flyout/manager/actions' {
18216
+ import type { IconType } from '@elastic/eui/src/components/icon';
18217
+ import type { EuiFlyoutMenuPagination } from '@elastic/eui/src/components/flyout/flyout_menu';
18218
+ import { EuiFlyoutActivityStage, EuiFlyoutLevel, EuiFlyoutLayoutMode } from '@elastic/eui/src/components/flyout/manager/types'; const PREFIX: "eui/flyoutManager";
18219
+ interface BaseAction {
18220
+ type: `${typeof PREFIX}/${string}`;
18221
+ }
18222
+ /** Dispatched when a flyout registers itself with the manager. */
18223
+ export const ACTION_ADD: "eui/flyoutManager/add";
18224
+ /** Dispatched to remove a flyout from the manager (usually on close/unmount). */
18225
+ export const ACTION_CLOSE: "eui/flyoutManager/close";
18226
+ /** Dispatched to remove all flyouts from the manager. */
18227
+ export const ACTION_CLOSE_ALL: "eui/flyoutManager/closeAll";
18228
+ /** Dispatched to set which flyout is currently active within the session. */
18229
+ export const ACTION_SET_ACTIVE: "eui/flyoutManager/setActive";
18230
+ /** Dispatched when an active flyout's pixel width changes (for responsive layout). */
18231
+ export const ACTION_SET_WIDTH: "eui/flyoutManager/setWidth";
18232
+ /** Dispatched to set a flyout's menu pagination. */
18233
+ export const ACTION_SET_PAGINATION: "eui/flyoutManager/setPagination";
18234
+ /** Dispatched to switch layout mode between `side-by-side` and `stacked`. */
18235
+ export const ACTION_SET_LAYOUT_MODE: "eui/flyoutManager/setLayoutMode";
18236
+ /** Dispatched to update a flyout's activity stage (e.g., opening -> active). */
18237
+ export const ACTION_SET_ACTIVITY_STAGE: "eui/flyoutManager/setActivityStage";
18238
+ /** Dispatched to go back one session (remove current session). */
18239
+ export const ACTION_GO_BACK: "eui/flyoutManager/goBack";
18240
+ /** Dispatched to navigate to a specific flyout (remove all sessions after it). */
18241
+ export const ACTION_GO_TO_FLYOUT: "eui/flyoutManager/goToFlyout";
18242
+ /** Dispatched to set push padding offset for a side. */
18243
+ export const ACTION_SET_PUSH_PADDING: "eui/flyoutManager/setPushPadding";
18244
+ /** Dispatched to set the container element for container-relative flyouts. */
18245
+ export const ACTION_SET_CONTAINER_ELEMENT: "eui/flyoutManager/setContainerElement";
18246
+ /** Dispatched to set the reference width used for layout and resize clamping. */
18247
+ export const ACTION_SET_REFERENCE_WIDTH: "eui/flyoutManager/setReferenceWidth";
18248
+ export const ACTION_ADD_UNMANAGED_FLYOUT: "eui/flyoutManager/addUnmanagedFlyout";
18249
+ export const ACTION_CLOSE_UNMANAGED_FLYOUT: "eui/flyoutManager/closeUnmanagedFlyout";
18224
18250
  /**
18225
- * Custom type checker for named flyout sizes since the prop
18226
- * `size` can also be CSSProperties['width'] (string | number)
18251
+ * Add a flyout to manager state. The manager will create or update
18252
+ * the current session depending on the `level` provided.
18227
18253
  */
18228
- export function isEuiFlyoutSizeNamed(value: unknown): value is EuiFlyoutSize;
18254
+ export interface AddFlyoutAction extends BaseAction {
18255
+ type: typeof ACTION_ADD;
18256
+ flyoutId: string;
18257
+ title: string;
18258
+ level: EuiFlyoutLevel;
18259
+ size?: string;
18260
+ historyKey?: symbol;
18261
+ iconType?: IconType;
18262
+ minWidth?: number;
18263
+ }
18264
+ /** Remove a flyout from manager state. Also updates the active session. */
18265
+ export interface CloseFlyoutAction extends BaseAction {
18266
+ type: typeof ACTION_CLOSE;
18267
+ flyoutId: string;
18268
+ }
18269
+ /** Remove all flyouts from manager state. */
18270
+ export interface CloseAllFlyoutsAction extends BaseAction {
18271
+ type: typeof ACTION_CLOSE_ALL;
18272
+ }
18273
+ /** Set the active flyout within the current session (or clear with `null`). */
18274
+ export interface SetActiveFlyoutAction extends BaseAction {
18275
+ type: typeof ACTION_SET_ACTIVE;
18276
+ flyoutId: string | null;
18277
+ }
18278
+ /** Update a flyout's measured width in pixels. */
18279
+ export interface SetWidthAction extends BaseAction {
18280
+ type: typeof ACTION_SET_WIDTH;
18281
+ flyoutId: string;
18282
+ width: number;
18283
+ }
18284
+ /** Set the manager pagination value for a flyout. */
18285
+ export interface SetPaginationAction extends BaseAction {
18286
+ type: typeof ACTION_SET_PAGINATION;
18287
+ flyoutId: string;
18288
+ pagination: EuiFlyoutMenuPagination | undefined;
18289
+ }
18290
+ /** Change how flyouts are arranged: `side-by-side` or `stacked`. */
18291
+ export interface SetLayoutModeAction extends BaseAction {
18292
+ type: typeof ACTION_SET_LAYOUT_MODE;
18293
+ layoutMode: EuiFlyoutLayoutMode;
18294
+ }
18295
+ /** Set a specific flyout's activity stage. */
18296
+ export interface SetActivityStageAction extends BaseAction {
18297
+ type: typeof ACTION_SET_ACTIVITY_STAGE;
18298
+ flyoutId: string;
18299
+ activityStage: EuiFlyoutActivityStage;
18300
+ }
18301
+ /** Go back one session (remove current session from stack). */
18302
+ export interface GoBackAction extends BaseAction {
18303
+ type: typeof ACTION_GO_BACK;
18304
+ }
18305
+ /** Navigate to a specific flyout (remove all sessions after it, or pop to child in history). */
18306
+ export interface GoToFlyoutAction extends BaseAction {
18307
+ type: typeof ACTION_GO_TO_FLYOUT;
18308
+ flyoutId: string;
18309
+ /** When 'child', find flyout in current session's childHistory and pop to it. When 'main' or omitted, find session by mainFlyoutId. */
18310
+ level?: EuiFlyoutLevel;
18311
+ }
18312
+ /** Set push padding offset for a specific side. */
18313
+ export interface SetPushPaddingAction extends BaseAction {
18314
+ type: typeof ACTION_SET_PUSH_PADDING;
18315
+ side: 'left' | 'right';
18316
+ width: number;
18317
+ }
18318
+ export interface AddUnmanagedFlyoutAction extends BaseAction {
18319
+ type: typeof ACTION_ADD_UNMANAGED_FLYOUT;
18320
+ flyoutId: string;
18321
+ }
18322
+ export interface CloseUnmanagedFlyoutAction extends BaseAction {
18323
+ type: typeof ACTION_CLOSE_UNMANAGED_FLYOUT;
18324
+ flyoutId: string;
18325
+ }
18326
+ /** Set the container element for container-relative positioning. */
18327
+ export interface SetContainerElementAction extends BaseAction {
18328
+ type: typeof ACTION_SET_CONTAINER_ELEMENT;
18329
+ element: HTMLElement | null;
18330
+ }
18331
+ /** Set the reference width for layout and resize clamping. */
18332
+ export interface SetReferenceWidthAction extends BaseAction {
18333
+ type: typeof ACTION_SET_REFERENCE_WIDTH;
18334
+ width: number;
18335
+ }
18336
+ /** Union of all flyout manager actions. */
18337
+ export type Action = AddFlyoutAction | CloseFlyoutAction | CloseAllFlyoutsAction | SetActiveFlyoutAction | SetWidthAction | SetPaginationAction | SetLayoutModeAction | SetActivityStageAction | GoBackAction | GoToFlyoutAction | SetPushPaddingAction | AddUnmanagedFlyoutAction | CloseUnmanagedFlyoutAction | SetContainerElementAction | SetReferenceWidthAction;
18338
+ /**
18339
+ * Register a flyout with the manager.
18340
+ * - `title` is used for the flyout menu.
18341
+ * - `level` determines whether the flyout is `main` or `child`.
18342
+ * - Optional `size` is the named EUI size (e.g. `s`, `m`, `l`).
18343
+ * - Optional `historyKey` (Symbol) scopes history; only flyouts with the same reference share Back/history. Omit for a unique group per session.
18344
+ * - Optional `iconType` is shown next to the session title in the history menu.
18345
+ */
18346
+ export const addFlyout: (flyoutId: string, title: string, level?: EuiFlyoutLevel, size?: string, historyKey?: symbol, iconType?: IconType, minWidth?: number) => AddFlyoutAction;
18347
+ /** Unregister a flyout and update the session accordingly. */
18348
+ export const closeFlyout: (flyoutId: string) => CloseFlyoutAction;
18349
+ /** Unregister all flyouts. */
18350
+ export const closeAllFlyouts: () => CloseAllFlyoutsAction;
18351
+ /** Set or clear the active flyout for the current session. */
18352
+ export const setActiveFlyout: (flyoutId: string | null) => SetActiveFlyoutAction;
18353
+ /** Record a flyout's current width in pixels. */
18354
+ export const setFlyoutWidth: (flyoutId: string, width: number) => SetWidthAction;
18355
+ /**
18356
+ * Set (or clear) the menu pagination config for a flyout. When set, this
18357
+ * overrides any pagination passed via `flyoutMenuProps.pagination` on the
18358
+ * flyout itself, allowing reactive updates from a different React root.
18359
+ *
18360
+ * Only works for managed flyouts. Unmanaged flyouts (session={false}) must use
18361
+ * the `flyoutMenuProps.pagination` prop instead.
18362
+ */
18363
+ export const setPagination: (flyoutId: string, pagination: EuiFlyoutMenuPagination | undefined) => SetPaginationAction;
18364
+ /** Switch layout mode between `side-by-side` and `stacked`. */
18365
+ export const setLayoutMode: (layoutMode: EuiFlyoutLayoutMode) => SetLayoutModeAction;
18366
+ /** Update a flyout's activity stage. */
18367
+ export const setActivityStage: (flyoutId: string, activityStage: EuiFlyoutActivityStage) => SetActivityStageAction;
18368
+ /** Go back one session (remove current session from stack). */
18369
+ export const goBack: () => GoBackAction;
18370
+ /** Navigate to a specific flyout (remove all sessions after it, or pop to child in history when level === 'child'). */
18371
+ export const goToFlyout: (flyoutId: string, level?: EuiFlyoutLevel) => GoToFlyoutAction;
18372
+ /** Set push padding offset for a specific side. */
18373
+ export const setPushPadding: (side: "left" | "right", width: number) => SetPushPaddingAction;
18374
+ /** Register an unmanaged flyout for z-index positioning purposes */
18375
+ export const addUnmanagedFlyout: (flyoutId: string) => AddUnmanagedFlyoutAction;
18376
+ /** Unregister an unmanaged flyout */
18377
+ export const closeUnmanagedFlyout: (flyoutId: string) => CloseUnmanagedFlyoutAction;
18378
+ /** Set the container element for container-relative flyout positioning. */
18379
+ export const setContainerElement: (element: HTMLElement | null) => SetContainerElementAction;
18380
+ /** Set the reference width for layout and resize clamping. */
18381
+ export const setReferenceWidth: (width: number) => SetReferenceWidthAction;
18382
+ export {};
18229
18383
 
18230
18384
  }
18231
- declare module '@elastic/eui/src/components/flyout/flyout.styles' {
18232
- import { EuiFlyoutSize } from '@elastic/eui/src/components/flyout/const';
18233
- import { UseEuiTheme } from '@elastic/eui/src/services';
18234
- export const FLYOUT_BREAKPOINT: "m";
18235
- export const euiFlyoutSlideInRight: import("@emotion/serialize").Keyframes;
18236
- export const euiFlyoutSlideOutRight: import("@emotion/serialize").Keyframes;
18237
- export const euiFlyoutSlideInLeft: import("@emotion/serialize").Keyframes;
18238
- export const euiFlyoutSlideOutLeft: import("@emotion/serialize").Keyframes;
18385
+ declare module '@elastic/eui/src/components/flyout/manager/reducer' {
18386
+ import { Action } from '@elastic/eui/src/components/flyout/manager/actions';
18387
+ import { EuiFlyoutManagerState } from '@elastic/eui/src/components/flyout/manager/types';
18239
18388
  /**
18240
- * When a `container` reference element is provided, the flyout's position
18241
- * and dimensions are constrained to the container's bounding rect via
18242
- * inline styles computed in JS.
18389
+ * Default flyout manager state used to initialize the reducer.
18243
18390
  */
18244
- export const euiFlyoutStyles: (euiThemeContext: UseEuiTheme) => {
18245
- noMaxWidth: import("@emotion/react").SerializedStyles;
18246
- right: import("@emotion/react").SerializedStyles;
18247
- left: import("@emotion/react").SerializedStyles;
18248
- overlay: {
18249
- overlay: import("@emotion/react").SerializedStyles;
18250
- left: import("@emotion/react").SerializedStyles;
18251
- right: import("@emotion/react").SerializedStyles;
18252
- };
18253
- push: {
18254
- push: import("@emotion/react").SerializedStyles;
18255
- right: import("@emotion/react").SerializedStyles;
18256
- left: import("@emotion/react").SerializedStyles;
18257
- };
18258
- noAnimation: import("@emotion/react").SerializedStyles;
18259
- paddingSizes: {
18260
- none: import("@emotion/react").SerializedStyles;
18261
- s: import("@emotion/react").SerializedStyles;
18262
- m: import("@emotion/react").SerializedStyles;
18263
- l: import("@emotion/react").SerializedStyles;
18264
- };
18265
- s: import("@emotion/react").SerializedStyles;
18266
- m: import("@emotion/react").SerializedStyles;
18267
- l: import("@emotion/react").SerializedStyles;
18268
- fill: import("@emotion/react").SerializedStyles;
18269
- euiFlyout: import("@emotion/react").SerializedStyles;
18270
- };
18391
+ export const initialState: EuiFlyoutManagerState;
18392
+ /**
18393
+ * Reducer handling all flyout manager actions and state transitions.
18394
+ */
18395
+ export function flyoutManagerReducer(state: EuiFlyoutManagerState | undefined, action: Action): EuiFlyoutManagerState;
18396
+
18397
+ }
18398
+ declare module '@elastic/eui/src/components/flyout/manager/store' {
18399
+ import type { IconType } from '@elastic/eui/src/components/icon';
18400
+ import type { EuiFlyoutMenuPagination } from '@elastic/eui/src/components/flyout/flyout_menu';
18401
+ import type { EuiFlyoutCloseMeta } from '@elastic/eui/src/components/flyout/types';
18402
+ import type { EuiFlyoutLevel, EuiFlyoutManagerState, FlyoutSession } from '@elastic/eui/src/components/flyout/manager/types';
18403
+ import type { Action } from '@elastic/eui/src/components/flyout/manager/actions';
18404
+ type Listener = () => void;
18271
18405
  /**
18272
- * Applies a max-width constraint at the flyout breakpoint.
18406
+ * Events emitted by the flyout manager store for external consumers.
18273
18407
  */
18274
- export const maxedFlyoutWidth: (euiThemeContext: UseEuiTheme) => string;
18408
+ export type FlyoutManagerEvent = {
18409
+ type: 'CLOSE_SESSION';
18410
+ session: FlyoutSession;
18411
+ };
18412
+ type EventListener = (event: FlyoutManagerEvent) => void;
18413
+ export interface FlyoutManagerStore {
18414
+ getState: () => EuiFlyoutManagerState;
18415
+ subscribe: (listener: Listener) => () => void;
18416
+ subscribeToEvents: (listener: EventListener) => () => void;
18417
+ dispatch: (action: Action) => void;
18418
+ addFlyout: (flyoutId: string, title: string, level?: EuiFlyoutLevel, size?: string, historyKey?: symbol, iconType?: IconType, minWidth?: number) => void;
18419
+ closeFlyout: (flyoutId: string) => void;
18420
+ closeAllFlyouts: () => void;
18421
+ setActiveFlyout: (flyoutId: string | null) => void;
18422
+ setFlyoutWidth: (flyoutId: string, width: number) => void;
18423
+ setPagination: (flyoutId: string, pagination: EuiFlyoutMenuPagination | undefined) => void;
18424
+ setPushPadding: (side: 'left' | 'right', width: number) => void;
18425
+ setContainerElement: (element: HTMLElement | null) => void;
18426
+ goBack: () => void;
18427
+ goToFlyout: (flyoutId: string, level?: EuiFlyoutLevel) => void;
18428
+ addUnmanagedFlyout: (flyoutId: string) => void;
18429
+ closeUnmanagedFlyout: (flyoutId: string) => void;
18430
+ /**
18431
+ * Reads and clears any close `meta` previously stashed for `flyoutId` (e.g.
18432
+ * `goBack` stamps the flyouts it removes with `navigation-back`). Used
18433
+ * internally by managed flyouts to report the correct close reason; defaults
18434
+ * to `navigation-cascade` when nothing was stashed.
18435
+ */
18436
+ consumeCloseMeta: (flyoutId: string) => EuiFlyoutCloseMeta | undefined;
18437
+ historyItems: Array<{
18438
+ title: string;
18439
+ iconType?: IconType;
18440
+ onClick: () => void;
18441
+ }>;
18442
+ }
18275
18443
  /**
18276
- * Composes the full set of named size styles (`s`, `m`, `l`, `fill`).
18277
- *
18278
- * Uses `%` units for widths. Media queries drive responsive breakpoints.
18279
- *
18280
- * When a child flyout is stacked on top of the parent, the parent flyout
18281
- * size will match the child flyout size. The `s` and `m` sizes include
18282
- * overrides for this stacked-child behavior.
18444
+ * Returns a singleton store instance shared across all React roots within the same JS context.
18445
+ * Uses module-level singleton to ensure deduplication even if modules are loaded twice.
18283
18446
  */
18284
- export const composeFlyoutSizing: (euiThemeContext: UseEuiTheme) => {
18285
- s: import("@emotion/react").SerializedStyles;
18286
- m: import("@emotion/react").SerializedStyles;
18287
- l: import("@emotion/react").SerializedStyles;
18288
- fill: import("@emotion/react").SerializedStyles;
18289
- };
18447
+ export function getFlyoutManagerStore(): FlyoutManagerStore;
18290
18448
  /**
18291
- * Composes all inline styles for a flyout based on its configuration.
18292
- * Uses a CSS custom property (`--euiFlyoutMainWidth`) for synchronous
18293
- * tracking of the main flyout width during resize drag, falling back to
18294
- * the pixel value from manager state when the variable is not set.
18449
+ * For testing purposes - allows resetting the store
18295
18450
  */
18296
- export const composeFlyoutInlineStyles: (size: EuiFlyoutSize | string | number, layoutMode: "side-by-side" | "stacked", siblingFlyoutId: string | null, siblingFlyoutWidth: number | null, maxWidth: boolean | number | string | undefined, zIndex?: number) => React.CSSProperties;
18297
-
18298
- }
18299
- declare module '@elastic/eui/src/components/flyout/_flyout_close_button.styles' {
18300
- import { UseEuiTheme } from '@elastic/eui/src/services';
18301
- export const euiFlyoutCloseButtonStyles: (euiThemeContext: UseEuiTheme) => {
18302
- euiFlyout__closeButton: import("@emotion/react").SerializedStyles;
18303
- inside: import("@emotion/react").SerializedStyles;
18304
- outside: import("@emotion/react").SerializedStyles;
18305
- outsideSide: {
18306
- right: import("@emotion/react").SerializedStyles;
18307
- left: import("@emotion/react").SerializedStyles;
18308
- };
18309
- };
18310
-
18311
- }
18312
- declare module '@elastic/eui/src/components/flyout/_flyout_close_button' {
18313
- import { FunctionComponent } from 'react';
18314
- import type { EuiFlyoutProps } from '@elastic/eui/src/components/flyout/flyout';
18315
- type EuiFlyoutCloseButtonProps = EuiFlyoutProps['closeButtonProps'] & Required<Pick<EuiFlyoutProps, 'closeButtonPosition' | 'onClose' | 'side'>>;
18316
- export const EuiFlyoutCloseButton: FunctionComponent<EuiFlyoutCloseButtonProps>;
18451
+ export function _resetFlyoutManagerStore(): void;
18317
18452
  export {};
18318
18453
 
18319
18454
  }
18320
- declare module '@elastic/eui/src/components/flyout/flyout_menu.styles' {
18321
- import { UseEuiTheme } from '@elastic/eui/src/services';
18322
- export const euiFlyoutMenuStyles: (euiThemeContext: UseEuiTheme) => {
18323
- euiFlyoutMenu__container: import("@emotion/react").SerializedStyles;
18324
- euiFlyoutMenu__spacer: import("@emotion/react").SerializedStyles;
18325
- euiFlyoutMenu__actions: import("@emotion/react").SerializedStyles;
18326
- euiFlyoutMenu__hiddenTitle: import("@emotion/react").SerializedStyles;
18327
- };
18328
-
18329
- }
18330
- declare module '@elastic/eui/src/components/flyout/flyout_menu_context' {
18331
- import { EuiFlyoutProps } from '@elastic/eui/src/components/flyout/flyout';
18332
- interface EuiFlyoutMenuContextProps {
18333
- onClose?: EuiFlyoutProps['onClose'];
18334
- }
18335
- export const EuiFlyoutMenuContext: import("react").Context<EuiFlyoutMenuContextProps>;
18336
- export {};
18455
+ declare module '@elastic/eui/src/components/flyout/manager/selectors' {
18456
+ export const useSession: (flyoutId?: string | null) => import ("@elastic/eui/src/components/flyout/manager/types").FlyoutSession | null;
18457
+ /** True when any managed flyout session is currently active. */
18458
+ export const useHasActiveSession: () => boolean;
18459
+ /** True if the given `flyoutId` is the main or child flyout in the latest session. */
18460
+ export const useIsFlyoutActive: (flyoutId: string) => boolean;
18461
+ export const useFlyout: (flyoutId?: string | null) => import ("@elastic/eui/src/components/flyout/manager/types").EuiManagedFlyoutState | null;
18462
+ export const useIsFlyoutRegistered: (flyoutId?: string | null) => boolean;
18463
+ /** The most recent flyout session or `null` if none. */
18464
+ export const useCurrentSession: () => import ("@elastic/eui/src/components/flyout/manager/types").FlyoutSession | null;
18465
+ /** The registered state of the current session's main flyout, if present. */
18466
+ export const useCurrentMainFlyout: () => import ("@elastic/eui/src/components/flyout/manager/types").EuiManagedFlyoutState | null;
18467
+ /** The registered state of the current session's child flyout, if present. */
18468
+ export const useCurrentChildFlyout: () => import ("@elastic/eui/src/components/flyout/manager/types").EuiManagedFlyoutState | null;
18469
+ /** The measured width (px) of the specified flyout, or `null` if unknown. */
18470
+ export const useFlyoutWidth: (flyoutId?: string | null) => number | undefined;
18471
+ /** Returns the store pagination override for a flyout, if set. */
18472
+ export const useFlyoutPagination: (flyoutId?: string | null) => import("..").EuiFlyoutMenuPagination | undefined;
18473
+ /** The configured minWidth (px) of the specified flyout, or `undefined` if not set. */
18474
+ export const useFlyoutMinWidth: (flyoutId?: string | null) => number | undefined;
18475
+ /** The configured size of the parent (main) flyout for a given child flyout ID. */
18476
+ export const useParentFlyoutSize: (childFlyoutId: string) => string | undefined;
18477
+ /** True if the provided `flyoutId` is the main flyout and it currently has a child. */
18478
+ export const useHasChildFlyout: (flyoutId: string) => boolean;
18479
+ /** Get the current push padding offsets from manager state. */
18480
+ export const usePushPaddingOffsets: () => import ("@elastic/eui/src/components/flyout/manager/types").PushPaddingOffsets;
18481
+ /** True if there's any active push padding (left or right side). */
18482
+ export const useHasPushPadding: () => boolean;
18483
+ /** Get the ref for the current flyout z-index to be used */
18484
+ export const useCurrentFlyoutZIndexRef: () => import("react").MutableRefObject<number>;
18337
18485
 
18338
18486
  }
18339
- declare module '@elastic/eui/src/components/flyout/types' {
18340
- export type EuiFlyoutCloseEvent = MouseEvent | TouchEvent | KeyboardEvent;
18487
+ declare module '@elastic/eui/src/components/flyout/manager/context' {
18488
+ import React from 'react';
18489
+ /**
18490
+ * React provider that marks descendants as being rendered inside
18491
+ * an EUI managed flyout. Used by hooks/components to alter behavior
18492
+ * (e.g., focus handling) when inside a managed flyout tree.
18493
+ */
18494
+ export const EuiFlyoutIsManagedProvider: ({ isManaged, children, }: {
18495
+ isManaged: boolean;
18496
+ children: React.ReactNode;
18497
+ }) => React.JSX.Element;
18498
+ /**
18499
+ * Hook that returns `true` when called within an EUI managed flyout subtree.
18500
+ */
18501
+ export const useIsInManagedFlyout: () => boolean;
18341
18502
 
18342
18503
  }
18343
- declare module '@elastic/eui/src/components/flyout/flyout_menu' {
18344
- import React, { FunctionComponent, HTMLAttributes } from 'react';
18345
- import { EuiButtonProps } from '@elastic/eui/src/components/button';
18346
- import { CommonProps, PropsForAnchor } from '@elastic/eui/src/components/common';
18347
- import type { IconType } from '@elastic/eui/src/components/icon';
18348
- type EuiFlyoutMenuBackButtonProps = Pick<PropsForAnchor<EuiButtonProps>, 'aria-label' | 'data-test-subj' | 'onClick'>;
18504
+ declare module '@elastic/eui/src/components/flyout/manager/hooks' {
18505
+ export { useIsFlyoutActive, useHasActiveSession, useCurrentSession, useCurrentMainFlyout, useCurrentChildFlyout, useFlyoutWidth, useFlyoutPagination, useParentFlyoutSize, useHasChildFlyout, usePushPaddingOffsets, useHasPushPadding, } from '@elastic/eui/src/components/flyout/manager/selectors';
18506
+ export { useFlyoutLayoutMode } from '@elastic/eui/src/components/flyout/manager/layout_mode';
18507
+ export { useIsInManagedFlyout } from '@elastic/eui/src/components/flyout/manager/context';
18508
+ export type { EuiFlyoutActivityStage } from '@elastic/eui/src/components/flyout/manager/types';
18509
+ /** Access the flyout manager context (state and actions). */
18510
+ export const useFlyoutManager: () => import ("@elastic/eui/src/components/flyout/manager/types").FlyoutManagerApi | null;
18349
18511
  /**
18350
- * History item for the flyout menu history popover
18512
+ * Stable flyout ID utility. Uses the passed `id` if provided and not already registered,
18513
+ * otherwise generates a deterministic ID for the component's lifetime.
18514
+ * The ID remains stable across re-renders to maintain consistency in effects and other hooks.
18351
18515
  */
18352
- export interface EuiFlyoutHistoryItem {
18353
- /**
18354
- * Title for the history item
18355
- */
18356
- title: string;
18357
- /**
18358
- * An optional icon to display next to the session title in the history menu
18359
- */
18360
- iconType?: IconType;
18361
- /**
18362
- * onClick handler for the history item
18363
- */
18364
- onClick: () => void;
18365
- }
18516
+ export const useFlyoutId: (flyoutId?: string) => string;
18517
+
18518
+ }
18519
+ declare module '@elastic/eui/src/components/flyout/manager/layout_mode' {
18520
+ import { EuiFlyoutLayoutMode } from '@elastic/eui/src/components/flyout/manager/types';
18366
18521
  /**
18367
- * Custom action item for the flyout menu component
18522
+ * Hook to handle responsive layout mode for managed flyouts.
18523
+ * Decides whether to place flyouts side-by-side or stacked based on
18524
+ * the reference width (the reference container's width, defaulting to
18525
+ * document.body when not set) and flyout widths/sizes.
18368
18526
  */
18369
- export interface EuiFlyoutMenuCustomAction {
18370
- /**
18371
- * Icon type for the action button
18372
- */
18373
- iconType: string;
18374
- /**
18375
- * onClick handler for the action button
18376
- */
18377
- onClick: () => void;
18378
- /**
18379
- * Aria label for the action button
18380
- */
18381
- 'aria-label': string;
18382
- }
18527
+ export const useApplyFlyoutLayoutMode: () => void;
18383
18528
  /**
18384
- * Props for EuiFlyoutMenu
18529
+ * Convert a flyout `size` value to a pixel width.
18530
+ * When `referenceWidth` is provided, named sizes are calculated as a percentage
18531
+ * of that width (container-relative). Otherwise falls back to `window.innerWidth`.
18385
18532
  */
18386
- export type EuiFlyoutMenuProps = CommonProps & HTMLAttributes<HTMLDivElement> & {
18387
- /**
18388
- * An id to use for the title element. Useful for setting aria-labelledby on the flyout.
18389
- * Example:
18390
- * ```jsx
18391
- * <EuiFlyout
18392
- * aria-labelledby="myMenuTitleId"
18393
- * flyoutMenuProps={{ title: 'Menu title', titleId: 'myMenuTitleId' }
18394
- * >
18395
- * ...
18396
- * </EuiFlyout>
18397
- * ```
18398
- */
18399
- titleId?: string;
18400
- /**
18401
- * Title for the menu component. In a managed flyout context, the title is used to indicate the flyout session for history navigation.
18402
- */
18403
- title?: React.ReactNode;
18404
- /**
18405
- * An optional icon to display next to the session title in the history menu
18406
- */
18407
- iconType?: IconType;
18408
- /**
18409
- * Hides the title in the `EuiFlyoutMenu`.
18410
- * @default true
18411
- * @deprecated Use `EuiFlyoutHeader` for visible titles instead.
18412
- * `hideTitle` is still honored but may be removed in a future major version.
18413
- */
18414
- hideTitle?: boolean;
18415
- /**
18416
- * Hides the close button in the menu component
18417
- * @default false
18418
- */
18419
- hideCloseButton?: boolean;
18420
- /**
18421
- * Shows a back button in the menu component
18422
- * @default false
18423
- */
18424
- showBackButton?: boolean;
18425
- /**
18426
- * Props to pass to the back button, such as `onClick` handler
18427
- */
18428
- backButtonProps?: EuiFlyoutMenuBackButtonProps;
18429
- /**
18430
- * List of history items for the history popover
18431
- */
18432
- historyItems?: EuiFlyoutHistoryItem[];
18433
- /**
18434
- * List of custom action items for the menu component
18435
- */
18436
- customActions?: EuiFlyoutMenuCustomAction[];
18437
- };
18533
+ export const getWidthFromSize: (size: string | number, referenceWidth?: number) => number;
18534
+ /** Current layout mode for managed flyouts (`side-by-side` or `stacked`). */
18535
+ export const useFlyoutLayoutMode: () => EuiFlyoutLayoutMode;
18536
+
18537
+ }
18538
+ declare module '@elastic/eui/src/components/flyout/manager/provider' {
18539
+ import React from 'react';
18540
+ import { FlyoutManagerApi } from '@elastic/eui/src/components/flyout/manager/types';
18438
18541
  /**
18439
- * The component for the top menu bar inside a flyout. Since this is a private
18440
- * component, rendering is controlled using the `flyoutMenuProps` prop on
18441
- * `EuiFlyout`. In managed session flyouts, the Flyout Manager controls a back
18442
- * button and history popover for navigating to different flyout sessions
18443
- * within the managed context.
18444
- *
18445
- * @private
18542
+ * React context that exposes the Flyout Manager API (state + actions).
18446
18543
  */
18447
- export const EuiFlyoutMenu: FunctionComponent<EuiFlyoutMenuProps>;
18448
- export {};
18544
+ export const EuiFlyoutManagerContext: React.Context<FlyoutManagerApi | null>;
18545
+ /**
18546
+ * Provides the Flyout Manager API via context and runs layout-mode logic.
18547
+ */
18548
+ export const EuiFlyoutManager: React.FC<{
18549
+ children: React.ReactNode;
18550
+ }>;
18551
+ /** Hook to access the Flyout Manager API from context. */
18552
+ export const useFlyoutManager: () => FlyoutManagerApi | null;
18449
18553
 
18450
18554
  }
18451
18555
  declare module '@elastic/eui/src/components/flyout/manager/activity_stage' {
@@ -18618,7 +18722,7 @@ declare module '@elastic/eui/src/components/flyout/manager' {
18618
18722
  /**
18619
18723
  * Convenience re-exports of bound action creators for external usage.
18620
18724
  */
18621
- export { addFlyout as addFlyoutAction, closeFlyout as closeFlyoutAction, closeAllFlyouts as closeAllFlyoutsAction, setActiveFlyout as setActiveFlyoutAction, setFlyoutWidth as setFlyoutWidthAction, setPushPadding as setPushPaddingAction, setActivityStage as setActivityStageAction, } from '@elastic/eui/src/components/flyout/manager/actions';
18725
+ export { addFlyout as addFlyoutAction, closeFlyout as closeFlyoutAction, closeAllFlyouts as closeAllFlyoutsAction, setActiveFlyout as setActiveFlyoutAction, setFlyoutWidth as setFlyoutWidthAction, setPagination as setPaginationAction, setPushPadding as setPushPaddingAction, setActivityStage as setActivityStageAction, } from '@elastic/eui/src/components/flyout/manager/actions';
18622
18726
  /** Reducer and default state for the flyout manager. */
18623
18727
  export { flyoutManagerReducer, initialState } from '@elastic/eui/src/components/flyout/manager/reducer';
18624
18728
  /** Flyout manager store singleton and types. */
@@ -18632,7 +18736,7 @@ declare module '@elastic/eui/src/components/flyout/manager' {
18632
18736
  /**
18633
18737
  * Selectors and derived state hooks for managed flyouts.
18634
18738
  */
18635
- export { useCurrentChildFlyout, useCurrentMainFlyout, useCurrentSession, useFlyoutId, useFlyoutLayoutMode, useFlyoutManager, useFlyoutWidth, useHasChildFlyout, useIsFlyoutActive, useIsInManagedFlyout, useHasActiveSession, useParentFlyoutSize, usePushPaddingOffsets, useHasPushPadding, } from '@elastic/eui/src/components/flyout/manager/hooks';
18739
+ export { useCurrentChildFlyout, useCurrentMainFlyout, useCurrentSession, useFlyoutId, useFlyoutLayoutMode, useFlyoutManager, useFlyoutPagination, useFlyoutWidth, useHasChildFlyout, useIsFlyoutActive, useIsInManagedFlyout, useHasActiveSession, useParentFlyoutSize, usePushPaddingOffsets, useHasPushPadding, } from '@elastic/eui/src/components/flyout/manager/hooks';
18636
18740
  export { EuiFlyoutChild, type EuiFlyoutChildProps } from '@elastic/eui/src/components/flyout/manager/flyout_child';
18637
18741
  export { EuiFlyoutMain, type EuiFlyoutMainProps } from '@elastic/eui/src/components/flyout/manager/flyout_main';
18638
18742
  /** Utility functions for flyout sizing and layout. */
@@ -19660,6 +19764,7 @@ declare module '@elastic/eui/src/components/flyout/use_flyout_menu' {
19660
19764
  };
19661
19765
  historyItems?: import ("@elastic/eui/src/components/flyout/flyout_menu").EuiFlyoutHistoryItem[];
19662
19766
  customActions?: import ("@elastic/eui/src/components/flyout/flyout_menu").EuiFlyoutMenuCustomAction[];
19767
+ pagination?: import ("@elastic/eui/src/components/flyout/flyout_menu").EuiFlyoutMenuPagination;
19663
19768
  };
19664
19769
  shouldRenderMenu: boolean;
19665
19770
  ariaLabelledBy: string | undefined;
@@ -19675,12 +19780,16 @@ declare module '@elastic/eui/src/components/flyout/flyout.component' {
19675
19780
  import type { EuiButtonIconPropsForButton } from '@elastic/eui/src/components/button';
19676
19781
  import { _EuiFlyoutPaddingSize, _EuiFlyoutSide, _EuiFlyoutType, EuiFlyoutMenuDisplayMode, EuiFlyoutSize } from '@elastic/eui/src/components/flyout/const';
19677
19782
  import { EuiFlyoutMenuProps } from '@elastic/eui/src/components/flyout/flyout_menu';
19678
- import type { EuiFlyoutCloseEvent } from '@elastic/eui/src/components/flyout/types';
19783
+ import type { EuiFlyoutCloseEvent, EuiFlyoutCloseMeta } from '@elastic/eui/src/components/flyout/types';
19679
19784
  interface _EuiFlyoutComponentProps {
19680
19785
  /**
19681
19786
  * A required callback function fired when the flyout is closed.
19787
+ *
19788
+ * The optional second `meta` argument describes why the flyout closed via
19789
+ * `meta.reason` (e.g. `'close-button'`, `'escape'`, `'outside-click'`, and,
19790
+ * for managed flyouts, `'navigation-back'` or `'navigation-cascade'`).
19682
19791
  */
19683
- onClose: (event: EuiFlyoutCloseEvent) => void;
19792
+ onClose: (event: EuiFlyoutCloseEvent, meta?: EuiFlyoutCloseMeta) => void;
19684
19793
  /**
19685
19794
  * Defines the width of the panel.
19686
19795
  * Pass a predefined size of `s | m | l`, or pass any number/string compatible with the CSS `width` attribute
@@ -19969,6 +20078,7 @@ declare module '@elastic/eui/src/components/flyout/flyout_header' {
19969
20078
  declare module '@elastic/eui/src/components/flyout' {
19970
20079
  export type { EuiFlyoutProps, EuiFlyoutSize } from '@elastic/eui/src/components/flyout/flyout';
19971
20080
  export { EuiFlyout } from '@elastic/eui/src/components/flyout/flyout';
20081
+ export type { EuiFlyoutCloseEvent, EuiFlyoutCloseReason, EuiFlyoutCloseMeta, } from '@elastic/eui/src/components/flyout/types';
19972
20082
  export type { EuiFlyoutBodyProps } from '@elastic/eui/src/components/flyout/flyout_body';
19973
20083
  export { EuiFlyoutBody } from '@elastic/eui/src/components/flyout/flyout_body';
19974
20084
  export type { EuiFlyoutFooterProps } from '@elastic/eui/src/components/flyout/flyout_footer';
@@ -19978,7 +20088,7 @@ declare module '@elastic/eui/src/components/flyout' {
19978
20088
  export { euiFlyoutSlideInRight, euiFlyoutSlideInLeft } from '@elastic/eui/src/components/flyout/flyout.styles';
19979
20089
  export type { EuiFlyoutResizableProps } from '@elastic/eui/src/components/flyout/flyout_resizable';
19980
20090
  export { EuiFlyoutResizable } from '@elastic/eui/src/components/flyout/flyout_resizable';
19981
- export type { EuiFlyoutMenuProps, EuiFlyoutHistoryItem, EuiFlyoutMenuCustomAction, } from '@elastic/eui/src/components/flyout/flyout_menu';
20091
+ export type { EuiFlyoutMenuProps, EuiFlyoutHistoryItem, EuiFlyoutMenuCustomAction, EuiFlyoutMenuPagination, } from '@elastic/eui/src/components/flyout/flyout_menu';
19982
20092
  export { EuiFlyoutMenu } from '@elastic/eui/src/components/flyout/flyout_menu';
19983
20093
  export { useIsInManagedFlyout, useHasActiveSession } from '@elastic/eui/src/components/flyout/manager';
19984
20094
  export { useIsInsideParentFlyout } from '@elastic/eui/src/components/flyout/flyout_parent_context';
@@ -29238,8 +29348,7 @@ declare module '@elastic/eui/src/components/date_picker/super_date_picker/quick_
29238
29348
 
29239
29349
  }
29240
29350
  declare module '@elastic/eui/src/components/date_picker/auto_refresh/refresh_interval' {
29241
- import React, { Component, ChangeEventHandler, KeyboardEventHandler } from 'react';
29242
- import { TimeOptions } from '@elastic/eui/src/components/date_picker/super_date_picker/time_options';
29351
+ import React from 'react';
29243
29352
  import { Milliseconds, RefreshUnitsOptions, ApplyRefreshInterval } from '@elastic/eui/src/components/date_picker/types';
29244
29353
  export type EuiRefreshIntervalProps = {
29245
29354
  /**
@@ -29266,30 +29375,10 @@ declare module '@elastic/eui/src/components/date_picker/auto_refresh/refresh_int
29266
29375
  */
29267
29376
  onRefreshChange: ApplyRefreshInterval;
29268
29377
  };
29269
- interface EuiRefreshIntervalState {
29270
- value: number | '';
29271
- units: RefreshUnitsOptions;
29272
- min?: Milliseconds;
29273
- }
29274
- export class EuiRefreshInterval extends Component<EuiRefreshIntervalProps, EuiRefreshIntervalState> {
29275
- static defaultProps: {
29276
- isPaused: boolean;
29277
- refreshInterval: number;
29278
- minInterval: number;
29279
- };
29280
- state: EuiRefreshIntervalState;
29281
- generateId: (idSuffix?: string) => string;
29282
- refreshSelectionId: string;
29283
- onValueChange: ChangeEventHandler<HTMLInputElement>;
29284
- onUnitsChange: ChangeEventHandler<HTMLSelectElement>;
29285
- startRefresh: () => void;
29286
- handleKeyDown: KeyboardEventHandler<HTMLElement>;
29287
- applyRefreshInterval: () => void;
29288
- toggleRefresh: () => void;
29289
- renderScreenReaderText: (refreshUnitsOptions: TimeOptions["refreshUnitsOptions"]) => React.JSX.Element;
29290
- render(): React.JSX.Element;
29291
- }
29292
- export {};
29378
+ export const EuiRefreshInterval: {
29379
+ ({ isPaused, refreshInterval, minInterval, intervalUnits, onRefreshChange, }: EuiRefreshIntervalProps): React.JSX.Element;
29380
+ displayName: string;
29381
+ };
29293
29382
 
29294
29383
  }
29295
29384
  declare module '@elastic/eui/src/components/date_picker/super_date_picker/quick_select_popover/quick_select_popover' {
@@ -36071,10 +36160,36 @@ declare module '@elastic/eui/src/components/basic_table/expanded_item_actions' {
36071
36160
  }
36072
36161
  export const ExpandedItemActions: <T extends {}>({ actions, itemId, item, actionsDisabled, className, }: ExpandedItemActionsProps<T>) => ReactElement;
36073
36162
 
36163
+ }
36164
+ declare module '@elastic/eui/src/components/basic_table/panel.styles' {
36165
+ import type { UseEuiTheme } from '@elastic/eui/src/services';
36166
+ export const euiBasicTablePanelStyles: ({ euiTheme }: UseEuiTheme) => import("@emotion/react").SerializedStyles;
36167
+
36168
+ }
36169
+ declare module '@elastic/eui/src/components/basic_table/use_panel_props' {
36170
+ /**
36171
+ * @internal
36172
+ */
36173
+ export const EUI_BASIC_TABLE_PANEL_CLASS_NAME: "euiBasicTablePanel";
36174
+ /**
36175
+ * A utility hook that returns props needed to be passed to element(s) being
36176
+ * a part of the paneled table look and feel (e.g., a toolbar above the table).
36177
+ * @beta
36178
+ */
36179
+ export const useEuiBasicTablePanelProps: () => {
36180
+ css: import("@emotion/serialize").SerializedStyles;
36181
+ className: "euiBasicTablePanel";
36182
+ };
36183
+
36074
36184
  }
36075
36185
  declare module '@elastic/eui/src/components/basic_table/basic_table.styles' {
36076
- import { UseEuiTheme } from '@elastic/eui/src/services';
36186
+ import type { UseEuiTheme } from '@elastic/eui/src/services';
36187
+ import type { EuiTableProps } from '@elastic/eui/src/components/table';
36077
36188
  export const euiBasicTableBodyLoading: (euiThemeContext: UseEuiTheme) => import("@emotion/react").SerializedStyles;
36189
+ /**
36190
+ * @internal
36191
+ */
36192
+ export const euiBasicTableWrapperPanelledStyles: (responsiveBreakpoint: EuiTableProps["responsiveBreakpoint"]) => (theme: UseEuiTheme) => import("@emotion/react").SerializedStyles | null;
36078
36193
  export const safariLoadingWorkaround: import("@emotion/react").SerializedStyles;
36079
36194
 
36080
36195
  }
@@ -36083,7 +36198,7 @@ declare module '@elastic/eui/src/components/basic_table/basic_table' {
36083
36198
  import { CommonProps } from '@elastic/eui/src/components/common';
36084
36199
  import { EuiComponentDefaultsContext } from '@elastic/eui/src/components/provider/component_defaults';
36085
36200
  import { EuiTableProps } from '@elastic/eui/src/components/table';
36086
- import { Pagination } from '@elastic/eui/src/components/basic_table/pagination_bar';
36201
+ import { type Pagination } from '@elastic/eui/src/components/basic_table/pagination_bar';
36087
36202
  import { EuiTableActionsColumnType, EuiTableComputedColumnType, EuiTableDataType, EuiTableFieldDataColumnType, ItemId, EuiTableSelectionType, EuiTableSortingType, ItemIdResolved } from '@elastic/eui/src/components/basic_table/table_types';
36088
36203
  interface ItemIdToExpandedRowMap {
36089
36204
  [id: string]: ReactNode;
@@ -36154,6 +36269,15 @@ declare module '@elastic/eui/src/components/basic_table/basic_table' {
36154
36269
  * Provides an infinite loading indicator
36155
36270
  */
36156
36271
  loading?: boolean;
36272
+ /**
36273
+ * Enable the panelled style of the table.
36274
+ *
36275
+ * Panelled style adds contrast between the table navigation controls
36276
+ * and table content itself. It should be used in tables rendered outside
36277
+ * EUI containers like `<EuiPanel>` or `<EuiFlyout>`.
36278
+ * @default false
36279
+ */
36280
+ panelled?: boolean;
36157
36281
  /**
36158
36282
  * Message to display if table is empty
36159
36283
  */
@@ -36388,6 +36512,7 @@ declare module '@elastic/eui/src/components/basic_table' {
36388
36512
  export type { EuiTableDataType, EuiTableFooterProps, EuiTableFieldDataColumnType, EuiTableComputedColumnType, EuiTableActionsColumnType, EuiTableSelectionType, EuiTableSortingType, } from '@elastic/eui/src/components/basic_table/table_types';
36389
36513
  export type { Pagination } from '@elastic/eui/src/components/basic_table/pagination_bar';
36390
36514
  export type { DefaultItemAction, CustomItemAction } from '@elastic/eui/src/components/basic_table/action_types';
36515
+ export { useEuiBasicTablePanelProps } from '@elastic/eui/src/components/basic_table/use_panel_props';
36391
36516
 
36392
36517
  }
36393
36518
  declare module '@elastic/eui/src/components/text_diff/text_diff.styles' {
@@ -36443,37 +36568,143 @@ declare module '@elastic/eui/src/components/toast/toast.styles' {
36443
36568
  import { UseEuiTheme } from '@elastic/eui/src/services';
36444
36569
  export const euiToastStyles: (euiThemeContext: UseEuiTheme) => {
36445
36570
  euiToast: import("@emotion/react").SerializedStyles;
36446
- euiToast__closeButton: import("@emotion/react").SerializedStyles;
36447
- colors: {
36448
- _getStyles: (color: string) => string;
36449
- readonly primary: import("@emotion/react").SerializedStyles;
36450
- readonly success: import("@emotion/react").SerializedStyles;
36451
- readonly warning: import("@emotion/react").SerializedStyles;
36452
- readonly danger: import("@emotion/react").SerializedStyles;
36453
- };
36571
+ decor: import("@emotion/react").SerializedStyles;
36572
+ wrapper: import("@emotion/react").SerializedStyles;
36573
+ body: import("@emotion/react").SerializedStyles;
36574
+ content: import("@emotion/react").SerializedStyles;
36575
+ text: import("@emotion/react").SerializedStyles;
36576
+ icon: import("@emotion/react").SerializedStyles;
36577
+ actions: import("@emotion/react").SerializedStyles;
36578
+ dismissButton: import("@emotion/react").SerializedStyles;
36579
+ hasAnimation: import("@emotion/react").SerializedStyles;
36454
36580
  };
36455
36581
  export const euiToastHeaderStyles: (euiThemeContext: UseEuiTheme) => {
36456
36582
  euiToastHeader: import("@emotion/react").SerializedStyles;
36457
- euiToastHeader__icon: import("@emotion/react").SerializedStyles;
36458
- euiToastHeader__title: import("@emotion/react").SerializedStyles;
36459
- withBody: import("@emotion/react").SerializedStyles;
36583
+ hasDismissButton: import("@emotion/react").SerializedStyles;
36584
+ };
36585
+
36586
+ }
36587
+ declare module '@elastic/eui/src/components/notification_icon/assets/info_fill' {
36588
+ import * as React from 'react';
36589
+ import type { SVGProps } from 'react';
36590
+ interface SVGRProps {
36591
+ title?: string;
36592
+ titleId?: string;
36593
+ }
36594
+ export const icon: ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => React.JSX.Element;
36595
+ export {};
36596
+
36597
+ }
36598
+ declare module '@elastic/eui/src/components/notification_icon/assets/warning_static' {
36599
+ import * as React from 'react';
36600
+ import type { SVGProps } from 'react';
36601
+ interface SVGRProps {
36602
+ title?: string;
36603
+ titleId?: string;
36604
+ }
36605
+ export const icon: ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => React.JSX.Element;
36606
+ export {};
36607
+
36608
+ }
36609
+ declare module '@elastic/eui/src/components/notification_icon/notification_icon.styles' {
36610
+ import { UseEuiTheme } from '@elastic/eui/src/services';
36611
+ export const euiNotificationIconStyles: ({ euiTheme }: UseEuiTheme) => {
36612
+ euiNotificationIcon: import("@emotion/react").SerializedStyles;
36613
+ size: {
36614
+ l: import("@emotion/react").SerializedStyles;
36615
+ };
36616
+ };
36617
+
36618
+ }
36619
+ declare module '@elastic/eui/src/components/notification_icon/notification_icon' {
36620
+ import { FunctionComponent } from 'react';
36621
+ import { CommonProps } from '@elastic/eui/src/components/common';
36622
+ import { IconType } from '@elastic/eui/src/components/icon/icon'; const TYPES: readonly ["info", "success", "warning", "error"];
36623
+ export type EuiNotificationIconType = (typeof TYPES)[number];
36624
+ export const NOTIFICATION_ICONS_MAP: Record<EuiNotificationIconType, {
36625
+ name: string;
36626
+ icon: IconType;
36627
+ }>;
36628
+ export type EuiNotificationIconProps = CommonProps & {
36629
+ type: EuiNotificationIconType;
36630
+ size?: 'm' | 'l';
36460
36631
  };
36632
+ export const EuiNotificationIcon: FunctionComponent<EuiNotificationIconProps>;
36633
+ export {};
36634
+
36635
+ }
36636
+ declare module '@elastic/eui/src/components/toast/types' {
36637
+ export const COLORS: readonly ["primary", "success", "warning", "danger"];
36638
+ export type EuiToastColor = (typeof COLORS)[number];
36639
+
36640
+ }
36641
+ declare module '@elastic/eui/src/components/toast/toast_action' {
36642
+ import React from 'react';
36643
+ import { ExclusiveUnion } from '@elastic/eui/src/components/common';
36644
+ import { EuiButtonEmptyProps } from '@elastic/eui/src/components/button';
36645
+ import { Props as EuiButtonProps } from '@elastic/eui/src/components/button/button';
36646
+ import { EuiToastColor } from '@elastic/eui/src/components/toast/types';
36647
+ export type EuiToastActionPrimaryProps = Omit<EuiButtonProps, 'color' | 'size' | 'fill'>;
36648
+ export type EuiToastActionSecondaryProps = Omit<EuiButtonEmptyProps, 'color' | 'size' | 'flush'>;
36649
+ type EuiToastActionPrimary = EuiToastActionPrimaryProps & {
36650
+ actionType: 'primary';
36651
+ };
36652
+ type EuiToastActionSecondary = EuiToastActionSecondaryProps & {
36653
+ actionType: 'secondary';
36654
+ };
36655
+ type EuiToastActionProps = ExclusiveUnion<EuiToastActionPrimary, EuiToastActionSecondary>;
36656
+ export const EuiToastAction: ({ children, actionType, color, ...rest }: EuiToastActionProps & {
36657
+ color?: EuiToastColor;
36658
+ }) => React.JSX.Element;
36659
+ export {};
36461
36660
 
36462
36661
  }
36463
36662
  declare module '@elastic/eui/src/components/toast/toast' {
36464
36663
  import { FunctionComponent, HTMLAttributes, ReactNode } from 'react';
36465
36664
  import { CommonProps } from '@elastic/eui/src/components/common';
36466
36665
  import { IconType } from '@elastic/eui/src/components/icon';
36467
- export const COLORS: readonly ["primary", "success", "warning", "danger"];
36468
- type ToastColor = (typeof COLORS)[number];
36666
+ import { type EuiNotificationIconType } from '@elastic/eui/src/components/notification_icon/notification_icon';
36667
+ import { EuiToastActionPrimaryProps, EuiToastActionSecondaryProps } from '@elastic/eui/src/components/toast/toast_action';
36668
+ import { EuiToastColor } from '@elastic/eui/src/components/toast/types';
36669
+ export const COLOR_TO_NOTIFICATION_ICON_MAP: Record<EuiToastColor, EuiNotificationIconType>;
36469
36670
  export interface EuiToastProps extends CommonProps, Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
36671
+ /**
36672
+ * Title of the toast. Should be used with text only. Do not pass complex content or custom components.
36673
+ * Ensure to always pass a title. It's currently marked as optional for backwards compatibility.
36674
+ * In a future major release, this will be required.
36675
+ */
36470
36676
  title?: ReactNode;
36471
- color?: ToastColor;
36677
+ /**
36678
+ * Main component text. Accepts text, text block elements such as `<p>`, and inline elements such as `<span>`, `<strong>`, `<em>` or `<EuiLink>`.
36679
+ * Avoid passing complex layouts or custom components. Use `children` instead.
36680
+ */
36681
+ text?: ReactNode;
36682
+ /**
36683
+ * Can be used for additional, non-inline content. Use sparingly, as toasts are not meant to have complex content.
36684
+ * Where possible, use `text` and `actionProps` instead to display text and actions.
36685
+ */
36686
+ children?: ReactNode;
36687
+ color?: EuiToastColor;
36688
+ /**
36689
+ * Defines a custom icon to be displayed.
36690
+ * When no `iconType` is set, a default icon will be used based on the `color` of the toast.
36691
+ */
36472
36692
  iconType?: IconType;
36473
36693
  onClose?: () => void;
36694
+ /**
36695
+ * Duration in milliseconds that drives a countdown animation on the toast's decor bar.
36696
+ * When not set the bar is static at full width.
36697
+ */
36698
+ animationMs?: number;
36699
+ /**
36700
+ * Props for primary and secondary actions within the toast.
36701
+ */
36702
+ actionProps?: {
36703
+ primary?: EuiToastActionPrimaryProps;
36704
+ secondary?: EuiToastActionSecondaryProps;
36705
+ };
36474
36706
  }
36475
36707
  export const EuiToast: FunctionComponent<EuiToastProps>;
36476
- export {};
36477
36708
 
36478
36709
  }
36479
36710
  declare module '@elastic/eui/src/services/time/timer' {
@@ -36502,6 +36733,11 @@ declare module '@elastic/eui/src/components/toast/global_toast_list.styles' {
36502
36733
  * 2. Allow some padding for shadow
36503
36734
  */
36504
36735
  euiGlobalToastList: import("@emotion/react").SerializedStyles;
36736
+ content: import("@emotion/react").SerializedStyles;
36737
+ notificationBadge: {
36738
+ notificationBadge: import("@emotion/react").SerializedStyles;
36739
+ hasFadeOut: import("@emotion/react").SerializedStyles;
36740
+ };
36505
36741
  right: import("@emotion/react").SerializedStyles;
36506
36742
  left: import("@emotion/react").SerializedStyles;
36507
36743
  euiGlobalToastListDismissButton: import("@emotion/react").SerializedStyles;
@@ -36567,6 +36803,12 @@ declare module '@elastic/eui/src/components/toast/global_toast_list' {
36567
36803
  * @default log
36568
36804
  */
36569
36805
  role?: HTMLAttributes<HTMLElement>['role'];
36806
+ /**
36807
+ * Renders a notification badge indicating the amount of toasts in the list.
36808
+ *
36809
+ * @default false
36810
+ */
36811
+ showNotificationBadge?: boolean;
36570
36812
  }
36571
36813
  export const EuiGlobalToastList: FunctionComponent<EuiGlobalToastListProps>;
36572
36814
  export {};
@@ -37900,18 +38142,17 @@ declare module '@elastic/eui/src/services/container_query' {
37900
38142
 
37901
38143
  declare module '@elastic/eui' {
37902
38144
  export type EuiTokensObject = {
37903
- "euiTourStepIndicator.isActive": any;
38145
+ "euiTreeView.listNavigationInstructions": any;
38146
+ "euiTourStepIndicator.isActive": any;
37904
38147
  "euiTourStepIndicator.isComplete": any;
37905
38148
  "euiTourStepIndicator.isIncomplete": any;
37906
38149
  "euiTourStepIndicator.ariaLabel": any;
37907
38150
  "euiTourFooter.endTour": any;
37908
38151
  "euiTourFooter.skipTour": any;
37909
38152
  "euiTourFooter.closeTour": any;
37910
- "euiTreeView.listNavigationInstructions": any;
37911
38153
  "euiIconTip.defaultAriaLabel": any;
37912
- "euiToast.newNotification": any;
37913
- "euiToast.notification": any;
37914
38154
  "euiToast.dismissToast": any;
38155
+ "euiToast.newNotification": any;
37915
38156
  "euiGlobalToastList.clearAllToastsButtonAriaLabel": any;
37916
38157
  "euiGlobalToastList.clearAllToastsButtonDisplayText": any;
37917
38158
  "euiStat.loadingText": any;
@@ -37934,6 +38175,7 @@ declare module '@elastic/eui' {
37934
38175
  "euiTableHeaderCell.titleTextWithDesc": any;
37935
38176
  "euiSkeletonLoading.loadedAriaText": any;
37936
38177
  "euiSkeletonLoading.loadingAriaText": any;
38178
+ "euiSideNav.mobileToggleAriaLabel": any;
37937
38179
  "euiSelectable.loadingOptions": any;
37938
38180
  "euiSelectable.noMatchingOptions": any;
37939
38181
  "euiSelectable.noAvailableOptions": any;
@@ -37947,12 +38189,13 @@ declare module '@elastic/eui' {
37947
38189
  "euiResizableButton.horizontalResizerAriaLabel": any;
37948
38190
  "euiResizableButton.verticalResizerAriaLabel": any;
37949
38191
  "euiProgress.valueText": any;
37950
- "euiSideNav.mobileToggleAriaLabel": any;
37951
38192
  "euiPopover.screenReaderAnnouncement": any;
37952
38193
  "euiPaginationButtonArrow.firstPage": any;
37953
38194
  "euiPaginationButtonArrow.previousPage": any;
37954
38195
  "euiPaginationButtonArrow.nextPage": any;
37955
38196
  "euiPaginationButtonArrow.lastPage": any;
38197
+ "euiPaginationButton.longPageString": any;
38198
+ "euiPaginationButton.shortPageString": any;
37956
38199
  "euiPagination.pageOfTotalCompressed": any;
37957
38200
  "euiPagination.firstRangeAriaLabel": any;
37958
38201
  "euiPagination.lastRangeAriaLabel": any;
@@ -37961,12 +38204,8 @@ declare module '@elastic/eui' {
37961
38204
  "euiPagination.of": any;
37962
38205
  "euiPagination.collection": any;
37963
38206
  "euiPagination.fromEndLabel": any;
37964
- "euiPaginationButton.longPageString": any;
37965
- "euiPaginationButton.shortPageString": any;
37966
38207
  "euiMark.highlightStart": any;
37967
38208
  "euiMark.highlightEnd": any;
37968
- "euiModal.screenReaderModalDialog": any;
37969
- "euiModal.closeModal": any;
37970
38209
  "euiMarkdownEditorToolbar.editor": any;
37971
38210
  "euiMarkdownEditorToolbar.previewMarkdown": any;
37972
38211
  "euiMarkdownEditorHelpButton.mdSyntaxLink": any;
@@ -37983,6 +38222,8 @@ declare module '@elastic/eui' {
37983
38222
  "euiMarkdownEditorFooter.showSyntaxErrors": any;
37984
38223
  "euiMarkdownEditorFooter.errorsTitle": any;
37985
38224
  "euiLoadingStrings.ariaLabel": any;
38225
+ "euiModal.screenReaderModalDialog": any;
38226
+ "euiModal.closeModal": any;
37986
38227
  "euiExternalLinkIcon.newTarget.screenReaderOnlyText": any;
37987
38228
  "euiExternalLinkIcon.externalTarget.screenReaderOnlyText": any;
37988
38229
  "euiInlineEditForm.saveButtonAriaLabel": any;
@@ -37991,13 +38232,16 @@ declare module '@elastic/eui' {
37991
38232
  "euiInlineEditForm.activateEditModeDescription": any;
37992
38233
  "euiImageButton.openFullScreen": any;
37993
38234
  "euiImageButton.closeFullScreen": any;
38235
+ "euiForm.addressFormErrors": any;
37994
38236
  "euiFlyoutMenu.back": any;
37995
38237
  "euiFlyoutMenu.history": any;
38238
+ "euiFlyoutMenu.pagination.previous": any;
38239
+ "euiFlyoutMenu.pagination.next": any;
38240
+ "euiFlyoutMenu.pagination.counter": any;
37996
38241
  "euiFlyout.screenReaderModalDialog": any;
37997
38242
  "euiFlyout.screenReaderNoOverlayMaskDialog": any;
37998
38243
  "euiFlyout.screenReaderFocusTrapShards": any;
37999
38244
  "euiFlyoutCloseButton.ariaLabel": any;
38000
- "euiForm.addressFormErrors": any;
38001
38245
  "euiFilterButton.filterBadgeActiveAriaLabel": any;
38002
38246
  "euiFilterButton.filterBadgeAvailableAriaLabel": any;
38003
38247
  "euiErrorBoundary.error": any;
@@ -38005,7 +38249,7 @@ declare module '@elastic/eui' {
38005
38249
  "euiDataGrid.ariaLabelledBy": any;
38006
38250
  "euiDataGrid.screenReaderNotice": any;
38007
38251
  "euiContextMenuPanelTitle.ariaLabel": any;
38008
- "euiComboBox.listboxAriaLabel": any;
38252
+ "euiCollapsibleNavBeta.ariaLabel": any;
38009
38253
  "euiSaturation.ariaLabel": any;
38010
38254
  "euiSaturation.roleDescription": any;
38011
38255
  "euiSaturation.screenReaderInstructions": any;
@@ -38022,20 +38266,21 @@ declare module '@elastic/eui' {
38022
38266
  "euiColorPicker.openLabel": any;
38023
38267
  "euiColorPicker.closeLabel": any;
38024
38268
  "euiColorPicker.ariaLabel": any;
38025
- "euiCollapsibleNavBeta.ariaLabel": any;
38026
- "euiCallOut.dismissAriaLabel": any;
38269
+ "euiComboBox.listboxAriaLabel": any;
38027
38270
  "euiCodeBlockFullScreen.fullscreenCollapse": any;
38028
38271
  "euiCodeBlockFullScreen.fullscreenExpand": any;
38029
38272
  "euiCodeBlockFullScreen.ariaLabel": any;
38030
38273
  "euiCodeBlockCopy.copy": any;
38031
38274
  "euiCodeBlockAnnotations.ariaLabel": any;
38032
38275
  "euiCodeBlock.label": any;
38033
- "euiBreadcrumbs.nav.ariaLabel": any;
38034
- "euiBreadcrumb.collapsedBadge.ariaLabel": any;
38035
- "euiBreadcrumb.popoverAriaLabel": any;
38276
+ "euiCallOut.dismissAriaLabel": any;
38036
38277
  "euiBottomBar.screenReaderHeading": any;
38037
38278
  "euiBottomBar.customScreenReaderAnnouncement": any;
38038
38279
  "euiBottomBar.screenReaderAnnouncement": any;
38280
+ "euiBreadcrumbs.nav.ariaLabel": any;
38281
+ "euiBreadcrumb.collapsedBadge.ariaLabel": any;
38282
+ "euiBreadcrumb.popoverAriaLabel": any;
38283
+ "euiBanner.dismissAriaLabel": any;
38039
38284
  "euiCollapsedItemActions.allActionsTooltip": any;
38040
38285
  "euiCollapsedItemActions.allActions": any;
38041
38286
  "euiCollapsedItemActions.allActionsDisabled": any;
@@ -38048,7 +38293,6 @@ declare module '@elastic/eui' {
38048
38293
  "euiBasicTable.deselectRows": any;
38049
38294
  "euiBasicTable.selectThisRow": any;
38050
38295
  "euiBasicTable.tablePagination": any;
38051
- "euiBanner.dismissAriaLabel": any;
38052
38296
  "euiTablePagination.allRows": any;
38053
38297
  "euiTablePagination.rowsPerPage": any;
38054
38298
  "euiTablePagination.rowsPerPageOptionShowAllRows": any;
@@ -38070,22 +38314,37 @@ declare module '@elastic/eui' {
38070
38314
  "euiFieldValueSelectionFilter.buttonLabelHint": any;
38071
38315
  "euiPinnableListGroup.pinExtraActionLabel": any;
38072
38316
  "euiPinnableListGroup.pinnedExtraActionLabel": any;
38073
- "euiHeaderLinks.appNavigation": any;
38074
- "euiHeaderLinks.openNavigationMenu": any;
38075
- "euiFlyoutManaged.defaultTitle": any;
38076
38317
  "euiSuperSelect.screenReaderAnnouncement": any;
38077
38318
  "euiSuperSelect.ariaLabel": any;
38078
38319
  "euiRange.sliderScreenReaderInstructions": any;
38079
38320
  "euiDualRange.sliderScreenReaderInstructions": any;
38080
38321
  "euiFormControlLayoutDelimited.delimiterLabel": any;
38081
38322
  "euiFormControlLayoutClearButton.label": any;
38082
- "euiFieldSearch.clearSearchButtonLabel": any;
38083
38323
  "euiFilePicker.promptText": any;
38084
38324
  "euiFilePicker.filesSelected": any;
38085
38325
  "euiFilePicker.removeSelectedAriaLabel": any;
38086
38326
  "euiFilePicker.removeSelected": any;
38327
+ "euiFieldSearch.clearSearchButtonLabel": any;
38087
38328
  "euiFieldPassword.showPassword": any;
38088
38329
  "euiFieldPassword.maskPassword": any;
38330
+ "euiHeaderLinks.appNavigation": any;
38331
+ "euiHeaderLinks.openNavigationMenu": any;
38332
+ "euiFlyoutManaged.defaultTitle": any;
38333
+ "euiTimeWindowButtons.previousDescription": any;
38334
+ "euiTimeWindowButtons.nextDescription": any;
38335
+ "euiTimeWindowButtons.invalidShiftLabel": any;
38336
+ "euiTimeWindowButtons.invalidZoomInLabel": any;
38337
+ "euiTimeWindowButtons.cannotZoomInLabel": any;
38338
+ "euiTimeWindowButtons.invalidZoomOutLabel": any;
38339
+ "euiTimeWindowButtons.previousLabel": any;
38340
+ "euiTimeWindowButtons.zoomInLabel": any;
38341
+ "euiTimeWindowButtons.zoomOutLabel": any;
38342
+ "euiTimeWindowButtons.nextLabel": any;
38343
+ "euiSuperUpdateButton.updatingButtonLabel": any;
38344
+ "euiSuperUpdateButton.updateButtonLabel": any;
38345
+ "euiSuperUpdateButton.refreshButtonLabel": any;
38346
+ "euiSuperUpdateButton.cannotUpdateTooltip": any;
38347
+ "euiSuperUpdateButton.clickToApplyTooltip": any;
38089
38348
  "euiTimeOptions.last": any;
38090
38349
  "euiTimeOptions.next": any;
38091
38350
  "euiTimeOptions.seconds": any;
@@ -38124,30 +38383,6 @@ declare module '@elastic/eui' {
38124
38383
  "euiTimeOptions.weekToDate": any;
38125
38384
  "euiTimeOptions.monthToDate": any;
38126
38385
  "euiTimeOptions.yearToDate": any;
38127
- "euiTimeWindowButtons.previousDescription": any;
38128
- "euiTimeWindowButtons.nextDescription": any;
38129
- "euiTimeWindowButtons.invalidShiftLabel": any;
38130
- "euiTimeWindowButtons.invalidZoomInLabel": any;
38131
- "euiTimeWindowButtons.cannotZoomInLabel": any;
38132
- "euiTimeWindowButtons.invalidZoomOutLabel": any;
38133
- "euiTimeWindowButtons.previousLabel": any;
38134
- "euiTimeWindowButtons.zoomInLabel": any;
38135
- "euiTimeWindowButtons.zoomOutLabel": any;
38136
- "euiTimeWindowButtons.nextLabel": any;
38137
- "euiSuperUpdateButton.updatingButtonLabel": any;
38138
- "euiSuperUpdateButton.updateButtonLabel": any;
38139
- "euiSuperUpdateButton.refreshButtonLabel": any;
38140
- "euiSuperUpdateButton.cannotUpdateTooltip": any;
38141
- "euiSuperUpdateButton.clickToApplyTooltip": any;
38142
- "euiPrettyInterval.seconds": any;
38143
- "euiPrettyInterval.minutes": any;
38144
- "euiPrettyInterval.hours": any;
38145
- "euiPrettyInterval.days": any;
38146
- "euiPrettyInterval.secondsShorthand": any;
38147
- "euiPrettyInterval.minutesShorthand": any;
38148
- "euiPrettyInterval.hoursShorthand": any;
38149
- "euiPrettyInterval.daysShorthand": any;
38150
- "euiPrettyInterval.off": any;
38151
38386
  "euiPrettyDuration.lastDurationSeconds": any;
38152
38387
  "euiPrettyDuration.nextDurationSeconds": any;
38153
38388
  "euiPrettyDuration.lastDurationMinutes": any;
@@ -38172,6 +38407,15 @@ declare module '@elastic/eui' {
38172
38407
  "euiPrettyDuration.now": any;
38173
38408
  "euiPrettyDuration.invalid": any;
38174
38409
  "euiPrettyDuration.fallbackDuration": any;
38410
+ "euiPrettyInterval.seconds": any;
38411
+ "euiPrettyInterval.minutes": any;
38412
+ "euiPrettyInterval.hours": any;
38413
+ "euiPrettyInterval.days": any;
38414
+ "euiPrettyInterval.secondsShorthand": any;
38415
+ "euiPrettyInterval.minutesShorthand": any;
38416
+ "euiPrettyInterval.hoursShorthand": any;
38417
+ "euiPrettyInterval.daysShorthand": any;
38418
+ "euiPrettyInterval.off": any;
38175
38419
  "euiRefreshInterval.fullDescriptionOff": any;
38176
38420
  "euiRefreshInterval.fullDescriptionOn": any;
38177
38421
  "euiRefreshInterval.toggleLabel": any;
@@ -38247,6 +38491,13 @@ declare module '@elastic/eui' {
38247
38491
  "euiColumnSelector.searchcolumns": any;
38248
38492
  "euiColumnSelector.selectAll": any;
38249
38493
  "euiColumnSelector.hideAll": any;
38494
+ "euiCollapsibleNavButton.ariaLabelExpand": any;
38495
+ "euiCollapsibleNavButton.ariaLabelCollapse": any;
38496
+ "euiCollapsibleNavButton.ariaLabelOpen": any;
38497
+ "euiCollapsibleNavButton.ariaLabelClose": any;
38498
+ "euiCollapsibleNavKibanaSolution.switcherTitle": any;
38499
+ "euiCollapsibleNavKibanaSolution.switcherAriaLabel": any;
38500
+ "euiCollapsibleNavKibanaSolution.groupLabel": any;
38250
38501
  "euiComboBoxOptionsList.loadingOptions": any;
38251
38502
  "euiComboBoxOptionsList.delimiterMessage": any;
38252
38503
  "euiComboBoxOptionsList.alreadyAdded": any;
@@ -38255,28 +38506,10 @@ declare module '@elastic/eui' {
38255
38506
  "euiComboBoxOptionsList.noAvailableOptions": any;
38256
38507
  "euiComboBoxOptionsList.allOptionsSelected": any;
38257
38508
  "euiComboBoxPill.removeSelection": any;
38258
- "euiCollapsibleNavButton.ariaLabelExpand": any;
38259
- "euiCollapsibleNavButton.ariaLabelCollapse": any;
38260
- "euiCollapsibleNavButton.ariaLabelOpen": any;
38261
- "euiCollapsibleNavButton.ariaLabelClose": any;
38262
- "euiCollapsibleNavKibanaSolution.switcherTitle": any;
38263
- "euiCollapsibleNavKibanaSolution.switcherAriaLabel": any;
38264
- "euiCollapsibleNavKibanaSolution.groupLabel": any;
38265
38509
  "euiCardSelect.selected": any;
38266
38510
  "euiCardSelect.unavailable": any;
38267
38511
  "euiCardSelect.select": any;
38268
38512
  "euiAccordionChildrenLoading.message": any;
38269
- "euiRecentlyUsed.legend": any;
38270
- "euiQuickSelectPopover.buttonLabel": any;
38271
- "euiCommonlyUsedTimeRanges.legend": any;
38272
- "euiQuickSelect.quickSelectTitle": any;
38273
- "euiQuickSelect.previousLabel": any;
38274
- "euiQuickSelect.nextLabel": any;
38275
- "euiQuickSelect.tenseLabel": any;
38276
- "euiQuickSelect.valueLabel": any;
38277
- "euiQuickSelect.unitLabel": any;
38278
- "euiQuickSelect.applyButton": any;
38279
- "euiQuickSelect.fullDescription": any;
38280
38513
  "euiRelativeTab.numberInputLabel": any;
38281
38514
  "euiRelativeTab.numberInputError": any;
38282
38515
  "euiRelativeTab.dateInputError": any;
@@ -38294,6 +38527,17 @@ declare module '@elastic/eui' {
38294
38527
  "euiDatePopoverButton.outdatedTitle": any;
38295
38528
  "euiAbsoluteTab.dateFormatButtonLabel": any;
38296
38529
  "euiAbsoluteTab.dateFormatError": any;
38530
+ "euiRecentlyUsed.legend": any;
38531
+ "euiQuickSelectPopover.buttonLabel": any;
38532
+ "euiQuickSelect.quickSelectTitle": any;
38533
+ "euiQuickSelect.previousLabel": any;
38534
+ "euiQuickSelect.nextLabel": any;
38535
+ "euiQuickSelect.tenseLabel": any;
38536
+ "euiQuickSelect.valueLabel": any;
38537
+ "euiQuickSelect.unitLabel": any;
38538
+ "euiQuickSelect.applyButton": any;
38539
+ "euiQuickSelect.fullDescription": any;
38540
+ "euiCommonlyUsedTimeRanges.legend": any;
38297
38541
  "euiDataGridCell.focusTrapExitPrompt": any;
38298
38542
  "euiDataGridCell.focusTrapEnterPrompt": any;
38299
38543
  "euiDataGridCell.focusTrapEnteredExitPrompt": any;