@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.
- package/es/components/avatar/avatar.js +1 -1
- package/es/components/badge/badge.js +1 -1
- package/es/components/badge/beta_badge/beta_badge.js +1 -1
- package/es/components/basic_table/basic_table.js +36 -55
- package/es/components/basic_table/in_memory_table.js +6 -6
- package/es/components/beacon/beacon.styles.js +1 -1
- package/es/components/button/button_display/_button_display_content.js +1 -1
- package/es/components/button/button_empty/button_empty.js +1 -1
- package/es/components/button/button_group/button_group.js +1 -1
- package/es/components/button/button_group/button_group_button.js +1 -1
- package/es/components/button/button_icon/button_icon.js +1 -1
- package/es/components/button/index.js +2 -1
- package/es/components/button/split_button/index.js +10 -0
- package/es/components/button/split_button/split_button.js +120 -0
- package/es/components/button/split_button/split_button.styles.js +51 -0
- package/es/components/button/split_button/split_button_actions.js +115 -0
- package/{optimize/es/components/flyout/flyout_context.js → es/components/button/split_button/split_button_context.js} +5 -7
- package/es/components/call_out/call_out.js +1 -1
- package/es/components/card/card.js +1 -1
- package/es/components/collapsible_nav/collapsible_nav.js +20 -101
- package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
- package/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
- package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
- package/es/components/comment_list/comment.js +2 -2
- package/es/components/comment_list/comment_event.js +1 -1
- package/es/components/comment_list/comment_list.js +2 -2
- package/es/components/comment_list/comment_timeline.js +1 -1
- package/es/components/context_menu/context_menu_item.js +1 -1
- package/es/components/datagrid/body/cell/data_grid_cell.js +12 -12
- package/es/components/datagrid/body/data_grid_body.js +7 -7
- package/es/components/datagrid/body/data_grid_body_custom.js +7 -7
- package/es/components/datagrid/body/data_grid_body_virtualized.js +7 -7
- package/es/components/datagrid/body/header/data_grid_header_cell.js +6 -6
- package/es/components/datagrid/controls/column_sorting.js +7 -7
- package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
- package/es/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
- package/es/components/datagrid/controls/fullscreen_selector.styles.js +1 -1
- package/es/components/datagrid/utils/in_memory.js +6 -6
- package/es/components/date_picker/date_picker.js +2 -2
- package/es/components/date_picker/date_picker_range.js +1 -1
- package/es/components/empty_prompt/empty_prompt.js +2 -2
- package/es/components/flex/flex_group.js +1 -1
- package/es/components/flyout/_flyout_overlay.js +52 -0
- package/es/components/flyout/_flyout_resize_button.js +32 -0
- package/es/components/flyout/{flyout_resizable.styles.js → _flyout_resize_button.styles.js} +11 -11
- package/es/components/flyout/const.js +42 -0
- package/es/components/flyout/flyout.component.js +481 -0
- package/es/components/flyout/flyout.js +77 -379
- package/es/components/flyout/flyout.styles.js +106 -7
- package/es/components/flyout/flyout_menu.js +241 -0
- package/es/components/flyout/flyout_menu.styles.js +19 -0
- package/es/components/flyout/{flyout_context.js → flyout_menu_context.js} +1 -7
- package/es/components/flyout/flyout_parent_context.js +36 -0
- package/es/components/flyout/flyout_resizable.js +33 -144
- package/es/components/flyout/hooks.js +25 -0
- package/es/components/flyout/index.js +5 -2
- package/es/components/flyout/manager/actions.js +153 -0
- package/es/components/flyout/manager/activity_stage.js +95 -0
- package/es/components/flyout/manager/const.js +56 -0
- package/es/components/flyout/manager/context.js +33 -0
- package/es/components/flyout/manager/flyout_child.js +75 -0
- package/es/components/flyout/manager/flyout_main.js +65 -0
- package/es/components/flyout/manager/flyout_main.styles.js +25 -0
- package/es/components/flyout/manager/flyout_managed.js +227 -0
- package/es/components/flyout/manager/flyout_managed.styles.js +69 -0
- package/es/components/flyout/manager/hooks.js +55 -0
- package/es/components/flyout/manager/index.js +31 -0
- package/es/components/flyout/manager/layout_mode.js +167 -0
- package/es/components/flyout/manager/provider.js +57 -0
- package/es/components/flyout/manager/reducer.js +320 -0
- package/es/components/flyout/manager/selectors.js +116 -0
- package/es/components/flyout/manager/store.js +113 -0
- package/es/components/flyout/manager/validation.js +85 -0
- package/es/components/flyout/use_flyout_resizable.js +149 -0
- package/es/components/flyout/use_flyout_z_index.js +46 -0
- package/es/components/form/field_number/field_number.js +2 -2
- package/es/components/form/field_text/field_text.js +2 -2
- package/es/components/form/form_control_button/form_control_button.js +1 -1
- package/es/components/form/form_control_layout/form_control_layout.js +2 -2
- package/es/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
- package/es/components/form/form_control_layout/form_control_layout_icons.js +2 -2
- package/es/components/form/text_area/text_area.js +2 -2
- package/es/components/header/header_links/header_link.js +1 -1
- package/es/components/header/header_links/header_links.js +1 -1
- package/es/components/header/header_logo/header_logo.js +1 -1
- package/es/components/header/header_section/header_section_item_button.js +1 -1
- package/es/components/horizontal_rule/horizontal_rule.js +1 -1
- package/es/components/icon/assets/agentBuilderRobot.js +37 -0
- package/es/components/icon/assets/cross_project_search.js +35 -0
- package/es/components/icon/assets/dashed_circle.js +35 -0
- package/es/components/icon/assets/product_robot.js +37 -0
- package/es/components/icon/icon.js +1 -1
- package/es/components/icon/icon_map.js +3 -0
- package/es/components/key_pad_menu/key_pad_menu_item.js +1 -1
- package/es/components/link/external_link_icon.js +6 -3
- package/es/components/list_group/list_group.js +2 -2
- package/es/components/list_group/list_group_item.js +2 -2
- package/es/components/list_group/list_group_item_extra_action.js +1 -1
- package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
- package/es/components/loading/loading_logo.js +1 -1
- package/es/components/markdown_editor/markdown_editor.js +1 -1
- package/es/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
- package/es/components/markdown_editor/markdown_editor_footer.js +1 -1
- package/es/components/markdown_editor/markdown_editor_toolbar.js +1 -1
- package/es/components/overlay_mask/overlay_mask.js +13 -3
- package/es/components/overlay_mask/overlay_mask.styles.js +11 -2
- package/es/components/page/page_header/page_header_content.js +2 -2
- package/es/components/pagination/pagination_button.js +1 -1
- package/es/components/provider/provider.js +2 -1
- package/es/components/search_bar/search_bar.js +1 -1
- package/es/components/selectable/selectable_list/selectable_list.js +1 -1
- package/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
- package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
- package/es/components/spacer/spacer.js +1 -1
- package/es/components/table/table_header_cell.js +1 -1
- package/es/components/timeline/timeline_item_icon.js +1 -1
- package/es/components/toast/global_toast_list.js +1 -1
- package/es/components/toast/toast.js +1 -1
- package/es/components/tool_tip/icon_tip.js +1 -1
- package/es/components/tour/tour_step_indicator.js +8 -3
- package/es/global_styling/mixins/_button.js +28 -9
- package/es/global_styling/mixins/_container_query.js +106 -0
- package/es/global_styling/mixins/index.js +1 -0
- package/es/services/container_query/container_query_hook.js +64 -0
- package/es/{components/flyout/sessions → services/container_query}/index.js +1 -2
- package/es/services/container_query/match_container.js +242 -0
- package/eui.d.ts +7558 -6642
- package/i18ntokens.json +1438 -1384
- package/lib/components/avatar/avatar.js +1 -1
- package/lib/components/badge/badge.js +1 -1
- package/lib/components/badge/beta_badge/beta_badge.js +1 -1
- package/lib/components/basic_table/basic_table.js +36 -55
- package/lib/components/basic_table/in_memory_table.js +6 -6
- package/lib/components/beacon/beacon.styles.js +1 -1
- package/lib/components/button/button_display/_button_display_content.js +1 -1
- package/lib/components/button/button_empty/button_empty.js +1 -1
- package/lib/components/button/button_group/button_group.js +1 -1
- package/lib/components/button/button_group/button_group_button.js +1 -1
- package/lib/components/button/button_icon/button_icon.js +1 -1
- package/lib/components/button/index.js +8 -1
- package/lib/components/button/split_button/index.js +25 -0
- package/lib/components/button/split_button/split_button.js +129 -0
- package/lib/components/button/split_button/split_button.styles.js +55 -0
- package/lib/components/button/split_button/split_button_actions.js +123 -0
- package/{optimize/lib/components/flyout/flyout_context.js → lib/components/button/split_button/split_button_context.js} +6 -7
- package/lib/components/call_out/call_out.js +1 -1
- package/lib/components/card/card.js +1 -1
- package/lib/components/collapsible_nav/collapsible_nav.js +20 -101
- package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
- package/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
- package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
- package/lib/components/comment_list/comment.js +2 -2
- package/lib/components/comment_list/comment_event.js +1 -1
- package/lib/components/comment_list/comment_list.js +2 -2
- package/lib/components/comment_list/comment_timeline.js +1 -1
- package/lib/components/context_menu/context_menu_item.js +1 -1
- package/lib/components/datagrid/body/cell/data_grid_cell.js +12 -12
- package/lib/components/datagrid/body/data_grid_body.js +7 -7
- package/lib/components/datagrid/body/data_grid_body_custom.js +7 -7
- package/lib/components/datagrid/body/data_grid_body_virtualized.js +7 -7
- package/lib/components/datagrid/body/header/data_grid_header_cell.js +6 -6
- package/lib/components/datagrid/controls/column_sorting.js +7 -7
- package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
- package/lib/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
- package/lib/components/datagrid/controls/fullscreen_selector.styles.js +1 -1
- package/lib/components/datagrid/utils/in_memory.js +6 -6
- package/lib/components/date_picker/date_picker.js +2 -2
- package/lib/components/date_picker/date_picker_range.js +1 -1
- package/lib/components/empty_prompt/empty_prompt.js +2 -2
- package/lib/components/flex/flex_group.js +1 -1
- package/lib/components/flyout/_flyout_overlay.js +59 -0
- package/lib/components/flyout/_flyout_resize_button.js +38 -0
- package/{test-env/components/flyout/flyout_resizable.styles.js → lib/components/flyout/_flyout_resize_button.styles.js} +12 -12
- package/lib/components/flyout/const.js +49 -0
- package/lib/components/flyout/flyout.component.js +488 -0
- package/lib/components/flyout/flyout.js +102 -379
- package/lib/components/flyout/flyout.styles.js +106 -7
- package/lib/components/flyout/flyout_menu.js +243 -0
- package/lib/components/flyout/flyout_menu.styles.js +25 -0
- package/lib/components/flyout/{flyout_context.js → flyout_menu_context.js} +2 -7
- package/lib/components/flyout/flyout_parent_context.js +43 -0
- package/lib/components/flyout/flyout_resizable.js +36 -147
- package/lib/components/flyout/hooks.js +30 -0
- package/lib/components/flyout/index.js +21 -14
- package/lib/components/flyout/manager/actions.js +159 -0
- package/lib/components/flyout/manager/activity_stage.js +101 -0
- package/lib/components/flyout/manager/const.js +62 -0
- package/lib/components/flyout/manager/context.js +41 -0
- package/lib/components/flyout/manager/flyout_child.js +80 -0
- package/lib/components/flyout/manager/flyout_main.js +70 -0
- package/lib/components/flyout/manager/flyout_main.styles.js +31 -0
- package/lib/components/flyout/manager/flyout_managed.js +233 -0
- package/lib/components/flyout/manager/flyout_managed.styles.js +73 -0
- package/lib/components/flyout/manager/hooks.js +131 -0
- package/lib/components/flyout/manager/index.js +168 -0
- package/lib/components/flyout/manager/layout_mode.js +171 -0
- package/lib/components/flyout/manager/provider.js +63 -0
- package/lib/components/flyout/manager/reducer.js +325 -0
- package/lib/components/flyout/manager/selectors.js +122 -0
- package/lib/components/flyout/manager/store.js +120 -0
- package/lib/components/flyout/manager/validation.js +94 -0
- package/lib/components/flyout/use_flyout_resizable.js +153 -0
- package/lib/components/flyout/use_flyout_z_index.js +51 -0
- package/lib/components/form/field_number/field_number.js +2 -2
- package/lib/components/form/field_text/field_text.js +2 -2
- package/lib/components/form/form_control_button/form_control_button.js +1 -1
- package/lib/components/form/form_control_layout/form_control_layout.js +2 -2
- package/lib/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
- package/lib/components/form/form_control_layout/form_control_layout_icons.js +2 -2
- package/lib/components/form/text_area/text_area.js +2 -2
- package/lib/components/header/header_links/header_link.js +1 -1
- package/lib/components/header/header_links/header_links.js +1 -1
- package/lib/components/header/header_logo/header_logo.js +1 -1
- package/lib/components/header/header_section/header_section_item_button.js +1 -1
- package/lib/components/horizontal_rule/horizontal_rule.js +1 -1
- package/lib/components/icon/assets/agentBuilderRobot.js +44 -0
- package/lib/components/icon/assets/cross_project_search.js +42 -0
- package/lib/components/icon/assets/dashed_circle.js +42 -0
- package/lib/components/icon/assets/product_robot.js +44 -0
- package/lib/components/icon/icon.js +1 -1
- package/lib/components/icon/icon_map.js +3 -0
- package/lib/components/icon/svgs/cross_project_search.svg +3 -0
- package/lib/components/icon/svgs/dashed_circle.svg +5 -0
- package/lib/components/icon/svgs/product_robot.svg +4 -0
- package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -1
- package/lib/components/link/external_link_icon.js +6 -3
- package/lib/components/list_group/list_group.js +2 -2
- package/lib/components/list_group/list_group_item.js +2 -2
- package/lib/components/list_group/list_group_item_extra_action.js +1 -1
- package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
- package/lib/components/loading/loading_logo.js +1 -1
- package/lib/components/markdown_editor/markdown_editor.js +1 -1
- package/lib/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
- package/lib/components/markdown_editor/markdown_editor_footer.js +1 -1
- package/lib/components/markdown_editor/markdown_editor_toolbar.js +1 -1
- package/lib/components/overlay_mask/overlay_mask.js +12 -2
- package/lib/components/overlay_mask/overlay_mask.styles.js +11 -4
- package/lib/components/page/page_header/page_header_content.js +2 -2
- package/lib/components/pagination/pagination_button.js +1 -1
- package/lib/components/provider/provider.js +2 -1
- package/lib/components/search_bar/search_bar.js +1 -1
- package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
- package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
- package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
- package/lib/components/spacer/spacer.js +1 -1
- package/lib/components/table/table_header_cell.js +1 -1
- package/lib/components/timeline/timeline_item_icon.js +1 -1
- package/lib/components/toast/global_toast_list.js +1 -1
- package/lib/components/toast/toast.js +1 -1
- package/lib/components/tool_tip/icon_tip.js +1 -1
- package/lib/components/tour/tour_step_indicator.js +8 -3
- package/lib/global_styling/mixins/_button.js +29 -10
- package/lib/global_styling/mixins/_container_query.js +112 -0
- package/lib/global_styling/mixins/index.js +11 -0
- package/lib/services/container_query/container_query_hook.js +67 -0
- package/lib/services/container_query/index.js +16 -0
- package/lib/services/container_query/match_container.js +243 -0
- package/optimize/es/components/basic_table/basic_table.js +30 -49
- package/optimize/es/components/beacon/beacon.styles.js +1 -1
- package/optimize/es/components/button/index.js +2 -1
- package/optimize/es/components/button/split_button/index.js +10 -0
- package/optimize/es/components/button/split_button/split_button.js +98 -0
- package/optimize/es/components/button/split_button/split_button.styles.js +51 -0
- package/optimize/es/components/button/split_button/split_button_actions.js +89 -0
- package/optimize/es/components/button/split_button/split_button_context.js +14 -0
- package/optimize/es/components/collapsible_nav/collapsible_nav.js +1 -0
- package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
- package/optimize/es/components/datagrid/controls/fullscreen_selector.styles.js +1 -1
- package/optimize/es/components/empty_prompt/empty_prompt.js +1 -1
- package/optimize/es/components/flex/flex_group.js +1 -1
- package/optimize/es/components/flyout/_flyout_overlay.js +52 -0
- package/optimize/es/components/flyout/_flyout_resize_button.js +31 -0
- package/optimize/es/components/flyout/{flyout_resizable.styles.js → _flyout_resize_button.styles.js} +11 -11
- package/optimize/es/components/flyout/const.js +42 -0
- package/optimize/es/components/flyout/flyout.component.js +469 -0
- package/optimize/es/components/flyout/flyout.js +53 -349
- package/optimize/es/components/flyout/flyout.styles.js +103 -7
- package/optimize/es/components/flyout/flyout_menu.js +162 -0
- package/optimize/es/components/flyout/flyout_menu.styles.js +19 -0
- package/optimize/es/components/flyout/flyout_menu_context.js +10 -0
- package/optimize/es/components/flyout/flyout_parent_context.js +36 -0
- package/optimize/es/components/flyout/flyout_resizable.js +7 -138
- package/optimize/es/components/flyout/hooks.js +25 -0
- package/optimize/es/components/flyout/index.js +5 -2
- package/optimize/es/components/flyout/manager/actions.js +153 -0
- package/optimize/es/components/flyout/manager/activity_stage.js +95 -0
- package/optimize/es/components/flyout/manager/const.js +56 -0
- package/optimize/es/components/flyout/manager/context.js +33 -0
- package/optimize/es/components/flyout/manager/flyout_child.js +71 -0
- package/optimize/es/components/flyout/manager/flyout_main.js +61 -0
- package/optimize/es/components/flyout/manager/flyout_main.styles.js +25 -0
- package/optimize/es/components/flyout/manager/flyout_managed.js +223 -0
- package/optimize/es/components/flyout/manager/flyout_managed.styles.js +69 -0
- package/optimize/es/components/flyout/manager/hooks.js +55 -0
- package/optimize/es/components/flyout/manager/index.js +31 -0
- package/optimize/es/components/flyout/manager/layout_mode.js +162 -0
- package/optimize/es/components/flyout/manager/provider.js +53 -0
- package/optimize/es/components/flyout/manager/reducer.js +312 -0
- package/optimize/es/components/flyout/manager/selectors.js +116 -0
- package/optimize/es/components/flyout/manager/store.js +113 -0
- package/optimize/es/components/flyout/manager/types.js +1 -0
- package/optimize/es/components/flyout/manager/validation.js +85 -0
- package/optimize/es/components/flyout/types.js +1 -0
- package/optimize/es/components/flyout/use_flyout_resizable.js +144 -0
- package/optimize/es/components/flyout/use_flyout_z_index.js +46 -0
- package/optimize/es/components/horizontal_rule/horizontal_rule.js +1 -1
- package/optimize/es/components/icon/assets/agentBuilderRobot.js +36 -0
- package/optimize/es/components/icon/assets/cross_project_search.js +34 -0
- package/optimize/es/components/icon/assets/dashed_circle.js +34 -0
- package/optimize/es/components/icon/assets/product_robot.js +36 -0
- package/optimize/es/components/icon/icon_map.js +3 -0
- package/optimize/es/components/link/external_link_icon.js +6 -3
- package/optimize/es/components/overlay_mask/overlay_mask.js +13 -3
- package/optimize/es/components/overlay_mask/overlay_mask.styles.js +11 -2
- package/optimize/es/components/page/page_header/page_header_content.js +1 -1
- package/optimize/es/components/provider/provider.js +2 -1
- package/optimize/es/components/search_bar/search_bar.js +1 -1
- package/optimize/es/components/spacer/spacer.js +1 -1
- package/optimize/es/components/tour/tour_step_indicator.js +8 -3
- package/optimize/es/global_styling/mixins/_button.js +28 -9
- package/optimize/es/global_styling/mixins/_container_query.js +106 -0
- package/optimize/es/global_styling/mixins/index.js +1 -0
- package/optimize/es/services/container_query/container_query_hook.js +59 -0
- package/optimize/es/{components/flyout/sessions → services/container_query}/index.js +1 -2
- package/optimize/es/services/container_query/match_container.js +229 -0
- package/optimize/lib/components/basic_table/basic_table.js +30 -49
- package/optimize/lib/components/beacon/beacon.styles.js +1 -1
- package/optimize/lib/components/button/index.js +8 -1
- package/optimize/lib/components/button/split_button/index.js +25 -0
- package/optimize/lib/components/button/split_button/split_button.js +107 -0
- package/optimize/lib/components/button/split_button/split_button.styles.js +55 -0
- package/optimize/lib/components/button/split_button/split_button_actions.js +98 -0
- package/{test-env/components/flyout/flyout_context.js → optimize/lib/components/button/split_button/split_button_context.js} +6 -7
- package/optimize/lib/components/collapsible_nav/collapsible_nav.js +1 -0
- package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
- package/optimize/lib/components/datagrid/controls/fullscreen_selector.styles.js +1 -1
- package/optimize/lib/components/empty_prompt/empty_prompt.js +1 -1
- package/optimize/lib/components/flex/flex_group.js +1 -1
- package/optimize/lib/components/flyout/_flyout_overlay.js +62 -0
- package/optimize/lib/components/flyout/_flyout_resize_button.js +37 -0
- package/{lib/components/flyout/flyout_resizable.styles.js → optimize/lib/components/flyout/_flyout_resize_button.styles.js} +12 -12
- package/optimize/lib/components/flyout/const.js +49 -0
- package/optimize/lib/components/flyout/flyout.component.js +477 -0
- package/optimize/lib/components/flyout/flyout.js +77 -349
- package/optimize/lib/components/flyout/flyout.styles.js +103 -7
- package/optimize/lib/components/flyout/flyout_menu.js +168 -0
- package/optimize/lib/components/flyout/flyout_menu.styles.js +25 -0
- package/optimize/lib/components/flyout/flyout_menu_context.js +16 -0
- package/optimize/lib/components/flyout/flyout_parent_context.js +43 -0
- package/optimize/lib/components/flyout/flyout_resizable.js +9 -139
- package/optimize/lib/components/flyout/hooks.js +30 -0
- package/optimize/lib/components/flyout/index.js +21 -14
- package/optimize/lib/components/flyout/manager/actions.js +159 -0
- package/optimize/lib/components/flyout/manager/activity_stage.js +101 -0
- package/optimize/lib/components/flyout/manager/const.js +62 -0
- package/optimize/lib/components/flyout/manager/context.js +41 -0
- package/optimize/lib/components/flyout/manager/flyout_child.js +76 -0
- package/optimize/lib/components/flyout/manager/flyout_main.js +66 -0
- package/optimize/lib/components/flyout/manager/flyout_main.styles.js +31 -0
- package/optimize/lib/components/flyout/manager/flyout_managed.js +231 -0
- package/optimize/lib/components/flyout/manager/flyout_managed.styles.js +74 -0
- package/optimize/lib/components/flyout/manager/hooks.js +131 -0
- package/optimize/lib/components/flyout/manager/index.js +168 -0
- package/optimize/lib/components/flyout/manager/layout_mode.js +169 -0
- package/optimize/lib/components/flyout/manager/provider.js +61 -0
- package/optimize/lib/components/flyout/manager/reducer.js +318 -0
- package/optimize/lib/components/flyout/manager/selectors.js +122 -0
- package/optimize/lib/components/flyout/manager/store.js +120 -0
- package/optimize/lib/components/flyout/manager/validation.js +94 -0
- package/optimize/lib/components/flyout/types.js +5 -0
- package/optimize/lib/components/flyout/use_flyout_resizable.js +151 -0
- package/optimize/lib/components/flyout/use_flyout_z_index.js +51 -0
- package/optimize/lib/components/horizontal_rule/horizontal_rule.js +1 -1
- package/optimize/lib/components/icon/assets/agentBuilderRobot.js +44 -0
- package/optimize/lib/components/icon/assets/cross_project_search.js +42 -0
- package/optimize/lib/components/icon/assets/dashed_circle.js +42 -0
- package/optimize/lib/components/icon/assets/product_robot.js +44 -0
- package/optimize/lib/components/icon/icon_map.js +3 -0
- package/optimize/lib/components/icon/svgs/cross_project_search.svg +3 -0
- package/optimize/lib/components/icon/svgs/dashed_circle.svg +5 -0
- package/optimize/lib/components/icon/svgs/product_robot.svg +4 -0
- package/optimize/lib/components/link/external_link_icon.js +6 -3
- package/optimize/lib/components/overlay_mask/overlay_mask.js +12 -2
- package/optimize/lib/components/overlay_mask/overlay_mask.styles.js +11 -4
- package/optimize/lib/components/page/page_header/page_header_content.js +1 -1
- package/optimize/lib/components/provider/provider.js +2 -1
- package/optimize/lib/components/search_bar/search_bar.js +1 -1
- package/optimize/lib/components/spacer/spacer.js +1 -1
- package/optimize/lib/components/tour/tour_step_indicator.js +8 -3
- package/optimize/lib/global_styling/mixins/_button.js +29 -10
- package/optimize/lib/global_styling/mixins/_container_query.js +112 -0
- package/optimize/lib/global_styling/mixins/index.js +11 -0
- package/optimize/lib/services/container_query/container_query_hook.js +65 -0
- package/optimize/lib/services/container_query/index.js +16 -0
- package/optimize/lib/services/container_query/match_container.js +231 -0
- package/package.json +5 -4
- package/test-env/components/avatar/avatar.js +1 -1
- package/test-env/components/badge/badge.js +1 -1
- package/test-env/components/badge/beta_badge/beta_badge.js +1 -1
- package/test-env/components/basic_table/basic_table.js +36 -55
- package/test-env/components/basic_table/in_memory_table.js +6 -6
- package/test-env/components/beacon/beacon.styles.js +1 -1
- package/test-env/components/button/button_display/_button_display_content.js +1 -1
- package/test-env/components/button/button_empty/button_empty.js +1 -1
- package/test-env/components/button/button_group/button_group.js +1 -1
- package/test-env/components/button/button_group/button_group_button.js +1 -1
- package/test-env/components/button/button_icon/button_icon.js +1 -1
- package/test-env/components/button/index.js +8 -1
- package/test-env/components/button/split_button/index.js +25 -0
- package/test-env/components/button/split_button/split_button.js +123 -0
- package/test-env/components/button/split_button/split_button.styles.js +55 -0
- package/test-env/components/button/split_button/split_button_actions.js +120 -0
- package/test-env/components/button/split_button/split_button_context.js +20 -0
- package/test-env/components/call_out/call_out.js +1 -1
- package/test-env/components/card/card.js +1 -1
- package/test-env/components/collapsible_nav/collapsible_nav.js +20 -101
- package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
- package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +1 -1
- package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
- package/test-env/components/comment_list/comment.js +2 -2
- package/test-env/components/comment_list/comment_event.js +1 -1
- package/test-env/components/comment_list/comment_list.js +2 -2
- package/test-env/components/comment_list/comment_timeline.js +1 -1
- package/test-env/components/context_menu/context_menu_item.js +1 -1
- package/test-env/components/datagrid/body/cell/data_grid_cell.js +12 -12
- package/test-env/components/datagrid/body/data_grid_body.js +7 -7
- package/test-env/components/datagrid/body/data_grid_body_custom.js +7 -7
- package/test-env/components/datagrid/body/data_grid_body_virtualized.js +7 -7
- package/test-env/components/datagrid/body/header/data_grid_header_cell.js +6 -6
- package/test-env/components/datagrid/controls/column_sorting.js +7 -7
- package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
- package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +1 -1
- package/test-env/components/datagrid/controls/fullscreen_selector.styles.js +1 -1
- package/test-env/components/datagrid/utils/in_memory.js +6 -6
- package/test-env/components/date_picker/date_picker.js +2 -2
- package/test-env/components/date_picker/date_picker_range.js +1 -1
- package/test-env/components/empty_prompt/empty_prompt.js +2 -2
- package/test-env/components/flex/flex_group.js +1 -1
- package/test-env/components/flyout/_flyout_overlay.js +62 -0
- package/test-env/components/flyout/_flyout_resize_button.js +37 -0
- package/{optimize/lib/components/flyout/flyout_resizable.styles.js → test-env/components/flyout/_flyout_resize_button.styles.js} +12 -12
- package/test-env/components/flyout/const.js +49 -0
- package/test-env/components/flyout/flyout.component.js +477 -0
- package/test-env/components/flyout/flyout.styles.js +103 -7
- package/test-env/components/flyout/flyout_menu.js +241 -0
- package/test-env/components/flyout/flyout_menu.styles.js +25 -0
- package/test-env/components/flyout/flyout_menu_context.js +16 -0
- package/test-env/components/flyout/flyout_parent_context.js +43 -0
- package/test-env/components/flyout/flyout_resizable.js +35 -139
- package/test-env/components/flyout/hooks.js +30 -0
- package/test-env/components/flyout/index.js +21 -14
- package/test-env/components/flyout/manager/actions.js +159 -0
- package/test-env/components/flyout/manager/activity_stage.js +101 -0
- package/test-env/components/flyout/manager/const.js +62 -0
- package/test-env/components/flyout/manager/context.js +41 -0
- package/test-env/components/flyout/manager/flyout_child.js +76 -0
- package/test-env/components/flyout/manager/flyout_main.js +66 -0
- package/test-env/components/flyout/manager/flyout_main.styles.js +31 -0
- package/test-env/components/flyout/manager/flyout_managed.js +231 -0
- package/test-env/components/flyout/manager/flyout_managed.styles.js +74 -0
- package/test-env/components/flyout/manager/hooks.js +131 -0
- package/test-env/components/flyout/manager/index.js +168 -0
- package/test-env/components/flyout/manager/layout_mode.js +169 -0
- package/test-env/components/flyout/manager/provider.js +61 -0
- package/test-env/components/flyout/manager/reducer.js +318 -0
- package/test-env/components/flyout/manager/selectors.js +122 -0
- package/test-env/components/flyout/manager/store.js +120 -0
- package/test-env/components/flyout/manager/types.js +5 -0
- package/test-env/components/flyout/manager/validation.js +94 -0
- package/test-env/components/flyout/types.js +5 -0
- package/test-env/components/flyout/use_flyout_resizable.js +151 -0
- package/test-env/components/flyout/use_flyout_z_index.js +51 -0
- package/test-env/components/form/field_number/field_number.js +2 -2
- package/test-env/components/form/field_text/field_text.js +2 -2
- package/test-env/components/form/form_control_button/form_control_button.js +1 -1
- package/test-env/components/form/form_control_layout/form_control_layout.js +2 -2
- package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
- package/test-env/components/form/form_control_layout/form_control_layout_icons.js +2 -2
- package/test-env/components/form/text_area/text_area.js +2 -2
- package/test-env/components/header/header_links/header_link.js +1 -1
- package/test-env/components/header/header_links/header_links.js +1 -1
- package/test-env/components/header/header_logo/header_logo.js +1 -1
- package/test-env/components/header/header_section/header_section_item_button.js +1 -1
- package/test-env/components/horizontal_rule/horizontal_rule.js +1 -1
- package/test-env/components/icon/assets/agentBuilderRobot.js +44 -0
- package/test-env/components/icon/assets/cross_project_search.js +42 -0
- package/test-env/components/icon/assets/dashed_circle.js +42 -0
- package/test-env/components/icon/assets/product_robot.js +44 -0
- package/test-env/components/icon/icon_map.js +3 -0
- package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
- package/test-env/components/link/external_link_icon.js +6 -3
- package/test-env/components/list_group/list_group.js +2 -2
- package/test-env/components/list_group/list_group_item.js +2 -2
- package/test-env/components/list_group/list_group_item_extra_action.js +1 -1
- package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
- package/test-env/components/loading/loading_logo.js +1 -1
- package/test-env/components/markdown_editor/markdown_editor.js +1 -1
- package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
- package/test-env/components/markdown_editor/markdown_editor_footer.js +1 -1
- package/test-env/components/markdown_editor/markdown_editor_toolbar.js +1 -1
- package/test-env/components/overlay_mask/overlay_mask.js +12 -2
- package/test-env/components/overlay_mask/overlay_mask.styles.js +11 -4
- package/test-env/components/page/page_header/page_header_content.js +2 -2
- package/test-env/components/pagination/pagination_button.js +1 -1
- package/test-env/components/provider/provider.js +2 -1
- package/test-env/components/search_bar/search_bar.js +1 -1
- package/test-env/components/selectable/selectable_list/selectable_list.js +1 -1
- package/test-env/components/selectable/selectable_list/selectable_list_item.js +1 -1
- package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
- package/test-env/components/spacer/spacer.js +1 -1
- package/test-env/components/table/table_header_cell.js +1 -1
- package/test-env/components/timeline/timeline_item_icon.js +1 -1
- package/test-env/components/toast/global_toast_list.js +1 -1
- package/test-env/components/toast/toast.js +1 -1
- package/test-env/components/tool_tip/icon_tip.js +1 -1
- package/test-env/components/tour/tour_step_indicator.js +8 -3
- package/test-env/global_styling/mixins/_button.js +29 -10
- package/test-env/global_styling/mixins/_container_query.js +112 -0
- package/test-env/global_styling/mixins/index.js +11 -0
- package/test-env/services/container_query/container_query_hook.js +65 -0
- package/test-env/services/container_query/index.js +16 -0
- package/test-env/services/container_query/match_container.js +231 -0
- package/es/components/flyout/flyout_child.js +0 -223
- package/es/components/flyout/flyout_child.styles.js +0 -32
- package/es/components/flyout/flyout_child_manager.js +0 -114
- package/es/components/flyout/sessions/flyout_provider.js +0 -95
- package/es/components/flyout/sessions/flyout_reducer.js +0 -195
- package/es/components/flyout/sessions/use_eui_flyout.js +0 -82
- package/lib/components/flyout/flyout_child.js +0 -231
- package/lib/components/flyout/flyout_child.styles.js +0 -38
- package/lib/components/flyout/flyout_child_manager.js +0 -122
- package/lib/components/flyout/sessions/flyout_provider.js +0 -102
- package/lib/components/flyout/sessions/flyout_reducer.js +0 -202
- package/lib/components/flyout/sessions/index.js +0 -25
- package/lib/components/flyout/sessions/use_eui_flyout.js +0 -88
- package/optimize/es/components/flyout/flyout_child.js +0 -178
- package/optimize/es/components/flyout/flyout_child.styles.js +0 -32
- package/optimize/es/components/flyout/flyout_child_manager.js +0 -100
- package/optimize/es/components/flyout/sessions/flyout_provider.js +0 -90
- package/optimize/es/components/flyout/sessions/flyout_reducer.js +0 -187
- package/optimize/es/components/flyout/sessions/use_eui_flyout.js +0 -82
- package/optimize/lib/components/flyout/flyout_child.js +0 -186
- package/optimize/lib/components/flyout/flyout_child.styles.js +0 -38
- package/optimize/lib/components/flyout/flyout_child_manager.js +0 -110
- package/optimize/lib/components/flyout/sessions/flyout_provider.js +0 -100
- package/optimize/lib/components/flyout/sessions/flyout_reducer.js +0 -195
- package/optimize/lib/components/flyout/sessions/index.js +0 -25
- package/optimize/lib/components/flyout/sessions/use_eui_flyout.js +0 -88
- package/test-env/components/flyout/flyout_child.js +0 -230
- package/test-env/components/flyout/flyout_child.styles.js +0 -38
- package/test-env/components/flyout/flyout_child_manager.js +0 -119
- package/test-env/components/flyout/sessions/flyout_provider.js +0 -100
- package/test-env/components/flyout/sessions/flyout_reducer.js +0 -195
- package/test-env/components/flyout/sessions/index.js +0 -25
- package/test-env/components/flyout/sessions/use_eui_flyout.js +0 -88
- /package/es/components/flyout/{sessions → manager}/types.js +0 -0
- /package/{optimize/es/components/flyout/sessions → es/components/flyout}/types.js +0 -0
- /package/lib/components/flyout/{sessions → manager}/types.js +0 -0
- /package/{optimize/lib/components/flyout/sessions → lib/components/flyout}/types.js +0 -0
- /package/{test-env/components/flyout/sessions → optimize/lib/components/flyout/manager}/types.js +0 -0
|
@@ -0,0 +1,477 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.EuiFlyoutComponent = void 0;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
12
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
14
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
16
|
+
var _services = require("../../services");
|
|
17
|
+
var _manager = require("./manager");
|
|
18
|
+
var _focus_trap = require("../focus_trap");
|
|
19
|
+
var _i18n = require("../i18n");
|
|
20
|
+
var _resize_observer = require("../observer/resize_observer");
|
|
21
|
+
var _accessibility = require("../accessibility");
|
|
22
|
+
var _flyout_close_button = require("./_flyout_close_button");
|
|
23
|
+
var _flyout = require("./flyout.styles");
|
|
24
|
+
var _component_defaults = require("../provider/component_defaults");
|
|
25
|
+
var _const = require("./const");
|
|
26
|
+
var _hooks = require("./hooks");
|
|
27
|
+
var _flyout_menu = require("./flyout_menu");
|
|
28
|
+
var _flyout_overlay = require("./_flyout_overlay");
|
|
29
|
+
var _flyout_resize_button = require("./_flyout_resize_button");
|
|
30
|
+
var _use_flyout_resizable = require("./use_flyout_resizable");
|
|
31
|
+
var _use_flyout_z_index = require("./use_flyout_z_index");
|
|
32
|
+
var _flyout_parent_context = require("./flyout_parent_context");
|
|
33
|
+
var _selectors = require("./manager/selectors");
|
|
34
|
+
var _react2 = require("@emotion/react");
|
|
35
|
+
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"],
|
|
36
|
+
_excluded2 = ["titleId"];
|
|
37
|
+
/*
|
|
38
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
39
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
40
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
41
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
42
|
+
* Side Public License, v 1.
|
|
43
|
+
*/
|
|
44
|
+
/* eslint-disable local/i18n */
|
|
45
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
46
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
47
|
+
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; }
|
|
48
|
+
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) { (0, _defineProperty2.default)(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; }
|
|
49
|
+
var defaultElement = 'div';
|
|
50
|
+
var EuiFlyoutComponent = exports.EuiFlyoutComponent = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
51
|
+
var _usePropsWithComponen = (0, _component_defaults.usePropsWithComponentDefaults)('EuiFlyout', props),
|
|
52
|
+
className = _usePropsWithComponen.className,
|
|
53
|
+
children = _usePropsWithComponen.children,
|
|
54
|
+
as = _usePropsWithComponen.as,
|
|
55
|
+
_usePropsWithComponen2 = _usePropsWithComponen.hideCloseButton,
|
|
56
|
+
hideCloseButton = _usePropsWithComponen2 === void 0 ? false : _usePropsWithComponen2,
|
|
57
|
+
_flyoutMenuProps = _usePropsWithComponen.flyoutMenuProps,
|
|
58
|
+
closeButtonProps = _usePropsWithComponen.closeButtonProps,
|
|
59
|
+
_usePropsWithComponen3 = _usePropsWithComponen.closeButtonPosition,
|
|
60
|
+
closeButtonPosition = _usePropsWithComponen3 === void 0 ? 'inside' : _usePropsWithComponen3,
|
|
61
|
+
onClose = _usePropsWithComponen.onClose,
|
|
62
|
+
_usePropsWithComponen4 = _usePropsWithComponen.ownFocus,
|
|
63
|
+
ownFocus = _usePropsWithComponen4 === void 0 ? true : _usePropsWithComponen4,
|
|
64
|
+
_usePropsWithComponen5 = _usePropsWithComponen.side,
|
|
65
|
+
side = _usePropsWithComponen5 === void 0 ? _const.DEFAULT_SIDE : _usePropsWithComponen5,
|
|
66
|
+
_usePropsWithComponen6 = _usePropsWithComponen.size,
|
|
67
|
+
_size = _usePropsWithComponen6 === void 0 ? _const.DEFAULT_SIZE : _usePropsWithComponen6,
|
|
68
|
+
_usePropsWithComponen7 = _usePropsWithComponen.paddingSize,
|
|
69
|
+
paddingSize = _usePropsWithComponen7 === void 0 ? _const.DEFAULT_PADDING_SIZE : _usePropsWithComponen7,
|
|
70
|
+
_usePropsWithComponen8 = _usePropsWithComponen.maxWidth,
|
|
71
|
+
maxWidth = _usePropsWithComponen8 === void 0 ? false : _usePropsWithComponen8,
|
|
72
|
+
style = _usePropsWithComponen.style,
|
|
73
|
+
_usePropsWithComponen9 = _usePropsWithComponen.hasChildBackground,
|
|
74
|
+
hasChildBackground = _usePropsWithComponen9 === void 0 ? false : _usePropsWithComponen9,
|
|
75
|
+
maskProps = _usePropsWithComponen.maskProps,
|
|
76
|
+
_usePropsWithComponen10 = _usePropsWithComponen.type,
|
|
77
|
+
type = _usePropsWithComponen10 === void 0 ? _const.DEFAULT_TYPE : _usePropsWithComponen10,
|
|
78
|
+
outsideClickCloses = _usePropsWithComponen.outsideClickCloses,
|
|
79
|
+
_usePropsWithComponen11 = _usePropsWithComponen.pushMinBreakpoint,
|
|
80
|
+
pushMinBreakpoint = _usePropsWithComponen11 === void 0 ? _const.DEFAULT_PUSH_MIN_BREAKPOINT : _usePropsWithComponen11,
|
|
81
|
+
_usePropsWithComponen12 = _usePropsWithComponen.pushAnimation,
|
|
82
|
+
pushAnimation = _usePropsWithComponen12 === void 0 ? false : _usePropsWithComponen12,
|
|
83
|
+
_focusTrapProps = _usePropsWithComponen.focusTrapProps,
|
|
84
|
+
_usePropsWithComponen13 = _usePropsWithComponen.includeFixedHeadersInFocusTrap,
|
|
85
|
+
includeFixedHeadersInFocusTrap = _usePropsWithComponen13 === void 0 ? true : _usePropsWithComponen13,
|
|
86
|
+
includeSelectorInFocusTrap = _usePropsWithComponen.includeSelectorInFocusTrap,
|
|
87
|
+
_ariaDescribedBy = _usePropsWithComponen['aria-describedby'],
|
|
88
|
+
_ariaLabelledBy = _usePropsWithComponen['aria-labelledby'],
|
|
89
|
+
id = _usePropsWithComponen.id,
|
|
90
|
+
_usePropsWithComponen14 = _usePropsWithComponen.resizable,
|
|
91
|
+
resizable = _usePropsWithComponen14 === void 0 ? false : _usePropsWithComponen14,
|
|
92
|
+
minWidth = _usePropsWithComponen.minWidth,
|
|
93
|
+
onResize = _usePropsWithComponen.onResize,
|
|
94
|
+
onAnimationEnd = _usePropsWithComponen.onAnimationEnd,
|
|
95
|
+
rest = (0, _objectWithoutProperties2.default)(_usePropsWithComponen, _excluded);
|
|
96
|
+
var _useEuiThemeCSSVariab = (0, _services.useEuiThemeCSSVariables)(),
|
|
97
|
+
setGlobalCSSVariables = _useEuiThemeCSSVariab.setGlobalCSSVariables;
|
|
98
|
+
var Element = as || defaultElement;
|
|
99
|
+
var maskRef = (0, _react.useRef)(null);
|
|
100
|
+
|
|
101
|
+
// Ref for the main flyout element to pass to context
|
|
102
|
+
var internalParentFlyoutRef = (0, _react.useRef)(null);
|
|
103
|
+
var isPushed = (0, _hooks.useIsPushed)({
|
|
104
|
+
type: type,
|
|
105
|
+
pushMinBreakpoint: pushMinBreakpoint
|
|
106
|
+
});
|
|
107
|
+
var currentSession = (0, _manager.useCurrentSession)();
|
|
108
|
+
var isInManagedContext = (0, _manager.useIsInManagedFlyout)();
|
|
109
|
+
var flyoutId = (0, _manager.useFlyoutId)(id);
|
|
110
|
+
var layoutMode = (0, _manager.useFlyoutLayoutMode)();
|
|
111
|
+
var isActiveManagedFlyout = (0, _manager.useIsFlyoutActive)(flyoutId);
|
|
112
|
+
var flyoutManager = (0, _manager.useFlyoutManager)();
|
|
113
|
+
var currentZIndexRef = (0, _selectors.useCurrentFlyoutZIndexRef)();
|
|
114
|
+
|
|
115
|
+
// Use a ref to access the latest flyoutManager without triggering effect re-runs
|
|
116
|
+
var flyoutManagerRef = (0, _react.useRef)(flyoutManager);
|
|
117
|
+
(0, _react.useEffect)(function () {
|
|
118
|
+
flyoutManagerRef.current = flyoutManager;
|
|
119
|
+
}, [flyoutManager]);
|
|
120
|
+
(0, _react.useEffect)(function () {
|
|
121
|
+
// Keep track of unmanaged flyouts to properly calculate z-index
|
|
122
|
+
// values for all flyouts
|
|
123
|
+
if (!isInManagedContext) {
|
|
124
|
+
var _flyoutManagerRef$cur;
|
|
125
|
+
(_flyoutManagerRef$cur = flyoutManagerRef.current) === null || _flyoutManagerRef$cur === void 0 || _flyoutManagerRef$cur.addUnmanagedFlyout(flyoutId);
|
|
126
|
+
return function () {
|
|
127
|
+
var _flyoutManagerRef$cur2;
|
|
128
|
+
return (_flyoutManagerRef$cur2 = flyoutManagerRef.current) === null || _flyoutManagerRef$cur2 === void 0 ? void 0 : _flyoutManagerRef$cur2.closeUnmanagedFlyout(flyoutId);
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
}, [isInManagedContext, flyoutId]);
|
|
132
|
+
var _useEuiFlyoutResizabl = (0, _use_flyout_resizable.useEuiFlyoutResizable)({
|
|
133
|
+
enabled: resizable,
|
|
134
|
+
minWidth: minWidth,
|
|
135
|
+
maxWidth: typeof maxWidth === 'number' ? maxWidth : 0,
|
|
136
|
+
onResize: onResize,
|
|
137
|
+
side: side,
|
|
138
|
+
size: _size
|
|
139
|
+
}),
|
|
140
|
+
onMouseDownResizableButton = _useEuiFlyoutResizabl.onMouseDown,
|
|
141
|
+
onKeyDownResizableButton = _useEuiFlyoutResizabl.onKeyDown,
|
|
142
|
+
size = _useEuiFlyoutResizabl.size,
|
|
143
|
+
setFlyoutRef = _useEuiFlyoutResizabl.setFlyoutRef;
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Setting up the refs on the actual flyout element in order to
|
|
147
|
+
* accommodate for the `isPushed` state by adding padding to the body equal to the width of the element
|
|
148
|
+
*/
|
|
149
|
+
var _useState = (0, _react.useState)(null),
|
|
150
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
151
|
+
resizeRef = _useState2[0],
|
|
152
|
+
setResizeRef = _useState2[1];
|
|
153
|
+
var setRef = (0, _services.useCombinedRefs)([setResizeRef, ref, internalParentFlyoutRef, setFlyoutRef]);
|
|
154
|
+
var _useResizeObserver = (0, _resize_observer.useResizeObserver)(isPushed ? resizeRef : null, 'width'),
|
|
155
|
+
width = _useResizeObserver.width;
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Effect for adding push padding to body. Using useLayoutEffect to ensure
|
|
159
|
+
* padding changes happen synchronously before child components render -
|
|
160
|
+
* this is needed to prevent RemoveScrollBar from measuring the body in an
|
|
161
|
+
* inconsistent state during flyout transitions.
|
|
162
|
+
*/
|
|
163
|
+
(0, _react.useLayoutEffect)(function () {
|
|
164
|
+
if (!isPushed) {
|
|
165
|
+
return; // Only push-type flyouts manage body padding
|
|
166
|
+
}
|
|
167
|
+
var shouldApplyPadding = !isInManagedContext || isActiveManagedFlyout;
|
|
168
|
+
var paddingSide = side === 'left' ? 'paddingInlineStart' : 'paddingInlineEnd';
|
|
169
|
+
var cssVarName = "--euiPushFlyoutOffset".concat(side === 'left' ? 'InlineStart' : 'InlineEnd');
|
|
170
|
+
var managerSide = side === 'left' ? 'left' : 'right';
|
|
171
|
+
if (shouldApplyPadding) {
|
|
172
|
+
document.body.style[paddingSide] = "".concat(width, "px");
|
|
173
|
+
setGlobalCSSVariables((0, _defineProperty2.default)({}, cssVarName, "".concat(width, "px")));
|
|
174
|
+
// Update manager state if in managed context
|
|
175
|
+
if (isInManagedContext && flyoutManagerRef.current) {
|
|
176
|
+
flyoutManagerRef.current.setPushPadding(managerSide, width);
|
|
177
|
+
}
|
|
178
|
+
} else {
|
|
179
|
+
// Explicitly remove padding when this push flyout becomes inactive
|
|
180
|
+
document.body.style[paddingSide] = '';
|
|
181
|
+
setGlobalCSSVariables((0, _defineProperty2.default)({}, cssVarName, null));
|
|
182
|
+
// Clear manager state if in managed context
|
|
183
|
+
if (isInManagedContext && flyoutManagerRef.current) {
|
|
184
|
+
flyoutManagerRef.current.setPushPadding(managerSide, 0);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
// Cleanup on unmount
|
|
189
|
+
return function () {
|
|
190
|
+
document.body.style[paddingSide] = '';
|
|
191
|
+
setGlobalCSSVariables((0, _defineProperty2.default)({}, cssVarName, null));
|
|
192
|
+
// Clear manager state on unmount if in managed context
|
|
193
|
+
if (isInManagedContext && flyoutManagerRef.current) {
|
|
194
|
+
flyoutManagerRef.current.setPushPadding(managerSide, 0);
|
|
195
|
+
}
|
|
196
|
+
};
|
|
197
|
+
}, [isPushed, isInManagedContext, isActiveManagedFlyout, setGlobalCSSVariables, side, width]);
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
* This class doesn't actually do anything by EUI, but is nice to add for consumers (JIC)
|
|
201
|
+
*/
|
|
202
|
+
(0, _react.useEffect)(function () {
|
|
203
|
+
document.body.classList.add('euiBody--hasFlyout');
|
|
204
|
+
return function () {
|
|
205
|
+
// Remove the hasFlyout class when the flyout is unmounted
|
|
206
|
+
document.body.classList.remove('euiBody--hasFlyout');
|
|
207
|
+
};
|
|
208
|
+
}, []);
|
|
209
|
+
|
|
210
|
+
// Memoize flyout identification and relationships to prevent race conditions
|
|
211
|
+
var flyoutIdentity = (0, _react.useMemo)(function () {
|
|
212
|
+
if (!flyoutId || !currentSession) {
|
|
213
|
+
return {
|
|
214
|
+
isMainFlyout: false,
|
|
215
|
+
siblingFlyoutId: null,
|
|
216
|
+
hasValidSession: false,
|
|
217
|
+
sessionForWidth: null
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
var siblingFlyoutId = currentSession.mainFlyoutId === flyoutId ? currentSession.childFlyoutId : currentSession.mainFlyoutId;
|
|
221
|
+
return {
|
|
222
|
+
siblingFlyoutId: siblingFlyoutId,
|
|
223
|
+
hasValidSession: true,
|
|
224
|
+
sessionForWidth: currentSession
|
|
225
|
+
};
|
|
226
|
+
}, [flyoutId, currentSession]);
|
|
227
|
+
|
|
228
|
+
// Destructure for easier use
|
|
229
|
+
var siblingFlyoutId = flyoutIdentity.siblingFlyoutId;
|
|
230
|
+
var hasChildFlyout = (currentSession === null || currentSession === void 0 ? void 0 : currentSession.childFlyoutId) != null;
|
|
231
|
+
var isChildFlyout = isInManagedContext && hasChildFlyout && (currentSession === null || currentSession === void 0 ? void 0 : currentSession.childFlyoutId) === id;
|
|
232
|
+
var shouldCloseOnEscape = (0, _react.useMemo)(function () {
|
|
233
|
+
// Regular flyout - always close on ESC
|
|
234
|
+
if (!isInManagedContext) {
|
|
235
|
+
return true;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
// Managed flyout with no child - close on ESC
|
|
239
|
+
if (!hasChildFlyout) {
|
|
240
|
+
return true;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
// Child flyout - close on ESC
|
|
244
|
+
if (isChildFlyout) {
|
|
245
|
+
return true;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
// Main flyout with child flyout - don't close on ESC
|
|
249
|
+
return false;
|
|
250
|
+
}, [isInManagedContext, hasChildFlyout, isChildFlyout]);
|
|
251
|
+
|
|
252
|
+
/**
|
|
253
|
+
* ESC key closes flyout based on flyout hierarchy rules
|
|
254
|
+
*/
|
|
255
|
+
var onKeyDown = (0, _react.useCallback)(function (event) {
|
|
256
|
+
if (!isPushed && event.key === _services.keys.ESCAPE && shouldCloseOnEscape) {
|
|
257
|
+
event.preventDefault();
|
|
258
|
+
onClose(event);
|
|
259
|
+
}
|
|
260
|
+
}, [onClose, isPushed, shouldCloseOnEscape]);
|
|
261
|
+
var siblingFlyoutWidth = (0, _manager.useFlyoutWidth)(siblingFlyoutId);
|
|
262
|
+
var managedFlyoutIndex = currentZIndexRef.current;
|
|
263
|
+
if (isInManagedContext && currentSession) {
|
|
264
|
+
managedFlyoutIndex = currentSession.zIndex;
|
|
265
|
+
}
|
|
266
|
+
var _useEuiFlyoutZIndex = (0, _use_flyout_z_index.useEuiFlyoutZIndex)({
|
|
267
|
+
maskProps: maskProps,
|
|
268
|
+
isPushed: isPushed,
|
|
269
|
+
managedFlyoutIndex: managedFlyoutIndex,
|
|
270
|
+
isChildFlyout: isChildFlyout
|
|
271
|
+
}),
|
|
272
|
+
flyoutZIndex = _useEuiFlyoutZIndex.flyoutZIndex,
|
|
273
|
+
maskZIndex = _useEuiFlyoutZIndex.maskZIndex;
|
|
274
|
+
|
|
275
|
+
/**
|
|
276
|
+
* Set inline styles
|
|
277
|
+
*/
|
|
278
|
+
var inlineStyles = (0, _react.useMemo)(function () {
|
|
279
|
+
var composedStyles = (0, _flyout.composeFlyoutInlineStyles)(size, layoutMode, siblingFlyoutId, siblingFlyoutWidth || null, maxWidth, flyoutZIndex);
|
|
280
|
+
return _objectSpread(_objectSpread({}, style), composedStyles);
|
|
281
|
+
}, [style, size, layoutMode, siblingFlyoutId, siblingFlyoutWidth, maxWidth, flyoutZIndex]);
|
|
282
|
+
var styles = (0, _services.useEuiMemoizedStyles)(_flyout.euiFlyoutStyles);
|
|
283
|
+
var cssStyles = [styles.euiFlyout, styles.paddingSizes[paddingSize], (0, _const.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]];
|
|
284
|
+
var classes = (0, _classnames.default)('euiFlyout', isChildFlyout && hasChildBackground && 'euiFlyout--hasChildBackground', className);
|
|
285
|
+
var flyoutToggle = (0, _react.useRef)(document.activeElement);
|
|
286
|
+
var _useState3 = (0, _react.useState)([]),
|
|
287
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
288
|
+
focusTrapShards = _useState4[0],
|
|
289
|
+
setFocusTrapShards = _useState4[1];
|
|
290
|
+
var focusTrapSelectors = (0, _react.useMemo)(function () {
|
|
291
|
+
var selectors = [];
|
|
292
|
+
if (includeSelectorInFocusTrap) {
|
|
293
|
+
selectors = Array.isArray(includeSelectorInFocusTrap) ? includeSelectorInFocusTrap : [includeSelectorInFocusTrap];
|
|
294
|
+
}
|
|
295
|
+
if (includeFixedHeadersInFocusTrap) {
|
|
296
|
+
selectors.push('.euiHeader[data-fixed-header]');
|
|
297
|
+
}
|
|
298
|
+
return selectors;
|
|
299
|
+
}, [includeSelectorInFocusTrap, includeFixedHeadersInFocusTrap]);
|
|
300
|
+
|
|
301
|
+
/**
|
|
302
|
+
* Finds the shards to include in the focus trap by querying by `focusTrapSelectors`.
|
|
303
|
+
*
|
|
304
|
+
* @param shouldAutoFocus Whether to auto-focus the flyout wrapper when the focus trap is activated.
|
|
305
|
+
* This is necessary because when a flyout is toggled from within a shard, the focus trap's `autoFocus`
|
|
306
|
+
* feature doesn't work. This logic manually focuses the flyout as a workaround.
|
|
307
|
+
*/
|
|
308
|
+
var findShards = (0, _react.useCallback)(function () {
|
|
309
|
+
var shouldAutoFocus = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
310
|
+
if (focusTrapSelectors.length > 0) {
|
|
311
|
+
var shardsEls = focusTrapSelectors.flatMap(function (selector) {
|
|
312
|
+
return Array.from(document.querySelectorAll(selector));
|
|
313
|
+
});
|
|
314
|
+
setFocusTrapShards(Array.from(shardsEls));
|
|
315
|
+
if (shouldAutoFocus) {
|
|
316
|
+
shardsEls.forEach(function (shard) {
|
|
317
|
+
if (shard.contains(flyoutToggle.current)) {
|
|
318
|
+
resizeRef === null || resizeRef === void 0 || resizeRef.focus();
|
|
319
|
+
}
|
|
320
|
+
});
|
|
321
|
+
}
|
|
322
|
+
} else {
|
|
323
|
+
// Clear existing shards if necessary, e.g. switching to `false`
|
|
324
|
+
setFocusTrapShards(function (shards) {
|
|
325
|
+
return shards.length ? [] : shards;
|
|
326
|
+
});
|
|
327
|
+
}
|
|
328
|
+
}, [focusTrapSelectors, resizeRef]);
|
|
329
|
+
(0, _react.useEffect)(function () {
|
|
330
|
+
// Auto-focus should only happen on initial flyout mount (or when the dependencies change)
|
|
331
|
+
// because it snaps focus to the flyout wrapper, which steals it from subsequently focused elements.
|
|
332
|
+
findShards(true);
|
|
333
|
+
var unsubscribe = _services.focusTrapPubSub.subscribe(function () {
|
|
334
|
+
return findShards();
|
|
335
|
+
});
|
|
336
|
+
return unsubscribe;
|
|
337
|
+
}, [findShards]);
|
|
338
|
+
var focusTrapProps = (0, _react.useMemo)(function () {
|
|
339
|
+
return _objectSpread(_objectSpread({}, _focusTrapProps), {}, {
|
|
340
|
+
shards: [].concat((0, _toConsumableArray2.default)(focusTrapShards), (0, _toConsumableArray2.default)((_focusTrapProps === null || _focusTrapProps === void 0 ? void 0 : _focusTrapProps.shards) || []))
|
|
341
|
+
});
|
|
342
|
+
}, [_focusTrapProps, focusTrapShards]);
|
|
343
|
+
|
|
344
|
+
/*
|
|
345
|
+
* Provide meaningful screen reader instructions/details
|
|
346
|
+
*/
|
|
347
|
+
var hasOverlayMask = ownFocus && !isPushed;
|
|
348
|
+
var descriptionId = (0, _services.useGeneratedHtmlId)();
|
|
349
|
+
var ariaDescribedBy = (0, _classnames.default)(descriptionId, _ariaDescribedBy);
|
|
350
|
+
var screenReaderDescription = (0, _react.useMemo)(function () {
|
|
351
|
+
return (0, _react2.jsx)(_accessibility.EuiScreenReaderOnly, null, (0, _react2.jsx)("p", {
|
|
352
|
+
id: descriptionId
|
|
353
|
+
}, hasOverlayMask ? (0, _react2.jsx)(_i18n.EuiI18n, {
|
|
354
|
+
token: "euiFlyout.screenReaderModalDialog",
|
|
355
|
+
default: "You are in a modal dialog. Press Escape or tap/click outside the dialog on the shadowed overlay to close."
|
|
356
|
+
}) : (0, _react2.jsx)(_i18n.EuiI18n, {
|
|
357
|
+
token: "euiFlyout.screenReaderNonModalDialog",
|
|
358
|
+
default: "You are in a non-modal dialog. To close the dialog, press Escape."
|
|
359
|
+
}), ' ', focusTrapShards.length > 0 && (0, _react2.jsx)(_i18n.EuiI18n, {
|
|
360
|
+
token: "euiFlyout.screenReaderFocusTrapShards",
|
|
361
|
+
default: "You can still continue tabbing through other global page landmarks."
|
|
362
|
+
})));
|
|
363
|
+
}, [hasOverlayMask, descriptionId, focusTrapShards.length]);
|
|
364
|
+
|
|
365
|
+
/*
|
|
366
|
+
* If the flyout menu is to be rendered, ensure the flyout has aria-labelledby referencing the menu's titleId
|
|
367
|
+
*/
|
|
368
|
+
var generatedMenuId = (0, _services.useGeneratedHtmlId)();
|
|
369
|
+
var _ref = _flyoutMenuProps || {},
|
|
370
|
+
_titleId = _ref.titleId,
|
|
371
|
+
flyoutMenuProps = (0, _objectWithoutProperties2.default)(_ref, _excluded2);
|
|
372
|
+
var hasMenu = !!_flyoutMenuProps;
|
|
373
|
+
var flyoutMenuId = (0, _react.useMemo)(function () {
|
|
374
|
+
if (!hasMenu) return undefined;
|
|
375
|
+
return _titleId || generatedMenuId;
|
|
376
|
+
}, [hasMenu, _titleId, generatedMenuId]);
|
|
377
|
+
|
|
378
|
+
// If the flyout level is LEVEL_MAIN, the title should be hidden by default
|
|
379
|
+
var flyoutMenuHideTitle = (0, _react.useMemo)(function () {
|
|
380
|
+
if (!hasMenu) return undefined;
|
|
381
|
+
if ((_flyoutMenuProps === null || _flyoutMenuProps === void 0 ? void 0 : _flyoutMenuProps.hideTitle) !== undefined) {
|
|
382
|
+
return _flyoutMenuProps.hideTitle;
|
|
383
|
+
}
|
|
384
|
+
return (currentSession === null || currentSession === void 0 ? void 0 : currentSession.mainFlyoutId) === flyoutId;
|
|
385
|
+
}, [hasMenu, _flyoutMenuProps, currentSession, flyoutId]);
|
|
386
|
+
var ariaLabelledBy = (0, _react.useMemo)(function () {
|
|
387
|
+
if (flyoutMenuId) {
|
|
388
|
+
return (0, _classnames.default)(flyoutMenuId, _ariaLabelledBy);
|
|
389
|
+
}
|
|
390
|
+
return _ariaLabelledBy;
|
|
391
|
+
}, [flyoutMenuId, _ariaLabelledBy]);
|
|
392
|
+
|
|
393
|
+
/*
|
|
394
|
+
* Trap focus even when `ownFocus={false}`, otherwise closing
|
|
395
|
+
* the flyout won't return focus to the originating button.
|
|
396
|
+
*
|
|
397
|
+
* Set `clickOutsideDisables={true}` when `ownFocus={false}`
|
|
398
|
+
* to allow non-keyboard users the ability to interact with
|
|
399
|
+
* elements outside the flyout.
|
|
400
|
+
*
|
|
401
|
+
* Set `onClickOutside={onClose}` when `ownFocus` and `type` are the defaults,
|
|
402
|
+
* or if `outsideClickCloses={true}` to close on clicks that target
|
|
403
|
+
* (both mousedown and mouseup) the overlay mask.
|
|
404
|
+
*/
|
|
405
|
+
var onClickOutside = (0, _react.useCallback)(function (event) {
|
|
406
|
+
// Do not close the flyout for any external click
|
|
407
|
+
if (outsideClickCloses === false) return undefined;
|
|
408
|
+
if (hasOverlayMask) {
|
|
409
|
+
// The overlay mask is present, so only clicks on the mask should close the flyout, regardless of outsideClickCloses
|
|
410
|
+
if (event.target === maskRef.current) return onClose(event);
|
|
411
|
+
} else {
|
|
412
|
+
// No overlay mask is present, so any outside clicks should close the flyout
|
|
413
|
+
if (outsideClickCloses === true) return onClose(event);
|
|
414
|
+
}
|
|
415
|
+
// Otherwise if ownFocus is false and outsideClickCloses is undefined, outside clicks should not close the flyout
|
|
416
|
+
return undefined;
|
|
417
|
+
}, [onClose, hasOverlayMask, outsideClickCloses]);
|
|
418
|
+
var maskCombinedRefs = (0, _services.useCombinedRefs)([maskProps === null || maskProps === void 0 ? void 0 : maskProps.maskRef, maskRef]);
|
|
419
|
+
|
|
420
|
+
/**
|
|
421
|
+
* For overlay flyouts in managed contexts, coordinate scroll locking with push flyout state.
|
|
422
|
+
*/
|
|
423
|
+
var hasPushPaddingInManager = (0, _manager.useHasPushPadding)();
|
|
424
|
+
var shouldDeferScrollLock = !isPushed && isInManagedContext && hasPushPaddingInManager;
|
|
425
|
+
var shouldUseScrollLock = hasOverlayMask && !shouldDeferScrollLock;
|
|
426
|
+
return (0, _react2.jsx)(_flyout_overlay.EuiFlyoutOverlay, {
|
|
427
|
+
hasOverlayMask: hasOverlayMask,
|
|
428
|
+
isPushed: isPushed,
|
|
429
|
+
maskZIndex: maskZIndex,
|
|
430
|
+
maskProps: _objectSpread(_objectSpread({}, maskProps), {}, {
|
|
431
|
+
maskRef: maskCombinedRefs
|
|
432
|
+
})
|
|
433
|
+
}, (0, _react2.jsx)(_services.EuiWindowEvent, {
|
|
434
|
+
event: "keydown",
|
|
435
|
+
handler: onKeyDown
|
|
436
|
+
}), (0, _react2.jsx)(_focus_trap.EuiFocusTrap, (0, _extends2.default)({
|
|
437
|
+
disabled: isPushed,
|
|
438
|
+
scrollLock: shouldUseScrollLock,
|
|
439
|
+
clickOutsideDisables: !ownFocus,
|
|
440
|
+
onClickOutside: onClickOutside
|
|
441
|
+
}, focusTrapProps), (0, _react2.jsx)(Element, (0, _extends2.default)({
|
|
442
|
+
className: classes,
|
|
443
|
+
css: cssStyles,
|
|
444
|
+
style: inlineStyles,
|
|
445
|
+
ref: setRef,
|
|
446
|
+
id: id
|
|
447
|
+
}, rest, {
|
|
448
|
+
role: !isPushed ? 'dialog' : rest.role,
|
|
449
|
+
"aria-modal": !isPushed || undefined,
|
|
450
|
+
tabIndex: !isPushed ? 0 : rest.tabIndex,
|
|
451
|
+
"aria-describedby": !isPushed ? ariaDescribedBy : _ariaDescribedBy,
|
|
452
|
+
"aria-labelledby": ariaLabelledBy,
|
|
453
|
+
"data-autofocus": !isPushed || undefined,
|
|
454
|
+
onAnimationEnd: onAnimationEnd
|
|
455
|
+
}), !isPushed && screenReaderDescription, !_flyoutMenuProps && !hideCloseButton && (0, _react2.jsx)(_flyout_close_button.EuiFlyoutCloseButton, (0, _extends2.default)({}, closeButtonProps, {
|
|
456
|
+
onClose: onClose,
|
|
457
|
+
closeButtonPosition: closeButtonPosition,
|
|
458
|
+
side: side
|
|
459
|
+
})), _flyoutMenuProps && (0, _react2.jsx)(_flyout_menu.EuiFlyoutMenu, (0, _extends2.default)({}, flyoutMenuProps, {
|
|
460
|
+
hideTitle: flyoutMenuHideTitle,
|
|
461
|
+
titleId: flyoutMenuId
|
|
462
|
+
})), resizable && (0, _react2.jsx)(_flyout_resize_button.EuiFlyoutResizeButton, {
|
|
463
|
+
type: type,
|
|
464
|
+
side: side,
|
|
465
|
+
ownFocus: ownFocus,
|
|
466
|
+
isPushed: isPushed,
|
|
467
|
+
onMouseDown: onMouseDownResizableButton,
|
|
468
|
+
onTouchStart: onMouseDownResizableButton,
|
|
469
|
+
onKeyDown: onKeyDownResizableButton
|
|
470
|
+
}), (0, _react2.jsx)(_flyout_parent_context.EuiFlyoutParentProvider, null, children))));
|
|
471
|
+
}
|
|
472
|
+
// React.forwardRef interferes with the inferred element type
|
|
473
|
+
// Casting to ensure correct element prop type checking for `as`
|
|
474
|
+
// e.g., `href` is not on a `div`
|
|
475
|
+
);
|
|
476
|
+
// Recast to allow `displayName`
|
|
477
|
+
EuiFlyoutComponent.displayName = 'EuiFlyoutComponent';
|
|
@@ -4,13 +4,17 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.maxedFlyoutWidth = exports.euiFlyoutStyles = exports.euiFlyoutSlideInRight = exports.euiFlyoutSlideInLeft = exports.composeFlyoutSizing = exports.FLYOUT_BREAKPOINT = void 0;
|
|
7
|
+
exports.maxedFlyoutWidth = exports.euiFlyoutStyles = exports.euiFlyoutSlideOutRight = exports.euiFlyoutSlideOutLeft = exports.euiFlyoutSlideInRight = exports.euiFlyoutSlideInLeft = exports.composeFlyoutSizing = exports.composeFlyoutInlineStyles = exports.FLYOUT_BREAKPOINT = exports.EUI_FLYOUT_CONTAINER_NAME = void 0;
|
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
8
9
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
9
10
|
var _react = require("@emotion/react");
|
|
10
11
|
var _euiThemeCommon = require("@elastic/eui-theme-common");
|
|
12
|
+
var _const = require("./const");
|
|
11
13
|
var _global_styling = require("../../global_styling");
|
|
12
14
|
var _form = require("../form/form.styles");
|
|
13
|
-
var _templateObject, _templateObject2;
|
|
15
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
16
|
+
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; }
|
|
17
|
+
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) { (0, _defineProperty2.default)(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; }
|
|
14
18
|
function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; } /*
|
|
15
19
|
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
16
20
|
* or more contributor license agreements. Licensed under the Elastic License
|
|
@@ -18,9 +22,12 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
|
|
|
18
22
|
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
19
23
|
* Side Public License, v 1.
|
|
20
24
|
*/
|
|
25
|
+
var EUI_FLYOUT_CONTAINER_NAME = exports.EUI_FLYOUT_CONTAINER_NAME = 'euiFlyout';
|
|
21
26
|
var FLYOUT_BREAKPOINT = exports.FLYOUT_BREAKPOINT = 'm';
|
|
22
|
-
var euiFlyoutSlideInRight = exports.euiFlyoutSlideInRight = (0, _react.keyframes)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n
|
|
23
|
-
var
|
|
27
|
+
var euiFlyoutSlideInRight = exports.euiFlyoutSlideInRight = (0, _react.keyframes)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n from {\n opacity: 0;\n transform: translateX(100%);\n }\n to {\n opacity: 1;\n transform: translateX(0%);\n }\n"])));
|
|
28
|
+
var euiFlyoutSlideOutRight = exports.euiFlyoutSlideOutRight = (0, _react.keyframes)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n from {\n opacity: 1;\n transform: translateX(0%);\n }\n to {\n opacity: 0;\n transform: translateX(100%);\n }\n"])));
|
|
29
|
+
var euiFlyoutSlideInLeft = exports.euiFlyoutSlideInLeft = (0, _react.keyframes)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n from {\n opacity: 0;\n transform: translateX(-100%);\n }\n to {\n opacity: 1;\n transform: translateX(0%);\n }\n"])));
|
|
30
|
+
var euiFlyoutSlideOutLeft = exports.euiFlyoutSlideOutLeft = (0, _react.keyframes)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n from {\n opacity: 1;\n transform: translateX(0);\n }\n to {\n opacity: 0;\n transform: translateX(-100%);\n }\n"])));
|
|
24
31
|
var _ref = process.env.NODE_ENV === "production" ? {
|
|
25
32
|
name: "yokctr-noAnimation",
|
|
26
33
|
styles: "animation-duration:0s!important;label:noAnimation;"
|
|
@@ -40,17 +47,18 @@ var _ref2 = process.env.NODE_ENV === "production" ? {
|
|
|
40
47
|
var euiFlyoutStyles = exports.euiFlyoutStyles = function euiFlyoutStyles(euiThemeContext) {
|
|
41
48
|
var euiTheme = euiThemeContext.euiTheme;
|
|
42
49
|
return {
|
|
43
|
-
euiFlyout: /*#__PURE__*/(0, _react.css)("position:fixed;", (0, _global_styling.logicalCSS)('bottom', 0), " ", (0, _global_styling.logicalCSS)('top', 'var(--euiFixedHeadersOffset, 0)'), " ", (0, _global_styling.logicalCSS)('height', 'inherit'), "
|
|
50
|
+
euiFlyout: /*#__PURE__*/(0, _react.css)("position:fixed;", (0, _global_styling.logicalCSS)('bottom', 0), " ", (0, _global_styling.logicalCSS)('top', 'var(--euiFixedHeadersOffset, 0)'), " ", (0, _global_styling.logicalCSS)('height', 'inherit'), " background:", euiTheme.colors.backgroundBasePlain, ";display:flex;flex-direction:column;align-items:stretch;&:focus{outline:none;}&.euiFlyout--hasChildBackground{background:", euiTheme.colors.backgroundBaseSubdued, ";}", maxedFlyoutWidth(euiThemeContext), ";;label:euiFlyout;"),
|
|
44
51
|
// Flyout sizes
|
|
45
52
|
// When a child flyout is stacked on top of the parent, the parent flyout size will match the child flyout size
|
|
46
53
|
s: /*#__PURE__*/(0, _react.css)(composeFlyoutSizing(euiThemeContext, 's'), " &.euiFlyout--hasChild--stacked.euiFlyout--hasChild--m{", composeFlyoutSizing(euiThemeContext, 'm'), ";};label:s;"),
|
|
47
54
|
m: /*#__PURE__*/(0, _react.css)(composeFlyoutSizing(euiThemeContext, 'm'), " &.euiFlyout--hasChild--stacked.euiFlyout--hasChild--s{", composeFlyoutSizing(euiThemeContext, 's'), ";};label:m;"),
|
|
48
55
|
l: /*#__PURE__*/(0, _react.css)(composeFlyoutSizing(euiThemeContext, 'l'), ";;label:l;"),
|
|
56
|
+
fill: /*#__PURE__*/(0, _react.css)(composeFlyoutSizing(euiThemeContext, 'fill'), ";;label:fill;"),
|
|
49
57
|
noMaxWidth: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('max-width', 'none'), ";;label:noMaxWidth;"),
|
|
50
58
|
// Side
|
|
51
|
-
right: /*#__PURE__*/(0, _react.css)("clip-path:polygon(-50% 0, 100% 0, 100% 100%, -50% 100%);", (0, _global_styling.logicalCSS)('right', 0), "
|
|
59
|
+
right: /*#__PURE__*/(0, _react.css)("clip-path:polygon(-50% 0, 100% 0, 100% 100%, -50% 100%);", (0, _global_styling.logicalCSS)('right', 0), "animation:", euiFlyoutSlideInRight, " 0s ", euiTheme.animation.resistance, " forwards;", _global_styling.euiCanAnimate, "{animation-duration:", euiTheme.animation.normal, ";}&.euiFlyout--hasChild{clip-path:none;};label:right;"),
|
|
52
60
|
// Left-side flyouts should only be used for navigation
|
|
53
|
-
left: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('left', 0), " clip-path:polygon(0 0, 150% 0, 150% 100%, 0 100%);
|
|
61
|
+
left: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('left', 0), " clip-path:polygon(0 0, 150% 0, 150% 100%, 0 100%);animation:", euiFlyoutSlideInLeft, " 0s ", euiTheme.animation.resistance, " forwards;", _global_styling.euiCanAnimate, "{animation-duration:", euiTheme.animation.normal, ";};label:left;"),
|
|
54
62
|
// Type
|
|
55
63
|
overlay: {
|
|
56
64
|
overlay: _ref2,
|
|
@@ -106,6 +114,13 @@ var composeFlyoutSizing = exports.composeFlyoutSizing = function composeFlyoutSi
|
|
|
106
114
|
// 1.
|
|
107
115
|
width: '75vw',
|
|
108
116
|
max: "".concat(euiTheme.breakpoint.l, "px")
|
|
117
|
+
},
|
|
118
|
+
// NOTE: These styles are for the flyout system in `stacked` layout mode.
|
|
119
|
+
// In `side-by-side` mode, @flyout.component.tsx uses inline styles.
|
|
120
|
+
fill: {
|
|
121
|
+
min: '90vw',
|
|
122
|
+
width: '90vw',
|
|
123
|
+
max: '90vw'
|
|
109
124
|
}
|
|
110
125
|
};
|
|
111
126
|
return "\n ".concat((0, _global_styling.logicalCSS)('max-width', flyoutSizes[size].max), "\n\n ").concat((0, _global_styling.euiMaxBreakpoint)(euiThemeContext, FLYOUT_BREAKPOINT), " {\n ").concat((0, _global_styling.logicalCSS)('min-width', 0), "\n ").concat((0, _global_styling.logicalCSS)('width', flyoutSizes[size].min), "\n }\n ").concat((0, _global_styling.euiMinBreakpoint)(euiThemeContext, FLYOUT_BREAKPOINT), " {\n ").concat((0, _global_styling.logicalCSS)('min-width', flyoutSizes[size].min), "\n ").concat((0, _global_styling.logicalCSS)('width', flyoutSizes[size].width), "\n }\n ");
|
|
@@ -131,4 +146,85 @@ var composeFlyoutPadding = function composeFlyoutPadding(euiThemeContext, paddin
|
|
|
131
146
|
}), " ").concat(euiTheme.size.l, ";")
|
|
132
147
|
};
|
|
133
148
|
return "\n .euiFlyoutHeader {\n ".concat((0, _global_styling.logicalCSS)('padding-horizontal', paddingModifierMap[paddingSize]), "\n ").concat((0, _global_styling.logicalCSS)('padding-top', paddingModifierMap[paddingSize]), "\n }\n\n [class*='euiFlyoutHeader-hasBorder'] {\n ").concat((0, _global_styling.logicalCSS)('padding-bottom', paddingModifierMap[paddingSize]), "\n }\n\n .euiFlyoutBody__overflowContent {\n padding: ").concat(paddingModifierMap[paddingSize], ";\n }\n\n .euiFlyoutBody__banner .euiCallOut {\n ").concat((0, _global_styling.logicalCSS)('padding-horizontal', paddingModifierMap[paddingSize]), "\n }\n\n .euiFlyoutFooter {\n padding: ").concat(footerPaddingSizes[paddingSize], ";\n }\n ");
|
|
149
|
+
};
|
|
150
|
+
|
|
151
|
+
/**
|
|
152
|
+
* Helper for `composeFlyoutInlineStyles`
|
|
153
|
+
* Handles maxWidth prop overrides to ensure they take precedence over base CSS
|
|
154
|
+
*/
|
|
155
|
+
var composeMaxWidthOverrides = function composeMaxWidthOverrides(maxWidth, isFill) {
|
|
156
|
+
if (typeof maxWidth === 'boolean') {
|
|
157
|
+
return {};
|
|
158
|
+
}
|
|
159
|
+
var overrides = {
|
|
160
|
+
maxWidth: maxWidth
|
|
161
|
+
};
|
|
162
|
+
|
|
163
|
+
// For fill size flyouts, we need to override min-width to allow dynamic sizing
|
|
164
|
+
if (isFill) {
|
|
165
|
+
overrides.minWidth = '0';
|
|
166
|
+
|
|
167
|
+
// When maxWidth is provided for fill flyouts, we need to override the CSS rule
|
|
168
|
+
// that sets min-inline-size: 90vw. We calculate min(maxWidth, 90vw) to ensure
|
|
169
|
+
// the flyout respects both constraints and doesn't get stuck at 90vw minimum.
|
|
170
|
+
if (maxWidth) {
|
|
171
|
+
var maxWidthWithUnits = typeof maxWidth === 'number' ? "".concat(maxWidth, "px") : maxWidth;
|
|
172
|
+
overrides.minWidth = "min(".concat(maxWidthWithUnits, ", 90vw)");
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
return (0, _global_styling.logicalStyles)(overrides);
|
|
176
|
+
};
|
|
177
|
+
|
|
178
|
+
/**
|
|
179
|
+
* Composes all inline styles for a flyout based on its configuration
|
|
180
|
+
*/
|
|
181
|
+
var composeFlyoutInlineStyles = exports.composeFlyoutInlineStyles = function composeFlyoutInlineStyles(size, layoutMode, siblingFlyoutId, siblingFlyoutWidth, maxWidth, zIndex) {
|
|
182
|
+
// Handle custom width values (non-named sizes)
|
|
183
|
+
var customWidthStyles = !(0, _const.isEuiFlyoutSizeNamed)(size) ? (0, _global_styling.logicalStyles)({
|
|
184
|
+
width: size
|
|
185
|
+
}) : {};
|
|
186
|
+
var isFill = size === 'fill';
|
|
187
|
+
|
|
188
|
+
// Handle dynamic width calculation for fill size in side-by-side mode
|
|
189
|
+
var dynamicStyles = isFill && layoutMode === 'side-by-side' && siblingFlyoutId && siblingFlyoutWidth ? (0, _global_styling.logicalStyles)({
|
|
190
|
+
width: "calc(90vw - ".concat(siblingFlyoutWidth, "px)"),
|
|
191
|
+
minWidth: '0'
|
|
192
|
+
}) : {};
|
|
193
|
+
|
|
194
|
+
// For fill flyouts with maxWidth, we need to ensure the minWidth override is applied
|
|
195
|
+
// to override the CSS rule that sets min-inline-size: 90vw
|
|
196
|
+
var minWidthOverride = {};
|
|
197
|
+
if (isFill && maxWidth) {
|
|
198
|
+
if (layoutMode === 'side-by-side' && siblingFlyoutId && siblingFlyoutWidth && dynamicStyles.inlineSize) {
|
|
199
|
+
// For fill flyouts with maxWidth and a sibling: min(maxWidth, calc(90vw - siblingWidth))
|
|
200
|
+
var dynamicWidth = dynamicStyles.inlineSize;
|
|
201
|
+
var maxWidthWithUnits = typeof maxWidth === 'number' ? "".concat(maxWidth, "px") : maxWidth;
|
|
202
|
+
minWidthOverride = {
|
|
203
|
+
minWidth: "min(".concat(maxWidthWithUnits, ", ").concat(dynamicWidth, ")")
|
|
204
|
+
};
|
|
205
|
+
} else {
|
|
206
|
+
// For fill flyouts with maxWidth but no sibling: min(maxWidth, 90vw)
|
|
207
|
+
var maxWidthOverrides = composeMaxWidthOverrides(maxWidth, isFill);
|
|
208
|
+
minWidthOverride = {
|
|
209
|
+
minWidth: maxWidthOverrides.minInlineSize
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
// Calculate the final maxWidth based on conditions
|
|
215
|
+
var finalMaxWidth;
|
|
216
|
+
if (maxWidth && isFill && layoutMode === 'side-by-side' && siblingFlyoutId && siblingFlyoutWidth && dynamicStyles.inlineSize) {
|
|
217
|
+
// For fill flyouts with maxWidth and a sibling: min(maxWidth, calc(90vw - siblingWidth))
|
|
218
|
+
var _dynamicWidth = dynamicStyles.inlineSize;
|
|
219
|
+
var _maxWidthWithUnits = typeof maxWidth === 'number' ? "".concat(maxWidth, "px") : maxWidth;
|
|
220
|
+
finalMaxWidth = "min(".concat(_maxWidthWithUnits, ", ").concat(_dynamicWidth, ")");
|
|
221
|
+
} else if (maxWidth) {
|
|
222
|
+
// For all other cases with maxWidth: use the original maxWidth value
|
|
223
|
+
finalMaxWidth = typeof maxWidth === 'number' ? "".concat(maxWidth, "px") : maxWidth;
|
|
224
|
+
}
|
|
225
|
+
return (0, _global_styling.logicalStyles)(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, customWidthStyles), dynamicStyles), minWidthOverride), finalMaxWidth ? {
|
|
226
|
+
maxWidth: finalMaxWidth
|
|
227
|
+
} : {}), {}, {
|
|
228
|
+
zIndex: zIndex
|
|
229
|
+
}));
|
|
134
230
|
};
|