@elastic/eui 93.1.1 → 93.3.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 +3 -311
- package/dist/eui_theme_dark.min.css +1 -1
- package/dist/eui_theme_light.css +3 -311
- 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/in_memory_table.js +1 -1
- package/es/components/beacon/beacon.js +2 -3
- package/es/components/breadcrumbs/breadcrumb.js +9 -6
- package/es/components/breadcrumbs/breadcrumbs.js +4 -2
- package/es/components/button/button.js +1 -1
- package/es/components/button/button_display/_button_display.js +3 -4
- package/es/components/button/button_display/_button_display_content.js +1 -1
- package/es/components/button/button_empty/button_empty.js +3 -4
- package/es/components/button/button_group/button_group.js +4 -6
- package/es/components/button/button_group/button_group.styles.js +10 -13
- package/es/components/button/button_group/button_group_button.js +1 -1
- package/es/components/button/button_icon/button_icon.js +5 -6
- package/es/components/button/button_icon/button_icon.styles.js +11 -3
- package/es/components/call_out/call_out.js +1 -1
- package/es/components/card/card.js +2 -2
- package/es/components/card/card_select/card_select.js +1 -1
- package/es/components/code/code.js +2 -3
- package/es/components/code/code.styles.js +4 -2
- package/es/components/code/code_block.js +10 -12
- package/es/components/code/code_block.styles.js +6 -4
- package/es/components/code/code_block_controls.js +2 -3
- package/es/components/code/code_block_controls.styles.js +4 -2
- package/es/components/code/code_block_full_screen.js +2 -3
- package/es/components/code/code_syntax.styles.js +33 -38
- package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
- package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
- package/es/components/comment_list/comment.js +2 -2
- package/es/components/comment_list/comment_event.js +1 -1
- package/es/components/comment_list/comment_list.js +2 -2
- package/es/components/comment_list/comment_timeline.js +1 -1
- package/es/components/datagrid/body/cell/data_grid_cell.js +31 -27
- package/es/components/datagrid/body/cell/data_grid_cell_wrapper.js +4 -2
- package/es/components/datagrid/body/data_grid_body.js +14 -13
- package/es/components/datagrid/body/data_grid_body_custom.js +16 -13
- package/es/components/datagrid/body/data_grid_body_virtualized.js +16 -13
- package/es/components/datagrid/body/data_grid_row_manager.js +1 -1
- 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/controls/data_grid_toolbar_control.js +1 -1
- package/es/components/datagrid/data_grid.js +3 -1
- package/es/components/datagrid/utils/grid_height_width.js +4 -1
- 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/facet/facet_button.js +1 -1
- package/es/components/facet/facet_button.styles.js +1 -2
- 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_control_layout/form_control_layout.js +2 -2
- package/es/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
- package/es/components/form/form_control_layout/form_control_layout_icons.js +2 -2
- package/es/components/form/text_area/text_area.js +2 -2
- package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +4 -2
- package/es/components/header/header_links/header_link.js +1 -1
- package/es/components/header/header_links/header_links.js +1 -1
- package/es/components/header/header_logo/header_logo.js +1 -1
- package/es/components/header/header_section/header_section_item_button.js +1 -1
- package/es/components/icon/assets/diff.js +33 -0
- package/es/components/icon/assets/new_chat.js +37 -0
- package/es/components/icon/icon.js +14 -17
- package/es/components/icon/icon.styles.js +6 -9
- package/es/components/icon/icon_map.js +2 -0
- package/es/components/key_pad_menu/key_pad_menu_item.js +1 -1
- package/es/components/link/external_link_icon.js +11 -8
- package/es/components/link/link.js +2 -3
- package/es/components/link/link.styles.js +4 -10
- 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/page/page_header/page_header_content.js +5 -3
- package/es/components/page/page_sidebar/page_sidebar.js +8 -2
- package/es/components/page/page_sidebar/page_sidebar.styles.js +5 -1
- package/es/components/page_template/page_template.js +1 -1
- package/es/components/pagination/pagination_button.js +1 -1
- package/es/components/progress/progress.styles.js +2 -2
- 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/side_nav/_side_nav_heading.js +61 -0
- package/es/components/side_nav/side_nav.js +63 -88
- package/es/components/side_nav/side_nav.styles.js +35 -0
- package/es/components/side_nav/side_nav_item.js +51 -50
- package/es/components/side_nav/side_nav_item.styles.js +72 -0
- package/es/components/skeleton/skeleton_circle.js +2 -3
- package/es/components/skeleton/skeleton_rectangle.js +2 -3
- package/es/components/skeleton/skeleton_text.js +16 -12
- package/es/components/skeleton/skeleton_title.js +2 -3
- package/es/components/table/table_header_button.js +1 -1
- package/es/components/text/text.js +2 -3
- package/es/components/text/text_align.js +1 -2
- package/es/components/text/text_align.styles.js +5 -7
- package/es/components/text/text_color.js +2 -3
- package/es/components/timeline/timeline_item_icon.js +1 -1
- package/es/components/title/title.js +2 -3
- package/es/components/title/title.styles.js +0 -7
- 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/global_styling/mixins/_typography.js +17 -6
- package/es/services/theme/index.js +1 -0
- package/es/services/theme/provider.js +2 -1
- package/es/services/theme/style_memoization.js +98 -0
- package/es/themes/amsterdam/global_styling/mixins/button.js +47 -24
- package/eui.d.ts +238 -112
- package/i18ntokens.json +62 -44
- 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/in_memory_table.js +1 -1
- package/lib/components/beacon/beacon.js +1 -2
- package/lib/components/breadcrumbs/breadcrumb.js +9 -6
- package/lib/components/breadcrumbs/breadcrumbs.js +4 -2
- package/lib/components/button/button.js +1 -1
- package/lib/components/button/button_display/_button_display.js +2 -3
- package/lib/components/button/button_display/_button_display_content.js +1 -1
- package/lib/components/button/button_empty/button_empty.js +2 -3
- package/lib/components/button/button_group/button_group.js +3 -5
- package/lib/components/button/button_group/button_group.styles.js +10 -13
- package/lib/components/button/button_group/button_group_button.js +1 -1
- package/lib/components/button/button_icon/button_icon.js +4 -5
- package/lib/components/button/button_icon/button_icon.styles.js +10 -2
- package/lib/components/call_out/call_out.js +1 -1
- package/lib/components/card/card.js +2 -2
- package/lib/components/card/card_select/card_select.js +1 -1
- package/lib/components/code/code.js +1 -2
- package/lib/components/code/code.styles.js +4 -2
- package/lib/components/code/code_block.js +9 -11
- package/lib/components/code/code_block.styles.js +6 -4
- package/lib/components/code/code_block_controls.js +1 -2
- package/lib/components/code/code_block_controls.styles.js +4 -2
- package/lib/components/code/code_block_full_screen.js +1 -2
- package/lib/components/code/code_syntax.styles.js +34 -39
- package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
- package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
- package/lib/components/comment_list/comment.js +2 -2
- package/lib/components/comment_list/comment_event.js +1 -1
- package/lib/components/comment_list/comment_list.js +2 -2
- package/lib/components/comment_list/comment_timeline.js +1 -1
- package/lib/components/datagrid/body/cell/data_grid_cell.js +31 -27
- package/lib/components/datagrid/body/cell/data_grid_cell_wrapper.js +4 -2
- package/lib/components/datagrid/body/data_grid_body.js +14 -13
- package/lib/components/datagrid/body/data_grid_body_custom.js +16 -13
- package/lib/components/datagrid/body/data_grid_body_virtualized.js +16 -13
- package/lib/components/datagrid/body/data_grid_row_manager.js +1 -1
- 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/controls/data_grid_toolbar_control.js +1 -1
- package/lib/components/datagrid/data_grid.js +3 -1
- package/lib/components/datagrid/utils/grid_height_width.js +4 -1
- 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/facet/facet_button.js +1 -1
- package/lib/components/facet/facet_button.styles.js +1 -2
- 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_control_layout/form_control_layout.js +2 -2
- package/lib/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
- package/lib/components/form/form_control_layout/form_control_layout_icons.js +2 -2
- package/lib/components/form/text_area/text_area.js +2 -2
- package/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +4 -2
- package/lib/components/header/header_links/header_link.js +1 -1
- package/lib/components/header/header_links/header_links.js +1 -1
- package/lib/components/header/header_logo/header_logo.js +1 -1
- package/lib/components/header/header_section/header_section_item_button.js +1 -1
- package/lib/components/icon/assets/diff.js +41 -0
- package/lib/components/icon/assets/new_chat.js +45 -0
- package/lib/components/icon/icon.js +13 -16
- package/lib/components/icon/icon.styles.js +5 -8
- package/lib/components/icon/icon_map.js +2 -0
- package/lib/components/icon/svgs/diff.svg +1 -0
- package/lib/components/icon/svgs/new_chat.svg +4 -0
- package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -1
- package/lib/components/link/external_link_icon.js +10 -7
- package/lib/components/link/link.js +1 -2
- package/lib/components/link/link.styles.js +6 -14
- 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/page/page_header/page_header_content.js +5 -3
- package/lib/components/page/page_sidebar/page_sidebar.js +8 -2
- package/lib/components/page/page_sidebar/page_sidebar.styles.js +5 -1
- package/lib/components/page_template/page_template.js +1 -1
- package/lib/components/pagination/pagination_button.js +1 -1
- package/lib/components/progress/progress.styles.js +1 -1
- package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
- package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
- package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
- package/lib/components/side_nav/_side_nav_heading.js +67 -0
- package/lib/components/side_nav/side_nav.js +65 -89
- package/lib/components/side_nav/side_nav.styles.js +40 -0
- package/lib/components/side_nav/side_nav_item.js +51 -49
- package/lib/components/side_nav/side_nav_item.styles.js +78 -0
- package/lib/components/skeleton/skeleton_circle.js +1 -2
- package/lib/components/skeleton/skeleton_rectangle.js +1 -2
- package/lib/components/skeleton/skeleton_text.js +18 -11
- package/lib/components/skeleton/skeleton_title.js +1 -2
- package/lib/components/table/table_header_button.js +1 -1
- package/lib/components/text/text.js +1 -2
- package/lib/components/text/text_align.js +1 -2
- package/lib/components/text/text_align.styles.js +5 -7
- package/lib/components/text/text_color.js +1 -2
- package/lib/components/timeline/timeline_item_icon.js +1 -1
- package/lib/components/title/title.js +1 -2
- package/lib/components/title/title.styles.js +2 -10
- 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/global_styling/mixins/_typography.js +27 -19
- package/lib/services/theme/index.js +13 -0
- package/lib/services/theme/provider.js +2 -1
- package/lib/services/theme/style_memoization.js +106 -0
- package/lib/themes/amsterdam/global_styling/mixins/button.js +49 -25
- package/optimize/es/components/beacon/beacon.js +2 -3
- package/optimize/es/components/breadcrumbs/breadcrumb.js +5 -4
- package/optimize/es/components/button/button_display/_button_display.js +2 -3
- package/optimize/es/components/button/button_empty/button_empty.js +2 -3
- package/optimize/es/components/button/button_group/button_group.js +3 -5
- package/optimize/es/components/button/button_group/button_group.styles.js +10 -13
- package/optimize/es/components/button/button_icon/button_icon.js +4 -5
- package/optimize/es/components/button/button_icon/button_icon.styles.js +8 -3
- package/optimize/es/components/code/code.js +2 -3
- package/optimize/es/components/code/code.styles.js +4 -2
- package/optimize/es/components/code/code_block.js +10 -12
- package/optimize/es/components/code/code_block.styles.js +6 -4
- package/optimize/es/components/code/code_block_controls.js +2 -3
- package/optimize/es/components/code/code_block_controls.styles.js +4 -2
- package/optimize/es/components/code/code_block_full_screen.js +2 -3
- package/optimize/es/components/code/code_syntax.styles.js +33 -38
- package/optimize/es/components/datagrid/body/cell/data_grid_cell.js +5 -3
- package/optimize/es/components/datagrid/body/cell/data_grid_cell_wrapper.js +4 -2
- package/optimize/es/components/datagrid/body/data_grid_body_custom.js +2 -0
- package/optimize/es/components/datagrid/body/data_grid_body_virtualized.js +2 -0
- package/optimize/es/components/datagrid/body/data_grid_row_manager.js +1 -1
- package/optimize/es/components/datagrid/data_grid.js +3 -1
- package/optimize/es/components/datagrid/utils/grid_height_width.js +4 -1
- package/optimize/es/components/facet/facet_button.styles.js +1 -2
- package/optimize/es/components/icon/assets/diff.js +32 -0
- package/optimize/es/components/icon/assets/new_chat.js +36 -0
- package/optimize/es/components/icon/icon.js +13 -16
- package/optimize/es/components/icon/icon.styles.js +6 -9
- package/optimize/es/components/icon/icon_map.js +2 -0
- package/optimize/es/components/link/external_link_icon.js +11 -8
- package/optimize/es/components/link/link.js +2 -3
- package/optimize/es/components/link/link.styles.js +4 -10
- package/optimize/es/components/page/page_sidebar/page_sidebar.js +4 -2
- package/optimize/es/components/page/page_sidebar/page_sidebar.styles.js +5 -1
- package/optimize/es/components/page_template/page_template.js +1 -1
- package/optimize/es/components/progress/progress.styles.js +2 -2
- package/optimize/es/components/side_nav/_side_nav_heading.js +47 -0
- package/optimize/es/components/side_nav/side_nav.js +61 -72
- package/optimize/es/components/side_nav/side_nav.styles.js +35 -0
- package/optimize/es/components/side_nav/side_nav_item.js +51 -50
- package/optimize/es/components/side_nav/side_nav_item.styles.js +69 -0
- package/optimize/es/components/skeleton/skeleton_circle.js +2 -3
- package/optimize/es/components/skeleton/skeleton_rectangle.js +2 -3
- package/optimize/es/components/skeleton/skeleton_text.js +16 -12
- package/optimize/es/components/skeleton/skeleton_title.js +2 -3
- package/optimize/es/components/text/text.js +2 -3
- package/optimize/es/components/text/text_align.js +1 -2
- package/optimize/es/components/text/text_align.styles.js +5 -7
- package/optimize/es/components/text/text_color.js +2 -3
- package/optimize/es/components/title/title.js +2 -3
- package/optimize/es/components/title/title.styles.js +0 -7
- package/optimize/es/global_styling/mixins/_typography.js +14 -6
- package/optimize/es/services/theme/index.js +1 -0
- package/optimize/es/services/theme/provider.js +2 -1
- package/optimize/es/services/theme/style_memoization.js +93 -0
- package/optimize/es/themes/amsterdam/global_styling/mixins/button.js +47 -24
- package/optimize/lib/components/beacon/beacon.js +1 -2
- package/optimize/lib/components/breadcrumbs/breadcrumb.js +5 -4
- package/optimize/lib/components/button/button_display/_button_display.js +1 -2
- package/optimize/lib/components/button/button_empty/button_empty.js +1 -2
- package/optimize/lib/components/button/button_group/button_group.js +2 -4
- package/optimize/lib/components/button/button_group/button_group.styles.js +10 -13
- package/optimize/lib/components/button/button_icon/button_icon.js +3 -4
- package/optimize/lib/components/button/button_icon/button_icon.styles.js +8 -2
- package/optimize/lib/components/code/code.js +1 -2
- package/optimize/lib/components/code/code.styles.js +4 -2
- package/optimize/lib/components/code/code_block.js +9 -11
- package/optimize/lib/components/code/code_block.styles.js +6 -4
- package/optimize/lib/components/code/code_block_controls.js +1 -2
- package/optimize/lib/components/code/code_block_controls.styles.js +4 -2
- package/optimize/lib/components/code/code_block_full_screen.js +1 -2
- package/optimize/lib/components/code/code_syntax.styles.js +34 -39
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell.js +5 -3
- package/optimize/lib/components/datagrid/body/cell/data_grid_cell_wrapper.js +4 -2
- package/optimize/lib/components/datagrid/body/data_grid_body_custom.js +2 -0
- package/optimize/lib/components/datagrid/body/data_grid_body_virtualized.js +2 -0
- package/optimize/lib/components/datagrid/body/data_grid_row_manager.js +1 -1
- package/optimize/lib/components/datagrid/data_grid.js +3 -1
- package/optimize/lib/components/datagrid/utils/grid_height_width.js +4 -1
- package/optimize/lib/components/facet/facet_button.styles.js +1 -2
- package/optimize/lib/components/icon/assets/diff.js +41 -0
- package/optimize/lib/components/icon/assets/new_chat.js +45 -0
- package/optimize/lib/components/icon/icon.js +12 -15
- package/optimize/lib/components/icon/icon.styles.js +5 -8
- package/optimize/lib/components/icon/icon_map.js +2 -0
- package/optimize/lib/components/icon/svgs/diff.svg +1 -0
- package/optimize/lib/components/icon/svgs/new_chat.svg +4 -0
- package/optimize/lib/components/link/external_link_icon.js +10 -7
- package/optimize/lib/components/link/link.js +1 -2
- package/optimize/lib/components/link/link.styles.js +6 -14
- package/optimize/lib/components/page/page_sidebar/page_sidebar.js +4 -2
- package/optimize/lib/components/page/page_sidebar/page_sidebar.styles.js +5 -1
- package/optimize/lib/components/page_template/page_template.js +1 -1
- package/optimize/lib/components/progress/progress.styles.js +1 -1
- package/optimize/lib/components/side_nav/_side_nav_heading.js +53 -0
- package/optimize/lib/components/side_nav/side_nav.js +63 -73
- package/optimize/lib/components/side_nav/side_nav.styles.js +40 -0
- package/optimize/lib/components/side_nav/side_nav_item.js +51 -49
- package/optimize/lib/components/side_nav/side_nav_item.styles.js +76 -0
- package/optimize/lib/components/skeleton/skeleton_circle.js +1 -2
- package/optimize/lib/components/skeleton/skeleton_rectangle.js +1 -2
- package/optimize/lib/components/skeleton/skeleton_text.js +18 -11
- package/optimize/lib/components/skeleton/skeleton_title.js +1 -2
- package/optimize/lib/components/text/text.js +1 -2
- package/optimize/lib/components/text/text_align.js +1 -2
- package/optimize/lib/components/text/text_align.styles.js +5 -7
- package/optimize/lib/components/text/text_color.js +1 -2
- package/optimize/lib/components/title/title.js +1 -2
- package/optimize/lib/components/title/title.styles.js +2 -10
- package/optimize/lib/global_styling/mixins/_typography.js +25 -19
- package/optimize/lib/services/theme/index.js +13 -0
- package/optimize/lib/services/theme/provider.js +2 -1
- package/optimize/lib/services/theme/style_memoization.js +106 -0
- package/optimize/lib/themes/amsterdam/global_styling/mixins/button.js +49 -26
- package/package.json +3 -3
- package/src/components/datagrid/_data_grid_data_row.scss +4 -0
- package/src/components/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/in_memory_table.js +1 -1
- package/test-env/components/beacon/beacon.js +1 -2
- package/test-env/components/breadcrumbs/breadcrumb.js +9 -6
- package/test-env/components/breadcrumbs/breadcrumbs.js +4 -2
- package/test-env/components/button/button.js +1 -1
- package/test-env/components/button/button_display/_button_display.js +2 -3
- package/test-env/components/button/button_display/_button_display_content.js +1 -1
- package/test-env/components/button/button_empty/button_empty.js +2 -3
- package/test-env/components/button/button_group/button_group.js +3 -5
- package/test-env/components/button/button_group/button_group.styles.js +10 -13
- package/test-env/components/button/button_group/button_group_button.js +1 -1
- package/test-env/components/button/button_icon/button_icon.js +4 -5
- package/test-env/components/button/button_icon/button_icon.styles.js +8 -2
- package/test-env/components/call_out/call_out.js +1 -1
- package/test-env/components/card/card.js +2 -2
- package/test-env/components/card/card_select/card_select.js +1 -1
- package/test-env/components/code/code.styles.js +4 -2
- package/test-env/components/code/code_block.styles.js +6 -4
- package/test-env/components/code/code_block_controls.js +1 -2
- package/test-env/components/code/code_block_controls.styles.js +4 -2
- package/test-env/components/code/code_block_full_screen.js +1 -2
- package/test-env/components/code/code_syntax.styles.js +34 -39
- package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +1 -1
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +2 -2
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +2 -2
- package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +4 -4
- package/test-env/components/comment_list/comment.js +2 -2
- package/test-env/components/comment_list/comment_event.js +1 -1
- package/test-env/components/comment_list/comment_list.js +2 -2
- package/test-env/components/comment_list/comment_timeline.js +1 -1
- package/test-env/components/datagrid/body/cell/data_grid_cell.js +31 -27
- package/test-env/components/datagrid/body/cell/data_grid_cell_wrapper.js +4 -2
- package/test-env/components/datagrid/body/data_grid_body.js +14 -13
- package/test-env/components/datagrid/body/data_grid_body_custom.js +16 -13
- package/test-env/components/datagrid/body/data_grid_body_virtualized.js +16 -13
- package/test-env/components/datagrid/body/data_grid_row_manager.js +1 -1
- 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/controls/data_grid_toolbar_control.js +1 -1
- package/test-env/components/datagrid/data_grid.js +3 -1
- package/test-env/components/datagrid/utils/grid_height_width.js +4 -1
- 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/facet/facet_button.js +1 -1
- package/test-env/components/facet/facet_button.styles.js +1 -2
- 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_control_layout/form_control_layout.js +2 -2
- package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
- package/test-env/components/form/form_control_layout/form_control_layout_icons.js +2 -2
- package/test-env/components/form/text_area/text_area.js +2 -2
- package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.js +4 -2
- package/test-env/components/header/header_links/header_link.js +1 -1
- package/test-env/components/header/header_links/header_links.js +1 -1
- package/test-env/components/header/header_logo/header_logo.js +1 -1
- package/test-env/components/header/header_section/header_section_item_button.js +1 -1
- package/test-env/components/icon/assets/diff.js +41 -0
- package/test-env/components/icon/assets/new_chat.js +45 -0
- package/test-env/components/icon/icon.styles.js +5 -8
- package/test-env/components/icon/icon_map.js +2 -0
- package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
- package/test-env/components/link/external_link_icon.js +10 -7
- package/test-env/components/link/link.js +1 -2
- package/test-env/components/link/link.styles.js +6 -14
- 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/page/page_header/page_header_content.js +5 -3
- package/test-env/components/page/page_sidebar/page_sidebar.js +8 -2
- package/test-env/components/page/page_sidebar/page_sidebar.styles.js +5 -1
- package/test-env/components/page_template/page_template.js +1 -1
- package/test-env/components/pagination/pagination_button.js +1 -1
- package/test-env/components/progress/progress.styles.js +1 -1
- package/test-env/components/selectable/selectable_list/selectable_list.js +1 -1
- package/test-env/components/selectable/selectable_list/selectable_list_item.js +1 -1
- package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
- package/test-env/components/side_nav/_side_nav_heading.js +66 -0
- package/test-env/components/side_nav/side_nav.js +65 -89
- package/test-env/components/side_nav/side_nav.styles.js +40 -0
- package/test-env/components/side_nav/side_nav_item.js +51 -49
- package/test-env/components/side_nav/side_nav_item.styles.js +76 -0
- package/test-env/components/skeleton/skeleton_circle.js +1 -2
- package/test-env/components/skeleton/skeleton_rectangle.js +1 -2
- package/test-env/components/skeleton/skeleton_text.js +18 -11
- package/test-env/components/skeleton/skeleton_title.js +1 -2
- package/test-env/components/table/table_header_button.js +1 -1
- package/test-env/components/text/text.js +1 -2
- package/test-env/components/text/text_align.js +1 -2
- package/test-env/components/text/text_align.styles.js +5 -7
- package/test-env/components/text/text_color.js +1 -2
- package/test-env/components/timeline/timeline_item_icon.js +1 -1
- package/test-env/components/title/title.js +1 -2
- package/test-env/components/title/title.styles.js +2 -10
- 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/global_styling/mixins/_typography.js +25 -19
- package/test-env/services/theme/index.js +13 -0
- package/test-env/services/theme/provider.js +2 -1
- package/test-env/services/theme/style_memoization.js +106 -0
- package/test-env/themes/amsterdam/global_styling/mixins/button.js +49 -26
- package/src/components/side_nav/_index.scss +0 -5
- package/src/components/side_nav/_mixins.scss +0 -7
- package/src/components/side_nav/_side_nav.scss +0 -47
- package/src/components/side_nav/_side_nav_item.scss +0 -181
- package/src/components/side_nav/_variables.scss +0 -15
- package/src/themes/amsterdam/overrides/_side_nav.scss +0 -17
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
6
|
-
exports.
|
|
7
|
+
exports.useEuiFontSize = exports.euiTextTruncate = exports.euiTextBreakWord = exports.euiNumberFormat = exports.euiFontSize = void 0;
|
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
7
9
|
var _typography = require("../functions/typography");
|
|
8
|
-
var
|
|
10
|
+
var _theme = require("../../services/theme");
|
|
11
|
+
var _typography2 = require("../variables/typography");
|
|
9
12
|
var _functions = require("../functions");
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
14
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } /*
|
|
15
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
16
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
17
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
18
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
19
|
+
* Side Public License, v 1.
|
|
20
|
+
*/
|
|
18
21
|
/**
|
|
19
22
|
* Returns font-size and line-height
|
|
20
23
|
*/
|
|
@@ -27,15 +30,23 @@ var euiFontSize = function euiFontSize(_ref, scale, options) {
|
|
|
27
30
|
};
|
|
28
31
|
exports.euiFontSize = euiFontSize;
|
|
29
32
|
var useEuiFontSize = function useEuiFontSize(scale, options) {
|
|
30
|
-
var euiTheme = (0,
|
|
31
|
-
|
|
33
|
+
var euiTheme = (0, _theme.useEuiTheme)();
|
|
34
|
+
var memoizedFontSizes = (0, _theme.useEuiMemoizedStyles)(euiFontSizes);
|
|
35
|
+
return !options ? memoizedFontSizes[scale] : euiFontSize(euiTheme, scale, options);
|
|
36
|
+
};
|
|
37
|
+
// Memomize a basic set of font sizes. We unfortunately can't
|
|
38
|
+
// memoize all possible options, there's too many permutations
|
|
39
|
+
exports.useEuiFontSize = useEuiFontSize;
|
|
40
|
+
var euiFontSizes = function euiFontSizes(euiThemeContext) {
|
|
41
|
+
return _typography2.EuiThemeFontScales.reduce(function (map, scale) {
|
|
42
|
+
return _objectSpread(_objectSpread({}, map), {}, (0, _defineProperty2.default)({}, scale, euiFontSize(euiThemeContext, scale)));
|
|
43
|
+
}, {});
|
|
32
44
|
};
|
|
33
45
|
|
|
34
46
|
/**
|
|
35
47
|
* Force text to wrap on natural word breaks (e.g. spaces & hyphens)
|
|
36
48
|
* https://css-tricks.com/snippets/css/prevent-long-urls-from-breaking-out-of-container/
|
|
37
49
|
*/
|
|
38
|
-
exports.useEuiFontSize = useEuiFontSize;
|
|
39
50
|
var euiTextBreakWord = function euiTextBreakWord() {
|
|
40
51
|
return "\n overflow-wrap: break-word !important; // makes sure the long string will wrap and not bust out of the container\n word-break: break-word;\n";
|
|
41
52
|
};
|
|
@@ -58,9 +69,4 @@ var euiNumberFormat = function euiNumberFormat(_ref2) {
|
|
|
58
69
|
var euiTheme = _ref2.euiTheme;
|
|
59
70
|
return "\n font-feature-settings: ".concat(euiTheme.font.featureSettings, ", 'tnum' 1;\n");
|
|
60
71
|
};
|
|
61
|
-
exports.euiNumberFormat = euiNumberFormat;
|
|
62
|
-
var useEuiNumberFormat = function useEuiNumberFormat() {
|
|
63
|
-
var euiTheme = (0, _hooks.useEuiTheme)();
|
|
64
|
-
return euiNumberFormat(euiTheme);
|
|
65
|
-
};
|
|
66
|
-
exports.useEuiNumberFormat = useEuiNumberFormat;
|
|
72
|
+
exports.euiNumberFormat = euiNumberFormat;
|
|
@@ -117,6 +117,12 @@ Object.defineProperty(exports, "setOn", {
|
|
|
117
117
|
return _utils.setOn;
|
|
118
118
|
}
|
|
119
119
|
});
|
|
120
|
+
Object.defineProperty(exports, "useEuiMemoizedStyles", {
|
|
121
|
+
enumerable: true,
|
|
122
|
+
get: function get() {
|
|
123
|
+
return _style_memoization.useEuiMemoizedStyles;
|
|
124
|
+
}
|
|
125
|
+
});
|
|
120
126
|
Object.defineProperty(exports, "useEuiTheme", {
|
|
121
127
|
enumerable: true,
|
|
122
128
|
get: function get() {
|
|
@@ -129,6 +135,12 @@ Object.defineProperty(exports, "useEuiThemeCSSVariables", {
|
|
|
129
135
|
return _hooks.useEuiThemeCSSVariables;
|
|
130
136
|
}
|
|
131
137
|
});
|
|
138
|
+
Object.defineProperty(exports, "withEuiStylesMemoizer", {
|
|
139
|
+
enumerable: true,
|
|
140
|
+
get: function get() {
|
|
141
|
+
return _style_memoization.withEuiStylesMemoizer;
|
|
142
|
+
}
|
|
143
|
+
});
|
|
132
144
|
Object.defineProperty(exports, "withEuiTheme", {
|
|
133
145
|
enumerable: true,
|
|
134
146
|
get: function get() {
|
|
@@ -138,6 +150,7 @@ Object.defineProperty(exports, "withEuiTheme", {
|
|
|
138
150
|
var _context = require("./context");
|
|
139
151
|
var _hooks = require("./hooks");
|
|
140
152
|
var _provider = require("./provider");
|
|
153
|
+
var _style_memoization = require("./style_memoization");
|
|
141
154
|
var _warning = require("./warning");
|
|
142
155
|
var _utils = require("./utils");
|
|
143
156
|
var _types = require("./types");
|
|
@@ -18,6 +18,7 @@ var _emotion = require("../emotion");
|
|
|
18
18
|
var _css2 = require("../emotion/css");
|
|
19
19
|
var _context = require("./context");
|
|
20
20
|
var _emotion2 = require("./emotion");
|
|
21
|
+
var _style_memoization = require("./style_memoization");
|
|
21
22
|
var _utils = require("./utils");
|
|
22
23
|
var _excluded = ["cloneElement", "className"];
|
|
23
24
|
var _templateObject;
|
|
@@ -161,6 +162,6 @@ var EuiThemeProvider = function EuiThemeProvider(_ref) {
|
|
|
161
162
|
value: theme
|
|
162
163
|
}, (0, _react.jsx)(_context.EuiNestedThemeContext.Provider, {
|
|
163
164
|
value: nestedThemeContext
|
|
164
|
-
}, (0, _react.jsx)(_emotion2.EuiEmotionThemeProvider, null, renderedChildren)))))));
|
|
165
|
+
}, (0, _react.jsx)(_style_memoization.EuiThemeMemoizedStylesProvider, null, (0, _react.jsx)(_emotion2.EuiEmotionThemeProvider, null, renderedChildren))))))));
|
|
165
166
|
};
|
|
166
167
|
exports.EuiThemeProvider = EuiThemeProvider;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.withEuiStylesMemoizer = exports.useEuiMemoizedStyles = exports.EuiThemeMemoizedStylesProvider = exports.EuiThemeMemoizedStylesContext = void 0;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _hooks = require("../hooks");
|
|
13
|
+
var _hooks2 = require("./hooks");
|
|
14
|
+
var _react2 = require("@emotion/react");
|
|
15
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
16
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
17
|
+
/*
|
|
18
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
19
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
20
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
21
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
22
|
+
* Side Public License, v 1.
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
// NOTE: We're specifically using a WeakMap instead of a Map in order to allow
|
|
26
|
+
// unmounted components to have their styles garbage-collected by the browser
|
|
27
|
+
// @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap
|
|
28
|
+
|
|
29
|
+
var EuiThemeMemoizedStylesContext = /*#__PURE__*/(0, _react.createContext)(new WeakMap());
|
|
30
|
+
exports.EuiThemeMemoizedStylesContext = EuiThemeMemoizedStylesContext;
|
|
31
|
+
var EuiThemeMemoizedStylesProvider = function EuiThemeMemoizedStylesProvider(_ref) {
|
|
32
|
+
var children = _ref.children;
|
|
33
|
+
// Note: we *should not* use `useMemo` instead of `useState` here, as useMemo is not guaranteed
|
|
34
|
+
// and its cache can get thrown away by React (https://react.dev/reference/react/useMemo#caveats)
|
|
35
|
+
var _useState = (0, _react.useState)(new WeakMap()),
|
|
36
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
37
|
+
componentStyles = _useState2[0],
|
|
38
|
+
rerenderStyles = _useState2[1];
|
|
39
|
+
|
|
40
|
+
// On theme update, wipe the map, which causes the below hook to recompute all styles
|
|
41
|
+
var _useEuiTheme = (0, _hooks2.useEuiTheme)(),
|
|
42
|
+
euiTheme = _useEuiTheme.euiTheme;
|
|
43
|
+
(0, _hooks.useUpdateEffect)(function () {
|
|
44
|
+
rerenderStyles(new WeakMap());
|
|
45
|
+
}, [euiTheme]);
|
|
46
|
+
return (0, _react2.jsx)(EuiThemeMemoizedStylesContext.Provider, {
|
|
47
|
+
value: componentStyles
|
|
48
|
+
}, children);
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Internal util primarily responsible for getting the memoized styles (if they exist)
|
|
53
|
+
* and if not, generating and setting the styles. DRYed out to facilitate usage
|
|
54
|
+
* between both hook/function components and HOC/class components
|
|
55
|
+
*/
|
|
56
|
+
exports.EuiThemeMemoizedStylesProvider = EuiThemeMemoizedStylesProvider;
|
|
57
|
+
var getMemoizedStyles = function getMemoizedStyles(stylesGenerator, stylesMap, euiThemeContext) {
|
|
58
|
+
if (!stylesGenerator.name) {
|
|
59
|
+
throw new Error('Styles are memoized per function. Your style functions must be statically defined in order to not create a new map entry every rerender.');
|
|
60
|
+
}
|
|
61
|
+
var existingStyles = stylesMap.get(stylesGenerator);
|
|
62
|
+
if (existingStyles) {
|
|
63
|
+
return existingStyles;
|
|
64
|
+
} else {
|
|
65
|
+
var generatedStyles = stylesGenerator(euiThemeContext);
|
|
66
|
+
stylesMap.set(stylesGenerator, generatedStyles);
|
|
67
|
+
return generatedStyles;
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Hook that memoizes the returned values of components style fns/generators
|
|
73
|
+
* per-theme
|
|
74
|
+
*/
|
|
75
|
+
var useEuiMemoizedStyles = function useEuiMemoizedStyles(stylesGenerator) {
|
|
76
|
+
var memoizedStyles = (0, _react.useContext)(EuiThemeMemoizedStylesContext);
|
|
77
|
+
var euiThemeContext = (0, _hooks2.useEuiTheme)();
|
|
78
|
+
var memoizedComponentStyles = (0, _react.useMemo)(function () {
|
|
79
|
+
return getMemoizedStyles(stylesGenerator, memoizedStyles, euiThemeContext);
|
|
80
|
+
}, [stylesGenerator, memoizedStyles, euiThemeContext]);
|
|
81
|
+
return memoizedComponentStyles;
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* HOC for class components
|
|
86
|
+
* Syntax is mostly copied from withEuiTheme HOC
|
|
87
|
+
*/
|
|
88
|
+
exports.useEuiMemoizedStyles = useEuiMemoizedStyles;
|
|
89
|
+
var withEuiStylesMemoizer = function withEuiStylesMemoizer(Component) {
|
|
90
|
+
var componentName = Component.displayName || Component.name || 'ComponentWithStylesMemoizer';
|
|
91
|
+
var Render = function Render(props, ref) {
|
|
92
|
+
var memoizedStyles = (0, _react.useContext)(EuiThemeMemoizedStylesContext);
|
|
93
|
+
var euiThemeContext = (0, _hooks2.useEuiTheme)();
|
|
94
|
+
var stylesMemoizer = (0, _react.useCallback)(function (stylesGenerator) {
|
|
95
|
+
return getMemoizedStyles(stylesGenerator, memoizedStyles, euiThemeContext);
|
|
96
|
+
}, [memoizedStyles, euiThemeContext]);
|
|
97
|
+
return (0, _react2.jsx)(Component, (0, _extends2.default)({
|
|
98
|
+
stylesMemoizer: stylesMemoizer,
|
|
99
|
+
ref: ref
|
|
100
|
+
}, props));
|
|
101
|
+
};
|
|
102
|
+
var WithEuiStylesMemoizer = /*#__PURE__*/(0, _react.forwardRef)(Render);
|
|
103
|
+
WithEuiStylesMemoizer.displayName = componentName;
|
|
104
|
+
return WithEuiStylesMemoizer;
|
|
105
|
+
};
|
|
106
|
+
exports.withEuiStylesMemoizer = withEuiStylesMemoizer;
|
|
@@ -4,11 +4,13 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.useEuiButtonFocusCSS = exports.useEuiButtonColorCSS = exports.euiButtonSizeMap = exports.euiButtonFillColor = exports.euiButtonEmptyColor = exports.euiButtonColor = exports.BUTTON_COLORS = void 0;
|
|
7
|
+
exports.useEuiButtonFocusCSS = exports.useEuiButtonColorCSS = exports.euiButtonSizeMap = exports.euiButtonFillColor = exports.euiButtonEmptyColor = exports.euiButtonColor = exports.BUTTON_DISPLAYS = exports.BUTTON_COLORS = void 0;
|
|
8
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
8
9
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
10
|
var _react = require("@emotion/react");
|
|
10
11
|
var _global_styling = require("../../../../global_styling");
|
|
11
12
|
var _services = require("../../../../services");
|
|
13
|
+
var _templateObject;
|
|
12
14
|
/*
|
|
13
15
|
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
14
16
|
* or more contributor license agreements. Licensed under the Elastic License
|
|
@@ -16,9 +18,10 @@ var _services = require("../../../../services");
|
|
|
16
18
|
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
17
19
|
* Side Public License, v 1.
|
|
18
20
|
*/
|
|
19
|
-
|
|
20
21
|
var BUTTON_COLORS = ['text', 'accent', 'primary', 'success', 'warning', 'danger'];
|
|
21
22
|
exports.BUTTON_COLORS = BUTTON_COLORS;
|
|
23
|
+
var BUTTON_DISPLAYS = ['base', 'fill', 'empty'];
|
|
24
|
+
exports.BUTTON_DISPLAYS = BUTTON_DISPLAYS;
|
|
22
25
|
/**
|
|
23
26
|
* Creates the `base` version of button styles with proper text contrast.
|
|
24
27
|
* @param euiThemeContext
|
|
@@ -139,43 +142,63 @@ var euiButtonEmptyColor = function euiButtonEmptyColor(euiThemeContext, color) {
|
|
|
139
142
|
exports.euiButtonEmptyColor = euiButtonEmptyColor;
|
|
140
143
|
var useEuiButtonColorCSS = function useEuiButtonColorCSS() {
|
|
141
144
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
142
|
-
var
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
145
|
+
var _options$display = options.display,
|
|
146
|
+
display = _options$display === void 0 ? 'base' : _options$display;
|
|
147
|
+
var colorsDisplaysMap = (0, _services.useEuiMemoizedStyles)(euiButtonDisplaysColors);
|
|
148
|
+
return colorsDisplaysMap[display];
|
|
149
|
+
};
|
|
150
|
+
exports.useEuiButtonColorCSS = useEuiButtonColorCSS;
|
|
151
|
+
var euiButtonDisplaysColors = function euiButtonDisplaysColors(euiThemeContext) {
|
|
152
|
+
var COLORS = [].concat(BUTTON_COLORS, ['disabled']);
|
|
153
|
+
var displaysColorsMap = {};
|
|
154
|
+
BUTTON_DISPLAYS.forEach(function (display) {
|
|
155
|
+
displaysColorsMap[display] = {};
|
|
156
|
+
COLORS.forEach(function (color) {
|
|
157
|
+
switch (display) {
|
|
158
|
+
case 'base':
|
|
159
|
+
displaysColorsMap[display][color] = /*#__PURE__*/(0, _react.css)(euiButtonColor(euiThemeContext, color), ";;label:displaysColorsMap-display-color;");
|
|
160
|
+
break;
|
|
161
|
+
case 'fill':
|
|
162
|
+
displaysColorsMap[display][color] = /*#__PURE__*/(0, _react.css)(euiButtonFillColor(euiThemeContext, color), "outline-color:", euiThemeContext.colorMode === 'DARK' && color === 'text' ? 'currentColor' : euiThemeContext.euiTheme.colors.fullShade, ";;label:displaysColorsMap-display-color;");
|
|
163
|
+
break;
|
|
164
|
+
case 'empty':
|
|
165
|
+
displaysColorsMap[display][color] = /*#__PURE__*/(0, _react.css)("color:", euiButtonEmptyColor(euiThemeContext, color).color, ";&:focus,&:active{background-color:", euiButtonEmptyColor(euiThemeContext, color).backgroundColor, ";};label:displaysColorsMap-display-color;");
|
|
166
|
+
break;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
// Tweak auto-generated Emotion label/className output
|
|
170
|
+
var emotionOutput = displaysColorsMap[display][color];
|
|
171
|
+
emotionOutput.styles = emotionOutput.styles.replace('label:displaysColorsMap-display-color;', "label:".concat(display, "-").concat(color, ";"));
|
|
172
|
+
});
|
|
173
|
+
});
|
|
174
|
+
return displaysColorsMap;
|
|
159
175
|
};
|
|
160
176
|
|
|
161
177
|
/**
|
|
162
178
|
* Creates the translate animation when button is in focus.
|
|
163
179
|
* @returns string
|
|
164
180
|
*/
|
|
165
|
-
exports.useEuiButtonColorCSS = useEuiButtonColorCSS;
|
|
166
181
|
var useEuiButtonFocusCSS = function useEuiButtonFocusCSS() {
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
182
|
+
return (0, _services.useEuiMemoizedStyles)(euiButtonFocusCSS);
|
|
183
|
+
};
|
|
184
|
+
exports.useEuiButtonFocusCSS = useEuiButtonFocusCSS;
|
|
185
|
+
var euiButtonFocusAnimation = (0, _react.keyframes)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n 50% {\n transform: translateY(1px);\n }\n"])));
|
|
186
|
+
var euiButtonFocusCSS = function euiButtonFocusCSS(_ref) {
|
|
187
|
+
var euiTheme = _ref.euiTheme;
|
|
188
|
+
var focusCSS = /*#__PURE__*/(0, _react.css)(_global_styling.euiCanAnimate, "{transition:transform ", euiTheme.animation.normal, " ease-in-out,background-color ", euiTheme.animation.normal, " ease-in-out;&:hover:not(:disabled){transform:translateY(-1px);}&:focus{animation:", euiButtonFocusAnimation, " ", euiTheme.animation.normal, " ", euiTheme.animation.bounce, ";}&:active:not(:disabled){transform:translateY(1px);}};label:focusCSS;");
|
|
189
|
+
// Remove the auto-generated label.
|
|
190
|
+
// We could typically avoid a label by using a plain string `` instead of css``,
|
|
191
|
+
// but we need css`` for keyframes`` to work for the focus animation
|
|
192
|
+
focusCSS.styles = focusCSS.styles.replace('label:focusCSS;', '');
|
|
193
|
+
return focusCSS;
|
|
170
194
|
};
|
|
171
195
|
|
|
172
196
|
/**
|
|
173
197
|
* Map of `size` props to various sizings/scales
|
|
174
198
|
* that should remain consistent across all buttons
|
|
175
199
|
*/
|
|
176
|
-
|
|
177
|
-
var
|
|
178
|
-
var euiTheme = _ref.euiTheme;
|
|
200
|
+
var euiButtonSizeMap = function euiButtonSizeMap(_ref2) {
|
|
201
|
+
var euiTheme = _ref2.euiTheme;
|
|
179
202
|
return {
|
|
180
203
|
xs: {
|
|
181
204
|
height: euiTheme.size.l,
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
// stylelint-disable color-named
|
|
2
|
-
|
|
3
|
-
@mixin euiSideNavEmbellish {
|
|
4
|
-
background:
|
|
5
|
-
linear-gradient(160deg, $euiSideNavEmphasizedBackgroundColor 0, $euiSideNavEmphasizedBackgroundColor $euiSizeXL, rgba(red, 0) 0),
|
|
6
|
-
linear-gradient(175deg, $euiSideNavEmphasizedBackgroundColor 0, $euiSideNavEmphasizedBackgroundColor $euiSize, rgba(red, 0) 0);
|
|
7
|
-
}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
// These mobile children are hidden in everything but mobile view.
|
|
2
|
-
.euiSideNav__mobileToggle {
|
|
3
|
-
height: auto;
|
|
4
|
-
border-bottom: $euiBorderThin;
|
|
5
|
-
width: 100%;
|
|
6
|
-
text-align: left;
|
|
7
|
-
border-radius: 0 !important; // stylelint-disable-line declaration-no-important
|
|
8
|
-
font-size: $euiFontSizeM;
|
|
9
|
-
padding: 0 $euiSize; // This plus the inner padding is equal to paddingSize large for EuiPage
|
|
10
|
-
|
|
11
|
-
.euiSideNav__mobileToggleText {
|
|
12
|
-
padding: $euiSize 0;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
.euiSideNav__mobileToggleContent {
|
|
16
|
-
justify-content: space-between;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
.euiSideNav__heading {
|
|
21
|
-
margin-bottom: $euiSizeL;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
// Loop through the breakpoints and apply mobile styles only to the right className
|
|
25
|
-
// stylelint-disable max-nesting-depth
|
|
26
|
-
@each $breakpoint in $euiBreakpointKeys {
|
|
27
|
-
@include euiBreakpoint($breakpoint) {
|
|
28
|
-
.euiSideNav__contentMobile-#{$breakpoint} {
|
|
29
|
-
overflow: hidden;
|
|
30
|
-
visibility: hidden;
|
|
31
|
-
opacity: 0;
|
|
32
|
-
max-height: 0;
|
|
33
|
-
padding: 0 $euiSizeL;
|
|
34
|
-
|
|
35
|
-
.euiSideNav-isOpenMobile & {
|
|
36
|
-
visibility: visible;
|
|
37
|
-
opacity: 1;
|
|
38
|
-
padding: $euiSizeL;
|
|
39
|
-
max-height: 5000px; /* 1 */
|
|
40
|
-
|
|
41
|
-
@include euiCanAnimate {
|
|
42
|
-
transition: all $euiAnimSpeedNormal $euiAnimSlightResistance;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
}
|
|
@@ -1,181 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 1. Text-align defaults to center, so we have to override that.
|
|
3
|
-
* 2. Color the text at the item level and then have the button inherit so overrides are easier
|
|
4
|
-
* 3. Enable ellipsis overflow to work (https://css-tricks.com/flexbox-truncated-text/)
|
|
5
|
-
* 4. Restrict the underline to the button __label so it doesn't affect other components that might live within
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
.euiSideNavItemButton {
|
|
9
|
-
@include euiFontSizeS;
|
|
10
|
-
text-align: left; /* 1 */
|
|
11
|
-
display: block;
|
|
12
|
-
width: 100%;
|
|
13
|
-
padding: ($euiSizeXS / 2) 0;
|
|
14
|
-
color: inherit; /* 2 */
|
|
15
|
-
|
|
16
|
-
&.euiSideNavItemButton--isClickable:not(:disabled) {
|
|
17
|
-
&:hover {
|
|
18
|
-
cursor: pointer;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
&:hover,
|
|
22
|
-
&:focus {
|
|
23
|
-
.euiSideNavItemButton__label {
|
|
24
|
-
// A lingering focus will stay underlined even if it doesn't get the `isSelected` prop
|
|
25
|
-
text-decoration: underline; /* 4 */
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
&.euiSideNavItemButton-isSelected {
|
|
31
|
-
color: $euiSideNavSelectedTextcolor;
|
|
32
|
-
font-weight: $euiFontWeightBold;
|
|
33
|
-
|
|
34
|
-
.euiSideNavItemButton__label {
|
|
35
|
-
text-decoration: underline; /* 4 */
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
&:disabled {
|
|
40
|
-
@include euiDisabledState($euiSideNavDisabledTextcolor);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
.euiSideNavItemButton__content {
|
|
45
|
-
display: flex;
|
|
46
|
-
align-items: center;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
.euiSideNavItemButton__icon {
|
|
50
|
-
margin-right: $euiSizeS;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
.euiSideNavItemButton__labelContainer {
|
|
54
|
-
min-width: 0; /* 3 */
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
.euiSideNavItemButton__label {
|
|
58
|
-
flex-grow: 1;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
.euiSideNavItemButton__label--truncated {
|
|
62
|
-
@include euiTextTruncate;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
.euiSideNavItem--root {
|
|
66
|
-
&.euiSideNavItem--rootIcon > .euiSideNavItem__items {
|
|
67
|
-
margin-left: $euiSizeL;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
/**
|
|
71
|
-
* 1. Create padding around focus area without indenting the item itself.
|
|
72
|
-
*/
|
|
73
|
-
& > .euiSideNavItemButton {
|
|
74
|
-
margin-bottom: $euiSizeS;
|
|
75
|
-
padding: 0;
|
|
76
|
-
padding-left: $euiSizeS; /* 1 */
|
|
77
|
-
padding-right: $euiSizeS; /* 1 */
|
|
78
|
-
margin-left: -$euiSizeS; /* 1 */
|
|
79
|
-
width: calc(100% + #{$euiSizeS * 2}); /* 1 */
|
|
80
|
-
|
|
81
|
-
.euiSideNavItemButton__label {
|
|
82
|
-
@include euiTitle('xs');
|
|
83
|
-
color: inherit;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
& > .euiSideNavItem__items {
|
|
88
|
-
position: static;
|
|
89
|
-
margin-left: 0;
|
|
90
|
-
|
|
91
|
-
&::after {
|
|
92
|
-
display: none;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
& + & {
|
|
97
|
-
margin-top: $euiSizeXL;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
.euiSideNavItem--trunk {
|
|
102
|
-
color: $euiSideNavRootTextcolor; /* 2 */
|
|
103
|
-
|
|
104
|
-
/**
|
|
105
|
-
* 1. Create padding around focus area without indenting the item itself.
|
|
106
|
-
*/
|
|
107
|
-
& > .euiSideNavItemButton {
|
|
108
|
-
padding-left: $euiSizeS; /* 1 */
|
|
109
|
-
padding-right: $euiSizeS; /* 1 */
|
|
110
|
-
margin-left: -$euiSizeS; /* 1 */
|
|
111
|
-
width: calc(100% + #{$euiSizeS * 2}); /* 1 */
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
& > .euiSideNavItem__items {
|
|
115
|
-
margin-left: $euiSizeS;
|
|
116
|
-
width: 100%;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
.euiSideNavItem--branch {
|
|
121
|
-
/**
|
|
122
|
-
* 1. Draw the vertical line to group an expanded item's child items together.
|
|
123
|
-
*/
|
|
124
|
-
position: relative;
|
|
125
|
-
color: $euiSideNavBranchTextcolor; /* 2 */
|
|
126
|
-
|
|
127
|
-
&::after { /* 1 */
|
|
128
|
-
position: absolute;
|
|
129
|
-
content: '';
|
|
130
|
-
top: 0;
|
|
131
|
-
bottom: 0;
|
|
132
|
-
width: 1px;
|
|
133
|
-
background: $euiBorderColor;
|
|
134
|
-
left: 0;
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
// If this is actually the last item, we don't want the vertical line to stretch all the way down
|
|
138
|
-
&:last-of-type::after {
|
|
139
|
-
height: $euiSizeM;
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
/**
|
|
143
|
-
* 2. Absolutely position the horizontal tick connecting the item to the vertical line.
|
|
144
|
-
*/
|
|
145
|
-
& > .euiSideNavItemButton {
|
|
146
|
-
position: relative; /* 2 */
|
|
147
|
-
padding-left: $euiSizeS;
|
|
148
|
-
padding-right: $euiSizeS; /* 2 */
|
|
149
|
-
|
|
150
|
-
&::after {
|
|
151
|
-
position: absolute; /* 2 */
|
|
152
|
-
content: '';
|
|
153
|
-
top: $euiSizeM;
|
|
154
|
-
left: 0;
|
|
155
|
-
width: $euiSizeXS;
|
|
156
|
-
height: 1px;
|
|
157
|
-
background: $euiBorderColor;
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
& > .euiSideNavItem__items {
|
|
162
|
-
margin-left: $euiSize;
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
.euiSideNavItem--emphasized {
|
|
167
|
-
background: $euiSideNavEmphasizedBackgroundColor;
|
|
168
|
-
color: $euiSideNavRootTextcolor;
|
|
169
|
-
// The large y values allow the shadow to stretch beyond the side nav bounds to it's parents container
|
|
170
|
-
box-shadow: 100px 0 0 0 $euiSideNavEmphasizedBackgroundColor, -100px 0 0 0 $euiSideNavEmphasizedBackgroundColor;
|
|
171
|
-
|
|
172
|
-
> .euiSideNavItemButton {
|
|
173
|
-
font-weight: $euiFontWeightBold;
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
// Remove any extra box-shadows from nested emphasized items
|
|
177
|
-
.euiSideNavItem--emphasized {
|
|
178
|
-
background: transparent;
|
|
179
|
-
box-shadow: none;
|
|
180
|
-
}
|
|
181
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
$euiSideNavEmphasizedBackgroundColor: transparentize($euiColorLightShade, .7);
|
|
2
|
-
|
|
3
|
-
// Simulates the transparent backround on top of the page background to get an opaque color
|
|
4
|
-
// in order to get the right contrast for text
|
|
5
|
-
@function euiSideNavEmphasizedContrast($textColor, $ratio: $euiContrastRatioText) {
|
|
6
|
-
$backgroundColorSimulated: mix($euiPageBackgroundColor, $euiColorLightShade, 70%);
|
|
7
|
-
$color: makeHighContrastColor($textColor, $backgroundColorSimulated, $ratio);
|
|
8
|
-
@return $color;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
// Ensure all the possible text color have proper contrast when "emphasized"
|
|
12
|
-
$euiSideNavRootTextcolor: euiSideNavEmphasizedContrast($euiTitleColor);
|
|
13
|
-
$euiSideNavBranchTextcolor: euiSideNavEmphasizedContrast($euiTextSubduedColor);
|
|
14
|
-
$euiSideNavSelectedTextcolor: euiSideNavEmphasizedContrast($euiColorPrimary);
|
|
15
|
-
$euiSideNavDisabledTextcolor: euiSideNavEmphasizedContrast($euiButtonColorDisabledText, $euiContrastRatioDisabled);
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
.euiSideNavItem--root {
|
|
2
|
-
padding-bottom: $euiSizeS;
|
|
3
|
-
|
|
4
|
-
& + & {
|
|
5
|
-
padding-top: $euiSizeS;
|
|
6
|
-
margin-top: $euiSizeS;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
& > .euiSideNavItemButton {
|
|
10
|
-
margin-bottom: $euiSizeXS;
|
|
11
|
-
|
|
12
|
-
.euiSideNavItemButton__label {
|
|
13
|
-
@include euiTitle('xxs');
|
|
14
|
-
color: inherit;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
}
|