From 7381e3ac1a37dcf1f1b027876aed86c2c21c85ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luca=20F=C3=A9lix?= Date: Wed, 24 May 2023 19:53:31 +0200 Subject: [PATCH] fix: reintroduce `non_fossil` state type percentage --- src/energy-flow-card-plus.ts | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/energy-flow-card-plus.ts b/src/energy-flow-card-plus.ts index be96997..f360997 100644 --- a/src/energy-flow-card-plus.ts +++ b/src/energy-flow-card-plus.ts @@ -890,6 +890,7 @@ export default class EnergyFlowCardPlus extends SubscribeMixin(LitElement) { ? this.displayValue(totalHomeConsumption - totalIndividualConsumption || 0) : this.displayValue(totalHomeConsumption); + let lowCarbonPercentage: number | undefined; if (this._data.co2SignalEntity && this._data.fossilEnergyConsumption) { // Calculate high carbon consumption const highCarbonEnergy = Object.values(this._data.fossilEnergyConsumption).reduce((sum, a) => sum + a, 0) * 1000; @@ -902,6 +903,7 @@ export default class EnergyFlowCardPlus extends SubscribeMixin(LitElement) { homeGridCircumference = circleCircumference * (highCarbonConsumption / totalHomeConsumption); homeNonFossilCircumference = circleCircumference - (homeSolarCircumference || 0) - (homeBatteryCircumference || 0) - homeGridCircumference; + lowCarbonPercentage = ((lowCarbonEnergy || 0) / totalFromGrid) * 100; } const hasNonFossilFuelUsage = @@ -971,9 +973,14 @@ export default class EnergyFlowCardPlus extends SubscribeMixin(LitElement) { ? 'padding-bottom: 2px;' : 'padding-bottom: 0px;'}" > - ${entities.fossil_fuel_percentage?.display_zero_state !== false || - (nonFossilFuelenergy || 0) > (entities.fossil_fuel_percentage?.display_zero_tolerance || 0) - ? html` ${this.displayValue(lowCarbonEnergy ?? null)} ` + ${entities.fossil_fuel_percentage?.display_zero_state !== false || hasNonFossilFuelUsage !== false + ? html` + ${entities.fossil_fuel_percentage?.state_type === 'percentage' + ? lowCarbonPercentage?.toFixed(0) + '%' || '0%' + : this.displayValue(lowCarbonEnergy ?? null)} + ` : ''} ${this.showLine(nonFossilFuelenergy || 0)