forked from MapComplete/MapComplete
21 lines
788 B
TypeScript
21 lines
788 B
TypeScript
import FeatureSource from "../FeatureSource"
|
|
import { Store } from "../../UIEventSource"
|
|
import { ElementStorage } from "../../ElementStorage"
|
|
|
|
/**
|
|
* Makes sure that every feature is added to the ElementsStorage, so that the tags-eventsource can be retrieved
|
|
*/
|
|
export default class RegisteringAllFromFeatureSourceActor {
|
|
public readonly features: Store<{ feature: any; freshness: Date }[]>
|
|
public readonly name
|
|
|
|
constructor(source: FeatureSource, allElements: ElementStorage) {
|
|
this.features = source.features
|
|
this.name = "RegisteringSource of " + source.name
|
|
this.features.addCallbackAndRunD((features) => {
|
|
for (const feature of features) {
|
|
allElements.addOrGetElement(feature.feature)
|
|
}
|
|
})
|
|
}
|
|
}
|