From 3b8379b249b9b5ab0c3c2ee245cd7d62ad93ab4d Mon Sep 17 00:00:00 2001 From: Kibana Machine <42973632+kibanamachine@users.noreply.github.com> Date: Wed, 18 Jun 2025 20:08:38 +0200 Subject: [PATCH] [9.0] [APM][Metrics] Allow text panels in the metric dashboards (#224426) (#224473) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit # Backport This will backport the following commits from `main` to `9.0`: - [[APM][Metrics] Allow text panels in the metric dashboards (#224426)](https://github.com/elastic/kibana/pull/224426) ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) Co-authored-by: jennypavlova --- .../components/app/metrics/static_dashboard/helper.ts | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/x-pack/solutions/observability/plugins/apm/public/components/app/metrics/static_dashboard/helper.ts b/x-pack/solutions/observability/plugins/apm/public/components/app/metrics/static_dashboard/helper.ts index 41c9a5ba75c5..ba10ebbf5669 100644 --- a/x-pack/solutions/observability/plugins/apm/public/components/app/metrics/static_dashboard/helper.ts +++ b/x-pack/solutions/observability/plugins/apm/public/components/app/metrics/static_dashboard/helper.ts @@ -60,9 +60,8 @@ export async function convertSavedDashboardToPanels( const panels = panelsRawObjects.reduce((acc, panel) => { const { gridData, embeddableConfig, panelIndex, title } = panel; const { attributes } = embeddableConfig; - const { state } = attributes; - const layers = - state.datasourceStates?.formBased?.layers ?? state.datasourceStates?.textBased?.layers ?? []; + const datasourceStates = attributes?.state?.datasourceStates ?? {}; + const layers = datasourceStates.formBased?.layers ?? datasourceStates.textBased?.layers ?? []; acc[gridData.i] = { type: panel.type, @@ -75,7 +74,7 @@ export async function convertSavedDashboardToPanels( ...attributes, references: [], state: { - ...state, + ...(attributes?.state ?? {}), adHocDataViews: getAdhocDataView(dataView), internalReferences: Object.keys(layers).map((layerId) => ({ id: dataView.id,