Merge pull request #6222 from home-assistant/dev

This commit is contained in:
Paulus Schoutsen 2020-06-23 16:58:47 -07:00 committed by GitHub
commit 65d587843b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 21 additions and 53 deletions

View File

@ -2,7 +2,7 @@ from setuptools import setup, find_packages
setup( setup(
name="home-assistant-frontend", name="home-assistant-frontend",
version="20200623.2", version="20200623.3",
description="The Home Assistant frontend", description="The Home Assistant frontend",
url="https://github.com/home-assistant/home-assistant-polymer", url="https://github.com/home-assistant/home-assistant-polymer",
author="The Home Assistant Authors", author="The Home Assistant Authors",

View File

@ -14,7 +14,10 @@ export const getViewEntities = (
view.attributes.entity_id.forEach((entityId) => { view.attributes.entity_id.forEach((entityId) => {
const entity = entities[entityId]; const entity = entities[entityId];
if (entity && !entity.attributes.hidden) { if (!entity) {
return;
}
viewEntities[entity.entity_id] = entity; viewEntities[entity.entity_id] = entity;
if (computeDomain(entity.entity_id) === "group") { if (computeDomain(entity.entity_id) === "group") {
@ -23,12 +26,9 @@ export const getViewEntities = (
Object.keys(groupEntities).forEach((grEntityId) => { Object.keys(groupEntities).forEach((grEntityId) => {
const grEntity = groupEntities[grEntityId]; const grEntity = groupEntities[grEntityId];
if (!grEntity.attributes.hidden) {
viewEntities[grEntityId] = grEntity; viewEntities[grEntityId] = grEntity;
}
}); });
} }
}
}); });
return viewEntities; return viewEntities;

View File

@ -114,6 +114,7 @@ export const provideHass = (
); );
const localLanguage = getLocalLanguage(); const localLanguage = getLocalLanguage();
const noop = () => undefined;
const hassObj: MockHomeAssistant = { const hassObj: MockHomeAssistant = {
// Home Assistant properties // Home Assistant properties
@ -123,8 +124,8 @@ export const provideHass = (
}, },
} as any, } as any,
connection: { connection: {
addEventListener: () => undefined, addEventListener: noop,
removeEventListener: () => undefined, removeEventListener: noop,
sendMessage: (msg) => { sendMessage: (msg) => {
const callback = wsCommands[msg.type]; const callback = wsCommands[msg.type];
@ -168,6 +169,8 @@ export const provideHass = (
); );
}; };
}, },
suspendReconnectUntil: noop,
suspend: noop,
socket: { socket: {
readyState: WebSocket.OPEN, readyState: WebSocket.OPEN,
}, },

View File

@ -78,7 +78,7 @@ export class HomeAssistantAppEl extends HassElement {
document.addEventListener( document.addEventListener(
"visibilitychange", "visibilitychange",
() => this.__handleVisibilityChange(), () => this._handleVisibilityChange(),
false false
); );
} }
@ -148,7 +148,7 @@ export class HomeAssistantAppEl extends HassElement {
: route.path.substr(1, dividerPos - 1); : route.path.substr(1, dividerPos - 1);
} }
private __handleVisibilityChange() { protected _handleVisibilityChange() {
if (document.hidden) { if (document.hidden) {
// If the document is hidden, we will prevent reconnects until we are visible again // If the document is hidden, we will prevent reconnects until we are visible again
this.hass!.connection.suspendReconnectUntil( this.hass!.connection.suspendReconnectUntil(

View File

@ -487,7 +487,6 @@ class HaConfigZwave extends LocalizeMixin(EventsMixin(PolymerElement)) {
return false; return false;
} }
return ( return (
!ent.attributes.hidden &&
"node_id" in ent.attributes && "node_id" in ent.attributes &&
ent.attributes.node_id === nodeid && ent.attributes.node_id === nodeid &&
!ent.entity_id.match("zwave[.]") !ent.entity_id.match("zwave[.]")

View File

@ -60,6 +60,7 @@ const HIDE_DOMAIN = new Set([
"device_tracker", "device_tracker",
"geo_location", "geo_location",
"persistent_notification", "persistent_notification",
"zone",
]); ]);
let subscribedRegistries = false; let subscribedRegistries = false;
@ -227,10 +228,7 @@ const computeDefaultViewStates = (entities: HassEntities): HassEntities => {
const states = {}; const states = {};
Object.keys(entities).forEach((entityId) => { Object.keys(entities).forEach((entityId) => {
const stateObj = entities[entityId]; const stateObj = entities[entityId];
if ( if (!HIDE_DOMAIN.has(computeStateDomain(stateObj))) {
!stateObj.attributes.hidden &&
!HIDE_DOMAIN.has(computeStateDomain(stateObj))
) {
states[entityId] = entities[entityId]; states[entityId] = entities[entityId];
} }
}); });

View File

@ -124,7 +124,6 @@ class HaPanelMap extends LocalizeMixin(PolymerElement) {
var entity = hass.states[entityId]; var entity = hass.states[entityId];
if ( if (
(entity.attributes.hidden && computeStateDomain(entity) !== "zone") ||
entity.state === "home" || entity.state === "home" ||
!("latitude" in entity.attributes) || !("latitude" in entity.attributes) ||
!("longitude" in entity.attributes) !("longitude" in entity.attributes)

View File

@ -92,7 +92,6 @@ hassAttributeUtil.LOGIC_STATE_ATTRIBUTES = hassAttributeUtil.LOGIC_STATE_ATTRIBU
description: "Device class", description: "Device class",
domains: ["binary_sensor", "cover", "humidifier", "sensor", "switch"], domains: ["binary_sensor", "cover", "humidifier", "sensor", "switch"],
}, },
hidden: { type: "boolean", description: "Hide from UI" },
assumed_state: { assumed_state: {
type: "boolean", type: "boolean",
domains: [ domains: [

View File

@ -4,7 +4,6 @@ import { getViewEntities } from "../../../src/common/entity/get_view_entities";
import { import {
createEntities, createEntities,
createEntity,
createGroup, createGroup,
createView, createView,
entityMap, entityMap,
@ -47,33 +46,4 @@ describe("getViewEntities", () => {
assert.deepEqual(expectedEntities, getViewEntities(entities, view)); assert.deepEqual(expectedEntities, getViewEntities(entities, view));
}); });
it("should not include hidden entities inside groups", () => {
const visibleEntity = createEntity({ attributes: { hidden: false } });
const hiddenEntity = createEntity({ attributes: { hidden: true } });
const group1 = createGroup({
attributes: {
entity_id: [visibleEntity.entity_id, hiddenEntity.entity_id],
},
});
const entities = {
[visibleEntity.entity_id]: visibleEntity,
[hiddenEntity.entity_id]: hiddenEntity,
[group1.entity_id]: group1,
};
const view = createView({
attributes: {
entity_id: [group1.entity_id],
},
});
const expectedEntities = {
[visibleEntity.entity_id]: visibleEntity,
[group1.entity_id]: group1,
};
assert.deepEqual(expectedEntities, getViewEntities(entities, view));
});
}); });