@geoql/v-maplibre 1.5.0 → 1.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -2
- package/dist/controls/_shared/index.d.ts +1 -0
- package/dist/controls/_shared/useMapControl.d.ts +10 -0
- package/dist/controls/index.d.ts +6 -0
- package/dist/controls/layer/VControlLayer.vue.d.ts +38 -0
- package/dist/controls/layer/VControlLayerGroup.vue.d.ts +53 -0
- package/dist/controls/layer/events.d.ts +1 -0
- package/dist/controls/layer/index.d.ts +5 -0
- package/dist/controls/layer/types.d.ts +16 -0
- package/dist/controls/legend/VControlLegend.vue.d.ts +54 -0
- package/dist/controls/legend/events.d.ts +2 -0
- package/dist/controls/legend/index.d.ts +3 -0
- package/dist/controls/legend/types.d.ts +63 -0
- package/dist/decoder-CLokFc0V.js +9 -0
- package/dist/decoder-CLokFc0V.js.map +1 -0
- package/dist/deflate-yeu3ogBn.js +11 -0
- package/dist/deflate-yeu3ogBn.js.map +1 -0
- package/dist/geotiff-BUZniE5g.js +3106 -0
- package/dist/geotiff-BUZniE5g.js.map +1 -0
- package/dist/index-Bt_rREAc.js +168 -0
- package/dist/index-Bt_rREAc.js.map +1 -0
- package/dist/index-CA8I5Z2-.js +4667 -0
- package/dist/index-CA8I5Z2-.js.map +1 -0
- package/dist/index.d.ts +4 -4
- package/dist/index.js +2736 -1638
- package/dist/index.js.map +1 -1
- package/dist/jpeg-B7yImnpY.js +534 -0
- package/dist/jpeg-B7yImnpY.js.map +1 -0
- package/dist/layers/deckgl/_shared/useDeckOverlay.d.ts +2 -0
- package/dist/layers/deckgl/index.d.ts +2 -0
- package/dist/layers/deckgl/mosaic/VLayerDeckglMosaic.vue.d.ts +163 -0
- package/dist/layers/deckgl/mosaic/index.d.ts +2 -0
- package/dist/layers/deckgl/text/VLayerDeckglText.vue.d.ts +1 -1
- package/dist/layers/deckgl/wind-particle/VLayerDeckglWindParticle.vue.d.ts +1 -1
- package/dist/layers/index.d.ts +3 -2
- package/dist/layers/maplibre/canvas/VLayerMaplibreCanvas.vue.d.ts +1 -1
- package/dist/layers/maplibre/custom/isochrone/VLayerMaplibreIsochrone.vue.d.ts +71 -0
- package/dist/layers/maplibre/custom/isochrone/index.d.ts +1 -0
- package/dist/layers/maplibre/geojson/VLayerMaplibreGeojson.vue.d.ts +1 -1
- package/dist/layers/maplibre/image/VLayerMaplibreImage.vue.d.ts +1 -1
- package/dist/layers/maplibre/pmtile/VLayerMaplibrePmtile.vue.d.ts +1 -1
- package/dist/layers/maplibre/video/VLayerMaplibreVideo.vue.d.ts +1 -1
- package/dist/lerc-CqgA9njy.js +1032 -0
- package/dist/lerc-CqgA9njy.js.map +1 -0
- package/dist/lzw-DL9RcHOz.js +85 -0
- package/dist/lzw-DL9RcHOz.js.map +1 -0
- package/dist/markers/VMarker.vue.d.ts +1 -2
- package/dist/packbits-YEJGULcy.js +25 -0
- package/dist/packbits-YEJGULcy.js.map +1 -0
- package/dist/pako.esm-Bx5X36Wo.js +1075 -0
- package/dist/pako.esm-Bx5X36Wo.js.map +1 -0
- package/dist/popups/VPopup.vue.d.ts +1 -1
- package/dist/raw-CoQHiEnn.js +10 -0
- package/dist/raw-CoQHiEnn.js.map +1 -0
- package/dist/v-maplibre.css +1 -1
- package/dist/webimage-BXLN-zu8.js +20 -0
- package/dist/webimage-BXLN-zu8.js.map +1 -0
- package/package.json +100 -84
- package/dist/layers/maplibre/{cluster → custom/cluster}/VLayerMaplibreCluster.vue.d.ts +1 -1
- package/dist/layers/maplibre/{cluster → custom/cluster}/index.d.ts +0 -0
- package/dist/layers/maplibre/{route → custom/route}/VLayerMaplibreRoute.vue.d.ts +2 -2
- /package/dist/layers/maplibre/{route → custom/route}/index.d.ts +0 -0
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import type { Color } from '@deck.gl/core';
|
|
2
|
+
import type { Texture } from '@luma.gl/core';
|
|
3
|
+
import type { MosaicSource as BaseMosaicSource } from '@developmentseed/deck.gl-geotiff';
|
|
4
|
+
/**
|
|
5
|
+
* A STAC-like item with bounding box and COG asset URL
|
|
6
|
+
* Extends the base MosaicSource from deck.gl-geotiff with asset info
|
|
7
|
+
*/
|
|
8
|
+
export interface MosaicSource extends BaseMosaicSource {
|
|
9
|
+
/** Asset containing the COG URL */
|
|
10
|
+
assets: {
|
|
11
|
+
image: {
|
|
12
|
+
href: string;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Render mode for the mosaic layer
|
|
18
|
+
*/
|
|
19
|
+
export type MosaicRenderMode = 'trueColor' | 'falseColor' | 'ndvi' | 'custom';
|
|
20
|
+
/**
|
|
21
|
+
* Custom render module for advanced band manipulation
|
|
22
|
+
*/
|
|
23
|
+
export interface RenderModule {
|
|
24
|
+
module: {
|
|
25
|
+
name: string;
|
|
26
|
+
inject?: Record<string, string>;
|
|
27
|
+
};
|
|
28
|
+
props?: Record<string, unknown>;
|
|
29
|
+
}
|
|
30
|
+
interface Props {
|
|
31
|
+
id: string;
|
|
32
|
+
/**
|
|
33
|
+
* Array of STAC-like items with bbox and COG asset URLs
|
|
34
|
+
*/
|
|
35
|
+
sources: MosaicSource[];
|
|
36
|
+
/**
|
|
37
|
+
* Render mode: trueColor (RGB), falseColor (NIR-R-G), ndvi (with colormap)
|
|
38
|
+
*/
|
|
39
|
+
renderMode?: MosaicRenderMode;
|
|
40
|
+
/**
|
|
41
|
+
* Custom render modules (only used when renderMode is 'custom')
|
|
42
|
+
*/
|
|
43
|
+
customRenderModules?: (texture: Texture) => RenderModule[];
|
|
44
|
+
/**
|
|
45
|
+
* Custom colormap data for NDVI (Uint8ClampedArray of RGBA values, 256 colors)
|
|
46
|
+
* @reserved Currently not implemented - NDVI uses built-in cfastie colormap.
|
|
47
|
+
*/
|
|
48
|
+
colormapData?: Uint8ClampedArray;
|
|
49
|
+
/**
|
|
50
|
+
* Maximum number of tiles to cache
|
|
51
|
+
*/
|
|
52
|
+
maxCacheSize?: number;
|
|
53
|
+
/**
|
|
54
|
+
* Layer opacity (0-1)
|
|
55
|
+
*/
|
|
56
|
+
opacity?: number;
|
|
57
|
+
/**
|
|
58
|
+
* Layer visibility
|
|
59
|
+
*/
|
|
60
|
+
visible?: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Enable picking on this layer
|
|
63
|
+
*/
|
|
64
|
+
pickable?: boolean;
|
|
65
|
+
/**
|
|
66
|
+
* Auto highlight on hover
|
|
67
|
+
*/
|
|
68
|
+
autoHighlight?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Highlight color when autoHighlight is enabled
|
|
71
|
+
*/
|
|
72
|
+
highlightColor?: Color;
|
|
73
|
+
/**
|
|
74
|
+
* Insert layer before this layer id
|
|
75
|
+
*/
|
|
76
|
+
beforeId?: string;
|
|
77
|
+
}
|
|
78
|
+
declare var __VLS_1: {};
|
|
79
|
+
type __VLS_Slots = {} & {
|
|
80
|
+
default?: (props: typeof __VLS_1) => any;
|
|
81
|
+
};
|
|
82
|
+
declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
83
|
+
click: (info: {
|
|
84
|
+
color: Uint8Array | null;
|
|
85
|
+
layer: import("@deck.gl/core").Layer | null;
|
|
86
|
+
sourceLayer?: import("@deck.gl/core").Layer | null;
|
|
87
|
+
viewport?: import("@deck.gl/core").Viewport;
|
|
88
|
+
index: number;
|
|
89
|
+
picked: boolean;
|
|
90
|
+
object?: any;
|
|
91
|
+
x: number;
|
|
92
|
+
y: number;
|
|
93
|
+
pixel?: [number, number];
|
|
94
|
+
coordinate?: number[];
|
|
95
|
+
devicePixel?: [number, number];
|
|
96
|
+
pixelRatio: number;
|
|
97
|
+
}) => any;
|
|
98
|
+
error: (error: Error, source?: MosaicSource | undefined) => any;
|
|
99
|
+
hover: (info: {
|
|
100
|
+
color: Uint8Array | null;
|
|
101
|
+
layer: import("@deck.gl/core").Layer | null;
|
|
102
|
+
sourceLayer?: import("@deck.gl/core").Layer | null;
|
|
103
|
+
viewport?: import("@deck.gl/core").Viewport;
|
|
104
|
+
index: number;
|
|
105
|
+
picked: boolean;
|
|
106
|
+
object?: any;
|
|
107
|
+
x: number;
|
|
108
|
+
y: number;
|
|
109
|
+
pixel?: [number, number];
|
|
110
|
+
coordinate?: number[];
|
|
111
|
+
devicePixel?: [number, number];
|
|
112
|
+
pixelRatio: number;
|
|
113
|
+
}) => any;
|
|
114
|
+
sourceLoad: (source: MosaicSource) => any;
|
|
115
|
+
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
116
|
+
onClick?: ((info: {
|
|
117
|
+
color: Uint8Array | null;
|
|
118
|
+
layer: import("@deck.gl/core").Layer | null;
|
|
119
|
+
sourceLayer?: import("@deck.gl/core").Layer | null;
|
|
120
|
+
viewport?: import("@deck.gl/core").Viewport;
|
|
121
|
+
index: number;
|
|
122
|
+
picked: boolean;
|
|
123
|
+
object?: any;
|
|
124
|
+
x: number;
|
|
125
|
+
y: number;
|
|
126
|
+
pixel?: [number, number];
|
|
127
|
+
coordinate?: number[];
|
|
128
|
+
devicePixel?: [number, number];
|
|
129
|
+
pixelRatio: number;
|
|
130
|
+
}) => any) | undefined;
|
|
131
|
+
onError?: ((error: Error, source?: MosaicSource | undefined) => any) | undefined;
|
|
132
|
+
onHover?: ((info: {
|
|
133
|
+
color: Uint8Array | null;
|
|
134
|
+
layer: import("@deck.gl/core").Layer | null;
|
|
135
|
+
sourceLayer?: import("@deck.gl/core").Layer | null;
|
|
136
|
+
viewport?: import("@deck.gl/core").Viewport;
|
|
137
|
+
index: number;
|
|
138
|
+
picked: boolean;
|
|
139
|
+
object?: any;
|
|
140
|
+
x: number;
|
|
141
|
+
y: number;
|
|
142
|
+
pixel?: [number, number];
|
|
143
|
+
coordinate?: number[];
|
|
144
|
+
devicePixel?: [number, number];
|
|
145
|
+
pixelRatio: number;
|
|
146
|
+
}) => any) | undefined;
|
|
147
|
+
onSourceLoad?: ((source: MosaicSource) => any) | undefined;
|
|
148
|
+
}>, {
|
|
149
|
+
opacity: number;
|
|
150
|
+
pickable: boolean;
|
|
151
|
+
visible: boolean;
|
|
152
|
+
autoHighlight: boolean;
|
|
153
|
+
maxCacheSize: number;
|
|
154
|
+
renderMode: MosaicRenderMode;
|
|
155
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
156
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
157
|
+
declare const _default: typeof __VLS_export;
|
|
158
|
+
export default _default;
|
|
159
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
160
|
+
new (): {
|
|
161
|
+
$slots: S;
|
|
162
|
+
};
|
|
163
|
+
};
|
|
@@ -115,8 +115,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
|
|
|
115
115
|
}>, {
|
|
116
116
|
opacity: number;
|
|
117
117
|
pickable: boolean;
|
|
118
|
-
background: boolean;
|
|
119
118
|
visible: boolean;
|
|
119
|
+
background: boolean;
|
|
120
120
|
billboard: boolean;
|
|
121
121
|
autoHighlight: boolean;
|
|
122
122
|
sizeScale: number;
|
|
@@ -97,9 +97,9 @@ declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, i
|
|
|
97
97
|
opacity: number;
|
|
98
98
|
pickable: boolean;
|
|
99
99
|
visible: boolean;
|
|
100
|
-
bounds: [number, number, number, number];
|
|
101
100
|
animate: boolean;
|
|
102
101
|
color: Color;
|
|
102
|
+
bounds: [number, number, number, number];
|
|
103
103
|
uMin: number;
|
|
104
104
|
uMax: number;
|
|
105
105
|
vMin: number;
|
package/dist/layers/index.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export { RasterLayer as VLayerMaplibreRaster } from './maplibre/raster';
|
|
|
5
5
|
export { VectorLayer as VLayerMaplibreVector } from './maplibre/vector';
|
|
6
6
|
export { VideoLayer as VLayerMaplibreVideo } from './maplibre/video';
|
|
7
7
|
export { PmtileLayer as VLayerMaplibrePmtile } from './maplibre/pmtile';
|
|
8
|
-
export { ClusterLayer as VLayerMaplibreCluster } from './maplibre/cluster';
|
|
9
|
-
export { RouteLayer as VLayerMaplibreRoute } from './maplibre/route';
|
|
8
|
+
export { ClusterLayer as VLayerMaplibreCluster } from './maplibre/custom/cluster';
|
|
9
|
+
export { RouteLayer as VLayerMaplibreRoute } from './maplibre/custom/route';
|
|
10
|
+
export { VLayerMaplibreIsochrone } from './maplibre/custom/isochrone';
|
|
10
11
|
export * from './deckgl';
|
|
@@ -11,8 +11,8 @@ type __VLS_Slots = {} & {
|
|
|
11
11
|
default?: (props: typeof __VLS_1) => any;
|
|
12
12
|
};
|
|
13
13
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
14
|
-
sourceId: string;
|
|
15
14
|
layerId: string;
|
|
15
|
+
sourceId: string;
|
|
16
16
|
before: string;
|
|
17
17
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
18
18
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
interface IsochroneFeature {
|
|
2
|
+
type: 'Feature';
|
|
3
|
+
properties: {
|
|
4
|
+
color: string;
|
|
5
|
+
contour?: number;
|
|
6
|
+
metric?: string;
|
|
7
|
+
[key: string]: unknown;
|
|
8
|
+
};
|
|
9
|
+
geometry: GeoJSON.Polygon | GeoJSON.MultiPolygon;
|
|
10
|
+
}
|
|
11
|
+
interface IsochroneData {
|
|
12
|
+
type: 'FeatureCollection';
|
|
13
|
+
features: IsochroneFeature[];
|
|
14
|
+
}
|
|
15
|
+
interface IsochroneClick {
|
|
16
|
+
feature: IsochroneFeature;
|
|
17
|
+
coordinates: {
|
|
18
|
+
lng: number;
|
|
19
|
+
lat: number;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
interface Props {
|
|
23
|
+
/** Unique identifier for the isochrone layer */
|
|
24
|
+
id?: string;
|
|
25
|
+
/** GeoJSON FeatureCollection with isochrone polygons (from Valhalla, OSRM, etc.) */
|
|
26
|
+
data: IsochroneData | null;
|
|
27
|
+
/** Fill opacity (0-1) */
|
|
28
|
+
fillOpacity?: number;
|
|
29
|
+
/** Line width in pixels for polygon outlines */
|
|
30
|
+
lineWidth?: number;
|
|
31
|
+
/** Line opacity (0-1) */
|
|
32
|
+
lineOpacity?: number;
|
|
33
|
+
/** Whether the layer is visible */
|
|
34
|
+
visible?: boolean;
|
|
35
|
+
/** Whether the layer is interactive (shows pointer cursor on hover) */
|
|
36
|
+
interactive?: boolean;
|
|
37
|
+
/** Render this layer before the specified layer */
|
|
38
|
+
before?: string;
|
|
39
|
+
/** Whether to reverse the feature order (for proper stacking of overlapping polygons) */
|
|
40
|
+
reverseOrder?: boolean;
|
|
41
|
+
}
|
|
42
|
+
declare var __VLS_1: {};
|
|
43
|
+
type __VLS_Slots = {} & {
|
|
44
|
+
default?: (props: typeof __VLS_1) => any;
|
|
45
|
+
};
|
|
46
|
+
declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
47
|
+
click: (event: IsochroneClick) => any;
|
|
48
|
+
mouseenter: (feature: IsochroneFeature) => any;
|
|
49
|
+
mouseleave: () => any;
|
|
50
|
+
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
51
|
+
onClick?: ((event: IsochroneClick) => any) | undefined;
|
|
52
|
+
onMouseenter?: ((feature: IsochroneFeature) => any) | undefined;
|
|
53
|
+
onMouseleave?: (() => any) | undefined;
|
|
54
|
+
}>, {
|
|
55
|
+
id: string;
|
|
56
|
+
visible: boolean;
|
|
57
|
+
interactive: boolean;
|
|
58
|
+
before: string;
|
|
59
|
+
fillOpacity: number;
|
|
60
|
+
lineWidth: number;
|
|
61
|
+
lineOpacity: number;
|
|
62
|
+
reverseOrder: boolean;
|
|
63
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
64
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
65
|
+
declare const _default: typeof __VLS_export;
|
|
66
|
+
export default _default;
|
|
67
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
68
|
+
new (): {
|
|
69
|
+
$slots: S;
|
|
70
|
+
};
|
|
71
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as VLayerMaplibreIsochrone } from './VLayerMaplibreIsochrone.vue';
|
|
@@ -22,8 +22,8 @@ declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, i
|
|
|
22
22
|
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
23
23
|
"onOn-click"?: ((event: LayerClick) => any) | undefined;
|
|
24
24
|
}>, {
|
|
25
|
-
sourceId: string;
|
|
26
25
|
layerId: string;
|
|
26
|
+
sourceId: string;
|
|
27
27
|
before: string;
|
|
28
28
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
29
29
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -55,9 +55,9 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
55
55
|
required: false;
|
|
56
56
|
};
|
|
57
57
|
}>> & Readonly<{}>, {
|
|
58
|
+
layerId: string;
|
|
58
59
|
layer: AnyLayer;
|
|
59
60
|
sourceId: string;
|
|
60
|
-
layerId: string;
|
|
61
61
|
before: string;
|
|
62
62
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
63
63
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -51,9 +51,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
51
51
|
required: false;
|
|
52
52
|
};
|
|
53
53
|
}>> & Readonly<{}>, {
|
|
54
|
+
layerId: string;
|
|
54
55
|
layer: RasterLayerSpecification;
|
|
55
56
|
sourceId: string;
|
|
56
|
-
layerId: string;
|
|
57
57
|
before: string;
|
|
58
58
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
59
59
|
declare const _default: typeof __VLS_export;
|
|
@@ -55,9 +55,9 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
55
55
|
required: false;
|
|
56
56
|
};
|
|
57
57
|
}>> & Readonly<{}>, {
|
|
58
|
+
layerId: string;
|
|
58
59
|
layer: AnyLayer;
|
|
59
60
|
sourceId: string;
|
|
60
|
-
layerId: string;
|
|
61
61
|
before: string;
|
|
62
62
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
63
63
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|