Fetch supervisor info directly (#12751)

This commit is contained in:
Joakim Sørensen 2022-05-23 20:00:16 +02:00 committed by GitHub
parent da106d278c
commit 0623e7dce4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -17,7 +17,10 @@ import {
HassioAddonDetails, HassioAddonDetails,
} from "../../../src/data/hassio/addon"; } from "../../../src/data/hassio/addon";
import { extractApiErrorMessage } from "../../../src/data/hassio/common"; import { extractApiErrorMessage } from "../../../src/data/hassio/common";
import { setSupervisorOption } from "../../../src/data/hassio/supervisor"; import {
fetchHassioSupervisorInfo,
setSupervisorOption,
} from "../../../src/data/hassio/supervisor";
import { Supervisor } from "../../../src/data/supervisor/supervisor"; import { Supervisor } from "../../../src/data/supervisor/supervisor";
import { showConfirmationDialog } from "../../../src/dialogs/generic/show-dialog-box"; import { showConfirmationDialog } from "../../../src/dialogs/generic/show-dialog-box";
import "../../../src/layouts/hass-error-screen"; import "../../../src/layouts/hass-error-screen";
@ -169,9 +172,10 @@ class HassioAddonDashboard extends LitElement {
if (this.route.path === "") { if (this.route.path === "") {
const requestedAddon = extractSearchParam("addon"); const requestedAddon = extractSearchParam("addon");
const requestedAddonRepository = extractSearchParam("repository_url"); const requestedAddonRepository = extractSearchParam("repository_url");
if (requestedAddonRepository) {
const supervisorInfo = await fetchHassioSupervisorInfo(this.hass);
if ( if (
requestedAddonRepository && !supervisorInfo.addons_repositories.find(
!this.supervisor.supervisor.addons_repositories.find(
(repo) => repo === requestedAddonRepository (repo) => repo === requestedAddonRepository
) )
) { ) {
@ -195,7 +199,7 @@ class HassioAddonDashboard extends LitElement {
try { try {
await setSupervisorOption(this.hass, { await setSupervisorOption(this.hass, {
addons_repositories: [ addons_repositories: [
...this.supervisor.supervisor.addons_repositories, ...supervisorInfo.addons_repositories,
requestedAddonRepository, requestedAddonRepository,
], ],
}); });
@ -203,6 +207,7 @@ class HassioAddonDashboard extends LitElement {
this._error = extractApiErrorMessage(err); this._error = extractApiErrorMessage(err);
} }
} }
}
if (requestedAddon) { if (requestedAddon) {
const addonsInfo = await fetchHassioAddonsInfo(this.hass); const addonsInfo = await fetchHassioAddonsInfo(this.hass);