diff --git a/packages/deck-gl/package.json b/packages/deck-gl/package.json
index ce35f162..19ddb7a1 100644
--- a/packages/deck-gl/package.json
+++ b/packages/deck-gl/package.json
@@ -8,14 +8,17 @@
"test": "echo \"Error: no test specified\" && exit 1"
},
"dependencies": {
- "@deck.gl/aggregation-layers": "^9.1.14",
- "@deck.gl/core": "^9.1.14",
- "@deck.gl/mapbox": "^9.1.14",
+ "@deck.gl/aggregation-layers": "^9.2.6",
+ "@deck.gl/core": "^9.2.6",
+ "@deck.gl/geo-layers": "^9.2.6",
+ "@deck.gl/mapbox": "^9.2.6",
+ "@deck.gl/mesh-layers": "^9.2.6",
"@mapcomponents/react-maplibre": "workspace:*",
"@mui/icons-material": "^7.3.2",
"@mui/material": "^7.3.2",
"@storybook/react": "^9.1.4",
- "maplibre-gl": "^5.16.0"
+ "maplibre-gl": "^5.16.0",
+ "uuid": "^11.1.0"
},
"devDependencies": {
"@types/geojson": "^7946.0.16"
diff --git a/packages/deck-gl/public/assets/3D/WhereGroupLogo.glb b/packages/deck-gl/public/assets/3D/WhereGroupLogo.glb
new file mode 100644
index 00000000..c449f3c5
Binary files /dev/null and b/packages/deck-gl/public/assets/3D/WhereGroupLogo.glb differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r.pnts b/packages/deck-gl/public/assets/tiles/points/r.pnts
new file mode 100644
index 00000000..4be8a06d
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r0.pnts b/packages/deck-gl/public/assets/tiles/points/r0.pnts
new file mode 100644
index 00000000..7d9ebcca
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r0.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r00.pnts b/packages/deck-gl/public/assets/tiles/points/r00.pnts
new file mode 100644
index 00000000..c4669d9b
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r00.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r01.pnts b/packages/deck-gl/public/assets/tiles/points/r01.pnts
new file mode 100644
index 00000000..88897aa8
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r01.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r02.pnts b/packages/deck-gl/public/assets/tiles/points/r02.pnts
new file mode 100644
index 00000000..5f0b8393
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r02.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r03.pnts b/packages/deck-gl/public/assets/tiles/points/r03.pnts
new file mode 100644
index 00000000..18cdf0e8
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r03.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r04.pnts b/packages/deck-gl/public/assets/tiles/points/r04.pnts
new file mode 100644
index 00000000..2f8118c7
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r04.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r05.pnts b/packages/deck-gl/public/assets/tiles/points/r05.pnts
new file mode 100644
index 00000000..b7339ee5
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r05.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r06.pnts b/packages/deck-gl/public/assets/tiles/points/r06.pnts
new file mode 100644
index 00000000..4a25feac
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r06.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r07.pnts b/packages/deck-gl/public/assets/tiles/points/r07.pnts
new file mode 100644
index 00000000..fd6b232e
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r07.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r2.pnts b/packages/deck-gl/public/assets/tiles/points/r2.pnts
new file mode 100644
index 00000000..61d8c8ae
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r2.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r20.pnts b/packages/deck-gl/public/assets/tiles/points/r20.pnts
new file mode 100644
index 00000000..ed589b39
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r20.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r21.pnts b/packages/deck-gl/public/assets/tiles/points/r21.pnts
new file mode 100644
index 00000000..c0d865bd
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r21.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r22.pnts b/packages/deck-gl/public/assets/tiles/points/r22.pnts
new file mode 100644
index 00000000..4f248fc9
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r22.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r23.pnts b/packages/deck-gl/public/assets/tiles/points/r23.pnts
new file mode 100644
index 00000000..ba57c0ce
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r23.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r24.pnts b/packages/deck-gl/public/assets/tiles/points/r24.pnts
new file mode 100644
index 00000000..78c6f9b3
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r24.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r25.pnts b/packages/deck-gl/public/assets/tiles/points/r25.pnts
new file mode 100644
index 00000000..df89dbb9
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r25.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r26.pnts b/packages/deck-gl/public/assets/tiles/points/r26.pnts
new file mode 100644
index 00000000..03028b09
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r26.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r27.pnts b/packages/deck-gl/public/assets/tiles/points/r27.pnts
new file mode 100644
index 00000000..c2324d35
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r27.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r3.pnts b/packages/deck-gl/public/assets/tiles/points/r3.pnts
new file mode 100644
index 00000000..19a72fc6
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r3.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r4.pnts b/packages/deck-gl/public/assets/tiles/points/r4.pnts
new file mode 100644
index 00000000..3dba56fe
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r4.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r40.pnts b/packages/deck-gl/public/assets/tiles/points/r40.pnts
new file mode 100644
index 00000000..f1db62c4
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r40.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r41.pnts b/packages/deck-gl/public/assets/tiles/points/r41.pnts
new file mode 100644
index 00000000..d37a3f07
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r41.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r42.pnts b/packages/deck-gl/public/assets/tiles/points/r42.pnts
new file mode 100644
index 00000000..c576e9c0
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r42.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r43.pnts b/packages/deck-gl/public/assets/tiles/points/r43.pnts
new file mode 100644
index 00000000..7438bb75
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r43.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r44.pnts b/packages/deck-gl/public/assets/tiles/points/r44.pnts
new file mode 100644
index 00000000..7ddea806
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r44.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r45.pnts b/packages/deck-gl/public/assets/tiles/points/r45.pnts
new file mode 100644
index 00000000..e43efca4
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r45.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r46.pnts b/packages/deck-gl/public/assets/tiles/points/r46.pnts
new file mode 100644
index 00000000..44811508
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r46.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r47.pnts b/packages/deck-gl/public/assets/tiles/points/r47.pnts
new file mode 100644
index 00000000..e7987beb
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r47.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r6.pnts b/packages/deck-gl/public/assets/tiles/points/r6.pnts
new file mode 100644
index 00000000..0b7973ce
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r6.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r60.pnts b/packages/deck-gl/public/assets/tiles/points/r60.pnts
new file mode 100644
index 00000000..158c63a8
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r60.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r61.pnts b/packages/deck-gl/public/assets/tiles/points/r61.pnts
new file mode 100644
index 00000000..1ea97611
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r61.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r63.pnts b/packages/deck-gl/public/assets/tiles/points/r63.pnts
new file mode 100644
index 00000000..8b124fd3
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r63.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r64.pnts b/packages/deck-gl/public/assets/tiles/points/r64.pnts
new file mode 100644
index 00000000..96cbb566
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r64.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/points/r65.pnts b/packages/deck-gl/public/assets/tiles/points/r65.pnts
new file mode 100644
index 00000000..6cc0b64b
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/points/r65.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/preview.pnts b/packages/deck-gl/public/assets/tiles/preview.pnts
new file mode 100644
index 00000000..06dd7ac4
Binary files /dev/null and b/packages/deck-gl/public/assets/tiles/preview.pnts differ
diff --git a/packages/deck-gl/public/assets/tiles/tileset.json b/packages/deck-gl/public/assets/tiles/tileset.json
new file mode 100644
index 00000000..1cb2a8f4
--- /dev/null
+++ b/packages/deck-gl/public/assets/tiles/tileset.json
@@ -0,0 +1,460 @@
+{
+ "root": {
+ "boundingVolume": {
+ "box": [
+ 7.08837433194276e-11, -1.0849765530451805e-11, 0.0, 2.1660589315706034, 0.0, 0.0, 0.0,
+ 2.496811700064363, 0.0, 0.0, 0.0, 1.8121010037139058
+ ]
+ },
+ "geometricError": 7.5391219668910425,
+ "refine": "REPLACE",
+ "transform": [
+ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 4236628.677646827,
+ 583558.5177497872, 4716055.786378884, 1.0
+ ],
+ "children": [
+ {
+ "boundingVolume": {
+ "box": [
+ 2.2450108528137207, 1.870360553264618, 0.7135822474956512, 2.249756932258606, 0.0, 0.0,
+ 0.0, 1.858299195766449, 0.0, 0.0, 0.0, 0.7300386726856232
+ ]
+ },
+ "geometricError": 0.24063239850378887,
+ "refine": "REPLACE",
+ "transform": [
+ -0.13793646990391142, 0.9903284999809532, 0.014932929917537986, 0.0, -0.7400013696298064,
+ -0.11306774680614906, 0.6630336775595874, 0.0, 0.6583095800734313, 0.0804061363184137,
+ 0.7484406122237668, 0.0, 1.2239802135154605, -2.0691971683409065, -1.8077105600386858, 1.0
+ ],
+ "children": [
+ {
+ "boundingVolume": {
+ "box": [
+ 1.1232349276542664, 1.0431104004383087, 0.6967905759811401, 1.1279810070991516, 0.0,
+ 0.0, 0.0, 0.8219834864139557, 0.0, 0.0, 0.0, 0.6742674112319946
+ ]
+ },
+ "geometricError": 0.12031619925189443,
+ "refine": "ADD",
+ "children": [
+ {
+ "boundingVolume": {
+ "box": [
+ 0.7326741814613342, 0.6975642442703247, 0.3973909020423889, 0.392952024936676,
+ 0.0, 0.0, 0.0, 0.2348412275314331, 0.0, 0.0, 0.0, 0.3092222213745117
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r00.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 1.0004587173461914, 0.7575281858444214, 0.9685447812080383, 0.1248067319393158,
+ 0.0, 0.0, 0.0, 0.17315629124641418, 0.0, 0.0, 0.0, 0.2604460120201111
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r01.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 0.5604310035705566, 1.3988256454467773, 0.376658171415329, 0.5651770830154419,
+ 0.0, 0.0, 0.0, 0.46619170904159546, 0.0, 0.0, 0.0, 0.32289281487464905
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r02.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 0.6606923937797546, 1.3988182544708252, 1.0713670253753662, 0.46480482816696167,
+ 0.0, 0.0, 0.0, 0.4661717712879181, 0.0, 0.0, 0.0, 0.29833704233169556
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r03.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 1.6884149312973022, 0.5791147351264954, 0.37058937549591064, 0.5627516508102417,
+ 0.0, 0.0, 0.0, 0.3532513380050659, 0.0, 0.0, 0.0, 0.33682507276535034
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r04.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 1.5319273471832275, 0.7473264932632446, 0.9682750701904297, 0.40592092275619507,
+ 0.0, 0.0, 0.0, 0.1851842701435089, 0.0, 0.0, 0.0, 0.2606566846370697
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r05.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 1.6884897947311401, 1.3987574577331543, 0.37236836552619934, 0.5627261400222778,
+ 0.0, 0.0, 0.0, 0.4661939740180969, 0.0, 0.0, 0.0, 0.3304767310619354
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r06.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 1.6883270740509033, 1.3989298343658447, 1.0713305473327637, 0.5626779198646545,
+ 0.0, 0.0, 0.0, 0.4661640524864197, 0.0, 0.0, 0.0, 0.2937571704387665
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r07.pnts" }
+ }
+ ],
+ "content": { "uri": "points/r0.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 1.1969048082828522, 2.7968981862068176, 0.7098342627286911, 1.0543581545352936, 0.0,
+ 0.0, 0.0, 0.9317615628242493, 0.0, 0.0, 0.0, 0.7051142901182175
+ ]
+ },
+ "geometricError": 0.12031619925189443,
+ "refine": "ADD",
+ "children": [
+ {
+ "boundingVolume": {
+ "box": [
+ 0.6590888500213623, 2.3314104080200195, 0.38634803891181946, 0.466438889503479,
+ 0.0, 0.0, 0.0, 0.46606820821762085, 0.0, 0.0, 0.0, 0.3195240795612335
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r20.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 0.6503592729568481, 2.331402540206909, 1.0623252391815186, 0.4752395451068878,
+ 0.0, 0.0, 0.0, 0.46613025665283203, 0.0, 0.0, 0.0, 0.35262331366539
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r21.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 0.6364241242408752, 3.1835198402404785, 0.370440810918808, 0.48903971910476685,
+ 0.0, 0.0, 0.0, 0.3857994079589844, 0.0, 0.0, 0.0, 0.3367609679698944
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r22.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 0.6626215577125549, 3.0380873680114746, 1.0581612586975098, 0.46293601393699646,
+ 0.0, 0.0, 0.0, 0.24029004573822021, 0.0, 0.0, 0.0, 0.3505549132823944
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r23.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 1.6884944438934326, 2.3316407203674316, 0.09562954306602478, 0.5627685189247131,
+ 0.0, 0.0, 0.0, 0.46587836742401123, 0.0, 0.0, 0.0, 0.09074161946773529
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r24.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 1.6883786916732788, 2.331381320953369, 1.086396336555481, 0.5627001523971558,
+ 0.0, 0.0, 0.0, 0.4660683870315552, 0.0, 0.0, 0.0, 0.272603303194046
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r25.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 1.6885024309158325, 3.263172149658203, 0.36613643169403076, 0.5627063512802124,
+ 0.0, 0.0, 0.0, 0.46548759937286377, 0.0, 0.0, 0.0, 0.34138333797454834
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r26.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 1.6880261898040771, 3.2210941314697266, 0.9599211812019348, 0.56235271692276,
+ 0.0, 0.0, 0.0, 0.42336761951446533, 0.0, 0.0, 0.0, 0.252341091632843
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r27.pnts" }
+ }
+ ],
+ "content": { "uri": "points/r2.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 0.8620010018348694, 2.7029762268066406, 1.4294078350067139, 0.07094019651412964,
+ 0.0, 0.0, 0.0, 0.08764171600341797, 0.0, 0.0, 0.0, 0.014213085174560547
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r3.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 3.304537773132324, 0.9385813623666763, 0.6891828030347824, 1.0532411336898804, 0.0,
+ 0.0, 0.0, 0.9265200048685074, 0.0, 0.0, 0.0, 0.7056392282247543
+ ]
+ },
+ "geometricError": 0.12031619925189443,
+ "refine": "ADD",
+ "children": [
+ {
+ "boundingVolume": {
+ "box": [
+ 2.8141021728515625, 0.4746535122394562, 0.354105144739151, 0.5626012086868286,
+ 0.0, 0.0, 0.0, 0.45784321427345276, 0.0, 0.0, 0.0, 0.35336586833000183
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r40.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 2.915133237838745, 0.5647898316383362, 0.9226189255714417, 0.4609503746032715,
+ 0.0, 0.0, 0.0, 0.3677363097667694, 0.0, 0.0, 0.0, 0.21505242586135864
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r41.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 2.814178943634033, 1.398891568183899, 0.33122938871383667, 0.5627145767211914,
+ 0.0, 0.0, 0.0, 0.4661969244480133, 0.0, 0.0, 0.0, 0.3375523090362549
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r42.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 2.814178943634033, 1.399066686630249, 1.0575685501098633, 0.5627272129058838,
+ 0.0, 0.0, 0.0, 0.4660346806049347, 0.0, 0.0, 0.0, 0.33725348114967346
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r43.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 3.747763156890869, 0.5661583542823792, 0.0773334950208664, 0.37081992626190186,
+ 0.0, 0.0, 0.0, 0.366230845451355, 0.0, 0.0, 0.0, 0.02890622429549694
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r44.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 3.7100775241851807, 0.7707281112670898, 0.8023180961608887, 0.3329813480377197,
+ 0.0, 0.0, 0.0, 0.16172349452972412, 0.0, 0.0, 0.0, 0.03208738565444946
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r45.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 3.867363929748535, 1.3989229202270508, 0.2539786994457245, 0.49041497707366943,
+ 0.0, 0.0, 0.0, 0.4661133587360382, 0.0, 0.0, 0.0, 0.2704351246356964
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r46.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 3.8421125411987305, 1.3987548351287842, 1.0738475322723389, 0.4651988744735718,
+ 0.0, 0.0, 0.0, 0.4660906195640564, 0.0, 0.0, 0.0, 0.31838130950927734
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r47.pnts" }
+ }
+ ],
+ "content": { "uri": "points/r4.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 3.3730270862579346, 2.609271764755249, 0.7001622021198273, 1.121740698814392, 0.0,
+ 0.0, 0.0, 0.7441596984863281, 0.0, 0.0, 0.0, 0.6690016686916351
+ ]
+ },
+ "geometricError": 0.12031619925189443,
+ "refine": "ADD",
+ "children": [
+ {
+ "boundingVolume": {
+ "box": [
+ 2.814326286315918, 2.331434726715088, 0.3693091571331024, 0.5625115633010864,
+ 0.0, 0.0, 0.0, 0.4661487340927124, 0.0, 0.0, 0.0, 0.3381486237049103
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r60.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 2.814249277114868, 2.3314290046691895, 1.0387760400772095, 0.5626590251922607,
+ 0.0, 0.0, 0.0, 0.46619606018066406, 0.0, 0.0, 0.0, 0.33038783073425293
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r61.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 2.8139495849609375, 3.0731990337371826, 0.10282731801271439, 0.5624197721481323,
+ 0.0, 0.0, 0.0, 0.2754652500152588, 0.0, 0.0, 0.0, 0.06150231510400772
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r62.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 2.815488338470459, 2.874725103378296, 0.9668313264846802, 0.5612854957580566,
+ 0.0, 0.0, 0.0, 0.07704520225524902, 0.0, 0.0, 0.0, 0.22118401527404785
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r63.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 3.935901165008545, 2.331380844116211, 0.37227338552474976, 0.5588666200637817,
+ 0.0, 0.0, 0.0, 0.46626877784729004, 0.0, 0.0, 0.0, 0.33483803272247314
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r64.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 3.8688666820526123, 2.331388235092163, 0.9365708827972412, 0.4918854236602783,
+ 0.0, 0.0, 0.0, 0.4662376046180725, 0.0, 0.0, 0.0, 0.22875595092773438
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r65.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 3.7129833698272705, 2.947214365005493, 0.40005528926849365, 0.33587002754211426,
+ 0.0, 0.0, 0.0, 0.14945483207702637, 0.0, 0.0, 0.0, 0.2962592840194702
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r66.pnts" }
+ },
+ {
+ "boundingVolume": {
+ "box": [
+ 3.541743755340576, 2.873154640197754, 0.9420145750045776, 0.16480529308319092,
+ 0.0, 0.0, 0.0, 0.07548391819000244, 0.0, 0.0, 0.0, 0.23410186171531677
+ ]
+ },
+ "geometricError": 0.0,
+ "refine": "ADD",
+ "content": { "uri": "points/r67.pnts" }
+ }
+ ],
+ "content": { "uri": "points/r6.pnts" }
+ }
+ ],
+ "content": { "uri": "points/r.pnts" }
+ }
+ ],
+ "content": { "uri": "preview.pnts" }
+ },
+ "asset": {
+ "version": "1.0",
+ "extras": {
+ "created_date": "2026-01-13T13:01:28.833434",
+ "generator": { "name": "py3dtiles", "version": "12.0.0" }
+ }
+ },
+ "geometricError": 7.5391219668910425
+}
diff --git a/packages/deck-gl/public/assets/wg_locations.json b/packages/deck-gl/public/assets/wg_locations.json
new file mode 100644
index 00000000..11d316d4
--- /dev/null
+++ b/packages/deck-gl/public/assets/wg_locations.json
@@ -0,0 +1,53 @@
+{
+ "type": "FeatureCollection",
+ "features": [
+ {
+ "id": "1",
+ "type": "Feature",
+ "properties": {
+ "Standort": "Bonn",
+ "Mitarbeitende": 26
+ },
+ "geometry": {
+ "coordinates": [7.085121767634178, 50.738628929850876],
+ "type": "Point"
+ }
+ },
+ {
+ "id": "2",
+ "type": "Feature",
+ "properties": {
+ "Standort": "Freiburg",
+ "Mitarbeitende": 10
+ },
+ "geometry": {
+ "coordinates": [7.842759788570362, 47.98905444717667],
+ "type": "Point"
+ }
+ },
+ {
+ "id": "3",
+ "type": "Feature",
+ "properties": {
+ "Standort": "Berlin",
+ "Mitarbeitende": 13
+ },
+ "geometry": {
+ "coordinates": [13.330420447460796, 52.492768290796676],
+ "type": "Point"
+ }
+ },
+ {
+ "id": "4",
+ "type": "Feature",
+ "properties": {
+ "Standort": "Hamburg",
+ "Mitarbeitende": 3
+ },
+ "geometry": {
+ "coordinates": [10.041789021808029, 53.5511363175323],
+ "type": "Point"
+ }
+ }
+ ]
+}
diff --git a/packages/deck-gl/src/components/Ml3DTileLayer/Ml3DTileLayer.stories.tsx b/packages/deck-gl/src/components/Ml3DTileLayer/Ml3DTileLayer.stories.tsx
new file mode 100644
index 00000000..915d5b9e
--- /dev/null
+++ b/packages/deck-gl/src/components/Ml3DTileLayer/Ml3DTileLayer.stories.tsx
@@ -0,0 +1,43 @@
+import mapContextDecorator from '../../decorators/MapContextDecorator';
+import Ml3DTileLayer from './Ml3DTileLayer';
+
+const storyoptions = {
+ title: 'MapComponents/Ml3DTileLayer',
+ component: Ml3DTileLayer,
+ argTypes: {},
+ decorators: mapContextDecorator,
+};
+export default storyoptions;
+
+const Template = (context: any) => {
+ return ;
+};
+
+export const PointCloudExample: { [key: string]: any } = Template.bind({});
+PointCloudExample.parameters = {
+ mapOptions: {
+ center: [7.842650747974176, 47.98896351950512],
+ pitch: 43.5,
+ zoom: 22,
+ bearing: -8.151137833252392,
+ },
+};
+PointCloudExample.args = {
+ mapId: 'map_1',
+ id: 'PointCould',
+ data: 'assets/tiles/tileset.json',
+ pointSize: 2,
+};
+export const HamburgExample: { [key: string]: any } = Template.bind({});
+HamburgExample.parameters = {
+ mapOptions: {
+ center: [9.993682, 53.551086],
+ pitch: 58,
+ zoom: 14.788260082345504,
+ bearing: 0,
+ },
+};
+HamburgExample.args = {
+ mapId: 'map_1',
+ data: 'https://3dtiles.wheregroup.com/tileset.json',
+};
diff --git a/packages/deck-gl/src/components/Ml3DTileLayer/Ml3DTileLayer.tsx b/packages/deck-gl/src/components/Ml3DTileLayer/Ml3DTileLayer.tsx
new file mode 100644
index 00000000..e62c0a16
--- /dev/null
+++ b/packages/deck-gl/src/components/Ml3DTileLayer/Ml3DTileLayer.tsx
@@ -0,0 +1,57 @@
+import { useEffect, useMemo } from 'react';
+import { useMap } from '@mapcomponents/react-maplibre';
+import { Tile3DLayer, Tile3DLayerProps } from '@deck.gl/geo-layers';
+import useDeckGl from '../../hooks/useDeckGl';
+
+export interface Ml3DTileLayerProps extends Tile3DLayerProps {
+ /**
+ * Id of the target MapLibre instance in mapContext
+ */
+ mapId?: string;
+ /**
+ * Id of an existing layer in the mapLibre instance to help specify the layer order
+ * This layer will be visually beneath the layer with the "beforeId" id.
+ */
+ beforeId?: string;
+}
+
+const Ml3DTileLayer = (props: Ml3DTileLayerProps) => {
+ const { mapId, ...Ml3DTileProps } = props;
+ const mapHook = useMap({ mapId: mapId });
+ const deckGlHook = useDeckGl();
+
+ const tile3dLayer = useMemo(() => {
+ if (!Ml3DTileProps.data) return null;
+ else
+ return new Tile3DLayer({
+ ...Ml3DTileProps,
+ });
+ }, [
+ Ml3DTileProps.data,
+ Ml3DTileProps.id,
+ Ml3DTileProps.pickable,
+ Ml3DTileProps.onTileLoad,
+ Ml3DTileProps.onTileUnload,
+ Ml3DTileProps.loadOptions,
+ Ml3DTileProps.loaders,
+ Ml3DTileProps.visible,
+ Ml3DTileProps.opacity,
+ Ml3DTileProps.pointSize,
+ Ml3DTileProps.beforeId,
+ ]);
+
+ useEffect(() => {
+ if (!mapHook.map || !tile3dLayer) return;
+
+ deckGlHook.addLayer(tile3dLayer);
+
+ return () => {
+ // eslint-disable-next-line @typescript-eslint/no-unused-expressions
+ tile3dLayer && deckGlHook.removeLayer(tile3dLayer);
+ };
+ }, [mapHook.map, tile3dLayer]);
+
+ return <>>;
+};
+
+export default Ml3DTileLayer;
diff --git a/packages/deck-gl/src/components/MlHexagonMap/MlHexagonMap.cy.tsx b/packages/deck-gl/src/components/MlHexagonLayer/MlHexagonLayer.cy.tsx
similarity index 72%
rename from packages/deck-gl/src/components/MlHexagonMap/MlHexagonMap.cy.tsx
rename to packages/deck-gl/src/components/MlHexagonLayer/MlHexagonLayer.cy.tsx
index 4271af4c..227f3907 100644
--- a/packages/deck-gl/src/components/MlHexagonMap/MlHexagonMap.cy.tsx
+++ b/packages/deck-gl/src/components/MlHexagonLayer/MlHexagonLayer.cy.tsx
@@ -1,12 +1,12 @@
+// MlHexagonLayer.cy.tsx
import { composeStories } from '@storybook/react';
-import * as stories from './MlHexagonMap.stories';
+import * as stories from './MlHexagonLayer.stories';
-const { NoiseMap }: any = composeStories(stories);
+const { DefaultSettings }: any = composeStories(stories);
describe('MlHexagonMap Test', () => {
it('Should display Maplibre map with MlHexagonMap', () => {
- // see: https://on.cypress.io/mounting-react
- cy.mount();
+ cy.mount();
cy.window()
.should((win) => expect((win as any)._map).to.exist)
.then((win) => {
diff --git a/packages/deck-gl/src/components/MlHexagonMap/MlHexagonMap.meta_.json b/packages/deck-gl/src/components/MlHexagonLayer/MlHexagonLayer.meta_.json
similarity index 100%
rename from packages/deck-gl/src/components/MlHexagonMap/MlHexagonMap.meta_.json
rename to packages/deck-gl/src/components/MlHexagonLayer/MlHexagonLayer.meta_.json
diff --git a/packages/deck-gl/src/components/MlHexagonLayer/MlHexagonLayer.stories.tsx b/packages/deck-gl/src/components/MlHexagonLayer/MlHexagonLayer.stories.tsx
new file mode 100644
index 00000000..64c42a8b
--- /dev/null
+++ b/packages/deck-gl/src/components/MlHexagonLayer/MlHexagonLayer.stories.tsx
@@ -0,0 +1,129 @@
+import mapContextDecorator from '../../decorators/MapContextDecorator';
+import MlHexagonLayer from './MlHexagonLayer';
+import { useEffect, useState } from 'react';
+import { useMap } from '@mapcomponents/react-maplibre';
+import { HexagonLayer } from '@deck.gl/aggregation-layers';
+
+const storyoptions = {
+ title: 'MapComponents/MlHexagonMap',
+ component: MlHexagonLayer,
+ argTypes: {},
+ decorators: mapContextDecorator,
+};
+export default storyoptions;
+
+const Template = (context: any) => {
+ const [noiseData, setNoiseData] = useState<{ type: string; features: any[] }>({
+ type: '',
+ features: [],
+ });
+ const mapHook = useMap({ mapId: 'map_1' });
+
+ useEffect(() => {
+ let cancelled = false;
+ const load = async () => {
+ try {
+ const res = await fetch('/assets/3D/laerm_points.json', {
+ headers: {
+ 'Content-Type': 'application/json',
+ Accept: 'application/json',
+ },
+ });
+ if (!res.ok) throw new Error(`HTTP ${res.status}`);
+ const json = await res.json();
+ const features = Array.isArray(json?.features) ? json.features : [];
+ if (!cancelled) {
+ setNoiseData({ type: json?.type ?? 'FeatureCollection', features });
+ }
+ } catch (e) {
+ console.error(e);
+ if (!cancelled) {
+ setNoiseData({ type: '', features: [] });
+ }
+ }
+ };
+ load();
+ return () => {
+ cancelled = true;
+ };
+ }, []);
+
+ mapHook.map?.setPitch(60);
+ mapHook.map?.setZoom(13.5);
+
+ return (
+ <>
+ d.geometry.coordinates}
+ {...context}
+ />
+ >
+ );
+};
+
+export const DefaultSettings: { [key: string]: any } = Template.bind({});
+DefaultSettings.parameters = {};
+DefaultSettings.args = {
+ mapId: 'map_1',
+ type: HexagonLayer,
+ layerOpacity: 0.8,
+ elevationRange: [30, 75],
+ elevationScale: 1,
+ extruded: true,
+ coverage: 0.9,
+ autoHighlight: false,
+ material: { ambient: 0.6, diffuse: 0.5, shininess: 10 },
+ radius: 16,
+ transitions: { elevationScale: 1500 },
+ _filterData: null,
+ colorRange: [
+ [1, 152, 189, 125],
+ [73, 227, 206, 150],
+ [216, 254, 181, 175],
+ [254, 237, 177, 200],
+ [254, 173, 84, 225],
+ [209, 55, 78, 255],
+ ],
+};
+export const CustomColorAndHeightProfile: { [key: string]: any } = Template.bind({});
+CustomColorAndHeightProfile.parameters = {};
+CustomColorAndHeightProfile.args = {
+ mapId: 'map_1',
+ type: HexagonLayer,
+ layerOpacity: 0.8,
+ specularColor: [51, 51, 51],
+ elevationRange: [30, 75],
+ elevationScale: 1,
+ extruded: true,
+ coverage: 0.9,
+ autoHighlight: false,
+ material: { ambient: 0.8, diffuse: 0.5, shininess: 10 },
+ radius: 16,
+ transitions: { elevationScale: 1500 },
+ _filterData: null,
+ colorRange: [
+ [1, 152, 189, Math.round(80 * 0.8)],
+ [73, 227, 206, Math.round(90 * 0.8)],
+ [216, 254, 181, Math.round(100 * 0.8)],
+ [254, 237, 177, Math.round(110 * 0.8)],
+ [254, 173, 84, Math.round(120 * 0.8)],
+ [209, 55, 78, Math.round(150 * 0.8)],
+ ],
+ getColorValue: (points: any[]) => {
+ const elVal = points.reduce((acc, point) => {
+ const src = point?.properties ? point.properties : point?.source?.properties;
+ if (!src?.dba && acc === -Infinity) return acc;
+ return acc < src.dba ? src.dba : acc;
+ }, -Infinity);
+ return Number.isFinite(elVal) ? Math.round(elVal) : 0;
+ },
+ getElevationValue: (points: any[]) => {
+ const elVal = points.reduce((acc, point) => {
+ const src = point?.properties ? point.properties : point?.source?.properties;
+ if (!src?.dba && acc === -Infinity) return acc;
+ return acc < src.dba ? src.dba : acc;
+ }, -Infinity);
+ return Number.isFinite(elVal) ? Math.round(elVal) : 0;
+ },
+};
diff --git a/packages/deck-gl/src/components/MlHexagonLayer/MlHexagonLayer.tsx b/packages/deck-gl/src/components/MlHexagonLayer/MlHexagonLayer.tsx
new file mode 100644
index 00000000..74cc0f03
--- /dev/null
+++ b/packages/deck-gl/src/components/MlHexagonLayer/MlHexagonLayer.tsx
@@ -0,0 +1,90 @@
+import { useEffect, useMemo } from 'react';
+import { HexagonLayer, HexagonLayerProps } from '@deck.gl/aggregation-layers';
+import { useMap } from '@mapcomponents/react-maplibre';
+import useDeckGl from '../../hooks/useDeckGl';
+
+export interface MlHexagonMapProps extends HexagonLayerProps {
+ /**
+ * Id of the target MapLibre instance in mapContext
+ */
+ mapId?: string;
+ /**
+ * Id of an existing layer in the mapLibre instance to help specify the layer order
+ * This layer will be visually beneath the layer with the "beforeId" id.
+ */
+ beforeId?: string;
+}
+
+const defaultProps = {
+ type: HexagonLayer,
+ layerOpacity: 0.8,
+ elevationRange: [30, 75],
+ elevationScale: 1,
+ extruded: true,
+ coverage: 0.9,
+ autoHighlight: false,
+ material: { ambient: 0.6, diffuse: 0.5, shininess: 10 },
+ radius: 16,
+ transitions: { elevationScale: 1500 },
+ _filterData: null,
+ colorRange: [
+ [1, 152, 189, 125],
+ [73, 227, 206, 150],
+ [216, 254, 181, 175],
+ [254, 237, 177, 200],
+ [254, 173, 84, 225],
+ [209, 55, 78, 255],
+ ],
+};
+
+const MlHexagonLayer = (props: MlHexagonMapProps) => {
+ const deckGlHook = useDeckGl();
+
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
+ // @ts-expect-error
+ props = {
+ ...defaultProps,
+ ...props,
+ };
+
+ const { mapId, ...HexagonLayerProps } = props;
+
+ const mapHook = useMap({
+ mapId: mapId,
+ waitForLayer: HexagonLayerProps.beforeId,
+ });
+
+ // create deck.gl HexagonLayer once when its props change
+ const hexagonLayer = useMemo(() => {
+ if (!HexagonLayerProps.data) return null;
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
+ // @ts-ignore
+ return new HexagonLayer({
+ ...HexagonLayerProps,
+ } as unknown as HexagonLayerProps);
+ }, [
+ HexagonLayerProps.beforeId,
+ HexagonLayerProps.data,
+ HexagonLayerProps.elevationScale,
+ HexagonLayerProps.extruded,
+ HexagonLayerProps.coverage,
+ HexagonLayerProps.autoHighlight,
+ HexagonLayerProps.material,
+ HexagonLayerProps.radius,
+ HexagonLayerProps.transitions,
+ ]);
+
+ // add/remove the memoized layer
+ useEffect(() => {
+ if (!mapHook.map || !hexagonLayer) return;
+ deckGlHook.addLayer(hexagonLayer);
+
+ return () => {
+ deckGlHook.removeLayer(hexagonLayer);
+ };
+ }, [mapHook.map, hexagonLayer]);
+
+ return <>>;
+};
+
+export default MlHexagonLayer;
diff --git a/packages/deck-gl/src/components/MlHexagonMap/MlHexagonMap.stories.tsx b/packages/deck-gl/src/components/MlHexagonMap/MlHexagonMap.stories.tsx
deleted file mode 100644
index ee57499b..00000000
--- a/packages/deck-gl/src/components/MlHexagonMap/MlHexagonMap.stories.tsx
+++ /dev/null
@@ -1,28 +0,0 @@
-import mapContextDecorator from '../../decorators/MapContextDecorator';
-import MlHexagonMap from './MlHexagonMap';
-import { DeckGlContextProvider } from '../../contexts/DeckGlContext';
-
-const storyoptions = {
- title: 'MapComponents/MlHexagonMap',
- component: MlHexagonMap,
- argTypes: {},
- decorators: mapContextDecorator,
-};
-export default storyoptions;
-
-interface TemplateProps {
- mapId: string;
-}
-
-const Template = (props: TemplateProps) => (
-
-
-
-);
-
-// eslint-disable-next-line
-export const NoiseMap: { [key: string]: any } = Template.bind({});
-NoiseMap.parameters = {};
-NoiseMap.args = {
- mapId: 'map_1',
-};
diff --git a/packages/deck-gl/src/components/MlHexagonMap/MlHexagonMap.tsx b/packages/deck-gl/src/components/MlHexagonMap/MlHexagonMap.tsx
deleted file mode 100644
index c6c7a483..00000000
--- a/packages/deck-gl/src/components/MlHexagonMap/MlHexagonMap.tsx
+++ /dev/null
@@ -1,141 +0,0 @@
-import { useEffect, useMemo, useRef, useState } from 'react';
-import useDeckGl from '../../hooks/useDeckGl';
-import { HexagonLayer, HexagonLayerProps } from '@deck.gl/aggregation-layers';
-import { useMap } from '@mapcomponents/react-maplibre';
-
-export interface MlHexagonMapProps {
- /**
- * Id of the target MapLibre instance in mapContext
- */
- mapId?: string;
- /**
- * Id of an existing layer in the mapLibre instance to help specify the layer order
- * This layer will be visually beneath the layer with the "insertBeforeLayer" id.
- */
- insertBeforeLayer?: string;
-}
-
-const MlHexagonMap = (props: MlHexagonMapProps) => {
- const DATA_URL = 'assets/3D/laerm_points.json';
- const deckGlHook = useDeckGl();
- const [noiseData, setNoiseData] = useState({
- type: '',
- features: [],
- });
- const getJsonData = () => {
- fetch(DATA_URL, {
- headers: {
- 'Content-Type': 'application/json',
- Accept: 'application/json',
- },
- })
- .then(function (response) {
- return response.json();
- })
- .then(function (json) {
- setNoiseData(json);
- });
- };
- useEffect(() => {
- getJsonData();
- }, []);
-
- const layerOpacity = 0.8;
- const specularColor: [number, number, number] = [51, 51, 51];
- const getColorRange: (layerOpacity: number) => [number, number, number, number][] = (
- layerOpacity: number
- ) => [
- [1, 152, 189, Math.round(80 * layerOpacity)],
- [73, 227, 206, Math.round(90 * layerOpacity)],
- [216, 254, 181, Math.round(100 * layerOpacity)],
- [254, 237, 177, Math.round(110 * layerOpacity)],
- [254, 173, 84, Math.round(120 * layerOpacity)],
- [209, 55, 78, Math.round(150 * layerOpacity)],
- ];
- const elevationRange: [number, number] = [30, 75];
-
- const deckGlLayerProps = useMemo(() => {
- return {
- id: 'deckgl-layer',
-
- data: noiseData ? noiseData.features : [],
- type: HexagonLayer,
- colorRange: getColorRange(layerOpacity),
- coverage: 0.9,
- elevationRange: elevationRange,
- elevationScale: 10,
- extruded: true,
- autoHighlight: true,
- // eslint-disable-next-line
- getPosition: (d: any) => {
- return d.geometry.coordinates;
- },
- pickable: true,
- radius: 16,
- upperPercentile: 100,
- material: {
- ambient: 0.8,
- diffuse: 0.5,
- shininess: 20,
- specularColor: specularColor,
- },
- transitions: {
- elevationScale: 1500,
- },
- // eslint-disable-next-line
- getColorValue: (points: any[]) => {
- const elVal = points.reduce((acc, point) => {
- if (!point?.properties && point.source.properties)
- return acc < point.source.properties.dba ? point.source.properties.dba : acc;
- return acc < point.properties.dba ? point.properties.dba : acc;
- }, -Infinity);
- return Math.round(elVal);
- },
- // eslint-disable-next-line
- getElevationValue: (points: any): number => {
- // eslint-disable-next-line
- const elVal = points.reduce((acc: any, point: any) => {
- if (!point.properties && point.source.properties)
- return acc < point.source.properties.dba ? point.source.properties.dba : acc;
- return acc < point.properties.dba ? point.properties.dba : acc;
- }, -Infinity);
- return Math.round(elVal);
- },
- _filterData: null,
- };
- }, [noiseData.features]);
-
- const mapHook = useMap({
- mapId: props.mapId,
- waitForLayer: props.insertBeforeLayer,
- });
- const initializedRef = useRef(false);
-
- // add deckGl Layer
- useEffect(() => {
- if (
- !mapHook.map ||
- noiseData.features.length <= 0 ||
- (initializedRef.current && noiseData.features.length >= 0)
- )
- return;
- initializedRef.current = true;
-
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
- // @ts-ignore
- const hexagonLayer = new HexagonLayer({
- ...deckGlLayerProps,
- } as unknown as HexagonLayerProps);
- deckGlHook.addLayer(hexagonLayer);
-
- return () => {
- // eslint-disable-next-line @typescript-eslint/no-unused-expressions
- hexagonLayer && deckGlHook.removeLayer(hexagonLayer);
- initializedRef.current = false;
- };
- }, [mapHook.map, props.mapId, deckGlLayerProps]);
-
- return <>>;
-};
-
-export default MlHexagonMap;
diff --git a/packages/deck-gl/src/components/MlSceneGraphLayer/MlScenegraphLayer.stories.tsx b/packages/deck-gl/src/components/MlSceneGraphLayer/MlScenegraphLayer.stories.tsx
new file mode 100644
index 00000000..48b8d89f
--- /dev/null
+++ b/packages/deck-gl/src/components/MlSceneGraphLayer/MlScenegraphLayer.stories.tsx
@@ -0,0 +1,118 @@
+import mapContextDecorator from '../../decorators/MapContextDecorator';
+import MlScenegraphLayer from './MlScenegraphLayer';
+
+type BartStation = {
+ name: string;
+ coordinates: [longitude: number, latitude: number];
+};
+
+const wgLocations = [
+ {
+ id: '1',
+ type: 'Feature',
+ properties: {
+ Standort: 'Bonn',
+ Mitarbeitende: 26,
+ },
+ geometry: {
+ coordinates: [7.085121767634178, 50.738628929850876],
+ type: 'Point',
+ },
+ },
+ {
+ id: '2',
+ type: 'Feature',
+ properties: {
+ Standort: 'Freiburg',
+ Mitarbeitende: 10,
+ },
+ geometry: {
+ coordinates: [7.842759788570362, 47.98905444717667],
+ type: 'Point',
+ },
+ },
+ {
+ id: '3',
+ type: 'Feature',
+ properties: {
+ Standort: 'Berlin',
+ Mitarbeitende: 13,
+ },
+ geometry: {
+ coordinates: [13.330420447460796, 52.492768290796676],
+ type: 'Point',
+ },
+ },
+ {
+ id: '4',
+ type: 'Feature',
+ properties: {
+ Standort: 'Hamburg',
+ Mitarbeitende: 3,
+ },
+ geometry: {
+ coordinates: [10.041789021808029, 53.5511363175323],
+ type: 'Point',
+ },
+ },
+];
+
+const storyoptions = {
+ title: 'MapComponents/MlScenegraphLayer',
+ component: MlScenegraphLayer,
+ argTypes: {},
+ decorators: mapContextDecorator,
+};
+export default storyoptions;
+
+const Template = (context: any) => {
+ return ;
+};
+
+export const DeckglExample: { [key: string]: any } = Template.bind({});
+DeckglExample.parameters = {
+ mapOptions: {
+ zoom: 10,
+ center: [-122.2, 37.773972],
+ pitch: 60,
+ },
+};
+DeckglExample.args = {
+ mapId: 'map_1',
+ id: 'ScenegraphLayer',
+ data: 'https://raw.githubusercontent.com/visgl/deck.gl-data/master/website/bart-stations.json',
+ getPosition: (d: BartStation) => d.coordinates,
+ getOrientation: () => [0, Math.random() * 180, 90],
+ scenegraph:
+ 'https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/BoxAnimated/glTF-Binary/BoxAnimated.glb',
+ sizeScale: 500,
+ _animations: {
+ '*': { speed: 5 },
+ },
+ _lighting: 'pbr',
+ pickable: true,
+};
+
+export const WhereGroupLocationExample: { [key: string]: any } = Template.bind({});
+WhereGroupLocationExample.parameters = {
+ mapOptions: {
+ center: [10.4, 50],
+ pitch: 56,
+ zoom: 6,
+ },
+};
+WhereGroupLocationExample.args = {
+ mapId: 'map_1',
+ id: 'ScenegraphLayer',
+ data: wgLocations,
+ getPosition: (d: any) => d.geometry.coordinates,
+ getOrientation: () => [0, 0, 90],
+ getColor: () => [255, 255, 255],
+ scenegraph: '/assets/3D/WhereGroupLogo.glb',
+ sizeScale: 100,
+ _animations: {
+ '*': { speed: 5 },
+ },
+ _lighting: 'pbr',
+ pickable: true,
+};
diff --git a/packages/deck-gl/src/components/MlSceneGraphLayer/MlScenegraphLayer.tsx b/packages/deck-gl/src/components/MlSceneGraphLayer/MlScenegraphLayer.tsx
new file mode 100644
index 00000000..0eb0e848
--- /dev/null
+++ b/packages/deck-gl/src/components/MlSceneGraphLayer/MlScenegraphLayer.tsx
@@ -0,0 +1,47 @@
+import { ScenegraphLayer, ScenegraphLayerProps } from '@deck.gl/mesh-layers';
+import { useEffect, useMemo } from 'react';
+import { useMap } from '@mapcomponents/react-maplibre';
+import useDeckGl from '../../hooks/useDeckGl';
+
+export interface MlScenegraphLayerProps extends ScenegraphLayerProps {
+ /**
+ * Id of the target MapLibre instance in mapContext
+ */
+ mapId?: string;
+ /**
+ * Id of an existing layer in the mapLibre instance to help specify the layer order
+ * This layer will be visually beneath the layer with the "beforeId" id.
+ */
+ beforeId?: string;
+}
+
+const MlScenegraphLayer = (props: MlScenegraphLayerProps) => {
+ const { mapId, ...ScenegraphLayerProps } = props;
+
+ const mapHook = useMap({
+ mapId: mapId,
+ waitForLayer: ScenegraphLayerProps.beforeId,
+ });
+ const deckGlHook = useDeckGl();
+ const scenegraphLayer = useMemo(
+ () =>
+ new ScenegraphLayer({
+ ...ScenegraphLayerProps,
+ }),
+ [ScenegraphLayerProps]
+ );
+
+ useEffect(() => {
+ if (!mapHook.map || !scenegraphLayer) return;
+
+ deckGlHook.addLayer(scenegraphLayer);
+
+ return () => {
+ // eslint-disable-next-line @typescript-eslint/no-unused-expressions
+ scenegraphLayer && deckGlHook.removeLayer(scenegraphLayer);
+ };
+ }, [mapHook.map, scenegraphLayer]);
+ return <>>;
+};
+
+export default MlScenegraphLayer;
diff --git a/packages/deck-gl/src/contexts/DeckGlContext.tsx b/packages/deck-gl/src/contexts/DeckGlContext.tsx
index 07579337..fac9e897 100644
--- a/packages/deck-gl/src/contexts/DeckGlContext.tsx
+++ b/packages/deck-gl/src/contexts/DeckGlContext.tsx
@@ -1,11 +1,13 @@
import React, { ReactNode, useEffect, useRef, useState } from 'react';
import { useMap } from '@mapcomponents/react-maplibre';
-import { Layer } from '@deck.gl/core';
+import { Effect, Layer } from '@deck.gl/core';
import { MapboxOverlay } from '@deck.gl/mapbox';
export interface DeckGlContextType {
deckGlLayerArray: Layer[];
setDeckGlLayerArray: React.Dispatch>;
+ deckGlEffectArray: Effect[];
+ setDeckGlEffectArray: React.Dispatch>;
}
interface DeckGlContextProviderProps {
@@ -21,12 +23,14 @@ const DeckGlContextProvider = ({ mapId, children }: DeckGlContextProviderProps)
const overlayRef = useRef(undefined);
const [deckGlLayerArray, setDeckGlLayerArray] = useState([]);
+ const [deckGlEffectArray, setDeckGlEffectArray] = useState([]);
useEffect(() => {
if (!mapHook.map) return;
overlayRef.current = new MapboxOverlay({
id: overlayId,
+ interleaved: true,
});
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
@@ -44,12 +48,15 @@ const DeckGlContextProvider = ({ mapId, children }: DeckGlContextProviderProps)
if (!overlayRef.current) return;
overlayRef.current.setProps({
layers: [...deckGlLayerArray],
+ effects: [...deckGlEffectArray],
});
- }, [deckGlLayerArray]);
+ }, [deckGlLayerArray, deckGlEffectArray]);
const value = {
deckGlLayerArray,
setDeckGlLayerArray,
+ deckGlEffectArray,
+ setDeckGlEffectArray,
};
return {children};
};
diff --git a/packages/deck-gl/src/decorators/MapContextDecorator.tsx b/packages/deck-gl/src/decorators/MapContextDecorator.tsx
index c2d5973e..cf4d7d60 100644
--- a/packages/deck-gl/src/decorators/MapContextDecorator.tsx
+++ b/packages/deck-gl/src/decorators/MapContextDecorator.tsx
@@ -1,16 +1,16 @@
import { useMemo } from 'react';
import {
+ getTheme,
MapComponentsProvider,
MapLibreMap,
MlNavigationTools,
- getTheme,
} from '@mapcomponents/react-maplibre';
import './style.css';
import { ThemeProvider as MUIThemeProvider } from '@mui/material/styles';
+import { DeckGlContextProvider } from '../contexts/DeckGlContext';
const decorators = [
- // eslint-disable-next-line
(Story: any, context: any) => {
const theme = useMemo(() => getTheme(context?.globals?.theme), [context?.globals?.theme]);
@@ -18,20 +18,25 @@ const decorators = [
-
+
+
+
-
+
diff --git a/packages/deck-gl/src/hooks/useDeckGl.tsx b/packages/deck-gl/src/hooks/useDeckGl.tsx
index 05b19573..e08cf302 100644
--- a/packages/deck-gl/src/hooks/useDeckGl.tsx
+++ b/packages/deck-gl/src/hooks/useDeckGl.tsx
@@ -1,24 +1,27 @@
import DeckGlContext from '../contexts/DeckGlContext';
import { useContext } from 'react';
-import { Layer } from '@deck.gl/core';
+import { Effect, Layer } from '@deck.gl/core';
function useDeckGl() {
const deckGlContext = useContext(DeckGlContext);
- const layerArray = deckGlContext.deckGlLayerArray;
+ function addEffect(effect: Effect) {
+ deckGlContext.setDeckGlEffectArray((prevState) => [...prevState, effect]);
+ }
+ function removeEffect(effect: Effect) {
+ deckGlContext.setDeckGlEffectArray((prevState) => prevState.filter((e) => e !== effect));
+ }
function addLayer(layer: Layer) {
- const newDeckGLLayerArray = [...layerArray];
- newDeckGLLayerArray.push(layer);
- deckGlContext.setDeckGlLayerArray(newDeckGLLayerArray);
+ deckGlContext.setDeckGlLayerArray((prevState) => [...prevState, layer]);
}
function removeLayer(layer: Layer) {
- const newDeckGLLayerArray = layerArray.filter((l) => l !== layer);
- deckGlContext.setDeckGlLayerArray(newDeckGLLayerArray);
+ deckGlContext.setDeckGlLayerArray((prevState) => prevState.filter((l) => l !== layer));
}
return {
+ addEffect,
+ removeEffect,
addLayer,
removeLayer,
- layerArray,
};
}
export default useDeckGl;
diff --git a/packages/deck-gl/src/index.ts b/packages/deck-gl/src/index.ts
index eaed9ecb..950d70f4 100644
--- a/packages/deck-gl/src/index.ts
+++ b/packages/deck-gl/src/index.ts
@@ -1,3 +1,5 @@
export { default as DeckGlContext, DeckGlContextProvider } from './contexts/DeckGlContext';
export { default as useDeckGl } from './hooks/useDeckGl';
-export { default as MlHexagonLayer } from './components/MlHexagonMap/MlHexagonMap';
+export { default as MlHexagonLayer } from './components/MlHexagonLayer/MlHexagonLayer';
+export { default as Ml3DTileLayer } from './components/Ml3DTileLayer/Ml3DTileLayer';
+export { default as MlSceneGraphLayer } from './components/MlSceneGraphLayer/MlScenegraphLayer';
diff --git a/packages/deck-gl/vite.config.ts b/packages/deck-gl/vite.config.ts
index f309f419..76990d14 100644
--- a/packages/deck-gl/vite.config.ts
+++ b/packages/deck-gl/vite.config.ts
@@ -35,7 +35,7 @@ export default defineConfig(() => ({
fileName: 'index',
// Change this to the formats you want to support.
// Don't forget to update your package.json as well.
- formats: ['es' as const],
+ formats: ['es' as const, 'cjs' as const],
},
rollupOptions: {
// External packages that should not be bundled into your library.
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 1b8f99b3..41491110 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -217,19 +217,62 @@ importers:
version: 2.8.4
packages/deck-gl:
+ dependencies:
+ '@deck.gl/aggregation-layers':
+ specifier: ^9.2.6
+ version: 9.2.6(@deck.gl/core@9.2.6)(@deck.gl/layers@9.1.14(@deck.gl/core@9.2.6)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))))(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))
+ '@deck.gl/core':
+ specifier: ^9.2.6
+ version: 9.2.6
+ '@deck.gl/geo-layers':
+ specifier: ^9.2.6
+ version: 9.2.6(@deck.gl/core@9.2.6)(@deck.gl/extensions@9.2.6(@deck.gl/core@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))))(@deck.gl/layers@9.1.14(@deck.gl/core@9.2.6)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))))(@deck.gl/mesh-layers@9.2.6(@deck.gl/core@9.2.6)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/gltf@9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@loaders.gl/core@4.3.4)(@luma.gl/constants@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))
+ '@deck.gl/mapbox':
+ specifier: ^9.2.6
+ version: 9.2.6(@deck.gl/core@9.2.6)(@luma.gl/constants@9.2.6)(@luma.gl/core@9.2.6)(@math.gl/web-mercator@4.1.0)
+ '@deck.gl/mesh-layers':
+ specifier: ^9.2.6
+ version: 9.2.6(@deck.gl/core@9.2.6)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/gltf@9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))
+ '@mapcomponents/react-maplibre':
+ specifier: workspace:*
+ version: link:../react-maplibre
+ '@mui/icons-material':
+ specifier: ^7.3.2
+ version: 7.3.2(@mui/material@7.3.2(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@types/react@19.1.12)(react@19.1.0)
+ '@mui/material':
+ specifier: ^7.3.2
+ version: 7.3.2(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
+ '@storybook/react':
+ specifier: ^9.1.4
+ version: 9.1.4(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(storybook@9.1.1(@testing-library/dom@10.4.1)(prettier@3.6.2)(vite@7.1.4(@types/node@24.3.1)(jiti@2.4.2)(terser@5.44.0)(yaml@2.8.1)))(typescript@5.9.2)
+ maplibre-gl:
+ specifier: ^5.16.0
+ version: 5.16.0
+ uuid:
+ specifier: ^11.1.0
+ version: 11.1.0
+ devDependencies:
+ '@types/geojson':
+ specifier: ^7946.0.16
+ version: 7946.0.16
+
+ packages/deck-gl/dist:
dependencies:
'@deck.gl/aggregation-layers':
specifier: ^9.1.14
- version: 9.1.14(@deck.gl/core@9.1.14)(@deck.gl/layers@9.1.14(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.1.9(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.1.9(@luma.gl/core@9.1.9))))(@luma.gl/core@9.1.9)(@luma.gl/engine@9.1.9(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.1.9(@luma.gl/core@9.1.9)))
+ version: 9.1.14(@deck.gl/core@9.1.14)(@deck.gl/layers@9.1.14(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))))(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))
'@deck.gl/core':
specifier: ^9.1.14
version: 9.1.14
+ '@deck.gl/geo-layers':
+ specifier: ^9.1.4
+ version: 9.2.6(@deck.gl/core@9.1.14)(@deck.gl/extensions@9.2.6(@deck.gl/core@9.1.14)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))))(@deck.gl/layers@9.1.14(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))))(@deck.gl/mesh-layers@9.2.6(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/gltf@9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@loaders.gl/core@4.3.4)(@luma.gl/constants@9.2.6)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))
'@deck.gl/mapbox':
specifier: ^9.1.14
version: 9.1.14(@deck.gl/core@9.1.14)(@luma.gl/core@9.1.9)
'@mapcomponents/react-maplibre':
specifier: workspace:*
- version: link:../react-maplibre
+ version: link:../../react-maplibre
'@mui/icons-material':
specifier: ^7.3.2
version: 7.3.2(@mui/material@7.3.2(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@types/react@19.1.12)(react@19.1.0)
@@ -240,8 +283,11 @@ importers:
specifier: ^9.1.4
version: 9.1.4(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(storybook@9.1.1(@testing-library/dom@10.4.1)(prettier@3.6.2)(vite@7.1.4(@types/node@24.3.1)(jiti@2.4.2)(terser@5.44.0)(yaml@2.8.1)))(typescript@5.9.2)
maplibre-gl:
- specifier: ^5.16.0
+ specifier: ^5.7.0
version: 5.16.0
+ uuid:
+ specifier: ^11.1.0
+ version: 11.1.0
devDependencies:
'@types/geojson':
specifier: ^7946.0.16
@@ -292,6 +338,51 @@ importers:
specifier: ^0.5.0
version: 0.5.0
+ packages/ra-geospatial/dist:
+ dependencies:
+ '@emotion/react':
+ specifier: ^11.14.0
+ version: 11.14.0(@types/react@19.1.12)(react@19.1.0)
+ '@emotion/styled':
+ specifier: ^11.14.1
+ version: 11.14.1(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0)
+ '@mapcomponents/react-maplibre':
+ specifier: workspace:^
+ version: link:../../react-maplibre
+ '@mui/icons-material':
+ specifier: ^7.3.2
+ version: 7.3.2(@mui/material@7.3.2(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@types/react@19.1.12)(react@19.1.0)
+ '@mui/material':
+ specifier: ^7.3.2
+ version: 7.3.2(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
+ '@turf/helpers':
+ specifier: ^7.2.0
+ version: 7.2.0
+ '@turf/turf':
+ specifier: ^7.2.0
+ version: 7.2.0
+ '@types/geojson':
+ specifier: ^7946.0.16
+ version: 7946.0.16
+ lodash:
+ specifier: ^4.17.21
+ version: 4.17.21
+ maplibre-gl:
+ specifier: ^5.7.0
+ version: 5.16.0
+ ra-data-fakerest:
+ specifier: ^5.11.0
+ version: 5.11.0(ra-core@5.11.0(react-dom@19.1.0(react@19.1.0))(react-hook-form@7.62.0(react@19.1.0))(react-router-dom@7.8.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-router@7.8.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0))
+ react-admin:
+ specifier: ^5.11.0
+ version: 5.11.0(@mui/system@7.3.2(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0))(@mui/utils@7.3.2(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(csstype@3.1.3)(react-dom@19.1.0(react@19.1.0))(react-is@19.1.1)(react@19.1.0)
+ react-router-dom:
+ specifier: ^7.8.2
+ version: 7.8.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
+ wellknown:
+ specifier: ^0.5.0
+ version: 0.5.0
+
packages/react-maplibre:
dependencies:
'@dnd-kit/core':
@@ -647,7 +738,7 @@ importers:
specifier: ^3.0.2
version: 3.0.2
maplibre-gl:
- specifier: ^5.16.0
+ specifier: ^5.7.0
version: 5.16.0
osm2geojson-lite:
specifier: ^1.1.2
@@ -847,31 +938,6 @@ importers:
specifier: ^0.182.0
version: 0.182.0
- packages/three/dist:
- dependencies:
- '@mapcomponents/react-maplibre':
- specifier: 1.7.5
- version: 1.7.5(@types/react@19.1.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@mui/material':
- specifier: ^7.3.2
- version: 7.3.2(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- maplibre-gl:
- specifier: ^5.16.0
- version: 5.16.0
- react:
- specifier: ^19.1.0
- version: 19.1.0
- react-dom:
- specifier: ^19.1.0
- version: 19.1.0(react@19.1.0)
- three:
- specifier: ^0.182.0
- version: 0.182.0
- devDependencies:
- '@types/three':
- specifier: ^0.182.0
- version: 0.182.0
-
packages:
'@adobe/css-tools@4.4.4':
@@ -1677,9 +1743,38 @@ packages:
'@luma.gl/core': ~9.1.9
'@luma.gl/engine': ~9.1.9
+ '@deck.gl/aggregation-layers@9.2.6':
+ resolution: {integrity: sha512-T42ZwB63KI4+0pe2HBwMQS7qnqyv3LlqAQfRSHBlFZMzBq72SxIgk9BzhrT16uBHxFFjjMh6K5g28/UfDOXQEg==}
+ peerDependencies:
+ '@deck.gl/core': ~9.2.0
+ '@deck.gl/layers': ~9.2.0
+ '@luma.gl/core': ~9.2.6
+ '@luma.gl/engine': ~9.2.6
+
'@deck.gl/core@9.1.14':
resolution: {integrity: sha512-tXakSSvi5g+EvxSsnnjoRO8z3XxHxISTRzzIqcs3AZuWHnDptK28y9iD0Da21ILop1IYLaWE1QTUe6IAdp/Wag==}
+ '@deck.gl/core@9.2.6':
+ resolution: {integrity: sha512-bBFfwfythPPpXS/OKUMvziQ8td84mRGMnYZfqdUvfUVltzjFtQCBQUJTzgo3LubvOzSnzo8GTWskxHaZzkqdKQ==}
+
+ '@deck.gl/extensions@9.2.6':
+ resolution: {integrity: sha512-HNuzo76mD6Ykc/xMEyCMH+to6/Xi+7ehG3VYToSm+R3196Ki5p58pyRHzvq9CrBDvFd3SLMe9QqRm2GTg3wn/w==}
+ peerDependencies:
+ '@deck.gl/core': ~9.2.0
+ '@luma.gl/core': ~9.2.6
+ '@luma.gl/engine': ~9.2.6
+
+ '@deck.gl/geo-layers@9.2.6':
+ resolution: {integrity: sha512-Js42GcAlzH5vHWHdg/eKSmFvx1TWlhW+d6p8Y+67/iHpcCXmx/CBmpsr1ZsQ8XYc+GY8NDAmkHe5KECDJsJiDg==}
+ peerDependencies:
+ '@deck.gl/core': ~9.2.0
+ '@deck.gl/extensions': ~9.2.0
+ '@deck.gl/layers': ~9.2.0
+ '@deck.gl/mesh-layers': ~9.2.0
+ '@loaders.gl/core': ^4.2.0
+ '@luma.gl/core': ~9.2.6
+ '@luma.gl/engine': ~9.2.6
+
'@deck.gl/layers@9.1.14':
resolution: {integrity: sha512-cCClyZxznzXLPJnH2er7ZJAnXYuEHH/0hcDoc5Lp3SNByx3ASNrZcizIBOCxO7132LHFN4cSeyz0JVP8p56TDg==}
peerDependencies:
@@ -1694,6 +1789,23 @@ packages:
'@deck.gl/core': ^9.1.0
'@luma.gl/core': ~9.1.9
+ '@deck.gl/mapbox@9.2.6':
+ resolution: {integrity: sha512-gyqCHZwiZS8LOYY6LILQQp5YCCf++VFk/wRoGskZvhb/kdEPX2Onv8iV8pXe0h9UyMLO6Mj0wl3HlJWg2ILkrg==}
+ peerDependencies:
+ '@deck.gl/core': ~9.2.0
+ '@luma.gl/constants': ~9.2.6
+ '@luma.gl/core': ~9.2.6
+ '@math.gl/web-mercator': ^4.1.0
+
+ '@deck.gl/mesh-layers@9.2.6':
+ resolution: {integrity: sha512-/KjhjoQJRb9lUcDE6pZlHvcto9H5iBCJtUb1/uCb8fahzEAcZBDubAn4RUWjfRyOSmzJfQHrWdNAjflNkL87Yg==}
+ peerDependencies:
+ '@deck.gl/core': ~9.2.0
+ '@luma.gl/core': ~9.2.6
+ '@luma.gl/engine': ~9.2.6
+ '@luma.gl/gltf': ~9.2.6
+ '@luma.gl/shadertools': ~9.2.6
+
'@dimforge/rapier3d-compat@0.12.0':
resolution: {integrity: sha512-uekIGetywIgopfD97oDL5PfeezkFpNhwlzlaEYNOA0N6ghdsOvh/HYjSMek5Q2O1PYvRSDFcqFVJl4r4ZBwOow==}
@@ -2552,9 +2664,39 @@ packages:
'@leichtgewicht/ip-codec@2.0.5':
resolution: {integrity: sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==}
+ '@loaders.gl/3d-tiles@4.3.4':
+ resolution: {integrity: sha512-JQ3y3p/KlZP7lfobwON5t7H9WinXEYTvuo3SRQM8TBKhM+koEYZhvI2GwzoXx54MbBbY+s3fm1dq5UAAmaTsZw==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
+ '@loaders.gl/compression@4.3.4':
+ resolution: {integrity: sha512-+o+5JqL9Sx8UCwdc2MTtjQiUHYQGJALHbYY/3CT+b9g/Emzwzez2Ggk9U9waRfdHiBCzEgRBivpWZEOAtkimXQ==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
'@loaders.gl/core@4.3.4':
resolution: {integrity: sha512-cG0C5fMZ1jyW6WCsf4LoHGvaIAJCEVA/ioqKoYRwoSfXkOf+17KupK1OUQyUCw5XoRn+oWA1FulJQOYlXnb9Gw==}
+ '@loaders.gl/crypto@4.3.4':
+ resolution: {integrity: sha512-3VS5FgB44nLOlAB9Q82VOQnT1IltwfRa1miE0mpHCe1prYu1M/dMnEyynusbrsp+eDs3EKbxpguIS9HUsFu5dQ==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
+ '@loaders.gl/draco@4.3.4':
+ resolution: {integrity: sha512-4Lx0rKmYENGspvcgV5XDpFD9o+NamXoazSSl9Oa3pjVVjo+HJuzCgrxTQYD/3JvRrolW/QRehZeWD/L/cEC6mw==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
+ '@loaders.gl/gis@4.3.4':
+ resolution: {integrity: sha512-8xub38lSWW7+ZXWuUcggk7agRHJUy6RdipLNKZ90eE0ZzLNGDstGD1qiBwkvqH0AkG+uz4B7Kkiptyl7w2Oa6g==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
+ '@loaders.gl/gltf@4.3.4':
+ resolution: {integrity: sha512-EiUTiLGMfukLd9W98wMpKmw+hVRhQ0dJ37wdlXK98XPeGGB+zTQxCcQY+/BaMhsSpYt/OOJleHhTfwNr8RgzRg==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
'@loaders.gl/images@4.3.4':
resolution: {integrity: sha512-qgc33BaNsqN9cWa/xvcGvQ50wGDONgQQdzHCKDDKhV2w/uptZoR5iofJfuG8UUV2vUMMd82Uk9zbopRx2rS4Ag==}
peerDependencies:
@@ -2565,38 +2707,108 @@ packages:
peerDependencies:
'@loaders.gl/core': ^4.3.0
+ '@loaders.gl/math@4.3.4':
+ resolution: {integrity: sha512-UJrlHys1fp9EUO4UMnqTCqvKvUjJVCbYZ2qAKD7tdGzHJYT8w/nsP7f/ZOYFc//JlfC3nq+5ogvmdpq2pyu3TA==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
+ '@loaders.gl/mvt@4.3.4':
+ resolution: {integrity: sha512-9DrJX8RQf14htNtxsPIYvTso5dUce9WaJCWCIY/79KYE80Be6dhcEYMknxBS4w3+PAuImaAe66S5xo9B7Erm5A==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
'@loaders.gl/schema@4.3.4':
resolution: {integrity: sha512-1YTYoatgzr/6JTxqBLwDiD3AVGwQZheYiQwAimWdRBVB0JAzych7s1yBuE0CVEzj4JDPKOzVAz8KnU1TiBvJGw==}
peerDependencies:
'@loaders.gl/core': ^4.3.0
+ '@loaders.gl/terrain@4.3.4':
+ resolution: {integrity: sha512-JszbRJGnxL5Fh82uA2U8HgjlsIpzYoCNNjy3cFsgCaxi4/dvjz3BkLlBilR7JlbX8Ka+zlb4GAbDDChiXLMJ/g==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
+ '@loaders.gl/textures@4.3.4':
+ resolution: {integrity: sha512-arWIDjlE7JaDS6v9by7juLfxPGGnjT9JjleaXx3wq/PTp+psLOpGUywHXm38BNECos3MFEQK3/GFShWI+/dWPw==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
+ '@loaders.gl/tiles@4.3.4':
+ resolution: {integrity: sha512-oC0zJfyvGox6Ag9ABF8fxOkx9yEFVyzTa9ryHXl2BqLiQoR1v3p+0tIJcEbh5cnzHfoTZzUis1TEAZluPRsHBQ==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
+ '@loaders.gl/wms@4.3.4':
+ resolution: {integrity: sha512-yXF0wuYzJUdzAJQrhLIua6DnjOiBJusaY1j8gpvuH1VYs3mzvWlIRuZKeUd9mduQZKK88H2IzHZbj2RGOauq4w==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
'@loaders.gl/worker-utils@4.3.4':
resolution: {integrity: sha512-EbsszrASgT85GH3B7jkx7YXfQyIYo/rlobwMx6V3ewETapPUwdSAInv+89flnk5n2eu2Lpdeh+2zS6PvqbL2RA==}
peerDependencies:
'@loaders.gl/core': ^4.3.0
+ '@loaders.gl/xml@4.3.4':
+ resolution: {integrity: sha512-p+y/KskajsvyM3a01BwUgjons/j/dUhniqd5y1p6keLOuwoHlY/TfTKd+XluqfyP14vFrdAHCZTnFCWLblN10w==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
+ '@loaders.gl/zip@4.3.4':
+ resolution: {integrity: sha512-bHY4XdKYJm3vl9087GMoxnUqSURwTxPPh6DlAGOmz6X9Mp3JyWuA2gk3tQ1UIuInfjXKph3WAUfGe6XRIs1sfw==}
+ peerDependencies:
+ '@loaders.gl/core': ^4.3.0
+
'@luma.gl/constants@9.1.9':
resolution: {integrity: sha512-yc9fml04OeTTcwK+7gmDMxoLQ67j4ZiAFXjmYvPomYyBVzS0NZxTDuwcCBmnxjLOiroOZW8FRRrVc/yOiFug2w==}
+ '@luma.gl/constants@9.2.6':
+ resolution: {integrity: sha512-rvFFrJuSm5JIWbDHFuR4Q2s4eudO3Ggsv0TsGKn9eqvO7bBiPm/ANugHredvh3KviEyYuMZZxtfJvBdr3kzldg==}
+
'@luma.gl/core@9.1.9':
resolution: {integrity: sha512-1i9N7+I/UbFjx3axSMlc3/NufA+C2iBv/7mw51gRE/ypQPgvFmY/QqXBVZRe+nthF+OhlUMhO19TBndzYFTWhA==}
+ '@luma.gl/core@9.2.6':
+ resolution: {integrity: sha512-d8KcH8ZZcjDAodSN/G2nueA9YE2X8kMz7Q0OxDGpCww6to1MZXM3Ydate/Jqsb5DDKVgUF6yD6RL8P5jOki9Yw==}
+
'@luma.gl/engine@9.1.9':
resolution: {integrity: sha512-n1GLK1sUMFkWxdb+aZYn6ZBFltFEMi7X+6ZPxn2pBsNT6oeF4AyvH5AyqhOpvHvUnCLDt3Zsf1UIfx3MI//YSw==}
peerDependencies:
'@luma.gl/core': ^9.1.0
'@luma.gl/shadertools': ^9.1.0
+ '@luma.gl/engine@9.2.6':
+ resolution: {integrity: sha512-1AEDs2AUqOWh7Wl4onOhXmQF+Rz1zNdPXF+Kxm4aWl92RQ42Sh2CmTvRt2BJku83VQ91KFIEm/v3qd3Urzf+Uw==}
+ peerDependencies:
+ '@luma.gl/core': ~9.2.0
+ '@luma.gl/shadertools': ~9.2.0
+
+ '@luma.gl/gltf@9.2.6':
+ resolution: {integrity: sha512-is3YkiGsWqWTmwldMz6PRaIUleufQfUKYjJTKpsF5RS1OnN+xdAO0mJq5qJTtOQpppWAU0VrmDFEVZ6R3qvm0A==}
+ peerDependencies:
+ '@luma.gl/constants': ~9.2.0
+ '@luma.gl/core': ~9.2.0
+ '@luma.gl/engine': ~9.2.0
+ '@luma.gl/shadertools': ~9.2.0
+
'@luma.gl/shadertools@9.1.9':
resolution: {integrity: sha512-Uqp2xfgIEunRMLXTeCJ4uEMlWcUGcYMZGJ8GAOrAeDzn4bMKVRKmZDC71vkuTctnaodM3UdrI9W6s1sJlrXsxw==}
peerDependencies:
'@luma.gl/core': ^9.1.0
+ '@luma.gl/shadertools@9.2.6':
+ resolution: {integrity: sha512-4+uUbynqPUra9d/z1nQChyHmhLgmKfSMjS7kOwLB6exSnhKnpHL3+Hu9fv55qyaX50nGH3oHawhGtJ6RRvu65w==}
+ peerDependencies:
+ '@luma.gl/core': ~9.2.0
+
'@luma.gl/webgl@9.1.9':
resolution: {integrity: sha512-jecHjhNSWkXH0v62rM6G5fIIkOmsrND27099iKgdutFvHIvd4QS4UzGWEEa9AEPlP0rTLqXkA6y6YL7f42ZkVg==}
peerDependencies:
'@luma.gl/core': ^9.1.0
+ '@luma.gl/webgl@9.2.6':
+ resolution: {integrity: sha512-NGBTdxJMk7j8Ygr1zuTyAvr1Tw+EpupMIQo7RelFjEsZXg6pujFqiDMM+rgxex8voCeuhWBJc7Rs+MoSqd46UQ==}
+ peerDependencies:
+ '@luma.gl/core': ~9.2.0
+
'@mapbox/extent@0.4.0':
resolution: {integrity: sha512-MSoKw3qPceGuupn04sdaJrFeLKvcSETVLZCGS8JA9x6zXQL3FWiKaIXYIZEDXd5jpXpWlRxinCZIN49yRy0C9A==}
@@ -2631,6 +2843,9 @@ packages:
'@mapbox/mapbox-gl-sync-move@0.3.1':
resolution: {integrity: sha512-Y3PMyj0m/TBJa9OkQnO2TiVDu8sFUPmLF7q/THUHrD/g42qrURpMJJ4kufq4sR60YFMwZdCGBshrbgK5v2xXWw==}
+ '@mapbox/martini@0.2.0':
+ resolution: {integrity: sha512-7hFhtkb0KTLEls+TRw/rWayq5EeHtTaErgm/NskVoXmtgAQu/9D299aeyj6mzAR/6XUnYRp2lU+4IcrYRFjVsQ==}
+
'@mapbox/point-geometry@0.1.0':
resolution: {integrity: sha512-6j56HdLTwWGO0fJPlrZtdU/B13q8Uwmo18Ck2GnGgN9PCFyKTZ3UbXeEdRFh18i9XQ92eH2VdtpJHpBD3aripQ==}
@@ -2648,6 +2863,9 @@ packages:
'@mapbox/unitbezier@0.0.1':
resolution: {integrity: sha512-nMkuDXFv60aBr9soUG5q+GvZYL+2KZHVvsqFCzqnkGEf46U2fvmytHaEVc1/YZbiLn8X+eR3QzX1+dwDO1lxlw==}
+ '@mapbox/vector-tile@1.3.1':
+ resolution: {integrity: sha512-MCEddb8u44/xfQ3oD+Srl/tNcQoqTw3goGk2oLsrFxOTc3dUp+kAnby3PvAeeBYSMSjSPD1nd1AJA6W49WnoUw==}
+
'@mapbox/vector-tile@2.0.4':
resolution: {integrity: sha512-AkOLcbgGTdXScosBWwmmD7cDlvOjkg/DetGva26pIRiZPdeJYjYKarIlb4uxVzi6bwHO6EWH82eZ5Nuv4T5DUg==}
@@ -2655,12 +2873,6 @@ packages:
resolution: {integrity: sha512-Es6WcD0nO5l+2BOQS4uLfNPYQaNDfbot3X1XUoloz+x0mPDS3eeORZJl06HXjwBG1fOGwCRnzK88LMdxKRrd6Q==}
engines: {node: '>=6.0.0'}
- '@mapcomponents/react-maplibre@1.7.5':
- resolution: {integrity: sha512-1x4QqNDUA8NSzj4ofS67luk0+Yw2BfhVKKBvNcwQZOPyCsWlbgKnDujthvcuo8LhsgAfoBZWEZYqYVf4w/kN/w==}
- peerDependencies:
- react: ^19.1.0
- react-dom: ^19.1.0
-
'@maplibre/maplibre-gl-style-spec@24.4.1':
resolution: {integrity: sha512-UKhA4qv1h30XT768ccSv5NjNCX+dgfoq2qlLVmKejspPcSQTYD4SrVucgqegmYcKcmwf06wcNAa/kRd0NHWbUg==}
hasBin: true
@@ -2674,6 +2886,12 @@ packages:
'@math.gl/core@4.1.0':
resolution: {integrity: sha512-FrdHBCVG3QdrworwrUSzXIaK+/9OCRLscxI2OUy6sLOHyHgBMyfnEGs99/m3KNvs+95BsnQLWklVfpKfQzfwKA==}
+ '@math.gl/culling@4.1.0':
+ resolution: {integrity: sha512-jFmjFEACnP9kVl8qhZxFNhCyd47qPfSVmSvvjR0/dIL6R9oD5zhR1ub2gN16eKDO/UM7JF9OHKU3EBIfeR7gtg==}
+
+ '@math.gl/geospatial@4.1.0':
+ resolution: {integrity: sha512-BzsUhpVvnmleyYF6qdqJIip6FtIzJmnWuPTGhlBuPzh7VBHLonCFSPtQpbkRuoyAlbSyaGXcVt6p6lm9eK2vtg==}
+
'@math.gl/polygon@4.1.0':
resolution: {integrity: sha512-YA/9PzaCRHbIP5/0E9uTYrqe+jsYTQoqoDWhf6/b0Ixz8bPZBaGDEafLg3z7ffBomZLacUty9U3TlPjqMtzPjA==}
@@ -4303,6 +4521,9 @@ packages:
'@turf/bezier-spline@7.2.0':
resolution: {integrity: sha512-7BPkc3ufYB9KLvcaTpTsnpXzh9DZoENxCS0Ms9XUwuRXw45TpevwUpOsa3atO76iKQ5puHntqFO4zs8IUxBaaA==}
+ '@turf/boolean-clockwise@5.1.5':
+ resolution: {integrity: sha512-FqbmEEOJ4rU4/2t7FKx0HUWmjFEVqR+NJrFP7ymGSjja2SQ7Q91nnBihGuT+yuHHl6ElMjQ3ttsB/eTmyCycxA==}
+
'@turf/boolean-clockwise@7.2.0':
resolution: {integrity: sha512-0fJeFSARxy6ealGBM4Gmgpa1o8msQF87p2Dx5V6uSqzT8VPDegX1NSWl4b7QgXczYa9qv7IAABttdWP0K7Q7eQ==}
@@ -4369,6 +4590,9 @@ packages:
'@turf/clean-coords@7.2.0':
resolution: {integrity: sha512-+5+J1+D7wW7O/RDXn46IfCHuX1gIV1pIAQNSA7lcDbr3HQITZj334C4mOGZLEcGbsiXtlHWZiBtm785Vg8i+QQ==}
+ '@turf/clone@5.1.5':
+ resolution: {integrity: sha512-//pITsQ8xUdcQ9pVb4JqXiSqG4dos5Q9N4sYFoWghX21tfOV2dhc5TGqYOhnHrQS7RiKQL1vQ48kIK34gQ5oRg==}
+
'@turf/clone@7.2.0':
resolution: {integrity: sha512-JlGUT+/5qoU5jqZmf6NMFIoLDY3O7jKd53Up+zbpJ2vzUp6QdwdNzwrsCeONhynWM13F0MVtPXH4AtdkrgFk4g==}
@@ -4429,6 +4653,9 @@ packages:
'@turf/great-circle@7.2.0':
resolution: {integrity: sha512-n30OiADyOKHhor0aXNgYfXQYXO3UtsOKmhQsY1D89/Oh1nCIXG/1ZPlLL9ZoaRXXBTUBjh99a+K8029NQbGDhw==}
+ '@turf/helpers@5.1.5':
+ resolution: {integrity: sha512-/lF+JR+qNDHZ8bF9d+Cp58nxtZWJ3sqFe6n3u3Vpj+/0cqkjk4nXKYBSY0azm+GIYB5mWKxUXvuP/m0ZnKj1bw==}
+
'@turf/helpers@7.2.0':
resolution: {integrity: sha512-cXo7bKNZoa7aC7ydLmUR02oB3IgDe7MxiPuRz3cCtYQHn+BJ6h1tihmamYDWWUlPHgSNF0i3ATc4WmDECZafKw==}
@@ -4441,6 +4668,9 @@ packages:
'@turf/intersect@7.2.0':
resolution: {integrity: sha512-81GMzKS9pKqLPa61qSlFxLFeAC8XbwyCQ9Qv4z6o5skWk1qmMUbEHeMqaGUTEzk+q2XyhZ0sju1FV4iLevQ/aw==}
+ '@turf/invariant@5.2.0':
+ resolution: {integrity: sha512-28RCBGvCYsajVkw2EydpzLdcYyhSA77LovuOvgCJplJWaNVyJYH6BOR3HR9w50MEkPqb/Vc/jdo6I6ermlRtQA==}
+
'@turf/invariant@7.2.0':
resolution: {integrity: sha512-kV4u8e7Gkpq+kPbAKNC21CmyrXzlbBgFjO1PhrHPgEdNqXqDawoZ3i6ivE3ULJj2rSesCjduUaC/wyvH/sNr2Q==}
@@ -4492,6 +4722,9 @@ packages:
'@turf/mask@7.2.0':
resolution: {integrity: sha512-ulJ6dQqXC0wrjIoqFViXuMUdIPX5Q6GPViZ3kGfeVijvlLM7kTFBsZiPQwALSr5nTQg4Ppf3FD0Jmg8IErPrgA==}
+ '@turf/meta@5.2.0':
+ resolution: {integrity: sha512-ZjQ3Ii62X9FjnK4hhdsbT+64AYRpaI8XMBMcyftEOGSmPMUVnkbvuv3C9geuElAXfQU7Zk1oWGOcrGOD9zr78Q==}
+
'@turf/meta@7.2.0':
resolution: {integrity: sha512-igzTdHsQc8TV1RhPuOLVo74Px/hyPrVgVOTgjWQZzt3J9BVseCdpfY/0cJBdlSRI4S/yTmmHl7gAqjhpYH5Yaw==}
@@ -4555,6 +4788,9 @@ packages:
'@turf/rectangle-grid@7.2.0':
resolution: {integrity: sha512-f0o5ifvy0Ml/nHDJzMNcuSk4h11aa3BfvQNnYQhLpuTQu03j/ICZNlzKTLxwjcUqvxADUifty7Z9CX5W6zky4A==}
+ '@turf/rewind@5.1.5':
+ resolution: {integrity: sha512-Gdem7JXNu+G4hMllQHXRFRihJl3+pNl7qY+l4qhQFxq+hiU1cQoVFnyoleIqWKIrdK/i2YubaSwc3SCM7N5mMw==}
+
'@turf/rewind@7.2.0':
resolution: {integrity: sha512-SZpRAZiZsE22+HVz6pEID+ST25vOdpAMGk5NO1JeqzhpMALIkIGnkG+xnun2CfYHz7wv8/Z0ADiAvei9rkcQYA==}
@@ -4657,6 +4893,9 @@ packages:
'@types/bonjour@3.5.13':
resolution: {integrity: sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==}
+ '@types/brotli@1.3.4':
+ resolution: {integrity: sha512-cKYjgaS2DMdCKF7R0F5cgx1nfBYObN2ihIuPGQ4/dlIY6RpV7OWNwe9L8V4tTVKL2eZqOkNM9FM/rgTvLf4oXw==}
+
'@types/chai@5.2.2':
resolution: {integrity: sha512-8kB30R7Hwqf40JPiKhVzodJs2Qc1ZJ5zuT3uzw5Hq/dhNCl3G3l83jfpdI1e20BP348+fV7VIL/+FxaXkqBmWg==}
@@ -4669,6 +4908,9 @@ packages:
'@types/connect@3.4.38':
resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==}
+ '@types/crypto-js@4.2.2':
+ resolution: {integrity: sha512-sDOLlVbHhXpAUAL0YHDUUwDZf3iN4Bwi4W6a0W0b+QcAezUbRtH4FVb+9J4h+XFPW7l/gQ9F8qC7P+Ec4k8QVQ==}
+
'@types/d3-array@3.2.1':
resolution: {integrity: sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg==}
@@ -4878,6 +5120,9 @@ packages:
'@types/offscreencanvas@2019.7.3':
resolution: {integrity: sha512-ieXiYmgSRXUDeOntE1InxjWyvEelZGP63M+cGuquuRLuIKKT1osnkXjxev9B7d1nXSug5vpunx+gNlbVxMlC9A==}
+ '@types/pako@1.0.7':
+ resolution: {integrity: sha512-YBtzT2ztNF6R/9+UXj2wTGFnC9NklAnASt3sC0h2m1bbH7G6FyBIkt4AN8ThZpNfxUo1b2iMVO0UawiJymEt8A==}
+
'@types/pako@2.0.4':
resolution: {integrity: sha512-VWDCbrLeVXJM9fihYodcLiIv0ku+AlOa/TQ1SvYOaBuyrSKgEcro95LJyIsJ4vSo6BXIxOKxiJAat04CmST9Fw==}
@@ -5366,6 +5611,9 @@ packages:
resolution: {integrity: sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==}
hasBin: true
+ a5-js@0.5.0:
+ resolution: {integrity: sha512-VAw19sWdYadhdovb0ViOIi1SdKx6H6LwcGMRFKwMfgL5gcmL/1fKJHfgsNgNaJ7xC/eEyjs6VK+VVd4N0a+peg==}
+
abab@2.0.6:
resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==}
deprecated: Use your platform's native atob() and btoa() methods instead
@@ -5885,6 +6133,9 @@ packages:
resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
engines: {node: '>=8'}
+ brotli@1.3.3:
+ resolution: {integrity: sha512-oTKjJdShmDuGW94SyyaoQvAjf30dZaHnjJ8uAF+u2/vGJkJbJPJAT1gDiOJP5v1Zb6f9KEyW/1HpuaWIXtGHPg==}
+
browser-process-hrtime@1.0.0:
resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==}
@@ -5908,6 +6159,10 @@ packages:
engines: {node: '>= 0.4.0'}
hasBin: true
+ buf-compare@1.0.1:
+ resolution: {integrity: sha512-Bvx4xH00qweepGc43xFvMs5BKASXTbHaHm6+kDYIK9p/4iFwjATQkmPKHQSgJZzKbAymhztRbXUf1Nqhzl73/Q==}
+ engines: {node: '>=0.10.0'}
+
buffer-crc32@0.2.13:
resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==}
@@ -6033,6 +6288,9 @@ packages:
resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==}
engines: {node: '>=10'}
+ charenc@0.0.2:
+ resolution: {integrity: sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==}
+
cheap-ruler@4.0.0:
resolution: {integrity: sha512-0BJa8f4t141BYKQyn9NSQt1PguFQXMXwZiA5shfoaBYHAb2fFk2RAX+tiWMoQU+Agtzt3mdt0JtuyshAXqZ+Vw==}
@@ -6276,6 +6534,10 @@ packages:
resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==}
engines: {node: '>=0.10.0'}
+ core-assert@0.2.1:
+ resolution: {integrity: sha512-IG97qShIP+nrJCXMCgkNZgH7jZQ4n8RpPyPeXX++T6avR/KhLhgLiHKoEn5Rc1KjfycSfA9DMa6m+4C4eguHhw==}
+ engines: {node: '>=0.10.0'}
+
core-js-compat@3.45.1:
resolution: {integrity: sha512-tqTt5T4PzsMIZ430XGviK4vzYSoeNJ6CXODi6c/voxOT6IZqBht5/EKaSNnYiEjjRYxjVz7DQIsOsY0XNi8PIA==}
@@ -6333,6 +6595,9 @@ packages:
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
engines: {node: '>= 8'}
+ crypt@0.0.2:
+ resolution: {integrity: sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==}
+
css-color-keywords@1.0.0:
resolution: {integrity: sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==}
engines: {node: '>=4'}
@@ -6669,6 +6934,10 @@ packages:
deep-is@0.1.4:
resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
+ deep-strict-equal@0.2.0:
+ resolution: {integrity: sha512-3daSWyvZ/zwJvuMGlzG1O+Ow0YSadGfb3jsh9xoCutv2tWyB9dA4YvR9L9/fSdDZa2dByYQe+TqapSGUrjnkoA==}
+ engines: {node: '>=0.10.0'}
+
deepmerge@4.3.1:
resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
engines: {node: '>=0.10.0'}
@@ -6855,6 +7124,9 @@ packages:
resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==}
engines: {node: '>=12'}
+ draco3d@1.5.7:
+ resolution: {integrity: sha512-m6WCKt/erDXcw+70IJXnG7M3awwQPAsZvJGX5zY7beBqpELw6RDGkYVU0W43AFxye4pDZ5i2Lbyc/NNGqwjUVQ==}
+
dunder-proto@1.0.1:
resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
engines: {node: '>= 0.4'}
@@ -7325,6 +7597,10 @@ packages:
fast-uri@3.1.0:
resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==}
+ fast-xml-parser@4.5.3:
+ resolution: {integrity: sha512-RKihhV+SHsIUGXObeVy9AXiBbFwkVk7Syp8XgwN5U3JV416+Gwp/GO9i0JYKmikykgz/UHRrrV4ROuZEo/T0ig==}
+ hasBin: true
+
fastq@1.19.1:
resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==}
@@ -7351,6 +7627,9 @@ packages:
resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==}
engines: {node: ^12.20 || >= 14.13}
+ fflate@0.7.4:
+ resolution: {integrity: sha512-5u2V/CDW15QM1XbbgS+0DfPxVB+jUKhWEKuuFuHncbk3tEEqzmoXL+2KyOFuKGqOnmdIy0/davWF1CkuwtibCw==}
+
fflate@0.8.2:
resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==}
@@ -7740,6 +8019,10 @@ packages:
resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==}
engines: {node: '>=10'}
+ h3-js@4.4.0:
+ resolution: {integrity: sha512-DvJh07MhGgY2KcC4OeZc8SSyA+ZXpdvoh6uCzGpoKvWtZxJB+g6VXXC1+eWYkaMIsLz7J/ErhOalHCpcs1KYog==}
+ engines: {node: '>=4', npm: '>=3', yarn: '>=1.3.0'}
+
handle-thing@2.0.1:
resolution: {integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==}
@@ -8012,6 +8295,14 @@ packages:
resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==}
engines: {node: '>= 4'}
+ image-size@0.7.5:
+ resolution: {integrity: sha512-Hiyv+mXHfFEP7LzUL/llg9RwFxxY+o9N3JVLIeG5E7iFIFAalxvRU9UZthBdYDEVnzHMgjnKJPPpay5BWf1g9g==}
+ engines: {node: '>=6.9.0'}
+ hasBin: true
+
+ immediate@3.0.6:
+ resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==}
+
immer@10.1.3:
resolution: {integrity: sha512-tmjF/k8QDKydUlm3mZU+tjM6zeq9/fFpPqH9SzWmBnVVKsPBg/V66qsMwb3/Bo90cgUN+ghdVBess+hPsxUyRw==}
@@ -8157,6 +8448,9 @@ packages:
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
hasBin: true
+ is-error@2.2.2:
+ resolution: {integrity: sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==}
+
is-extendable@0.1.1:
resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==}
engines: {node: '>=0.10.0'}
@@ -8749,6 +9043,9 @@ packages:
resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==}
engines: {node: '>=4.0'}
+ jszip@3.10.1:
+ resolution: {integrity: sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==}
+
kdbush@4.0.2:
resolution: {integrity: sha512-WbCVYJ27Sz8zi9Q7Q0xHC+05iwkm3Znipc2XTlrnJbsHMYktW4hPhXUE8Ys1engBrvffoSCqbil1JQAa7clRpA==}
@@ -8761,6 +9058,7 @@ packages:
keygrip@1.1.0:
resolution: {integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==}
engines: {node: '>= 0.6'}
+ deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
keyv@4.5.4:
resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
@@ -8799,6 +9097,9 @@ packages:
kolorist@1.8.0:
resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
+ ktx-parse@0.7.1:
+ resolution: {integrity: sha512-FeA3g56ksdFNwjXJJsc1CCc7co+AJYDp6ipIp878zZ2bU8kWROatLYf39TQEd4/XRSUvBXovQ8gaVKWPXsCLEQ==}
+
language-subtag-registry@0.3.23:
resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==}
@@ -8829,6 +9130,9 @@ packages:
resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
engines: {node: '>= 0.8.0'}
+ lie@3.3.0:
+ resolution: {integrity: sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==}
+
lines-and-columns@1.2.4:
resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
@@ -8970,6 +9274,13 @@ packages:
long-timeout@0.1.1:
resolution: {integrity: sha512-BFRuQUqc7x2NWxfJBCyUrN8iYUYznzL9JROmRz1gZ6KlOIgmoD+njPVbb+VNn2nGMKggMsK79iUNErillsrx7w==}
+ long@3.2.0:
+ resolution: {integrity: sha512-ZYvPPOMqUwPoDsbJaR10iQJYnMuZhRTvHYl62ErLIEX7RgFlziSBUUvrt3OVfc47QlHHpzPZYP17g3Fv7oeJkg==}
+ engines: {node: '>=0.6'}
+
+ long@5.3.2:
+ resolution: {integrity: sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==}
+
loose-envify@1.4.0:
resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
hasBin: true
@@ -9006,6 +9317,12 @@ packages:
resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==}
hasBin: true
+ lz4js@0.2.0:
+ resolution: {integrity: sha512-gY2Ia9Lm7Ep8qMiuGRhvUq0Q7qUereeldZPP1PMEJxPtEWHJLqw9pgX68oHajBH0nzJK4MaZEA/YNV3jT8u8Bg==}
+
+ lzo-wasm@0.0.4:
+ resolution: {integrity: sha512-VKlnoJRFrB8SdJhlVKvW5vI1gGwcZ+mvChEXcSX6r2xDNc/Q2FD9esfBmGCuPZdrJ1feO+YcVFd2PTk0c137Gw==}
+
magic-string@0.30.18:
resolution: {integrity: sha512-yi8swmWbO17qHhwIBNeeZxTceJMeBvWJaId6dyvTSOwTipqeHhMhOrz6513r1sOKnpvQ7zkhlG8tPrpilwTxHQ==}
@@ -9058,6 +9375,9 @@ packages:
resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
engines: {node: '>= 0.4'}
+ md5@2.3.0:
+ resolution: {integrity: sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==}
+
mdn-data@2.0.14:
resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==}
@@ -9523,6 +9843,7 @@ packages:
osm2geojson-lite@1.1.2:
resolution: {integrity: sha512-6s1uW548fdyLTJ4Cp/hQTKvdgCl/E8nUvBMEzUXnAJPHAFHoIhwMqZ3KGdph2A1g48rsCeA6gVnkPruWGiwupw==}
hasBin: true
+ bundledDependencies: []
ospath@1.2.2:
resolution: {integrity: sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==}
@@ -9588,6 +9909,9 @@ packages:
package-json-from-dist@1.0.1:
resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
+ pako@1.0.11:
+ resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
+
pako@2.1.0:
resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==}
@@ -9693,6 +10017,10 @@ packages:
resolution: {integrity: sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==}
engines: {node: '>= 14.16'}
+ pbf@3.3.0:
+ resolution: {integrity: sha512-XDF38WCH3z5OV/OVa8GKUNtLAyneuzbCisx7QUCF8Q6Nutx0WnJrQe5O+kOtBlLfRNUws98Y58Lblp+NJG5T4Q==}
+ hasBin: true
+
pbf@4.0.1:
resolution: {integrity: sha512-SuLdBvS42z33m8ejRbInMapQe8n0D3vN/Xd5fmWM3tufNgRQFBpaW2YVJxQZV4iPNqb0vEFvssMEo5w9c6BTIA==}
hasBin: true
@@ -10550,6 +10878,9 @@ packages:
resolution: {integrity: sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==}
engines: {node: '>=0.10.0'}
+ setimmediate@1.0.5:
+ resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==}
+
setprototypeof@1.1.0:
resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==}
@@ -10662,6 +10993,9 @@ packages:
resolution: {integrity: sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==}
engines: {node: '>=0.10.0'}
+ snappyjs@0.6.1:
+ resolution: {integrity: sha512-YIK6I2lsH072UE0aOFxxY1dPDCS43I5ktqHpeAsuLNYWkE5pGxRGWfDM4/vSUfNzXjC1Ivzt3qx31PCLmc9yqg==}
+
sockjs@0.3.24:
resolution: {integrity: sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==}
@@ -10934,6 +11268,9 @@ packages:
strip-literal@3.0.0:
resolution: {integrity: sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA==}
+ strnum@1.1.2:
+ resolution: {integrity: sha512-vrN+B7DBIoTTZjnPNewwhx6cBA/H+IS7rfW68n7XxC1y7uoiGQBxaKzqucGUgavX15dJgiGztLJ8vxuEzwqBdA==}
+
strong-log-transformer@2.1.0:
resolution: {integrity: sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA==}
engines: {node: '>=4'}
@@ -11075,6 +11412,10 @@ packages:
text-table@0.2.0:
resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
+ texture-compressor@1.0.2:
+ resolution: {integrity: sha512-dStVgoaQ11mA5htJ+RzZ51ZxIZqNOgWKAIvtjLrW1AliQQLCmrDqNzQZ8Jh91YealQ95DXt4MEduLzJmbs6lig==}
+ hasBin: true
+
thingies@2.5.0:
resolution: {integrity: sha512-s+2Bwztg6PhWUD7XMfeYm5qliDdSiZm7M7n8KjTkIsm3l/2lgVRc2/Gx/v+ZX8lT4FMA+i8aQvhcWylldc+ZNw==}
engines: {node: '>=10.18'}
@@ -12002,6 +12343,9 @@ packages:
resolution: {integrity: sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==}
engines: {node: '>=12.20'}
+ zstd-codec@0.1.5:
+ resolution: {integrity: sha512-v3fyjpK8S/dpY/X5WxqTK3IoCnp/ZOLxn144GZVlNUjtwAchzrVo03h+oMATFhCIiJ5KTr4V3vDQQYz4RU684g==}
+
snapshots:
'@adobe/css-tools@4.4.4': {}
@@ -13014,18 +13358,30 @@ snapshots:
'@daybrush/utils@1.13.0': {}
- '@deck.gl/aggregation-layers@9.1.14(@deck.gl/core@9.1.14)(@deck.gl/layers@9.1.14(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.1.9(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.1.9(@luma.gl/core@9.1.9))))(@luma.gl/core@9.1.9)(@luma.gl/engine@9.1.9(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.1.9(@luma.gl/core@9.1.9)))':
+ '@deck.gl/aggregation-layers@9.1.14(@deck.gl/core@9.1.14)(@deck.gl/layers@9.1.14(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))))(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))':
dependencies:
'@deck.gl/core': 9.1.14
- '@deck.gl/layers': 9.1.14(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.1.9(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.1.9(@luma.gl/core@9.1.9)))
+ '@deck.gl/layers': 9.1.14(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))
'@luma.gl/constants': 9.1.9
'@luma.gl/core': 9.1.9
- '@luma.gl/engine': 9.1.9(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.1.9(@luma.gl/core@9.1.9))
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))
'@luma.gl/shadertools': 9.1.9(@luma.gl/core@9.1.9)
'@math.gl/core': 4.1.0
'@math.gl/web-mercator': 4.1.0
d3-hexbin: 0.2.2
+ '@deck.gl/aggregation-layers@9.2.6(@deck.gl/core@9.2.6)(@deck.gl/layers@9.1.14(@deck.gl/core@9.2.6)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))))(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))':
+ dependencies:
+ '@deck.gl/core': 9.2.6
+ '@deck.gl/layers': 9.1.14(@deck.gl/core@9.2.6)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))
+ '@luma.gl/constants': 9.2.6
+ '@luma.gl/core': 9.2.6
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))
+ '@luma.gl/shadertools': 9.2.6(@luma.gl/core@9.2.6)
+ '@math.gl/core': 4.1.0
+ '@math.gl/web-mercator': 4.1.0
+ d3-hexbin: 0.2.2
+
'@deck.gl/core@9.1.14':
dependencies:
'@loaders.gl/core': 4.3.4
@@ -13046,15 +13402,126 @@ snapshots:
gl-matrix: 3.4.4
mjolnir.js: 3.0.0
- '@deck.gl/layers@9.1.14(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.1.9(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.1.9(@luma.gl/core@9.1.9)))':
+ '@deck.gl/core@9.2.6':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/images': 4.3.4(@loaders.gl/core@4.3.4)
+ '@luma.gl/constants': 9.2.6
+ '@luma.gl/core': 9.2.6
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))
+ '@luma.gl/shadertools': 9.2.6(@luma.gl/core@9.2.6)
+ '@luma.gl/webgl': 9.2.6(@luma.gl/core@9.2.6)
+ '@math.gl/core': 4.1.0
+ '@math.gl/sun': 4.1.0
+ '@math.gl/types': 4.1.0
+ '@math.gl/web-mercator': 4.1.0
+ '@probe.gl/env': 4.1.0
+ '@probe.gl/log': 4.1.0
+ '@probe.gl/stats': 4.1.0
+ '@types/offscreencanvas': 2019.7.3
+ gl-matrix: 3.4.4
+ mjolnir.js: 3.0.0
+
+ '@deck.gl/extensions@9.2.6(@deck.gl/core@9.1.14)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))':
+ dependencies:
+ '@deck.gl/core': 9.1.14
+ '@luma.gl/constants': 9.2.6
+ '@luma.gl/core': 9.1.9
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))
+ '@luma.gl/shadertools': 9.2.6(@luma.gl/core@9.1.9)
+ '@math.gl/core': 4.1.0
+
+ '@deck.gl/extensions@9.2.6(@deck.gl/core@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))':
+ dependencies:
+ '@deck.gl/core': 9.2.6
+ '@luma.gl/constants': 9.2.6
+ '@luma.gl/core': 9.2.6
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))
+ '@luma.gl/shadertools': 9.2.6(@luma.gl/core@9.2.6)
+ '@math.gl/core': 4.1.0
+
+ '@deck.gl/geo-layers@9.2.6(@deck.gl/core@9.1.14)(@deck.gl/extensions@9.2.6(@deck.gl/core@9.1.14)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))))(@deck.gl/layers@9.1.14(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))))(@deck.gl/mesh-layers@9.2.6(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/gltf@9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@loaders.gl/core@4.3.4)(@luma.gl/constants@9.2.6)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))':
+ dependencies:
+ '@deck.gl/core': 9.1.14
+ '@deck.gl/extensions': 9.2.6(@deck.gl/core@9.1.14)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))
+ '@deck.gl/layers': 9.1.14(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))
+ '@deck.gl/mesh-layers': 9.2.6(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/gltf@9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))
+ '@loaders.gl/3d-tiles': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/gis': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/mvt': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/terrain': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/tiles': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/wms': 4.3.4(@loaders.gl/core@4.3.4)
+ '@luma.gl/core': 9.1.9
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))
+ '@luma.gl/gltf': 9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))
+ '@luma.gl/shadertools': 9.2.6(@luma.gl/core@9.1.9)
+ '@math.gl/core': 4.1.0
+ '@math.gl/culling': 4.1.0
+ '@math.gl/web-mercator': 4.1.0
+ '@types/geojson': 7946.0.16
+ a5-js: 0.5.0
+ h3-js: 4.4.0
+ long: 3.2.0
+ transitivePeerDependencies:
+ - '@luma.gl/constants'
+
+ '@deck.gl/geo-layers@9.2.6(@deck.gl/core@9.2.6)(@deck.gl/extensions@9.2.6(@deck.gl/core@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))))(@deck.gl/layers@9.1.14(@deck.gl/core@9.2.6)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))))(@deck.gl/mesh-layers@9.2.6(@deck.gl/core@9.2.6)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/gltf@9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@loaders.gl/core@4.3.4)(@luma.gl/constants@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))':
+ dependencies:
+ '@deck.gl/core': 9.2.6
+ '@deck.gl/extensions': 9.2.6(@deck.gl/core@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))
+ '@deck.gl/layers': 9.1.14(@deck.gl/core@9.2.6)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))
+ '@deck.gl/mesh-layers': 9.2.6(@deck.gl/core@9.2.6)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/gltf@9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))
+ '@loaders.gl/3d-tiles': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/gis': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/mvt': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/terrain': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/tiles': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/wms': 4.3.4(@loaders.gl/core@4.3.4)
+ '@luma.gl/core': 9.2.6
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))
+ '@luma.gl/gltf': 9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))
+ '@luma.gl/shadertools': 9.2.6(@luma.gl/core@9.2.6)
+ '@math.gl/core': 4.1.0
+ '@math.gl/culling': 4.1.0
+ '@math.gl/web-mercator': 4.1.0
+ '@types/geojson': 7946.0.16
+ a5-js: 0.5.0
+ h3-js: 4.4.0
+ long: 3.2.0
+ transitivePeerDependencies:
+ - '@luma.gl/constants'
+
+ '@deck.gl/layers@9.1.14(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))':
dependencies:
'@deck.gl/core': 9.1.14
'@loaders.gl/core': 4.3.4
'@loaders.gl/images': 4.3.4(@loaders.gl/core@4.3.4)
'@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
- '@luma.gl/core': 9.1.9
- '@luma.gl/engine': 9.1.9(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.1.9(@luma.gl/core@9.1.9))
- '@luma.gl/shadertools': 9.1.9(@luma.gl/core@9.1.9)
+ '@luma.gl/core': 9.1.9
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))
+ '@luma.gl/shadertools': 9.1.9(@luma.gl/core@9.1.9)
+ '@mapbox/tiny-sdf': 2.0.7
+ '@math.gl/core': 4.1.0
+ '@math.gl/polygon': 4.1.0
+ '@math.gl/web-mercator': 4.1.0
+ earcut: 2.2.4
+
+ '@deck.gl/layers@9.1.14(@deck.gl/core@9.2.6)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))':
+ dependencies:
+ '@deck.gl/core': 9.2.6
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/images': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ '@luma.gl/core': 9.2.6
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))
+ '@luma.gl/shadertools': 9.1.9(@luma.gl/core@9.2.6)
'@mapbox/tiny-sdf': 2.0.7
'@math.gl/core': 4.1.0
'@math.gl/polygon': 4.1.0
@@ -13068,6 +13535,37 @@ snapshots:
'@luma.gl/core': 9.1.9
'@math.gl/web-mercator': 4.1.0
+ '@deck.gl/mapbox@9.2.6(@deck.gl/core@9.2.6)(@luma.gl/constants@9.2.6)(@luma.gl/core@9.2.6)(@math.gl/web-mercator@4.1.0)':
+ dependencies:
+ '@deck.gl/core': 9.2.6
+ '@luma.gl/constants': 9.2.6
+ '@luma.gl/core': 9.2.6
+ '@math.gl/web-mercator': 4.1.0
+
+ '@deck.gl/mesh-layers@9.2.6(@deck.gl/core@9.1.14)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/gltf@9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))':
+ dependencies:
+ '@deck.gl/core': 9.1.14
+ '@loaders.gl/gltf': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ '@luma.gl/core': 9.1.9
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))
+ '@luma.gl/gltf': 9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))
+ '@luma.gl/shadertools': 9.2.6(@luma.gl/core@9.1.9)
+ transitivePeerDependencies:
+ - '@loaders.gl/core'
+
+ '@deck.gl/mesh-layers@9.2.6(@deck.gl/core@9.2.6)(@loaders.gl/core@4.3.4)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/gltf@9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))':
+ dependencies:
+ '@deck.gl/core': 9.2.6
+ '@loaders.gl/gltf': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ '@luma.gl/core': 9.2.6
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))
+ '@luma.gl/gltf': 9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))
+ '@luma.gl/shadertools': 9.2.6(@luma.gl/core@9.2.6)
+ transitivePeerDependencies:
+ - '@loaders.gl/core'
+
'@dimforge/rapier3d-compat@0.12.0': {}
'@discoveryjs/json-ext@0.5.7': {}
@@ -13915,6 +14413,40 @@ snapshots:
'@leichtgewicht/ip-codec@2.0.5': {}
+ '@loaders.gl/3d-tiles@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/compression': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/crypto': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/draco': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/gltf': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/images': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/math': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/tiles': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/zip': 4.3.4(@loaders.gl/core@4.3.4)
+ '@math.gl/core': 4.1.0
+ '@math.gl/culling': 4.1.0
+ '@math.gl/geospatial': 4.1.0
+ '@probe.gl/log': 4.1.0
+ long: 5.3.2
+
+ '@loaders.gl/compression@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/worker-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@types/brotli': 1.3.4
+ '@types/pako': 1.0.7
+ fflate: 0.7.4
+ lzo-wasm: 0.0.4
+ pako: 1.0.11
+ snappyjs: 0.6.1
+ optionalDependencies:
+ brotli: 1.3.3
+ lz4js: 0.2.0
+ zstd-codec: 0.1.5
+
'@loaders.gl/core@4.3.4':
dependencies:
'@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
@@ -13922,6 +14454,40 @@ snapshots:
'@loaders.gl/worker-utils': 4.3.4(@loaders.gl/core@4.3.4)
'@probe.gl/log': 4.1.0
+ '@loaders.gl/crypto@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/worker-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@types/crypto-js': 4.2.2
+
+ '@loaders.gl/draco@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/worker-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ draco3d: 1.5.7
+
+ '@loaders.gl/gis@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ '@mapbox/vector-tile': 1.3.1
+ '@math.gl/polygon': 4.1.0
+ pbf: 3.3.0
+
+ '@loaders.gl/gltf@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/draco': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/images': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/textures': 4.3.4(@loaders.gl/core@4.3.4)
+ '@math.gl/core': 4.1.0
+
'@loaders.gl/images@4.3.4(@loaders.gl/core@4.3.4)':
dependencies:
'@loaders.gl/core': 4.3.4
@@ -13935,17 +14501,93 @@ snapshots:
'@probe.gl/log': 4.1.0
'@probe.gl/stats': 4.1.0
+ '@loaders.gl/math@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/images': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@math.gl/core': 4.1.0
+
+ '@loaders.gl/mvt@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/gis': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/images': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ '@math.gl/polygon': 4.1.0
+ '@probe.gl/stats': 4.1.0
+ pbf: 3.3.0
+
'@loaders.gl/schema@4.3.4(@loaders.gl/core@4.3.4)':
dependencies:
'@loaders.gl/core': 4.3.4
'@types/geojson': 7946.0.16
+ '@loaders.gl/terrain@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/images': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ '@mapbox/martini': 0.2.0
+
+ '@loaders.gl/textures@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/images': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/worker-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@math.gl/types': 4.1.0
+ ktx-parse: 0.7.1
+ texture-compressor: 1.0.2
+
+ '@loaders.gl/tiles@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/math': 4.3.4(@loaders.gl/core@4.3.4)
+ '@math.gl/core': 4.1.0
+ '@math.gl/culling': 4.1.0
+ '@math.gl/geospatial': 4.1.0
+ '@math.gl/web-mercator': 4.1.0
+ '@probe.gl/stats': 4.1.0
+
+ '@loaders.gl/wms@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/images': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/xml': 4.3.4(@loaders.gl/core@4.3.4)
+ '@turf/rewind': 5.1.5
+ deep-strict-equal: 0.2.0
+
'@loaders.gl/worker-utils@4.3.4(@loaders.gl/core@4.3.4)':
dependencies:
'@loaders.gl/core': 4.3.4
+ '@loaders.gl/xml@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/schema': 4.3.4(@loaders.gl/core@4.3.4)
+ fast-xml-parser: 4.5.3
+
+ '@loaders.gl/zip@4.3.4(@loaders.gl/core@4.3.4)':
+ dependencies:
+ '@loaders.gl/compression': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/crypto': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/loader-utils': 4.3.4(@loaders.gl/core@4.3.4)
+ jszip: 3.10.1
+ md5: 2.3.0
+
'@luma.gl/constants@9.1.9': {}
+ '@luma.gl/constants@9.2.6': {}
+
'@luma.gl/core@9.1.9':
dependencies:
'@math.gl/types': 4.1.0
@@ -13954,6 +14596,14 @@ snapshots:
'@probe.gl/stats': 4.1.0
'@types/offscreencanvas': 2019.7.3
+ '@luma.gl/core@9.2.6':
+ dependencies:
+ '@math.gl/types': 4.1.0
+ '@probe.gl/env': 4.1.0
+ '@probe.gl/log': 4.1.0
+ '@probe.gl/stats': 4.1.0
+ '@types/offscreencanvas': 2019.7.3
+
'@luma.gl/engine@9.1.9(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.1.9(@luma.gl/core@9.1.9))':
dependencies:
'@luma.gl/core': 9.1.9
@@ -13963,6 +14613,46 @@ snapshots:
'@probe.gl/log': 4.1.0
'@probe.gl/stats': 4.1.0
+ '@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))':
+ dependencies:
+ '@luma.gl/core': 9.1.9
+ '@luma.gl/shadertools': 9.2.6(@luma.gl/core@9.1.9)
+ '@math.gl/core': 4.1.0
+ '@math.gl/types': 4.1.0
+ '@probe.gl/log': 4.1.0
+ '@probe.gl/stats': 4.1.0
+
+ '@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))':
+ dependencies:
+ '@luma.gl/core': 9.2.6
+ '@luma.gl/shadertools': 9.2.6(@luma.gl/core@9.2.6)
+ '@math.gl/core': 4.1.0
+ '@math.gl/types': 4.1.0
+ '@probe.gl/log': 4.1.0
+ '@probe.gl/stats': 4.1.0
+
+ '@luma.gl/gltf@9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.1.9)(@luma.gl/engine@9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/gltf': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/textures': 4.3.4(@loaders.gl/core@4.3.4)
+ '@luma.gl/constants': 9.2.6
+ '@luma.gl/core': 9.1.9
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.1.9)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9))
+ '@luma.gl/shadertools': 9.2.6(@luma.gl/core@9.1.9)
+ '@math.gl/core': 4.1.0
+
+ '@luma.gl/gltf@9.2.6(@luma.gl/constants@9.2.6)(@luma.gl/core@9.2.6)(@luma.gl/engine@9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)))(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))':
+ dependencies:
+ '@loaders.gl/core': 4.3.4
+ '@loaders.gl/gltf': 4.3.4(@loaders.gl/core@4.3.4)
+ '@loaders.gl/textures': 4.3.4(@loaders.gl/core@4.3.4)
+ '@luma.gl/constants': 9.2.6
+ '@luma.gl/core': 9.2.6
+ '@luma.gl/engine': 9.2.6(@luma.gl/core@9.2.6)(@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6))
+ '@luma.gl/shadertools': 9.2.6(@luma.gl/core@9.2.6)
+ '@math.gl/core': 4.1.0
+
'@luma.gl/shadertools@9.1.9(@luma.gl/core@9.1.9)':
dependencies:
'@luma.gl/core': 9.1.9
@@ -13970,6 +14660,27 @@ snapshots:
'@math.gl/types': 4.1.0
wgsl_reflect: 1.2.3
+ '@luma.gl/shadertools@9.1.9(@luma.gl/core@9.2.6)':
+ dependencies:
+ '@luma.gl/core': 9.2.6
+ '@math.gl/core': 4.1.0
+ '@math.gl/types': 4.1.0
+ wgsl_reflect: 1.2.3
+
+ '@luma.gl/shadertools@9.2.6(@luma.gl/core@9.1.9)':
+ dependencies:
+ '@luma.gl/core': 9.1.9
+ '@math.gl/core': 4.1.0
+ '@math.gl/types': 4.1.0
+ wgsl_reflect: 1.2.3
+
+ '@luma.gl/shadertools@9.2.6(@luma.gl/core@9.2.6)':
+ dependencies:
+ '@luma.gl/core': 9.2.6
+ '@math.gl/core': 4.1.0
+ '@math.gl/types': 4.1.0
+ wgsl_reflect: 1.2.3
+
'@luma.gl/webgl@9.1.9(@luma.gl/core@9.1.9)':
dependencies:
'@luma.gl/constants': 9.1.9
@@ -13977,6 +14688,13 @@ snapshots:
'@math.gl/types': 4.1.0
'@probe.gl/env': 4.1.0
+ '@luma.gl/webgl@9.2.6(@luma.gl/core@9.2.6)':
+ dependencies:
+ '@luma.gl/constants': 9.2.6
+ '@luma.gl/core': 9.2.6
+ '@math.gl/types': 4.1.0
+ '@probe.gl/env': 4.1.0
+
'@mapbox/extent@0.4.0': {}
'@mapbox/geojson-area@0.2.2':
@@ -14018,6 +14736,8 @@ snapshots:
'@mapbox/mapbox-gl-sync-move@0.3.1': {}
+ '@mapbox/martini@0.2.0': {}
+
'@mapbox/point-geometry@0.1.0': {}
'@mapbox/point-geometry@1.1.0': {}
@@ -14028,6 +14748,10 @@ snapshots:
'@mapbox/unitbezier@0.0.1': {}
+ '@mapbox/vector-tile@1.3.1':
+ dependencies:
+ '@mapbox/point-geometry': 0.1.0
+
'@mapbox/vector-tile@2.0.4':
dependencies:
'@mapbox/point-geometry': 1.1.0
@@ -14036,55 +14760,6 @@ snapshots:
'@mapbox/whoots-js@3.1.0': {}
- '@mapcomponents/react-maplibre@1.7.5(@types/react@19.1.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@dnd-kit/core': 6.3.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@dnd-kit/modifiers': 9.0.0(@dnd-kit/core@6.3.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0)
- '@dnd-kit/sortable': 10.0.0(@dnd-kit/core@6.3.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0)
- '@dnd-kit/utilities': 3.2.2(react@19.1.0)
- '@emotion/css': 11.13.5
- '@emotion/react': 11.14.0(@types/react@19.1.12)(react@19.1.0)
- '@emotion/styled': 11.14.1(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0)
- '@mapbox/mapbox-gl-draw': 1.4.3
- '@mapbox/mapbox-gl-sync-move': 0.3.1
- '@mui/icons-material': 7.3.2(@mui/material@7.3.2(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@types/react@19.1.12)(react@19.1.0)
- '@mui/material': 7.3.2(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@mui/system': 7.3.2(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0))(@types/react@19.1.12)(react@19.1.0)
- '@reduxjs/toolkit': 2.9.0(react-redux@9.2.0(@types/react@19.1.12)(react@19.1.0)(redux@5.0.1))(react@19.1.0)
- '@testing-library/dom': 10.4.1
- '@testing-library/jest-dom': 6.8.0
- '@testing-library/user-event': 14.6.1(@testing-library/dom@10.4.1)
- '@tmcw/togeojson': 7.1.2
- '@turf/helpers': 7.2.0
- '@turf/turf': 7.2.0
- '@types/d3': 7.4.3
- '@types/geojson': 7946.0.16
- '@types/react-color': 3.0.13(@types/react@19.1.12)
- '@types/topojson-client': 3.1.5
- '@types/topojson-specification': 1.0.5
- '@xmldom/xmldom': 0.9.8
- camelcase: 8.0.0
- csv2geojson: 5.1.2
- d3: 7.9.0
- jspdf: 3.0.2
- maplibre-gl: 5.16.0
- osm2geojson-lite: 1.1.2
- pako: 2.1.0
- react: 19.1.0
- react-color: 2.19.3(react@19.1.0)
- react-dom: 19.1.0(react@19.1.0)
- react-moveable: 0.56.0
- react-redux: 9.2.0(@types/react@19.1.12)(react@19.1.0)(redux@5.0.1)
- redux: 5.0.1
- redux-thunk: 3.1.0(redux@5.0.1)
- topojson-client: 3.1.0
- uuid: 11.1.0
- wms-capabilities: 0.6.0
- transitivePeerDependencies:
- - '@mui/material-pigment-css'
- - '@types/react'
- - supports-color
-
'@maplibre/maplibre-gl-style-spec@24.4.1':
dependencies:
'@mapbox/jsonlint-lines-primitives': 2.0.2
@@ -14113,6 +14788,16 @@ snapshots:
dependencies:
'@math.gl/types': 4.1.0
+ '@math.gl/culling@4.1.0':
+ dependencies:
+ '@math.gl/core': 4.1.0
+ '@math.gl/types': 4.1.0
+
+ '@math.gl/geospatial@4.1.0':
+ dependencies:
+ '@math.gl/core': 4.1.0
+ '@math.gl/types': 4.1.0
+
'@math.gl/polygon@4.1.0':
dependencies:
'@math.gl/core': 4.1.0
@@ -16373,6 +17058,11 @@ snapshots:
'@types/geojson': 7946.0.16
tslib: 2.8.1
+ '@turf/boolean-clockwise@5.1.5':
+ dependencies:
+ '@turf/helpers': 5.1.5
+ '@turf/invariant': 5.2.0
+
'@turf/boolean-clockwise@7.2.0':
dependencies:
'@turf/helpers': 7.2.0
@@ -16570,6 +17260,10 @@ snapshots:
'@types/geojson': 7946.0.16
tslib: 2.8.1
+ '@turf/clone@5.1.5':
+ dependencies:
+ '@turf/helpers': 5.1.5
+
'@turf/clone@7.2.0':
dependencies:
'@turf/helpers': 7.2.0
@@ -16734,6 +17428,8 @@ snapshots:
'@turf/invariant': 7.2.0
'@types/geojson': 7946.0.16
+ '@turf/helpers@5.1.5': {}
+
'@turf/helpers@7.2.0':
dependencies:
'@types/geojson': 7946.0.16
@@ -16771,6 +17467,10 @@ snapshots:
polyclip-ts: 0.16.8
tslib: 2.8.1
+ '@turf/invariant@5.2.0':
+ dependencies:
+ '@turf/helpers': 5.1.5
+
'@turf/invariant@7.2.0':
dependencies:
'@turf/helpers': 7.2.0
@@ -16915,6 +17615,10 @@ snapshots:
polyclip-ts: 0.16.8
tslib: 2.8.1
+ '@turf/meta@5.2.0':
+ dependencies:
+ '@turf/helpers': 5.1.5
+
'@turf/meta@7.2.0':
dependencies:
'@turf/helpers': 7.2.0
@@ -17107,6 +17811,14 @@ snapshots:
'@types/geojson': 7946.0.16
tslib: 2.8.1
+ '@turf/rewind@5.1.5':
+ dependencies:
+ '@turf/boolean-clockwise': 5.1.5
+ '@turf/clone': 5.1.5
+ '@turf/helpers': 5.1.5
+ '@turf/invariant': 5.2.0
+ '@turf/meta': 5.2.0
+
'@turf/rewind@7.2.0':
dependencies:
'@turf/boolean-clockwise': 7.2.0
@@ -17468,6 +18180,10 @@ snapshots:
dependencies:
'@types/node': 24.3.1
+ '@types/brotli@1.3.4':
+ dependencies:
+ '@types/node': 24.3.1
+
'@types/chai@5.2.2':
dependencies:
'@types/deep-eql': 4.0.2
@@ -17485,6 +18201,8 @@ snapshots:
dependencies:
'@types/node': 24.3.1
+ '@types/crypto-js@4.2.2': {}
+
'@types/d3-array@3.2.1': {}
'@types/d3-axis@3.0.6':
@@ -17726,6 +18444,8 @@ snapshots:
'@types/offscreencanvas@2019.7.3': {}
+ '@types/pako@1.0.7': {}
+
'@types/pako@2.0.4': {}
'@types/parse-json@4.0.2': {}
@@ -18416,6 +19136,10 @@ snapshots:
dependencies:
argparse: 2.0.1
+ a5-js@0.5.0:
+ dependencies:
+ gl-matrix: 3.4.4
+
abab@2.0.6: {}
accepts@1.3.8:
@@ -19032,6 +19756,11 @@ snapshots:
dependencies:
fill-range: 7.1.1
+ brotli@1.3.3:
+ dependencies:
+ base64-js: 1.5.1
+ optional: true
+
browser-process-hrtime@1.0.0: {}
browser-stdout@1.3.1: {}
@@ -19053,6 +19782,8 @@ snapshots:
btoa@1.2.1: {}
+ buf-compare@1.0.1: {}
+
buffer-crc32@0.2.13: {}
buffer-from@1.1.2: {}
@@ -19193,6 +19924,8 @@ snapshots:
char-regex@1.0.2: {}
+ charenc@0.0.2: {}
+
cheap-ruler@4.0.0: {}
check-error@2.1.1: {}
@@ -19423,6 +20156,11 @@ snapshots:
copy-descriptor@0.1.1: {}
+ core-assert@0.2.1:
+ dependencies:
+ buf-compare: 1.0.1
+ is-error: 2.2.2
+
core-js-compat@3.45.1:
dependencies:
browserslist: 4.25.4
@@ -19489,6 +20227,8 @@ snapshots:
shebang-command: 2.0.0
which: 2.0.2
+ crypt@0.0.2: {}
+
css-color-keywords@1.0.0: {}
css-line-break@2.1.0:
@@ -19885,6 +20625,10 @@ snapshots:
deep-is@0.1.4: {}
+ deep-strict-equal@0.2.0:
+ dependencies:
+ core-assert: 0.2.1
+
deepmerge@4.3.1: {}
default-browser-id@5.0.0: {}
@@ -20059,6 +20803,8 @@ snapshots:
dotenv@16.4.7: {}
+ draco3d@1.5.7: {}
+
dunder-proto@1.0.1:
dependencies:
call-bind-apply-helpers: 1.0.2
@@ -20824,6 +21570,10 @@ snapshots:
fast-uri@3.1.0: {}
+ fast-xml-parser@4.5.3:
+ dependencies:
+ strnum: 1.1.2
+
fastq@1.19.1:
dependencies:
reusify: 1.1.0
@@ -20853,6 +21603,8 @@ snapshots:
node-domexception: 1.0.0
web-streams-polyfill: 3.3.3
+ fflate@0.7.4: {}
+
fflate@0.8.2: {}
figures@3.2.0:
@@ -21294,6 +22046,8 @@ snapshots:
dependencies:
duplexer: 0.1.2
+ h3-js@4.4.0: {}
+
handle-thing@2.0.1: {}
handlebars@4.7.8:
@@ -21625,6 +22379,10 @@ snapshots:
ignore@7.0.5: {}
+ image-size@0.7.5: {}
+
+ immediate@3.0.6: {}
+
immer@10.1.3: {}
immer@9.0.21: {}
@@ -21756,6 +22514,8 @@ snapshots:
is-docker@3.0.0: {}
+ is-error@2.2.2: {}
+
is-extendable@0.1.1: {}
is-extendable@1.0.1:
@@ -22654,6 +23414,13 @@ snapshots:
object.assign: 4.1.7
object.values: 1.2.1
+ jszip@3.10.1:
+ dependencies:
+ lie: 3.3.0
+ pako: 1.0.11
+ readable-stream: 2.3.8
+ setimmediate: 1.0.5
+
kdbush@4.0.2: {}
keycode@2.2.1: {}
@@ -22743,6 +23510,8 @@ snapshots:
kolorist@1.8.0: {}
+ ktx-parse@0.7.1: {}
+
language-subtag-registry@0.3.23: {}
language-tags@1.0.9:
@@ -22770,6 +23539,10 @@ snapshots:
prelude-ls: 1.2.1
type-check: 0.4.0
+ lie@3.3.0:
+ dependencies:
+ immediate: 3.0.6
+
lines-and-columns@1.2.4: {}
lines-and-columns@2.0.3: {}
@@ -22915,6 +23688,10 @@ snapshots:
long-timeout@0.1.1: {}
+ long@3.2.0: {}
+
+ long@5.3.2: {}
+
loose-envify@1.4.0:
dependencies:
js-tokens: 4.0.0
@@ -22943,6 +23720,11 @@ snapshots:
lz-string@1.5.0: {}
+ lz4js@0.2.0:
+ optional: true
+
+ lzo-wasm@0.0.4: {}
+
magic-string@0.30.18:
dependencies:
'@jridgewell/sourcemap-codec': 1.5.5
@@ -23037,6 +23819,12 @@ snapshots:
math-intrinsics@1.1.0: {}
+ md5@2.3.0:
+ dependencies:
+ charenc: 0.0.2
+ crypt: 0.0.2
+ is-buffer: 1.1.6
+
mdn-data@2.0.14: {}
mdn-data@2.0.28: {}
@@ -23848,6 +24636,8 @@ snapshots:
package-json-from-dist@1.0.1: {}
+ pako@1.0.11: {}
+
pako@2.1.0: {}
param-case@3.0.4:
@@ -23937,6 +24727,11 @@ snapshots:
pathval@2.0.1: {}
+ pbf@3.3.0:
+ dependencies:
+ ieee754: 1.2.1
+ resolve-protobuf-schema: 2.1.0
+
pbf@4.0.1:
dependencies:
resolve-protobuf-schema: 2.1.0
@@ -24988,6 +25783,8 @@ snapshots:
is-plain-object: 2.0.4
split-string: 3.1.0
+ setimmediate@1.0.5: {}
+
setprototypeof@1.1.0: {}
setprototypeof@1.2.0: {}
@@ -25112,6 +25909,8 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ snappyjs@0.6.1: {}
+
sockjs@0.3.24:
dependencies:
faye-websocket: 0.11.4
@@ -25435,6 +26234,8 @@ snapshots:
dependencies:
js-tokens: 9.0.1
+ strnum@1.1.2: {}
+
strong-log-transformer@2.1.0:
dependencies:
duplexer: 0.1.2
@@ -25616,6 +26417,11 @@ snapshots:
text-table@0.2.0: {}
+ texture-compressor@1.0.2:
+ dependencies:
+ argparse: 1.0.10
+ image-size: 0.7.5
+
thingies@2.5.0(tslib@2.8.1):
dependencies:
tslib: 2.8.1
@@ -26606,3 +27412,6 @@ snapshots:
yocto-queue@0.1.0: {}
yocto-queue@1.2.1: {}
+
+ zstd-codec@0.1.5:
+ optional: true