diff --git a/src/panels/config/backup/ha-config-backup-backups.ts b/src/panels/config/backup/ha-config-backup-backups.ts index 67a2965050..382abe6a1f 100644 --- a/src/panels/config/backup/ha-config-backup-backups.ts +++ b/src/panels/config/backup/ha-config-backup-backups.ts @@ -125,8 +125,6 @@ class HaConfigBackupBackups extends SubscribeMixin(LitElement) { @query("#overflow-menu") private _overflowMenu?: HaMdMenu; - private _overflowBackup?: BackupContent; - public connectedCallback() { super.connectedCallback(); window.addEventListener("location-changed", this._locationChanged); @@ -262,7 +260,7 @@ class HaConfigBackupBackups extends SubscribeMixin(LitElement) { type: "overflow-menu", template: (backup) => html` { - if (!this._overflowBackup) { + private async _downloadBackup(ev): Promise { + const backup = ev.parentElement.anchorElement.backup; + if (!backup) { return; } - downloadBackup(this.hass, this, this._overflowBackup, this.config); + downloadBackup(this.hass, this, backup, this.config); } - private async _deleteBackup(): Promise { - if (!this._overflowBackup) { + private async _deleteBackup(ev): Promise { + const backup = ev.parentElement.anchorElement.backup; + if (!backup) { return; } @@ -596,11 +595,9 @@ class HaConfigBackupBackups extends SubscribeMixin(LitElement) { } try { - await deleteBackup(this.hass, this._overflowBackup.backup_id); - if (this._selected.includes(this._overflowBackup.backup_id)) { - this._selected = this._selected.filter( - (id) => id !== this._overflowBackup!.backup_id - ); + await deleteBackup(this.hass, backup.backup_id); + if (this._selected.includes(backup.backup_id)) { + this._selected = this._selected.filter((id) => id !== backup.backup_id); } } catch (err: any) { showAlertDialog(this, {