leaflet-city-mapper 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/leaflet-city-mapper-src.js.map +1 -1
- package/dist/leaflet-city-mapper-worker-src.js.map +1 -1
- package/dist/leaflet-city-mapper-worker.js.map +1 -1
- package/dist/leaflet-city-mapper.js.map +1 -1
- package/libs/leaflet-lens.js +151 -151
- package/libs/leaflet.js +3 -3
- package/libs/openlayers-bindings.js +1129 -1129
- package/libs/openlayers-bindings.min.js.map +1 -1
- package/package.json +2 -4
- package/src/animations/cancelCameraAnimation.js +19 -19
- package/src/animations/mapStopPitchBearingAnimation.js +10 -10
- package/src/animations/scheduleCameraAnimation.js +15 -15
- package/src/animations/scheduleMarkerPan.js +14 -14
- package/src/animations/updateZoomCamera.js +25 -25
- package/src/archives/findDirectoryEntry.js +17 -17
- package/src/archives/findTile.js +45 -45
- package/src/archives/getDirectoryEntries.js +30 -30
- package/src/archives/getTileData.js +26 -26
- package/src/archives/readArchiveRange.js +48 -48
- package/src/astronomy/solarTime.js +21 -21
- package/src/camera/cameraMapReady.js +9 -9
- package/src/camera/cleanupCameraMap.js +13 -13
- package/src/camera/constrainCameraToBounds.js +3 -3
- package/src/camera/createSceneCamera.js +25 -25
- package/src/camera/getBearing.js +10 -10
- package/src/camera/getPitch.js +10 -10
- package/src/camera/mapGetBoundsCenterZoom.js +14 -14
- package/src/camera/mapLimitOffset.js +17 -17
- package/src/camera/mapPanBy.js +14 -14
- package/src/camera/setBearing.js +13 -13
- package/src/camera/setPitch.js +13 -13
- package/src/cog/decodeCogTile.js +37 -37
- package/src/cog/finiteCogValues.js +12 -12
- package/src/cog/getCogAssetEntry.js +26 -26
- package/src/cog/getCogBase.js +22 -22
- package/src/cog/getCogHeader.js +10 -10
- package/src/cog/getCogProfile.js +25 -25
- package/src/cog/getCogTile.js +25 -25
- package/src/cog/getColorTile.js +38 -38
- package/src/cog/getElevationTile.js +29 -29
- package/src/cog/hasCogProjection.js +16 -16
- package/src/cog/initCog.js +13 -13
- package/src/cog/invalidCogFullResponse.js +10 -10
- package/src/cog/openCog.js +40 -40
- package/src/cog/openCogAsset.js +22 -22
- package/src/cog/readCog.js +39 -39
- package/src/cog/readCogBlock.js +19 -19
- package/src/cog/readCogBody.js +30 -30
- package/src/cog/readCogDirectories.js +32 -32
- package/src/cog/readCogDirectory.js +34 -34
- package/src/cog/readCogLevel.js +36 -36
- package/src/cog/readCogTag.js +28 -28
- package/src/cog/validCogDimensions.js +15 -15
- package/src/cog/validCogEncoding.js +18 -18
- package/src/cog/validCogGeoArrays.js +17 -17
- package/src/cog/validCogGrid.js +22 -22
- package/src/cog/validCogTileCoordinates.js +13 -13
- package/src/cog/validateCogContainer.js +17 -17
- package/src/cog/validateCogContentRange.js +18 -18
- package/src/cog/validateCogOffsets.js +19 -19
- package/src/cog/validateCogRange.js +16 -16
- package/src/cog/validateCogResponse.js +26 -26
- package/src/collision/collectIntersections.js +41 -41
- package/src/collision/hiddenLightHit.js +19 -19
- package/src/collision/indexTriangle.js +18 -18
- package/src/collision/insideMesh.js +47 -47
- package/src/collision/insideWalker.js +52 -52
- package/src/collision/intersectMeshes.js +40 -40
- package/src/collision/localRay.js +31 -31
- package/src/collision/mergeHits.js +19 -19
- package/src/collision/rayBounds.js +28 -28
- package/src/collision/readTriangle.js +32 -32
- package/src/collision/trafficCollision.js +23 -23
- package/src/collision/transformTriangle.js +18 -18
- package/src/collision/triangleDistance.js +34 -34
- package/src/collision/vertexCount.js +11 -11
- package/src/collision/worldHit.js +30 -30
- package/src/controls/acceptPitchDrag.js +10 -10
- package/src/controls/acceptRotateDrag.js +9 -9
- package/src/controls/addCameraHandler.js +18 -18
- package/src/controls/adjustCameraDrag.js +13 -13
- package/src/controls/cameraDragContextMenu.js +12 -12
- package/src/controls/cameraDragEnd.js +10 -10
- package/src/controls/cameraDragMove.js +31 -31
- package/src/controls/changeCameraTouch.js +17 -17
- package/src/controls/compassOrientation.js +12 -12
- package/src/controls/compassRemoveHooks.js +2 -2
- package/src/controls/containerResizeRemoveHooks.js +2 -2
- package/src/controls/endCameraTouch.js +18 -18
- package/src/controls/failCompassPermission.js +10 -10
- package/src/controls/finishCameraDrag.js +14 -14
- package/src/controls/finishCompassPermission.js +24 -24
- package/src/controls/isEditableTarget.js +9 -9
- package/src/controls/loadCameraControls.js +18 -18
- package/src/controls/moveCameraTouch.js +34 -34
- package/src/controls/refreshRotateFocus.js +5 -5
- package/src/controls/removeCameraDrag.js +28 -28
- package/src/controls/resizeMap.js +7 -7
- package/src/controls/rotateButtonClick.js +16 -16
- package/src/controls/rotateButtonKeydown.js +20 -20
- package/src/controls/rotateControl.js +12 -12
- package/src/controls/shiftRotateRemoveHooks.js +2 -2
- package/src/controls/shiftRotateWheel.js +15 -15
- package/src/core/cameraMarkerOnDrag.js +16 -16
- package/src/core/constructLayer.js +16 -16
- package/src/core/extendLeafletClass.js +12 -12
- package/src/core/extendTerrainPixelBounds.js +41 -41
- package/src/core/layerAddInitHook.js +12 -12
- package/src/core/layerMergeOptions.js +14 -14
- package/src/core/markerInitInteraction.js +10 -10
- package/src/core/markerSetIcon.js +14 -14
- package/src/core/markerSetRotation.js +19 -19
- package/src/core/projectNativePath.js +30 -30
- package/src/core/redrawPath.js +11 -11
- package/src/core/removeLayer.js +26 -26
- package/src/core/setRotation.js +12 -12
- package/src/core/whenReady.js +14 -14
- package/src/geometry/addBridges.js +36 -36
- package/src/geometry/addGeneratedTriangle.js +10 -10
- package/src/geometry/appendAreaTriangle.js +32 -32
- package/src/geometry/appendNativeTriangle.js +17 -17
- package/src/geometry/appendRouteDash.js +33 -33
- package/src/geometry/appendRouteSegment.js +28 -28
- package/src/geometry/assembleAreaGeometry.js +48 -48
- package/src/geometry/bridgeEdge.js +18 -18
- package/src/geometry/bridgeFaces.js +22 -22
- package/src/geometry/bridgePaths.js +19 -19
- package/src/geometry/bridgePolygon.js +37 -37
- package/src/geometry/bridgeSides.js +18 -18
- package/src/geometry/buildProjectedPoint.js +32 -32
- package/src/geometry/buildProjectedPolygon.js +34 -34
- package/src/geometry/circleAt.js +20 -20
- package/src/geometry/circleGeometry.js +41 -41
- package/src/geometry/createModelGeometry.js +44 -44
- package/src/geometry/crossVector.js +15 -15
- package/src/geometry/dashValues.js +23 -23
- package/src/geometry/dashedSegment.js +33 -33
- package/src/geometry/diskAt.js +18 -18
- package/src/geometry/emitter.js +18 -18
- package/src/geometry/fillNativePolygon.js +28 -28
- package/src/geometry/generateTreeGeometry.js +18 -18
- package/src/geometry/indexBridge.js +36 -36
- package/src/geometry/instanceAreaGeometry.js +37 -37
- package/src/geometry/line.js +28 -28
- package/src/geometry/lineJoin.js +35 -35
- package/src/geometry/markerImageBounds.js +20 -20
- package/src/geometry/meshShadowBounds.js +33 -33
- package/src/geometry/offsetBelowGround.js +10 -10
- package/src/geometry/quad.js +23 -23
- package/src/geometry/restoreGeometry.js +29 -29
- package/src/geometry/roofCoverage.js +33 -33
- package/src/geometry/roofFootprint.js +40 -40
- package/src/geometry/samePoint.js +11 -11
- package/src/geometry/segment.js +32 -32
- package/src/geometry/subtractRoofTile.js +28 -28
- package/src/geometry/terrainBuffers.js +36 -36
- package/src/geometry/terrainTileGeometry.js +28 -28
- package/src/geometry/validateTree.js +19 -19
- package/src/globals/L.js +6 -6
- package/src/globals/cameraFov.js +8 -8
- package/src/globals/cogTags.js +6 -6
- package/src/globals/colorTexture.js +11 -11
- package/src/globals/cosObliquity.js +8 -8
- package/src/globals/degrees.js +6 -6
- package/src/globals/earthCirc.js +6 -6
- package/src/globals/geometryWorkerUrl.js +8 -8
- package/src/globals/halfRadians.js +6 -6
- package/src/globals/lampDirections.js +13 -13
- package/src/globals/layerControlAddItem.js +8 -8
- package/src/globals/leafletLayer.js +8 -8
- package/src/globals/lightScale.js +6 -6
- package/src/globals/mvtTextDecoder.js +6 -6
- package/src/globals/nativeScalableStyleKeys.js +6 -6
- package/src/globals/sinObliquity.js +8 -8
- package/src/globals/tau.js +6 -6
- package/src/globals/vectorStyleNamedColors.js +13 -13
- package/src/globals/vectorTileEvents.js +6 -6
- package/src/globals/workerCogSource.js +6 -6
- package/src/gpu/initializeRendererResources.js +39 -39
- package/src/gpu/initializeSharedRenderer.js +59 -59
- package/src/gpu/mountRenderer.js +25 -25
- package/src/layer-controls/layerControlInputId.js +18 -18
- package/src/layer-controls/layerCountTitle.js +16 -16
- package/src/layer-controls/placeEntryElement.js +29 -29
- package/src/layer-controls/renderLayerCount.js +28 -28
- package/src/lighting/visitLightCells.js +26 -26
- package/src/lighting/writeLightCell.js +14 -14
- package/src/materials/createProgramLayout.js +44 -44
- package/src/materials/createProgramUniforms.js +25 -25
- package/src/materials/modelMaterialFor.js +29 -29
- package/src/materials/prepareMeshCutout.js +21 -21
- package/src/materials/terrainRasterProgram.js +65 -65
- package/src/materials/validateRoofMaterial.js +17 -17
- package/src/models/applyModelTransform.js +18 -18
- package/src/models/buildModelNodes.js +24 -24
- package/src/models/createModelContext.js +24 -24
- package/src/models/loadBuffer.js +16 -16
- package/src/models/loadModelResources.js +22 -22
- package/src/models/normalizeAccessor.js +21 -21
- package/src/models/prepareModel.js +29 -29
- package/src/models/prepareModelGeometry.js +35 -35
- package/src/models/prepareModelPrimitive.js +25 -25
- package/src/models/readAccessorValue.js +16 -16
- package/src/models/readModelAttributes.js +32 -32
- package/src/models/readModelIndices.js +28 -28
- package/src/models/readSparseAccessor.js +31 -31
- package/src/models/releaseModelResources.js +15 -15
- package/src/mvt/addMvtCrossings.js +23 -23
- package/src/mvt/appendMvtBandTriangles.js +42 -42
- package/src/mvt/appendMvtCoordinates.js +20 -20
- package/src/mvt/appendMvtPolygonTriangles.js +29 -29
- package/src/mvt/beginMvtPath.js +19 -19
- package/src/mvt/closeMvtPath.js +16 -16
- package/src/mvt/collectMvtEdges.js +29 -29
- package/src/mvt/createMvtReader.js +14 -14
- package/src/mvt/decodeVectorTile.js +39 -39
- package/src/mvt/expectMvtWire.js +11 -11
- package/src/mvt/finishMvtPath.js +14 -14
- package/src/mvt/finiteMvtCoordinate.js +14 -14
- package/src/mvt/groupMvtPolygons.js +35 -35
- package/src/mvt/isMvtFallbackError.js +13 -13
- package/src/mvt/mergeMvtActiveEdges.js +18 -18
- package/src/mvt/mvtEdgeX.js +12 -12
- package/src/mvt/mvtPathsVertices.js +15 -15
- package/src/mvt/mvtPolygonPaths.js +19 -19
- package/src/mvt/numericMvtValue.js +11 -11
- package/src/mvt/readMvtFeature.js +46 -46
- package/src/mvt/readMvtField.js +17 -17
- package/src/mvt/readMvtGeometry.js +42 -42
- package/src/mvt/readMvtInteger.js +22 -22
- package/src/mvt/readMvtKnownValue.js +30 -30
- package/src/mvt/readMvtLayer.js +40 -40
- package/src/mvt/readMvtMessage.js +18 -18
- package/src/mvt/readMvtNumber.js +18 -18
- package/src/mvt/readMvtNumbers.js +18 -18
- package/src/mvt/readMvtString.js +14 -14
- package/src/mvt/readMvtValue.js +29 -29
- package/src/mvt/skipMvtField.js +22 -22
- package/src/mvt/sortMvtActiveEdges.js +20 -20
- package/src/mvt/sortedMvtLevels.js +29 -29
- package/src/mvt/takeMvtBytes.js +18 -18
- package/src/mvt/tessellateVectorRings.js +26 -26
- package/src/mvt/triangulateVectorRings.js +23 -23
- package/src/native/beforeNativeRender.js +21 -21
- package/src/native/bypassNativeEvent.js +21 -21
- package/src/native/canScaleNativeStyle.js +26 -26
- package/src/native/compareNativeHits.js +10 -10
- package/src/native/createNativeMesh.js +46 -46
- package/src/native/forwardNativeError.js +8 -8
- package/src/native/getGridTerrainTile.js +47 -47
- package/src/native/gridTerrainElevation.js +34 -34
- package/src/native/isCurrentNativeLayer.js +11 -11
- package/src/native/loadGridTerrain.js +36 -36
- package/src/native/nativeEventSource.js +27 -27
- package/src/native/nativeProgram.js +28 -28
- package/src/native/nativeTerrainElevation.js +27 -27
- package/src/native/nativeVectorGeometry.js +30 -30
- package/src/native/orderNativeGridLayer.js +20 -20
- package/src/native/prepareGridTerrainRequests.js +23 -23
- package/src/native/pruneNativeResources.js +25 -25
- package/src/native/readyNativeGPU.js +13 -13
- package/src/native/rejectNativeReady.js +2 -2
- package/src/native/removeNativeEvents.js +20 -20
- package/src/native/resolveNativeReady.js +2 -2
- package/src/native/restoreNativeEvents.js +8 -8
- package/src/native/retainGridTerrain.js +15 -15
- package/src/native/styleNativeMesh.js +20 -20
- package/src/native/syncGridTile.js +28 -28
- package/src/native/syncImageOverlay.js +13 -13
- package/src/native/syncNativeStrokeAnchors.js +18 -18
- package/src/native/syncNativeStrokeZoom.js +34 -34
- package/src/native/syncTerrainGridTile.js +38 -38
- package/src/native/terrainGridMesh.js +47 -47
- package/src/native/updateNativeHover.js +15 -15
- package/src/native/updateNativeStrokeRadius.js +14 -14
- package/src/picking/hitColliderCell.js +29 -29
- package/src/picking/validateCameraInverse.js +15 -15
- package/src/projections/displayContainerPoint.js +32 -32
- package/src/projections/projectBridgePoint.js +17 -17
- package/src/projections/toPoint.js +13 -13
- package/src/projections/transformZoomAnimationPoint.js +8 -8
- package/src/projections/verticalGroundY.js +14 -14
- package/src/raster/rasterTileRange.js +32 -32
- package/src/raster/retainRasterTiles.js +21 -21
- package/src/rendering/collectVisibleMesh.js +48 -48
- package/src/rendering/compareMeshDepth.js +14 -14
- package/src/rendering/drawPipeline.js +44 -44
- package/src/rendering/nativeStrokeExpansion.js +11 -11
- package/src/rendering/prepareFrameBuffer.js +24 -24
- package/src/rendering/prepareMeshUniforms.js +36 -36
- package/src/rendering/revealRoofMesh.js +43 -43
- package/src/scene/addSceneLayer.js +24 -24
- package/src/scene/callLayer.js +34 -34
- package/src/scene/createLayer.js +13 -13
- package/src/scene/getLocation.js +12 -12
- package/src/scene/isNativeLayer.js +19 -19
- package/src/scene/removeSceneLayer.js +22 -22
- package/src/scene/reportLayerError.js +9 -9
- package/src/shaders/materialBaseShader.js +26 -26
- package/src/shaders/materialSurfaceShader.js +60 -60
- package/src/shaders/materialVertexShader.js +89 -89
- package/src/shaders/nativeStrokeShader.js +13 -13
- package/src/shaders/roofVertexShader.js +16 -16
- package/src/shadows/shadowMeshMatches.js +19 -19
- package/src/sources/buildAreaFeatures.js +23 -23
- package/src/sources/extrusionStyle.js +21 -21
- package/src/sources/featureAnchor.js +21 -21
- package/src/sources/groundOffset.js +9 -9
- package/src/sources/initVectorTiles.js +21 -21
- package/src/sources/isVectorTileSource.js +11 -11
- package/src/sources/matchesAreaTile.js +17 -17
- package/src/sources/pendingSourceAreas.js +28 -28
- package/src/sources/prepareAreaGeometryJob.js +34 -34
- package/src/sources/projectAreaPolygons.js +25 -25
- package/src/sources/readyVectorTiles.js +17 -17
- package/src/sunlight/addTimeControlToMap.js +18 -18
- package/src/sunlight/addTimeLayer.js +12 -12
- package/src/sunlight/initializeTimeControl.js +18 -18
- package/src/sunlight/onAddSun.js +37 -37
- package/src/sunlight/onAddTimeControl.js +12 -12
- package/src/sunlight/onRemoveSun.js +10 -10
- package/src/sunlight/removeSun.js +25 -25
- package/src/sunlight/removeTimeControl.js +14 -14
- package/src/sunlight/removeTimeLayer.js +11 -11
- package/src/sunlight/requestSunlightRender.js +12 -12
- package/src/sunlight/styleTimeControl.js +13 -13
- package/src/sunlight/tickSun.js +10 -10
- package/src/sunlight/updateCelestialDisc.js +23 -23
- package/src/sunlight/updateSun.js +44 -44
- package/src/sunlight/useLiveTime.js +11 -11
- package/src/sunlight/useSelectedTime.js +26 -26
- package/src/terrain/applyTerrain.js +30 -30
- package/src/terrain/copyTerrainTile.js +20 -20
- package/src/terrain/loadReadyTerrain.js +6 -6
- package/src/terrain/mapElevationOf.js +19 -19
- package/src/terrain/readBridges.js +13 -13
- package/src/terrain/readyTerrainOf.js +14 -14
- package/src/terrain/sampleTerrainTile.js +16 -16
- package/src/terrain/terrainTileQueue.js +34 -34
- package/src/textures/addImageState.js +13 -13
- package/src/textures/bindMeshTextures.js +57 -57
- package/src/textures/collectRoofTiles.js +23 -23
- package/src/textures/loadModelImage.js +29 -29
- package/src/textures/modelTextureFor.js +47 -47
- package/src/textures/prepareMeshTextures.js +31 -31
- package/src/textures/removeImageState.js +13 -13
- package/src/textures/resizeRoofTexture.js +32 -32
- package/src/textures/restoreMaterialTextures.js +22 -22
- package/src/textures/updateRoofAtlas.js +29 -29
- package/src/textures/uploadMeshTexture.js +32 -32
- package/src/textures/uploadNativeImage.js +26 -26
- package/src/textures/uploadRoofTile.js +29 -29
- package/src/traffic/createTrafficMesh.js +17 -17
- package/src/traffic/disposeTrafficObject.js +19 -19
- package/src/traffic/failTraffic.js +12 -12
- package/src/traffic/failedTrafficLoad.js +10 -10
- package/src/traffic/fetchTrafficLanes.js +21 -21
- package/src/traffic/loadedTrafficLanes.js +21 -21
- package/src/traffic/locateTraffic.js +20 -20
- package/src/traffic/moveTraffic.js +21 -21
- package/src/traffic/readyTraffic.js +10 -10
- package/src/traffic/refreshTrafficTrips.js +42 -42
- package/src/traffic/routeColor.js +13 -13
- package/src/traffic/startTraffic.js +12 -12
- package/src/traffic/trafficNow.js +15 -15
- package/src/traffic/trafficStatusText.js +13 -13
- package/src/traffic/trafficStorage.js +13 -13
- package/src/traffic/updateTraffic.js +13 -13
- package/src/traffic/updateTrafficLights.js +23 -23
- package/src/traffic/updateTrafficPose.js +15 -15
- package/src/traffic/updateTrafficTerrain.js +15 -15
- package/src/traffic/uploadTrafficLanes.js +27 -27
- package/src/transforms/composeLocalTransform.js +23 -23
- package/src/transforms/transformNativePoint.js +19 -19
- package/src/transforms/worldMatrixChanged.js +26 -26
- package/src/triangulation/clipEars.js +32 -32
- package/src/triangulation/connectHole.js +30 -30
- package/src/triangulation/cross.js +12 -12
- package/src/triangulation/equal.js +11 -11
- package/src/triangulation/intersects.js +21 -21
- package/src/triangulation/mergeHoles.js +19 -19
- package/src/triangulation/on.js +13 -13
- package/src/triangulation/polygonRings.js +22 -22
- package/src/triangulation/validateArea.js +19 -19
- package/src/utils/compareDistance.js +11 -11
- package/src/utils/yieldTask.js +12 -12
- package/src/vector-style/appendQuotedStyleCharacter.js +30 -30
- package/src/vector-style/arrayContainsRange.js +18 -18
- package/src/vector-style/evaluateBoolean.js +31 -31
- package/src/vector-style/evaluateCoalesceOrCase.js +34 -34
- package/src/vector-style/evaluateComparison.js +29 -29
- package/src/vector-style/evaluateIExpression.js +21 -21
- package/src/vector-style/evaluateInput.js +16 -16
- package/src/vector-style/evaluateInterpolate.js +36 -36
- package/src/vector-style/evaluateMatch.js +21 -21
- package/src/vector-style/evaluateMath.js +26 -26
- package/src/vector-style/evaluateMembership.js +29 -29
- package/src/vector-style/evaluateNegation.js +26 -26
- package/src/vector-style/evaluatePrimitive.js +21 -21
- package/src/vector-style/evaluateStep.js +20 -20
- package/src/vector-style/evaluateStyle.js +43 -43
- package/src/vector-style/evaluateToExpression.js +27 -27
- package/src/vector-style/fillVectorPaint.js +26 -26
- package/src/vector-style/lineVectorPaint.js +31 -31
- package/src/vector-style/parseFunctionalColor.js +23 -23
- package/src/vector-style/parseHexColor.js +20 -20
- package/src/vector-style/parseVectorStyle.js +20 -20
- package/src/vector-style/readPaintValue.js +17 -17
- package/src/vector-style/removeTrailingCommas.js +19 -19
- package/src/vector-style/scaleDashArray.js +25 -25
- package/src/vector-style/skipStyleComment.js +20 -20
- package/src/vector-style/stripStyleComments.js +28 -28
- package/src/vector-style/styleColor.js +18 -18
- package/src/vector-style/validateVectorLayers.js +18 -18
- package/src/vector-style/vectorPaint.js +17 -17
- package/src/vector-style/visibleStyle.js +16 -16
- package/src/vector-tiles/appendVectorBatch.js +34 -34
- package/src/vector-tiles/attachVectorTileBatch.js +25 -25
- package/src/vector-tiles/attachVectorTileBatches.js +26 -26
- package/src/vector-tiles/compareVectorLabelPriority.js +11 -11
- package/src/vector-tiles/compareVectorTileDistance.js +11 -11
- package/src/vector-tiles/createVectorLabel.js +37 -37
- package/src/vector-tiles/forwardVectorTileError.js +10 -10
- package/src/vector-tiles/loadVectorSprite.js +14 -14
- package/src/vector-tiles/loadVectorTile.js +45 -45
- package/src/vector-tiles/onVectorTileAdd.js +44 -44
- package/src/vector-tiles/onVectorTileMessage.js +15 -15
- package/src/vector-tiles/onVectorTileRemove.js +25 -25
- package/src/vector-tiles/onVectorTileWorkerError.js +16 -16
- package/src/vector-tiles/paintVectorTileBatch.js +18 -18
- package/src/vector-tiles/prepareVectorLabel.js +34 -34
- package/src/vector-tiles/prepareVectorStyleLayer.js +38 -38
- package/src/vector-tiles/prepareVectorTile.js +29 -29
- package/src/vector-tiles/projectVectorPaths.js +25 -25
- package/src/vector-tiles/projectVectorPoint.js +15 -15
- package/src/vector-tiles/projectVectorTriangles.js +28 -28
- package/src/vector-tiles/pruneVectorTiles.js +14 -14
- package/src/vector-tiles/pumpVectorTiles.js +21 -21
- package/src/vector-tiles/readTileJSON.js +27 -27
- package/src/vector-tiles/readVectorStyle.js +28 -28
- package/src/vector-tiles/refreshVectorTiles.js +8 -8
- package/src/vector-tiles/reserveVectorLabelCells.js +14 -14
- package/src/vector-tiles/retireVectorTileGroup.js +20 -20
- package/src/vector-tiles/revokeVectorWorkerUrl.js +14 -14
- package/src/vector-tiles/rotateVectorLabel.js +19 -19
- package/src/vector-tiles/rotateVectorLabels.js +9 -9
- package/src/vector-tiles/simplifyVectorPath.js +29 -29
- package/src/vector-tiles/updateVectorLabelMarker.js +36 -36
- package/src/vector-tiles/updateVectorLabelStyle.js +14 -14
- package/src/vector-tiles/updateVectorTileLabels.js +33 -33
- package/src/vector-tiles/updateVectorTilePaint.js +25 -25
- package/src/vector-tiles/updateVectorTiles.js +32 -32
- package/src/vector-tiles/validateVectorTileZooms.js +15 -15
- package/src/vector-tiles/vectorFeaturePaint.js +25 -25
- package/src/vector-tiles/vectorFeaturePaths.js +26 -26
- package/src/vector-tiles/vectorFeatureZoom.js +18 -18
- package/src/vector-tiles/vectorLabelAnchors.js +31 -31
- package/src/vector-tiles/vectorLabelCandidates.js +18 -18
- package/src/vector-tiles/vectorLabelCells.js +32 -32
- package/src/vector-tiles/vectorLabelIcon.js +38 -38
- package/src/vector-tiles/vectorLabelProperty.js +12 -12
- package/src/vector-tiles/vectorLabelText.js +19 -19
- package/src/vector-tiles/vectorSpriteIcon.js +19 -19
- package/src/vector-tiles/vectorStraightRun.js +23 -23
- package/src/vector-tiles/vectorStyleDependencies.js +22 -22
- package/src/vector-tiles/vectorStyleValue.js +16 -16
- package/src/vector-tiles/vectorStyleZoom.js +12 -12
- package/src/vector-tiles/vectorTileAwaited.js +17 -17
- package/src/vector-tiles/vectorTileOverlaps.js +12 -12
- package/src/vector-tiles/vectorTilePaint.js +18 -18
- package/src/vector-tiles/vectorTileSettings.js +27 -27
- package/src/vector-tiles/vectorTilesIdle.js +11 -11
- package/src/vector-tiles/vectorTolerance.js +11 -11
- package/src/vector-tiles/wrapVectorLabel.js +17 -17
- package/src/vehicles/boatModel.js +35 -35
- package/src/vehicles/busModel.js +13 -13
- package/src/vehicles/carModel.js +39 -39
- package/src/walk/initializeWalkControl.js +12 -12
- package/src/walk/isWalkBlocked.js +15 -15
- package/src/walk/landWalker.js +41 -41
- package/src/walk/moveWalker.js +37 -37
- package/src/walk/onAddWalkControl.js +40 -40
- package/src/walk/onRemoveWalkControl.js +17 -17
- package/src/walk/onWalkBlur.js +3 -3
- package/src/walk/onWalkTerrain.js +3 -3
- package/src/walk/resolveWalkerPosition.js +33 -33
- package/src/walk/stepWalkerHeight.js +18 -18
- package/src/walk/toggleWalking.js +4 -4
- package/src/walk/updateWalkerFrame.js +29 -29
- package/src/walk/updateWalkerView.js +31 -31
- package/src/weakmaps/cameraHandlersByMap.js +6 -6
- package/src/weakmaps/geometryWorkersByMap.js +6 -6
- package/src/weakmaps/nativeProgramsByRenderer.js +6 -6
- package/src/weakmaps/pathProjectionByMap.js +6 -6
- package/src/weakmaps/streamTerrainByLayer.js +6 -6
- package/src/weakmaps/streamTerrainByMap.js +6 -6
- package/src/weakmaps/sunByMap.js +6 -6
- package/src/weakmaps/vectorTileOptionsByLayer.js +6 -6
- package/src/weakmaps/vectorWorkerByLayer.js +6 -6
- package/src/weakmaps/walkByMap.js +6 -6
- package/src/weakmaps/workerMapByLayer.js +6 -6
- package/src/workers/acquireGeometryWorker.js +39 -39
- package/src/workers/buildAreaInWorker.js +24 -24
- package/src/workers/closeGeometryWorkers.js +16 -16
- package/src/workers/cogWorker.js +27 -27
- package/src/workers/createGeometryWorker.js +30 -30
- package/src/workers/geometryWorker.js +34 -34
- package/src/workers/getCogInWorker.js +18 -18
- package/src/workers/modelWorker.js +17 -17
- package/src/workers/openCogInWorker.js +22 -22
- package/src/workers/runSourceWorker.js +44 -44
- package/src/workers/settleGeometryWorker.js +16 -16
- package/src/workers/startGeometryWorker.js +23 -23
- package/src/workers/vectorTileWorker.js +15 -15
package/libs/leaflet-lens.js
CHANGED
|
@@ -1,151 +1,151 @@
|
|
|
1
|
-
// Load after Leaflet and leaflet-city-mapper.
|
|
2
|
-
(() => {
|
|
3
|
-
const L = globalThis.L || globalThis.leaflet;
|
|
4
|
-
if (!L?.Control) throw new Error('Leaflet must be loaded before leaflet-lens.js');
|
|
5
|
-
|
|
6
|
-
function initializeLens(outerLayer, innerLayer, options) {
|
|
7
|
-
L.Util.setOptions(this, options);
|
|
8
|
-
if (options?.enabled === undefined) {
|
|
9
|
-
this.options.enabled = !matchMedia('(hover: none) and (pointer: coarse)').matches;
|
|
10
|
-
}
|
|
11
|
-
if (!outerLayer?.options || !innerLayer?.options || outerLayer === innerLayer) {
|
|
12
|
-
throw new TypeError('Lens requires two distinct raster layers');
|
|
13
|
-
}
|
|
14
|
-
if (!Number.isFinite(this.options.radius) || this.options.radius <= 0) {
|
|
15
|
-
throw new RangeError('Lens radius must be positive and finite in CSS pixels');
|
|
16
|
-
}
|
|
17
|
-
if (typeof this.options.enabled !== 'boolean') throw new TypeError('Lens enabled must be boolean');
|
|
18
|
-
this._layers = [outerLayer, innerLayer];
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
class LensControl extends (L.version.startsWith('2.') ? L.Control : L.Control.extend({})) {
|
|
22
|
-
static initHooks = true;
|
|
23
|
-
static defaultOptions = { position: 'topright', radius: 150, enabled: true };
|
|
24
|
-
|
|
25
|
-
constructor(outerLayer, innerLayer, options) {
|
|
26
|
-
if (L.version.startsWith('2.')) {
|
|
27
|
-
super(options);
|
|
28
|
-
initializeLens.call(this, outerLayer, innerLayer, options);
|
|
29
|
-
this.callInitHooks();
|
|
30
|
-
} else {
|
|
31
|
-
super(outerLayer, innerLayer, options);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
onAdd(map) {
|
|
36
|
-
for (const layer of this._layers) {
|
|
37
|
-
if (layer._map && layer._map !== map) throw new Error('Lens layers must belong to the same map');
|
|
38
|
-
}
|
|
39
|
-
this._originalCutouts = this._layers.map(layer => ({
|
|
40
|
-
own: Object.hasOwn(layer.options, 'cutout'), value: layer.options.cutout,
|
|
41
|
-
}));
|
|
42
|
-
this._masks = [
|
|
43
|
-
{ x: 0, y: 0, radius: 0 },
|
|
44
|
-
{ x: 0, y: 0, radius: 0, outside: true },
|
|
45
|
-
];
|
|
46
|
-
for (let i = 0; i < this._layers.length; i++) {
|
|
47
|
-
L.Util.setOptions(this._layers[i], { cutout: this._masks[i] });
|
|
48
|
-
}
|
|
49
|
-
this._lens = L.DomUtil.create('div', 'leaflet-lens', map.getContainer());
|
|
50
|
-
this._lens.hidden = true;
|
|
51
|
-
this._lens.setAttribute('aria-hidden', 'true');
|
|
52
|
-
this._lens.style.cssText = `position:absolute;width:${this.options.radius * 2}px;height:${this.options.radius * 2}px;box-sizing:border-box;border:2px solid white;border-radius:50%;box-shadow:0 0 0 1px #333,0 2px 8px #0008;transform:translate(-50%,-50%);pointer-events:none;z-index:600`;
|
|
53
|
-
const container = L.DomUtil.create('div', 'leaflet-bar leaflet-control-lens');
|
|
54
|
-
this._button = L.DomUtil.create('button', '', container);
|
|
55
|
-
this._button.type = 'button';
|
|
56
|
-
this._button.textContent = '🔍';
|
|
57
|
-
this._button.title = 'Toggle lens; touch or move the pointer over the map to reveal the layer underneath';
|
|
58
|
-
this._button.setAttribute('aria-label', 'Toggle lens');
|
|
59
|
-
this._button.style.cssText = 'display:block;border:0;border-radius:2px;padding:0 8px;min-width:30px;height:30px;background:white;color:#222;font:inherit;cursor:pointer';
|
|
60
|
-
L.DomEvent.disableClickPropagation(container);
|
|
61
|
-
L.DomEvent.disableScrollPropagation(container);
|
|
62
|
-
L.DomEvent.on(this._button, 'click', this._toggle, this);
|
|
63
|
-
this._events = {
|
|
64
|
-
pointerdown: this._onPointerDown.bind(this), pointermove: this._onPointerMove.bind(this),
|
|
65
|
-
pointerleave: this._onPointerLeave.bind(this), pointercancel: this._hide.bind(this),
|
|
66
|
-
focus: this._onFocus.bind(this), blur: this._hide.bind(this), keydown: this._onKeyDown.bind(this),
|
|
67
|
-
};
|
|
68
|
-
for (const [type, handler] of Object.entries(this._events)) {
|
|
69
|
-
map.getContainer().addEventListener(type, handler);
|
|
70
|
-
}
|
|
71
|
-
this.setEnabled(this.options.enabled);
|
|
72
|
-
return container;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
onRemove(map) {
|
|
76
|
-
for (const [type, handler] of Object.entries(this._events)) {
|
|
77
|
-
map.getContainer().removeEventListener(type, handler);
|
|
78
|
-
}
|
|
79
|
-
L.DomEvent.off(this._button, 'click', this._toggle, this);
|
|
80
|
-
this._lens.remove();
|
|
81
|
-
for (let i = 0; i < this._layers.length; i++) {
|
|
82
|
-
const layer = this._layers[i], original = this._originalCutouts[i];
|
|
83
|
-
if (layer.options.cutout !== this._masks[i]) continue;
|
|
84
|
-
if (original.own) layer.options.cutout = original.value;
|
|
85
|
-
else delete layer.options.cutout;
|
|
86
|
-
}
|
|
87
|
-
this._lens = this._button = this._masks = this._originalCutouts = this._events = null;
|
|
88
|
-
map.fire('move');
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
setEnabled(enabled) {
|
|
92
|
-
if (typeof enabled !== 'boolean') throw new TypeError('Lens enabled must be boolean');
|
|
93
|
-
this.options.enabled = enabled;
|
|
94
|
-
if (this._button) this._button.setAttribute('aria-pressed', String(enabled));
|
|
95
|
-
if (this._lens) this._hide();
|
|
96
|
-
return this;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
_toggle() {
|
|
100
|
-
this.setEnabled(!this.options.enabled);
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
_show(point) {
|
|
104
|
-
if (!this.options.enabled) return;
|
|
105
|
-
for (const mask of this._masks) {
|
|
106
|
-
mask.x = point.x; mask.y = point.y; mask.radius = this.options.radius;
|
|
107
|
-
}
|
|
108
|
-
this._lens.style.left = `${point.x}px`;
|
|
109
|
-
this._lens.style.top = `${point.y}px`;
|
|
110
|
-
this._lens.hidden = false;
|
|
111
|
-
this._map.fire('move');
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
_hide() {
|
|
115
|
-
for (const mask of this._masks) mask.radius = 0;
|
|
116
|
-
this._lens.hidden = true;
|
|
117
|
-
this._map.fire('move');
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
_onPointerMove(event) {
|
|
121
|
-
if (event.target.closest('.leaflet-control')) return this._hide();
|
|
122
|
-
const container = this._map.getContainer(), bounds = container.getBoundingClientRect();
|
|
123
|
-
this._show({
|
|
124
|
-
x: (event.clientX - bounds.left) * container.offsetWidth / bounds.width - container.clientLeft,
|
|
125
|
-
y: (event.clientY - bounds.top) * container.offsetHeight / bounds.height - container.clientTop,
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
_onPointerDown(event) {
|
|
130
|
-
if (event.pointerType === 'touch') this._onPointerMove(event);
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
_onPointerLeave(event) {
|
|
134
|
-
if (event.pointerType !== 'touch') this._hide();
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
_onFocus() {
|
|
138
|
-
if (this._lens.hidden) this._show(this._map.getSize().divideBy(2));
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
_onKeyDown(event) {
|
|
142
|
-
if (event.key === 'Escape') this._hide();
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
if (L.version.startsWith('1.')) {
|
|
147
|
-
LensControl.prototype.options = Object.assign(Object.create(L.Control.prototype.options), LensControl.defaultOptions);
|
|
148
|
-
LensControl.prototype.initialize = initializeLens;
|
|
149
|
-
}
|
|
150
|
-
L.Control.Lens = LensControl;
|
|
151
|
-
})();
|
|
1
|
+
// Load after Leaflet and leaflet-city-mapper.
|
|
2
|
+
(() => {
|
|
3
|
+
const L = globalThis.L || globalThis.leaflet;
|
|
4
|
+
if (!L?.Control) throw new Error('Leaflet must be loaded before leaflet-lens.js');
|
|
5
|
+
|
|
6
|
+
function initializeLens(outerLayer, innerLayer, options) {
|
|
7
|
+
L.Util.setOptions(this, options);
|
|
8
|
+
if (options?.enabled === undefined) {
|
|
9
|
+
this.options.enabled = !matchMedia('(hover: none) and (pointer: coarse)').matches;
|
|
10
|
+
}
|
|
11
|
+
if (!outerLayer?.options || !innerLayer?.options || outerLayer === innerLayer) {
|
|
12
|
+
throw new TypeError('Lens requires two distinct raster layers');
|
|
13
|
+
}
|
|
14
|
+
if (!Number.isFinite(this.options.radius) || this.options.radius <= 0) {
|
|
15
|
+
throw new RangeError('Lens radius must be positive and finite in CSS pixels');
|
|
16
|
+
}
|
|
17
|
+
if (typeof this.options.enabled !== 'boolean') throw new TypeError('Lens enabled must be boolean');
|
|
18
|
+
this._layers = [outerLayer, innerLayer];
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
class LensControl extends (L.version.startsWith('2.') ? L.Control : L.Control.extend({})) {
|
|
22
|
+
static initHooks = true;
|
|
23
|
+
static defaultOptions = { position: 'topright', radius: 150, enabled: true };
|
|
24
|
+
|
|
25
|
+
constructor(outerLayer, innerLayer, options) {
|
|
26
|
+
if (L.version.startsWith('2.')) {
|
|
27
|
+
super(options);
|
|
28
|
+
initializeLens.call(this, outerLayer, innerLayer, options);
|
|
29
|
+
this.callInitHooks();
|
|
30
|
+
} else {
|
|
31
|
+
super(outerLayer, innerLayer, options);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
onAdd(map) {
|
|
36
|
+
for (const layer of this._layers) {
|
|
37
|
+
if (layer._map && layer._map !== map) throw new Error('Lens layers must belong to the same map');
|
|
38
|
+
}
|
|
39
|
+
this._originalCutouts = this._layers.map(layer => ({
|
|
40
|
+
own: Object.hasOwn(layer.options, 'cutout'), value: layer.options.cutout,
|
|
41
|
+
}));
|
|
42
|
+
this._masks = [
|
|
43
|
+
{ x: 0, y: 0, radius: 0 },
|
|
44
|
+
{ x: 0, y: 0, radius: 0, outside: true },
|
|
45
|
+
];
|
|
46
|
+
for (let i = 0; i < this._layers.length; i++) {
|
|
47
|
+
L.Util.setOptions(this._layers[i], { cutout: this._masks[i] });
|
|
48
|
+
}
|
|
49
|
+
this._lens = L.DomUtil.create('div', 'leaflet-lens', map.getContainer());
|
|
50
|
+
this._lens.hidden = true;
|
|
51
|
+
this._lens.setAttribute('aria-hidden', 'true');
|
|
52
|
+
this._lens.style.cssText = `position:absolute;width:${this.options.radius * 2}px;height:${this.options.radius * 2}px;box-sizing:border-box;border:2px solid white;border-radius:50%;box-shadow:0 0 0 1px #333,0 2px 8px #0008;transform:translate(-50%,-50%);pointer-events:none;z-index:600`;
|
|
53
|
+
const container = L.DomUtil.create('div', 'leaflet-bar leaflet-control-lens');
|
|
54
|
+
this._button = L.DomUtil.create('button', '', container);
|
|
55
|
+
this._button.type = 'button';
|
|
56
|
+
this._button.textContent = '🔍';
|
|
57
|
+
this._button.title = 'Toggle lens; touch or move the pointer over the map to reveal the layer underneath';
|
|
58
|
+
this._button.setAttribute('aria-label', 'Toggle lens');
|
|
59
|
+
this._button.style.cssText = 'display:block;border:0;border-radius:2px;padding:0 8px;min-width:30px;height:30px;background:white;color:#222;font:inherit;cursor:pointer';
|
|
60
|
+
L.DomEvent.disableClickPropagation(container);
|
|
61
|
+
L.DomEvent.disableScrollPropagation(container);
|
|
62
|
+
L.DomEvent.on(this._button, 'click', this._toggle, this);
|
|
63
|
+
this._events = {
|
|
64
|
+
pointerdown: this._onPointerDown.bind(this), pointermove: this._onPointerMove.bind(this),
|
|
65
|
+
pointerleave: this._onPointerLeave.bind(this), pointercancel: this._hide.bind(this),
|
|
66
|
+
focus: this._onFocus.bind(this), blur: this._hide.bind(this), keydown: this._onKeyDown.bind(this),
|
|
67
|
+
};
|
|
68
|
+
for (const [type, handler] of Object.entries(this._events)) {
|
|
69
|
+
map.getContainer().addEventListener(type, handler);
|
|
70
|
+
}
|
|
71
|
+
this.setEnabled(this.options.enabled);
|
|
72
|
+
return container;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
onRemove(map) {
|
|
76
|
+
for (const [type, handler] of Object.entries(this._events)) {
|
|
77
|
+
map.getContainer().removeEventListener(type, handler);
|
|
78
|
+
}
|
|
79
|
+
L.DomEvent.off(this._button, 'click', this._toggle, this);
|
|
80
|
+
this._lens.remove();
|
|
81
|
+
for (let i = 0; i < this._layers.length; i++) {
|
|
82
|
+
const layer = this._layers[i], original = this._originalCutouts[i];
|
|
83
|
+
if (layer.options.cutout !== this._masks[i]) continue;
|
|
84
|
+
if (original.own) layer.options.cutout = original.value;
|
|
85
|
+
else delete layer.options.cutout;
|
|
86
|
+
}
|
|
87
|
+
this._lens = this._button = this._masks = this._originalCutouts = this._events = null;
|
|
88
|
+
map.fire('move');
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
setEnabled(enabled) {
|
|
92
|
+
if (typeof enabled !== 'boolean') throw new TypeError('Lens enabled must be boolean');
|
|
93
|
+
this.options.enabled = enabled;
|
|
94
|
+
if (this._button) this._button.setAttribute('aria-pressed', String(enabled));
|
|
95
|
+
if (this._lens) this._hide();
|
|
96
|
+
return this;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
_toggle() {
|
|
100
|
+
this.setEnabled(!this.options.enabled);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
_show(point) {
|
|
104
|
+
if (!this.options.enabled) return;
|
|
105
|
+
for (const mask of this._masks) {
|
|
106
|
+
mask.x = point.x; mask.y = point.y; mask.radius = this.options.radius;
|
|
107
|
+
}
|
|
108
|
+
this._lens.style.left = `${point.x}px`;
|
|
109
|
+
this._lens.style.top = `${point.y}px`;
|
|
110
|
+
this._lens.hidden = false;
|
|
111
|
+
this._map.fire('move');
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
_hide() {
|
|
115
|
+
for (const mask of this._masks) mask.radius = 0;
|
|
116
|
+
this._lens.hidden = true;
|
|
117
|
+
this._map.fire('move');
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
_onPointerMove(event) {
|
|
121
|
+
if (event.target.closest('.leaflet-control')) return this._hide();
|
|
122
|
+
const container = this._map.getContainer(), bounds = container.getBoundingClientRect();
|
|
123
|
+
this._show({
|
|
124
|
+
x: (event.clientX - bounds.left) * container.offsetWidth / bounds.width - container.clientLeft,
|
|
125
|
+
y: (event.clientY - bounds.top) * container.offsetHeight / bounds.height - container.clientTop,
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
_onPointerDown(event) {
|
|
130
|
+
if (event.pointerType === 'touch') this._onPointerMove(event);
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
_onPointerLeave(event) {
|
|
134
|
+
if (event.pointerType !== 'touch') this._hide();
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
_onFocus() {
|
|
138
|
+
if (this._lens.hidden) this._show(this._map.getSize().divideBy(2));
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
_onKeyDown(event) {
|
|
142
|
+
if (event.key === 'Escape') this._hide();
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
if (L.version.startsWith('1.')) {
|
|
147
|
+
LensControl.prototype.options = Object.assign(Object.create(L.Control.prototype.options), LensControl.defaultOptions);
|
|
148
|
+
LensControl.prototype.initialize = initializeLens;
|
|
149
|
+
}
|
|
150
|
+
L.Control.Lens = LensControl;
|
|
151
|
+
})();
|
package/libs/leaflet.js
CHANGED
|
@@ -9,9 +9,9 @@ if (!/localhost|127.0.0.1|raruto.github.io/.test(location.hostname))
|
|
|
9
9
|
|
|
10
10
|
const openlayers = new URLSearchParams(location.search).get('engine') === 'openlayers';
|
|
11
11
|
document.write((openlayers
|
|
12
|
-
? '<link rel="stylesheet" href="https://
|
|
13
|
-
'<script src="https://
|
|
14
|
-
'<script src="https://unpkg.com/leaflet-city-mapper@0.1.
|
|
12
|
+
? '<link rel="stylesheet" href="https://unpkg.com/ol@10.6.1/ol.css">' +
|
|
13
|
+
'<script src="https://unpkg.com/ol@10.6.1/dist/ol.js"><\/script>' +
|
|
14
|
+
'<script src="https://unpkg.com/leaflet-city-mapper@0.1.1/libs/openlayers-bindings.min.js"><\/script>'
|
|
15
15
|
: '<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9/dist/leaflet.css"><script src="https://unpkg.com/leaflet@1.9/dist/leaflet-src.js"><\/script>'));
|
|
16
16
|
|
|
17
17
|
const engineStyle = document.createElement('style');
|