Fix Home and Phone settings states
This commit is contained in:
@@ -434,7 +434,8 @@ Singleton {
|
||||
}
|
||||
|
||||
function applyFixture(name: string): void {
|
||||
if (["ready", "stale", "unavailable", "missing-selected", "action-error",
|
||||
if (["ready", "available-extra", "stale", "stale-authentication", "stale-not-configured",
|
||||
"unavailable", "missing-selected", "action-error",
|
||||
"process-actions", "process-no-output", "process-delayed-exit",
|
||||
"process-slow-actions"].indexOf(name) < 0)
|
||||
return;
|
||||
@@ -488,15 +489,31 @@ Singleton {
|
||||
|
||||
root.catalog = root.fixtureEntities();
|
||||
root.fixtureFavorites = root.fixturePreferenceRecords();
|
||||
if (name === "available-extra") {
|
||||
root.catalog = root.catalog.concat([{
|
||||
id: "light.fixture_guest",
|
||||
sourceName: "Guest lamp",
|
||||
state: "off",
|
||||
available: true,
|
||||
active: false,
|
||||
dimmable: true,
|
||||
brightnessPct: 0
|
||||
}]);
|
||||
}
|
||||
if (name === "missing-selected") {
|
||||
root.fixtureFavorites = root.fixtureFavorites.concat([
|
||||
{ id: "light.fixture_missing", alias: "Porch" }
|
||||
]);
|
||||
}
|
||||
root.rebuildSelection();
|
||||
root.phase = name === "stale" ? "degraded" : "ready";
|
||||
root.stale = name === "stale";
|
||||
root.lastError = name === "stale" ? "unreachable" : "";
|
||||
const isStale = ["stale", "stale-authentication", "stale-not-configured"].indexOf(name) >= 0;
|
||||
root.phase = isStale ? "degraded" : "ready";
|
||||
root.stale = isStale;
|
||||
root.lastError = name === "stale-authentication"
|
||||
? "authentication-required"
|
||||
: (name === "stale-not-configured"
|
||||
? "not-configured"
|
||||
: (name === "stale" ? "unreachable" : ""));
|
||||
if (name === "action-error") {
|
||||
root.entityErrors = {
|
||||
"light.fixture_kitchen": "request-failed"
|
||||
|
||||
Reference in New Issue
Block a user