diff --git a/src/data/recorder.ts b/src/data/recorder.ts index 5d6fd71806..caa97fd29a 100644 --- a/src/data/recorder.ts +++ b/src/data/recorder.ts @@ -289,3 +289,6 @@ export const getDisplayUnit = ( ? statisticsMetaData?.statistics_unit_of_measurement : unit; }; + +export const isExternalStatistic = (statisticsId: string): boolean => + statisticsId.includes(":"); diff --git a/src/panels/config/energy/dialogs/dialog-energy-gas-settings.ts b/src/panels/config/energy/dialogs/dialog-energy-gas-settings.ts index b166aca0d8..c0e37a46be 100644 --- a/src/panels/config/energy/dialogs/dialog-energy-gas-settings.ts +++ b/src/panels/config/energy/dialogs/dialog-energy-gas-settings.ts @@ -21,6 +21,7 @@ import type { HaRadio } from "../../../../components/ha-radio"; import { getStatisticMetadata, getDisplayUnit, + isExternalStatistic, } from "../../../../data/recorder"; @customElement("dialog-energy-gas-settings") @@ -86,7 +87,7 @@ export class DialogEnergyGasSettings : "ft³ or m³"); const externalSource = - this._source.stat_cost && this._source.stat_cost.includes(":"); + this._source.stat_cost && isExternalStatistic(this._source.stat_cost); return html` : statisticIds?.some((statistic_id) => - statistic_id.includes(":") + isExternalStatistic(statistic_id) ), })), }, @@ -240,7 +240,9 @@ export class HuiStatisticsGraphCardEditor private async _entitiesChanged(ev: CustomEvent): Promise { const config = { ...this._config!, entities: ev.detail.value }; if ( - config.entities?.some((statistic_id) => statistic_id.includes(":")) && + config.entities?.some((statistic_id) => + isExternalStatistic(statistic_id) + ) && config.period === "5minute" ) { delete config.period;