@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
@@ -1,14 +1,7 @@
1
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
- import _createClass from "@babel/runtime/helpers/createClass";
4
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
5
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
6
- import _inherits from "@babel/runtime/helpers/inherits";
7
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
8
3
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9
4
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
11
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
12
5
  /*
13
6
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
14
7
  * or more contributor license agreements. Licensed under the Elastic License
@@ -17,13 +10,13 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
17
10
  * Side Public License, v 1.
18
11
  */
19
12
 
20
- import React, { Component } from 'react';
21
- import { htmlIdGenerator } from '../../../services';
13
+ import React, { useState } from 'react';
14
+ import { useGeneratedHtmlId } from '../../../services';
22
15
  import { EuiI18n } from '../../i18n';
23
16
  import { EuiFlexGroup, EuiFlexItem } from '../../flex';
24
17
  import { EuiSelect, EuiFieldNumber, EuiFormLabel, EuiSwitch } from '../../form';
25
18
  import { EuiScreenReaderOnly } from '../../accessibility';
26
- import { RenderI18nTimeOptions } from '../super_date_picker/time_options';
19
+ import { useI18nTimeOptions } from '../super_date_picker/time_options';
27
20
  import { EuiQuickSelectPanel } from '../super_date_picker/quick_select_popover/quick_select_panel';
28
21
  import { jsx as ___EmotionJSX } from "@emotion/react";
29
22
  var MILLISECONDS_IN_SECOND = 1000;
@@ -67,198 +60,181 @@ var getMinInterval = function getMinInterval(minInterval, unit) {
67
60
  value = _fromMilliseconds.value;
68
61
  return Math.floor(value || 0);
69
62
  };
70
- export var EuiRefreshInterval = /*#__PURE__*/function (_Component) {
71
- function EuiRefreshInterval() {
72
- var _this;
73
- _classCallCheck(this, EuiRefreshInterval);
74
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
75
- args[_key] = arguments[_key];
63
+ export var EuiRefreshInterval = function EuiRefreshInterval(_ref) {
64
+ var _ref$isPaused = _ref.isPaused,
65
+ isPaused = _ref$isPaused === void 0 ? true : _ref$isPaused,
66
+ _ref$refreshInterval = _ref.refreshInterval,
67
+ refreshInterval = _ref$refreshInterval === void 0 ? 1000 : _ref$refreshInterval,
68
+ _ref$minInterval = _ref.minInterval,
69
+ minInterval = _ref$minInterval === void 0 ? 0 : _ref$minInterval,
70
+ intervalUnits = _ref.intervalUnits,
71
+ onRefreshChange = _ref.onRefreshChange;
72
+ var _useState = useState(function () {
73
+ return _objectSpread(_objectSpread({}, fromMilliseconds(refreshInterval || 0, intervalUnits)), {}, {
74
+ min: getMinInterval(minInterval, intervalUnits)
75
+ });
76
+ }),
77
+ _useState2 = _slicedToArray(_useState, 2),
78
+ state = _useState2[0],
79
+ setState = _useState2[1];
80
+ var refreshSelectionId = useGeneratedHtmlId({
81
+ prefix: 'euiRefreshInterval'
82
+ });
83
+ var _useI18nTimeOptions = useI18nTimeOptions(),
84
+ refreshUnitsOptions = _useI18nTimeOptions.refreshUnitsOptions;
85
+ var applyRefreshInterval = function applyRefreshInterval(nextState) {
86
+ var units = nextState.units,
87
+ value = nextState.value;
88
+ if (value === '') {
89
+ return;
76
90
  }
77
- _this = _callSuper(this, EuiRefreshInterval, [].concat(args));
78
- _defineProperty(_this, "state", _objectSpread(_objectSpread({}, fromMilliseconds(_this.props.refreshInterval || 0, _this.props.intervalUnits)), {}, {
79
- min: getMinInterval(_this.props.minInterval, _this.props.intervalUnits)
80
- }));
81
- _defineProperty(_this, "generateId", htmlIdGenerator());
82
- _defineProperty(_this, "refreshSelectionId", _this.generateId());
83
- _defineProperty(_this, "onValueChange", function (event) {
84
- var sanitizedValue = parseFloat(event.target.value);
85
- _this.setState({
86
- value: isNaN(sanitizedValue) ? '' : sanitizedValue
87
- }, _this.applyRefreshInterval);
88
- });
89
- _defineProperty(_this, "onUnitsChange", function (event) {
90
- var units = event.target.value;
91
- _this.setState({
92
- units: units,
93
- min: getMinInterval(_this.props.minInterval, units)
94
- }, _this.applyRefreshInterval);
95
- });
96
- _defineProperty(_this, "startRefresh", function () {
97
- var onRefreshChange = _this.props.onRefreshChange;
98
- var _this$state = _this.state,
99
- value = _this$state.value,
100
- units = _this$state.units;
101
- if (value !== '' && value > 0 && onRefreshChange !== undefined) {
102
- onRefreshChange({
103
- refreshInterval: toMilliseconds(units, value),
104
- intervalUnits: units,
105
- isPaused: false
106
- });
107
- }
91
+ if (!onRefreshChange) {
92
+ return;
93
+ }
94
+ var refreshIntervalMs = Math.max(toMilliseconds(units, value), minInterval || 0);
95
+ onRefreshChange({
96
+ refreshInterval: refreshIntervalMs,
97
+ intervalUnits: units,
98
+ isPaused: refreshIntervalMs <= 0 ? true : !!isPaused
108
99
  });
109
- _defineProperty(_this, "handleKeyDown", function (_ref) {
110
- var key = _ref.key;
111
- if (key === 'Enter') {
112
- _this.startRefresh();
113
- }
100
+ };
101
+ var onValueChange = function onValueChange(event) {
102
+ var sanitizedValue = parseFloat(event.target.value);
103
+ var newValue = isNaN(sanitizedValue) ? '' : sanitizedValue;
104
+ var nextState = _objectSpread(_objectSpread({}, state), {}, {
105
+ value: newValue
114
106
  });
115
- _defineProperty(_this, "applyRefreshInterval", function () {
116
- var _this$props = _this.props,
117
- onRefreshChange = _this$props.onRefreshChange,
118
- isPaused = _this$props.isPaused,
119
- minInterval = _this$props.minInterval;
120
- var _this$state2 = _this.state,
121
- units = _this$state2.units,
122
- value = _this$state2.value;
123
- if (value === '') {
124
- return;
125
- }
126
- if (!onRefreshChange) {
127
- return;
128
- }
129
- var refreshInterval = Math.max(toMilliseconds(units, value), minInterval || 0);
130
- onRefreshChange({
131
- refreshInterval: refreshInterval,
132
- intervalUnits: units,
133
- isPaused: refreshInterval <= 0 ? true : !!isPaused
134
- });
107
+ setState(nextState);
108
+ applyRefreshInterval(nextState);
109
+ };
110
+ var onUnitsChange = function onUnitsChange(event) {
111
+ var units = event.target.value;
112
+ var nextState = _objectSpread(_objectSpread({}, state), {}, {
113
+ units: units,
114
+ min: getMinInterval(minInterval, units)
135
115
  });
136
- _defineProperty(_this, "toggleRefresh", function () {
137
- var _this$props2 = _this.props,
138
- onRefreshChange = _this$props2.onRefreshChange,
139
- isPaused = _this$props2.isPaused;
140
- var _this$state3 = _this.state,
141
- units = _this$state3.units,
142
- value = _this$state3.value;
143
- if (!onRefreshChange || value === '') {
144
- return;
145
- }
116
+ setState(nextState);
117
+ applyRefreshInterval(nextState);
118
+ };
119
+ var startRefresh = function startRefresh() {
120
+ var value = state.value,
121
+ units = state.units;
122
+ if (value !== '' && value > 0 && onRefreshChange !== undefined) {
146
123
  onRefreshChange({
147
124
  refreshInterval: toMilliseconds(units, value),
148
125
  intervalUnits: units,
149
- isPaused: !isPaused
126
+ isPaused: false
150
127
  });
128
+ }
129
+ };
130
+ var handleKeyDown = function handleKeyDown(_ref2) {
131
+ var key = _ref2.key;
132
+ if (key === 'Enter') {
133
+ startRefresh();
134
+ }
135
+ };
136
+ var toggleRefresh = function toggleRefresh() {
137
+ if (!onRefreshChange || state.value === '') {
138
+ return;
139
+ }
140
+ var units = state.units,
141
+ value = state.value;
142
+ onRefreshChange({
143
+ refreshInterval: toMilliseconds(units, value),
144
+ intervalUnits: units,
145
+ isPaused: !isPaused
151
146
  });
152
- _defineProperty(_this, "renderScreenReaderText", function (refreshUnitsOptions) {
153
- var isPaused = _this.props.isPaused;
154
- var _this$state4 = _this.state,
155
- value = _this$state4.value,
156
- units = _this$state4.units;
157
- var options = refreshUnitsOptions.find(function (_ref2) {
158
- var value = _ref2.value;
159
- return value === units;
160
- });
161
- var optionText = options ? options.text : '';
162
- var fullDescription = isPaused ? ___EmotionJSX(EuiI18n, {
163
- token: "euiRefreshInterval.fullDescriptionOff",
164
- default: "Refresh is off, interval set to {optionValue} {optionText}.",
165
- values: {
166
- optionValue: value,
167
- optionText: optionText
168
- }
169
- }) : ___EmotionJSX(EuiI18n, {
170
- token: "euiRefreshInterval.fullDescriptionOn",
171
- default: "Refresh is on, interval set to {optionValue} {optionText}.",
172
- values: {
173
- optionValue: value,
174
- optionText: optionText
175
- }
176
- });
177
- return ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", {
178
- id: _this.refreshSelectionId
179
- }, fullDescription));
147
+ };
148
+ var renderScreenReaderText = function renderScreenReaderText() {
149
+ var value = state.value,
150
+ units = state.units;
151
+ var options = refreshUnitsOptions.find(function (_ref3) {
152
+ var value = _ref3.value;
153
+ return value === units;
180
154
  });
181
- return _this;
182
- }
183
- _inherits(EuiRefreshInterval, _Component);
184
- return _createClass(EuiRefreshInterval, [{
185
- key: "render",
186
- value: function render() {
187
- var _this2 = this;
188
- var isPaused = this.props.isPaused;
189
- var _this$state5 = this.state,
190
- value = _this$state5.value,
191
- units = _this$state5.units,
192
- min = _this$state5.min;
193
- return ___EmotionJSX(EuiI18n, {
194
- tokens: ['euiRefreshInterval.toggleLabel', 'euiRefreshInterval.toggleAriaLabel', 'euiRefreshInterval.valueAriaLabel', 'euiRefreshInterval.unitsAriaLabel'],
195
- defaults: ['Refresh every', 'Toggle refresh', 'Refresh interval value', 'Refresh interval units']
196
- }, function (_ref3) {
197
- var _ref4 = _slicedToArray(_ref3, 4),
198
- toggleLabel = _ref4[0],
199
- toggleAriaLabel = _ref4[1],
200
- valueAriaLabel = _ref4[2],
201
- unitsAriaLabel = _ref4[3];
202
- return ___EmotionJSX(RenderI18nTimeOptions, null, function (_ref5) {
203
- var refreshUnitsOptions = _ref5.refreshUnitsOptions;
204
- return ___EmotionJSX(EuiQuickSelectPanel, null, ___EmotionJSX(EuiFlexGroup, {
205
- alignItems: "center",
206
- gutterSize: "s",
207
- responsive: false,
208
- wrap: true
209
- }, ___EmotionJSX(EuiFlexItem, {
210
- grow: false
211
- }, ___EmotionJSX(EuiSwitch, {
212
- "data-test-subj": "superDatePickerToggleRefreshButton",
213
- checked: !isPaused,
214
- onChange: _this2.toggleRefresh,
215
- compressed: true
216
- // The IDs attached to this visible label are unused - we override with our own aria-label
217
- ,
218
- label: ___EmotionJSX(EuiFormLabel, null, toggleLabel),
219
- "aria-label": toggleAriaLabel,
220
- "aria-labelledby": undefined,
221
- "aria-describedby": _this2.refreshSelectionId
222
- })), ___EmotionJSX(EuiFlexItem, {
223
- style: {
224
- minWidth: 60
225
- }
226
- }, ___EmotionJSX(EuiFieldNumber, {
227
- compressed: true,
228
- fullWidth: true,
229
- value: value,
230
- min: min,
231
- onChange: _this2.onValueChange,
232
- onKeyDown: _this2.handleKeyDown,
233
- isInvalid: !isPaused && (value === '' || value <= 0),
234
- disabled: isPaused,
235
- "aria-label": valueAriaLabel,
236
- "aria-describedby": _this2.refreshSelectionId,
237
- "data-test-subj": "superDatePickerRefreshIntervalInput"
238
- })), ___EmotionJSX(EuiFlexItem, {
239
- style: {
240
- minWidth: 100
241
- },
242
- grow: 2
243
- }, ___EmotionJSX(EuiSelect, {
244
- compressed: true,
245
- fullWidth: true,
246
- "aria-label": unitsAriaLabel,
247
- "aria-describedby": _this2.refreshSelectionId,
248
- value: units,
249
- disabled: isPaused,
250
- options: refreshUnitsOptions,
251
- onChange: _this2.onUnitsChange,
252
- onKeyDown: _this2.handleKeyDown,
253
- "data-test-subj": "superDatePickerRefreshIntervalUnitsSelect"
254
- }))), _this2.renderScreenReaderText(refreshUnitsOptions));
255
- });
256
- });
257
- }
258
- }]);
259
- }(Component);
260
- _defineProperty(EuiRefreshInterval, "defaultProps", {
261
- isPaused: true,
262
- refreshInterval: 1000,
263
- minInterval: 0
264
- });
155
+ var optionText = options ? options.text : '';
156
+ var fullDescription = isPaused ? ___EmotionJSX(EuiI18n, {
157
+ token: "euiRefreshInterval.fullDescriptionOff",
158
+ default: "Refresh is off, interval set to {optionValue} {optionText}.",
159
+ values: {
160
+ optionValue: value,
161
+ optionText: optionText
162
+ }
163
+ }) : ___EmotionJSX(EuiI18n, {
164
+ token: "euiRefreshInterval.fullDescriptionOn",
165
+ default: "Refresh is on, interval set to {optionValue} {optionText}.",
166
+ values: {
167
+ optionValue: value,
168
+ optionText: optionText
169
+ }
170
+ });
171
+ return ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", {
172
+ id: refreshSelectionId
173
+ }, fullDescription));
174
+ };
175
+ var value = state.value,
176
+ units = state.units,
177
+ min = state.min;
178
+ return ___EmotionJSX(EuiI18n, {
179
+ tokens: ['euiRefreshInterval.toggleLabel', 'euiRefreshInterval.toggleAriaLabel', 'euiRefreshInterval.valueAriaLabel', 'euiRefreshInterval.unitsAriaLabel'],
180
+ defaults: ['Refresh every', 'Toggle refresh', 'Refresh interval value', 'Refresh interval units']
181
+ }, function (_ref4) {
182
+ var _ref5 = _slicedToArray(_ref4, 4),
183
+ toggleLabel = _ref5[0],
184
+ toggleAriaLabel = _ref5[1],
185
+ valueAriaLabel = _ref5[2],
186
+ unitsAriaLabel = _ref5[3];
187
+ return ___EmotionJSX(EuiQuickSelectPanel, null, ___EmotionJSX(EuiFlexGroup, {
188
+ alignItems: "center",
189
+ gutterSize: "s",
190
+ responsive: false,
191
+ wrap: true
192
+ }, ___EmotionJSX(EuiFlexItem, {
193
+ grow: false
194
+ }, ___EmotionJSX(EuiSwitch, {
195
+ "data-test-subj": "superDatePickerToggleRefreshButton",
196
+ checked: !isPaused,
197
+ onChange: toggleRefresh,
198
+ compressed: true
199
+ // The IDs attached to this visible label are unused - we override with our own aria-label
200
+ ,
201
+ label: ___EmotionJSX(EuiFormLabel, null, toggleLabel),
202
+ "aria-label": toggleAriaLabel,
203
+ "aria-labelledby": undefined,
204
+ "aria-describedby": refreshSelectionId
205
+ })), ___EmotionJSX(EuiFlexItem, {
206
+ style: {
207
+ minWidth: 60
208
+ }
209
+ }, ___EmotionJSX(EuiFieldNumber, {
210
+ compressed: true,
211
+ fullWidth: true,
212
+ value: value,
213
+ min: min,
214
+ onChange: onValueChange,
215
+ onKeyDown: handleKeyDown,
216
+ isInvalid: !isPaused && (value === '' || value <= 0),
217
+ disabled: isPaused,
218
+ "aria-label": valueAriaLabel,
219
+ "aria-describedby": refreshSelectionId,
220
+ "data-test-subj": "superDatePickerRefreshIntervalInput"
221
+ })), ___EmotionJSX(EuiFlexItem, {
222
+ style: {
223
+ minWidth: 100
224
+ },
225
+ grow: 2
226
+ }, ___EmotionJSX(EuiSelect, {
227
+ compressed: true,
228
+ fullWidth: true,
229
+ "aria-label": unitsAriaLabel,
230
+ "aria-describedby": refreshSelectionId,
231
+ value: units,
232
+ disabled: isPaused,
233
+ options: refreshUnitsOptions,
234
+ onChange: onUnitsChange,
235
+ onKeyDown: handleKeyDown,
236
+ "data-test-subj": "superDatePickerRefreshIntervalUnitsSelect"
237
+ }))), renderScreenReaderText());
238
+ });
239
+ };
240
+ EuiRefreshInterval.displayName = 'EuiRefreshInterval';
@@ -395,8 +395,10 @@ export var EuiFlyoutComponent = /*#__PURE__*/forwardRef(function (props, ref) {
395
395
  // Main flyout with child flyout - don't close on ESC
396
396
  return false;
397
397
  }, [isInManagedContext, hasChildFlyout, isChildFlyout]);
398
- var handleClose = useCallback(function (event) {
399
- onClose(event);
398
+ var handleClose = useCallback(function (event, reason) {
399
+ onClose(event, reason ? {
400
+ reason: reason
401
+ } : undefined);
400
402
  }, [onClose]);
401
403
 
402
404
  /**
@@ -405,7 +407,7 @@ export var EuiFlyoutComponent = /*#__PURE__*/forwardRef(function (props, ref) {
405
407
  var onKeyDown = useCallback(function (event) {
406
408
  if (!isPushed && event.key === keys.ESCAPE && shouldCloseOnEscape) {
407
409
  event.preventDefault();
408
- handleClose(event);
410
+ handleClose(event, 'escape');
409
411
  }
410
412
  }, [handleClose, isPushed, shouldCloseOnEscape]);
411
413
  var managedFlyoutIndex = currentZIndexRef.current;
@@ -639,10 +641,10 @@ export var EuiFlyoutComponent = /*#__PURE__*/forwardRef(function (props, ref) {
639
641
  if (outsideClickCloses === false) return undefined;
640
642
  if (hasOverlayMask) {
641
643
  // The overlay mask is present, so only clicks on the mask should close the flyout, regardless of outsideClickCloses
642
- if (event.target === maskRef.current) return handleClose(event);
644
+ if (event.target === maskRef.current) return handleClose(event, 'outside-click');
643
645
  } else {
644
646
  // No overlay mask is present, so any outside clicks should close the flyout
645
- if (outsideClickCloses === true) return handleClose(event);
647
+ if (outsideClickCloses === true) return handleClose(event, 'outside-click');
646
648
  }
647
649
  // Otherwise if ownFocus is false and outsideClickCloses is undefined, outside clicks should not close the flyout
648
650
  return undefined;
@@ -694,7 +696,9 @@ export var EuiFlyoutComponent = /*#__PURE__*/forwardRef(function (props, ref) {
694
696
  }), !isPushed && screenReaderDescription, shouldRenderMenu ? ___EmotionJSX(EuiFlyoutMenu, _extends({}, flyoutMenuProps, {
695
697
  titleId: flyoutMenuId
696
698
  })) : !hideCloseButton && ___EmotionJSX(EuiFlyoutCloseButton, _extends({}, closeButtonProps, {
697
- onClose: handleClose,
699
+ onClose: function onClose(event) {
700
+ return handleClose(event, 'close-button');
701
+ },
698
702
  closeButtonPosition: closeButtonPosition,
699
703
  side: side
700
704
  })), resizable && ___EmotionJSX(EuiFlyoutResizeButton, {
@@ -1,7 +1,7 @@
1
1
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _extends from "@babel/runtime/helpers/extends";
4
- var _excluded = ["className", "title", "titleId", "hideTitle", "hideCloseButton", "historyItems", "showBackButton", "backButtonProps", "customActions", "iconType"];
4
+ var _excluded = ["className", "title", "titleId", "hideTitle", "hideCloseButton", "historyItems", "showBackButton", "backButtonProps", "customActions", "iconType", "pagination"];
5
5
  /*
6
6
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
7
7
  * or more contributor license agreements. Licensed under the Elastic License
@@ -17,7 +17,10 @@ import { EuiButtonEmpty, EuiButtonIcon } from '../button';
17
17
  import { EuiFlexGroup, EuiFlexItem } from '../flex';
18
18
  import { EuiListGroup, EuiListGroupItem } from '../list_group';
19
19
  import { EuiPopover } from '../popover';
20
+ import { EuiScreenReaderLive } from '../accessibility';
21
+ import { EuiText } from '../text';
20
22
  import { EuiTitle } from '../title';
23
+ import { EuiToolTip } from '../tool_tip';
21
24
  import { EuiFlyoutCloseButton } from './_flyout_close_button';
22
25
  import { euiFlyoutMenuStyles } from './flyout_menu.styles';
23
26
  import { EuiFlyoutMenuContext } from './flyout_menu_context';
@@ -27,6 +30,10 @@ import { EuiI18n, useEuiI18n } from '../i18n';
27
30
  * History item for the flyout menu history popover
28
31
  */
29
32
 
33
+ /**
34
+ * Pagination configuration for the flyout menu
35
+ */
36
+
30
37
  /**
31
38
  * Custom action item for the flyout menu component
32
39
  */
@@ -82,6 +89,63 @@ var HistoryPopover = function HistoryPopover(_ref) {
82
89
  }, item.title);
83
90
  })));
84
91
  };
92
+ var PaginationControls = function PaginationControls(_ref2) {
93
+ var pagination = _ref2.pagination,
94
+ styles = _ref2.styles;
95
+ var currentIndex = pagination.currentIndex,
96
+ total = pagination.total,
97
+ onPrevious = pagination.onPrevious,
98
+ onNext = pagination.onNext;
99
+ var prevLabel = useEuiI18n('euiFlyoutMenu.pagination.previous', 'Previous');
100
+ var nextLabel = useEuiI18n('euiFlyoutMenu.pagination.next', 'Next');
101
+ var counterLabel = useEuiI18n('euiFlyoutMenu.pagination.counter', '{position} of {total}', {
102
+ position: currentIndex + 1,
103
+ total: total
104
+ });
105
+ var isPrevDisabled = currentIndex === 0;
106
+ var isNextDisabled = currentIndex === total - 1;
107
+ var prevButton = ___EmotionJSX(EuiButtonIcon, {
108
+ iconType: "chevronSingleUp",
109
+ color: "text",
110
+ size: "xs",
111
+ "aria-label": prevLabel,
112
+ onClick: onPrevious,
113
+ isDisabled: isPrevDisabled,
114
+ "data-test-subj": "euiFlyoutMenuPaginationPrev"
115
+ });
116
+ var nextButton = ___EmotionJSX(EuiButtonIcon, {
117
+ iconType: "chevronSingleDown",
118
+ color: "text",
119
+ size: "xs",
120
+ "aria-label": nextLabel,
121
+ onClick: onNext,
122
+ isDisabled: isNextDisabled,
123
+ "data-test-subj": "euiFlyoutMenuPaginationNext"
124
+ });
125
+ return ___EmotionJSX(EuiFlexItem, {
126
+ grow: false
127
+ }, ___EmotionJSX(EuiFlexGroup, {
128
+ gutterSize: "xs",
129
+ alignItems: "center",
130
+ responsive: false
131
+ }, ___EmotionJSX(EuiFlexItem, {
132
+ grow: false
133
+ }, isPrevDisabled ? prevButton : ___EmotionJSX(EuiToolTip, {
134
+ content: prevLabel,
135
+ disableScreenReaderOutput: true
136
+ }, prevButton)), ___EmotionJSX(EuiFlexItem, {
137
+ grow: false
138
+ }, ___EmotionJSX(EuiText, {
139
+ size: "s",
140
+ css: styles.euiFlyoutMenu__paginationCounter,
141
+ "aria-hidden": "true"
142
+ }, counterLabel), ___EmotionJSX(EuiScreenReaderLive, null, counterLabel)), ___EmotionJSX(EuiFlexItem, {
143
+ grow: false
144
+ }, isNextDisabled ? nextButton : ___EmotionJSX(EuiToolTip, {
145
+ content: nextLabel,
146
+ disableScreenReaderOutput: true
147
+ }, nextButton))));
148
+ };
85
149
 
86
150
  /**
87
151
  * The component for the top menu bar inside a flyout. Since this is a private
@@ -92,24 +156,26 @@ var HistoryPopover = function HistoryPopover(_ref) {
92
156
  *
93
157
  * @private
94
158
  */
95
- export var EuiFlyoutMenu = function EuiFlyoutMenu(_ref2) {
96
- var className = _ref2.className,
97
- title = _ref2.title,
98
- titleId = _ref2.titleId,
99
- _ref2$hideTitle = _ref2.hideTitle,
100
- hideTitle = _ref2$hideTitle === void 0 ? true : _ref2$hideTitle,
101
- hideCloseButton = _ref2.hideCloseButton,
102
- _ref2$historyItems = _ref2.historyItems,
103
- historyItems = _ref2$historyItems === void 0 ? [] : _ref2$historyItems,
104
- showBackButton = _ref2.showBackButton,
105
- backButtonProps = _ref2.backButtonProps,
106
- customActions = _ref2.customActions,
107
- _iconType = _ref2.iconType,
108
- rest = _objectWithoutProperties(_ref2, _excluded);
159
+ export var EuiFlyoutMenu = function EuiFlyoutMenu(_ref3) {
160
+ var className = _ref3.className,
161
+ title = _ref3.title,
162
+ titleId = _ref3.titleId,
163
+ _ref3$hideTitle = _ref3.hideTitle,
164
+ hideTitle = _ref3$hideTitle === void 0 ? true : _ref3$hideTitle,
165
+ hideCloseButton = _ref3.hideCloseButton,
166
+ _ref3$historyItems = _ref3.historyItems,
167
+ historyItems = _ref3$historyItems === void 0 ? [] : _ref3$historyItems,
168
+ showBackButton = _ref3.showBackButton,
169
+ backButtonProps = _ref3.backButtonProps,
170
+ customActions = _ref3.customActions,
171
+ _iconType = _ref3.iconType,
172
+ pagination = _ref3.pagination,
173
+ rest = _objectWithoutProperties(_ref3, _excluded);
109
174
  var _useContext = useContext(EuiFlyoutMenuContext),
110
175
  onClose = _useContext.onClose;
111
176
  var styles = useEuiMemoizedStyles(euiFlyoutMenuStyles);
112
177
  var classes = classNames('euiFlyoutMenu', className);
178
+ var showPaginationControls = pagination != null && pagination.total > 1;
113
179
  var titleNode;
114
180
  if (title) {
115
181
  titleNode = ___EmotionJSX(EuiTitle, {
@@ -120,7 +186,9 @@ export var EuiFlyoutMenu = function EuiFlyoutMenu(_ref2) {
120
186
  }, title));
121
187
  }
122
188
  var handleClose = function handleClose(event) {
123
- onClose === null || onClose === void 0 || onClose(event);
189
+ onClose === null || onClose === void 0 || onClose(event, {
190
+ reason: 'close-button'
191
+ });
124
192
  };
125
193
  var closeButton = ___EmotionJSX(EuiFlyoutCloseButton, {
126
194
  onClose: handleClose,
@@ -136,13 +204,16 @@ export var EuiFlyoutMenu = function EuiFlyoutMenu(_ref2) {
136
204
  justifyContent: "spaceBetween",
137
205
  gutterSize: "none",
138
206
  responsive: false
139
- }, showBackButton && ___EmotionJSX(EuiFlexItem, {
207
+ }, showPaginationControls ? ___EmotionJSX(PaginationControls, {
208
+ pagination: pagination,
209
+ styles: styles
210
+ }) : ___EmotionJSX(React.Fragment, null, showBackButton && ___EmotionJSX(EuiFlexItem, {
140
211
  grow: false
141
212
  }, ___EmotionJSX(BackButton, backButtonProps)), historyItems.length > 0 && ___EmotionJSX(EuiFlexItem, {
142
213
  grow: false
143
214
  }, ___EmotionJSX(HistoryPopover, {
144
215
  items: historyItems
145
- })), titleNode && ___EmotionJSX(EuiFlexItem, {
216
+ }))), titleNode && ___EmotionJSX(EuiFlexItem, {
146
217
  grow: false
147
218
  }, titleNode), ___EmotionJSX(EuiFlexItem, {
148
219
  grow: true
@@ -14,6 +14,7 @@ export var euiFlyoutMenuStyles = function euiFlyoutMenuStyles(euiThemeContext) {
14
14
  euiFlyoutMenu__container: /*#__PURE__*/css("block-size:calc(", euiTheme.size.m, " * 3.5);flex-shrink:0;padding-block:", euiTheme.size.s, ";padding-inline:", euiTheme.size.s, ";border-block-end:", euiTheme.border.width.thin, " solid ", euiTheme.border.color, ";padding-block-start:calc(", euiTheme.size.m, " * 0.8);.euiTitle{padding-inline:", euiTheme.size.s, ";};label:euiFlyoutMenu__container;"),
15
15
  euiFlyoutMenu__spacer: /*#__PURE__*/css("padding-inline:", euiTheme.size.m, ";;label:euiFlyoutMenu__spacer;"),
16
16
  euiFlyoutMenu__actions: /*#__PURE__*/css("block-size:calc(", euiTheme.size.m, " * 1.8);;label:euiFlyoutMenu__actions;"),
17
- euiFlyoutMenu__hiddenTitle: /*#__PURE__*/css(euiScreenReaderOnly(), ";;label:euiFlyoutMenu__hiddenTitle;")
17
+ euiFlyoutMenu__hiddenTitle: /*#__PURE__*/css(euiScreenReaderOnly(), ";;label:euiFlyoutMenu__hiddenTitle;"),
18
+ euiFlyoutMenu__paginationCounter: /*#__PURE__*/css("color:", euiTheme.colors.textSubdued, ";white-space:nowrap;;label:euiFlyoutMenu__paginationCounter;")
18
19
  };
19
20
  };