mapcomplete/UI/ShowDataLayer/ShowDataLayer.ts

25 lines
961 B
TypeScript
Raw Normal View History

2022-04-28 11:48:04 +02:00
/**
* The data layer shows all the given geojson elements with the appropriate icon etc
*/
import {ShowDataLayerOptions} from "./ShowDataLayerOptions";
import LayerConfig from "../../Models/ThemeConfig/LayerConfig";
export default class ShowDataLayer {
2022-04-28 11:48:04 +02:00
public static actualContstructor : (options: ShowDataLayerOptions & { layerToShow: LayerConfig }) => void = undefined;
2022-01-26 21:40:38 +01:00
2022-03-02 16:00:02 +01:00
/**
* Creates a datalayer.
2022-04-28 11:48:04 +02:00
*
2022-03-02 16:00:02 +01:00
* If 'createPopup' is set, this function is called every time that 'popupOpen' is called
* @param options
*/
2022-04-28 11:48:04 +02:00
constructor(options: ShowDataLayerOptions & { layerToShow: LayerConfig }) {
if(ShowDataLayer.actualContstructor === undefined){
throw "Show data layer is called, but it isn't initialized yet. Call ` ShowDataLayer.actualContstructor = (options => new ShowDataLayerImplementation(options)) ` somewhere, e.g. in your init"
2022-04-28 11:48:04 +02:00
}
ShowDataLayer.actualContstructor(options)
2022-04-28 11:48:04 +02:00
}
}