UNPKG

2.02 kBJavaScriptView Raw
1import { tileLayer } from 'leaflet';
2var LeafletTileLayerDefinition = /** @class */ (function () {
3 function LeafletTileLayerDefinition(type, url, options) {
4 this.type = type;
5 this.url = url;
6 this.options = options;
7 }
8 /**
9 * Creates a TileLayer from the provided definition. This is a convenience function
10 * to help with generating layers from objects.
11 *
12 * @param layerDef The layer to create
13 * @returns {TileLayer} The TileLayer that has been created
14 */
15 LeafletTileLayerDefinition.createTileLayer = function (layerDef) {
16 var layer;
17 switch (layerDef.type) {
18 case 'xyz':
19 layer = tileLayer(layerDef.url, layerDef.options);
20 break;
21 case 'wms':
22 default:
23 layer = tileLayer.wms(layerDef.url, layerDef.options);
24 break;
25 }
26 return layer;
27 };
28 /**
29 * Creates a TileLayer for each key in the incoming map. This is a convenience function
30 * for generating an associative array of layers from an associative array of objects
31 *
32 * @param layerDefs A map of key to tile layer definition
33 * @returns {{[p: string]: TileLayer}} A new map of key to TileLayer
34 */
35 LeafletTileLayerDefinition.createTileLayers = function (layerDefs) {
36 var layers = {};
37 for (var k in layerDefs) {
38 if (layerDefs.hasOwnProperty(k)) {
39 layers[k] = (LeafletTileLayerDefinition.createTileLayer(layerDefs[k]));
40 }
41 }
42 return layers;
43 };
44 /**
45 * Create a Tile Layer from the current state of this object
46 *
47 * @returns {TileLayer} A new TileLayer
48 */
49 LeafletTileLayerDefinition.prototype.createTileLayer = function () {
50 return LeafletTileLayerDefinition.createTileLayer(this);
51 };
52 return LeafletTileLayerDefinition;
53}());
54export { LeafletTileLayerDefinition };
55//# sourceMappingURL=leaflet-tile-layer-definition.model.js.map
\No newline at end of file