Skip to content

Commit

Permalink
make configuration optional
Browse files Browse the repository at this point in the history
  • Loading branch information
niels committed Aug 18, 2020
1 parent bc9d149 commit bd3393f
Showing 1 changed file with 14 additions and 4 deletions.
18 changes: 14 additions & 4 deletions dist/entitylist.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@


class Entitylist {
constructor(hass) {
this._hass = hass;
Expand All @@ -9,8 +10,11 @@ class Entitylist {
Parselist(cfg) {
var domain_config = cfg['domains'];
var entity_config = cfg['entities'];
var included_domains = Object.keys(domain_config);
var included_entities = Object.keys(entity_config);
var groups = cfg['groups'];
if (!groups) groups = {};

var included_domains = (domain_config) ? Object.keys(domain_config) : [];
var included_entities = (entity_config) ? Object.keys(entity_config) : [];

Object.keys(this._hass.states).forEach(entity_id => {
var domain = entity_id.split('.').shift();
Expand All @@ -24,8 +28,14 @@ class Entitylist {
}
});

Object.keys(cfg.groups).forEach(group_id => {
var groupCfg = cfg.groups[group_id];
if (!Object.keys(groups).length) {
var standard_groups = Object.keys(this.entities).map(el => { return el.split('.').shift() }).filter((value, index, self) => { return self.indexOf(value) === index }).sort();
standard_groups = standard_groups.reduce((a, b) => (a[b] = { 'domains': [b] }, a), {});
groups = standard_groups;
}

Object.keys(groups).forEach(group_id => {
var groupCfg = groups[group_id];
var group = new Group(groupCfg, group_id);
if (groupCfg.domains !== undefined) {
groupCfg['domains'].forEach(domain => {
Expand Down

0 comments on commit bd3393f

Please sign in to comment.