Simplify CO2Signal check (#24566)

* Simplify CO2Signal check

* Remove more references.

* Update energy.ts
This commit is contained in:
Paulus Schoutsen 2025-03-12 02:31:12 -04:00 committed by GitHub
parent 8ef769559f
commit 1d747c0901
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -21,8 +21,6 @@ import {
import { formatTime24h } from "../common/datetime/format_time"; import { formatTime24h } from "../common/datetime/format_time";
import { groupBy } from "../common/util/group-by"; import { groupBy } from "../common/util/group-by";
import type { HomeAssistant } from "../types"; import type { HomeAssistant } from "../types";
import type { ConfigEntry } from "./config_entries";
import { getConfigEntries } from "./config_entries";
import type { import type {
Statistics, Statistics,
StatisticsMetaData, StatisticsMetaData,
@ -270,7 +268,6 @@ export interface EnergyData {
stats: Statistics; stats: Statistics;
statsMetadata: Record<string, StatisticsMetaData>; statsMetadata: Record<string, StatisticsMetaData>;
statsCompare: Statistics; statsCompare: Statistics;
co2SignalConfigEntry?: ConfigEntry;
co2SignalEntity?: string; co2SignalEntity?: string;
fossilEnergyConsumption?: FossilEnergyConsumption; fossilEnergyConsumption?: FossilEnergyConsumption;
fossilEnergyConsumptionCompare?: FossilEnergyConsumption; fossilEnergyConsumptionCompare?: FossilEnergyConsumption;
@ -348,31 +345,22 @@ const getEnergyData = async (
end?: Date, end?: Date,
compare?: boolean compare?: boolean
): Promise<EnergyData> => { ): Promise<EnergyData> => {
const [configEntries, info] = await Promise.all([ const info = await getEnergyInfo(hass);
getConfigEntries(hass, { domain: "co2signal" }),
getEnergyInfo(hass),
]);
const co2SignalConfigEntry = configEntries.length
? configEntries[0]
: undefined;
let co2SignalEntity: string | undefined; let co2SignalEntity: string | undefined;
if (co2SignalConfigEntry) { for (const entity of Object.values(hass.entities)) {
for (const entity of Object.values(hass.entities)) { if (entity.platform !== "co2signal") {
if (entity.platform !== "co2signal") { continue;
continue;
}
// The integration offers 2 entities. We want the % one.
const co2State = hass.states[entity.entity_id];
if (!co2State || co2State.attributes.unit_of_measurement !== "%") {
continue;
}
co2SignalEntity = co2State.entity_id;
break;
} }
// The integration offers 2 entities. We want the % one.
const co2State = hass.states[entity.entity_id];
if (!co2State || co2State.attributes.unit_of_measurement !== "%") {
continue;
}
co2SignalEntity = co2State.entity_id;
break;
} }
const consumptionStatIDs: string[] = []; const consumptionStatIDs: string[] = [];
@ -562,7 +550,6 @@ const getEnergyData = async (
stats, stats,
statsMetadata, statsMetadata,
statsCompare, statsCompare,
co2SignalConfigEntry,
co2SignalEntity, co2SignalEntity,
fossilEnergyConsumption, fossilEnergyConsumption,
fossilEnergyConsumptionCompare, fossilEnergyConsumptionCompare,