Compare commits

...

1 Commits

Author SHA1 Message Date
Petar Petrov 1190dfa4d7 Stop the statistics graph card editor looping while typing a name 2026-08-01 14:52:40 +03:00
2 changed files with 13 additions and 2 deletions
@@ -296,6 +296,10 @@ export class HuiStatisticsGraphCard extends LitElement implements LovelaceCard {
await this._getStatisticsMetaData(this._entityIds);
}
await this._getStatistics();
if (!this.isConnected) {
this._interval = undefined;
return;
}
// statistics are created every hour
if (!this._config?.energy_date_selection) {
this._interval = window.setInterval(
@@ -500,13 +500,20 @@ export class HuiStatisticsGraphCardEditor
// update card config with updated entity config
const index = this._subElementEditorConfig!.index!;
const oldEntityConfig = this._config!.entities[index];
const oldEntityId =
typeof oldEntityConfig === "string"
? oldEntityConfig
: oldEntityConfig?.entity;
const newEntities = [...this._config!.entities];
newEntities[index] = newEntityConfig;
let config = this._config!;
config = { ...config, entities: newEntities };
// remove inappropriate stat options dependently on entities
config = await this._cleanConfig(config);
// only a different statistic can invalidate the stat options
if (newEntityConfig.entity !== oldEntityId) {
config = await this._cleanConfig(config);
}
// normalize a generated yaml code
config = this._orderProperties(config);
this._config = config;