@elastic/eui 110.0.0 → 111.1.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 (572) 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/basic_table/basic_table.js +36 -55
  5. package/es/components/basic_table/in_memory_table.js +6 -6
  6. package/es/components/beacon/beacon.styles.js +1 -1
  7. package/es/components/button/button_display/_button_display_content.js +1 -1
  8. package/es/components/button/button_empty/button_empty.js +1 -1
  9. package/es/components/button/button_group/button_group.js +1 -1
  10. package/es/components/button/button_group/button_group_button.js +1 -1
  11. package/es/components/button/button_icon/button_icon.js +1 -1
  12. package/es/components/button/index.js +2 -1
  13. package/es/components/button/split_button/index.js +10 -0
  14. package/es/components/button/split_button/split_button.js +120 -0
  15. package/es/components/button/split_button/split_button.styles.js +51 -0
  16. package/es/components/button/split_button/split_button_actions.js +115 -0
  17. package/{optimize/es/components/flyout/flyout_context.js → es/components/button/split_button/split_button_context.js} +5 -7
  18. package/es/components/call_out/call_out.js +1 -1
  19. package/es/components/card/card.js +1 -1
  20. package/es/components/collapsible_nav/collapsible_nav.js +20 -101
  21. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  22. package/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
  23. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  24. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
  25. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  26. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
  27. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
  28. package/es/components/comment_list/comment.js +2 -2
  29. package/es/components/comment_list/comment_event.js +1 -1
  30. package/es/components/comment_list/comment_list.js +2 -2
  31. package/es/components/comment_list/comment_timeline.js +1 -1
  32. package/es/components/context_menu/context_menu_item.js +1 -1
  33. package/es/components/datagrid/body/cell/data_grid_cell.js +12 -12
  34. package/es/components/datagrid/body/data_grid_body.js +7 -7
  35. package/es/components/datagrid/body/data_grid_body_custom.js +7 -7
  36. package/es/components/datagrid/body/data_grid_body_virtualized.js +7 -7
  37. package/es/components/datagrid/body/header/data_grid_header_cell.js +6 -6
  38. package/es/components/datagrid/controls/column_sorting.js +7 -7
  39. package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
  40. package/es/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
  41. package/es/components/datagrid/controls/fullscreen_selector.styles.js +1 -1
  42. package/es/components/datagrid/utils/in_memory.js +6 -6
  43. package/es/components/date_picker/date_picker.js +2 -2
  44. package/es/components/date_picker/date_picker_range.js +1 -1
  45. package/es/components/empty_prompt/empty_prompt.js +2 -2
  46. package/es/components/flex/flex_group.js +1 -1
  47. package/es/components/flyout/_flyout_overlay.js +52 -0
  48. package/es/components/flyout/_flyout_resize_button.js +32 -0
  49. package/es/components/flyout/{flyout_resizable.styles.js → _flyout_resize_button.styles.js} +11 -11
  50. package/es/components/flyout/const.js +42 -0
  51. package/es/components/flyout/flyout.component.js +481 -0
  52. package/es/components/flyout/flyout.js +77 -379
  53. package/es/components/flyout/flyout.styles.js +106 -7
  54. package/es/components/flyout/flyout_menu.js +241 -0
  55. package/es/components/flyout/flyout_menu.styles.js +19 -0
  56. package/es/components/flyout/{flyout_context.js → flyout_menu_context.js} +1 -7
  57. package/es/components/flyout/flyout_parent_context.js +36 -0
  58. package/es/components/flyout/flyout_resizable.js +33 -144
  59. package/es/components/flyout/hooks.js +25 -0
  60. package/es/components/flyout/index.js +5 -2
  61. package/es/components/flyout/manager/actions.js +153 -0
  62. package/es/components/flyout/manager/activity_stage.js +95 -0
  63. package/es/components/flyout/manager/const.js +56 -0
  64. package/es/components/flyout/manager/context.js +33 -0
  65. package/es/components/flyout/manager/flyout_child.js +75 -0
  66. package/es/components/flyout/manager/flyout_main.js +65 -0
  67. package/es/components/flyout/manager/flyout_main.styles.js +25 -0
  68. package/es/components/flyout/manager/flyout_managed.js +227 -0
  69. package/es/components/flyout/manager/flyout_managed.styles.js +69 -0
  70. package/es/components/flyout/manager/hooks.js +55 -0
  71. package/es/components/flyout/manager/index.js +31 -0
  72. package/es/components/flyout/manager/layout_mode.js +167 -0
  73. package/es/components/flyout/manager/provider.js +57 -0
  74. package/es/components/flyout/manager/reducer.js +320 -0
  75. package/es/components/flyout/manager/selectors.js +116 -0
  76. package/es/components/flyout/manager/store.js +113 -0
  77. package/es/components/flyout/manager/validation.js +85 -0
  78. package/es/components/flyout/use_flyout_resizable.js +149 -0
  79. package/es/components/flyout/use_flyout_z_index.js +46 -0
  80. package/es/components/form/field_number/field_number.js +2 -2
  81. package/es/components/form/field_text/field_text.js +2 -2
  82. package/es/components/form/form_control_button/form_control_button.js +1 -1
  83. package/es/components/form/form_control_layout/form_control_layout.js +2 -2
  84. package/es/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  85. package/es/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  86. package/es/components/form/text_area/text_area.js +2 -2
  87. package/es/components/header/header_links/header_link.js +1 -1
  88. package/es/components/header/header_links/header_links.js +1 -1
  89. package/es/components/header/header_logo/header_logo.js +1 -1
  90. package/es/components/header/header_section/header_section_item_button.js +1 -1
  91. package/es/components/horizontal_rule/horizontal_rule.js +1 -1
  92. package/es/components/icon/assets/agentBuilderRobot.js +37 -0
  93. package/es/components/icon/assets/cross_project_search.js +35 -0
  94. package/es/components/icon/assets/dashed_circle.js +35 -0
  95. package/es/components/icon/assets/product_robot.js +37 -0
  96. package/es/components/icon/icon.js +1 -1
  97. package/es/components/icon/icon_map.js +3 -0
  98. package/es/components/key_pad_menu/key_pad_menu_item.js +1 -1
  99. package/es/components/link/external_link_icon.js +6 -3
  100. package/es/components/list_group/list_group.js +2 -2
  101. package/es/components/list_group/list_group_item.js +2 -2
  102. package/es/components/list_group/list_group_item_extra_action.js +1 -1
  103. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  104. package/es/components/loading/loading_logo.js +1 -1
  105. package/es/components/markdown_editor/markdown_editor.js +1 -1
  106. package/es/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  107. package/es/components/markdown_editor/markdown_editor_footer.js +1 -1
  108. package/es/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  109. package/es/components/overlay_mask/overlay_mask.js +13 -3
  110. package/es/components/overlay_mask/overlay_mask.styles.js +11 -2
  111. package/es/components/page/page_header/page_header_content.js +2 -2
  112. package/es/components/pagination/pagination_button.js +1 -1
  113. package/es/components/provider/provider.js +2 -1
  114. package/es/components/search_bar/search_bar.js +1 -1
  115. package/es/components/selectable/selectable_list/selectable_list.js +1 -1
  116. package/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
  117. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  118. package/es/components/spacer/spacer.js +1 -1
  119. package/es/components/table/table_header_cell.js +1 -1
  120. package/es/components/timeline/timeline_item_icon.js +1 -1
  121. package/es/components/toast/global_toast_list.js +1 -1
  122. package/es/components/toast/toast.js +1 -1
  123. package/es/components/tool_tip/icon_tip.js +1 -1
  124. package/es/components/tour/tour_step_indicator.js +8 -3
  125. package/es/global_styling/mixins/_button.js +28 -9
  126. package/es/global_styling/mixins/_container_query.js +106 -0
  127. package/es/global_styling/mixins/index.js +1 -0
  128. package/es/services/container_query/container_query_hook.js +64 -0
  129. package/es/{components/flyout/sessions → services/container_query}/index.js +1 -2
  130. package/es/services/container_query/match_container.js +242 -0
  131. package/eui.d.ts +7558 -6642
  132. package/i18ntokens.json +1438 -1384
  133. package/lib/components/avatar/avatar.js +1 -1
  134. package/lib/components/badge/badge.js +1 -1
  135. package/lib/components/badge/beta_badge/beta_badge.js +1 -1
  136. package/lib/components/basic_table/basic_table.js +36 -55
  137. package/lib/components/basic_table/in_memory_table.js +6 -6
  138. package/lib/components/beacon/beacon.styles.js +1 -1
  139. package/lib/components/button/button_display/_button_display_content.js +1 -1
  140. package/lib/components/button/button_empty/button_empty.js +1 -1
  141. package/lib/components/button/button_group/button_group.js +1 -1
  142. package/lib/components/button/button_group/button_group_button.js +1 -1
  143. package/lib/components/button/button_icon/button_icon.js +1 -1
  144. package/lib/components/button/index.js +8 -1
  145. package/lib/components/button/split_button/index.js +25 -0
  146. package/lib/components/button/split_button/split_button.js +129 -0
  147. package/lib/components/button/split_button/split_button.styles.js +55 -0
  148. package/lib/components/button/split_button/split_button_actions.js +123 -0
  149. package/{optimize/lib/components/flyout/flyout_context.js → lib/components/button/split_button/split_button_context.js} +6 -7
  150. package/lib/components/call_out/call_out.js +1 -1
  151. package/lib/components/card/card.js +1 -1
  152. package/lib/components/collapsible_nav/collapsible_nav.js +20 -101
  153. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  154. package/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
  155. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  156. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
  157. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  158. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
  159. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
  160. package/lib/components/comment_list/comment.js +2 -2
  161. package/lib/components/comment_list/comment_event.js +1 -1
  162. package/lib/components/comment_list/comment_list.js +2 -2
  163. package/lib/components/comment_list/comment_timeline.js +1 -1
  164. package/lib/components/context_menu/context_menu_item.js +1 -1
  165. package/lib/components/datagrid/body/cell/data_grid_cell.js +12 -12
  166. package/lib/components/datagrid/body/data_grid_body.js +7 -7
  167. package/lib/components/datagrid/body/data_grid_body_custom.js +7 -7
  168. package/lib/components/datagrid/body/data_grid_body_virtualized.js +7 -7
  169. package/lib/components/datagrid/body/header/data_grid_header_cell.js +6 -6
  170. package/lib/components/datagrid/controls/column_sorting.js +7 -7
  171. package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
  172. package/lib/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
  173. package/lib/components/datagrid/controls/fullscreen_selector.styles.js +1 -1
  174. package/lib/components/datagrid/utils/in_memory.js +6 -6
  175. package/lib/components/date_picker/date_picker.js +2 -2
  176. package/lib/components/date_picker/date_picker_range.js +1 -1
  177. package/lib/components/empty_prompt/empty_prompt.js +2 -2
  178. package/lib/components/flex/flex_group.js +1 -1
  179. package/lib/components/flyout/_flyout_overlay.js +59 -0
  180. package/lib/components/flyout/_flyout_resize_button.js +38 -0
  181. package/{test-env/components/flyout/flyout_resizable.styles.js → lib/components/flyout/_flyout_resize_button.styles.js} +12 -12
  182. package/lib/components/flyout/const.js +49 -0
  183. package/lib/components/flyout/flyout.component.js +488 -0
  184. package/lib/components/flyout/flyout.js +102 -379
  185. package/lib/components/flyout/flyout.styles.js +106 -7
  186. package/lib/components/flyout/flyout_menu.js +243 -0
  187. package/lib/components/flyout/flyout_menu.styles.js +25 -0
  188. package/lib/components/flyout/{flyout_context.js → flyout_menu_context.js} +2 -7
  189. package/lib/components/flyout/flyout_parent_context.js +43 -0
  190. package/lib/components/flyout/flyout_resizable.js +36 -147
  191. package/lib/components/flyout/hooks.js +30 -0
  192. package/lib/components/flyout/index.js +21 -14
  193. package/lib/components/flyout/manager/actions.js +159 -0
  194. package/lib/components/flyout/manager/activity_stage.js +101 -0
  195. package/lib/components/flyout/manager/const.js +62 -0
  196. package/lib/components/flyout/manager/context.js +41 -0
  197. package/lib/components/flyout/manager/flyout_child.js +80 -0
  198. package/lib/components/flyout/manager/flyout_main.js +70 -0
  199. package/lib/components/flyout/manager/flyout_main.styles.js +31 -0
  200. package/lib/components/flyout/manager/flyout_managed.js +233 -0
  201. package/lib/components/flyout/manager/flyout_managed.styles.js +73 -0
  202. package/lib/components/flyout/manager/hooks.js +131 -0
  203. package/lib/components/flyout/manager/index.js +168 -0
  204. package/lib/components/flyout/manager/layout_mode.js +171 -0
  205. package/lib/components/flyout/manager/provider.js +63 -0
  206. package/lib/components/flyout/manager/reducer.js +325 -0
  207. package/lib/components/flyout/manager/selectors.js +122 -0
  208. package/lib/components/flyout/manager/store.js +120 -0
  209. package/lib/components/flyout/manager/validation.js +94 -0
  210. package/lib/components/flyout/use_flyout_resizable.js +153 -0
  211. package/lib/components/flyout/use_flyout_z_index.js +51 -0
  212. package/lib/components/form/field_number/field_number.js +2 -2
  213. package/lib/components/form/field_text/field_text.js +2 -2
  214. package/lib/components/form/form_control_button/form_control_button.js +1 -1
  215. package/lib/components/form/form_control_layout/form_control_layout.js +2 -2
  216. package/lib/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  217. package/lib/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  218. package/lib/components/form/text_area/text_area.js +2 -2
  219. package/lib/components/header/header_links/header_link.js +1 -1
  220. package/lib/components/header/header_links/header_links.js +1 -1
  221. package/lib/components/header/header_logo/header_logo.js +1 -1
  222. package/lib/components/header/header_section/header_section_item_button.js +1 -1
  223. package/lib/components/horizontal_rule/horizontal_rule.js +1 -1
  224. package/lib/components/icon/assets/agentBuilderRobot.js +44 -0
  225. package/lib/components/icon/assets/cross_project_search.js +42 -0
  226. package/lib/components/icon/assets/dashed_circle.js +42 -0
  227. package/lib/components/icon/assets/product_robot.js +44 -0
  228. package/lib/components/icon/icon.js +1 -1
  229. package/lib/components/icon/icon_map.js +3 -0
  230. package/lib/components/icon/svgs/cross_project_search.svg +3 -0
  231. package/lib/components/icon/svgs/dashed_circle.svg +5 -0
  232. package/lib/components/icon/svgs/product_robot.svg +4 -0
  233. package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -1
  234. package/lib/components/link/external_link_icon.js +6 -3
  235. package/lib/components/list_group/list_group.js +2 -2
  236. package/lib/components/list_group/list_group_item.js +2 -2
  237. package/lib/components/list_group/list_group_item_extra_action.js +1 -1
  238. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  239. package/lib/components/loading/loading_logo.js +1 -1
  240. package/lib/components/markdown_editor/markdown_editor.js +1 -1
  241. package/lib/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  242. package/lib/components/markdown_editor/markdown_editor_footer.js +1 -1
  243. package/lib/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  244. package/lib/components/overlay_mask/overlay_mask.js +12 -2
  245. package/lib/components/overlay_mask/overlay_mask.styles.js +11 -4
  246. package/lib/components/page/page_header/page_header_content.js +2 -2
  247. package/lib/components/pagination/pagination_button.js +1 -1
  248. package/lib/components/provider/provider.js +2 -1
  249. package/lib/components/search_bar/search_bar.js +1 -1
  250. package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
  251. package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
  252. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  253. package/lib/components/spacer/spacer.js +1 -1
  254. package/lib/components/table/table_header_cell.js +1 -1
  255. package/lib/components/timeline/timeline_item_icon.js +1 -1
  256. package/lib/components/toast/global_toast_list.js +1 -1
  257. package/lib/components/toast/toast.js +1 -1
  258. package/lib/components/tool_tip/icon_tip.js +1 -1
  259. package/lib/components/tour/tour_step_indicator.js +8 -3
  260. package/lib/global_styling/mixins/_button.js +29 -10
  261. package/lib/global_styling/mixins/_container_query.js +112 -0
  262. package/lib/global_styling/mixins/index.js +11 -0
  263. package/lib/services/container_query/container_query_hook.js +67 -0
  264. package/lib/services/container_query/index.js +16 -0
  265. package/lib/services/container_query/match_container.js +243 -0
  266. package/optimize/es/components/basic_table/basic_table.js +30 -49
  267. package/optimize/es/components/beacon/beacon.styles.js +1 -1
  268. package/optimize/es/components/button/index.js +2 -1
  269. package/optimize/es/components/button/split_button/index.js +10 -0
  270. package/optimize/es/components/button/split_button/split_button.js +98 -0
  271. package/optimize/es/components/button/split_button/split_button.styles.js +51 -0
  272. package/optimize/es/components/button/split_button/split_button_actions.js +89 -0
  273. package/optimize/es/components/button/split_button/split_button_context.js +14 -0
  274. package/optimize/es/components/collapsible_nav/collapsible_nav.js +1 -0
  275. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  276. package/optimize/es/components/datagrid/controls/fullscreen_selector.styles.js +1 -1
  277. package/optimize/es/components/empty_prompt/empty_prompt.js +1 -1
  278. package/optimize/es/components/flex/flex_group.js +1 -1
  279. package/optimize/es/components/flyout/_flyout_overlay.js +52 -0
  280. package/optimize/es/components/flyout/_flyout_resize_button.js +31 -0
  281. package/optimize/es/components/flyout/{flyout_resizable.styles.js → _flyout_resize_button.styles.js} +11 -11
  282. package/optimize/es/components/flyout/const.js +42 -0
  283. package/optimize/es/components/flyout/flyout.component.js +469 -0
  284. package/optimize/es/components/flyout/flyout.js +53 -349
  285. package/optimize/es/components/flyout/flyout.styles.js +103 -7
  286. package/optimize/es/components/flyout/flyout_menu.js +162 -0
  287. package/optimize/es/components/flyout/flyout_menu.styles.js +19 -0
  288. package/optimize/es/components/flyout/flyout_menu_context.js +10 -0
  289. package/optimize/es/components/flyout/flyout_parent_context.js +36 -0
  290. package/optimize/es/components/flyout/flyout_resizable.js +7 -138
  291. package/optimize/es/components/flyout/hooks.js +25 -0
  292. package/optimize/es/components/flyout/index.js +5 -2
  293. package/optimize/es/components/flyout/manager/actions.js +153 -0
  294. package/optimize/es/components/flyout/manager/activity_stage.js +95 -0
  295. package/optimize/es/components/flyout/manager/const.js +56 -0
  296. package/optimize/es/components/flyout/manager/context.js +33 -0
  297. package/optimize/es/components/flyout/manager/flyout_child.js +71 -0
  298. package/optimize/es/components/flyout/manager/flyout_main.js +61 -0
  299. package/optimize/es/components/flyout/manager/flyout_main.styles.js +25 -0
  300. package/optimize/es/components/flyout/manager/flyout_managed.js +223 -0
  301. package/optimize/es/components/flyout/manager/flyout_managed.styles.js +69 -0
  302. package/optimize/es/components/flyout/manager/hooks.js +55 -0
  303. package/optimize/es/components/flyout/manager/index.js +31 -0
  304. package/optimize/es/components/flyout/manager/layout_mode.js +162 -0
  305. package/optimize/es/components/flyout/manager/provider.js +53 -0
  306. package/optimize/es/components/flyout/manager/reducer.js +312 -0
  307. package/optimize/es/components/flyout/manager/selectors.js +116 -0
  308. package/optimize/es/components/flyout/manager/store.js +113 -0
  309. package/optimize/es/components/flyout/manager/types.js +1 -0
  310. package/optimize/es/components/flyout/manager/validation.js +85 -0
  311. package/optimize/es/components/flyout/types.js +1 -0
  312. package/optimize/es/components/flyout/use_flyout_resizable.js +144 -0
  313. package/optimize/es/components/flyout/use_flyout_z_index.js +46 -0
  314. package/optimize/es/components/horizontal_rule/horizontal_rule.js +1 -1
  315. package/optimize/es/components/icon/assets/agentBuilderRobot.js +36 -0
  316. package/optimize/es/components/icon/assets/cross_project_search.js +34 -0
  317. package/optimize/es/components/icon/assets/dashed_circle.js +34 -0
  318. package/optimize/es/components/icon/assets/product_robot.js +36 -0
  319. package/optimize/es/components/icon/icon_map.js +3 -0
  320. package/optimize/es/components/link/external_link_icon.js +6 -3
  321. package/optimize/es/components/overlay_mask/overlay_mask.js +13 -3
  322. package/optimize/es/components/overlay_mask/overlay_mask.styles.js +11 -2
  323. package/optimize/es/components/page/page_header/page_header_content.js +1 -1
  324. package/optimize/es/components/provider/provider.js +2 -1
  325. package/optimize/es/components/search_bar/search_bar.js +1 -1
  326. package/optimize/es/components/spacer/spacer.js +1 -1
  327. package/optimize/es/components/tour/tour_step_indicator.js +8 -3
  328. package/optimize/es/global_styling/mixins/_button.js +28 -9
  329. package/optimize/es/global_styling/mixins/_container_query.js +106 -0
  330. package/optimize/es/global_styling/mixins/index.js +1 -0
  331. package/optimize/es/services/container_query/container_query_hook.js +59 -0
  332. package/optimize/es/{components/flyout/sessions → services/container_query}/index.js +1 -2
  333. package/optimize/es/services/container_query/match_container.js +229 -0
  334. package/optimize/lib/components/basic_table/basic_table.js +30 -49
  335. package/optimize/lib/components/beacon/beacon.styles.js +1 -1
  336. package/optimize/lib/components/button/index.js +8 -1
  337. package/optimize/lib/components/button/split_button/index.js +25 -0
  338. package/optimize/lib/components/button/split_button/split_button.js +107 -0
  339. package/optimize/lib/components/button/split_button/split_button.styles.js +55 -0
  340. package/optimize/lib/components/button/split_button/split_button_actions.js +98 -0
  341. package/{test-env/components/flyout/flyout_context.js → optimize/lib/components/button/split_button/split_button_context.js} +6 -7
  342. package/optimize/lib/components/collapsible_nav/collapsible_nav.js +1 -0
  343. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  344. package/optimize/lib/components/datagrid/controls/fullscreen_selector.styles.js +1 -1
  345. package/optimize/lib/components/empty_prompt/empty_prompt.js +1 -1
  346. package/optimize/lib/components/flex/flex_group.js +1 -1
  347. package/optimize/lib/components/flyout/_flyout_overlay.js +62 -0
  348. package/optimize/lib/components/flyout/_flyout_resize_button.js +37 -0
  349. package/{lib/components/flyout/flyout_resizable.styles.js → optimize/lib/components/flyout/_flyout_resize_button.styles.js} +12 -12
  350. package/optimize/lib/components/flyout/const.js +49 -0
  351. package/optimize/lib/components/flyout/flyout.component.js +477 -0
  352. package/optimize/lib/components/flyout/flyout.js +77 -349
  353. package/optimize/lib/components/flyout/flyout.styles.js +103 -7
  354. package/optimize/lib/components/flyout/flyout_menu.js +168 -0
  355. package/optimize/lib/components/flyout/flyout_menu.styles.js +25 -0
  356. package/optimize/lib/components/flyout/flyout_menu_context.js +16 -0
  357. package/optimize/lib/components/flyout/flyout_parent_context.js +43 -0
  358. package/optimize/lib/components/flyout/flyout_resizable.js +9 -139
  359. package/optimize/lib/components/flyout/hooks.js +30 -0
  360. package/optimize/lib/components/flyout/index.js +21 -14
  361. package/optimize/lib/components/flyout/manager/actions.js +159 -0
  362. package/optimize/lib/components/flyout/manager/activity_stage.js +101 -0
  363. package/optimize/lib/components/flyout/manager/const.js +62 -0
  364. package/optimize/lib/components/flyout/manager/context.js +41 -0
  365. package/optimize/lib/components/flyout/manager/flyout_child.js +76 -0
  366. package/optimize/lib/components/flyout/manager/flyout_main.js +66 -0
  367. package/optimize/lib/components/flyout/manager/flyout_main.styles.js +31 -0
  368. package/optimize/lib/components/flyout/manager/flyout_managed.js +231 -0
  369. package/optimize/lib/components/flyout/manager/flyout_managed.styles.js +74 -0
  370. package/optimize/lib/components/flyout/manager/hooks.js +131 -0
  371. package/optimize/lib/components/flyout/manager/index.js +168 -0
  372. package/optimize/lib/components/flyout/manager/layout_mode.js +169 -0
  373. package/optimize/lib/components/flyout/manager/provider.js +61 -0
  374. package/optimize/lib/components/flyout/manager/reducer.js +318 -0
  375. package/optimize/lib/components/flyout/manager/selectors.js +122 -0
  376. package/optimize/lib/components/flyout/manager/store.js +120 -0
  377. package/optimize/lib/components/flyout/manager/validation.js +94 -0
  378. package/optimize/lib/components/flyout/types.js +5 -0
  379. package/optimize/lib/components/flyout/use_flyout_resizable.js +151 -0
  380. package/optimize/lib/components/flyout/use_flyout_z_index.js +51 -0
  381. package/optimize/lib/components/horizontal_rule/horizontal_rule.js +1 -1
  382. package/optimize/lib/components/icon/assets/agentBuilderRobot.js +44 -0
  383. package/optimize/lib/components/icon/assets/cross_project_search.js +42 -0
  384. package/optimize/lib/components/icon/assets/dashed_circle.js +42 -0
  385. package/optimize/lib/components/icon/assets/product_robot.js +44 -0
  386. package/optimize/lib/components/icon/icon_map.js +3 -0
  387. package/optimize/lib/components/icon/svgs/cross_project_search.svg +3 -0
  388. package/optimize/lib/components/icon/svgs/dashed_circle.svg +5 -0
  389. package/optimize/lib/components/icon/svgs/product_robot.svg +4 -0
  390. package/optimize/lib/components/link/external_link_icon.js +6 -3
  391. package/optimize/lib/components/overlay_mask/overlay_mask.js +12 -2
  392. package/optimize/lib/components/overlay_mask/overlay_mask.styles.js +11 -4
  393. package/optimize/lib/components/page/page_header/page_header_content.js +1 -1
  394. package/optimize/lib/components/provider/provider.js +2 -1
  395. package/optimize/lib/components/search_bar/search_bar.js +1 -1
  396. package/optimize/lib/components/spacer/spacer.js +1 -1
  397. package/optimize/lib/components/tour/tour_step_indicator.js +8 -3
  398. package/optimize/lib/global_styling/mixins/_button.js +29 -10
  399. package/optimize/lib/global_styling/mixins/_container_query.js +112 -0
  400. package/optimize/lib/global_styling/mixins/index.js +11 -0
  401. package/optimize/lib/services/container_query/container_query_hook.js +65 -0
  402. package/optimize/lib/services/container_query/index.js +16 -0
  403. package/optimize/lib/services/container_query/match_container.js +231 -0
  404. package/package.json +5 -4
  405. package/test-env/components/avatar/avatar.js +1 -1
  406. package/test-env/components/badge/badge.js +1 -1
  407. package/test-env/components/badge/beta_badge/beta_badge.js +1 -1
  408. package/test-env/components/basic_table/basic_table.js +36 -55
  409. package/test-env/components/basic_table/in_memory_table.js +6 -6
  410. package/test-env/components/beacon/beacon.styles.js +1 -1
  411. package/test-env/components/button/button_display/_button_display_content.js +1 -1
  412. package/test-env/components/button/button_empty/button_empty.js +1 -1
  413. package/test-env/components/button/button_group/button_group.js +1 -1
  414. package/test-env/components/button/button_group/button_group_button.js +1 -1
  415. package/test-env/components/button/button_icon/button_icon.js +1 -1
  416. package/test-env/components/button/index.js +8 -1
  417. package/test-env/components/button/split_button/index.js +25 -0
  418. package/test-env/components/button/split_button/split_button.js +123 -0
  419. package/test-env/components/button/split_button/split_button.styles.js +55 -0
  420. package/test-env/components/button/split_button/split_button_actions.js +120 -0
  421. package/test-env/components/button/split_button/split_button_context.js +20 -0
  422. package/test-env/components/call_out/call_out.js +1 -1
  423. package/test-env/components/card/card.js +1 -1
  424. package/test-env/components/collapsible_nav/collapsible_nav.js +20 -101
  425. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  426. package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
  427. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
  428. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
  429. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
  430. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
  431. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
  432. package/test-env/components/comment_list/comment.js +2 -2
  433. package/test-env/components/comment_list/comment_event.js +1 -1
  434. package/test-env/components/comment_list/comment_list.js +2 -2
  435. package/test-env/components/comment_list/comment_timeline.js +1 -1
  436. package/test-env/components/context_menu/context_menu_item.js +1 -1
  437. package/test-env/components/datagrid/body/cell/data_grid_cell.js +12 -12
  438. package/test-env/components/datagrid/body/data_grid_body.js +7 -7
  439. package/test-env/components/datagrid/body/data_grid_body_custom.js +7 -7
  440. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +7 -7
  441. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +6 -6
  442. package/test-env/components/datagrid/controls/column_sorting.js +7 -7
  443. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  444. package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
  445. package/test-env/components/datagrid/controls/fullscreen_selector.styles.js +1 -1
  446. package/test-env/components/datagrid/utils/in_memory.js +6 -6
  447. package/test-env/components/date_picker/date_picker.js +2 -2
  448. package/test-env/components/date_picker/date_picker_range.js +1 -1
  449. package/test-env/components/empty_prompt/empty_prompt.js +2 -2
  450. package/test-env/components/flex/flex_group.js +1 -1
  451. package/test-env/components/flyout/_flyout_overlay.js +62 -0
  452. package/test-env/components/flyout/_flyout_resize_button.js +37 -0
  453. package/{optimize/lib/components/flyout/flyout_resizable.styles.js → test-env/components/flyout/_flyout_resize_button.styles.js} +12 -12
  454. package/test-env/components/flyout/const.js +49 -0
  455. package/test-env/components/flyout/flyout.component.js +477 -0
  456. package/test-env/components/flyout/flyout.styles.js +103 -7
  457. package/test-env/components/flyout/flyout_menu.js +241 -0
  458. package/test-env/components/flyout/flyout_menu.styles.js +25 -0
  459. package/test-env/components/flyout/flyout_menu_context.js +16 -0
  460. package/test-env/components/flyout/flyout_parent_context.js +43 -0
  461. package/test-env/components/flyout/flyout_resizable.js +35 -139
  462. package/test-env/components/flyout/hooks.js +30 -0
  463. package/test-env/components/flyout/index.js +21 -14
  464. package/test-env/components/flyout/manager/actions.js +159 -0
  465. package/test-env/components/flyout/manager/activity_stage.js +101 -0
  466. package/test-env/components/flyout/manager/const.js +62 -0
  467. package/test-env/components/flyout/manager/context.js +41 -0
  468. package/test-env/components/flyout/manager/flyout_child.js +76 -0
  469. package/test-env/components/flyout/manager/flyout_main.js +66 -0
  470. package/test-env/components/flyout/manager/flyout_main.styles.js +31 -0
  471. package/test-env/components/flyout/manager/flyout_managed.js +231 -0
  472. package/test-env/components/flyout/manager/flyout_managed.styles.js +74 -0
  473. package/test-env/components/flyout/manager/hooks.js +131 -0
  474. package/test-env/components/flyout/manager/index.js +168 -0
  475. package/test-env/components/flyout/manager/layout_mode.js +169 -0
  476. package/test-env/components/flyout/manager/provider.js +61 -0
  477. package/test-env/components/flyout/manager/reducer.js +318 -0
  478. package/test-env/components/flyout/manager/selectors.js +122 -0
  479. package/test-env/components/flyout/manager/store.js +120 -0
  480. package/test-env/components/flyout/manager/types.js +5 -0
  481. package/test-env/components/flyout/manager/validation.js +94 -0
  482. package/test-env/components/flyout/types.js +5 -0
  483. package/test-env/components/flyout/use_flyout_resizable.js +151 -0
  484. package/test-env/components/flyout/use_flyout_z_index.js +51 -0
  485. package/test-env/components/form/field_number/field_number.js +2 -2
  486. package/test-env/components/form/field_text/field_text.js +2 -2
  487. package/test-env/components/form/form_control_button/form_control_button.js +1 -1
  488. package/test-env/components/form/form_control_layout/form_control_layout.js +2 -2
  489. package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  490. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  491. package/test-env/components/form/text_area/text_area.js +2 -2
  492. package/test-env/components/header/header_links/header_link.js +1 -1
  493. package/test-env/components/header/header_links/header_links.js +1 -1
  494. package/test-env/components/header/header_logo/header_logo.js +1 -1
  495. package/test-env/components/header/header_section/header_section_item_button.js +1 -1
  496. package/test-env/components/horizontal_rule/horizontal_rule.js +1 -1
  497. package/test-env/components/icon/assets/agentBuilderRobot.js +44 -0
  498. package/test-env/components/icon/assets/cross_project_search.js +42 -0
  499. package/test-env/components/icon/assets/dashed_circle.js +42 -0
  500. package/test-env/components/icon/assets/product_robot.js +44 -0
  501. package/test-env/components/icon/icon_map.js +3 -0
  502. package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
  503. package/test-env/components/link/external_link_icon.js +6 -3
  504. package/test-env/components/list_group/list_group.js +2 -2
  505. package/test-env/components/list_group/list_group_item.js +2 -2
  506. package/test-env/components/list_group/list_group_item_extra_action.js +1 -1
  507. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  508. package/test-env/components/loading/loading_logo.js +1 -1
  509. package/test-env/components/markdown_editor/markdown_editor.js +1 -1
  510. package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  511. package/test-env/components/markdown_editor/markdown_editor_footer.js +1 -1
  512. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  513. package/test-env/components/overlay_mask/overlay_mask.js +12 -2
  514. package/test-env/components/overlay_mask/overlay_mask.styles.js +11 -4
  515. package/test-env/components/page/page_header/page_header_content.js +2 -2
  516. package/test-env/components/pagination/pagination_button.js +1 -1
  517. package/test-env/components/provider/provider.js +2 -1
  518. package/test-env/components/search_bar/search_bar.js +1 -1
  519. package/test-env/components/selectable/selectable_list/selectable_list.js +1 -1
  520. package/test-env/components/selectable/selectable_list/selectable_list_item.js +1 -1
  521. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  522. package/test-env/components/spacer/spacer.js +1 -1
  523. package/test-env/components/table/table_header_cell.js +1 -1
  524. package/test-env/components/timeline/timeline_item_icon.js +1 -1
  525. package/test-env/components/toast/global_toast_list.js +1 -1
  526. package/test-env/components/toast/toast.js +1 -1
  527. package/test-env/components/tool_tip/icon_tip.js +1 -1
  528. package/test-env/components/tour/tour_step_indicator.js +8 -3
  529. package/test-env/global_styling/mixins/_button.js +29 -10
  530. package/test-env/global_styling/mixins/_container_query.js +112 -0
  531. package/test-env/global_styling/mixins/index.js +11 -0
  532. package/test-env/services/container_query/container_query_hook.js +65 -0
  533. package/test-env/services/container_query/index.js +16 -0
  534. package/test-env/services/container_query/match_container.js +231 -0
  535. package/es/components/flyout/flyout_child.js +0 -223
  536. package/es/components/flyout/flyout_child.styles.js +0 -32
  537. package/es/components/flyout/flyout_child_manager.js +0 -114
  538. package/es/components/flyout/sessions/flyout_provider.js +0 -95
  539. package/es/components/flyout/sessions/flyout_reducer.js +0 -195
  540. package/es/components/flyout/sessions/use_eui_flyout.js +0 -82
  541. package/lib/components/flyout/flyout_child.js +0 -231
  542. package/lib/components/flyout/flyout_child.styles.js +0 -38
  543. package/lib/components/flyout/flyout_child_manager.js +0 -122
  544. package/lib/components/flyout/sessions/flyout_provider.js +0 -102
  545. package/lib/components/flyout/sessions/flyout_reducer.js +0 -202
  546. package/lib/components/flyout/sessions/index.js +0 -25
  547. package/lib/components/flyout/sessions/use_eui_flyout.js +0 -88
  548. package/optimize/es/components/flyout/flyout_child.js +0 -178
  549. package/optimize/es/components/flyout/flyout_child.styles.js +0 -32
  550. package/optimize/es/components/flyout/flyout_child_manager.js +0 -100
  551. package/optimize/es/components/flyout/sessions/flyout_provider.js +0 -90
  552. package/optimize/es/components/flyout/sessions/flyout_reducer.js +0 -187
  553. package/optimize/es/components/flyout/sessions/use_eui_flyout.js +0 -82
  554. package/optimize/lib/components/flyout/flyout_child.js +0 -186
  555. package/optimize/lib/components/flyout/flyout_child.styles.js +0 -38
  556. package/optimize/lib/components/flyout/flyout_child_manager.js +0 -110
  557. package/optimize/lib/components/flyout/sessions/flyout_provider.js +0 -100
  558. package/optimize/lib/components/flyout/sessions/flyout_reducer.js +0 -195
  559. package/optimize/lib/components/flyout/sessions/index.js +0 -25
  560. package/optimize/lib/components/flyout/sessions/use_eui_flyout.js +0 -88
  561. package/test-env/components/flyout/flyout_child.js +0 -230
  562. package/test-env/components/flyout/flyout_child.styles.js +0 -38
  563. package/test-env/components/flyout/flyout_child_manager.js +0 -119
  564. package/test-env/components/flyout/sessions/flyout_provider.js +0 -100
  565. package/test-env/components/flyout/sessions/flyout_reducer.js +0 -195
  566. package/test-env/components/flyout/sessions/index.js +0 -25
  567. package/test-env/components/flyout/sessions/use_eui_flyout.js +0 -88
  568. /package/es/components/flyout/{sessions → manager}/types.js +0 -0
  569. /package/{optimize/es/components/flyout/sessions → es/components/flyout}/types.js +0 -0
  570. /package/lib/components/flyout/{sessions → manager}/types.js +0 -0
  571. /package/{optimize/lib/components/flyout/sessions → lib/components/flyout}/types.js +0 -0
  572. /package/{test-env/components/flyout/sessions → optimize/lib/components/flyout/manager}/types.js +0 -0
@@ -0,0 +1,469 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
5
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
6
+ var _excluded = ["className", "children", "as", "hideCloseButton", "flyoutMenuProps", "closeButtonProps", "closeButtonPosition", "onClose", "ownFocus", "side", "size", "paddingSize", "maxWidth", "style", "hasChildBackground", "maskProps", "type", "outsideClickCloses", "pushMinBreakpoint", "pushAnimation", "focusTrapProps", "includeFixedHeadersInFocusTrap", "includeSelectorInFocusTrap", "aria-describedby", "aria-labelledby", "id", "resizable", "minWidth", "onResize", "onAnimationEnd"],
7
+ _excluded2 = ["titleId"];
8
+ 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
+ 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
+ /*
11
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
12
+ * or more contributor license agreements. Licensed under the Elastic License
13
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
14
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
15
+ * Side Public License, v 1.
16
+ */
17
+
18
+ /* eslint-disable local/i18n */
19
+
20
+ import React, { useEffect, useLayoutEffect, useRef, useMemo, useCallback, useState, forwardRef } from 'react';
21
+ import classnames from 'classnames';
22
+ import { keys, EuiWindowEvent, useCombinedRefs, useEuiMemoizedStyles, useGeneratedHtmlId, useEuiThemeCSSVariables, focusTrapPubSub } from '../../services';
23
+ import { useCurrentSession, useIsInManagedFlyout, useFlyoutLayoutMode, useFlyoutId, useFlyoutWidth, useIsFlyoutActive, useFlyoutManager, useHasPushPadding } from './manager';
24
+ import { EuiFocusTrap } from '../focus_trap';
25
+ import { EuiI18n } from '../i18n';
26
+ import { useResizeObserver } from '../observer/resize_observer';
27
+ import { EuiScreenReaderOnly } from '../accessibility';
28
+ import { EuiFlyoutCloseButton } from './_flyout_close_button';
29
+ import { euiFlyoutStyles, composeFlyoutInlineStyles } from './flyout.styles';
30
+ import { usePropsWithComponentDefaults } from '../provider/component_defaults';
31
+ import { DEFAULT_PADDING_SIZE, DEFAULT_PUSH_MIN_BREAKPOINT, DEFAULT_SIDE, DEFAULT_SIZE, DEFAULT_TYPE, isEuiFlyoutSizeNamed } from './const';
32
+ import { useIsPushed } from './hooks';
33
+ import { EuiFlyoutMenu } from './flyout_menu';
34
+ import { EuiFlyoutOverlay } from './_flyout_overlay';
35
+ import { EuiFlyoutResizeButton } from './_flyout_resize_button';
36
+ import { useEuiFlyoutResizable } from './use_flyout_resizable';
37
+ import { useEuiFlyoutZIndex } from './use_flyout_z_index';
38
+ import { EuiFlyoutParentProvider } from './flyout_parent_context';
39
+ import { useCurrentFlyoutZIndexRef } from './manager/selectors';
40
+ import { jsx as ___EmotionJSX } from "@emotion/react";
41
+ var defaultElement = 'div';
42
+ export var EuiFlyoutComponent = /*#__PURE__*/forwardRef(function (props, ref) {
43
+ var _usePropsWithComponen = usePropsWithComponentDefaults('EuiFlyout', props),
44
+ className = _usePropsWithComponen.className,
45
+ children = _usePropsWithComponen.children,
46
+ as = _usePropsWithComponen.as,
47
+ _usePropsWithComponen2 = _usePropsWithComponen.hideCloseButton,
48
+ hideCloseButton = _usePropsWithComponen2 === void 0 ? false : _usePropsWithComponen2,
49
+ _flyoutMenuProps = _usePropsWithComponen.flyoutMenuProps,
50
+ closeButtonProps = _usePropsWithComponen.closeButtonProps,
51
+ _usePropsWithComponen3 = _usePropsWithComponen.closeButtonPosition,
52
+ closeButtonPosition = _usePropsWithComponen3 === void 0 ? 'inside' : _usePropsWithComponen3,
53
+ onClose = _usePropsWithComponen.onClose,
54
+ _usePropsWithComponen4 = _usePropsWithComponen.ownFocus,
55
+ ownFocus = _usePropsWithComponen4 === void 0 ? true : _usePropsWithComponen4,
56
+ _usePropsWithComponen5 = _usePropsWithComponen.side,
57
+ side = _usePropsWithComponen5 === void 0 ? DEFAULT_SIDE : _usePropsWithComponen5,
58
+ _usePropsWithComponen6 = _usePropsWithComponen.size,
59
+ _size = _usePropsWithComponen6 === void 0 ? DEFAULT_SIZE : _usePropsWithComponen6,
60
+ _usePropsWithComponen7 = _usePropsWithComponen.paddingSize,
61
+ paddingSize = _usePropsWithComponen7 === void 0 ? DEFAULT_PADDING_SIZE : _usePropsWithComponen7,
62
+ _usePropsWithComponen8 = _usePropsWithComponen.maxWidth,
63
+ maxWidth = _usePropsWithComponen8 === void 0 ? false : _usePropsWithComponen8,
64
+ style = _usePropsWithComponen.style,
65
+ _usePropsWithComponen9 = _usePropsWithComponen.hasChildBackground,
66
+ hasChildBackground = _usePropsWithComponen9 === void 0 ? false : _usePropsWithComponen9,
67
+ maskProps = _usePropsWithComponen.maskProps,
68
+ _usePropsWithComponen10 = _usePropsWithComponen.type,
69
+ type = _usePropsWithComponen10 === void 0 ? DEFAULT_TYPE : _usePropsWithComponen10,
70
+ outsideClickCloses = _usePropsWithComponen.outsideClickCloses,
71
+ _usePropsWithComponen11 = _usePropsWithComponen.pushMinBreakpoint,
72
+ pushMinBreakpoint = _usePropsWithComponen11 === void 0 ? DEFAULT_PUSH_MIN_BREAKPOINT : _usePropsWithComponen11,
73
+ _usePropsWithComponen12 = _usePropsWithComponen.pushAnimation,
74
+ pushAnimation = _usePropsWithComponen12 === void 0 ? false : _usePropsWithComponen12,
75
+ _focusTrapProps = _usePropsWithComponen.focusTrapProps,
76
+ _usePropsWithComponen13 = _usePropsWithComponen.includeFixedHeadersInFocusTrap,
77
+ includeFixedHeadersInFocusTrap = _usePropsWithComponen13 === void 0 ? true : _usePropsWithComponen13,
78
+ includeSelectorInFocusTrap = _usePropsWithComponen.includeSelectorInFocusTrap,
79
+ _ariaDescribedBy = _usePropsWithComponen['aria-describedby'],
80
+ _ariaLabelledBy = _usePropsWithComponen['aria-labelledby'],
81
+ id = _usePropsWithComponen.id,
82
+ _usePropsWithComponen14 = _usePropsWithComponen.resizable,
83
+ resizable = _usePropsWithComponen14 === void 0 ? false : _usePropsWithComponen14,
84
+ minWidth = _usePropsWithComponen.minWidth,
85
+ onResize = _usePropsWithComponen.onResize,
86
+ onAnimationEnd = _usePropsWithComponen.onAnimationEnd,
87
+ rest = _objectWithoutProperties(_usePropsWithComponen, _excluded);
88
+ var _useEuiThemeCSSVariab = useEuiThemeCSSVariables(),
89
+ setGlobalCSSVariables = _useEuiThemeCSSVariab.setGlobalCSSVariables;
90
+ var Element = as || defaultElement;
91
+ var maskRef = useRef(null);
92
+
93
+ // Ref for the main flyout element to pass to context
94
+ var internalParentFlyoutRef = useRef(null);
95
+ var isPushed = useIsPushed({
96
+ type: type,
97
+ pushMinBreakpoint: pushMinBreakpoint
98
+ });
99
+ var currentSession = useCurrentSession();
100
+ var isInManagedContext = useIsInManagedFlyout();
101
+ var flyoutId = useFlyoutId(id);
102
+ var layoutMode = useFlyoutLayoutMode();
103
+ var isActiveManagedFlyout = useIsFlyoutActive(flyoutId);
104
+ var flyoutManager = useFlyoutManager();
105
+ var currentZIndexRef = useCurrentFlyoutZIndexRef();
106
+
107
+ // Use a ref to access the latest flyoutManager without triggering effect re-runs
108
+ var flyoutManagerRef = useRef(flyoutManager);
109
+ useEffect(function () {
110
+ flyoutManagerRef.current = flyoutManager;
111
+ }, [flyoutManager]);
112
+ useEffect(function () {
113
+ // Keep track of unmanaged flyouts to properly calculate z-index
114
+ // values for all flyouts
115
+ if (!isInManagedContext) {
116
+ var _flyoutManagerRef$cur;
117
+ (_flyoutManagerRef$cur = flyoutManagerRef.current) === null || _flyoutManagerRef$cur === void 0 || _flyoutManagerRef$cur.addUnmanagedFlyout(flyoutId);
118
+ return function () {
119
+ var _flyoutManagerRef$cur2;
120
+ return (_flyoutManagerRef$cur2 = flyoutManagerRef.current) === null || _flyoutManagerRef$cur2 === void 0 ? void 0 : _flyoutManagerRef$cur2.closeUnmanagedFlyout(flyoutId);
121
+ };
122
+ }
123
+ }, [isInManagedContext, flyoutId]);
124
+ var _useEuiFlyoutResizabl = useEuiFlyoutResizable({
125
+ enabled: resizable,
126
+ minWidth: minWidth,
127
+ maxWidth: typeof maxWidth === 'number' ? maxWidth : 0,
128
+ onResize: onResize,
129
+ side: side,
130
+ size: _size
131
+ }),
132
+ onMouseDownResizableButton = _useEuiFlyoutResizabl.onMouseDown,
133
+ onKeyDownResizableButton = _useEuiFlyoutResizabl.onKeyDown,
134
+ size = _useEuiFlyoutResizabl.size,
135
+ setFlyoutRef = _useEuiFlyoutResizabl.setFlyoutRef;
136
+
137
+ /**
138
+ * Setting up the refs on the actual flyout element in order to
139
+ * accommodate for the `isPushed` state by adding padding to the body equal to the width of the element
140
+ */
141
+ var _useState = useState(null),
142
+ _useState2 = _slicedToArray(_useState, 2),
143
+ resizeRef = _useState2[0],
144
+ setResizeRef = _useState2[1];
145
+ var setRef = useCombinedRefs([setResizeRef, ref, internalParentFlyoutRef, setFlyoutRef]);
146
+ var _useResizeObserver = useResizeObserver(isPushed ? resizeRef : null, 'width'),
147
+ width = _useResizeObserver.width;
148
+
149
+ /**
150
+ * Effect for adding push padding to body. Using useLayoutEffect to ensure
151
+ * padding changes happen synchronously before child components render -
152
+ * this is needed to prevent RemoveScrollBar from measuring the body in an
153
+ * inconsistent state during flyout transitions.
154
+ */
155
+ useLayoutEffect(function () {
156
+ if (!isPushed) {
157
+ return; // Only push-type flyouts manage body padding
158
+ }
159
+ var shouldApplyPadding = !isInManagedContext || isActiveManagedFlyout;
160
+ var paddingSide = side === 'left' ? 'paddingInlineStart' : 'paddingInlineEnd';
161
+ var cssVarName = "--euiPushFlyoutOffset".concat(side === 'left' ? 'InlineStart' : 'InlineEnd');
162
+ var managerSide = side === 'left' ? 'left' : 'right';
163
+ if (shouldApplyPadding) {
164
+ document.body.style[paddingSide] = "".concat(width, "px");
165
+ setGlobalCSSVariables(_defineProperty({}, cssVarName, "".concat(width, "px")));
166
+ // Update manager state if in managed context
167
+ if (isInManagedContext && flyoutManagerRef.current) {
168
+ flyoutManagerRef.current.setPushPadding(managerSide, width);
169
+ }
170
+ } else {
171
+ // Explicitly remove padding when this push flyout becomes inactive
172
+ document.body.style[paddingSide] = '';
173
+ setGlobalCSSVariables(_defineProperty({}, cssVarName, null));
174
+ // Clear manager state if in managed context
175
+ if (isInManagedContext && flyoutManagerRef.current) {
176
+ flyoutManagerRef.current.setPushPadding(managerSide, 0);
177
+ }
178
+ }
179
+
180
+ // Cleanup on unmount
181
+ return function () {
182
+ document.body.style[paddingSide] = '';
183
+ setGlobalCSSVariables(_defineProperty({}, cssVarName, null));
184
+ // Clear manager state on unmount if in managed context
185
+ if (isInManagedContext && flyoutManagerRef.current) {
186
+ flyoutManagerRef.current.setPushPadding(managerSide, 0);
187
+ }
188
+ };
189
+ }, [isPushed, isInManagedContext, isActiveManagedFlyout, setGlobalCSSVariables, side, width]);
190
+
191
+ /**
192
+ * This class doesn't actually do anything by EUI, but is nice to add for consumers (JIC)
193
+ */
194
+ useEffect(function () {
195
+ document.body.classList.add('euiBody--hasFlyout');
196
+ return function () {
197
+ // Remove the hasFlyout class when the flyout is unmounted
198
+ document.body.classList.remove('euiBody--hasFlyout');
199
+ };
200
+ }, []);
201
+
202
+ // Memoize flyout identification and relationships to prevent race conditions
203
+ var flyoutIdentity = useMemo(function () {
204
+ if (!flyoutId || !currentSession) {
205
+ return {
206
+ isMainFlyout: false,
207
+ siblingFlyoutId: null,
208
+ hasValidSession: false,
209
+ sessionForWidth: null
210
+ };
211
+ }
212
+ var siblingFlyoutId = currentSession.mainFlyoutId === flyoutId ? currentSession.childFlyoutId : currentSession.mainFlyoutId;
213
+ return {
214
+ siblingFlyoutId: siblingFlyoutId,
215
+ hasValidSession: true,
216
+ sessionForWidth: currentSession
217
+ };
218
+ }, [flyoutId, currentSession]);
219
+
220
+ // Destructure for easier use
221
+ var siblingFlyoutId = flyoutIdentity.siblingFlyoutId;
222
+ var hasChildFlyout = (currentSession === null || currentSession === void 0 ? void 0 : currentSession.childFlyoutId) != null;
223
+ var isChildFlyout = isInManagedContext && hasChildFlyout && (currentSession === null || currentSession === void 0 ? void 0 : currentSession.childFlyoutId) === id;
224
+ var shouldCloseOnEscape = useMemo(function () {
225
+ // Regular flyout - always close on ESC
226
+ if (!isInManagedContext) {
227
+ return true;
228
+ }
229
+
230
+ // Managed flyout with no child - close on ESC
231
+ if (!hasChildFlyout) {
232
+ return true;
233
+ }
234
+
235
+ // Child flyout - close on ESC
236
+ if (isChildFlyout) {
237
+ return true;
238
+ }
239
+
240
+ // Main flyout with child flyout - don't close on ESC
241
+ return false;
242
+ }, [isInManagedContext, hasChildFlyout, isChildFlyout]);
243
+
244
+ /**
245
+ * ESC key closes flyout based on flyout hierarchy rules
246
+ */
247
+ var onKeyDown = useCallback(function (event) {
248
+ if (!isPushed && event.key === keys.ESCAPE && shouldCloseOnEscape) {
249
+ event.preventDefault();
250
+ onClose(event);
251
+ }
252
+ }, [onClose, isPushed, shouldCloseOnEscape]);
253
+ var siblingFlyoutWidth = useFlyoutWidth(siblingFlyoutId);
254
+ var managedFlyoutIndex = currentZIndexRef.current;
255
+ if (isInManagedContext && currentSession) {
256
+ managedFlyoutIndex = currentSession.zIndex;
257
+ }
258
+ var _useEuiFlyoutZIndex = useEuiFlyoutZIndex({
259
+ maskProps: maskProps,
260
+ isPushed: isPushed,
261
+ managedFlyoutIndex: managedFlyoutIndex,
262
+ isChildFlyout: isChildFlyout
263
+ }),
264
+ flyoutZIndex = _useEuiFlyoutZIndex.flyoutZIndex,
265
+ maskZIndex = _useEuiFlyoutZIndex.maskZIndex;
266
+
267
+ /**
268
+ * Set inline styles
269
+ */
270
+ var inlineStyles = useMemo(function () {
271
+ var composedStyles = composeFlyoutInlineStyles(size, layoutMode, siblingFlyoutId, siblingFlyoutWidth || null, maxWidth, flyoutZIndex);
272
+ return _objectSpread(_objectSpread({}, style), composedStyles);
273
+ }, [style, size, layoutMode, siblingFlyoutId, siblingFlyoutWidth, maxWidth, flyoutZIndex]);
274
+ var styles = useEuiMemoizedStyles(euiFlyoutStyles);
275
+ var cssStyles = [styles.euiFlyout, styles.paddingSizes[paddingSize], isEuiFlyoutSizeNamed(size) && styles[size], maxWidth === false && styles.noMaxWidth, isPushed ? styles.push.push : styles.overlay.overlay, isPushed ? styles.push[side] : styles.overlay[side], isPushed && !pushAnimation && styles.push.noAnimation, styles[side]];
276
+ var classes = classnames('euiFlyout', isChildFlyout && hasChildBackground && 'euiFlyout--hasChildBackground', className);
277
+ var flyoutToggle = useRef(document.activeElement);
278
+ var _useState3 = useState([]),
279
+ _useState4 = _slicedToArray(_useState3, 2),
280
+ focusTrapShards = _useState4[0],
281
+ setFocusTrapShards = _useState4[1];
282
+ var focusTrapSelectors = useMemo(function () {
283
+ var selectors = [];
284
+ if (includeSelectorInFocusTrap) {
285
+ selectors = Array.isArray(includeSelectorInFocusTrap) ? includeSelectorInFocusTrap : [includeSelectorInFocusTrap];
286
+ }
287
+ if (includeFixedHeadersInFocusTrap) {
288
+ selectors.push('.euiHeader[data-fixed-header]');
289
+ }
290
+ return selectors;
291
+ }, [includeSelectorInFocusTrap, includeFixedHeadersInFocusTrap]);
292
+
293
+ /**
294
+ * Finds the shards to include in the focus trap by querying by `focusTrapSelectors`.
295
+ *
296
+ * @param shouldAutoFocus Whether to auto-focus the flyout wrapper when the focus trap is activated.
297
+ * This is necessary because when a flyout is toggled from within a shard, the focus trap's `autoFocus`
298
+ * feature doesn't work. This logic manually focuses the flyout as a workaround.
299
+ */
300
+ var findShards = useCallback(function () {
301
+ var shouldAutoFocus = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
302
+ if (focusTrapSelectors.length > 0) {
303
+ var shardsEls = focusTrapSelectors.flatMap(function (selector) {
304
+ return Array.from(document.querySelectorAll(selector));
305
+ });
306
+ setFocusTrapShards(Array.from(shardsEls));
307
+ if (shouldAutoFocus) {
308
+ shardsEls.forEach(function (shard) {
309
+ if (shard.contains(flyoutToggle.current)) {
310
+ resizeRef === null || resizeRef === void 0 || resizeRef.focus();
311
+ }
312
+ });
313
+ }
314
+ } else {
315
+ // Clear existing shards if necessary, e.g. switching to `false`
316
+ setFocusTrapShards(function (shards) {
317
+ return shards.length ? [] : shards;
318
+ });
319
+ }
320
+ }, [focusTrapSelectors, resizeRef]);
321
+ useEffect(function () {
322
+ // Auto-focus should only happen on initial flyout mount (or when the dependencies change)
323
+ // because it snaps focus to the flyout wrapper, which steals it from subsequently focused elements.
324
+ findShards(true);
325
+ var unsubscribe = focusTrapPubSub.subscribe(function () {
326
+ return findShards();
327
+ });
328
+ return unsubscribe;
329
+ }, [findShards]);
330
+ var focusTrapProps = useMemo(function () {
331
+ return _objectSpread(_objectSpread({}, _focusTrapProps), {}, {
332
+ shards: [].concat(_toConsumableArray(focusTrapShards), _toConsumableArray((_focusTrapProps === null || _focusTrapProps === void 0 ? void 0 : _focusTrapProps.shards) || []))
333
+ });
334
+ }, [_focusTrapProps, focusTrapShards]);
335
+
336
+ /*
337
+ * Provide meaningful screen reader instructions/details
338
+ */
339
+ var hasOverlayMask = ownFocus && !isPushed;
340
+ var descriptionId = useGeneratedHtmlId();
341
+ var ariaDescribedBy = classnames(descriptionId, _ariaDescribedBy);
342
+ var screenReaderDescription = useMemo(function () {
343
+ return ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", {
344
+ id: descriptionId
345
+ }, hasOverlayMask ? ___EmotionJSX(EuiI18n, {
346
+ token: "euiFlyout.screenReaderModalDialog",
347
+ default: "You are in a modal dialog. Press Escape or tap/click outside the dialog on the shadowed overlay to close."
348
+ }) : ___EmotionJSX(EuiI18n, {
349
+ token: "euiFlyout.screenReaderNonModalDialog",
350
+ default: "You are in a non-modal dialog. To close the dialog, press Escape."
351
+ }), ' ', focusTrapShards.length > 0 && ___EmotionJSX(EuiI18n, {
352
+ token: "euiFlyout.screenReaderFocusTrapShards",
353
+ default: "You can still continue tabbing through other global page landmarks."
354
+ })));
355
+ }, [hasOverlayMask, descriptionId, focusTrapShards.length]);
356
+
357
+ /*
358
+ * If the flyout menu is to be rendered, ensure the flyout has aria-labelledby referencing the menu's titleId
359
+ */
360
+ var generatedMenuId = useGeneratedHtmlId();
361
+ var _ref = _flyoutMenuProps || {},
362
+ _titleId = _ref.titleId,
363
+ flyoutMenuProps = _objectWithoutProperties(_ref, _excluded2);
364
+ var hasMenu = !!_flyoutMenuProps;
365
+ var flyoutMenuId = useMemo(function () {
366
+ if (!hasMenu) return undefined;
367
+ return _titleId || generatedMenuId;
368
+ }, [hasMenu, _titleId, generatedMenuId]);
369
+
370
+ // If the flyout level is LEVEL_MAIN, the title should be hidden by default
371
+ var flyoutMenuHideTitle = useMemo(function () {
372
+ if (!hasMenu) return undefined;
373
+ if ((_flyoutMenuProps === null || _flyoutMenuProps === void 0 ? void 0 : _flyoutMenuProps.hideTitle) !== undefined) {
374
+ return _flyoutMenuProps.hideTitle;
375
+ }
376
+ return (currentSession === null || currentSession === void 0 ? void 0 : currentSession.mainFlyoutId) === flyoutId;
377
+ }, [hasMenu, _flyoutMenuProps, currentSession, flyoutId]);
378
+ var ariaLabelledBy = useMemo(function () {
379
+ if (flyoutMenuId) {
380
+ return classnames(flyoutMenuId, _ariaLabelledBy);
381
+ }
382
+ return _ariaLabelledBy;
383
+ }, [flyoutMenuId, _ariaLabelledBy]);
384
+
385
+ /*
386
+ * Trap focus even when `ownFocus={false}`, otherwise closing
387
+ * the flyout won't return focus to the originating button.
388
+ *
389
+ * Set `clickOutsideDisables={true}` when `ownFocus={false}`
390
+ * to allow non-keyboard users the ability to interact with
391
+ * elements outside the flyout.
392
+ *
393
+ * Set `onClickOutside={onClose}` when `ownFocus` and `type` are the defaults,
394
+ * or if `outsideClickCloses={true}` to close on clicks that target
395
+ * (both mousedown and mouseup) the overlay mask.
396
+ */
397
+ var onClickOutside = useCallback(function (event) {
398
+ // Do not close the flyout for any external click
399
+ if (outsideClickCloses === false) return undefined;
400
+ if (hasOverlayMask) {
401
+ // The overlay mask is present, so only clicks on the mask should close the flyout, regardless of outsideClickCloses
402
+ if (event.target === maskRef.current) return onClose(event);
403
+ } else {
404
+ // No overlay mask is present, so any outside clicks should close the flyout
405
+ if (outsideClickCloses === true) return onClose(event);
406
+ }
407
+ // Otherwise if ownFocus is false and outsideClickCloses is undefined, outside clicks should not close the flyout
408
+ return undefined;
409
+ }, [onClose, hasOverlayMask, outsideClickCloses]);
410
+ var maskCombinedRefs = useCombinedRefs([maskProps === null || maskProps === void 0 ? void 0 : maskProps.maskRef, maskRef]);
411
+
412
+ /**
413
+ * For overlay flyouts in managed contexts, coordinate scroll locking with push flyout state.
414
+ */
415
+ var hasPushPaddingInManager = useHasPushPadding();
416
+ var shouldDeferScrollLock = !isPushed && isInManagedContext && hasPushPaddingInManager;
417
+ var shouldUseScrollLock = hasOverlayMask && !shouldDeferScrollLock;
418
+ return ___EmotionJSX(EuiFlyoutOverlay, {
419
+ hasOverlayMask: hasOverlayMask,
420
+ isPushed: isPushed,
421
+ maskZIndex: maskZIndex,
422
+ maskProps: _objectSpread(_objectSpread({}, maskProps), {}, {
423
+ maskRef: maskCombinedRefs
424
+ })
425
+ }, ___EmotionJSX(EuiWindowEvent, {
426
+ event: "keydown",
427
+ handler: onKeyDown
428
+ }), ___EmotionJSX(EuiFocusTrap, _extends({
429
+ disabled: isPushed,
430
+ scrollLock: shouldUseScrollLock,
431
+ clickOutsideDisables: !ownFocus,
432
+ onClickOutside: onClickOutside
433
+ }, focusTrapProps), ___EmotionJSX(Element, _extends({
434
+ className: classes,
435
+ css: cssStyles,
436
+ style: inlineStyles,
437
+ ref: setRef,
438
+ id: id
439
+ }, rest, {
440
+ role: !isPushed ? 'dialog' : rest.role,
441
+ "aria-modal": !isPushed || undefined,
442
+ tabIndex: !isPushed ? 0 : rest.tabIndex,
443
+ "aria-describedby": !isPushed ? ariaDescribedBy : _ariaDescribedBy,
444
+ "aria-labelledby": ariaLabelledBy,
445
+ "data-autofocus": !isPushed || undefined,
446
+ onAnimationEnd: onAnimationEnd
447
+ }), !isPushed && screenReaderDescription, !_flyoutMenuProps && !hideCloseButton && ___EmotionJSX(EuiFlyoutCloseButton, _extends({}, closeButtonProps, {
448
+ onClose: onClose,
449
+ closeButtonPosition: closeButtonPosition,
450
+ side: side
451
+ })), _flyoutMenuProps && ___EmotionJSX(EuiFlyoutMenu, _extends({}, flyoutMenuProps, {
452
+ hideTitle: flyoutMenuHideTitle,
453
+ titleId: flyoutMenuId
454
+ })), resizable && ___EmotionJSX(EuiFlyoutResizeButton, {
455
+ type: type,
456
+ side: side,
457
+ ownFocus: ownFocus,
458
+ isPushed: isPushed,
459
+ onMouseDown: onMouseDownResizableButton,
460
+ onTouchStart: onMouseDownResizableButton,
461
+ onKeyDown: onKeyDownResizableButton
462
+ }), ___EmotionJSX(EuiFlyoutParentProvider, null, children))));
463
+ }
464
+ // React.forwardRef interferes with the inferred element type
465
+ // Casting to ensure correct element prop type checking for `as`
466
+ // e.g., `href` is not on a `div`
467
+ );
468
+ // Recast to allow `displayName`
469
+ EuiFlyoutComponent.displayName = 'EuiFlyoutComponent';