feat(workbench): integrate operational workflows and map state

This commit is contained in:
2026-09-24 04:34:46 +08:00
parent 1752b9ef84
commit 436d5500f1
76 changed files with 5081 additions and 1937 deletions
@@ -1,6 +1,7 @@
import maplibregl, { type Map as MapLibreMap } from "maplibre-gl";
import {
CITY_LAYERS,
CITY_LIGHT,
CITY_ROOT,
cityManifestSchema,
citySources,
@@ -37,9 +38,10 @@ class CitySceneControl {
private addLayers() {
const map = this.map;
if (!map) return;
map.setLight(CITY_LIGHT);
Object.entries(citySources()).forEach(([id, source]) => map.addSource(id, source));
const firstBusinessLayer = findCitySceneInsertionLayerId(map.getStyle().layers);
CITY_LAYERS.forEach((layer) => map.addLayer(layer, firstBusinessLayer));
const firstHitLayer = findCitySceneInsertionLayerId(map.getStyle().layers);
CITY_LAYERS.forEach((layer) => map.addLayer(layer, firstHitLayer));
this.attribution = new maplibregl.AttributionControl({
compact: true,
customAttribution: