From 468139229c689e433cf0242259f3964d2dfb514b Mon Sep 17 00:00:00 2001 From: Petar Petrov Date: Thu, 27 Nov 2025 13:19:42 +0200 Subject: [PATCH] Handle grouping by floor and area in power sankey card (#28162) --- .../energy/strategies/energy-electricity-view-strategy.ts | 8 +++++--- .../energy/strategies/energy-overview-view-strategy.ts | 5 +++++ 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/panels/energy/strategies/energy-electricity-view-strategy.ts b/src/panels/energy/strategies/energy-electricity-view-strategy.ts index 382841df3b..9f5bc131f9 100644 --- a/src/panels/energy/strategies/energy-electricity-view-strategy.ts +++ b/src/panels/energy/strategies/energy-electricity-view-strategy.ts @@ -55,6 +55,9 @@ export class EnergyElectricityViewStrategy extends ReactiveElement { const hasPowerDevices = prefs.device_consumption.find( (device) => device.stat_rate ); + const showFloorsNAreas = !prefs.device_consumption.some( + (d) => d.included_in_stat + ); view.cards!.push({ type: "energy-compare", @@ -67,6 +70,8 @@ export class EnergyElectricityViewStrategy extends ReactiveElement { title: hass.localize("ui.panel.energy.cards.power_sankey_title"), type: "power-sankey", collection_key: collectionKey, + group_by_floor: showFloorsNAreas, + group_by_area: showFloorsNAreas, grid_options: { columns: 24, }, @@ -156,9 +161,6 @@ export class EnergyElectricityViewStrategy extends ReactiveElement { // Only include if we have at least 1 device in the config. if (prefs.device_consumption.length) { - const showFloorsNAreas = !prefs.device_consumption.some( - (d) => d.included_in_stat - ); view.cards!.push({ title: hass.localize("ui.panel.energy.cards.energy_sankey_title"), type: "energy-sankey", diff --git a/src/panels/energy/strategies/energy-overview-view-strategy.ts b/src/panels/energy/strategies/energy-overview-view-strategy.ts index 698c25c6fb..3933067e3b 100644 --- a/src/panels/energy/strategies/energy-overview-view-strategy.ts +++ b/src/panels/energy/strategies/energy-overview-view-strategy.ts @@ -81,10 +81,15 @@ export class EnergyViewStrategy extends ReactiveElement { cards: [], }; if (hasPowerSources && hasPowerDevices) { + const showFloorsNAreas = !prefs.device_consumption.some( + (d) => d.included_in_stat + ); overviewSection.cards!.push({ title: hass.localize("ui.panel.energy.cards.power_sankey_title"), type: "power-sankey", collection_key: collectionKey, + group_by_floor: showFloorsNAreas, + group_by_area: showFloorsNAreas, grid_options: { columns: 24, },