@geoql/v-maplibre 1.7.1 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/README.md +14 -17
  2. package/dist/index.d.ts +5879 -9
  3. package/dist/index.js +9 -22475
  4. package/dist/index.js.map +1 -1
  5. package/dist/v-maplibre.css +525 -2
  6. package/package.json +69 -53
  7. package/dist/constants/events/index.d.ts +0 -4
  8. package/dist/constants/events/layer.d.ts +0 -2
  9. package/dist/constants/events/map.d.ts +0 -2
  10. package/dist/constants/events/marker.d.ts +0 -2
  11. package/dist/constants/events/popup.d.ts +0 -1
  12. package/dist/controls/_shared/index.d.ts +0 -1
  13. package/dist/controls/_shared/useMapControl.d.ts +0 -10
  14. package/dist/controls/attribution/VControlAttribution.vue.d.ts +0 -21
  15. package/dist/controls/attribution/index.d.ts +0 -1
  16. package/dist/controls/attribution/types.d.ts +0 -1
  17. package/dist/controls/fullscreen/VControlFullscreen.vue.d.ts +0 -11
  18. package/dist/controls/fullscreen/index.d.ts +0 -1
  19. package/dist/controls/fullscreen/types.d.ts +0 -1
  20. package/dist/controls/geolocate/VControlGeolocate.vue.d.ts +0 -11
  21. package/dist/controls/geolocate/events.d.ts +0 -1
  22. package/dist/controls/geolocate/index.d.ts +0 -1
  23. package/dist/controls/geolocate/types.d.ts +0 -1
  24. package/dist/controls/index.d.ts +0 -13
  25. package/dist/controls/layer/VControlLayer.vue.d.ts +0 -38
  26. package/dist/controls/layer/VControlLayerGroup.vue.d.ts +0 -53
  27. package/dist/controls/layer/events.d.ts +0 -1
  28. package/dist/controls/layer/index.d.ts +0 -5
  29. package/dist/controls/layer/types.d.ts +0 -16
  30. package/dist/controls/legend/VControlLegend.vue.d.ts +0 -54
  31. package/dist/controls/legend/events.d.ts +0 -2
  32. package/dist/controls/legend/index.d.ts +0 -3
  33. package/dist/controls/legend/types.d.ts +0 -77
  34. package/dist/controls/lidar/VControlLidar.vue.d.ts +0 -102
  35. package/dist/controls/lidar/events.d.ts +0 -1
  36. package/dist/controls/lidar/index.d.ts +0 -3
  37. package/dist/controls/lidar/types.d.ts +0 -125
  38. package/dist/controls/navigation/VControlNavigation.vue.d.ts +0 -11
  39. package/dist/controls/navigation/index.d.ts +0 -1
  40. package/dist/controls/navigation/types.d.ts +0 -6
  41. package/dist/controls/scale/VControlScale.vue.d.ts +0 -21
  42. package/dist/controls/scale/index.d.ts +0 -1
  43. package/dist/controls/scale/types.d.ts +0 -1
  44. package/dist/gpu-modules-COvkDUUI.js +0 -171
  45. package/dist/gpu-modules-COvkDUUI.js.map +0 -1
  46. package/dist/layers/deckgl/_shared/index.d.ts +0 -2
  47. package/dist/layers/deckgl/_shared/types.d.ts +0 -29
  48. package/dist/layers/deckgl/_shared/useDeckOverlay.d.ts +0 -32
  49. package/dist/layers/deckgl/arc/VLayerDeckglArc.vue.d.ts +0 -112
  50. package/dist/layers/deckgl/arc/index.d.ts +0 -1
  51. package/dist/layers/deckgl/bitmap/VLayerDeckglBitmap.vue.d.ts +0 -98
  52. package/dist/layers/deckgl/bitmap/index.d.ts +0 -1
  53. package/dist/layers/deckgl/cog/VLayerDeckglCOG.vue.d.ts +0 -166
  54. package/dist/layers/deckgl/cog/index.d.ts +0 -1
  55. package/dist/layers/deckgl/column/VLayerDeckglColumn.vue.d.ts +0 -130
  56. package/dist/layers/deckgl/column/index.d.ts +0 -1
  57. package/dist/layers/deckgl/contour/VLayerDeckglContour.vue.d.ts +0 -110
  58. package/dist/layers/deckgl/contour/index.d.ts +0 -1
  59. package/dist/layers/deckgl/generic/VLayerDeckgl.vue.d.ts +0 -78
  60. package/dist/layers/deckgl/generic/index.d.ts +0 -1
  61. package/dist/layers/deckgl/geohash/VLayerDeckglGeohash.vue.d.ts +0 -116
  62. package/dist/layers/deckgl/geohash/index.d.ts +0 -1
  63. package/dist/layers/deckgl/geojson/VLayerDeckglGeojson.vue.d.ts +0 -134
  64. package/dist/layers/deckgl/geojson/index.d.ts +0 -1
  65. package/dist/layers/deckgl/great-circle/VLayerDeckglGreatCircle.vue.d.ts +0 -110
  66. package/dist/layers/deckgl/great-circle/index.d.ts +0 -1
  67. package/dist/layers/deckgl/grid/VLayerDeckglGrid.vue.d.ts +0 -124
  68. package/dist/layers/deckgl/grid/index.d.ts +0 -1
  69. package/dist/layers/deckgl/grid-cell/VLayerDeckglGridCell.vue.d.ts +0 -105
  70. package/dist/layers/deckgl/grid-cell/index.d.ts +0 -1
  71. package/dist/layers/deckgl/h3-cluster/VLayerDeckglH3Cluster.vue.d.ts +0 -116
  72. package/dist/layers/deckgl/h3-cluster/index.d.ts +0 -1
  73. package/dist/layers/deckgl/h3-hexagon/VLayerDeckglH3Hexagon.vue.d.ts +0 -120
  74. package/dist/layers/deckgl/h3-hexagon/index.d.ts +0 -1
  75. package/dist/layers/deckgl/heatmap/VLayerDeckglHeatmap.vue.d.ts +0 -107
  76. package/dist/layers/deckgl/heatmap/index.d.ts +0 -1
  77. package/dist/layers/deckgl/hexagon/VLayerDeckglHexagon.vue.d.ts +0 -125
  78. package/dist/layers/deckgl/hexagon/index.d.ts +0 -1
  79. package/dist/layers/deckgl/icon/VLayerDeckglIcon.vue.d.ts +0 -124
  80. package/dist/layers/deckgl/icon/index.d.ts +0 -1
  81. package/dist/layers/deckgl/index.d.ts +0 -40
  82. package/dist/layers/deckgl/line/VLayerDeckglLine.vue.d.ts +0 -106
  83. package/dist/layers/deckgl/line/index.d.ts +0 -1
  84. package/dist/layers/deckgl/mosaic/VLayerDeckglMosaic.vue.d.ts +0 -169
  85. package/dist/layers/deckgl/mosaic/index.d.ts +0 -2
  86. package/dist/layers/deckgl/mvt/VLayerDeckglMVT.vue.d.ts +0 -138
  87. package/dist/layers/deckgl/mvt/index.d.ts +0 -1
  88. package/dist/layers/deckgl/path/VLayerDeckglPath.vue.d.ts +0 -113
  89. package/dist/layers/deckgl/path/index.d.ts +0 -1
  90. package/dist/layers/deckgl/point-cloud/VLayerDeckglPointCloud.vue.d.ts +0 -101
  91. package/dist/layers/deckgl/point-cloud/index.d.ts +0 -1
  92. package/dist/layers/deckgl/polygon/VLayerDeckglPolygon.vue.d.ts +0 -122
  93. package/dist/layers/deckgl/polygon/index.d.ts +0 -1
  94. package/dist/layers/deckgl/quadkey/VLayerDeckglQuadkey.vue.d.ts +0 -116
  95. package/dist/layers/deckgl/quadkey/index.d.ts +0 -1
  96. package/dist/layers/deckgl/s2/VLayerDeckglS2.vue.d.ts +0 -116
  97. package/dist/layers/deckgl/s2/index.d.ts +0 -1
  98. package/dist/layers/deckgl/scatterplot/VLayerDeckglScatterplot.vue.d.ts +0 -122
  99. package/dist/layers/deckgl/scatterplot/index.d.ts +0 -1
  100. package/dist/layers/deckgl/scenegraph/VLayerDeckglScenegraph.vue.d.ts +0 -115
  101. package/dist/layers/deckgl/scenegraph/index.d.ts +0 -1
  102. package/dist/layers/deckgl/screen-grid/VLayerDeckglScreenGrid.vue.d.ts +0 -105
  103. package/dist/layers/deckgl/screen-grid/index.d.ts +0 -1
  104. package/dist/layers/deckgl/simple-mesh/VLayerDeckglSimpleMesh.vue.d.ts +0 -108
  105. package/dist/layers/deckgl/simple-mesh/index.d.ts +0 -1
  106. package/dist/layers/deckgl/solid-polygon/VLayerDeckglSolidPolygon.vue.d.ts +0 -106
  107. package/dist/layers/deckgl/solid-polygon/index.d.ts +0 -1
  108. package/dist/layers/deckgl/terrain/VLayerDeckglTerrain.vue.d.ts +0 -115
  109. package/dist/layers/deckgl/terrain/index.d.ts +0 -1
  110. package/dist/layers/deckgl/text/VLayerDeckglText.vue.d.ts +0 -149
  111. package/dist/layers/deckgl/text/index.d.ts +0 -1
  112. package/dist/layers/deckgl/tile/VLayerDeckglTile.vue.d.ts +0 -130
  113. package/dist/layers/deckgl/tile/index.d.ts +0 -1
  114. package/dist/layers/deckgl/tile-3d/VLayerDeckglTile3D.vue.d.ts +0 -104
  115. package/dist/layers/deckgl/tile-3d/index.d.ts +0 -1
  116. package/dist/layers/deckgl/trips/VLayerDeckglTrips.vue.d.ts +0 -118
  117. package/dist/layers/deckgl/trips/index.d.ts +0 -1
  118. package/dist/layers/deckgl/wind-particle/VLayerDeckglWindParticle.vue.d.ts +0 -120
  119. package/dist/layers/deckgl/wind-particle/index.d.ts +0 -3
  120. package/dist/layers/deckgl/wms/VLayerDeckglWMS.vue.d.ts +0 -96
  121. package/dist/layers/deckgl/wms/index.d.ts +0 -1
  122. package/dist/layers/index.d.ts +0 -12
  123. package/dist/layers/maplibre/canvas/VLayerMaplibreCanvas.vue.d.ts +0 -25
  124. package/dist/layers/maplibre/canvas/index.d.ts +0 -1
  125. package/dist/layers/maplibre/custom/cluster/VLayerMaplibreCluster.vue.d.ts +0 -65
  126. package/dist/layers/maplibre/custom/cluster/index.d.ts +0 -1
  127. package/dist/layers/maplibre/custom/isochrone/VLayerMaplibreIsochrone.vue.d.ts +0 -71
  128. package/dist/layers/maplibre/custom/isochrone/index.d.ts +0 -1
  129. package/dist/layers/maplibre/custom/route/VLayerMaplibreRoute.vue.d.ts +0 -64
  130. package/dist/layers/maplibre/custom/route/index.d.ts +0 -1
  131. package/dist/layers/maplibre/custom/starfield/VLayerMaplibreStarfield.vue.d.ts +0 -43
  132. package/dist/layers/maplibre/custom/starfield/index.d.ts +0 -1
  133. package/dist/layers/maplibre/geojson/VLayerMaplibreGeojson.vue.d.ts +0 -36
  134. package/dist/layers/maplibre/geojson/index.d.ts +0 -2
  135. package/dist/layers/maplibre/geojson/types.d.ts +0 -8
  136. package/dist/layers/maplibre/image/VLayerMaplibreImage.vue.d.ts +0 -70
  137. package/dist/layers/maplibre/image/index.d.ts +0 -1
  138. package/dist/layers/maplibre/pmtile/VLayerMaplibrePmtile.vue.d.ts +0 -60
  139. package/dist/layers/maplibre/pmtile/index.d.ts +0 -1
  140. package/dist/layers/maplibre/raster/VLayerMaplibreRaster.vue.d.ts +0 -21
  141. package/dist/layers/maplibre/raster/index.d.ts +0 -1
  142. package/dist/layers/maplibre/vector/VLayerMaplibreVector.vue.d.ts +0 -49
  143. package/dist/layers/maplibre/vector/index.d.ts +0 -1
  144. package/dist/layers/maplibre/video/VLayerMaplibreVideo.vue.d.ts +0 -70
  145. package/dist/layers/maplibre/video/index.d.ts +0 -1
  146. package/dist/map/VMap.vue.d.ts +0 -131
  147. package/dist/markers/VMarker.vue.d.ts +0 -28
  148. package/dist/popups/VPopup.vue.d.ts +0 -38
  149. package/dist/utils/index.d.ts +0 -2
  150. package/dist/utils/injects.d.ts +0 -8
  151. package/dist/utils/symbols.d.ts +0 -7
@@ -1,2 +1,525 @@
1
- .v-layer-control{background:var(--color-card,#fff);border-radius:var(--radius,.5rem);border:1px solid var(--color-border,#e5e7eb);pointer-events:auto;min-width:140px;max-width:280px;margin:10px;padding:8px 10px;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.v-layer-control-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.v-layer-control-title{color:var(--color-card-foreground,#111827);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:11px;font-weight:500;line-height:1.2;overflow:hidden}.v-layer-control-toggle{border-radius:calc(var(--radius,.5rem) - 2px);width:22px;height:22px;color:var(--color-foreground,#374151);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:flex}.v-layer-control-toggle svg{width:14px;height:14px}.v-layer-control-toggle:hover{background:var(--color-accent,#f3f4f6)}.v-layer-control-toggle.is-hidden{color:var(--color-muted-foreground,#9ca3af)}.v-layer-control-toggle:focus{outline:none}.v-layer-control-toggle:focus-visible{outline:2px solid var(--color-primary,#3b82f6);outline-offset:-2px}.v-layer-control-slider-row{align-items:center;gap:8px;display:flex}.v-layer-control-slider{background:var(--color-secondary,#e5e7eb);cursor:pointer;-webkit-appearance:none;appearance:none;border-radius:2px;flex:1;height:3px}.v-layer-control-slider:disabled{opacity:.4;cursor:not-allowed}.v-layer-control-value{color:var(--color-muted-foreground,#6b7280);font-variant-numeric:tabular-nums;text-align:right;min-width:28px;font-size:10px;font-weight:500}.v-layer-control-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--color-primary,#3b82f6);cursor:pointer;border:2px solid #fff;border-radius:50%;width:12px;height:12px;box-shadow:0 1px 3px #0003}.v-layer-control-slider::-moz-range-thumb{background:var(--color-primary,#3b82f6);cursor:pointer;border:2px solid #fff;border-radius:50%;width:12px;height:12px;box-shadow:0 1px 3px #0003}.v-layer-control-slider:disabled::-webkit-slider-thumb{cursor:not-allowed}.v-layer-control-slider:disabled::-moz-range-thumb{cursor:not-allowed}.v-layer-control-slider:focus{outline:none}.v-layer-control-slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary,#3b82f6) 20%, transparent)}.v-layer-group{background:var(--color-card,#fff);border-radius:var(--radius,.5rem);border:1px solid var(--color-border,#e5e7eb);pointer-events:auto;min-width:140px;max-width:280px;margin:10px;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.v-layer-group-header{border:none;border-bottom:1px solid var(--color-border,#e5e7eb);cursor:pointer;text-align:left;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:36px;padding:8px 10px;line-height:1;display:flex}.v-layer-group-header.is-static{cursor:default}.v-layer-group-header:not(.is-static):hover{background:var(--color-accent,#f3f4f6)}.v-layer-group-header:focus{outline:none}.v-layer-group-header:focus-visible{outline:2px solid var(--color-primary,#3b82f6);outline-offset:-2px}.v-layer-group.is-collapsed .v-layer-group-header{border-bottom:none}.v-layer-group-title{color:var(--color-card-foreground,#111827);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:11px;font-weight:500;line-height:1.2;overflow:hidden}.v-layer-group-chevron{width:14px;height:14px;color:var(--color-muted-foreground,#6b7280);flex-shrink:0;justify-content:center;align-items:center;transition:transform .15s;display:flex}.v-layer-group-chevron.is-collapsed{transform:rotate(-90deg)}.v-layer-group-content{flex-direction:column;display:flex}.v-layer-group-item{border-bottom:1px solid var(--color-border,#e5e7eb);padding:6px 10px 8px}.v-layer-group-item:last-child{border-bottom:none}.v-layer-group-item-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.v-layer-group-item-title{color:var(--color-foreground,#374151);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:11px;font-weight:500;line-height:1.2;overflow:hidden}.v-layer-group-toggle{border-radius:calc(var(--radius,.5rem) - 2px);width:20px;height:20px;color:var(--color-foreground,#374151);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:flex}.v-layer-group-toggle svg{width:14px;height:14px}.v-layer-group-toggle:hover{background:var(--color-accent,#f3f4f6)}.v-layer-group-toggle.is-hidden{color:var(--color-muted-foreground,#9ca3af)}.v-layer-group-slider-row{align-items:center;gap:8px;display:flex}.v-layer-group-slider{background:var(--color-secondary,#e5e7eb);cursor:pointer;-webkit-appearance:none;appearance:none;border-radius:2px;flex:1;height:3px}.v-layer-group-slider:disabled{opacity:.4;cursor:not-allowed}.v-layer-group-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--color-primary,#3b82f6);cursor:pointer;border:2px solid #fff;border-radius:50%;width:10px;height:10px;box-shadow:0 1px 3px #0003}.v-layer-group-slider::-moz-range-thumb{background:var(--color-primary,#3b82f6);cursor:pointer;border:2px solid #fff;border-radius:50%;width:10px;height:10px;box-shadow:0 1px 3px #0003}.v-layer-group-slider:disabled::-webkit-slider-thumb{cursor:not-allowed}.v-layer-group-slider:disabled::-moz-range-thumb{cursor:not-allowed}.v-layer-group-slider:focus{outline:none}.v-layer-group-slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary,#3b82f6) 20%, transparent)}.v-layer-group-value{color:var(--color-muted-foreground,#6b7280);font-variant-numeric:tabular-nums;text-align:right;min-width:28px;font-size:10px;font-weight:500}.v-legend-control{background:var(--color-card,#fff);border-radius:var(--radius,.5rem);border:1px solid var(--color-border,#e5e7eb);pointer-events:auto;min-width:140px;max-width:200px;margin:10px;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.v-legend-control-header{border:none;border-bottom:1px solid var(--color-border,#e5e7eb);cursor:pointer;text-align:left;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:44px;padding:8px 10px;line-height:1;display:flex}.v-legend-control.is-collapsed .v-legend-control-header{border-bottom:none}.v-legend-control-header:hover{background:var(--color-accent,#f3f4f6)}.v-legend-control-title{color:var(--color-card-foreground,#111827);font-size:13px;font-weight:500;line-height:1}.v-legend-control-chevron{width:16px;height:16px;color:var(--color-muted-foreground,#6b7280);flex-shrink:0;justify-content:center;align-items:center;transition:transform .15s;display:flex}.v-legend-control-chevron.is-collapsed{transform:rotate(-90deg)}.v-legend-control-content{flex-direction:column;gap:2px;padding:6px;display:flex}.v-legend-control-item{border-radius:calc(var(--radius,.5rem) - 4px);text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:6px 8px;transition:background .1s,opacity .1s;display:flex}.v-legend-control-item.is-interactive{cursor:pointer}.v-legend-control-item.is-interactive:hover{background:var(--color-accent,#f3f4f6)}.v-legend-control-item.is-hidden{opacity:.4}.v-legend-control-item.is-hidden .v-legend-control-label{text-decoration:line-through}.v-legend-control-item:disabled{cursor:default}.v-legend-control-swatch{border-radius:3px;flex-shrink:0;width:12px;height:12px;box-shadow:inset 0 0 0 1px #0000001a}.v-legend-control-label{color:var(--color-foreground,#374151);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:11px;font-weight:500;overflow:hidden}.v-legend-control-count{color:var(--color-muted-foreground,#6b7280);background:var(--color-secondary,#f3f4f6);border-radius:8px;padding:1px 5px;font-size:10px;font-weight:500}.v-legend-control-gradient{border-radius:3px;height:12px;margin:6px 8px 4px}.v-legend-control-gradient-labels{color:var(--color-muted-foreground,#6b7280);justify-content:space-between;padding:0 8px 6px;font-size:10px;font-weight:500;display:flex}.v-legend-control-size-item{align-items:center;gap:8px;padding:4px 8px;display:flex}.v-legend-control-size-circle-wrap{flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.v-legend-control-size-circle{background:var(--color-primary,#3b82f6);border-radius:50%;box-shadow:inset 0 0 0 1px #0000001a}.v-legend-control-table{flex-direction:column;gap:1px;max-height:300px;display:flex;overflow-y:auto}.v-legend-control-table-row{border-radius:calc(var(--radius,.5rem) - 4px);align-items:center;gap:8px;padding:4px 8px;display:flex}.v-legend-control-table-row:hover{background:var(--color-accent,#f3f4f6)}.v-legend-control-table-label{color:var(--color-foreground,#374151);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:11px;font-weight:500;overflow:hidden}.v-legend-control-table-value{color:var(--color-muted-foreground,#6b7280);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:10px;font-weight:600}.v-legend-control:has(.v-legend-control-table){max-width:280px}canvas[data-v-a543ca92]{outline:none}.v-map-container[data-v-a543ca92]{width:100%;height:100%}.absolute{position:absolute!important}
2
- /*$vite$:1*/
1
+
2
+ .v-layer-control {
3
+ min-width: 140px;
4
+ max-width: 280px;
5
+ margin: 10px;
6
+ background: var(--color-card, #fff);
7
+ border-radius: var(--radius, 0.5rem);
8
+ border: 1px solid var(--color-border, #e5e7eb);
9
+ box-shadow:
10
+ 0 1px 3px 0 rgb(0 0 0 / 0.1),
11
+ 0 1px 2px -1px rgb(0 0 0 / 0.1);
12
+ font-family:
13
+ ui-sans-serif,
14
+ system-ui,
15
+ -apple-system,
16
+ sans-serif;
17
+ font-size: 12px;
18
+ overflow: hidden;
19
+ padding: 8px 10px;
20
+ /* Required: MapLibre control containers have pointer-events:none */
21
+ pointer-events: auto;
22
+ }
23
+ .v-layer-control-header {
24
+ display: flex;
25
+ align-items: center;
26
+ justify-content: space-between;
27
+ gap: 8px;
28
+ margin-bottom: 8px;
29
+ }
30
+ .v-layer-control-title {
31
+ font-weight: 500;
32
+ font-size: 11px;
33
+ color: var(--color-card-foreground, #111827);
34
+ line-height: 1.2;
35
+ white-space: nowrap;
36
+ overflow: hidden;
37
+ text-overflow: ellipsis;
38
+ min-width: 0;
39
+ }
40
+ .v-layer-control-toggle {
41
+ display: flex;
42
+ align-items: center;
43
+ justify-content: center;
44
+ width: 22px;
45
+ height: 22px;
46
+ padding: 0;
47
+ border: none;
48
+ border-radius: calc(var(--radius, 0.5rem) - 2px);
49
+ background: transparent;
50
+ color: var(--color-foreground, #374151);
51
+ cursor: pointer;
52
+ transition:
53
+ background 0.15s ease,
54
+ color 0.15s ease;
55
+ flex-shrink: 0;
56
+ }
57
+ .v-layer-control-toggle svg {
58
+ width: 14px;
59
+ height: 14px;
60
+ }
61
+ .v-layer-control-toggle:hover {
62
+ background: var(--color-accent, #f3f4f6);
63
+ }
64
+ .v-layer-control-toggle.is-hidden {
65
+ color: var(--color-muted-foreground, #9ca3af);
66
+ }
67
+ .v-layer-control-toggle:focus {
68
+ outline: none;
69
+ }
70
+ .v-layer-control-toggle:focus-visible {
71
+ outline: 2px solid var(--color-primary, #3b82f6);
72
+ outline-offset: -2px;
73
+ }
74
+ .v-layer-control-slider-row {
75
+ display: flex;
76
+ align-items: center;
77
+ gap: 8px;
78
+ }
79
+ .v-layer-control-slider {
80
+ flex: 1;
81
+ height: 3px;
82
+ border-radius: 2px;
83
+ background: var(--color-secondary, #e5e7eb);
84
+ cursor: pointer;
85
+ -webkit-appearance: none;
86
+ appearance: none;
87
+ }
88
+ .v-layer-control-slider:disabled {
89
+ opacity: 0.4;
90
+ cursor: not-allowed;
91
+ }
92
+ .v-layer-control-value {
93
+ font-size: 10px;
94
+ font-weight: 500;
95
+ color: var(--color-muted-foreground, #6b7280);
96
+ font-variant-numeric: tabular-nums;
97
+ min-width: 28px;
98
+ text-align: right;
99
+ }
100
+ .v-layer-control-slider::-webkit-slider-thumb {
101
+ -webkit-appearance: none;
102
+ appearance: none;
103
+ width: 12px;
104
+ height: 12px;
105
+ border-radius: 50%;
106
+ background: var(--color-primary, #3b82f6);
107
+ cursor: pointer;
108
+ border: 2px solid #fff;
109
+ box-shadow: 0 1px 3px rgb(0 0 0 / 0.2);
110
+ }
111
+ .v-layer-control-slider::-moz-range-thumb {
112
+ width: 12px;
113
+ height: 12px;
114
+ border-radius: 50%;
115
+ background: var(--color-primary, #3b82f6);
116
+ cursor: pointer;
117
+ border: 2px solid #fff;
118
+ box-shadow: 0 1px 3px rgb(0 0 0 / 0.2);
119
+ }
120
+ .v-layer-control-slider:disabled::-webkit-slider-thumb {
121
+ cursor: not-allowed;
122
+ }
123
+ .v-layer-control-slider:disabled::-moz-range-thumb {
124
+ cursor: not-allowed;
125
+ }
126
+ .v-layer-control-slider:focus {
127
+ outline: none;
128
+ }
129
+ .v-layer-control-slider:focus::-webkit-slider-thumb {
130
+ box-shadow: 0 0 0 3px
131
+ color-mix(in srgb, var(--color-primary, #3b82f6) 20%, transparent);
132
+ }
133
+
134
+ .v-layer-group {
135
+ min-width: 140px;
136
+ max-width: 280px;
137
+ margin: 10px;
138
+ background: var(--color-card, #fff);
139
+ border-radius: var(--radius, 0.5rem);
140
+ border: 1px solid var(--color-border, #e5e7eb);
141
+ box-shadow:
142
+ 0 1px 3px 0 rgb(0 0 0 / 0.1),
143
+ 0 1px 2px -1px rgb(0 0 0 / 0.1);
144
+ font-family:
145
+ ui-sans-serif,
146
+ system-ui,
147
+ -apple-system,
148
+ sans-serif;
149
+ font-size: 12px;
150
+ overflow: hidden;
151
+ /* Required: MapLibre control containers have pointer-events:none */
152
+ pointer-events: auto;
153
+ }
154
+ .v-layer-group-header {
155
+ display: flex;
156
+ align-items: center;
157
+ justify-content: space-between;
158
+ gap: 8px;
159
+ width: 100%;
160
+ min-height: 36px;
161
+ padding: 8px 10px;
162
+ border: none;
163
+ border-bottom: 1px solid var(--color-border, #e5e7eb);
164
+ background: transparent;
165
+ cursor: pointer;
166
+ text-align: left;
167
+ line-height: 1;
168
+ touch-action: manipulation;
169
+ -webkit-tap-highlight-color: transparent;
170
+ }
171
+ .v-layer-group-header.is-static {
172
+ cursor: default;
173
+ }
174
+ .v-layer-group-header:not(.is-static):hover {
175
+ background: var(--color-accent, #f3f4f6);
176
+ }
177
+ .v-layer-group-header:focus {
178
+ outline: none;
179
+ }
180
+ .v-layer-group-header:focus-visible {
181
+ outline: 2px solid var(--color-primary, #3b82f6);
182
+ outline-offset: -2px;
183
+ }
184
+ .v-layer-group.is-collapsed .v-layer-group-header {
185
+ border-bottom: none;
186
+ }
187
+ .v-layer-group-title {
188
+ font-weight: 500;
189
+ font-size: 11px;
190
+ color: var(--color-card-foreground, #111827);
191
+ line-height: 1.2;
192
+ white-space: nowrap;
193
+ overflow: hidden;
194
+ text-overflow: ellipsis;
195
+ min-width: 0;
196
+ }
197
+ .v-layer-group-chevron {
198
+ display: flex;
199
+ align-items: center;
200
+ justify-content: center;
201
+ width: 14px;
202
+ height: 14px;
203
+ color: var(--color-muted-foreground, #6b7280);
204
+ transition: transform 0.15s ease;
205
+ flex-shrink: 0;
206
+ }
207
+ .v-layer-group-chevron.is-collapsed {
208
+ transform: rotate(-90deg);
209
+ }
210
+ .v-layer-group-content {
211
+ display: flex;
212
+ flex-direction: column;
213
+ }
214
+ .v-layer-group-item {
215
+ padding: 6px 10px 8px;
216
+ border-bottom: 1px solid var(--color-border, #e5e7eb);
217
+ }
218
+ .v-layer-group-item:last-child {
219
+ border-bottom: none;
220
+ }
221
+ .v-layer-group-item-header {
222
+ display: flex;
223
+ align-items: center;
224
+ justify-content: space-between;
225
+ gap: 8px;
226
+ margin-bottom: 6px;
227
+ }
228
+ .v-layer-group-item-title {
229
+ font-weight: 500;
230
+ font-size: 11px;
231
+ color: var(--color-foreground, #374151);
232
+ line-height: 1.2;
233
+ white-space: nowrap;
234
+ overflow: hidden;
235
+ text-overflow: ellipsis;
236
+ min-width: 0;
237
+ }
238
+ .v-layer-group-toggle {
239
+ display: flex;
240
+ align-items: center;
241
+ justify-content: center;
242
+ width: 20px;
243
+ height: 20px;
244
+ padding: 0;
245
+ border: none;
246
+ border-radius: calc(var(--radius, 0.5rem) - 2px);
247
+ background: transparent;
248
+ color: var(--color-foreground, #374151);
249
+ cursor: pointer;
250
+ transition:
251
+ background 0.15s ease,
252
+ color 0.15s ease;
253
+ flex-shrink: 0;
254
+ }
255
+ .v-layer-group-toggle svg {
256
+ width: 14px;
257
+ height: 14px;
258
+ }
259
+ .v-layer-group-toggle:hover {
260
+ background: var(--color-accent, #f3f4f6);
261
+ }
262
+ .v-layer-group-toggle.is-hidden {
263
+ color: var(--color-muted-foreground, #9ca3af);
264
+ }
265
+ .v-layer-group-slider-row {
266
+ display: flex;
267
+ align-items: center;
268
+ gap: 8px;
269
+ }
270
+ .v-layer-group-slider {
271
+ flex: 1;
272
+ height: 3px;
273
+ border-radius: 2px;
274
+ background: var(--color-secondary, #e5e7eb);
275
+ cursor: pointer;
276
+ -webkit-appearance: none;
277
+ appearance: none;
278
+ }
279
+ .v-layer-group-slider:disabled {
280
+ opacity: 0.4;
281
+ cursor: not-allowed;
282
+ }
283
+ .v-layer-group-slider::-webkit-slider-thumb {
284
+ -webkit-appearance: none;
285
+ appearance: none;
286
+ width: 10px;
287
+ height: 10px;
288
+ border-radius: 50%;
289
+ background: var(--color-primary, #3b82f6);
290
+ cursor: pointer;
291
+ border: 2px solid #fff;
292
+ box-shadow: 0 1px 3px rgb(0 0 0 / 0.2);
293
+ }
294
+ .v-layer-group-slider::-moz-range-thumb {
295
+ width: 10px;
296
+ height: 10px;
297
+ border-radius: 50%;
298
+ background: var(--color-primary, #3b82f6);
299
+ cursor: pointer;
300
+ border: 2px solid #fff;
301
+ box-shadow: 0 1px 3px rgb(0 0 0 / 0.2);
302
+ }
303
+ .v-layer-group-slider:disabled::-webkit-slider-thumb {
304
+ cursor: not-allowed;
305
+ }
306
+ .v-layer-group-slider:disabled::-moz-range-thumb {
307
+ cursor: not-allowed;
308
+ }
309
+ .v-layer-group-slider:focus {
310
+ outline: none;
311
+ }
312
+ .v-layer-group-slider:focus::-webkit-slider-thumb {
313
+ box-shadow: 0 0 0 3px
314
+ color-mix(in srgb, var(--color-primary, #3b82f6) 20%, transparent);
315
+ }
316
+ .v-layer-group-value {
317
+ font-size: 10px;
318
+ font-weight: 500;
319
+ color: var(--color-muted-foreground, #6b7280);
320
+ font-variant-numeric: tabular-nums;
321
+ min-width: 28px;
322
+ text-align: right;
323
+ }
324
+
325
+ .v-legend-control {
326
+ min-width: 140px;
327
+ max-width: 200px;
328
+ margin: 10px;
329
+ background: var(--color-card, #fff);
330
+ border-radius: var(--radius, 0.5rem);
331
+ border: 1px solid var(--color-border, #e5e7eb);
332
+ box-shadow:
333
+ 0 1px 3px 0 rgb(0 0 0 / 0.1),
334
+ 0 1px 2px -1px rgb(0 0 0 / 0.1);
335
+ font-family:
336
+ ui-sans-serif,
337
+ system-ui,
338
+ -apple-system,
339
+ sans-serif;
340
+ font-size: 12px;
341
+ overflow: hidden;
342
+ /* Required: MapLibre control containers have pointer-events:none */
343
+ pointer-events: auto;
344
+ }
345
+ .v-legend-control-header {
346
+ display: flex;
347
+ align-items: center;
348
+ justify-content: space-between;
349
+ gap: 12px;
350
+ width: 100%;
351
+ min-height: 44px;
352
+ padding: 8px 10px;
353
+ border: none;
354
+ border-bottom: 1px solid var(--color-border, #e5e7eb);
355
+ background: transparent;
356
+ cursor: pointer;
357
+ text-align: left;
358
+ line-height: 1;
359
+ touch-action: manipulation;
360
+ -webkit-tap-highlight-color: transparent;
361
+ }
362
+ .v-legend-control.is-collapsed .v-legend-control-header {
363
+ border-bottom: none;
364
+ }
365
+ .v-legend-control-header:hover {
366
+ background: var(--color-accent, #f3f4f6);
367
+ }
368
+ .v-legend-control-title {
369
+ font-weight: 500;
370
+ font-size: 13px;
371
+ color: var(--color-card-foreground, #111827);
372
+ line-height: 1;
373
+ }
374
+ .v-legend-control-chevron {
375
+ display: flex;
376
+ align-items: center;
377
+ justify-content: center;
378
+ width: 16px;
379
+ height: 16px;
380
+ color: var(--color-muted-foreground, #6b7280);
381
+ transition: transform 0.15s ease;
382
+ flex-shrink: 0;
383
+ }
384
+ .v-legend-control-chevron.is-collapsed {
385
+ transform: rotate(-90deg);
386
+ }
387
+ .v-legend-control-content {
388
+ padding: 6px;
389
+ display: flex;
390
+ flex-direction: column;
391
+ gap: 2px;
392
+ }
393
+ .v-legend-control-item {
394
+ display: flex;
395
+ align-items: center;
396
+ gap: 8px;
397
+ width: 100%;
398
+ padding: 6px 8px;
399
+ border: none;
400
+ border-radius: calc(var(--radius, 0.5rem) - 4px);
401
+ background: transparent;
402
+ text-align: left;
403
+ transition:
404
+ background 0.1s ease,
405
+ opacity 0.1s ease;
406
+ }
407
+ .v-legend-control-item.is-interactive {
408
+ cursor: pointer;
409
+ }
410
+ .v-legend-control-item.is-interactive:hover {
411
+ background: var(--color-accent, #f3f4f6);
412
+ }
413
+ .v-legend-control-item.is-hidden {
414
+ opacity: 0.4;
415
+ }
416
+ .v-legend-control-item.is-hidden .v-legend-control-label {
417
+ text-decoration: line-through;
418
+ }
419
+ .v-legend-control-item:disabled {
420
+ cursor: default;
421
+ }
422
+ .v-legend-control-swatch {
423
+ width: 12px;
424
+ height: 12px;
425
+ border-radius: 3px;
426
+ flex-shrink: 0;
427
+ box-shadow: inset 0 0 0 1px rgb(0 0 0 / 0.1);
428
+ }
429
+ .v-legend-control-label {
430
+ flex: 1;
431
+ font-size: 11px;
432
+ font-weight: 500;
433
+ color: var(--color-foreground, #374151);
434
+ white-space: nowrap;
435
+ overflow: hidden;
436
+ text-overflow: ellipsis;
437
+ }
438
+ .v-legend-control-count {
439
+ font-size: 10px;
440
+ font-weight: 500;
441
+ color: var(--color-muted-foreground, #6b7280);
442
+ background: var(--color-secondary, #f3f4f6);
443
+ padding: 1px 5px;
444
+ border-radius: 8px;
445
+ }
446
+ .v-legend-control-gradient {
447
+ height: 12px;
448
+ border-radius: 3px;
449
+ margin: 6px 8px 4px;
450
+ }
451
+ .v-legend-control-gradient-labels {
452
+ display: flex;
453
+ justify-content: space-between;
454
+ padding: 0 8px 6px;
455
+ font-size: 10px;
456
+ font-weight: 500;
457
+ color: var(--color-muted-foreground, #6b7280);
458
+ }
459
+ .v-legend-control-size-item {
460
+ display: flex;
461
+ align-items: center;
462
+ gap: 8px;
463
+ padding: 4px 8px;
464
+ }
465
+ .v-legend-control-size-circle-wrap {
466
+ width: 24px;
467
+ height: 24px;
468
+ display: flex;
469
+ align-items: center;
470
+ justify-content: center;
471
+ flex-shrink: 0;
472
+ }
473
+ .v-legend-control-size-circle {
474
+ border-radius: 50%;
475
+ background: var(--color-primary, #3b82f6);
476
+ box-shadow: inset 0 0 0 1px rgb(0 0 0 / 0.1);
477
+ }
478
+ .v-legend-control-table {
479
+ max-height: 300px;
480
+ overflow-y: auto;
481
+ display: flex;
482
+ flex-direction: column;
483
+ gap: 1px;
484
+ }
485
+ .v-legend-control-table-row {
486
+ display: flex;
487
+ align-items: center;
488
+ gap: 8px;
489
+ padding: 4px 8px;
490
+ border-radius: calc(var(--radius, 0.5rem) - 4px);
491
+ }
492
+ .v-legend-control-table-row:hover {
493
+ background: var(--color-accent, #f3f4f6);
494
+ }
495
+ .v-legend-control-table-label {
496
+ flex: 1;
497
+ font-size: 11px;
498
+ font-weight: 500;
499
+ color: var(--color-foreground, #374151);
500
+ white-space: nowrap;
501
+ overflow: hidden;
502
+ text-overflow: ellipsis;
503
+ }
504
+ .v-legend-control-table-value {
505
+ font-size: 10px;
506
+ font-weight: 600;
507
+ color: var(--color-muted-foreground, #6b7280);
508
+ white-space: nowrap;
509
+ font-variant-numeric: tabular-nums;
510
+ }
511
+ .v-legend-control:has(.v-legend-control-table) {
512
+ max-width: 280px;
513
+ }
514
+
515
+ canvas[data-v-a543ca92] {
516
+ outline: none;
517
+ }
518
+ .v-map-container[data-v-a543ca92] {
519
+ width: 100%;
520
+ height: 100%;
521
+ }
522
+
523
+ .absolute {
524
+ position: absolute !important;
525
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@geoql/v-maplibre",
3
- "version": "1.7.1",
3
+ "version": "1.8.0",
4
4
  "private": false,
5
5
  "description": "Vue 3 components for MapLibre GL - reactive map components with full TypeScript support",
6
6
  "keywords": [
@@ -58,64 +58,68 @@
58
58
  "access": "public"
59
59
  },
60
60
  "scripts": {
61
- "dev": "vite",
62
- "build": "vite build && vue-tsc --project tsconfig.build.json",
63
- "preview": "vite preview",
64
- "test": "vitest",
65
- "test:ui": "vitest --ui",
66
- "test:coverage": "vitest --coverage",
67
- "lint": "oxlint",
68
- "lint:fix": "oxlint --fix",
69
- "format": "oxfmt --write .",
70
- "format:check": "oxfmt --check .",
71
- "prepublishOnly": "bun run lint && bun run format:check && bun run test:coverage && bun run build"
61
+ "dev": "vp pack --watch",
62
+ "build": "vp pack",
63
+ "test": "vp test",
64
+ "test:ui": "vp test --ui",
65
+ "test:coverage": "vp test --coverage",
66
+ "lint": "vp lint",
67
+ "lint:fix": "vp lint --fix",
68
+ "format": "vp fmt --write .",
69
+ "format:check": "vp fmt --check .",
70
+ "prepublishOnly": "pnpm run lint && pnpm run format:check && pnpm run test:coverage && pnpm run build"
72
71
  },
73
72
  "dependencies": {
74
- "maplibre-gl": "^5.22.0",
75
- "pmtiles": "^4.4.0"
73
+ "maplibre-gl": "^5.24.0",
74
+ "pmtiles": "^4.4.1"
76
75
  },
77
76
  "devDependencies": {
78
- "@deck.gl/aggregation-layers": "catalog:pkg:v-maplibre",
79
- "@deck.gl/core": "catalog:pkg:v-maplibre",
80
- "@deck.gl/geo-layers": "catalog:pkg:v-maplibre",
81
- "@deck.gl/layers": "catalog:pkg:v-maplibre",
82
- "@deck.gl/mapbox": "catalog:pkg:v-maplibre",
83
- "@deck.gl/mesh-layers": "catalog:pkg:v-maplibre",
84
- "@developmentseed/deck.gl-geotiff": "catalog:pkg:v-maplibre",
85
- "@developmentseed/deck.gl-raster": "catalog:pkg:v-maplibre",
86
- "@developmentseed/geotiff": "catalog:pkg:v-maplibre",
87
- "@geoql/maplibre-gl-starfield": "catalog:pkg:v-maplibre",
88
- "@luma.gl/core": "catalog:pkg:v-maplibre",
89
- "@luma.gl/engine": "catalog:pkg:v-maplibre",
90
- "@luma.gl/shadertools": "catalog:pkg:v-maplibre",
91
- "@types/node": "catalog:pkg:v-maplibre",
92
- "@vitejs/plugin-vue": "catalog:pkg:v-maplibre",
93
- "@vitest/coverage-v8": "catalog:pkg:v-maplibre",
94
- "@vitest/ui": "catalog:pkg:v-maplibre",
95
- "@vue/test-utils": "catalog:pkg:v-maplibre",
96
- "happy-dom": "catalog:pkg:v-maplibre",
97
- "maplibre-gl-lidar": "catalog:pkg:v-maplibre",
98
- "maplibre-gl-wind": "catalog:pkg:v-maplibre",
99
- "oxfmt": "catalog:default",
100
- "oxlint": "catalog:default",
101
- "three": "catalog:pkg:v-maplibre",
102
- "typescript": "catalog:default",
103
- "vite": "catalog:pkg:v-maplibre",
104
- "vitest": "catalog:pkg:v-maplibre",
105
- "vue": "catalog:default",
106
- "vue-tsc": "catalog:pkg:v-maplibre"
77
+ "@deck.gl/aggregation-layers": "^9.3.2",
78
+ "@deck.gl/core": "^9.3.2",
79
+ "@deck.gl/geo-layers": "^9.3.2",
80
+ "@deck.gl/layers": "^9.3.2",
81
+ "@deck.gl/mapbox": "^9.3.2",
82
+ "@deck.gl/mesh-layers": "^9.3.2",
83
+ "@developmentseed/deck.gl-geotiff": "^0.7.0",
84
+ "@developmentseed/deck.gl-raster": "^0.7.0",
85
+ "@developmentseed/deck.gl-zarr": "^0.7.0",
86
+ "@developmentseed/geotiff": "^0.7.0",
87
+ "@developmentseed/proj": "^0.7.0",
88
+ "@geoql/maplibre-gl-starfield": "^0.1.1",
89
+ "@luma.gl/core": "^9.3.3",
90
+ "@luma.gl/engine": "^9.3.3",
91
+ "@luma.gl/shadertools": "^9.3.3",
92
+ "@tsdown/css": "^0.22.0",
93
+ "@types/node": "^25.8.0",
94
+ "@vitejs/plugin-vue": "^6.0.7",
95
+ "@vitest/coverage-v8": "^4.1.6",
96
+ "@vue/test-utils": "^2.4.10",
97
+ "happy-dom": "^20.9.0",
98
+ "maplibre-gl-lidar": "^0.13.0",
99
+ "maplibre-gl-wind": "^0.2.0",
100
+ "three": "^0.184.0",
101
+ "typescript": "^6.0.3",
102
+ "unplugin-vue": "^7.2.0",
103
+ "vite-plus": "^0.1.21",
104
+ "vue": "^3.5.34",
105
+ "vue-tsc": "^3.2.9",
106
+ "zarrita": "^0.7.3"
107
107
  },
108
108
  "peerDependencies": {
109
- "@deck.gl/aggregation-layers": "^9.2.6",
110
- "@deck.gl/core": "^9.2.6",
111
- "@deck.gl/geo-layers": "^9.2.6",
112
- "@deck.gl/layers": "^9.2.6",
113
- "@deck.gl/mapbox": "^9.2.6",
114
- "@deck.gl/mesh-layers": "^9.2.6",
115
- "@developmentseed/deck.gl-geotiff": "^0.3.0",
116
- "@developmentseed/deck.gl-raster": "^0.3.0",
109
+ "@deck.gl/aggregation-layers": "^9.3.0",
110
+ "@deck.gl/core": "^9.3.0",
111
+ "@deck.gl/geo-layers": "^9.3.0",
112
+ "@deck.gl/layers": "^9.3.0",
113
+ "@deck.gl/mapbox": "^9.3.0",
114
+ "@deck.gl/mesh-layers": "^9.3.0",
115
+ "@developmentseed/deck.gl-geotiff": "^0.6.0",
116
+ "@developmentseed/deck.gl-raster": "^0.6.0",
117
+ "@developmentseed/deck.gl-zarr": "^0.6.0",
118
+ "@developmentseed/geotiff": "^0.6.0",
119
+ "@developmentseed/proj": "^0.6.0",
120
+ "zarrita": "^0.7.0",
117
121
  "@geoql/maplibre-gl-starfield": "^0.1.0",
118
- "maplibre-gl-lidar": "^0.11.1",
122
+ "maplibre-gl-lidar": "^0.13.0",
119
123
  "maplibre-gl-wind": "^0.2.0",
120
124
  "three": ">=0.176.0",
121
125
  "vue": "^3.5.0"
@@ -145,6 +149,18 @@
145
149
  "@developmentseed/deck.gl-raster": {
146
150
  "optional": true
147
151
  },
152
+ "@developmentseed/deck.gl-zarr": {
153
+ "optional": true
154
+ },
155
+ "@developmentseed/geotiff": {
156
+ "optional": true
157
+ },
158
+ "@developmentseed/proj": {
159
+ "optional": true
160
+ },
161
+ "zarrita": {
162
+ "optional": true
163
+ },
148
164
  "@geoql/maplibre-gl-starfield": {
149
165
  "optional": true
150
166
  },
@@ -158,5 +174,5 @@
158
174
  "optional": true
159
175
  }
160
176
  },
161
- "packageManager": "bun@1.3.11"
177
+ "packageManager": "pnpm@11.1.2"
162
178
  }