vue3-google-map 0.23.0 → 0.24.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.
@@ -1,7 +1,8 @@
1
- /// <reference types="google.maps" />
2
1
  import { PropType } from "vue";
3
2
  import { Library } from "@googlemaps/js-api-loader";
4
- declare const _default: import("vue").DefineComponent<{
3
+ import { IControlPosition } from "../@types/index";
4
+ export declare const mapEvents: string[];
5
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
5
6
  apiPromise: {
6
7
  type: PropType<Promise<typeof google>>;
7
8
  };
@@ -42,7 +43,7 @@ declare const _default: import("vue").DefineComponent<{
42
43
  default: undefined;
43
44
  };
44
45
  colorScheme: {
45
- type: PropType<"DARK" | "FOLLOW_SYSTEM" | "LIGHT">;
46
+ type: PropType<keyof typeof google.maps.ColorScheme>;
46
47
  required: false;
47
48
  };
48
49
  controlSize: {
@@ -78,11 +79,11 @@ declare const _default: import("vue").DefineComponent<{
78
79
  default: undefined;
79
80
  };
80
81
  fullscreenControlPosition: {
81
- type: PropType<"BLOCK_END_INLINE_CENTER" | "BLOCK_END_INLINE_END" | "BLOCK_END_INLINE_START" | "BLOCK_START_INLINE_CENTER" | "BLOCK_START_INLINE_END" | "BLOCK_START_INLINE_START" | "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "INLINE_END_BLOCK_CENTER" | "INLINE_END_BLOCK_END" | "INLINE_END_BLOCK_START" | "INLINE_START_BLOCK_CENTER" | "INLINE_START_BLOCK_END" | "INLINE_START_BLOCK_START" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
82
+ type: PropType<IControlPosition>;
82
83
  required: false;
83
84
  };
84
85
  gestureHandling: {
85
- type: PropType<"none" | "cooperative" | "greedy" | "auto">;
86
+ type: PropType<"cooperative" | "greedy" | "none" | "auto">;
86
87
  required: false;
87
88
  };
88
89
  heading: {
@@ -109,7 +110,7 @@ declare const _default: import("vue").DefineComponent<{
109
110
  required: false;
110
111
  };
111
112
  mapTypeId: {
112
- type: PropType<string>;
113
+ type: PropType<google.maps.MapTypeId | string>;
113
114
  required: false;
114
115
  };
115
116
  mapId: {
@@ -135,7 +136,7 @@ declare const _default: import("vue").DefineComponent<{
135
136
  default: undefined;
136
137
  };
137
138
  panControlPosition: {
138
- type: PropType<"BLOCK_END_INLINE_CENTER" | "BLOCK_END_INLINE_END" | "BLOCK_END_INLINE_START" | "BLOCK_START_INLINE_CENTER" | "BLOCK_START_INLINE_END" | "BLOCK_START_INLINE_START" | "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "INLINE_END_BLOCK_CENTER" | "INLINE_END_BLOCK_END" | "INLINE_END_BLOCK_START" | "INLINE_START_BLOCK_CENTER" | "INLINE_START_BLOCK_END" | "INLINE_START_BLOCK_START" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
139
+ type: PropType<IControlPosition>;
139
140
  required: false;
140
141
  };
141
142
  restriction: {
@@ -148,7 +149,7 @@ declare const _default: import("vue").DefineComponent<{
148
149
  default: undefined;
149
150
  };
150
151
  rotateControlPosition: {
151
- type: PropType<"BLOCK_END_INLINE_CENTER" | "BLOCK_END_INLINE_END" | "BLOCK_END_INLINE_START" | "BLOCK_START_INLINE_CENTER" | "BLOCK_START_INLINE_END" | "BLOCK_START_INLINE_START" | "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "INLINE_END_BLOCK_CENTER" | "INLINE_END_BLOCK_END" | "INLINE_END_BLOCK_START" | "INLINE_START_BLOCK_CENTER" | "INLINE_START_BLOCK_END" | "INLINE_START_BLOCK_START" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
152
+ type: PropType<IControlPosition>;
152
153
  required: false;
153
154
  };
154
155
  scaleControl: {
@@ -175,7 +176,7 @@ declare const _default: import("vue").DefineComponent<{
175
176
  default: undefined;
176
177
  };
177
178
  streetViewControlPosition: {
178
- type: PropType<"BLOCK_END_INLINE_CENTER" | "BLOCK_END_INLINE_END" | "BLOCK_END_INLINE_START" | "BLOCK_START_INLINE_CENTER" | "BLOCK_START_INLINE_END" | "BLOCK_START_INLINE_START" | "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "INLINE_END_BLOCK_CENTER" | "INLINE_END_BLOCK_END" | "INLINE_END_BLOCK_START" | "INLINE_START_BLOCK_CENTER" | "INLINE_START_BLOCK_END" | "INLINE_START_BLOCK_START" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
179
+ type: PropType<IControlPosition>;
179
180
  required: false;
180
181
  };
181
182
  styles: {
@@ -196,7 +197,7 @@ declare const _default: import("vue").DefineComponent<{
196
197
  default: undefined;
197
198
  };
198
199
  zoomControlPosition: {
199
- type: PropType<"BLOCK_END_INLINE_CENTER" | "BLOCK_END_INLINE_END" | "BLOCK_END_INLINE_START" | "BLOCK_START_INLINE_CENTER" | "BLOCK_START_INLINE_END" | "BLOCK_START_INLINE_START" | "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "INLINE_END_BLOCK_CENTER" | "INLINE_END_BLOCK_END" | "INLINE_END_BLOCK_START" | "INLINE_START_BLOCK_CENTER" | "INLINE_START_BLOCK_END" | "INLINE_START_BLOCK_START" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
200
+ type: PropType<IControlPosition>;
200
201
  required: false;
201
202
  };
202
203
  cameraControl: {
@@ -205,20 +206,20 @@ declare const _default: import("vue").DefineComponent<{
205
206
  default: undefined;
206
207
  };
207
208
  cameraControlPosition: {
208
- type: PropType<"BLOCK_END_INLINE_CENTER" | "BLOCK_END_INLINE_END" | "BLOCK_END_INLINE_START" | "BLOCK_START_INLINE_CENTER" | "BLOCK_START_INLINE_END" | "BLOCK_START_INLINE_START" | "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "INLINE_END_BLOCK_CENTER" | "INLINE_END_BLOCK_END" | "INLINE_END_BLOCK_START" | "INLINE_START_BLOCK_CENTER" | "INLINE_START_BLOCK_END" | "INLINE_START_BLOCK_START" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
209
+ type: PropType<IControlPosition>;
209
210
  required: false;
210
211
  };
211
212
  nonce: {
212
213
  type: StringConstructor;
213
214
  default: string;
214
215
  };
215
- }, {
216
- mapRef: import("vue").Ref<HTMLElement | undefined>;
217
- ready: import("vue").Ref<boolean>;
218
- map: import("vue").Ref<google.maps.Map | undefined>;
219
- api: import("vue").Ref<typeof google.maps | undefined>;
220
- mapTilesLoaded: import("vue").Ref<boolean>;
221
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
216
+ }>, {
217
+ mapRef: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
218
+ ready: import("vue").Ref<boolean, boolean>;
219
+ map: import("vue").Ref<google.maps.Map | undefined, google.maps.Map | undefined>;
220
+ api: import("vue").Ref<typeof google.maps | undefined, typeof google.maps | undefined>;
221
+ mapTilesLoaded: import("vue").Ref<boolean, boolean>;
222
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
222
223
  apiPromise: {
223
224
  type: PropType<Promise<typeof google>>;
224
225
  };
@@ -259,7 +260,7 @@ declare const _default: import("vue").DefineComponent<{
259
260
  default: undefined;
260
261
  };
261
262
  colorScheme: {
262
- type: PropType<"DARK" | "FOLLOW_SYSTEM" | "LIGHT">;
263
+ type: PropType<keyof typeof google.maps.ColorScheme>;
263
264
  required: false;
264
265
  };
265
266
  controlSize: {
@@ -295,11 +296,11 @@ declare const _default: import("vue").DefineComponent<{
295
296
  default: undefined;
296
297
  };
297
298
  fullscreenControlPosition: {
298
- type: PropType<"BLOCK_END_INLINE_CENTER" | "BLOCK_END_INLINE_END" | "BLOCK_END_INLINE_START" | "BLOCK_START_INLINE_CENTER" | "BLOCK_START_INLINE_END" | "BLOCK_START_INLINE_START" | "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "INLINE_END_BLOCK_CENTER" | "INLINE_END_BLOCK_END" | "INLINE_END_BLOCK_START" | "INLINE_START_BLOCK_CENTER" | "INLINE_START_BLOCK_END" | "INLINE_START_BLOCK_START" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
299
+ type: PropType<IControlPosition>;
299
300
  required: false;
300
301
  };
301
302
  gestureHandling: {
302
- type: PropType<"none" | "cooperative" | "greedy" | "auto">;
303
+ type: PropType<"cooperative" | "greedy" | "none" | "auto">;
303
304
  required: false;
304
305
  };
305
306
  heading: {
@@ -326,7 +327,7 @@ declare const _default: import("vue").DefineComponent<{
326
327
  required: false;
327
328
  };
328
329
  mapTypeId: {
329
- type: PropType<string>;
330
+ type: PropType<google.maps.MapTypeId | string>;
330
331
  required: false;
331
332
  };
332
333
  mapId: {
@@ -352,7 +353,7 @@ declare const _default: import("vue").DefineComponent<{
352
353
  default: undefined;
353
354
  };
354
355
  panControlPosition: {
355
- type: PropType<"BLOCK_END_INLINE_CENTER" | "BLOCK_END_INLINE_END" | "BLOCK_END_INLINE_START" | "BLOCK_START_INLINE_CENTER" | "BLOCK_START_INLINE_END" | "BLOCK_START_INLINE_START" | "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "INLINE_END_BLOCK_CENTER" | "INLINE_END_BLOCK_END" | "INLINE_END_BLOCK_START" | "INLINE_START_BLOCK_CENTER" | "INLINE_START_BLOCK_END" | "INLINE_START_BLOCK_START" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
356
+ type: PropType<IControlPosition>;
356
357
  required: false;
357
358
  };
358
359
  restriction: {
@@ -365,7 +366,7 @@ declare const _default: import("vue").DefineComponent<{
365
366
  default: undefined;
366
367
  };
367
368
  rotateControlPosition: {
368
- type: PropType<"BLOCK_END_INLINE_CENTER" | "BLOCK_END_INLINE_END" | "BLOCK_END_INLINE_START" | "BLOCK_START_INLINE_CENTER" | "BLOCK_START_INLINE_END" | "BLOCK_START_INLINE_START" | "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "INLINE_END_BLOCK_CENTER" | "INLINE_END_BLOCK_END" | "INLINE_END_BLOCK_START" | "INLINE_START_BLOCK_CENTER" | "INLINE_START_BLOCK_END" | "INLINE_START_BLOCK_START" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
369
+ type: PropType<IControlPosition>;
369
370
  required: false;
370
371
  };
371
372
  scaleControl: {
@@ -392,7 +393,7 @@ declare const _default: import("vue").DefineComponent<{
392
393
  default: undefined;
393
394
  };
394
395
  streetViewControlPosition: {
395
- type: PropType<"BLOCK_END_INLINE_CENTER" | "BLOCK_END_INLINE_END" | "BLOCK_END_INLINE_START" | "BLOCK_START_INLINE_CENTER" | "BLOCK_START_INLINE_END" | "BLOCK_START_INLINE_START" | "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "INLINE_END_BLOCK_CENTER" | "INLINE_END_BLOCK_END" | "INLINE_END_BLOCK_START" | "INLINE_START_BLOCK_CENTER" | "INLINE_START_BLOCK_END" | "INLINE_START_BLOCK_START" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
396
+ type: PropType<IControlPosition>;
396
397
  required: false;
397
398
  };
398
399
  styles: {
@@ -413,7 +414,7 @@ declare const _default: import("vue").DefineComponent<{
413
414
  default: undefined;
414
415
  };
415
416
  zoomControlPosition: {
416
- type: PropType<"BLOCK_END_INLINE_CENTER" | "BLOCK_END_INLINE_END" | "BLOCK_END_INLINE_START" | "BLOCK_START_INLINE_CENTER" | "BLOCK_START_INLINE_END" | "BLOCK_START_INLINE_START" | "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "INLINE_END_BLOCK_CENTER" | "INLINE_END_BLOCK_END" | "INLINE_END_BLOCK_START" | "INLINE_START_BLOCK_CENTER" | "INLINE_START_BLOCK_END" | "INLINE_START_BLOCK_START" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
417
+ type: PropType<IControlPosition>;
417
418
  required: false;
418
419
  };
419
420
  cameraControl: {
@@ -422,24 +423,24 @@ declare const _default: import("vue").DefineComponent<{
422
423
  default: undefined;
423
424
  };
424
425
  cameraControlPosition: {
425
- type: PropType<"BLOCK_END_INLINE_CENTER" | "BLOCK_END_INLINE_END" | "BLOCK_END_INLINE_START" | "BLOCK_START_INLINE_CENTER" | "BLOCK_START_INLINE_END" | "BLOCK_START_INLINE_START" | "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "INLINE_END_BLOCK_CENTER" | "INLINE_END_BLOCK_END" | "INLINE_END_BLOCK_START" | "INLINE_START_BLOCK_CENTER" | "INLINE_START_BLOCK_END" | "INLINE_START_BLOCK_START" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
426
+ type: PropType<IControlPosition>;
426
427
  required: false;
427
428
  };
428
429
  nonce: {
429
430
  type: StringConstructor;
430
431
  default: string;
431
432
  };
432
- }>> & {
433
+ }>> & Readonly<{
433
434
  [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
434
- }, {
435
- draggable: boolean;
436
- version: string;
437
- center: google.maps.LatLng | google.maps.LatLngLiteral;
435
+ }>, {
438
436
  apiKey: string;
437
+ version: string;
439
438
  libraries: Library[];
439
+ center: google.maps.LatLng | google.maps.LatLngLiteral;
440
440
  clickableIcons: boolean;
441
441
  disableDefaultUi: boolean;
442
442
  disableDoubleClickZoom: boolean;
443
+ draggable: boolean;
443
444
  fullscreenControl: boolean;
444
445
  isFractionalZoomEnabled: boolean;
445
446
  keyboardShortcuts: boolean;
@@ -453,5 +454,5 @@ declare const _default: import("vue").DefineComponent<{
453
454
  zoomControl: boolean;
454
455
  cameraControl: boolean;
455
456
  nonce: string;
456
- }, {}>;
457
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
457
458
  export default _default;
@@ -1,4 +1,3 @@
1
- /// <reference types="google.maps" />
2
1
  import { PropType } from "vue";
3
2
  type HeatmapLayerOptions = google.maps.visualization.HeatmapLayerOptions;
4
3
  interface ExtendedHeatmapLayerOptions extends Omit<HeatmapLayerOptions, "data"> {
@@ -11,19 +10,19 @@ interface ExtendedHeatmapLayerOptions extends Omit<HeatmapLayerOptions, "data">
11
10
  * Google recommends migrating to third-party library integrations like deck.gl, which offers a HeatmapLayer implementation.
12
11
  * @see {@link https://developers.google.com/maps/deprecations} for more information.
13
12
  */
14
- declare const _default: import("vue").DefineComponent<{
13
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
15
14
  options: {
16
15
  type: PropType<ExtendedHeatmapLayerOptions>;
17
16
  default: () => {};
18
17
  };
19
- }, {
20
- heatmapLayer: import("vue").Ref<google.maps.visualization.HeatmapLayer | undefined>;
21
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
18
+ }>, {
19
+ heatmapLayer: import("vue").Ref<google.maps.visualization.HeatmapLayer | undefined, google.maps.visualization.HeatmapLayer | undefined>;
20
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
22
21
  options: {
23
22
  type: PropType<ExtendedHeatmapLayerOptions>;
24
23
  default: () => {};
25
24
  };
26
- }>>, {
25
+ }>> & Readonly<{}>, {
27
26
  options: ExtendedHeatmapLayerOptions;
28
- }, {}>;
27
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
29
28
  export default _default;
@@ -1,6 +1,6 @@
1
- /// <reference types="google.maps" />
2
1
  import { PropType } from "vue";
3
- declare const _default: import("vue").DefineComponent<{
2
+ export declare const infoWindowEvents: string[];
3
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
4
  options: {
5
5
  type: PropType<google.maps.InfoWindowOptions>;
6
6
  default: () => {};
@@ -8,13 +8,13 @@ declare const _default: import("vue").DefineComponent<{
8
8
  modelValue: {
9
9
  type: BooleanConstructor;
10
10
  };
11
- }, {
12
- infoWindow: import("vue").Ref<google.maps.InfoWindow | undefined>;
13
- infoWindowRef: import("vue").Ref<HTMLElement | undefined>;
11
+ }>, {
12
+ infoWindow: import("vue").Ref<google.maps.InfoWindow | undefined, google.maps.InfoWindow | undefined>;
13
+ infoWindowRef: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
14
14
  hasSlotContent: import("vue").ComputedRef<boolean | undefined>;
15
15
  open: (opts?: google.maps.InfoWindowOpenOptions) => void;
16
16
  close: () => void;
17
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
17
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
18
18
  options: {
19
19
  type: PropType<google.maps.InfoWindowOptions>;
20
20
  default: () => {};
@@ -22,10 +22,10 @@ declare const _default: import("vue").DefineComponent<{
22
22
  modelValue: {
23
23
  type: BooleanConstructor;
24
24
  };
25
- }>> & {
25
+ }>> & Readonly<{
26
26
  [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
27
- }, {
27
+ }>, {
28
28
  options: google.maps.InfoWindowOptions;
29
29
  modelValue: boolean;
30
- }, {}>;
30
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
31
31
  export default _default;
@@ -1,24 +1,27 @@
1
- /// <reference types="google.maps" />
2
- import { PropType } from "vue";
1
+ import { PropType, Ref } from "vue";
2
+ export interface IMarkerExposed {
3
+ marker: Ref<google.maps.Marker | undefined>;
4
+ }
5
+ export declare const markerEvents: string[];
3
6
  /**
4
7
  * @deprecated The Marker component is deprecated as of February 2024. Use AdvancedMarker instead.
5
8
  * The google.maps.Marker API is deprecated and will be removed in a future version.
6
9
  * Migrate to AdvancedMarker for the latest features and better performance.
7
10
  * @see {@link https://developers.google.com/maps/deprecations} for more information.
8
11
  */
9
- declare const _default: import("vue").DefineComponent<{
12
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
10
13
  options: {
11
14
  type: PropType<google.maps.MarkerOptions>;
12
15
  required: true;
13
16
  };
14
- }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
17
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
15
18
  [key: string]: any;
16
- }>[] | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
19
+ }>[] | undefined, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
17
20
  options: {
18
21
  type: PropType<google.maps.MarkerOptions>;
19
22
  required: true;
20
23
  };
21
- }>> & {
24
+ }>> & Readonly<{
22
25
  [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
23
- }, {}, {}>;
26
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
24
27
  export default _default;
@@ -1,22 +1,27 @@
1
- import { PropType } from "vue";
2
- import { MarkerClustererOptions, MarkerClustererEvents } from "@googlemaps/markerclusterer";
3
- declare const _default: import("vue").DefineComponent<{
1
+ import { PropType, type Ref } from "vue";
2
+ import { MarkerClusterer, MarkerClustererOptions, MarkerClustererEvents } from "@googlemaps/markerclusterer";
3
+ export interface IMarkerClusterExposed {
4
+ markerCluster: Ref<MarkerClusterer | undefined>;
5
+ }
6
+ export declare const markerClusterEvents: MarkerClustererEvents[];
7
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
8
  options: {
5
9
  type: PropType<MarkerClustererOptions>;
6
10
  default: () => {};
7
11
  };
8
- }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
12
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
9
13
  [key: string]: any;
10
- }>[] | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, MarkerClustererEvents[], MarkerClustererEvents, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
14
+ }>[] | undefined, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, MarkerClustererEvents[], MarkerClustererEvents, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
11
15
  options: {
12
16
  type: PropType<MarkerClustererOptions>;
13
17
  default: () => {};
14
18
  };
15
- }>> & {
19
+ }>> & Readonly<{
16
20
  onClick?: ((...args: any[]) => any) | undefined;
17
21
  onClusteringbegin?: ((...args: any[]) => any) | undefined;
18
22
  onClusteringend?: ((...args: any[]) => any) | undefined;
19
- }, {
23
+ "onGmp-click"?: ((...args: any[]) => any) | undefined;
24
+ }>, {
20
25
  options: MarkerClustererOptions;
21
- }, {}>;
26
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
22
27
  export default _default;
@@ -1,18 +1,17 @@
1
- /// <reference types="google.maps" />
2
1
  import { PropType } from "vue";
3
- declare const _default: import("vue").DefineComponent<{
2
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
3
  options: {
5
4
  type: PropType<google.maps.PolygonOptions>;
6
5
  required: true;
7
6
  };
8
- }, {
9
- polygon: import("vue").Ref<google.maps.Polygon | undefined>;
10
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
+ }>, {
8
+ polygon: import("vue").Ref<google.maps.Polygon | undefined, google.maps.Polygon | undefined>;
9
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
11
10
  options: {
12
11
  type: PropType<google.maps.PolygonOptions>;
13
12
  required: true;
14
13
  };
15
- }>> & {
14
+ }>> & Readonly<{
16
15
  [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
17
- }, {}, {}>;
16
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
18
17
  export default _default;
@@ -1,18 +1,17 @@
1
- /// <reference types="google.maps" />
2
1
  import { PropType } from "vue";
3
- declare const _default: import("vue").DefineComponent<{
2
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
3
  options: {
5
4
  type: PropType<google.maps.PolylineOptions>;
6
5
  required: true;
7
6
  };
8
- }, {
9
- polyline: import("vue").Ref<google.maps.Polyline | undefined>;
10
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
+ }>, {
8
+ polyline: import("vue").Ref<google.maps.Polyline | undefined, google.maps.Polyline | undefined>;
9
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
11
10
  options: {
12
11
  type: PropType<google.maps.PolylineOptions>;
13
12
  required: true;
14
13
  };
15
- }>> & {
14
+ }>> & Readonly<{
16
15
  [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
17
- }, {}, {}>;
16
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
18
17
  export default _default;
@@ -1,18 +1,18 @@
1
- /// <reference types="google.maps" />
2
1
  import { PropType } from "vue";
3
- declare const _default: import("vue").DefineComponent<{
2
+ export declare const rectangleEvents: string[];
3
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
4
  options: {
5
5
  type: PropType<google.maps.RectangleOptions>;
6
6
  required: true;
7
7
  };
8
- }, {
9
- rectangle: import("vue").Ref<google.maps.Rectangle | undefined>;
10
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
8
+ }>, {
9
+ rectangle: import("vue").Ref<google.maps.Rectangle | undefined, google.maps.Rectangle | undefined>;
10
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
11
11
  options: {
12
12
  type: PropType<google.maps.RectangleOptions>;
13
13
  required: true;
14
14
  };
15
- }>> & {
15
+ }>> & Readonly<{
16
16
  [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
17
- }, {}, {}>;
17
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
18
18
  export default _default;
@@ -1,4 +1,3 @@
1
- /// <reference types="google.maps" />
2
1
  import { Ref } from "vue";
3
2
  import { customMarkerClassSymbol } from "../shared/index";
4
3
  type ICtorKey = "Marker" | "Polyline" | "Polygon" | "Rectangle" | "Circle" | typeof customMarkerClassSymbol;
@@ -1 +1,2 @@
1
1
  export * from "./components/index";
2
+ export { mapSymbol, apiSymbol, mapTilesLoadedSymbol } from "./shared/index";
@@ -1,4 +1,3 @@
1
- /// <reference types="google.maps" />
2
1
  import type { MarkerClusterer } from "@googlemaps/markerclusterer";
3
2
  import { InjectionKey, Ref } from "vue";
4
3
  export declare const mapSymbol: InjectionKey<Ref<google.maps.Map | undefined>>;
@@ -1,4 +1,3 @@
1
- /// <reference types="google.maps" />
2
1
  import { createCustomMarkerClass } from "./utils";
3
2
  declare global {
4
3
  namespace google.maps {
@@ -1,2 +1 @@
1
- /// <reference types="google.maps" />
2
1
  export declare const aubergine: google.maps.MapTypeStyle[];
@@ -1,4 +1,3 @@
1
- /// <reference types="google.maps" />
2
1
  /**
3
2
  * Dark mode theme from:
4
3
  * [dark mode](https://developers-dot-devsite-v2-prod.appspot.com/maps/documentation/javascript/examples/style-array)
@@ -1,2 +1 @@
1
- /// <reference types="google.maps" />
2
1
  export declare const grey: google.maps.MapTypeStyle[];
@@ -1,2 +1 @@
1
- /// <reference types="google.maps" />
2
1
  export declare const minimal: google.maps.MapTypeStyle[];
@@ -1,2 +1 @@
1
- /// <reference types="google.maps" />
2
1
  export declare const retro: google.maps.MapTypeStyle[];
@@ -1,2 +1 @@
1
- /// <reference types="google.maps" />
2
1
  export declare const roadways: google.maps.MapTypeStyle[];
@@ -1,2 +1 @@
1
- /// <reference types="google.maps" />
2
1
  export declare const roadwaysMinimal: google.maps.MapTypeStyle[];
@@ -1,2 +1 @@
1
- /// <reference types="google.maps" />
2
1
  export declare const ultraLight: google.maps.MapTypeStyle[];
@@ -1,4 +1,3 @@
1
- /// <reference types="google.maps" />
2
1
  type ICustomMarkerInterface = google.maps.OverlayView & {
3
2
  getPosition(): google.maps.LatLng | null;
4
3
  getVisible(): boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vue3-google-map",
3
- "version": "0.23.0",
3
+ "version": "0.24.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -41,14 +41,18 @@
41
41
  "dev": "vite",
42
42
  "prepare": "pnpm run build",
43
43
  "clean": "rimraf dist/**/*",
44
- "lint": "npx eslint --ext .ts,.vue src dev docs --fix",
44
+ "lint": "npx eslint --ext .ts,.vue src playground --fix",
45
+ "lint:check": "npx eslint --ext .ts,.vue src playground",
45
46
  "build:umd": "node ./scripts/build-umd.js",
46
47
  "build": "pnpm clean && vue-tsc --declaration --emitDeclarationOnly --project tsconfig.build.json && vite build && pnpm build:umd",
47
48
  "docs": "vitepress dev docs",
48
49
  "docs:dev": "vitepress dev docs",
49
50
  "docs:build": "vitepress build docs",
50
51
  "docs:serve": "vitepress serve docs",
51
- "release": "standard-version"
52
+ "release": "standard-version",
53
+ "test": "jest",
54
+ "test:watch": "jest --watch",
55
+ "test:coverage": "jest --coverage"
52
56
  },
53
57
  "dependencies": {
54
58
  "@googlemaps/js-api-loader": "^1.16.2",
@@ -56,31 +60,40 @@
56
60
  "fast-deep-equal": "^3.1.3"
57
61
  },
58
62
  "devDependencies": {
59
- "pnpm": "^8.7.6",
63
+ "@babel/core": "^7.28.0",
64
+ "@googlemaps/jest-mocks": "^2.22.6",
60
65
  "@types/google.maps": "^3.58.1",
66
+ "@types/jest": "^29.5.14",
61
67
  "@typescript-eslint/eslint-plugin": "^4.33.0",
62
68
  "@typescript-eslint/parser": "^4.33.0",
63
69
  "@vitejs/plugin-vue": "^4.3.1",
64
70
  "@vue/eslint-config-prettier": "^6.0.0",
65
71
  "@vue/eslint-config-typescript": "^7.0.0",
72
+ "@vue/test-utils": "^2.4.6",
73
+ "@vue/vue3-jest": "^29.2.6",
74
+ "babel-jest": "29.7.0",
66
75
  "eslint": "^7.32.0",
67
76
  "eslint-config-prettier": "^8.10.0",
68
77
  "eslint-plugin-prettier": "^3.4.1",
69
78
  "eslint-plugin-vue": "^7.20.0",
79
+ "jest": "^29.7.0",
80
+ "jest-environment-jsdom": "^29.7.0",
81
+ "pnpm": "^10.13.1",
70
82
  "prettier": "^2.8.8",
71
83
  "rimraf": "^5.0.1",
72
84
  "standard-version": "^9.5.0",
85
+ "ts-jest": "^29.4.0",
73
86
  "typescript": "^5.1.6",
74
87
  "vite": "^4.5.3",
75
88
  "vite-plugin-css-injected-by-js": "^3.2.1",
76
89
  "vitepress": "^1.0.0-rc.40",
77
90
  "vue": "^3.3.4",
78
- "vue-tsc": "^1.8.8"
91
+ "vue-tsc": "^3.0.3"
79
92
  },
80
93
  "peerDependencies": {
81
94
  "vue": "^3"
82
95
  },
83
96
  "engines": {
84
- "node": ">=16.11.0"
97
+ "node": ">=18.12.0"
85
98
  }
86
99
  }