Skip to content

Commit 2a2007f

Browse files
committed
Add inital support for vector tiles
1 parent b16b470 commit 2a2007f

File tree

4 files changed

+326
-11
lines changed

4 files changed

+326
-11
lines changed

lib/config_default.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ export interface Link {
6262
export interface MapLayer {
6363
name: string;
6464
url: string;
65+
type?: string;
6566
config: GridLayerOptions & {
6667
start?: number; // Hour
6768
end?: number; // Hour

lib/map.ts

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import * as L from "leaflet";
2+
import "@maplibre/maplibre-gl-leaflet";
23

34
import { ClientLayer } from "./map/clientlayer.js";
45
import { LabelLayer } from "./map/labellayer.js";
@@ -83,13 +84,18 @@ export const Map = function (linkScale: (t: any) => any, sidebar: ReturnType<typ
8384
let layers = config.mapLayers.map(function (layer) {
8485
return {
8586
name: layer.name,
86-
layer: L.tileLayer(
87-
layer.url.replace(
88-
"{format}",
89-
document.createElement("canvas").toDataURL("image/webp").indexOf("data:image/webp") === 0 ? "webp" : "png",
90-
),
91-
layer.config,
92-
),
87+
layer:
88+
layer.type == "vector"
89+
? L.maplibreGL({ style: layer.url })
90+
: L.tileLayer(
91+
layer.url.replace(
92+
"{format}",
93+
document.createElement("canvas").toDataURL("image/webp").indexOf("data:image/webp") === 0
94+
? "webp"
95+
: "png",
96+
),
97+
layer.config,
98+
),
9399
};
94100
});
95101

0 commit comments

Comments
 (0)