24 lines
No EOL
917 B
TypeScript
24 lines
No EOL
917 B
TypeScript
/**
|
|
* SHows geojson on the given leaflet map, but attempts to figure out the correct layer first
|
|
*/
|
|
import {UIEventSource} from "../../Logic/UIEventSource";
|
|
import ShowDataLayer from "./ShowDataLayer";
|
|
import PerLayerFeatureSourceSplitter from "../../Logic/FeatureSource/PerLayerFeatureSourceSplitter";
|
|
import FilteredLayer from "../../Models/FilteredLayer";
|
|
import {ShowDataLayerOptions} from "./ShowDataLayerOptions";
|
|
|
|
export default class ShowDataMultiLayer {
|
|
constructor(options: ShowDataLayerOptions & { layers: UIEventSource<FilteredLayer[]> }) {
|
|
|
|
new PerLayerFeatureSourceSplitter(options.layers, (perLayer => {
|
|
const newOptions = {
|
|
...options,
|
|
layerToShow: perLayer.layer.layerDef,
|
|
features: perLayer
|
|
}
|
|
new ShowDataLayer(newOptions)
|
|
}),
|
|
options.features)
|
|
|
|
}
|
|
} |