@geoql/v-maplibre 1.3.0 → 1.4.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.
- package/README.md +7 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +4275 -56
- package/dist/index.js.map +1 -1
- package/dist/layers/deckgl/cog/VLayerDeckglCOG.vue.d.ts +166 -0
- package/dist/layers/deckgl/cog/index.d.ts +1 -0
- package/dist/layers/deckgl/index.d.ts +1 -0
- package/dist/layers/index.d.ts +1 -0
- package/dist/layers/maplibre/route/VLayerMaplibreRoute.vue.d.ts +64 -0
- package/dist/layers/maplibre/route/index.d.ts +1 -0
- package/dist/markers/VMarker.vue.d.ts +1 -1
- package/package.json +9 -1
- package/dist/index-BUMO1VV2.js +0 -20895
- package/dist/index-BUMO1VV2.js.map +0 -1
- package/dist/index-Bmyl92lv.js +0 -56335
- package/dist/index-Bmyl92lv.js.map +0 -1
- package/dist/index-D_BMVttU.js +0 -5
- package/dist/index-D_BMVttU.js.map +0 -1
- package/dist/mapbox-overlay-CNSEDf8o.js +0 -5106
- package/dist/mapbox-overlay-CNSEDf8o.js.map +0 -1
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import type { Color } from '@deck.gl/core';
|
|
2
|
+
interface Props {
|
|
3
|
+
id: string;
|
|
4
|
+
/**
|
|
5
|
+
* GeoTIFF source - URL string, ArrayBuffer, Blob, or geotiff.js instance
|
|
6
|
+
*/
|
|
7
|
+
geotiff: string | ArrayBuffer | Blob | object;
|
|
8
|
+
/**
|
|
9
|
+
* Tile size in pixels
|
|
10
|
+
*/
|
|
11
|
+
tileSize?: number;
|
|
12
|
+
/**
|
|
13
|
+
* Maximum zoom level
|
|
14
|
+
*/
|
|
15
|
+
maxZoom?: number;
|
|
16
|
+
/**
|
|
17
|
+
* Minimum zoom level
|
|
18
|
+
*/
|
|
19
|
+
minZoom?: number;
|
|
20
|
+
/**
|
|
21
|
+
* Maximum number of tiles to cache
|
|
22
|
+
*/
|
|
23
|
+
maxCacheSize?: number;
|
|
24
|
+
/**
|
|
25
|
+
* Refinement strategy for tile loading
|
|
26
|
+
*/
|
|
27
|
+
refinementStrategy?: 'best-available' | 'no-overlap' | 'never';
|
|
28
|
+
/**
|
|
29
|
+
* Maximum concurrent requests
|
|
30
|
+
*/
|
|
31
|
+
maxRequests?: number;
|
|
32
|
+
/**
|
|
33
|
+
* Layer opacity (0-1)
|
|
34
|
+
*/
|
|
35
|
+
opacity?: number;
|
|
36
|
+
/**
|
|
37
|
+
* Layer visibility
|
|
38
|
+
*/
|
|
39
|
+
visible?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Enable picking on this layer
|
|
42
|
+
*/
|
|
43
|
+
pickable?: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Auto highlight on hover
|
|
46
|
+
*/
|
|
47
|
+
autoHighlight?: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Highlight color when autoHighlight is enabled
|
|
50
|
+
*/
|
|
51
|
+
highlightColor?: Color;
|
|
52
|
+
/**
|
|
53
|
+
* Insert layer before this layer id
|
|
54
|
+
*/
|
|
55
|
+
beforeId?: string;
|
|
56
|
+
/**
|
|
57
|
+
* Show debug overlay on tiles
|
|
58
|
+
*/
|
|
59
|
+
debug?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Opacity of debug overlay (0-1)
|
|
62
|
+
*/
|
|
63
|
+
debugOpacity?: number;
|
|
64
|
+
}
|
|
65
|
+
declare var __VLS_1: {};
|
|
66
|
+
type __VLS_Slots = {} & {
|
|
67
|
+
default?: (props: typeof __VLS_1) => any;
|
|
68
|
+
};
|
|
69
|
+
declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
70
|
+
click: (info: {
|
|
71
|
+
color: Uint8Array | null;
|
|
72
|
+
layer: import("@deck.gl/core").Layer | null;
|
|
73
|
+
sourceLayer?: import("@deck.gl/core").Layer | null;
|
|
74
|
+
viewport?: import("@deck.gl/core").Viewport;
|
|
75
|
+
index: number;
|
|
76
|
+
picked: boolean;
|
|
77
|
+
object?: any;
|
|
78
|
+
x: number;
|
|
79
|
+
y: number;
|
|
80
|
+
pixel?: [number, number];
|
|
81
|
+
coordinate?: number[];
|
|
82
|
+
devicePixel?: [number, number];
|
|
83
|
+
pixelRatio: number;
|
|
84
|
+
}) => any;
|
|
85
|
+
hover: (info: {
|
|
86
|
+
color: Uint8Array | null;
|
|
87
|
+
layer: import("@deck.gl/core").Layer | null;
|
|
88
|
+
sourceLayer?: import("@deck.gl/core").Layer | null;
|
|
89
|
+
viewport?: import("@deck.gl/core").Viewport;
|
|
90
|
+
index: number;
|
|
91
|
+
picked: boolean;
|
|
92
|
+
object?: any;
|
|
93
|
+
x: number;
|
|
94
|
+
y: number;
|
|
95
|
+
pixel?: [number, number];
|
|
96
|
+
coordinate?: number[];
|
|
97
|
+
devicePixel?: [number, number];
|
|
98
|
+
pixelRatio: number;
|
|
99
|
+
}) => any;
|
|
100
|
+
geotiffLoad: (tiff: unknown, options: {
|
|
101
|
+
geographicBounds: {
|
|
102
|
+
west: number;
|
|
103
|
+
south: number;
|
|
104
|
+
east: number;
|
|
105
|
+
north: number;
|
|
106
|
+
};
|
|
107
|
+
}) => any;
|
|
108
|
+
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
109
|
+
onClick?: ((info: {
|
|
110
|
+
color: Uint8Array | null;
|
|
111
|
+
layer: import("@deck.gl/core").Layer | null;
|
|
112
|
+
sourceLayer?: import("@deck.gl/core").Layer | null;
|
|
113
|
+
viewport?: import("@deck.gl/core").Viewport;
|
|
114
|
+
index: number;
|
|
115
|
+
picked: boolean;
|
|
116
|
+
object?: any;
|
|
117
|
+
x: number;
|
|
118
|
+
y: number;
|
|
119
|
+
pixel?: [number, number];
|
|
120
|
+
coordinate?: number[];
|
|
121
|
+
devicePixel?: [number, number];
|
|
122
|
+
pixelRatio: number;
|
|
123
|
+
}) => any) | undefined;
|
|
124
|
+
onHover?: ((info: {
|
|
125
|
+
color: Uint8Array | null;
|
|
126
|
+
layer: import("@deck.gl/core").Layer | null;
|
|
127
|
+
sourceLayer?: import("@deck.gl/core").Layer | null;
|
|
128
|
+
viewport?: import("@deck.gl/core").Viewport;
|
|
129
|
+
index: number;
|
|
130
|
+
picked: boolean;
|
|
131
|
+
object?: any;
|
|
132
|
+
x: number;
|
|
133
|
+
y: number;
|
|
134
|
+
pixel?: [number, number];
|
|
135
|
+
coordinate?: number[];
|
|
136
|
+
devicePixel?: [number, number];
|
|
137
|
+
pixelRatio: number;
|
|
138
|
+
}) => any) | undefined;
|
|
139
|
+
onGeotiffLoad?: ((tiff: unknown, options: {
|
|
140
|
+
geographicBounds: {
|
|
141
|
+
west: number;
|
|
142
|
+
south: number;
|
|
143
|
+
east: number;
|
|
144
|
+
north: number;
|
|
145
|
+
};
|
|
146
|
+
}) => any) | undefined;
|
|
147
|
+
}>, {
|
|
148
|
+
debug: boolean;
|
|
149
|
+
opacity: number;
|
|
150
|
+
pickable: boolean;
|
|
151
|
+
visible: boolean;
|
|
152
|
+
tileSize: number;
|
|
153
|
+
autoHighlight: boolean;
|
|
154
|
+
minZoom: number;
|
|
155
|
+
refinementStrategy: "best-available" | "no-overlap" | "never";
|
|
156
|
+
maxRequests: number;
|
|
157
|
+
debugOpacity: number;
|
|
158
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
159
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
160
|
+
declare const _default: typeof __VLS_export;
|
|
161
|
+
export default _default;
|
|
162
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
163
|
+
new (): {
|
|
164
|
+
$slots: S;
|
|
165
|
+
};
|
|
166
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as VLayerDeckglCOG } from './VLayerDeckglCOG.vue';
|
|
@@ -30,6 +30,7 @@ export { VLayerDeckglQuadkey } from './quadkey';
|
|
|
30
30
|
export { VLayerDeckglWMS } from './wms';
|
|
31
31
|
export { VLayerDeckglSimpleMesh } from './simple-mesh';
|
|
32
32
|
export { VLayerDeckglScenegraph } from './scenegraph';
|
|
33
|
+
export { VLayerDeckglCOG } from './cog';
|
|
33
34
|
export { VLayerDeckgl } from './generic';
|
|
34
35
|
export { useDeckOverlay, useDeckLayers, DeckOverlayKey, DeckLayersKey, } from './_shared';
|
|
35
36
|
export * from './_shared/types';
|
package/dist/layers/index.d.ts
CHANGED
|
@@ -6,4 +6,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
8
|
export { ClusterLayer as VLayerMaplibreCluster } from './maplibre/cluster';
|
|
9
|
+
export { RouteLayer as VLayerMaplibreRoute } from './maplibre/route';
|
|
9
10
|
export * from './deckgl';
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
interface RouteClick {
|
|
2
|
+
coordinates: {
|
|
3
|
+
lng: number;
|
|
4
|
+
lat: number;
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
interface Props {
|
|
8
|
+
/** Unique identifier for the route */
|
|
9
|
+
id?: string;
|
|
10
|
+
/** Array of [longitude, latitude] coordinate pairs defining the route */
|
|
11
|
+
coordinates: [number, number][];
|
|
12
|
+
/** Line color as CSS color value */
|
|
13
|
+
color?: string;
|
|
14
|
+
/** Line width in pixels */
|
|
15
|
+
width?: number;
|
|
16
|
+
/** Line opacity (0-1) */
|
|
17
|
+
opacity?: number;
|
|
18
|
+
/** Line cap style */
|
|
19
|
+
lineCap?: 'butt' | 'round' | 'square';
|
|
20
|
+
/** Line join style */
|
|
21
|
+
lineJoin?: 'bevel' | 'round' | 'miter';
|
|
22
|
+
/** Whether the route is visible */
|
|
23
|
+
visible?: boolean;
|
|
24
|
+
/** Whether the route is interactive (shows pointer cursor on hover) */
|
|
25
|
+
interactive?: boolean;
|
|
26
|
+
/** Render this layer before the specified layer */
|
|
27
|
+
before?: string;
|
|
28
|
+
/** Line dash array for dashed lines */
|
|
29
|
+
dashArray?: number[];
|
|
30
|
+
/** Line blur in pixels */
|
|
31
|
+
blur?: number;
|
|
32
|
+
}
|
|
33
|
+
declare var __VLS_1: {};
|
|
34
|
+
type __VLS_Slots = {} & {
|
|
35
|
+
default?: (props: typeof __VLS_1) => any;
|
|
36
|
+
};
|
|
37
|
+
declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
38
|
+
click: (event: RouteClick) => any;
|
|
39
|
+
mouseenter: () => any;
|
|
40
|
+
mouseleave: () => any;
|
|
41
|
+
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
42
|
+
onClick?: ((event: RouteClick) => any) | undefined;
|
|
43
|
+
onMouseenter?: (() => any) | undefined;
|
|
44
|
+
onMouseleave?: (() => any) | undefined;
|
|
45
|
+
}>, {
|
|
46
|
+
width: number;
|
|
47
|
+
id: string;
|
|
48
|
+
opacity: number;
|
|
49
|
+
before: string;
|
|
50
|
+
visible: boolean;
|
|
51
|
+
color: string;
|
|
52
|
+
lineCap: "butt" | "round" | "square";
|
|
53
|
+
lineJoin: "bevel" | "round" | "miter";
|
|
54
|
+
interactive: boolean;
|
|
55
|
+
blur: number;
|
|
56
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
57
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
58
|
+
declare const _default: typeof __VLS_export;
|
|
59
|
+
export default _default;
|
|
60
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
61
|
+
new (): {
|
|
62
|
+
$slots: S;
|
|
63
|
+
};
|
|
64
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as RouteLayer } from './VLayerMaplibreRoute.vue';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@geoql/v-maplibre",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"description": "Vue 3 components for MapLibre GL - reactive map components with full TypeScript support",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -40,6 +40,8 @@
|
|
|
40
40
|
"@deck.gl/aggregation-layers": "^9.2.5",
|
|
41
41
|
"@deck.gl/geo-layers": "^9.2.5",
|
|
42
42
|
"@deck.gl/mesh-layers": "^9.2.5",
|
|
43
|
+
"@developmentseed/deck.gl-geotiff": "^0.1.0",
|
|
44
|
+
"geotiff-geokeys-to-proj4": "^2024.4.0",
|
|
43
45
|
"maplibre-gl-lidar": "^0.5.0"
|
|
44
46
|
},
|
|
45
47
|
"peerDependenciesMeta": {
|
|
@@ -61,6 +63,12 @@
|
|
|
61
63
|
"@deck.gl/mesh-layers": {
|
|
62
64
|
"optional": true
|
|
63
65
|
},
|
|
66
|
+
"@developmentseed/deck.gl-geotiff": {
|
|
67
|
+
"optional": true
|
|
68
|
+
},
|
|
69
|
+
"geotiff-geokeys-to-proj4": {
|
|
70
|
+
"optional": true
|
|
71
|
+
},
|
|
64
72
|
"maplibre-gl-lidar": {
|
|
65
73
|
"optional": true
|
|
66
74
|
}
|