Skip to content

feat(eui): remove EuiLoadingChart non-mono version#8441

Merged
weronikaolejniczak merged 5 commits intoelastic:mainfrom
weronikaolejniczak:fix/deprecate-eui-loading-chart-color
Mar 18, 2025
Merged

feat(eui): remove EuiLoadingChart non-mono version#8441
weronikaolejniczak merged 5 commits intoelastic:mainfrom
weronikaolejniczak:fix/deprecate-eui-loading-chart-color

Conversation

@weronikaolejniczak
Copy link
Copy Markdown
Contributor

@weronikaolejniczak weronikaolejniczak commented Mar 14, 2025

Summary

This PR removes EuiLoadingChart non-mono version (which is the default). I decided to remove instead of deprecate it and consulted the decision with @ek-so. We only need to update the code on the next Kibana upgrade by removing all mentions of mono prop. See the details below.

Closes #8275

Impact

Cloud UI

There are 3 usages, all use the non-mono version, they do not pass the mono prop, they don't require an update:

  • cloud-ui/apps/monolith/public/components/User/BillingUsage/components/CostsChart/index.tsx
  • cloud-ui/apps/monolith/public/components/User/BillingUsage/components/CostsChartByInstance/index.tsx
  • cloud-ui/apps/monolith/public/components/User/BillingUsage/components/ProductChart/index.tsx

Kibana

24 times mono or mono={true} (requires code update)

Use regexp: <EuiLoadingChart[^>]*\smono\s*(=\s*(\{?)\s*true\s*(\}?)\s*)?[^>]*>

  • src/platform/packages/private/kbn-panel-loader/index.tsx
  • src/platform/plugins/private/vis_default_editor/public/default_editor_controller.tsx
  • src/platform/plugins/shared/dashboard/public/dashboard_renderer/grid/dashboard_grid_item.tsx
  • src/platform/plugins/shared/vis_types/timeseries/public/application/components/timeseries_loading.tsx
  • src/platform/plugins/shared/vis_types/timeseries/public/application/components/timeseries_visualization.tsx
  • src/platform/plugins/shared/visualizations/public/components/visualization_container.tsx
  • src/platform/plugins/shared/visualizations/public/embeddable/visualize_embeddable.tsx
  • src/platform/plugins/shared/visualizations/public/legacy/embeddable/visualize_embeddable.tsx
  • x-pack/platform/plugins/shared/aiops/public/components/mini_histogram/mini_histogram.tsx
  • x-pack/platform/plugins/shared/dataset_quality/public/components/common/spark_plot.tsx
  • x-pack/platform/plugins/shared/dataset_quality/public/components/dataset_quality_details/overview/document_trends/trend_docs_chart.tsx
  • x-pack/platform/plugins/shared/ml/public/application/components/loading_indicator/loading_indicator.tsx
  • x-pack/platform/plugins/shared/ml/public/application/explorer/swimlane_container.tsx
  • x-pack/platform/plugins/shared/ml/public/embeddables/anomaly_charts/anomaly_charts_react_container.tsx
  • x-pack/solutions/observability/plugins/apm/public/components/shared/charts/spark_plot/index.tsx
  • x-pack/solutions/observability/plugins/infra/public/components/lens/chart_placeholder.tsx
  • x-pack/solutions/observability/plugins/slo/public/components/alert_details/components/error_rate/error_rate_panel.tsx
  • x-pack/solutions/observability/plugins/slo/public/pages/slo_details/components/wide_chart.tsx
  • x-pack/solutions/observability/plugins/slo/public/pages/slo_details/components/events_chart_panel/events_chart_panel.tsx
  • x-pack/solutions/observability/plugins/slo/public/pages/slo_edit/components/common/data_preview_chart.tsx
  • x-pack/solutions/observability/plugins/slo/public/pages/slos/components/slo_sparkline.tsx
  • x-pack/solutions/observability/plugins/synthetics/public/apps/synthetics/components/monitor_details/monitor_pending_wrapper.tsx
  • x-pack/solutions/observability/plugins/ux/public/components/app/rum_dashboard/visitor_breakdown/index.tsx
  • x-pack/solutions/security/plugins/security_solution/public/management/components/console/components/command_execution_output.tsx

1 wrapper component (requires code update)

Name: AsyncComponent
Source: x-pack/solutions/observability/plugins/profiling/public/components/async_component.tsx

It uses mono version once:

  • x-pack/solutions/observability/plugins/profiling/public/components/stack_traces/index.tsx: 1 mono, 1 non-mono

and non-mono version 7 times:

  • x-pack/solutions/observability/plugins/profiling/public/components/stack_traces/index.tsx
  • x-pack/solutions/observability/plugins/profiling/public/views/flamegraphs/differential_flamegraphs/index.tsx
  • x-pack/solutions/observability/plugins/profiling/public/views/flamegraphs/flamegraph/index.tsx
  • x-pack/solutions/observability/plugins/profiling/public/views/functions/differential_topn/index.tsx
  • x-pack/solutions/observability/plugins/profiling/public/views/functions/topn/index.tsx
  • x-pack/solutions/observability/plugins/profiling/public/views/storage_explorer/data_breakdown/index.tsx
  • x-pack/solutions/observability/plugins/profiling/public/views/storage_explorer/host_breakdown/index.tsx

37 times no mono prop

Use regexp: <EuiLoadingChart(?![^>]*\smono\s*(=\s*(\{?)\s*true\s*(\}?)\s*)?)[^>]*>

  • src/platform/packages/shared/kbn-alerts-ui-shared/src/alert_filter_controls/loading.tsx
  • x-pack/platform/plugins/private/canvas/public/components/canvas_loading/canvas_loading.component.tsx
  • x-pack/platform/plugins/private/data_usage/public/app/components/charts_loading.tsx
  • x-pack/platform/plugins/private/watcher/public/application/sections/watch_edit_page/components/threshold_watch_edit/watch_visualization.tsx
  • x-pack/platform/plugins/shared/logs_shared/public/components/loading/index.tsx
  • x-pack/platform/plugins/shared/ml/public/application/jobs/jobs_list/components/datafeed_chart_flyout/datafeed_chart_flyout.tsx
  • x-pack/platform/plugins/shared/stack_alerts/public/rule_types/threshold/visualization.tsx
  • x-pack/platform/plugins/shared/streams_app/public/components/data_management/stream_detail_lifecycle/ingestion_rate.tsx
  • x-pack/platform/plugins/shared/triggers_actions_ui/public/application/sections/alert_summary_widget/components/alert_summary_widget_loader.tsx
  • x-pack/platform/plugins/shared/triggers_actions_ui/public/application/sections/common/components/execution_duration_chart.tsx
  • x-pack/solutions/observability/plugins/apm/public/components/alerting/ui_components/chart_preview/chart_preview_helper.tsx
  • x-pack/solutions/observability/plugins/apm/public/components/app/service_map/popover/stats_list.tsx
  • x-pack/solutions/observability/plugins/apm/public/components/shared/charts/chart_container.tsx
  • x-pack/solutions/observability/plugins/infra/public/alerting/common/criterion_preview_chart/criterion_preview_chart.tsx
  • x-pack/solutions/observability/plugins/infra/public/components/asset_details/tabs/processes/process_row_charts.tsx
  • x-pack/solutions/observability/plugins/infra/public/components/loading/index.tsx
  • x-pack/solutions/observability/plugins/infra/public/pages/metrics/inventory_view/components/timeline/timeline.tsx
  • x-pack/solutions/observability/plugins/observability/public/components/custom_threshold/components/criterion_preview_chart/criterion_preview_chart.tsx
  • x-pack/solutions/observability/plugins/observability/public/pages/overview/components/chart_container/chart_container.tsx
  • x-pack/solutions/observability/plugins/observability/public/pages/overview/components/sections/metrics/metrics_section.tsx
  • x-pack/solutions/observability/plugins/profiling/public/embeddables/async_embeddable_component.tsx
  • x-pack/solutions/observability/plugins/slo/public/components/slo/simple_burn_rate/burn_rate.tsx
  • x-pack/solutions/observability/plugins/slo/public/embeddable/slo/burn_rate/burn_rate.tsx
  • x-pack/solutions/observability/plugins/slo/public/embeddable/slo/error_budget/error_budget_burn_down.tsx
  • x-pack/solutions/observability/plugins/slo/public/embeddable/slo/overview/slo_overview.tsx
  • x-pack/solutions/observability/plugins/uptime/public/legacy_uptime/components/common/charts/chart_wrapper/chart_wrapper.tsx
  • x-pack/solutions/observability/plugins/uptime/public/legacy_uptime/components/monitor/synthetics/step_detail/waterfall/waterfall_chart_container.tsx
  • x-pack/solutions/observability/plugins/ux/public/components/app/rum_dashboard/chart_wrapper/index.tsx
  • x-pack/solutions/search/plugins/enterprise_search/public/applications/analytics/components/analytics_collection_view/analytics_collection_overview/analytics_collection_chart.tsx
  • x-pack/solutions/search/plugins/enterprise_search/public/applications/analytics/components/analytics_overview/analytics_collection_card/analytics_collection_card.test.tsx
  • x-pack/solutions/search/plugins/enterprise_search/public/applications/analytics/components/analytics_overview/analytics_collection_card/analytics_collection_card.tsx
  • x-pack/solutions/security/plugins/cloud_security_posture/public/components/chart_panel.tsx
  • x-pack/solutions/security/plugins/security_solution/public/asset_inventory/components/top_assets_bar_chart.tsx
  • x-pack/solutions/security/plugins/security_solution/public/asset_inventory/components/filters/filters_loading.tsx

Out of regexp:

  • x-pack/solutions/security/plugins/security_solution/public/detection_engine/rule_creation_ui/components/rule_preview/loading_histogram.tsx (styled-component override)
  • x-pack/solutions/observability/plugins/synthetics/public/apps/synthetics/components/step_details_page/step_waterfall_chart/waterfall/waterfall_chart_container.tsx (multiline)

QA

@weronikaolejniczak weronikaolejniczak marked this pull request as ready for review March 14, 2025 13:45
@weronikaolejniczak weronikaolejniczak requested a review from a team as a code owner March 14, 2025 13:45
@weronikaolejniczak weronikaolejniczak force-pushed the fix/deprecate-eui-loading-chart-color branch from b2fde67 to 13b3c53 Compare March 14, 2025 14:32
@kibanamachine
Copy link
Copy Markdown

Preview staging links for this PR:

@elasticmachine
Copy link
Copy Markdown
Collaborator

💚 Build Succeeded

History

@weronikaolejniczak weronikaolejniczak added the breaking change PRs with breaking changes. (Don't delete - used for automation) label Mar 18, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 18, 2025

This PR contains breaking changes. The opener of this pull request is asked to perform the following due diligence steps below, to assist EUI in our next Kibana upgrade:

  • If this PR contains prop/API changes:
    • Search through Kibana for <EuiComponent usages (example search)
    • In the PR description or in a PR comment, include a count or list with the number of component usages in Kibana that will need to be updated (if that amount is "none", include that information as well)
  • If this PR contains CSS changes:
    • Search through Kibana for the changed EUI selectors, e.g. .euiComponent (example search)
    • In the PR description or in a PR comment, include a count or list with the number of custom CSS overrides in Kibana that will need to be updated (if that amount is "none", include that information as well)
  • 🔍 Tip: When searching through Kibana, consider excluding **/target, **/*.snap, **/*.storyshot files to reduce noise and only look at source code usages
  • ⚠️ For extremely risky changes, the EUI team should potentially consider the following precautions:
    • Using a pre-release release candidate to test Kibana CI ahead of time
    • Using kibana-a-la-carte for manual QA, and to give other Kibana teams a staging server to quickly test against

Copy link
Copy Markdown
Contributor

@mgadewoll mgadewoll left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚢 Thanks for picking this up!

@weronikaolejniczak weronikaolejniczak merged commit f0c5f26 into elastic:main Mar 18, 2025
7 checks passed
@weronikaolejniczak weronikaolejniczak deleted the fix/deprecate-eui-loading-chart-color branch April 16, 2025 06:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking change PRs with breaking changes. (Don't delete - used for automation)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Deprecation of EuiLoadingChart (non-mono version)

5 participants