@elastic/eui 68.0.0 → 70.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_charts_theme.js +5661 -5814
- package/dist/eui_charts_theme.js.map +1 -1
- package/dist/eui_theme_dark.css +0 -896
- package/dist/eui_theme_dark.json +0 -52
- package/dist/eui_theme_dark.json.d.ts +0 -52
- package/dist/eui_theme_dark.min.css +1 -1
- package/dist/eui_theme_light.css +0 -896
- package/dist/eui_theme_light.json +0 -52
- package/dist/eui_theme_light.json.d.ts +0 -52
- package/dist/eui_theme_light.min.css +1 -1
- 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 +1 -1
- package/es/components/basic_table/collapsed_item_actions.js +1 -1
- package/es/components/basic_table/in_memory_table.js +15 -3
- package/es/components/breadcrumbs/breadcrumb.js +9 -5
- package/es/components/breadcrumbs/breadcrumbs.js +7 -4
- package/es/components/button/_button_content_deprecated.js +1 -1
- 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/code/code.js +7 -3
- package/es/components/code/code.styles.js +32 -0
- package/es/components/code/code_block.js +72 -315
- package/es/components/code/code_block.styles.js +153 -0
- package/es/components/code/code_block_controls.js +29 -0
- package/es/components/code/code_block_controls.styles.js +43 -0
- package/es/components/code/code_block_copy.js +65 -0
- package/es/components/code/code_block_full_screen.js +90 -0
- package/es/components/code/code_block_line.styles.js +49 -0
- package/es/components/code/code_block_overflow.js +78 -0
- package/es/components/code/code_block_virtualized.js +59 -0
- package/es/components/code/code_syntax.styles.js +43 -0
- package/es/components/code/utils.js +43 -37
- package/es/components/collapsible_nav/collapsible_nav.js +0 -5
- package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
- package/es/components/color_picker/color_palette_picker/color_palette_picker.js +18 -0
- package/es/components/combo_box/combo_box.js +52 -11
- package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +14 -6
- package/es/components/combo_box/matching_options.js +60 -11
- 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/datagrid/body/data_grid_body.js +13 -13
- package/es/components/datagrid/body/data_grid_cell.js +24 -24
- package/es/components/datagrid/body/header/data_grid_header_cell.js +12 -12
- 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 +13 -13
- package/es/components/datagrid/utils/in_memory.js +12 -12
- 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/flex/flex_grid.js +30 -40
- package/es/components/flex/flex_grid.styles.js +137 -0
- package/es/components/flex/flex_group.js +16 -42
- package/es/components/flex/flex_group.styles.js +202 -0
- package/es/components/flex/flex_item.js +17 -16
- package/es/components/flex/flex_item.styles.js +148 -0
- package/es/components/flyout/flyout_body.js +2 -3
- package/es/components/flyout/flyout_footer.js +2 -3
- package/es/components/flyout/flyout_header.js +2 -3
- package/es/components/form/described_form_group/described_form_group.js +28 -23
- package/es/components/form/eui_form_context.js +14 -0
- package/es/components/form/field_number/field_number.js +38 -23
- package/es/components/form/field_password/field_password.js +31 -20
- package/es/components/form/field_search/field_search.js +14 -2
- package/es/components/form/field_text/field_text.js +30 -20
- package/es/components/form/file_picker/file_picker.js +13 -1
- package/es/components/form/form.js +21 -3
- package/es/components/form/form_control_layout/form_control_layout.js +19 -3
- 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/form_row/form_row.js +22 -4
- package/es/components/form/range/dual_range.js +14 -2
- package/es/components/form/range/range.js +14 -2
- package/es/components/form/range/range_wrapper.js +16 -6
- package/es/components/form/select/select.js +41 -25
- package/es/components/form/super_select/super_select.js +18 -0
- package/es/components/form/super_select/super_select_control.js +26 -22
- package/es/components/form/text_area/text_area.js +26 -15
- 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.js +1 -1
- package/es/components/icon/assets/filter.js +1 -2
- package/es/components/icon/assets/filterExclude.js +43 -0
- package/es/components/icon/assets/filterIgnore.js +38 -0
- package/es/components/icon/assets/filterInclude.js +38 -0
- package/es/components/icon/assets/indexTemporary.js +40 -0
- package/es/components/icon/assets/infinity.js +38 -0
- package/es/components/icon/assets/sortAscending.js +38 -0
- package/es/components/icon/assets/sortDescending.js +38 -0
- package/es/components/icon/icon.js +1 -1
- package/es/components/icon/icon_map.js +7 -0
- package/es/components/image/image_fullscreen_wrapper.js +3 -3
- 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/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/notification/notification_event.js +2 -2
- package/es/components/notification/notification_event_meta.js +1 -1
- package/es/components/overlay_mask/overlay_mask.js +8 -14
- package/es/components/overlay_mask/overlay_mask.styles.js +4 -14
- package/es/components/overlay_mask/overlay_mask_body.styles.js +18 -0
- package/es/components/page/page_header/page_header_content.js +1 -1
- package/es/components/page/page_section/page_section.js +4 -3
- package/es/components/pagination/pagination.js +4 -4
- package/es/components/pagination/pagination_button.js +1 -1
- package/es/components/provider/provider.js +1 -5
- package/es/components/resizable_container/helpers.js +2 -2
- package/es/components/resizable_container/resizable_container.js +83 -25
- package/es/components/resizable_container/resizable_container.styles.js +28 -0
- package/es/components/resizable_container/resizable_panel.js +25 -48
- package/es/components/resizable_container/resizable_panel.styles.js +69 -0
- package/es/components/search_bar/query/ast.js +14 -3
- package/es/components/search_bar/search_bar.js +6 -0
- 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/suggest/suggest.js +1 -1
- package/es/components/suggest/suggest_item.js +1 -1
- package/es/components/table/table_header_button.js +1 -1
- package/es/components/text/text.js +1 -0
- 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/tool_tip/tool_tip.js +3 -2
- package/es/components/tool_tip/tool_tip.styles.js +17 -22
- package/es/components/tool_tip/tool_tip_anchor.js +2 -2
- package/es/components/tool_tip/tool_tip_arrow.js +17 -3
- package/es/components/tool_tip/tool_tip_popover.js +7 -7
- package/es/components/tour/tour.styles.js +4 -3
- package/es/components/tour/tour_step.js +7 -5
- package/es/global_styling/functions/logicals.js +5 -3
- package/es/global_styling/functions/math.js +37 -19
- package/es/global_styling/mixins/_padding.js +13 -9
- package/eui.d.ts +664 -122
- package/i18ntokens.json +60 -60
- 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 +1 -1
- package/lib/components/basic_table/collapsed_item_actions.js +1 -1
- package/lib/components/basic_table/in_memory_table.js +15 -3
- package/lib/components/breadcrumbs/breadcrumb.js +9 -5
- package/lib/components/breadcrumbs/breadcrumbs.js +7 -4
- package/lib/components/button/_button_content_deprecated.js +1 -1
- 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/code/code.js +9 -3
- package/lib/components/code/code.styles.js +35 -0
- package/lib/components/code/code_block.js +72 -320
- package/lib/components/code/code_block.styles.js +154 -0
- package/lib/components/code/code_block_controls.js +48 -0
- package/lib/components/code/code_block_controls.styles.js +39 -0
- package/lib/components/code/code_block_copy.js +78 -0
- package/lib/components/code/code_block_full_screen.js +108 -0
- package/lib/components/code/code_block_line.styles.js +45 -0
- package/lib/components/code/code_block_overflow.js +82 -0
- package/lib/components/code/code_block_virtualized.js +72 -0
- package/lib/components/code/code_syntax.styles.js +57 -0
- package/lib/components/code/utils.js +40 -39
- package/lib/components/collapsible_nav/collapsible_nav.js +0 -5
- package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
- package/lib/components/color_picker/color_palette_picker/color_palette_picker.js +18 -0
- package/lib/components/combo_box/combo_box.js +51 -10
- package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +14 -6
- package/lib/components/combo_box/matching_options.js +64 -12
- 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/datagrid/body/data_grid_body.js +13 -13
- package/lib/components/datagrid/body/data_grid_cell.js +24 -24
- package/lib/components/datagrid/body/header/data_grid_header_cell.js +12 -12
- 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 +13 -13
- package/lib/components/datagrid/utils/in_memory.js +12 -12
- 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/flex/flex_grid.js +33 -42
- package/lib/components/flex/flex_grid.styles.js +140 -0
- package/lib/components/flex/flex_group.js +17 -42
- package/lib/components/flex/flex_group.styles.js +205 -0
- package/lib/components/flex/flex_item.js +20 -19
- package/lib/components/flex/flex_item.styles.js +150 -0
- package/lib/components/flyout/flyout_body.js +2 -3
- package/lib/components/flyout/flyout_footer.js +2 -3
- package/lib/components/flyout/flyout_header.js +2 -3
- package/lib/components/form/described_form_group/described_form_group.js +29 -23
- package/lib/components/form/eui_form_context.js +28 -0
- package/lib/components/form/field_number/field_number.js +39 -23
- package/lib/components/form/field_password/field_password.js +32 -20
- package/lib/components/form/field_search/field_search.js +15 -2
- package/lib/components/form/field_text/field_text.js +31 -20
- package/lib/components/form/file_picker/file_picker.js +14 -1
- package/lib/components/form/form.js +23 -3
- package/lib/components/form/form_control_layout/form_control_layout.js +20 -3
- 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/form_row/form_row.js +23 -4
- package/lib/components/form/range/dual_range.js +15 -2
- package/lib/components/form/range/range.js +15 -2
- package/lib/components/form/range/range_wrapper.js +17 -6
- package/lib/components/form/select/select.js +42 -25
- package/lib/components/form/super_select/super_select.js +18 -0
- package/lib/components/form/super_select/super_select_control.js +27 -22
- package/lib/components/form/text_area/text_area.js +27 -15
- 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.js +1 -1
- package/lib/components/icon/assets/filter.js +1 -2
- package/lib/components/icon/assets/filterExclude.js +50 -0
- package/lib/components/icon/assets/filterIgnore.js +45 -0
- package/lib/components/icon/assets/filterInclude.js +45 -0
- package/lib/components/icon/assets/indexTemporary.js +47 -0
- package/lib/components/icon/assets/infinity.js +45 -0
- package/lib/components/icon/assets/sortAscending.js +45 -0
- package/lib/components/icon/assets/sortDescending.js +45 -0
- package/lib/components/icon/icon.js +1 -1
- package/lib/components/icon/icon_map.js +7 -0
- package/lib/components/icon/svgs/filter.svg +1 -1
- package/lib/components/icon/svgs/filterExclude.svg +5 -0
- package/lib/components/icon/svgs/filterIgnore.svg +4 -0
- package/lib/components/icon/svgs/filterInclude.svg +5 -0
- package/lib/components/icon/svgs/indexTemporary.svg +4 -0
- package/lib/components/icon/svgs/infinity.svg +3 -0
- package/lib/components/icon/svgs/sortAscending.svg +3 -0
- package/lib/components/icon/svgs/sortDescending.svg +3 -0
- package/lib/components/image/image_fullscreen_wrapper.js +3 -3
- 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/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/notification/notification_event.js +2 -2
- package/lib/components/notification/notification_event_meta.js +1 -1
- package/lib/components/overlay_mask/overlay_mask.js +9 -14
- package/lib/components/overlay_mask/overlay_mask.styles.js +13 -17
- package/lib/components/overlay_mask/overlay_mask_body.styles.js +20 -0
- package/lib/components/page/page_header/page_header_content.js +1 -1
- package/lib/components/page/page_section/page_section.js +4 -3
- package/lib/components/pagination/pagination.js +4 -4
- package/lib/components/provider/provider.js +7 -12
- package/lib/components/resizable_container/helpers.js +2 -2
- package/lib/components/resizable_container/resizable_container.js +84 -25
- package/lib/components/resizable_container/resizable_container.styles.js +31 -0
- package/lib/components/resizable_container/resizable_panel.js +28 -49
- package/lib/components/resizable_container/resizable_panel.styles.js +74 -0
- package/lib/components/search_bar/query/ast.js +14 -3
- package/lib/components/search_bar/search_bar.js +6 -0
- 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/suggest/suggest.js +1 -1
- package/lib/components/suggest/suggest_item.js +1 -1
- package/lib/components/table/table_header_button.js +1 -1
- package/lib/components/text/text.js +1 -0
- 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/tool_tip/tool_tip.js +3 -2
- package/lib/components/tool_tip/tool_tip.styles.js +18 -26
- package/lib/components/tool_tip/tool_tip_anchor.js +2 -2
- package/lib/components/tool_tip/tool_tip_arrow.js +19 -4
- package/lib/components/tool_tip/tool_tip_popover.js +6 -6
- package/lib/components/tour/tour.styles.js +3 -2
- package/lib/components/tour/tour_step.js +7 -5
- package/lib/global_styling/functions/logicals.js +5 -3
- package/lib/global_styling/functions/math.js +37 -19
- package/lib/global_styling/mixins/_padding.js +17 -10
- package/optimize/es/components/basic_table/in_memory_table.js +1 -1
- package/optimize/es/components/breadcrumbs/breadcrumb.js +3 -2
- package/optimize/es/components/breadcrumbs/breadcrumbs.js +7 -4
- package/optimize/es/components/code/code.js +7 -3
- package/optimize/es/components/code/code.styles.js +32 -0
- package/optimize/es/components/code/code_block.js +70 -299
- package/optimize/es/components/code/code_block.styles.js +153 -0
- package/optimize/es/components/code/code_block_controls.js +29 -0
- package/optimize/es/components/code/code_block_controls.styles.js +43 -0
- package/optimize/es/components/code/code_block_copy.js +55 -0
- package/optimize/es/components/code/code_block_full_screen.js +80 -0
- package/optimize/es/components/code/code_block_line.styles.js +49 -0
- package/optimize/es/components/code/code_block_overflow.js +67 -0
- package/optimize/es/components/code/code_block_virtualized.js +59 -0
- package/optimize/es/components/code/code_syntax.styles.js +43 -0
- package/optimize/es/components/code/utils.js +43 -37
- package/optimize/es/components/combo_box/combo_box.js +47 -11
- package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +13 -6
- package/optimize/es/components/combo_box/matching_options.js +60 -11
- package/optimize/es/components/flex/flex_grid.js +18 -34
- package/optimize/es/components/flex/flex_grid.styles.js +137 -0
- package/optimize/es/components/flex/flex_group.js +12 -38
- package/optimize/es/components/flex/flex_group.styles.js +202 -0
- package/optimize/es/components/flex/flex_item.js +11 -14
- package/optimize/es/components/flex/flex_item.styles.js +148 -0
- package/optimize/es/components/flyout/flyout_body.js +2 -3
- package/optimize/es/components/flyout/flyout_footer.js +2 -3
- package/optimize/es/components/flyout/flyout_header.js +2 -3
- package/optimize/es/components/form/described_form_group/described_form_group.js +22 -22
- package/optimize/es/components/form/eui_form_context.js +14 -0
- package/optimize/es/components/form/field_number/field_number.js +26 -22
- package/optimize/es/components/form/field_password/field_password.js +24 -20
- package/optimize/es/components/form/field_search/field_search.js +8 -2
- package/optimize/es/components/form/field_text/field_text.js +22 -18
- package/optimize/es/components/form/file_picker/file_picker.js +7 -1
- package/optimize/es/components/form/form.js +11 -2
- package/optimize/es/components/form/form_control_layout/form_control_layout.js +10 -2
- package/optimize/es/components/form/form_row/form_row.js +10 -4
- package/optimize/es/components/form/range/dual_range.js +8 -2
- package/optimize/es/components/form/range/range.js +8 -2
- package/optimize/es/components/form/range/range_wrapper.js +11 -6
- package/optimize/es/components/form/select/select.js +28 -24
- package/optimize/es/components/form/super_select/super_select_control.js +26 -22
- package/optimize/es/components/form/text_area/text_area.js +19 -15
- package/optimize/es/components/icon/assets/filter.js +1 -2
- package/optimize/es/components/icon/assets/filterExclude.js +39 -0
- package/optimize/es/components/icon/assets/filterIgnore.js +34 -0
- package/optimize/es/components/icon/assets/filterInclude.js +34 -0
- package/optimize/es/components/icon/assets/indexTemporary.js +36 -0
- package/optimize/es/components/icon/assets/infinity.js +34 -0
- package/optimize/es/components/icon/assets/sortAscending.js +34 -0
- package/optimize/es/components/icon/assets/sortDescending.js +34 -0
- package/optimize/es/components/icon/icon_map.js +7 -0
- package/optimize/es/components/image/image_fullscreen_wrapper.js +3 -3
- package/optimize/es/components/overlay_mask/overlay_mask.js +8 -9
- package/optimize/es/components/overlay_mask/overlay_mask.styles.js +4 -14
- package/optimize/es/components/overlay_mask/overlay_mask_body.styles.js +18 -0
- package/optimize/es/components/page/page_section/page_section.js +4 -3
- package/optimize/es/components/pagination/pagination.js +4 -4
- package/optimize/es/components/provider/provider.js +1 -5
- package/optimize/es/components/resizable_container/helpers.js +2 -2
- package/optimize/es/components/resizable_container/resizable_container.js +73 -25
- package/optimize/es/components/resizable_container/resizable_container.styles.js +28 -0
- package/optimize/es/components/resizable_container/resizable_panel.js +25 -48
- package/optimize/es/components/resizable_container/resizable_panel.styles.js +69 -0
- package/optimize/es/components/search_bar/query/ast.js +14 -3
- package/optimize/es/components/tool_tip/tool_tip.js +3 -2
- package/optimize/es/components/tool_tip/tool_tip.styles.js +17 -22
- package/optimize/es/components/tool_tip/tool_tip_anchor.js +2 -2
- package/optimize/es/components/tool_tip/tool_tip_arrow.js +9 -3
- package/optimize/es/components/tool_tip/tool_tip_popover.js +7 -7
- package/optimize/es/components/tour/tour.styles.js +4 -3
- package/optimize/es/components/tour/tour_step.js +7 -5
- package/optimize/es/global_styling/functions/logicals.js +5 -3
- package/optimize/es/global_styling/functions/math.js +35 -17
- package/optimize/es/global_styling/mixins/_padding.js +13 -9
- package/optimize/lib/components/basic_table/in_memory_table.js +1 -1
- package/optimize/lib/components/breadcrumbs/breadcrumb.js +3 -2
- package/optimize/lib/components/breadcrumbs/breadcrumbs.js +7 -4
- package/optimize/lib/components/code/code.js +9 -3
- package/optimize/lib/components/code/code.styles.js +35 -0
- package/optimize/lib/components/code/code_block.js +71 -306
- package/optimize/lib/components/code/code_block.styles.js +156 -0
- package/optimize/lib/components/code/code_block_controls.js +48 -0
- package/optimize/lib/components/code/code_block_controls.styles.js +39 -0
- package/optimize/lib/components/code/code_block_copy.js +78 -0
- package/optimize/lib/components/code/code_block_full_screen.js +108 -0
- package/optimize/lib/components/code/code_block_line.styles.js +45 -0
- package/optimize/lib/components/code/code_block_overflow.js +82 -0
- package/optimize/lib/components/code/code_block_virtualized.js +81 -0
- package/optimize/lib/components/code/code_syntax.styles.js +57 -0
- package/optimize/lib/components/code/utils.js +40 -37
- package/optimize/lib/components/combo_box/combo_box.js +46 -10
- package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +13 -6
- package/optimize/lib/components/combo_box/matching_options.js +64 -12
- package/optimize/lib/components/flex/flex_grid.js +21 -36
- package/optimize/lib/components/flex/flex_grid.styles.js +140 -0
- package/optimize/lib/components/flex/flex_group.js +13 -38
- package/optimize/lib/components/flex/flex_group.styles.js +205 -0
- package/optimize/lib/components/flex/flex_item.js +14 -17
- package/optimize/lib/components/flex/flex_item.styles.js +150 -0
- package/optimize/lib/components/flyout/flyout_body.js +2 -3
- package/optimize/lib/components/flyout/flyout_footer.js +2 -3
- package/optimize/lib/components/flyout/flyout_header.js +2 -3
- package/optimize/lib/components/form/described_form_group/described_form_group.js +23 -22
- package/optimize/lib/components/form/eui_form_context.js +28 -0
- package/optimize/lib/components/form/field_number/field_number.js +27 -22
- package/optimize/lib/components/form/field_password/field_password.js +24 -20
- package/optimize/lib/components/form/field_search/field_search.js +7 -2
- package/optimize/lib/components/form/field_text/field_text.js +23 -18
- package/optimize/lib/components/form/file_picker/file_picker.js +7 -1
- package/optimize/lib/components/form/form.js +14 -2
- package/optimize/lib/components/form/form_control_layout/form_control_layout.js +10 -2
- package/optimize/lib/components/form/form_row/form_row.js +9 -4
- package/optimize/lib/components/form/range/dual_range.js +7 -2
- package/optimize/lib/components/form/range/range.js +7 -2
- package/optimize/lib/components/form/range/range_wrapper.js +12 -6
- package/optimize/lib/components/form/select/select.js +29 -24
- package/optimize/lib/components/form/super_select/super_select_control.js +27 -22
- package/optimize/lib/components/form/text_area/text_area.js +20 -15
- package/optimize/lib/components/icon/assets/filter.js +1 -2
- package/optimize/lib/components/icon/assets/filterExclude.js +49 -0
- package/optimize/lib/components/icon/assets/filterIgnore.js +44 -0
- package/optimize/lib/components/icon/assets/filterInclude.js +44 -0
- package/optimize/lib/components/icon/assets/indexTemporary.js +46 -0
- package/optimize/lib/components/icon/assets/infinity.js +44 -0
- package/optimize/lib/components/icon/assets/sortAscending.js +44 -0
- package/optimize/lib/components/icon/assets/sortDescending.js +44 -0
- package/optimize/lib/components/icon/icon_map.js +7 -0
- package/optimize/lib/components/icon/svgs/filter.svg +1 -1
- package/optimize/lib/components/icon/svgs/filterExclude.svg +5 -0
- package/optimize/lib/components/icon/svgs/filterIgnore.svg +4 -0
- package/optimize/lib/components/icon/svgs/filterInclude.svg +5 -0
- package/optimize/lib/components/icon/svgs/indexTemporary.svg +4 -0
- package/optimize/lib/components/icon/svgs/infinity.svg +3 -0
- package/optimize/lib/components/icon/svgs/sortAscending.svg +3 -0
- package/optimize/lib/components/icon/svgs/sortDescending.svg +3 -0
- package/optimize/lib/components/image/image_fullscreen_wrapper.js +3 -3
- package/optimize/lib/components/overlay_mask/overlay_mask.js +9 -9
- package/optimize/lib/components/overlay_mask/overlay_mask.styles.js +13 -17
- package/optimize/lib/components/overlay_mask/overlay_mask_body.styles.js +20 -0
- package/optimize/lib/components/page/page_section/page_section.js +4 -3
- package/optimize/lib/components/pagination/pagination.js +4 -4
- package/optimize/lib/components/provider/provider.js +7 -12
- package/optimize/lib/components/resizable_container/helpers.js +2 -2
- package/optimize/lib/components/resizable_container/resizable_container.js +74 -25
- package/optimize/lib/components/resizable_container/resizable_container.styles.js +31 -0
- package/optimize/lib/components/resizable_container/resizable_panel.js +28 -49
- package/optimize/lib/components/resizable_container/resizable_panel.styles.js +76 -0
- package/optimize/lib/components/search_bar/query/ast.js +14 -3
- package/optimize/lib/components/tool_tip/tool_tip.js +3 -2
- package/optimize/lib/components/tool_tip/tool_tip.styles.js +18 -26
- package/optimize/lib/components/tool_tip/tool_tip_anchor.js +2 -2
- package/optimize/lib/components/tool_tip/tool_tip_arrow.js +10 -10
- package/optimize/lib/components/tool_tip/tool_tip_popover.js +6 -6
- package/optimize/lib/components/tour/tour.styles.js +3 -2
- package/optimize/lib/components/tour/tour_step.js +7 -5
- package/optimize/lib/global_styling/functions/logicals.js +4 -10
- package/optimize/lib/global_styling/functions/math.js +37 -19
- package/optimize/lib/global_styling/mixins/_padding.js +17 -10
- package/package.json +24 -21
- package/src/components/index.scss +0 -2
- package/src/components/resizable_container/_index.scss +0 -2
- package/src/global_styling/mixins/_header.scss +1 -1
- package/src/global_styling/variables/_index.scss +0 -1
- package/src/themes/amsterdam/overrides/_index.scss +0 -1
- 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 +1 -1
- package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
- package/test-env/components/basic_table/in_memory_table.js +15 -3
- package/test-env/components/breadcrumbs/breadcrumb.js +9 -5
- package/test-env/components/breadcrumbs/breadcrumbs.js +7 -4
- package/test-env/components/button/_button_content_deprecated.js +1 -1
- 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/code/code.styles.js +35 -0
- package/test-env/components/code/code_block.styles.js +156 -0
- package/test-env/components/code/code_block_controls.js +48 -0
- package/test-env/components/code/code_block_controls.styles.js +39 -0
- package/test-env/components/code/code_block_copy.js +78 -0
- package/test-env/components/code/code_block_full_screen.js +108 -0
- package/test-env/components/code/code_block_line.styles.js +45 -0
- package/test-env/components/code/code_block_overflow.js +82 -0
- package/test-env/components/code/code_block_virtualized.js +81 -0
- package/test-env/components/code/code_syntax.styles.js +57 -0
- package/test-env/components/code/utils.js +40 -37
- package/test-env/components/collapsible_nav/collapsible_nav.js +0 -5
- package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
- package/test-env/components/color_picker/color_palette_picker/color_palette_picker.js +18 -0
- package/test-env/components/combo_box/combo_box.js +51 -10
- package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +14 -6
- package/test-env/components/combo_box/matching_options.js +64 -12
- 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/datagrid/body/data_grid_body.js +13 -13
- package/test-env/components/datagrid/body/data_grid_cell.js +24 -24
- package/test-env/components/datagrid/body/header/data_grid_header_cell.js +12 -12
- 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 +13 -13
- package/test-env/components/datagrid/utils/in_memory.js +12 -12
- 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/flex/flex_grid.js +33 -42
- package/test-env/components/flex/flex_grid.styles.js +140 -0
- package/test-env/components/flex/flex_group.js +17 -42
- package/test-env/components/flex/flex_group.styles.js +205 -0
- package/test-env/components/flex/flex_item.js +20 -18
- package/test-env/components/flex/flex_item.styles.js +150 -0
- package/test-env/components/flyout/flyout_body.js +2 -3
- package/test-env/components/flyout/flyout_footer.js +2 -3
- package/test-env/components/flyout/flyout_header.js +2 -3
- package/test-env/components/form/described_form_group/described_form_group.js +29 -23
- package/test-env/components/form/eui_form_context.js +28 -0
- package/test-env/components/form/field_number/field_number.js +39 -23
- package/test-env/components/form/field_password/field_password.js +31 -20
- package/test-env/components/form/field_search/field_search.js +13 -2
- package/test-env/components/form/field_text/field_text.js +31 -20
- package/test-env/components/form/file_picker/file_picker.js +13 -1
- package/test-env/components/form/form.js +24 -3
- package/test-env/components/form/form_control_layout/form_control_layout.js +17 -3
- 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/form_row/form_row.js +21 -4
- package/test-env/components/form/range/dual_range.js +13 -2
- package/test-env/components/form/range/range.js +13 -2
- package/test-env/components/form/range/range_wrapper.js +17 -6
- package/test-env/components/form/select/select.js +41 -24
- package/test-env/components/form/super_select/super_select.js +18 -0
- package/test-env/components/form/super_select/super_select_control.js +27 -22
- package/test-env/components/form/text_area/text_area.js +27 -15
- 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.js +1 -1
- package/test-env/components/icon/assets/filter.js +1 -2
- package/test-env/components/icon/assets/filterExclude.js +49 -0
- package/test-env/components/icon/assets/filterIgnore.js +44 -0
- package/test-env/components/icon/assets/filterInclude.js +44 -0
- package/test-env/components/icon/assets/indexTemporary.js +46 -0
- package/test-env/components/icon/assets/infinity.js +44 -0
- package/test-env/components/icon/assets/sortAscending.js +44 -0
- package/test-env/components/icon/assets/sortDescending.js +44 -0
- package/test-env/components/icon/icon_map.js +7 -0
- package/test-env/components/image/image_fullscreen_wrapper.js +3 -3
- 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/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/notification/notification_event.js +2 -2
- package/test-env/components/notification/notification_event_meta.js +1 -1
- package/test-env/components/overlay_mask/overlay_mask.js +9 -14
- package/test-env/components/overlay_mask/overlay_mask.styles.js +13 -17
- package/test-env/components/overlay_mask/overlay_mask_body.styles.js +20 -0
- package/test-env/components/page/page_header/page_header_content.js +1 -1
- package/test-env/components/page/page_section/page_section.js +4 -3
- package/test-env/components/pagination/pagination.js +4 -4
- package/test-env/components/provider/provider.js +7 -12
- package/test-env/components/resizable_container/helpers.js +2 -2
- package/test-env/components/resizable_container/resizable_container.js +84 -25
- package/test-env/components/resizable_container/resizable_container.styles.js +31 -0
- package/test-env/components/resizable_container/resizable_panel.js +28 -49
- package/test-env/components/resizable_container/resizable_panel.styles.js +76 -0
- package/test-env/components/search_bar/query/ast.js +14 -3
- package/test-env/components/search_bar/search_bar.js +6 -0
- 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/suggest/suggest.js +1 -1
- 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.js +1 -0
- 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/tool_tip/tool_tip.js +3 -2
- package/test-env/components/tool_tip/tool_tip.styles.js +18 -26
- package/test-env/components/tool_tip/tool_tip_anchor.js +2 -2
- package/test-env/components/tool_tip/tool_tip_arrow.js +16 -11
- package/test-env/components/tool_tip/tool_tip_popover.js +6 -6
- package/test-env/components/tour/tour.styles.js +3 -2
- package/test-env/components/tour/tour_step.js +7 -5
- package/test-env/global_styling/functions/logicals.js +4 -10
- package/test-env/global_styling/functions/math.js +37 -19
- package/test-env/global_styling/mixins/_padding.js +17 -10
- package/src/components/code/_code.scss +0 -15
- package/src/components/code/_code_block.scss +0 -177
- package/src/components/code/_index.scss +0 -4
- package/src/components/code/_mixins.scss +0 -127
- package/src/components/code/_variables.scss +0 -5
- package/src/components/flex/_flex_grid.scss +0 -99
- package/src/components/flex/_flex_group.scss +0 -100
- package/src/components/flex/_flex_item.scss +0 -35
- package/src/components/flex/_index.scss +0 -3
- package/src/components/resizable_container/_resizable_container.scss +0 -8
- package/src/components/resizable_container/_resizable_panel.scss +0 -51
- package/src/global_styling/variables/_colors_code.scss +0 -23
- package/src/themes/amsterdam/overrides/_code.scss +0 -9
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
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 React, { useMemo } from 'react';
|
|
11
|
+
import { useInnerText } from '../inner_text';
|
|
12
|
+
import { EuiCopy } from '../copy';
|
|
13
|
+
import { useEuiI18n } from '../i18n';
|
|
14
|
+
import { EuiButtonIcon } from '../button';
|
|
15
|
+
/**
|
|
16
|
+
* Hook that returns copy-related state/logic/utils
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
20
|
+
export var useCopy = function useCopy(_ref) {
|
|
21
|
+
var isCopyable = _ref.isCopyable,
|
|
22
|
+
isVirtualized = _ref.isVirtualized,
|
|
23
|
+
children = _ref.children;
|
|
24
|
+
|
|
25
|
+
var _useInnerText = useInnerText(''),
|
|
26
|
+
_useInnerText2 = _slicedToArray(_useInnerText, 2),
|
|
27
|
+
innerTextRef = _useInnerText2[0],
|
|
28
|
+
_innerText = _useInnerText2[1];
|
|
29
|
+
|
|
30
|
+
var innerText = useMemo(function () {
|
|
31
|
+
return (_innerText === null || _innerText === void 0 ? void 0 : _innerText.replace(/[\r\n?]{2}|\n\n/g, '\n')) || '';
|
|
32
|
+
}, [_innerText]);
|
|
33
|
+
var textToCopy = isVirtualized ? "".concat(children) : innerText; // Virtualized code blocks do not have inner text
|
|
34
|
+
|
|
35
|
+
var showCopyButton = isCopyable && textToCopy;
|
|
36
|
+
var copyAriaLabel = useEuiI18n('euiCodeBlockCopy.copy', 'Copy');
|
|
37
|
+
var copyButton = useMemo(function () {
|
|
38
|
+
return showCopyButton ? ___EmotionJSX("div", {
|
|
39
|
+
className: "euiCodeBlock__copyButton"
|
|
40
|
+
}, ___EmotionJSX(EuiCopy, {
|
|
41
|
+
textToCopy: textToCopy
|
|
42
|
+
}, function (copy) {
|
|
43
|
+
return ___EmotionJSX(EuiButtonIcon, {
|
|
44
|
+
onClick: copy,
|
|
45
|
+
iconType: "copyClipboard",
|
|
46
|
+
color: "text",
|
|
47
|
+
"aria-label": copyAriaLabel
|
|
48
|
+
});
|
|
49
|
+
})) : null;
|
|
50
|
+
}, [showCopyButton, textToCopy, copyAriaLabel]);
|
|
51
|
+
return {
|
|
52
|
+
innerTextRef: innerTextRef,
|
|
53
|
+
copyButton: copyButton
|
|
54
|
+
};
|
|
55
|
+
};
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
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 React, { useState, useCallback, useMemo } from 'react';
|
|
11
|
+
import { keys, useEuiTheme } from '../../services';
|
|
12
|
+
import { useEuiI18n } from '../i18n';
|
|
13
|
+
import { EuiButtonIcon } from '../button';
|
|
14
|
+
import { EuiFocusTrap } from '../focus_trap';
|
|
15
|
+
import { EuiOverlayMask } from '../overlay_mask';
|
|
16
|
+
import { euiCodeBlockStyles } from './code_block.styles';
|
|
17
|
+
/**
|
|
18
|
+
* Hook that returns fullscreen-related state/logic/utils
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
22
|
+
export var useFullScreen = function useFullScreen(_ref) {
|
|
23
|
+
var overflowHeight = _ref.overflowHeight;
|
|
24
|
+
var showFullScreenButton = !!overflowHeight;
|
|
25
|
+
|
|
26
|
+
var _useState = useState(false),
|
|
27
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
28
|
+
isFullScreen = _useState2[0],
|
|
29
|
+
setIsFullScreen = _useState2[1];
|
|
30
|
+
|
|
31
|
+
var toggleFullScreen = useCallback(function () {
|
|
32
|
+
setIsFullScreen(function (isFullScreen) {
|
|
33
|
+
return !isFullScreen;
|
|
34
|
+
});
|
|
35
|
+
}, []);
|
|
36
|
+
var onKeyDown = useCallback(function (event) {
|
|
37
|
+
if (event.key === keys.ESCAPE) {
|
|
38
|
+
event.preventDefault();
|
|
39
|
+
event.stopPropagation();
|
|
40
|
+
setIsFullScreen(false);
|
|
41
|
+
}
|
|
42
|
+
}, []);
|
|
43
|
+
|
|
44
|
+
var _useEuiI18n = useEuiI18n(['euiCodeBlockFullScreen.fullscreenCollapse', 'euiCodeBlockFullScreen.fullscreenExpand'], ['Collapse', 'Expand']),
|
|
45
|
+
_useEuiI18n2 = _slicedToArray(_useEuiI18n, 2),
|
|
46
|
+
fullscreenCollapse = _useEuiI18n2[0],
|
|
47
|
+
fullscreenExpand = _useEuiI18n2[1];
|
|
48
|
+
|
|
49
|
+
var fullScreenButton = useMemo(function () {
|
|
50
|
+
return showFullScreenButton ? ___EmotionJSX(EuiButtonIcon, {
|
|
51
|
+
className: "euiCodeBlock__fullScreenButton",
|
|
52
|
+
onClick: toggleFullScreen,
|
|
53
|
+
iconType: isFullScreen ? 'fullScreenExit' : 'fullScreen',
|
|
54
|
+
color: "text",
|
|
55
|
+
"aria-label": isFullScreen ? fullscreenCollapse : fullscreenExpand
|
|
56
|
+
}) : null;
|
|
57
|
+
}, [showFullScreenButton, toggleFullScreen, isFullScreen, fullscreenCollapse, fullscreenExpand]);
|
|
58
|
+
return {
|
|
59
|
+
fullScreenButton: fullScreenButton,
|
|
60
|
+
isFullScreen: isFullScreen,
|
|
61
|
+
onKeyDown: onKeyDown
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* Portalled full screen wrapper
|
|
66
|
+
*/
|
|
67
|
+
|
|
68
|
+
export var EuiCodeBlockFullScreenWrapper = function EuiCodeBlockFullScreenWrapper(_ref2) {
|
|
69
|
+
var children = _ref2.children;
|
|
70
|
+
var euiThemeContext = useEuiTheme();
|
|
71
|
+
var styles = euiCodeBlockStyles(euiThemeContext);
|
|
72
|
+
var cssStyles = [styles.euiCodeBlock, styles.l, // Force fullscreen to use large font
|
|
73
|
+
styles.isFullScreen];
|
|
74
|
+
return ___EmotionJSX(EuiOverlayMask, null, ___EmotionJSX(EuiFocusTrap, {
|
|
75
|
+
clickOutsideDisables: true
|
|
76
|
+
}, ___EmotionJSX("div", {
|
|
77
|
+
className: "euiCodeBlockFullScreen",
|
|
78
|
+
css: cssStyles
|
|
79
|
+
}, children)));
|
|
80
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
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
|
+
|
|
11
|
+
/*
|
|
12
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
13
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
14
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
15
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
16
|
+
* Side Public License, v 1.
|
|
17
|
+
*/
|
|
18
|
+
import { css } from '@emotion/css';
|
|
19
|
+
import { euiBackgroundColor } from '../../global_styling';
|
|
20
|
+
// Note: These styles must be in a separate file due to using `css` from `@emotion/css`
|
|
21
|
+
// (i.e., applying styles in vanilla JS / directly to DOM nodes instead of React)
|
|
22
|
+
export var euiCodeBlockLineStyles = function euiCodeBlockLineStyles(euiThemeContext) {
|
|
23
|
+
var euiTheme = euiThemeContext.euiTheme;
|
|
24
|
+
return {
|
|
25
|
+
euiCodeBlock__line: /*#__PURE__*/css(process.env.NODE_ENV === "production" ? {
|
|
26
|
+
name: "yn676d-euiCodeBlock__line",
|
|
27
|
+
styles: "display:block;label:euiCodeBlock__line;"
|
|
28
|
+
} : {
|
|
29
|
+
name: "yn676d-euiCodeBlock__line",
|
|
30
|
+
styles: "display:block;label:euiCodeBlock__line;",
|
|
31
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
32
|
+
}),
|
|
33
|
+
hasLineNumbers: /*#__PURE__*/css(process.env.NODE_ENV === "production" ? {
|
|
34
|
+
name: "156gjef-hasLineNumbers",
|
|
35
|
+
styles: "display:flex;user-select:none;label:hasLineNumbers;"
|
|
36
|
+
} : {
|
|
37
|
+
name: "156gjef-hasLineNumbers",
|
|
38
|
+
styles: "display:flex;user-select:none;label:hasLineNumbers;",
|
|
39
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
40
|
+
}),
|
|
41
|
+
lineText: {
|
|
42
|
+
euiCodeBlock__lineText: /*#__PURE__*/css("flex-grow:1;display:inline-block;padding-inline-start:", euiTheme.size.s, ";border-inline-start:", euiTheme.border.thin, ";user-select:text;;label:euiCodeBlock__lineText;"),
|
|
43
|
+
isHighlighted: /*#__PURE__*/css("background:", euiBackgroundColor(euiThemeContext, 'primary'), ";border-inline-start:", euiTheme.border.width.thick, " solid ", euiTheme.colors.primary, ";;label:isHighlighted;")
|
|
44
|
+
},
|
|
45
|
+
lineNumber: {
|
|
46
|
+
euiCodeBlock__lineNumber: /*#__PURE__*/css("flex-grow:0;flex-shrink:0;user-select:none;padding-inline-end:", euiTheme.size.s, ";box-sizing:content-box;&:before{content:attr(data-line-number);color:", euiTheme.colors.subduedText, ";text-align:end;display:block;};label:euiCodeBlock__lineNumber;")
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
};
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
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 { useEffect, useState, useMemo } from 'react';
|
|
12
|
+
import { useMutationObserver } from '../observer/mutation_observer';
|
|
13
|
+
import { useResizeObserver } from '../observer/resize_observer';
|
|
14
|
+
/**
|
|
15
|
+
* Overflow logic - returns overflow-related state/logic/utils
|
|
16
|
+
*
|
|
17
|
+
* Detects whether the code block overflows and returns a tabIndex of 0 if so,
|
|
18
|
+
* which allows keyboard users to use the up/down arrow keys to scroll through
|
|
19
|
+
* the container.
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
export var useOverflow = function useOverflow(_ref) {
|
|
23
|
+
var overflowHeight = _ref.overflowHeight;
|
|
24
|
+
|
|
25
|
+
var _useState = useState(null),
|
|
26
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
27
|
+
wrapperRef = _useState2[0],
|
|
28
|
+
setWrapperRef = _useState2[1];
|
|
29
|
+
|
|
30
|
+
var _useState3 = useState(-1),
|
|
31
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
32
|
+
tabIndex = _useState4[0],
|
|
33
|
+
setTabIndex = _useState4[1];
|
|
34
|
+
|
|
35
|
+
var _useResizeObserver = useResizeObserver(wrapperRef),
|
|
36
|
+
width = _useResizeObserver.width,
|
|
37
|
+
height = _useResizeObserver.height;
|
|
38
|
+
|
|
39
|
+
var doesOverflow = function doesOverflow() {
|
|
40
|
+
if (!wrapperRef) return;
|
|
41
|
+
var clientWidth = wrapperRef.clientWidth,
|
|
42
|
+
clientHeight = wrapperRef.clientHeight,
|
|
43
|
+
scrollWidth = wrapperRef.scrollWidth,
|
|
44
|
+
scrollHeight = wrapperRef.scrollHeight;
|
|
45
|
+
var doesOverflow = scrollHeight > clientHeight || scrollWidth > clientWidth;
|
|
46
|
+
setTabIndex(doesOverflow ? 0 : -1);
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
useMutationObserver(wrapperRef, doesOverflow, {
|
|
50
|
+
subtree: true,
|
|
51
|
+
childList: true
|
|
52
|
+
});
|
|
53
|
+
useEffect(doesOverflow, [width, height, wrapperRef]);
|
|
54
|
+
var overflowHeightStyles = useMemo(function () {
|
|
55
|
+
if (overflowHeight) {
|
|
56
|
+
var property = typeof overflowHeight === 'string' ? 'blockSize' : 'maxBlockSize';
|
|
57
|
+
return _defineProperty({}, property, overflowHeight);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
return {};
|
|
61
|
+
}, [overflowHeight]);
|
|
62
|
+
return {
|
|
63
|
+
setWrapperRef: setWrapperRef,
|
|
64
|
+
tabIndex: tabIndex,
|
|
65
|
+
overflowHeightStyles: overflowHeightStyles
|
|
66
|
+
};
|
|
67
|
+
};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
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 React, { forwardRef, useMemo } from 'react';
|
|
11
|
+
import { FixedSizeList } from 'react-window';
|
|
12
|
+
import { EuiAutoSizer } from '../auto_sizer';
|
|
13
|
+
import { nodeToHtml } from './utils';
|
|
14
|
+
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
15
|
+
export var EuiCodeBlockVirtualized = function EuiCodeBlockVirtualized(_ref) {
|
|
16
|
+
var data = _ref.data,
|
|
17
|
+
rowHeight = _ref.rowHeight,
|
|
18
|
+
overflowHeight = _ref.overflowHeight,
|
|
19
|
+
preProps = _ref.preProps,
|
|
20
|
+
codeProps = _ref.codeProps;
|
|
21
|
+
var VirtualizedOuterElement = useMemo(function () {
|
|
22
|
+
return /*#__PURE__*/forwardRef(function (props, ref) {
|
|
23
|
+
return ___EmotionJSX("pre", _extends({}, props, {
|
|
24
|
+
ref: ref
|
|
25
|
+
}, preProps));
|
|
26
|
+
});
|
|
27
|
+
}, [preProps]);
|
|
28
|
+
var VirtualizedInnerElement = useMemo(function () {
|
|
29
|
+
return /*#__PURE__*/forwardRef(function (props, ref) {
|
|
30
|
+
return ___EmotionJSX("code", _extends({}, props, {
|
|
31
|
+
ref: ref
|
|
32
|
+
}, codeProps));
|
|
33
|
+
});
|
|
34
|
+
}, [codeProps]);
|
|
35
|
+
return ___EmotionJSX(EuiAutoSizer, {
|
|
36
|
+
disableHeight: typeof overflowHeight === 'number'
|
|
37
|
+
}, function (_ref2) {
|
|
38
|
+
var height = _ref2.height,
|
|
39
|
+
width = _ref2.width;
|
|
40
|
+
return ___EmotionJSX(FixedSizeList, {
|
|
41
|
+
height: height !== null && height !== void 0 ? height : overflowHeight,
|
|
42
|
+
width: width,
|
|
43
|
+
itemData: data,
|
|
44
|
+
itemSize: rowHeight,
|
|
45
|
+
itemCount: data.length,
|
|
46
|
+
outerElementType: VirtualizedOuterElement,
|
|
47
|
+
innerElementType: VirtualizedInnerElement
|
|
48
|
+
}, ListRow);
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
var ListRow = function ListRow(_ref3) {
|
|
53
|
+
var data = _ref3.data,
|
|
54
|
+
index = _ref3.index,
|
|
55
|
+
style = _ref3.style;
|
|
56
|
+
var row = data[index];
|
|
57
|
+
row.properties.style = style;
|
|
58
|
+
return nodeToHtml(row, index, data, 0);
|
|
59
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
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 { makeHighContrastColor, euiPaletteColorBlind } from '../../services';
|
|
9
|
+
var visColors = euiPaletteColorBlind();
|
|
10
|
+
export var euiCodeSyntaxColors = function euiCodeSyntaxColors(euiThemeContext) {
|
|
11
|
+
var euiTheme = euiThemeContext.euiTheme;
|
|
12
|
+
var backgroundColor = euiTheme.colors.lightestShade;
|
|
13
|
+
return {
|
|
14
|
+
backgroundColor: backgroundColor,
|
|
15
|
+
color: makeHighContrastColor(euiTheme.colors.text)(backgroundColor),
|
|
16
|
+
inlineCodeColor: makeHighContrastColor(visColors[3])(backgroundColor),
|
|
17
|
+
selectedBackgroundColor: 'inherit',
|
|
18
|
+
commentColor: makeHighContrastColor(euiTheme.colors.subduedText)(backgroundColor),
|
|
19
|
+
selectorTagColor: 'inherit',
|
|
20
|
+
stringColor: makeHighContrastColor(visColors[2])(backgroundColor),
|
|
21
|
+
tagColor: makeHighContrastColor(visColors[1])(backgroundColor),
|
|
22
|
+
nameColor: makeHighContrastColor(visColors[1])(backgroundColor),
|
|
23
|
+
numberColor: makeHighContrastColor(visColors[0])(backgroundColor),
|
|
24
|
+
keywordColor: makeHighContrastColor(visColors[3])(backgroundColor),
|
|
25
|
+
functionTitleColor: 'inherit',
|
|
26
|
+
typeColor: makeHighContrastColor(visColors[1])(backgroundColor),
|
|
27
|
+
attributeColor: 'inherit',
|
|
28
|
+
symbolColor: makeHighContrastColor(visColors[9])(backgroundColor),
|
|
29
|
+
paramsColor: 'inherit',
|
|
30
|
+
metaColor: makeHighContrastColor(euiTheme.colors.subduedText)(backgroundColor),
|
|
31
|
+
titleColor: makeHighContrastColor(visColors[7])(backgroundColor),
|
|
32
|
+
sectionColor: makeHighContrastColor(visColors[9])(backgroundColor),
|
|
33
|
+
additionColor: makeHighContrastColor(visColors[0])(backgroundColor),
|
|
34
|
+
deletionColor: makeHighContrastColor(euiTheme.colors.danger)(backgroundColor),
|
|
35
|
+
selectorClassColor: 'inherit',
|
|
36
|
+
selectorIdColor: 'inherit'
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
export var euiCodeSyntaxTokens = function euiCodeSyntaxTokens(euiThemeContext) {
|
|
40
|
+
var euiTheme = euiThemeContext.euiTheme;
|
|
41
|
+
var euiCodeBlock = euiCodeSyntaxColors(euiThemeContext);
|
|
42
|
+
return "\n .token.punctuation:not(.interpolation-punctuation):not([class*='attr-']) {\n opacity: .7;\n }\n \n .token.comment,\n .token.prolog,\n .token.doctype,\n .token.cdata,\n .token.coord,\n .token.blockquote {\n color: ".concat(euiCodeBlock.commentColor, ";\n font-style: italic;\n }\n \n .token.selector {\n color: ").concat(euiCodeBlock.selectorTagColor, ";\n }\n \n .token.string,\n .token.interpolation,\n .token.interpolation-punctuation,\n .token.doc-comment .token.keyword,\n .token.attr-value,\n .token.url .token.content {\n color: ").concat(euiCodeBlock.stringColor, ";\n }\n \n .token.number,\n .token.boolean,\n .token.keyword.nil,\n .token.regex,\n .token.variable,\n .token.unit,\n .token.hexcode,\n .token.attr-name,\n .token.attr-equals {\n color: ").concat(euiCodeBlock.numberColor, ";\n }\n \n .token.atrule .token.rule,\n .token.keyword {\n color: ").concat(euiCodeBlock.keywordColor, ";\n }\n \n .token.function {\n color: ").concat(euiCodeBlock.functionTitleColor, ";\n }\n \n .token.tag {\n color: ").concat(euiCodeBlock.tagColor, ";\n }\n \n .token.class-name {\n color: ").concat(euiCodeBlock.typeColor, ";\n }\n \n .token.property {\n color: ").concat(euiCodeBlock.attributeColor, ";\n }\n \n .token.console,\n .token.list-punctuation,\n .token.url-reference,\n .token.url .token.url {\n color: ").concat(euiCodeBlock.symbolColor, ";\n }\n \n .token.paramater {\n color: ").concat(euiCodeBlock.paramsColor, ";\n }\n \n .token.meta,\n .token.important {\n color: ").concat(euiCodeBlock.metaColor, ";\n }\n \n .token.title {\n color: ").concat(euiCodeBlock.titleColor, ";\n }\n \n .token.section {\n color: ").concat(euiCodeBlock.sectionColor, ";\n }\n \n .token.prefix.inserted,\n .token.prefix.deleted {\n padding-inline-start: -").concat(euiTheme.size.xs, ";\n margin-inline-start: -").concat(euiTheme.size.xs, ";\n }\n \n .token.prefix.inserted {\n box-shadow: -").concat(euiTheme.size.xs, " 0 ").concat(euiCodeBlock.additionColor, ";\n color: ").concat(euiCodeBlock.additionColor, ";\n }\n \n .token.prefix.deleted {\n box-shadow: -").concat(euiTheme.size.xs, " 0 ").concat(euiCodeBlock.deletionColor, ";\n color: ").concat(euiCodeBlock.deletionColor, ";\n }\n \n .token.selector .token.class {\n color: ").concat(euiCodeBlock.selectorClassColor, ";\n }\n \n .token.selector .token.id {\n color: ").concat(euiCodeBlock.selectorIdColor, ";\n }\n \n .token.italic {\n font-style: italic;\n }\n \n .token.important,\n .token.bold {\n font-weight: $euiCodeFontWeightBold;\n }\n \n .token.url-reference,\n .token.url .token.url {\n text-decoration: underline;\n }\n \n .token.entity {\n cursor: help;\n }\n ");
|
|
43
|
+
};
|
|
@@ -13,7 +13,12 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
13
13
|
*/
|
|
14
14
|
import React, { createElement } from 'react';
|
|
15
15
|
import { listLanguages, highlight } from 'refractor';
|
|
16
|
-
import
|
|
16
|
+
import { cx } from '@emotion/css';
|
|
17
|
+
import { euiCodeBlockLineStyles } from './code_block_line.styles';
|
|
18
|
+
/**
|
|
19
|
+
* Utils shared between EuiCode and EuiCodeBlock
|
|
20
|
+
*/
|
|
21
|
+
|
|
17
22
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
18
23
|
export var SUPPORTED_LANGUAGES = listLanguages();
|
|
19
24
|
export var DEFAULT_LANGUAGE = 'text';
|
|
@@ -40,7 +45,7 @@ export var nodeToHtml = function nodeToHtml(node, idx, nodes) {
|
|
|
40
45
|
children = node.children;
|
|
41
46
|
return /*#__PURE__*/createElement(tagName, _objectSpread(_objectSpread({}, properties), {}, {
|
|
42
47
|
key: key,
|
|
43
|
-
className:
|
|
48
|
+
className: cx(properties.className)
|
|
44
49
|
}), children && children.map(function (el, i) {
|
|
45
50
|
return nodeToHtml(el, i, nodes, depth + 1);
|
|
46
51
|
}));
|
|
@@ -55,8 +60,7 @@ export var nodeToHtml = function nodeToHtml(node, idx, nodes) {
|
|
|
55
60
|
*/
|
|
56
61
|
|
|
57
62
|
// Approximate width of a single digit/character
|
|
58
|
-
var CHAR_SIZE = 8;
|
|
59
|
-
var $euiSizeS = 8; // Creates an array of numbers from comma-separeated
|
|
63
|
+
var CHAR_SIZE = 8; // Creates an array of numbers from comma-separeated
|
|
60
64
|
// string of numbers or number ranges using `-`
|
|
61
65
|
// (e.g., "1, 3-10, 15")
|
|
62
66
|
|
|
@@ -129,8 +133,7 @@ var addLineData = function addLineData(nodes, data) {
|
|
|
129
133
|
}, []);
|
|
130
134
|
};
|
|
131
135
|
|
|
132
|
-
function wrapLines(nodes, options) {
|
|
133
|
-
var highlights = options.highlight ? parseLineRanges(options.highlight) : [];
|
|
136
|
+
function wrapLines(nodes, options, euiTheme) {
|
|
134
137
|
var grouped = [];
|
|
135
138
|
nodes.forEach(function (node) {
|
|
136
139
|
var lineStart = node.lineStart - 1;
|
|
@@ -142,41 +145,44 @@ function wrapLines(nodes, options) {
|
|
|
142
145
|
}
|
|
143
146
|
});
|
|
144
147
|
var wrapped = [];
|
|
145
|
-
var digits = grouped.length.toString().length;
|
|
146
|
-
var width = digits * CHAR_SIZE;
|
|
147
148
|
grouped.forEach(function (node, i) {
|
|
148
|
-
var
|
|
149
|
-
|
|
150
|
-
var
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
149
|
+
var children = node;
|
|
150
|
+
var styles = euiCodeBlockLineStyles(euiTheme);
|
|
151
|
+
var lineStyles = cx([styles.euiCodeBlock__line, options.showLineNumbers && styles.hasLineNumbers]);
|
|
152
|
+
|
|
153
|
+
if (options.showLineNumbers) {
|
|
154
|
+
var _properties;
|
|
155
|
+
|
|
156
|
+
var lineNumber = i + 1;
|
|
157
|
+
var digits = grouped.length.toString().length;
|
|
158
|
+
var width = digits * CHAR_SIZE;
|
|
159
|
+
var highlights = options.highlight ? parseLineRanges(options.highlight) : [];
|
|
160
|
+
var lineTextStyles = cx([styles.lineText.euiCodeBlock__lineText, highlights.includes(lineNumber) && styles.lineText.isHighlighted]);
|
|
161
|
+
var lineNumberStyles = cx(styles.lineNumber.euiCodeBlock__lineNumber);
|
|
162
|
+
children = [{
|
|
163
|
+
type: 'element',
|
|
164
|
+
tagName: 'span',
|
|
165
|
+
properties: (_properties = {
|
|
166
|
+
style: {
|
|
167
|
+
inlineSize: width
|
|
168
|
+
}
|
|
169
|
+
}, _defineProperty(_properties, 'data-line-number', lineNumber), _defineProperty(_properties, 'aria-hidden', true), _defineProperty(_properties, "className", ['euiCodeBlock__lineNumber', lineNumberStyles]), _properties),
|
|
170
|
+
children: []
|
|
171
|
+
}, {
|
|
172
|
+
type: 'element',
|
|
173
|
+
tagName: 'span',
|
|
174
|
+
properties: {
|
|
175
|
+
className: ['euiCodeBlock__lineText', lineTextStyles]
|
|
170
176
|
},
|
|
171
|
-
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
|
|
177
|
+
children: node
|
|
178
|
+
}];
|
|
179
|
+
}
|
|
180
|
+
|
|
175
181
|
wrapped.push({
|
|
176
182
|
type: 'element',
|
|
177
183
|
tagName: 'span',
|
|
178
184
|
properties: {
|
|
179
|
-
className: [
|
|
185
|
+
className: ['euiCodeBlock__line', lineStyles]
|
|
180
186
|
},
|
|
181
187
|
children: children
|
|
182
188
|
});
|
|
@@ -184,11 +190,11 @@ function wrapLines(nodes, options) {
|
|
|
184
190
|
return wrapped;
|
|
185
191
|
}
|
|
186
192
|
|
|
187
|
-
export var highlightByLine = function highlightByLine(children, language, data) {
|
|
193
|
+
export var highlightByLine = function highlightByLine(children, language, data, euiTheme) {
|
|
188
194
|
return wrapLines(addLineData(highlight(children, language), {
|
|
189
195
|
lineNumber: data.start
|
|
190
196
|
}), {
|
|
191
197
|
showLineNumbers: data.show,
|
|
192
198
|
highlight: data.highlight
|
|
193
|
-
});
|
|
199
|
+
}, euiTheme);
|
|
194
200
|
};
|
|
@@ -7,7 +7,7 @@ import _inherits from "@babel/runtime/helpers/inherits";
|
|
|
7
7
|
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
8
8
|
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
9
9
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
10
|
-
var _excluded = ["data-test-subj", "async", "className", "compressed", "customOptionText", "fullWidth", "id", "inputRef", "isClearable", "isDisabled", "isInvalid", "isLoading", "noSuggestions", "onBlur", "onChange", "onCreateOption", "onSearchChange", "options", "placeholder", "renderOption", "rowHeight", "selectedOptions", "singleSelection", "prepend", "sortMatchesBy", "delimiter", "append", "autoFocus", "aria-label", "aria-labelledby"];
|
|
10
|
+
var _excluded = ["data-test-subj", "async", "className", "compressed", "customOptionText", "fullWidth", "id", "inputRef", "isCaseSensitive", "isClearable", "isDisabled", "isInvalid", "isLoading", "noSuggestions", "onBlur", "onChange", "onCreateOption", "onSearchChange", "options", "placeholder", "renderOption", "rowHeight", "selectedOptions", "singleSelection", "prepend", "sortMatchesBy", "delimiter", "append", "autoFocus", "aria-label", "aria-labelledby"];
|
|
11
11
|
|
|
12
12
|
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; }
|
|
13
13
|
|
|
@@ -35,7 +35,7 @@ import { findPopoverPosition, htmlIdGenerator, keys } from '../../services';
|
|
|
35
35
|
import { EuiPortal } from '../portal';
|
|
36
36
|
import { EuiI18n } from '../i18n';
|
|
37
37
|
import { EuiComboBoxOptionsList } from './combo_box_options_list';
|
|
38
|
-
import { getMatchingOptions, flattenOptionGroups, getSelectedOptionForSearchValue } from './matching_options';
|
|
38
|
+
import { getMatchingOptions, flattenOptionGroups, getSelectedOptionForSearchValue, transformForCaseSensitivity } from './matching_options';
|
|
39
39
|
import { EuiComboBoxInput } from './combo_box_input/combo_box_input';
|
|
40
40
|
import { getElementZIndex } from '../../services/popover';
|
|
41
41
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
@@ -63,7 +63,15 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
63
63
|
listElement: null,
|
|
64
64
|
listPosition: 'bottom',
|
|
65
65
|
listZIndex: undefined,
|
|
66
|
-
matchingOptions: getMatchingOptions(
|
|
66
|
+
matchingOptions: getMatchingOptions({
|
|
67
|
+
options: _this.props.options,
|
|
68
|
+
selectedOptions: _this.props.selectedOptions,
|
|
69
|
+
searchValue: initialSearchValue,
|
|
70
|
+
isCaseSensitive: _this.props.isCaseSensitive,
|
|
71
|
+
isPreFiltered: _this.props.async,
|
|
72
|
+
showPrevSelected: Boolean(_this.props.singleSelection),
|
|
73
|
+
sortMatchesBy: _this.props.sortMatchesBy
|
|
74
|
+
}),
|
|
67
75
|
searchValue: initialSearchValue,
|
|
68
76
|
width: 0
|
|
69
77
|
});
|
|
@@ -282,6 +290,7 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
282
290
|
|
|
283
291
|
_defineProperty(_assertThisInitialized(_this), "addCustomOption", function (isContainerBlur, searchValue) {
|
|
284
292
|
var _this$props = _this.props,
|
|
293
|
+
isCaseSensitive = _this$props.isCaseSensitive,
|
|
285
294
|
onCreateOption = _this$props.onCreateOption,
|
|
286
295
|
options = _this$props.options,
|
|
287
296
|
selectedOptions = _this$props.selectedOptions,
|
|
@@ -304,7 +313,11 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
304
313
|
} // Don't create the value if it's already been selected.
|
|
305
314
|
|
|
306
315
|
|
|
307
|
-
if (getSelectedOptionForSearchValue(
|
|
316
|
+
if (getSelectedOptionForSearchValue({
|
|
317
|
+
isCaseSensitive: isCaseSensitive,
|
|
318
|
+
searchValue: searchValue,
|
|
319
|
+
selectedOptions: selectedOptions
|
|
320
|
+
})) {
|
|
308
321
|
return;
|
|
309
322
|
} // Add new custom pill if this is custom input, even if it partially matches an option.
|
|
310
323
|
|
|
@@ -330,14 +343,17 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
330
343
|
return false;
|
|
331
344
|
}
|
|
332
345
|
|
|
333
|
-
|
|
346
|
+
var normalizedSearchSubject = transformForCaseSensitivity(_this.state.matchingOptions[0].label, _this.props.isCaseSensitive);
|
|
347
|
+
var normalizedSearchValue = transformForCaseSensitivity(searchValue, _this.props.isCaseSensitive);
|
|
348
|
+
return normalizedSearchSubject === normalizedSearchValue;
|
|
334
349
|
});
|
|
335
350
|
|
|
336
351
|
_defineProperty(_assertThisInitialized(_this), "areAllOptionsSelected", function () {
|
|
337
352
|
var _this$props2 = _this.props,
|
|
338
353
|
options = _this$props2.options,
|
|
339
354
|
selectedOptions = _this$props2.selectedOptions,
|
|
340
|
-
async = _this$props2.async
|
|
355
|
+
async = _this$props2.async,
|
|
356
|
+
isCaseSensitive = _this$props2.isCaseSensitive; // Assume if this is async then there could be infinite options.
|
|
341
357
|
|
|
342
358
|
if (async) {
|
|
343
359
|
return false;
|
|
@@ -345,13 +361,13 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
345
361
|
|
|
346
362
|
var flattenOptions = flattenOptionGroups(options).map(function (option) {
|
|
347
363
|
return _objectSpread(_objectSpread({}, option), {}, {
|
|
348
|
-
label: option.label.trim()
|
|
364
|
+
label: transformForCaseSensitivity(option.label.trim(), isCaseSensitive)
|
|
349
365
|
});
|
|
350
366
|
});
|
|
351
367
|
var numberOfSelectedOptions = 0;
|
|
352
368
|
selectedOptions.forEach(function (_ref3) {
|
|
353
369
|
var label = _ref3.label;
|
|
354
|
-
var trimmedLabel = label.trim()
|
|
370
|
+
var trimmedLabel = transformForCaseSensitivity(label.trim(), isCaseSensitive);
|
|
355
371
|
if (flattenOptions.findIndex(function (option) {
|
|
356
372
|
return option.label === trimmedLabel;
|
|
357
373
|
}) !== -1) numberOfSelectedOptions += 1;
|
|
@@ -706,7 +722,15 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
706
722
|
// isn't called after a state change, and we track `searchValue` in state
|
|
707
723
|
// instead we need to react to a change in searchValue here
|
|
708
724
|
|
|
709
|
-
this.updateMatchingOptionsIfDifferent(getMatchingOptions(
|
|
725
|
+
this.updateMatchingOptionsIfDifferent(getMatchingOptions({
|
|
726
|
+
options: options,
|
|
727
|
+
selectedOptions: selectedOptions,
|
|
728
|
+
searchValue: searchValue,
|
|
729
|
+
isCaseSensitive: this.props.isCaseSensitive,
|
|
730
|
+
isPreFiltered: this.props.async,
|
|
731
|
+
showPrevSelected: Boolean(singleSelection),
|
|
732
|
+
sortMatchesBy: sortMatchesBy
|
|
733
|
+
}));
|
|
710
734
|
}
|
|
711
735
|
}, {
|
|
712
736
|
key: "componentWillUnmount",
|
|
@@ -727,6 +751,7 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
727
751
|
fullWidth = _this$props8.fullWidth,
|
|
728
752
|
id = _this$props8.id,
|
|
729
753
|
inputRef = _this$props8.inputRef,
|
|
754
|
+
isCaseSensitive = _this$props8.isCaseSensitive,
|
|
730
755
|
isClearable = _this$props8.isClearable,
|
|
731
756
|
isDisabled = _this$props8.isDisabled,
|
|
732
757
|
isInvalid = _this$props8.isInvalid,
|
|
@@ -792,6 +817,7 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
792
817
|
customOptionText: customOptionText,
|
|
793
818
|
"data-test-subj": optionsListDataTestSubj,
|
|
794
819
|
fullWidth: fullWidth,
|
|
820
|
+
isCaseSensitive: isCaseSensitive,
|
|
795
821
|
isLoading: isLoading,
|
|
796
822
|
listRef: _this3.listRefCallback,
|
|
797
823
|
matchingOptions: matchingOptions,
|
|
@@ -871,7 +897,9 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
871
897
|
}], [{
|
|
872
898
|
key: "getDerivedStateFromProps",
|
|
873
899
|
value: function getDerivedStateFromProps(nextProps, prevState) {
|
|
874
|
-
var
|
|
900
|
+
var async = nextProps.async,
|
|
901
|
+
isCaseSensitive = nextProps.isCaseSensitive,
|
|
902
|
+
options = nextProps.options,
|
|
875
903
|
selectedOptions = nextProps.selectedOptions,
|
|
876
904
|
singleSelection = nextProps.singleSelection,
|
|
877
905
|
sortMatchesBy = nextProps.sortMatchesBy;
|
|
@@ -879,7 +907,15 @@ export var EuiComboBox = /*#__PURE__*/function (_Component) {
|
|
|
879
907
|
searchValue = prevState.searchValue; // Calculate and cache the options which match the searchValue, because we use this information
|
|
880
908
|
// in multiple places and it would be expensive to calculate repeatedly.
|
|
881
909
|
|
|
882
|
-
var matchingOptions = getMatchingOptions(
|
|
910
|
+
var matchingOptions = getMatchingOptions({
|
|
911
|
+
options: options,
|
|
912
|
+
selectedOptions: selectedOptions,
|
|
913
|
+
searchValue: searchValue,
|
|
914
|
+
isCaseSensitive: isCaseSensitive,
|
|
915
|
+
isPreFiltered: async,
|
|
916
|
+
showPrevSelected: Boolean(singleSelection),
|
|
917
|
+
sortMatchesBy: sortMatchesBy
|
|
918
|
+
});
|
|
883
919
|
var stateUpdate = {
|
|
884
920
|
matchingOptions: matchingOptions
|
|
885
921
|
};
|