Use Hardware Integration for System Menu (#12789)

This commit is contained in:
Zack Barett 2022-05-26 05:57:14 -05:00 committed by GitHub
parent d0ead1fdb8
commit 10813d06b6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -8,7 +8,7 @@ import "../../../components/ha-navigation-list";
import "../../../components/ha-tip"; import "../../../components/ha-tip";
import { BackupContent, fetchBackupInfo } from "../../../data/backup"; import { BackupContent, fetchBackupInfo } from "../../../data/backup";
import { CloudStatus, fetchCloudStatus } from "../../../data/cloud"; import { CloudStatus, fetchCloudStatus } from "../../../data/cloud";
import { BOARD_NAMES } from "../../../data/hardware"; import { BOARD_NAMES, HardwareInfo } from "../../../data/hardware";
import { fetchHassioBackups, HassioBackup } from "../../../data/hassio/backup"; import { fetchHassioBackups, HassioBackup } from "../../../data/hassio/backup";
import { import {
fetchHassioHassOsInfo, fetchHassioHassOsInfo,
@ -156,8 +156,8 @@ class HaConfigSystemNavigation extends LitElement {
this._fetchNetworkStatus(); this._fetchNetworkStatus();
const isHassioLoaded = isComponentLoaded(this.hass, "hassio"); const isHassioLoaded = isComponentLoaded(this.hass, "hassio");
this._fetchBackupInfo(isHassioLoaded); this._fetchBackupInfo(isHassioLoaded);
this._fetchHardwareInfo(isHassioLoaded);
if (isHassioLoaded) { if (isHassioLoaded) {
this._fetchHardwareInfo();
this._fetchStorageInfo(); this._fetchStorageInfo();
} }
} }
@ -202,10 +202,17 @@ class HaConfigSystemNavigation extends LitElement {
} }
} }
private async _fetchHardwareInfo() { private async _fetchHardwareInfo(isHassioLoaded: boolean) {
const osData: HassioHassOSInfo = await fetchHassioHassOsInfo(this.hass); if (isComponentLoaded(this.hass, "hardware")) {
if (osData.board) { const hardwareInfo: HardwareInfo = await this.hass.callWS({
this._boardName = BOARD_NAMES[osData.board]; type: "hardware/info",
});
this._boardName = hardwareInfo?.hardware?.[0].name;
} else if (isHassioLoaded) {
const osData: HassioHassOSInfo = await fetchHassioHassOsInfo(this.hass);
if (osData.board) {
this._boardName = BOARD_NAMES[osData.board];
}
} }
} }