Add checks to energy dashboard for when preferences are empty (#19765)

* Forbid completing energy dashboard setup unless at least one statistic is selected
* If energy setup was completed but there are no sources available, start setup wizard again
This commit is contained in:
Cody C 2024-05-14 06:57:37 +12:00 committed by GitHub
parent 3ebe6027be
commit 099ea61a94
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 26 additions and 1 deletions

View File

@ -137,6 +137,21 @@ export class EnergySetupWizard extends LitElement implements LovelaceCard {
if (!this._preferences) {
return;
}
// User made no selections during setup
if (
this._preferences.device_consumption.length === 0 &&
this._preferences.energy_sources.length === 0
) {
showAlertDialog(this, {
title: this.hass.localize(
"ui.panel.energy.setup.no_statistics_selected_title"
),
text: this.hass.localize(
"ui.panel.energy.setup.no_statistics_selected_description"
),
});
return;
}
try {
this._preferences = await saveEnergyPreferences(
this.hass,

View File

@ -44,6 +44,14 @@ export class EnergyViewStrategy extends ReactiveElement {
return view;
}
// No energy sources available, start from scratch
if (
prefs!.device_consumption.length === 0 &&
prefs!.energy_sources.length === 0
) {
return setupWizard();
}
view.type = "sidebar";
const hasGrid = prefs.energy_sources.find(

View File

@ -6929,7 +6929,9 @@
"next": "Next",
"back": "Back",
"done": "Show me my energy dashboard!",
"step": "Step {step} of {steps}"
"step": "Step {step} of {steps}",
"no_statistics_selected_title": "No statistics selected",
"no_statistics_selected_description": "You must select at least one statistic to finish setting up your Energy dashboard."
},
"charts": {
"stat_house_energy_meter": "Total energy consumption",