feat: API for layers/room visible entities

This commit is contained in:
cha0s 2019-04-07 15:59:24 -04:00
parent 2002911505
commit 6f92fa25a2
2 changed files with 13 additions and 1 deletions

View File

@ -1,6 +1,6 @@
import * as I from 'immutable';
import {compose} from '@avocado/core';
import {arrayUnique, compose, flatten} from '@avocado/core';
import {EventEmitter} from '@avocado/mixins';
import {Synchronized} from '@avocado/state';
@ -120,4 +120,12 @@ export class Layers extends decorate(Synchronized) {
}
}
visibleEntities(query) {
const layerEntities = [];
for (const {index, layer} of this) {
layerEntities.push(layer.visibleEntities(query));
}
return arrayUnique(flatten(layerEntities));
}
}

View File

@ -153,4 +153,8 @@ export class Room extends decorate(Synchronized) {
}
}
visibleEntities(query) {
return this.layers.visibleEntities(query);
}
}