@elastic/eui 60.2.0 → 62.0.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/dist/eui_theme_dark.css +20 -660
- package/dist/eui_theme_dark.json +1 -2
- package/dist/eui_theme_dark.json.d.ts +1 -2
- package/dist/eui_theme_dark.min.css +1 -1
- package/dist/eui_theme_light.css +20 -660
- package/dist/eui_theme_light.json +1 -2
- package/dist/eui_theme_light.json.d.ts +1 -2
- package/dist/eui_theme_light.min.css +1 -1
- package/es/components/accessibility/skip_link/skip_link.js +1 -1
- package/es/components/accordion/accordion.js +10 -5
- package/es/components/avatar/avatar.js +1 -2
- 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 +1 -1
- package/es/components/basic_table/collapsed_item_actions.js +1 -1
- package/es/components/basic_table/in_memory_table.js +1 -1
- package/es/components/button/_button_content_deprecated.js +1 -1
- package/es/components/button/button.js +2 -2
- package/es/components/button/button_display/_button_display.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/call_out/call_out.js +1 -1
- package/es/components/card/card.js +1 -1
- package/es/components/card/card_select.js +1 -1
- package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
- package/es/components/color_picker/color_picker.js +1 -1
- package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +7 -4
- package/es/components/comment_list/comment.js +54 -24
- package/es/components/comment_list/comment_event.js +103 -32
- package/es/components/comment_list/comment_event.styles.js +78 -0
- package/es/components/comment_list/comment_list.js +45 -12
- package/es/components/comment_list/comment_timeline.js +29 -35
- package/es/components/context_menu/context_menu.js +1 -1
- package/es/components/context_menu/context_menu_panel.js +1 -1
- package/es/components/datagrid/body/data_grid_body.js +20 -17
- package/es/components/datagrid/body/data_grid_cell.js +102 -34
- package/es/components/datagrid/body/header/data_grid_header_cell.js +164 -68
- package/es/components/datagrid/body/header/data_grid_header_row.js +13 -13
- package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
- package/es/components/datagrid/data_grid.js +15 -13
- package/es/components/datagrid/utils/in_memory.js +12 -12
- package/es/components/datagrid/utils/ref.js +24 -3
- package/es/components/datagrid/utils/row_heights.js +27 -33
- 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 +1 -1
- package/es/components/error_boundary/error_boundary.js +18 -11
- package/es/components/error_boundary/error_boundary.styles.js +18 -0
- package/es/components/focus_trap/focus_trap.js +1 -0
- package/es/components/form/field_number/field_number.js +1 -1
- package/es/components/form/field_text/field_text.js +2 -2
- package/es/components/form/form.styles.js +11 -0
- 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/header/header_links/header_link.js +1 -1
- package/es/components/header/header_links/header_links.js +10 -8
- package/es/components/header/header_logo.js +1 -1
- package/es/components/icon/assets/keyboard.js +38 -0
- package/es/components/icon/assets/tokenMetricCounter.js +38 -0
- package/es/components/icon/assets/{keyboard_shortcut.js → tokenMetricGauge.js} +3 -3
- package/es/components/icon/icon.js +1 -1
- package/es/components/icon/icon_map.js +39 -37
- package/es/components/image/image.js +71 -166
- package/es/components/image/image.styles.js +28 -0
- package/es/components/image/image_button.js +68 -0
- package/es/components/image/image_button.styles.js +41 -0
- package/es/components/image/image_caption.js +28 -0
- package/es/components/image/image_caption.styles.js +18 -0
- package/es/components/image/image_fullscreen_wrapper.js +100 -0
- package/es/components/image/image_fullscreen_wrapper.styles.js +26 -0
- package/es/components/image/image_types.js +10 -0
- package/es/components/image/image_wrapper.js +78 -0
- package/es/components/image/image_wrapper.styles.js +41 -0
- package/es/components/key_pad_menu/key_pad_menu_item.js +1 -1
- 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/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/notification/notification_event.js +2 -2
- package/es/components/notification/notification_event_meta.js +1 -1
- package/es/components/page/page_header/page_header.js +1 -1
- package/es/components/page/page_header/page_header_content.js +1 -1
- package/es/components/page/page_template.js +1 -1
- package/es/components/pagination/pagination_button.js +1 -1
- package/es/components/popover/input_popover.js +8 -4
- package/es/components/popover/popover.js +58 -148
- package/es/components/popover/popover.styles.js +15 -0
- package/es/components/popover/popover_arrow/_popover_arrow.js +40 -0
- package/es/components/popover/popover_arrow/_popover_arrow.styles.js +25 -0
- package/es/components/popover/popover_arrow/index.js +8 -0
- package/es/components/popover/popover_footer.js +15 -12
- package/es/components/popover/popover_footer.styles.js +19 -0
- package/es/components/popover/popover_panel/_popover_panel.js +114 -0
- package/es/components/popover/popover_panel/_popover_panel.styles.js +42 -0
- package/es/components/popover/popover_panel/index.js +8 -0
- package/es/components/popover/popover_title.js +15 -12
- package/es/components/popover/popover_title.styles.js +20 -0
- package/es/components/selectable/selectable.js +10 -9
- 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_search/selectable_search.js +1 -6
- package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +2 -2
- package/es/components/suggest/suggest.js +1 -5
- package/es/components/suggest/suggest_item.js +1 -1
- package/es/components/table/table_header_button.js +1 -1
- package/es/components/text/text.styles.js +5 -4
- package/es/components/text_diff/text_diff.js +5 -0
- package/es/components/text_diff/text_diff.styles.js +15 -0
- package/es/components/timeline/timeline_item.js +1 -2
- 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/token/token.js +1 -1
- package/es/components/token/token_map.js +115 -107
- package/es/components/tool_tip/icon_tip.js +1 -1
- package/es/components/tour/tour.js +6 -6
- package/es/components/tour/tour_step.js +6 -6
- package/es/global_styling/functions/logicals.js +22 -0
- package/es/global_styling/mixins/_responsive.js +46 -0
- package/es/global_styling/mixins/index.js +2 -1
- package/es/services/hooks/index.js +1 -0
- package/es/services/hooks/useLatest.js +18 -0
- package/es/test/emotion-prefix.js +1 -1
- package/es/themes/amsterdam/global_styling/functions/shadows.js +1 -1
- package/es/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
- package/eui.d.ts +620 -252
- package/i18ntokens.json +147 -51
- package/lib/components/accessibility/skip_link/skip_link.js +1 -1
- package/lib/components/accordion/accordion.js +10 -5
- package/lib/components/avatar/avatar.js +1 -2
- 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 +1 -1
- package/lib/components/basic_table/collapsed_item_actions.js +1 -1
- package/lib/components/basic_table/in_memory_table.js +1 -1
- package/lib/components/button/_button_content_deprecated.js +1 -1
- package/lib/components/button/button.js +2 -2
- package/lib/components/button/button_display/_button_display.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/call_out/call_out.js +1 -1
- package/lib/components/card/card.js +1 -1
- package/lib/components/card/card_select.js +1 -1
- package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
- package/lib/components/color_picker/color_picker.js +1 -1
- package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +8 -5
- package/lib/components/comment_list/comment.js +53 -25
- package/lib/components/comment_list/comment_event.js +104 -41
- package/lib/components/comment_list/comment_event.styles.js +86 -0
- package/lib/components/comment_list/comment_list.js +46 -12
- package/lib/components/comment_list/comment_timeline.js +30 -40
- package/lib/components/context_menu/context_menu.js +1 -1
- package/lib/components/context_menu/context_menu_panel.js +1 -1
- package/lib/components/datagrid/body/data_grid_body.js +20 -17
- package/lib/components/datagrid/body/data_grid_cell.js +101 -33
- package/lib/components/datagrid/body/header/data_grid_header_cell.js +166 -67
- package/lib/components/datagrid/body/header/data_grid_header_row.js +13 -13
- package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
- package/lib/components/datagrid/data_grid.js +15 -13
- package/lib/components/datagrid/utils/in_memory.js +12 -12
- package/lib/components/datagrid/utils/ref.js +24 -3
- package/lib/components/datagrid/utils/row_heights.js +26 -32
- 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 +1 -1
- package/lib/components/error_boundary/error_boundary.js +23 -13
- package/lib/components/error_boundary/error_boundary.styles.js +30 -0
- package/lib/components/focus_trap/focus_trap.js +1 -0
- package/lib/components/form/field_number/field_number.js +1 -1
- package/lib/components/form/field_text/field_text.js +2 -2
- package/lib/components/form/form.styles.js +20 -0
- 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/header/header_links/header_link.js +1 -1
- package/lib/components/header/header_links/header_links.js +10 -8
- package/lib/components/header/header_logo.js +1 -1
- package/lib/components/icon/assets/keyboard.js +45 -0
- package/lib/components/icon/assets/tokenMetricCounter.js +45 -0
- package/lib/components/icon/assets/{keyboard_shortcut.js → tokenMetricGauge.js} +3 -3
- package/lib/components/icon/icon.js +1 -1
- package/lib/components/icon/icon_map.js +39 -37
- package/lib/components/icon/svgs/keyboard.svg +3 -0
- package/lib/components/icon/svgs/tokens/tokenMetricCounter.svg +3 -0
- package/lib/components/icon/svgs/tokens/tokenMetricGauge.svg +3 -0
- package/lib/components/image/image.js +73 -168
- package/lib/components/image/image.styles.js +40 -0
- package/lib/components/image/image_button.js +81 -0
- package/lib/components/image/image_button.styles.js +48 -0
- package/lib/components/image/image_caption.js +49 -0
- package/lib/components/image/image_caption.styles.js +30 -0
- package/lib/components/image/image_fullscreen_wrapper.js +117 -0
- package/lib/components/image/image_fullscreen_wrapper.styles.js +30 -0
- package/lib/components/image/image_types.js +18 -0
- package/lib/components/image/image_wrapper.js +91 -0
- package/lib/components/image/image_wrapper.styles.js +44 -0
- package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -1
- 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/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/notification/notification_event.js +2 -2
- package/lib/components/notification/notification_event_meta.js +1 -1
- package/lib/components/page/page_header/page_header.js +1 -1
- package/lib/components/page/page_header/page_header_content.js +1 -1
- package/lib/components/page/page_template.js +1 -1
- package/lib/components/popover/input_popover.js +8 -3
- package/lib/components/popover/popover.js +74 -165
- package/lib/components/popover/popover.styles.js +26 -0
- package/lib/components/popover/popover_arrow/_popover_arrow.js +51 -0
- package/lib/components/popover/popover_arrow/_popover_arrow.styles.js +38 -0
- package/lib/components/popover/popover_arrow/index.js +13 -0
- package/lib/components/popover/popover_footer.js +25 -15
- package/lib/components/popover/popover_footer.styles.js +30 -0
- package/lib/components/popover/popover_panel/_popover_panel.js +132 -0
- package/lib/components/popover/popover_panel/_popover_panel.styles.js +54 -0
- package/lib/components/popover/popover_panel/index.js +13 -0
- package/lib/components/popover/popover_title.js +25 -15
- package/lib/components/popover/popover_title.styles.js +32 -0
- package/lib/components/selectable/selectable.js +10 -9
- 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_search/selectable_search.js +0 -5
- package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +2 -2
- package/lib/components/suggest/suggest.js +1 -5
- package/lib/components/suggest/suggest_item.js +1 -1
- package/lib/components/table/table_header_button.js +1 -1
- package/lib/components/text/text.styles.js +4 -3
- package/lib/components/text_diff/text_diff.js +7 -0
- package/lib/components/text_diff/text_diff.styles.js +25 -0
- package/lib/components/timeline/timeline_item.js +1 -2
- 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/token/token.js +1 -1
- package/lib/components/token/token_map.js +115 -107
- package/lib/components/tool_tip/icon_tip.js +1 -1
- package/lib/global_styling/functions/logicals.js +30 -2
- package/lib/global_styling/mixins/_responsive.js +60 -0
- package/lib/global_styling/mixins/index.js +13 -0
- package/lib/services/hooks/index.js +13 -0
- package/lib/services/hooks/useLatest.js +26 -0
- package/lib/test/emotion-prefix.js +1 -1
- package/lib/themes/amsterdam/global_styling/functions/shadows.js +1 -1
- package/lib/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
- package/optimize/es/components/accordion/accordion.js +10 -5
- package/optimize/es/components/avatar/avatar.js +0 -1
- package/optimize/es/components/color_picker/color_picker.js +1 -1
- package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +7 -4
- package/optimize/es/components/comment_list/comment.js +24 -18
- package/optimize/es/components/comment_list/comment_event.js +83 -28
- package/optimize/es/components/comment_list/comment_event.styles.js +78 -0
- package/optimize/es/components/comment_list/comment_list.js +7 -3
- package/optimize/es/components/comment_list/comment_timeline.js +19 -32
- package/optimize/es/components/context_menu/context_menu_panel.js +1 -1
- package/optimize/es/components/datagrid/body/data_grid_body.js +7 -4
- package/optimize/es/components/datagrid/body/data_grid_cell.js +18 -9
- package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +150 -54
- package/optimize/es/components/datagrid/data_grid.js +2 -0
- package/optimize/es/components/datagrid/utils/ref.js +24 -3
- package/optimize/es/components/datagrid/utils/row_heights.js +27 -33
- package/optimize/es/components/error_boundary/error_boundary.js +17 -10
- package/optimize/es/components/error_boundary/error_boundary.styles.js +18 -0
- package/optimize/es/components/focus_trap/focus_trap.js +1 -0
- package/optimize/es/components/form/form.styles.js +11 -0
- package/optimize/es/components/icon/assets/keyboard.js +34 -0
- package/optimize/es/components/icon/assets/tokenMetricCounter.js +34 -0
- package/optimize/es/components/icon/assets/{keyboard_shortcut.js → tokenMetricGauge.js} +3 -3
- package/optimize/es/components/icon/icon_map.js +39 -37
- package/optimize/es/components/image/image.js +50 -154
- package/optimize/es/components/image/image.styles.js +28 -0
- package/optimize/es/components/image/image_button.js +56 -0
- package/optimize/es/components/image/image_button.styles.js +41 -0
- package/optimize/es/components/image/image_caption.js +24 -0
- package/optimize/es/components/image/image_caption.styles.js +18 -0
- package/optimize/es/components/image/image_fullscreen_wrapper.js +84 -0
- package/optimize/es/components/image/image_fullscreen_wrapper.styles.js +26 -0
- package/optimize/es/components/image/image_types.js +10 -0
- package/optimize/es/components/image/image_wrapper.js +62 -0
- package/optimize/es/components/image/image_wrapper.styles.js +41 -0
- package/optimize/es/components/popover/input_popover.js +8 -4
- package/optimize/es/components/popover/popover.js +41 -131
- package/optimize/es/components/popover/popover.styles.js +15 -0
- package/optimize/es/components/popover/popover_arrow/_popover_arrow.js +29 -0
- package/optimize/es/components/popover/popover_arrow/_popover_arrow.styles.js +25 -0
- package/optimize/es/components/popover/popover_arrow/index.js +8 -0
- package/optimize/es/components/popover/popover_footer.js +15 -12
- package/optimize/es/components/popover/popover_footer.styles.js +19 -0
- package/optimize/es/components/popover/popover_panel/_popover_panel.js +55 -0
- package/optimize/es/components/popover/popover_panel/_popover_panel.styles.js +42 -0
- package/optimize/es/components/popover/popover_panel/index.js +8 -0
- package/optimize/es/components/popover/popover_title.js +15 -12
- package/optimize/es/components/popover/popover_title.styles.js +20 -0
- package/optimize/es/components/selectable/selectable.js +10 -9
- package/optimize/es/components/selectable/selectable_search/selectable_search.js +1 -6
- package/optimize/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
- package/optimize/es/components/suggest/suggest.js +0 -4
- package/optimize/es/components/text/text.styles.js +5 -4
- package/optimize/es/components/text_diff/text_diff.js +5 -0
- package/optimize/es/components/text_diff/text_diff.styles.js +15 -0
- package/optimize/es/components/timeline/timeline_item.js +1 -2
- package/optimize/es/components/token/token_map.js +115 -107
- package/optimize/es/global_styling/functions/logicals.js +22 -0
- package/optimize/es/global_styling/mixins/_responsive.js +46 -0
- package/optimize/es/global_styling/mixins/index.js +2 -1
- package/optimize/es/services/hooks/index.js +1 -0
- package/optimize/es/services/hooks/useLatest.js +18 -0
- package/optimize/es/test/emotion-prefix.js +1 -1
- package/optimize/es/themes/amsterdam/global_styling/functions/shadows.js +1 -1
- package/optimize/es/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
- package/optimize/lib/components/accordion/accordion.js +8 -5
- package/optimize/lib/components/avatar/avatar.js +0 -1
- package/optimize/lib/components/color_picker/color_picker.js +1 -1
- package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +8 -5
- package/optimize/lib/components/comment_list/comment.js +23 -18
- package/optimize/lib/components/comment_list/comment_event.js +85 -31
- package/optimize/lib/components/comment_list/comment_event.styles.js +86 -0
- package/optimize/lib/components/comment_list/comment_list.js +8 -3
- package/optimize/lib/components/comment_list/comment_timeline.js +21 -38
- package/optimize/lib/components/context_menu/context_menu_panel.js +1 -1
- package/optimize/lib/components/datagrid/body/data_grid_body.js +7 -4
- package/optimize/lib/components/datagrid/body/data_grid_cell.js +17 -8
- package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +153 -54
- package/optimize/lib/components/datagrid/data_grid.js +2 -0
- package/optimize/lib/components/datagrid/utils/ref.js +24 -3
- package/optimize/lib/components/datagrid/utils/row_heights.js +25 -30
- package/optimize/lib/components/error_boundary/error_boundary.js +20 -10
- package/optimize/lib/components/error_boundary/error_boundary.styles.js +30 -0
- package/optimize/lib/components/focus_trap/focus_trap.js +1 -0
- package/optimize/lib/components/form/form.styles.js +20 -0
- package/optimize/lib/components/icon/assets/keyboard.js +44 -0
- package/optimize/lib/components/icon/assets/tokenMetricCounter.js +44 -0
- package/{test-env/components/icon/assets/keyboard_shortcut.js → optimize/lib/components/icon/assets/tokenMetricGauge.js} +3 -3
- package/optimize/lib/components/icon/icon_map.js +39 -37
- package/optimize/lib/components/icon/svgs/keyboard.svg +3 -0
- package/optimize/lib/components/icon/svgs/tokens/tokenMetricCounter.svg +3 -0
- package/optimize/lib/components/icon/svgs/tokens/tokenMetricGauge.svg +3 -0
- package/optimize/lib/components/image/image.js +52 -156
- package/optimize/lib/components/image/image.styles.js +40 -0
- package/optimize/lib/components/image/image_button.js +68 -0
- package/optimize/lib/components/image/image_button.styles.js +48 -0
- package/optimize/lib/components/image/image_caption.js +42 -0
- package/optimize/lib/components/image/image_caption.styles.js +30 -0
- package/optimize/lib/components/image/image_fullscreen_wrapper.js +108 -0
- package/optimize/lib/components/image/image_fullscreen_wrapper.styles.js +32 -0
- package/optimize/lib/components/image/image_types.js +18 -0
- package/optimize/lib/components/image/image_wrapper.js +82 -0
- package/optimize/lib/components/image/image_wrapper.styles.js +44 -0
- package/optimize/lib/components/popover/input_popover.js +7 -3
- package/optimize/lib/components/popover/popover.js +60 -150
- package/optimize/lib/components/popover/popover.styles.js +26 -0
- package/optimize/lib/components/popover/popover_arrow/_popover_arrow.js +39 -0
- package/optimize/lib/components/popover/popover_arrow/_popover_arrow.styles.js +38 -0
- package/optimize/lib/components/popover/popover_arrow/index.js +13 -0
- package/optimize/lib/components/popover/popover_footer.js +26 -14
- package/optimize/lib/components/popover/popover_footer.styles.js +30 -0
- package/optimize/lib/components/popover/popover_panel/_popover_panel.js +74 -0
- package/optimize/lib/components/popover/popover_panel/_popover_panel.styles.js +54 -0
- package/optimize/lib/components/popover/popover_panel/index.js +13 -0
- package/optimize/lib/components/popover/popover_title.js +26 -14
- package/optimize/lib/components/popover/popover_title.styles.js +32 -0
- package/optimize/lib/components/selectable/selectable.js +10 -8
- package/optimize/lib/components/selectable/selectable_search/selectable_search.js +0 -5
- package/optimize/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
- package/optimize/lib/components/suggest/suggest.js +0 -4
- package/optimize/lib/components/text/text.styles.js +4 -3
- package/optimize/lib/components/text_diff/text_diff.js +7 -0
- package/optimize/lib/components/text_diff/text_diff.styles.js +25 -0
- package/optimize/lib/components/timeline/timeline_item.js +1 -2
- package/optimize/lib/components/token/token_map.js +115 -107
- package/optimize/lib/global_styling/functions/logicals.js +30 -2
- package/optimize/lib/global_styling/mixins/_responsive.js +60 -0
- package/optimize/lib/global_styling/mixins/index.js +13 -0
- package/optimize/lib/services/hooks/index.js +13 -0
- package/optimize/lib/services/hooks/useLatest.js +26 -0
- package/optimize/lib/test/emotion-prefix.js +1 -1
- package/optimize/lib/themes/amsterdam/global_styling/functions/shadows.js +1 -1
- package/optimize/lib/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
- package/package.json +3 -3
- package/src/components/combo_box/combo_box_options_list/_combo_box_options_list.scss +0 -4
- package/src/components/context_menu/_context_menu_panel.scss +2 -2
- package/src/components/index.scss +0 -5
- package/src/components/markdown_editor/_markdown_editor.scss +3 -2
- package/src/components/tour/_tour.scss +13 -9
- package/src/global_styling/mixins/_index.scss +0 -1
- package/src/themes/amsterdam/global_styling/mixins/_index.scss +0 -2
- package/src/themes/amsterdam/overrides/_index.scss +0 -3
- package/test-env/components/accessibility/skip_link/skip_link.js +1 -1
- package/test-env/components/accordion/accordion.js +8 -5
- package/test-env/components/avatar/avatar.js +1 -2
- 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 +1 -1
- package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
- package/test-env/components/basic_table/in_memory_table.js +1 -1
- package/test-env/components/button/_button_content_deprecated.js +1 -1
- package/test-env/components/button/button.js +2 -2
- package/test-env/components/button/button_display/_button_display.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/call_out/call_out.js +1 -1
- package/test-env/components/card/card.js +1 -1
- package/test-env/components/card/card_select.js +1 -1
- package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
- package/test-env/components/color_picker/color_picker.js +1 -1
- package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +8 -5
- package/test-env/components/comment_list/comment.js +53 -24
- package/test-env/components/comment_list/comment_event.js +105 -35
- package/test-env/components/comment_list/comment_event.styles.js +86 -0
- package/test-env/components/comment_list/comment_list.js +46 -12
- package/test-env/components/comment_list/comment_timeline.js +30 -40
- package/test-env/components/context_menu/context_menu.js +1 -1
- package/test-env/components/context_menu/context_menu_panel.js +1 -1
- package/test-env/components/datagrid/body/data_grid_body.js +20 -17
- package/test-env/components/datagrid/body/data_grid_cell.js +101 -33
- package/test-env/components/datagrid/body/header/data_grid_header_cell.js +166 -67
- package/test-env/components/datagrid/body/header/data_grid_header_row.js +13 -13
- package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
- package/test-env/components/datagrid/data_grid.js +15 -13
- package/test-env/components/datagrid/utils/in_memory.js +12 -12
- package/test-env/components/datagrid/utils/ref.js +24 -3
- package/test-env/components/datagrid/utils/row_heights.js +25 -30
- 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 +1 -1
- package/test-env/components/error_boundary/error_boundary.js +23 -13
- package/test-env/components/error_boundary/error_boundary.styles.js +30 -0
- package/test-env/components/form/field_number/field_number.js +1 -1
- package/test-env/components/form/field_text/field_text.js +2 -2
- package/test-env/components/form/form.styles.js +20 -0
- 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/header/header_links/header_link.js +1 -1
- package/test-env/components/header/header_links/header_links.js +10 -8
- package/test-env/components/header/header_logo.js +1 -1
- package/test-env/components/icon/assets/keyboard.js +44 -0
- package/test-env/components/icon/assets/tokenMetricCounter.js +44 -0
- package/{optimize/lib/components/icon/assets/keyboard_shortcut.js → test-env/components/icon/assets/tokenMetricGauge.js} +3 -3
- package/test-env/components/icon/icon_map.js +39 -37
- package/test-env/components/image/image.js +73 -168
- package/test-env/components/image/image.styles.js +40 -0
- package/test-env/components/image/image_button.js +77 -0
- package/test-env/components/image/image_button.styles.js +48 -0
- package/test-env/components/image/image_caption.js +49 -0
- package/test-env/components/image/image_caption.styles.js +30 -0
- package/test-env/components/image/image_fullscreen_wrapper.js +114 -0
- package/test-env/components/image/image_fullscreen_wrapper.styles.js +32 -0
- package/test-env/components/image/image_types.js +18 -0
- package/test-env/components/image/image_wrapper.js +88 -0
- package/test-env/components/image/image_wrapper.styles.js +44 -0
- package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
- 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/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/notification/notification_event.js +2 -2
- package/test-env/components/notification/notification_event_meta.js +1 -1
- package/test-env/components/page/page_header/page_header.js +1 -1
- package/test-env/components/page/page_header/page_header_content.js +1 -1
- package/test-env/components/page/page_template.js +1 -1
- package/test-env/components/popover/input_popover.js +7 -3
- package/test-env/components/popover/popover.js +75 -166
- package/test-env/components/popover/popover.styles.js +26 -0
- package/test-env/components/popover/popover_arrow/_popover_arrow.js +47 -0
- package/test-env/components/popover/popover_arrow/_popover_arrow.styles.js +38 -0
- package/test-env/components/popover/popover_arrow/index.js +13 -0
- package/test-env/components/popover/popover_footer.js +26 -14
- package/test-env/components/popover/popover_footer.styles.js +30 -0
- package/test-env/components/popover/popover_panel/_popover_panel.js +119 -0
- package/test-env/components/popover/popover_panel/_popover_panel.styles.js +54 -0
- package/test-env/components/popover/popover_panel/index.js +13 -0
- package/test-env/components/popover/popover_title.js +26 -14
- package/test-env/components/popover/popover_title.styles.js +32 -0
- package/test-env/components/selectable/selectable.js +10 -8
- 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_search/selectable_search.js +0 -5
- package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +2 -2
- package/test-env/components/suggest/suggest.js +1 -5
- package/test-env/components/suggest/suggest_item.js +1 -1
- package/test-env/components/table/table_header_button.js +1 -1
- package/test-env/components/text/text.styles.js +4 -3
- package/test-env/components/text_diff/text_diff.js +7 -0
- package/test-env/components/text_diff/text_diff.styles.js +25 -0
- package/test-env/components/timeline/timeline_item.js +1 -2
- 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/token/token.js +1 -1
- package/test-env/components/token/token_map.js +115 -107
- package/test-env/components/tool_tip/icon_tip.js +1 -1
- package/test-env/global_styling/functions/logicals.js +30 -2
- package/test-env/global_styling/mixins/_responsive.js +60 -0
- package/test-env/global_styling/mixins/index.js +13 -0
- package/test-env/services/hooks/index.js +13 -0
- package/test-env/services/hooks/useLatest.js +26 -0
- package/test-env/test/emotion-prefix.js +1 -1
- package/test-env/themes/amsterdam/global_styling/functions/shadows.js +1 -1
- package/test-env/themes/amsterdam/global_styling/mixins/shadow.js +13 -2
- package/lib/components/icon/svgs/keyboard_shortcut.svg +0 -3
- package/optimize/lib/components/icon/svgs/keyboard_shortcut.svg +0 -3
- package/src/components/comment_list/_comment.scss +0 -38
- package/src/components/comment_list/_comment_event.scss +0 -77
- package/src/components/comment_list/_comment_timeline.scss +0 -27
- package/src/components/comment_list/_index.scss +0 -3
- package/src/components/error_boundary/_error_boundary.scss +0 -13
- package/src/components/error_boundary/_index.scss +0 -1
- package/src/components/image/_image.scss +0 -212
- package/src/components/image/_index.scss +0 -1
- package/src/components/popover/_index.scss +0 -5
- package/src/components/popover/_input_popover.scss +0 -7
- package/src/components/popover/_popover.scss +0 -182
- package/src/components/popover/_popover_footer.scss +0 -27
- package/src/components/popover/_popover_title.scss +0 -27
- package/src/components/popover/_variables.scss +0 -2
- package/src/components/text_diff/_index.scss +0 -1
- package/src/components/text_diff/_text_diff.scss +0 -9
- package/src/global_styling/mixins/_popover.scss +0 -19
- package/src/themes/amsterdam/global_styling/mixins/_popover.scss +0 -5
- package/src/themes/amsterdam/overrides/_comment.scss +0 -3
- package/src/themes/amsterdam/overrides/_image.scss +0 -10
- package/src/themes/amsterdam/overrides/_popover.scss +0 -104
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
3
|
+
|
|
4
|
+
/*
|
|
5
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
6
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
7
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
8
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
9
|
+
* Side Public License, v 1.
|
|
10
|
+
*/
|
|
11
|
+
import React from 'react';
|
|
12
|
+
import classNames from 'classnames';
|
|
13
|
+
import { useEuiTheme } from '../../services';
|
|
14
|
+
import { useInnerText } from '../inner_text';
|
|
15
|
+
import { euiImageWrapperStyles } from './image_wrapper.styles';
|
|
16
|
+
import { EuiImageButton } from './image_button';
|
|
17
|
+
import { EuiImageCaption } from './image_caption';
|
|
18
|
+
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
19
|
+
export var EuiImageWrapper = function EuiImageWrapper(_ref) {
|
|
20
|
+
var alt = _ref.alt,
|
|
21
|
+
caption = _ref.caption,
|
|
22
|
+
hasShadow = _ref.hasShadow,
|
|
23
|
+
allowFullScreen = _ref.allowFullScreen,
|
|
24
|
+
float = _ref.float,
|
|
25
|
+
margin = _ref.margin,
|
|
26
|
+
children = _ref.children,
|
|
27
|
+
setIsFullScreen = _ref.setIsFullScreen,
|
|
28
|
+
wrapperProps = _ref.wrapperProps,
|
|
29
|
+
fullScreenIconColor = _ref.fullScreenIconColor,
|
|
30
|
+
isFullWidth = _ref.isFullWidth;
|
|
31
|
+
|
|
32
|
+
var openFullScreen = function openFullScreen() {
|
|
33
|
+
setIsFullScreen(true);
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
var classes = classNames('euiImageWrapper', wrapperProps && wrapperProps.className);
|
|
37
|
+
var euiTheme = useEuiTheme();
|
|
38
|
+
var styles = euiImageWrapperStyles(euiTheme);
|
|
39
|
+
var cssFigureStyles = [styles.euiImageWrapper, float && styles[float], margin && styles[margin], allowFullScreen && styles.allowFullScreen, isFullWidth && styles.fullWidth];
|
|
40
|
+
|
|
41
|
+
var _useInnerText = useInnerText(),
|
|
42
|
+
_useInnerText2 = _slicedToArray(_useInnerText, 2),
|
|
43
|
+
optionalCaptionRef = _useInnerText2[0],
|
|
44
|
+
optionalCaptionText = _useInnerText2[1];
|
|
45
|
+
|
|
46
|
+
return ___EmotionJSX("figure", _extends({
|
|
47
|
+
"aria-label": optionalCaptionText
|
|
48
|
+
}, wrapperProps, {
|
|
49
|
+
className: classes,
|
|
50
|
+
css: cssFigureStyles
|
|
51
|
+
}), allowFullScreen ? ___EmotionJSX(React.Fragment, null, ___EmotionJSX(EuiImageButton, {
|
|
52
|
+
hasAlt: !!alt,
|
|
53
|
+
hasShadow: hasShadow,
|
|
54
|
+
onClick: openFullScreen,
|
|
55
|
+
"data-test-subj": "activateFullScreenButton",
|
|
56
|
+
isFullWidth: isFullWidth,
|
|
57
|
+
fullScreenIconColor: fullScreenIconColor
|
|
58
|
+
}, children)) : children, ___EmotionJSX(EuiImageCaption, {
|
|
59
|
+
ref: optionalCaptionRef,
|
|
60
|
+
caption: caption
|
|
61
|
+
}));
|
|
62
|
+
};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
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)."; }
|
|
2
|
+
|
|
3
|
+
/*
|
|
4
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
5
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
6
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
7
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
8
|
+
* Side Public License, v 1.
|
|
9
|
+
*/
|
|
10
|
+
import { css } from '@emotion/react';
|
|
11
|
+
import { logicalCSS, logicalTextAlignCSS, logicalSide } from '../../global_styling';
|
|
12
|
+
|
|
13
|
+
var _ref = process.env.NODE_ENV === "production" ? {
|
|
14
|
+
name: "gacnmc-allowFullScreen",
|
|
15
|
+
styles: "&:hover [class*='euiImageCaption']{text-decoration:underline;};label:allowFullScreen;"
|
|
16
|
+
} : {
|
|
17
|
+
name: "gacnmc-allowFullScreen",
|
|
18
|
+
styles: "&:hover [class*='euiImageCaption']{text-decoration:underline;};label:allowFullScreen;",
|
|
19
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export var euiImageWrapperStyles = function euiImageWrapperStyles(euiThemeContext) {
|
|
23
|
+
var euiTheme = euiThemeContext.euiTheme;
|
|
24
|
+
return {
|
|
25
|
+
// Base
|
|
26
|
+
euiImageWrapper: /*#__PURE__*/css("display:table;", logicalCSS('max-width', '100%'), " ", logicalTextAlignCSS('center'), ";line-height:0;flex-shrink:0;;label:euiImageWrapper;"),
|
|
27
|
+
allowFullScreen: _ref,
|
|
28
|
+
// Margins
|
|
29
|
+
s: /*#__PURE__*/css("margin:", euiTheme.size.s, ";;label:s;"),
|
|
30
|
+
m: /*#__PURE__*/css("margin:", euiTheme.size.base, ";;label:m;"),
|
|
31
|
+
l: /*#__PURE__*/css("margin:", euiTheme.size.l, ";;label:l;"),
|
|
32
|
+
xl: /*#__PURE__*/css("margin:", euiTheme.size.xl, ";;label:xl;"),
|
|
33
|
+
// Floats
|
|
34
|
+
// 1: Logical properties/values in `float` is currently not yet supported by all browsers w/o flags
|
|
35
|
+
// @see https://caniuse.com/mdn-css_properties_float_flow_relative_values for when we can remove left/right fallbacks
|
|
36
|
+
left: /*#__PURE__*/css("@media only screen and (min-width: ", euiTheme.breakpoint.m, "px){float:left;float:", logicalSide.left, ";", logicalCSS('margin-left', '0'), ";", logicalCSS('margin-top', '0'), ";};label:left;"),
|
|
37
|
+
right: /*#__PURE__*/css("@media only screen and (min-width: ", euiTheme.breakpoint.m, "px){float:right;float:", logicalSide.right, ";", logicalCSS('margin-right', '0'), ";", logicalCSS('margin-top', '0'), ";};label:right;"),
|
|
38
|
+
// Sizes
|
|
39
|
+
fullWidth: /*#__PURE__*/css(logicalCSS('width', '100%'), ";;label:fullWidth;")
|
|
40
|
+
};
|
|
41
|
+
};
|
|
@@ -16,7 +16,10 @@ import { tabbable } from 'tabbable';
|
|
|
16
16
|
import { EuiFocusTrap } from '../focus_trap';
|
|
17
17
|
import { EuiPopover } from './popover';
|
|
18
18
|
import { EuiResizeObserver } from '../observer/resize_observer';
|
|
19
|
-
import { cascadingMenuKeys, useCombinedRefs } from '../../services';
|
|
19
|
+
import { cascadingMenuKeys, useCombinedRefs, useEuiTheme } from '../../services';
|
|
20
|
+
import { euiFormMaxWidth } from '../form/form.styles';
|
|
21
|
+
import { css } from '@emotion/react';
|
|
22
|
+
import { logicalCSS } from '../../global_styling';
|
|
20
23
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
21
24
|
export var EuiInputPopover = function EuiInputPopover(_ref) {
|
|
22
25
|
var children = _ref.children,
|
|
@@ -31,6 +34,8 @@ export var EuiInputPopover = function EuiInputPopover(_ref) {
|
|
|
31
34
|
_panelRef = _ref.panelRef,
|
|
32
35
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
33
36
|
|
|
37
|
+
var euiThemeContext = useEuiTheme();
|
|
38
|
+
|
|
34
39
|
var _useState = useState(null),
|
|
35
40
|
_useState2 = _slicedToArray(_useState, 2),
|
|
36
41
|
inputEl = _useState2[0],
|
|
@@ -86,10 +91,9 @@ export var EuiInputPopover = function EuiInputPopover(_ref) {
|
|
|
86
91
|
}
|
|
87
92
|
};
|
|
88
93
|
|
|
89
|
-
var classes = classnames('euiInputPopover',
|
|
90
|
-
'euiInputPopover--fullWidth': fullWidth
|
|
91
|
-
}, className);
|
|
94
|
+
var classes = classnames('euiInputPopover', className);
|
|
92
95
|
return ___EmotionJSX(EuiPopover, _extends({
|
|
96
|
+
css: /*#__PURE__*/css(fullWidth ? undefined : logicalCSS('max-width', euiFormMaxWidth(euiThemeContext)), ";label:EuiInputPopover;"),
|
|
93
97
|
ownFocus: false,
|
|
94
98
|
button: ___EmotionJSX(EuiResizeObserver, {
|
|
95
99
|
onResize: onResize
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { css as _css } from "@emotion/react";
|
|
1
2
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
3
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
4
|
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
@@ -8,9 +9,8 @@ import _inherits from "@babel/runtime/helpers/inherits";
|
|
|
8
9
|
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
9
10
|
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
10
11
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
11
|
-
import _typeof from "@babel/runtime/helpers/typeof";
|
|
12
12
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
13
|
-
var _excluded = ["anchorClassName", "anchorPosition", "button", "buttonRef", "insert", "isOpen", "ownFocus", "children", "className", "closePopover", "panelClassName", "panelPaddingSize", "panelProps", "panelRef", "panelStyle", "popoverScreenReaderText", "popoverRef", "hasArrow", "arrowChildren", "repositionOnScroll", "zIndex", "
|
|
13
|
+
var _excluded = ["anchorClassName", "anchorPosition", "button", "buttonRef", "insert", "isOpen", "ownFocus", "children", "className", "closePopover", "panelClassName", "panelPaddingSize", "panelProps", "panelRef", "panelStyle", "popoverScreenReaderText", "popoverRef", "hasArrow", "arrowChildren", "repositionOnScroll", "zIndex", "attachToAnchor", "display", "offset", "onTrapDeactivation", "buffer", "aria-label", "aria-labelledby", "container", "focusTrapProps", "initialFocus", "tabIndex"];
|
|
14
14
|
|
|
15
15
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
16
16
|
|
|
@@ -33,12 +33,14 @@ import { focusable } from 'tabbable';
|
|
|
33
33
|
import { EuiFocusTrap } from '../focus_trap';
|
|
34
34
|
import { cascadingMenuKeys, getTransitionTimings, getWaitDuration, performOnFrame, htmlIdGenerator } from '../../services';
|
|
35
35
|
import { EuiScreenReaderOnly } from '../accessibility';
|
|
36
|
-
import { EuiPanel } from '../panel';
|
|
37
36
|
import { EuiPortal } from '../portal';
|
|
38
37
|
import { EuiMutationObserver } from '../observer/mutation_observer';
|
|
39
38
|
import { findPopoverPosition, getElementZIndex } from '../../services/popover';
|
|
40
39
|
import { EuiI18n } from '../i18n';
|
|
41
40
|
import { EuiOutsideClickDetector } from '../outside_click_detector';
|
|
41
|
+
import { EuiPopoverArrow } from './popover_arrow';
|
|
42
|
+
import { euiPopoverStyles } from './popover.styles';
|
|
43
|
+
import { EuiPopoverPanel } from './popover_panel';
|
|
42
44
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
43
45
|
export var popoverAnchorPosition = ['upCenter', 'upLeft', 'upRight', 'downCenter', 'downLeft', 'downRight', 'leftCenter', 'leftUp', 'leftDown', 'rightCenter', 'rightUp', 'rightDown'];
|
|
44
46
|
var anchorPositionToPopoverPositionMap = {
|
|
@@ -75,45 +77,10 @@ export function getPopoverAlignFromAnchorPosition(anchorPosition) {
|
|
|
75
77
|
|
|
76
78
|
return anchorPositionToPopoverPositionMap[align.toLowerCase()];
|
|
77
79
|
}
|
|
78
|
-
var anchorPositionToClassNameMap = {
|
|
79
|
-
upCenter: 'euiPopover--anchorUpCenter',
|
|
80
|
-
upLeft: 'euiPopover--anchorUpLeft',
|
|
81
|
-
upRight: 'euiPopover--anchorUpRight',
|
|
82
|
-
downCenter: 'euiPopover--anchorDownCenter',
|
|
83
|
-
downLeft: 'euiPopover--anchorDownLeft',
|
|
84
|
-
downRight: 'euiPopover--anchorDownRight',
|
|
85
|
-
leftCenter: 'euiPopover--anchorLeftCenter',
|
|
86
|
-
leftUp: 'euiPopover--anchorLeftUp',
|
|
87
|
-
leftDown: 'euiPopover--anchorLeftDown',
|
|
88
|
-
rightCenter: 'euiPopover--anchorRightCenter',
|
|
89
|
-
rightUp: 'euiPopover--anchorRightUp',
|
|
90
|
-
rightDown: 'euiPopover--anchorRightDown'
|
|
91
|
-
};
|
|
92
|
-
export var ANCHOR_POSITIONS = Object.keys(anchorPositionToClassNameMap);
|
|
93
|
-
var displayToClassNameMap = {
|
|
94
|
-
inlineBlock: undefined,
|
|
95
|
-
block: 'euiPopover--displayBlock'
|
|
96
|
-
};
|
|
97
|
-
export var DISPLAY = Object.keys(displayToClassNameMap);
|
|
98
80
|
var DEFAULT_POPOVER_STYLES = {
|
|
99
81
|
top: 50,
|
|
100
82
|
left: 50
|
|
101
83
|
};
|
|
102
|
-
|
|
103
|
-
function getElementFromInitialFocus(initialFocus) {
|
|
104
|
-
var initialFocusType = _typeof(initialFocus);
|
|
105
|
-
|
|
106
|
-
if (initialFocusType === 'string') {
|
|
107
|
-
return document.querySelector(initialFocus);
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
if (initialFocusType === 'function') {
|
|
111
|
-
return initialFocus();
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
return initialFocus;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
84
|
var returnFocusConfig = {
|
|
118
85
|
preventScroll: true
|
|
119
86
|
};
|
|
@@ -139,14 +106,10 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
139
106
|
|
|
140
107
|
_defineProperty(_assertThisInitialized(_this), "closingTransitionAnimationFrame", void 0);
|
|
141
108
|
|
|
142
|
-
_defineProperty(_assertThisInitialized(_this), "updateFocusAnimationFrame", void 0);
|
|
143
|
-
|
|
144
109
|
_defineProperty(_assertThisInitialized(_this), "button", null);
|
|
145
110
|
|
|
146
111
|
_defineProperty(_assertThisInitialized(_this), "panel", null);
|
|
147
112
|
|
|
148
|
-
_defineProperty(_assertThisInitialized(_this), "hasSetInitialFocus", false);
|
|
149
|
-
|
|
150
113
|
_defineProperty(_assertThisInitialized(_this), "descriptionId", htmlIdGenerator()());
|
|
151
114
|
|
|
152
115
|
_defineProperty(_assertThisInitialized(_this), "closePopover", function () {
|
|
@@ -231,8 +194,6 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
231
194
|
isOpenStable: true
|
|
232
195
|
}, function () {
|
|
233
196
|
_this.positionPopoverFixed();
|
|
234
|
-
|
|
235
|
-
_this.updateFocus();
|
|
236
197
|
});
|
|
237
198
|
}, durationMatch + delayMatch);
|
|
238
199
|
});
|
|
@@ -358,64 +319,9 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
358
319
|
}
|
|
359
320
|
|
|
360
321
|
_createClass(EuiPopover, [{
|
|
361
|
-
key: "updateFocus",
|
|
362
|
-
value: function updateFocus() {
|
|
363
|
-
var _this2 = this;
|
|
364
|
-
|
|
365
|
-
// Wait for the DOM to update.
|
|
366
|
-
this.updateFocusAnimationFrame = window.requestAnimationFrame(function () {
|
|
367
|
-
if (!_this2.props.ownFocus || !_this2.panel || _this2.props.initialFocus === false) {
|
|
368
|
-
return;
|
|
369
|
-
} // If we've already focused on something inside the panel, everything's fine.
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
if (_this2.hasSetInitialFocus && _this2.panel.contains(document.activeElement)) {
|
|
373
|
-
return;
|
|
374
|
-
} // Otherwise focus either `initialFocus` or the panel
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
var focusTarget;
|
|
378
|
-
|
|
379
|
-
if (_this2.props.initialFocus != null) {
|
|
380
|
-
focusTarget = getElementFromInitialFocus(_this2.props.initialFocus);
|
|
381
|
-
} // there's a race condition between the popover content becoming visible and this function call
|
|
382
|
-
// if the element isn't visible yet (due to css styling) then it can't accept focus
|
|
383
|
-
// so wait for another render and try again
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
if (focusTarget == null) {
|
|
387
|
-
// there isn't a focus target, one of two reasons:
|
|
388
|
-
// #1 is the whole panel hidden? If so, schedule another check
|
|
389
|
-
// #2 panel is visible and no `initialFocus` was set, move focus to the panel
|
|
390
|
-
var panelVisibility = window.getComputedStyle(_this2.panel).opacity;
|
|
391
|
-
|
|
392
|
-
if (panelVisibility === '0') {
|
|
393
|
-
// #1
|
|
394
|
-
_this2.updateFocus();
|
|
395
|
-
} else {
|
|
396
|
-
// #2
|
|
397
|
-
focusTarget = _this2.panel;
|
|
398
|
-
}
|
|
399
|
-
} else {
|
|
400
|
-
// found an element to focus, but is it visible?
|
|
401
|
-
var visibility = window.getComputedStyle(focusTarget).visibility;
|
|
402
|
-
|
|
403
|
-
if (visibility === 'hidden') {
|
|
404
|
-
// not visible, check again next render frame
|
|
405
|
-
_this2.updateFocus();
|
|
406
|
-
}
|
|
407
|
-
}
|
|
408
|
-
|
|
409
|
-
if (focusTarget != null) {
|
|
410
|
-
_this2.hasSetInitialFocus = true;
|
|
411
|
-
focusTarget.focus();
|
|
412
|
-
}
|
|
413
|
-
});
|
|
414
|
-
}
|
|
415
|
-
}, {
|
|
416
322
|
key: "componentDidMount",
|
|
417
323
|
value: function componentDidMount() {
|
|
418
|
-
var
|
|
324
|
+
var _this2 = this;
|
|
419
325
|
|
|
420
326
|
if (this.state.suppressingPopover) {
|
|
421
327
|
// component was created with isOpen=true; now that it's mounted
|
|
@@ -425,7 +331,7 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
425
331
|
suppressingPopover: false,
|
|
426
332
|
isOpening: true
|
|
427
333
|
}, function () {
|
|
428
|
-
|
|
334
|
+
_this2.onOpenPopover();
|
|
429
335
|
});
|
|
430
336
|
}
|
|
431
337
|
|
|
@@ -436,7 +342,7 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
436
342
|
}, {
|
|
437
343
|
key: "componentDidUpdate",
|
|
438
344
|
value: function componentDidUpdate(prevProps) {
|
|
439
|
-
var
|
|
345
|
+
var _this3 = this;
|
|
440
346
|
|
|
441
347
|
// The popover is being opened.
|
|
442
348
|
if (!prevProps.isOpen && this.props.isOpen) {
|
|
@@ -457,9 +363,7 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
457
363
|
// If the user has just closed the popover, queue up the removal of the content after the
|
|
458
364
|
// transition is complete.
|
|
459
365
|
this.closingTransitionTimeout = window.setTimeout(function () {
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
_this4.setState({
|
|
366
|
+
_this3.setState({
|
|
463
367
|
isClosing: false
|
|
464
368
|
});
|
|
465
369
|
}, closingTransitionTime);
|
|
@@ -473,12 +377,11 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
473
377
|
clearTimeout(this.strandedFocusTimeout);
|
|
474
378
|
clearTimeout(this.closingTransitionTimeout);
|
|
475
379
|
cancelAnimationFrame(this.closingTransitionAnimationFrame);
|
|
476
|
-
cancelAnimationFrame(this.updateFocusAnimationFrame);
|
|
477
380
|
}
|
|
478
381
|
}, {
|
|
479
382
|
key: "render",
|
|
480
383
|
value: function render() {
|
|
481
|
-
var
|
|
384
|
+
var _this4 = this;
|
|
482
385
|
|
|
483
386
|
var _this$props = this.props,
|
|
484
387
|
anchorClassName = _this$props.anchorClassName,
|
|
@@ -502,7 +405,6 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
502
405
|
arrowChildren = _this$props.arrowChildren,
|
|
503
406
|
repositionOnScroll = _this$props.repositionOnScroll,
|
|
504
407
|
zIndex = _this$props.zIndex,
|
|
505
|
-
initialFocus = _this$props.initialFocus,
|
|
506
408
|
attachToAnchor = _this$props.attachToAnchor,
|
|
507
409
|
display = _this$props.display,
|
|
508
410
|
offset = _this$props.offset,
|
|
@@ -512,27 +414,24 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
512
414
|
ariaLabelledBy = _this$props['aria-labelledby'],
|
|
513
415
|
container = _this$props.container,
|
|
514
416
|
focusTrapProps = _this$props.focusTrapProps,
|
|
417
|
+
initialFocusProp = _this$props.initialFocus,
|
|
515
418
|
tabIndexProp = _this$props.tabIndex,
|
|
516
419
|
rest = _objectWithoutProperties(_this$props, _excluded);
|
|
517
420
|
|
|
518
|
-
var
|
|
421
|
+
var styles = euiPopoverStyles();
|
|
422
|
+
var popoverStyles = [styles.euiPopover, {
|
|
423
|
+
display: display
|
|
424
|
+
}];
|
|
425
|
+
var classes = classNames('euiPopover', {
|
|
519
426
|
'euiPopover-isOpen': this.state.isOpening
|
|
520
427
|
}, className);
|
|
521
428
|
var anchorClasses = classNames('euiPopover__anchor', anchorClassName);
|
|
522
|
-
var
|
|
523
|
-
'euiPopover__panel-isOpen': this.state.isOpening
|
|
524
|
-
}, {
|
|
525
|
-
'euiPopover__panel-noArrow': !hasArrow || attachToAnchor
|
|
526
|
-
}, {
|
|
527
|
-
'euiPopover__panel-isAttached': attachToAnchor
|
|
528
|
-
}, panelClassName, panelProps === null || panelProps === void 0 ? void 0 : panelProps.className);
|
|
429
|
+
var showArrow = hasArrow && !attachToAnchor;
|
|
529
430
|
var panel;
|
|
530
431
|
|
|
531
432
|
if (!this.state.suppressingPopover && (isOpen || this.state.isClosing)) {
|
|
532
433
|
var tabIndex = tabIndexProp;
|
|
533
|
-
|
|
534
|
-
var _initialFocus;
|
|
535
|
-
|
|
434
|
+
var initialFocus = initialFocusProp;
|
|
536
435
|
var ariaDescribedby;
|
|
537
436
|
var ariaLive;
|
|
538
437
|
var panelAriaModal = panelProps !== null && panelProps !== void 0 && panelProps.hasOwnProperty('aria-modal') ? panelProps['aria-modal'] : 'true';
|
|
@@ -542,9 +441,11 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
542
441
|
tabIndex = tabIndexProp !== null && tabIndexProp !== void 0 ? tabIndexProp : 0;
|
|
543
442
|
ariaLive = 'off';
|
|
544
443
|
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
444
|
+
if (!initialFocus) {
|
|
445
|
+
initialFocus = function initialFocus() {
|
|
446
|
+
return _this4.panel;
|
|
447
|
+
};
|
|
448
|
+
}
|
|
548
449
|
} else {
|
|
549
450
|
ariaLive = 'assertive';
|
|
550
451
|
}
|
|
@@ -561,7 +462,6 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
561
462
|
}), popoverScreenReaderText));
|
|
562
463
|
}
|
|
563
464
|
|
|
564
|
-
var arrowClassNames = classNames('euiPopover__panelArrow', "euiPopover__panelArrow--".concat(this.state.arrowPosition));
|
|
565
465
|
var returnFocus = this.state.isOpenStable ? returnFocusConfig : false;
|
|
566
466
|
panel = ___EmotionJSX(EuiPortal, {
|
|
567
467
|
insert: insert
|
|
@@ -570,15 +470,17 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
570
470
|
}, focusTrapProps, {
|
|
571
471
|
returnFocus: returnFocus // Ignore temporary state of indecisive focus
|
|
572
472
|
,
|
|
573
|
-
initialFocus:
|
|
473
|
+
initialFocus: initialFocus,
|
|
574
474
|
onDeactivation: onTrapDeactivation,
|
|
575
475
|
onClickOutside: this.onClickOutside,
|
|
576
476
|
onEscapeKey: this.onEscapeKey,
|
|
577
477
|
disabled: !ownFocus || !this.state.isOpenStable || this.state.isClosing
|
|
578
|
-
}), ___EmotionJSX(
|
|
579
|
-
"data-popover-panel": true,
|
|
478
|
+
}), ___EmotionJSX(EuiPopoverPanel, _extends({}, panelProps, {
|
|
580
479
|
panelRef: this.panelRef,
|
|
581
|
-
|
|
480
|
+
isOpen: this.state.isOpening,
|
|
481
|
+
position: this.state.arrowPosition,
|
|
482
|
+
isAttached: attachToAnchor,
|
|
483
|
+
className: classNames(panelClassName, panelProps === null || panelProps === void 0 ? void 0 : panelProps.className),
|
|
582
484
|
hasShadow: false,
|
|
583
485
|
paddingSize: panelPaddingSize,
|
|
584
486
|
tabIndex: tabIndex,
|
|
@@ -592,8 +494,8 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
592
494
|
// Adding `will-change` to reduce risk of a blurry animation in Chrome 86+
|
|
593
495
|
willChange: !this.state.isOpenStable ? 'transform, opacity' : undefined
|
|
594
496
|
})
|
|
595
|
-
}), ___EmotionJSX(
|
|
596
|
-
|
|
497
|
+
}), showArrow && this.state.arrowPosition && ___EmotionJSX(EuiPopoverArrow, {
|
|
498
|
+
position: this.state.arrowPosition,
|
|
597
499
|
style: this.state.arrowStyles
|
|
598
500
|
}, arrowChildren), focusTrapScreenReaderText, ___EmotionJSX(EuiMutationObserver, {
|
|
599
501
|
observerOptions: {
|
|
@@ -612,15 +514,19 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
612
514
|
ref: mutationRef
|
|
613
515
|
}, children);
|
|
614
516
|
}))));
|
|
615
|
-
} // react-focus-on and
|
|
517
|
+
} // react-focus-on and related do not register outside click detection
|
|
616
518
|
// when disabled, so we still need to conditionally check for that ourselves
|
|
617
519
|
|
|
618
520
|
|
|
619
521
|
if (ownFocus) {
|
|
620
522
|
return ___EmotionJSX("div", _extends({
|
|
523
|
+
css: popoverStyles,
|
|
621
524
|
className: classes,
|
|
622
525
|
ref: popoverRef
|
|
623
526
|
}, rest), ___EmotionJSX("div", {
|
|
527
|
+
css: /*#__PURE__*/_css({
|
|
528
|
+
display: display
|
|
529
|
+
}, ";label:render;"),
|
|
624
530
|
className: anchorClasses,
|
|
625
531
|
ref: this.buttonRef
|
|
626
532
|
}, button instanceof HTMLElement ? null : button), panel);
|
|
@@ -628,10 +534,14 @@ export var EuiPopover = /*#__PURE__*/function (_Component) {
|
|
|
628
534
|
return ___EmotionJSX(EuiOutsideClickDetector, {
|
|
629
535
|
onOutsideClick: this.closePopover
|
|
630
536
|
}, ___EmotionJSX("div", _extends({
|
|
537
|
+
css: popoverStyles,
|
|
631
538
|
className: classes,
|
|
632
539
|
ref: popoverRef,
|
|
633
540
|
onKeyDown: this.onKeyDown
|
|
634
541
|
}, rest), ___EmotionJSX("div", {
|
|
542
|
+
css: /*#__PURE__*/_css({
|
|
543
|
+
display: display
|
|
544
|
+
}, ";label:render;"),
|
|
635
545
|
className: anchorClasses,
|
|
636
546
|
ref: this.buttonRef
|
|
637
547
|
}, button instanceof HTMLElement ? null : button), panel));
|
|
@@ -671,5 +581,5 @@ _defineProperty(EuiPopover, "defaultProps", {
|
|
|
671
581
|
anchorPosition: 'downCenter',
|
|
672
582
|
panelPaddingSize: 'm',
|
|
673
583
|
hasArrow: true,
|
|
674
|
-
display: '
|
|
584
|
+
display: 'inline-block'
|
|
675
585
|
});
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
import { css } from '@emotion/react';
|
|
9
|
+
import { logicalCSS } from '../../global_styling';
|
|
10
|
+
export var euiPopoverStyles = function euiPopoverStyles() {
|
|
11
|
+
return {
|
|
12
|
+
// Base anchor wrapper
|
|
13
|
+
euiPopover: /*#__PURE__*/css("position:relative;vertical-align:middle;", logicalCSS('max-width', '100%'), ";;label:euiPopover;")
|
|
14
|
+
};
|
|
15
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
|
+
var _excluded = ["children", "position"];
|
|
4
|
+
|
|
5
|
+
/*
|
|
6
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
7
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
8
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
9
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
10
|
+
* Side Public License, v 1.
|
|
11
|
+
*/
|
|
12
|
+
import React from 'react';
|
|
13
|
+
import { euiPopoverArrowStyles } from './_popover_arrow.styles';
|
|
14
|
+
import { useEuiTheme } from '../../../services';
|
|
15
|
+
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
16
|
+
export var POSITIONS = ['top', 'left', 'right', 'bottom'];
|
|
17
|
+
export var EuiPopoverArrow = function EuiPopoverArrow(_ref) {
|
|
18
|
+
var children = _ref.children,
|
|
19
|
+
position = _ref.position,
|
|
20
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
21
|
+
|
|
22
|
+
var euiTheme = useEuiTheme();
|
|
23
|
+
var styles = euiPopoverArrowStyles(euiTheme);
|
|
24
|
+
var cssStyles = [styles.euiPopoverArrow, styles[position]];
|
|
25
|
+
return ___EmotionJSX("div", _extends({
|
|
26
|
+
"data-popover-arrow": position,
|
|
27
|
+
css: cssStyles
|
|
28
|
+
}, rest), children);
|
|
29
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
import { css } from '@emotion/react';
|
|
9
|
+
import { euiBackgroundColor, logicals, logicalSizeCSS } from '../../../global_styling';
|
|
10
|
+
export var popoverArrowSize = 'm';
|
|
11
|
+
export var euiPopoverArrowStyles = function euiPopoverArrowStyles(euiThemeContext) {
|
|
12
|
+
var euiTheme = euiThemeContext.euiTheme; // Match the background color of panels
|
|
13
|
+
|
|
14
|
+
var borderColor = euiBackgroundColor(euiThemeContext, 'plain');
|
|
15
|
+
var arrowSize = euiTheme.size[popoverArrowSize];
|
|
16
|
+
return {
|
|
17
|
+
// Base
|
|
18
|
+
euiPopoverArrow: /*#__PURE__*/css("position:absolute;", logicalSizeCSS(0, 0), "&:before{content:'';position:absolute;", logicalSizeCSS(0, 0), ";};label:euiPopoverArrow;"),
|
|
19
|
+
// POSITIONS
|
|
20
|
+
top: /*#__PURE__*/css("&:before{", logicals.bottom, ":-", arrowSize, ";", logicals['border-left'], ":", arrowSize, " solid transparent;", logicals['border-right'], ":", arrowSize, " solid transparent;", logicals['border-top'], ":", arrowSize, " solid ", borderColor, ";};label:top;"),
|
|
21
|
+
bottom: /*#__PURE__*/css("&:before{", logicals.top, ":-", arrowSize, ";", logicals['border-left'], ":", arrowSize, " solid transparent;", logicals['border-right'], ":", arrowSize, " solid transparent;", logicals['border-bottom'], ":", arrowSize, " solid ", borderColor, ";};label:bottom;"),
|
|
22
|
+
left: /*#__PURE__*/css("&:before{", logicals.top, ":50%;", logicals.right, ":-", arrowSize, ";", logicals['border-top'], ":", arrowSize, " solid transparent;", logicals['border-bottom'], ":", arrowSize, " solid transparent;", logicals['border-left'], ":", arrowSize, " solid ", borderColor, ";};label:left;"),
|
|
23
|
+
right: /*#__PURE__*/css("&:before{", logicals.top, ":50%;", logicals.left, ":-", arrowSize, ";", logicals['border-top'], ":", arrowSize, " solid transparent;", logicals['border-bottom'], ":", arrowSize, " solid transparent;", logicals['border-right'], ":", arrowSize, " solid ", borderColor, ";};label:right;")
|
|
24
|
+
};
|
|
25
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
export { EuiPopoverArrow } from './_popover_arrow';
|
|
@@ -9,27 +9,30 @@ var _excluded = ["children", "className", "paddingSize"];
|
|
|
9
9
|
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
10
10
|
* Side Public License, v 1.
|
|
11
11
|
*/
|
|
12
|
-
import React from 'react';
|
|
12
|
+
import React, { useContext } from 'react';
|
|
13
13
|
import classNames from 'classnames';
|
|
14
|
-
import {
|
|
14
|
+
import { useEuiPaddingCSS } from '../../global_styling';
|
|
15
|
+
import { useEuiTheme } from '../../services';
|
|
16
|
+
import { euiPopoverFooterStyles } from './popover_footer.styles';
|
|
17
|
+
import { EuiPopoverPanelContext } from './popover_panel/_popover_panel';
|
|
15
18
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
16
|
-
var paddingSizeToClassNameMap = {
|
|
17
|
-
none: 'euiPopoverFooter--paddingNone',
|
|
18
|
-
s: 'euiPopoverFooter--paddingSmall',
|
|
19
|
-
m: 'euiPopoverFooter--paddingMedium',
|
|
20
|
-
l: 'euiPopoverFooter--paddingLarge'
|
|
21
|
-
};
|
|
22
|
-
export var PADDING_SIZES = keysOf(paddingSizeToClassNameMap);
|
|
23
19
|
export var EuiPopoverFooter = function EuiPopoverFooter(_ref) {
|
|
24
20
|
var children = _ref.children,
|
|
25
21
|
className = _ref.className,
|
|
26
22
|
paddingSize = _ref.paddingSize,
|
|
27
23
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
28
24
|
|
|
29
|
-
var
|
|
30
|
-
|
|
31
|
-
|
|
25
|
+
var _useContext = useContext(EuiPopoverPanelContext),
|
|
26
|
+
panelPadding = _useContext.paddingSize;
|
|
27
|
+
|
|
28
|
+
var euiTheme = useEuiTheme();
|
|
29
|
+
var styles = euiPopoverFooterStyles(euiTheme, panelPadding);
|
|
30
|
+
var paddingStyles = useEuiPaddingCSS();
|
|
31
|
+
var cssStyles = [styles.euiPopoverFooter, // If a paddingSize is not directly provided, inherit from the EuiPopoverPanel
|
|
32
|
+
paddingStyles[paddingSize || panelPadding]];
|
|
33
|
+
var classes = classNames('euiPopoverFooter', className);
|
|
32
34
|
return ___EmotionJSX("div", _extends({
|
|
35
|
+
css: cssStyles,
|
|
33
36
|
className: classes
|
|
34
37
|
}, rest), children);
|
|
35
38
|
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
import { css } from '@emotion/react';
|
|
9
|
+
import { euiFontSize, euiPaddingSize, logicalCSS } from '../../global_styling';
|
|
10
|
+
export var euiPopoverFooterStyles = function euiPopoverFooterStyles(euiThemeContext, panelPadding) {
|
|
11
|
+
var euiTheme = euiThemeContext.euiTheme; // If the popover's containing panel has padding applied,
|
|
12
|
+
// ensure the title expands to cover that padding and
|
|
13
|
+
|
|
14
|
+
var panelPaddingSize = euiPaddingSize(euiThemeContext, panelPadding);
|
|
15
|
+
return {
|
|
16
|
+
// Base
|
|
17
|
+
euiPopoverFooter: /*#__PURE__*/css(euiFontSize(euiThemeContext, 's'), ";", logicalCSS('border-top', euiTheme.border.thin), ";margin:", panelPaddingSize, " -", panelPaddingSize, " -", panelPaddingSize, ";;label:euiPopoverFooter;")
|
|
18
|
+
};
|
|
19
|
+
};
|