Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

vue3-google-map

Package Overview
Dependencies
Maintainers
2
Versions
44
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

vue3-google-map - npm Package Compare versions

Comparing version 0.15.0 to 0.16.0

dist/index.cjs.js

4

dist/types/@types/index.d.ts
/// <reference types="google.maps" />
import * as themes from "../themes/index";
export declare type IControlPosition = keyof typeof google.maps.ControlPosition;
export declare type ITheme = keyof typeof themes;
export type IControlPosition = keyof typeof google.maps.ControlPosition;
export type ITheme = keyof typeof themes;

@@ -10,5 +10,10 @@ /// <reference types="google.maps" />

circle: import("vue").Ref<google.maps.Circle | undefined>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
options: google.maps.CircleOptions;
} & {}>, {}>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
options: {
type: PropType<google.maps.CircleOptions>;
required: true;
};
}>> & {
[x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
}, {}, {}>;
export default _default;

@@ -14,8 +14,16 @@ import { PropType, Ref } from "vue";

showContent: Ref<boolean>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "content:loaded"[], "content:loaded", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
position: "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT";
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "content:loaded"[], "content:loaded", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
position: {
type: PropType<"BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
required: true;
};
index: {
type: NumberConstructor;
default: number;
};
}>> & {
"onContent:loaded"?: ((...args: any[]) => any) | undefined;
}, {
index: number;
} & {}>, {
index: number;
}>;
}, {}>;
export default _default;

@@ -16,5 +16,8 @@ /// <reference types="google.maps" />

hasSlotContent: import("vue").ComputedRef<boolean | undefined>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
options: google.maps.CustomMarkerOptions;
} & {}>, {}>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
options: {
type: PropType<google.maps.CustomMarkerOptions>;
required: true;
};
}>>, {}, {}>;
export default _default;

@@ -16,3 +16,3 @@ /// <reference types="google.maps" />

libraries: {
type: PropType<("drawing" | "geometry" | "localContext" | "places" | "visualization")[]>;
type: PropType<("geometry" | "drawing" | "localContext" | "places" | "visualization")[]>;
default: () => string[];

@@ -81,3 +81,3 @@ };

gestureHandling: {
type: PropType<"cooperative" | "greedy" | "none" | "auto">;
type: PropType<"none" | "cooperative" | "greedy" | "auto">;
required: false;

@@ -200,56 +200,202 @@ };

mapTilesLoaded: import("vue").Ref<boolean>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
apiKey: string;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
apiPromise: {
type: PropType<Promise<typeof google>>;
};
apiKey: {
type: StringConstructor;
default: string;
};
version: {
type: StringConstructor;
default: string;
};
libraries: {
type: PropType<("geometry" | "drawing" | "localContext" | "places" | "visualization")[]>;
default: () => string[];
};
region: {
type: StringConstructor;
required: false;
};
language: {
type: StringConstructor;
required: false;
};
backgroundColor: {
type: StringConstructor;
required: false;
};
center: {
type: PropType<google.maps.LatLng | google.maps.LatLngLiteral>;
default: () => {
lat: number;
lng: number;
};
};
clickableIcons: {
type: BooleanConstructor;
required: false;
default: undefined;
};
controlSize: {
type: NumberConstructor;
required: false;
};
disableDefaultUi: {
type: BooleanConstructor;
required: false;
default: undefined;
};
disableDoubleClickZoom: {
type: BooleanConstructor;
required: false;
default: undefined;
};
draggable: {
type: BooleanConstructor;
required: false;
default: undefined;
};
draggableCursor: {
type: StringConstructor;
required: false;
};
draggingCursor: {
type: StringConstructor;
required: false;
};
fullscreenControl: {
type: BooleanConstructor;
required: false;
default: undefined;
};
fullscreenControlPosition: {
type: PropType<"BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
required: false;
};
gestureHandling: {
type: PropType<"none" | "cooperative" | "greedy" | "auto">;
required: false;
};
heading: {
type: NumberConstructor;
required: false;
};
keyboardShortcuts: {
type: BooleanConstructor;
required: false;
default: undefined;
};
mapTypeControl: {
type: BooleanConstructor;
required: false;
default: undefined;
};
mapTypeControlOptions: {
type: PropType<google.maps.MapTypeControlOptions>;
required: false;
};
mapTypeId: {
type: PropType<string>;
required: false;
};
mapId: {
type: StringConstructor;
required: false;
};
maxZoom: {
type: NumberConstructor;
required: false;
};
minZoom: {
type: NumberConstructor;
required: false;
};
noClear: {
type: BooleanConstructor;
required: false;
default: undefined;
};
panControl: {
type: BooleanConstructor;
required: false;
default: undefined;
};
panControlPosition: {
type: PropType<"BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
required: false;
};
restriction: {
type: PropType<google.maps.MapRestriction>;
required: false;
};
rotateControl: {
type: BooleanConstructor;
required: false;
default: undefined;
};
rotateControlPosition: {
type: PropType<"BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
required: false;
};
scaleControl: {
type: BooleanConstructor;
required: false;
default: undefined;
};
scaleControlStyle: {
type: PropType<google.maps.ScaleControlStyle>;
required: false;
};
scrollwheel: {
type: BooleanConstructor;
required: false;
default: undefined;
};
streetView: {
type: PropType<google.maps.StreetViewPanorama>;
required: false;
};
streetViewControl: {
type: BooleanConstructor;
required: false;
default: undefined;
};
streetViewControlPosition: {
type: PropType<"BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
required: false;
};
styles: {
type: PropType<google.maps.MapTypeStyle[]>;
required: false;
};
tilt: {
type: NumberConstructor;
required: false;
};
zoom: {
type: NumberConstructor;
required: false;
};
zoomControl: {
type: BooleanConstructor;
required: false;
default: undefined;
};
zoomControlPosition: {
type: PropType<"BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT">;
required: false;
};
}>> & {
[x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
}, {
draggable: boolean;
center: google.maps.LatLng | google.maps.LatLngLiteral;
version: string;
libraries: ("drawing" | "geometry" | "localContext" | "places" | "visualization")[];
center: google.maps.LatLng | google.maps.LatLngLiteral;
clickableIcons: boolean;
disableDefaultUi: boolean;
disableDoubleClickZoom: boolean;
draggable: boolean;
fullscreenControl: boolean;
keyboardShortcuts: boolean;
mapTypeControl: boolean;
noClear: boolean;
panControl: boolean;
rotateControl: boolean;
scaleControl: boolean;
scrollwheel: boolean;
streetViewControl: boolean;
zoomControl: boolean;
} & {
apiPromise?: Promise<typeof google> | undefined;
region?: string | undefined;
language?: string | undefined;
backgroundColor?: string | undefined;
controlSize?: number | undefined;
draggableCursor?: string | undefined;
draggingCursor?: string | undefined;
fullscreenControlPosition?: "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT" | undefined;
gestureHandling?: "cooperative" | "greedy" | "none" | "auto" | undefined;
heading?: number | undefined;
mapTypeControlOptions?: google.maps.MapTypeControlOptions | undefined;
mapTypeId?: string | undefined;
mapId?: string | undefined;
maxZoom?: number | undefined;
minZoom?: number | undefined;
panControlPosition?: "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT" | undefined;
restriction?: google.maps.MapRestriction | undefined;
rotateControlPosition?: "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT" | undefined;
scaleControlStyle?: google.maps.ScaleControlStyle | undefined;
streetView?: google.maps.StreetViewPanorama | undefined;
streetViewControlPosition?: "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT" | undefined;
styles?: google.maps.MapTypeStyle[] | undefined;
tilt?: number | undefined;
zoom?: number | undefined;
zoomControlPosition?: "BOTTOM_CENTER" | "BOTTOM_LEFT" | "BOTTOM_RIGHT" | "LEFT_BOTTOM" | "LEFT_CENTER" | "LEFT_TOP" | "RIGHT_BOTTOM" | "RIGHT_CENTER" | "RIGHT_TOP" | "TOP_CENTER" | "TOP_LEFT" | "TOP_RIGHT" | undefined;
}>, {
apiKey: string;
version: string;
libraries: ("drawing" | "geometry" | "localContext" | "places" | "visualization")[];
center: google.maps.LatLng | google.maps.LatLngLiteral;
libraries: ("geometry" | "drawing" | "localContext" | "places" | "visualization")[];
clickableIcons: boolean;
disableDefaultUi: boolean;
disableDoubleClickZoom: boolean;
draggable: boolean;
fullscreenControl: boolean;

@@ -265,3 +411,3 @@ keyboardShortcuts: boolean;

zoomControl: boolean;
}>;
}, {}>;
export default _default;
/// <reference types="google.maps" />
import { PropType } from "vue";
declare type HeatmapLayerOptions = google.maps.visualization.HeatmapLayerOptions;
type HeatmapLayerOptions = google.maps.visualization.HeatmapLayerOptions;
interface ExtendedHeatmapLayerOptions extends Omit<HeatmapLayerOptions, "data"> {

@@ -16,7 +16,10 @@ data: HeatmapLayerOptions["data"] | (google.maps.LatLngLiteral | {

heatmapLayer: import("vue").Ref<google.maps.visualization.HeatmapLayer | undefined>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
options: {
type: PropType<ExtendedHeatmapLayerOptions>;
default: () => {};
};
}>>, {
options: ExtendedHeatmapLayerOptions;
} & {}>, {
options: ExtendedHeatmapLayerOptions;
}>;
}, {}>;
export default _default;

@@ -0,0 +0,0 @@ export { default as GoogleMap } from "./GoogleMap.vue";

@@ -12,7 +12,14 @@ /// <reference types="google.maps" />

hasSlotContent: import("vue").ComputedRef<boolean | undefined>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
open: (opts?: google.maps.InfoWindowOpenOptions) => void | undefined;
close: () => void | undefined;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
options: {
type: PropType<google.maps.InfoWindowOptions>;
default: () => {};
};
}>> & {
[x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
}, {
options: google.maps.InfoWindowOptions;
} & {}>, {
options: google.maps.InfoWindowOptions;
}>;
}, {}>;
export default _default;

@@ -10,5 +10,10 @@ /// <reference types="google.maps" />

[key: string]: any;
}>[] | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
options: google.maps.MarkerOptions;
} & {}>, {}>;
}>[] | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
options: {
type: PropType<google.maps.MarkerOptions>;
required: true;
};
}>> & {
[x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
}, {}, {}>;
export default _default;

@@ -10,7 +10,14 @@ import { PropType } from "vue";

[key: string]: any;
}>[] | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, MarkerClustererEvents[], MarkerClustererEvents, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
}>[] | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, MarkerClustererEvents[], MarkerClustererEvents, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
options: {
type: PropType<MarkerClustererOptions>;
default: () => {};
};
}>> & {
onClick?: ((...args: any[]) => any) | undefined;
onClusteringbegin?: ((...args: any[]) => any) | undefined;
onClusteringend?: ((...args: any[]) => any) | undefined;
}, {
options: MarkerClustererOptions;
} & {}>, {
options: MarkerClustererOptions;
}>;
}, {}>;
export default _default;

@@ -10,5 +10,10 @@ /// <reference types="google.maps" />

polygon: import("vue").Ref<google.maps.Polygon | undefined>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
options: google.maps.PolygonOptions;
} & {}>, {}>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
options: {
type: PropType<google.maps.PolygonOptions>;
required: true;
};
}>> & {
[x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
}, {}, {}>;
export default _default;

@@ -10,5 +10,10 @@ /// <reference types="google.maps" />

polyline: import("vue").Ref<google.maps.Polyline | undefined>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
options: google.maps.PolylineOptions;
} & {}>, {}>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
options: {
type: PropType<google.maps.PolylineOptions>;
required: true;
};
}>> & {
[x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
}, {}, {}>;
export default _default;

@@ -10,5 +10,10 @@ /// <reference types="google.maps" />

rectangle: import("vue").Ref<google.maps.Rectangle | undefined>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
options: google.maps.RectangleOptions;
} & {}>, {}>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
options: {
type: PropType<google.maps.RectangleOptions>;
required: true;
};
}>> & {
[x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
}, {}, {}>;
export default _default;
export * from "./useSetupMapComponent";
/// <reference types="google.maps" />
import { Ref } from "vue";
import { customMarkerClassSymbol } from "../shared/index";
declare type ICtorKey = "Marker" | "Polyline" | "Polygon" | "Rectangle" | "Circle" | typeof customMarkerClassSymbol;
declare type IComponent<T> = T extends "Marker" ? google.maps.Marker : T extends "Polyline" ? google.maps.Polyline : T extends "Polygon" ? google.maps.Polygon : T extends "Rectangle" ? google.maps.Rectangle : T extends "Circle" ? google.maps.Circle : T extends typeof customMarkerClassSymbol ? InstanceType<typeof google.maps.CustomMarker> : never;
declare type IComponentOptions<T> = T extends "Marker" ? google.maps.MarkerOptions : T extends "Polyline" ? google.maps.PolylineOptions : T extends "Polygon" ? google.maps.PolygonOptions : T extends "Rectangle" ? google.maps.RectangleOptions : T extends "Circle" ? google.maps.CircleOptions : T extends typeof customMarkerClassSymbol ? google.maps.CustomMarkerOptions & {
type ICtorKey = "Marker" | "Polyline" | "Polygon" | "Rectangle" | "Circle" | typeof customMarkerClassSymbol;
type IComponent<T> = T extends "Marker" ? google.maps.Marker : T extends "Polyline" ? google.maps.Polyline : T extends "Polygon" ? google.maps.Polygon : T extends "Rectangle" ? google.maps.Rectangle : T extends "Circle" ? google.maps.Circle : T extends typeof customMarkerClassSymbol ? InstanceType<typeof google.maps.CustomMarker> : never;
type IComponentOptions<T> = T extends "Marker" ? google.maps.MarkerOptions : T extends "Polyline" ? google.maps.PolylineOptions : T extends "Polygon" ? google.maps.PolygonOptions : T extends "Rectangle" ? google.maps.RectangleOptions : T extends "Circle" ? google.maps.CircleOptions : T extends typeof customMarkerClassSymbol ? google.maps.CustomMarkerOptions & {
element?: HTMLElement;

@@ -8,0 +8,0 @@ } : never;

@@ -1,3 +0,1 @@

export * from "./shims-google-maps-d";
export * from "./@types/index";
export * from "./components/index";
/// <reference types="google.maps" />
import type { MarkerClusterer } from "@googlemaps/markerclusterer";
import { InjectionKey, Ref } from "vue";
export declare const mapSymbol: InjectionKey<Ref<google.maps.Map>>;
export declare const apiSymbol: InjectionKey<Ref<typeof google.maps>>;
export declare const markerSymbol: InjectionKey<Ref<google.maps.Marker>>;
export declare const markerClusterSymbol: InjectionKey<Ref<MarkerClusterer>>;
export declare const mapSymbol: InjectionKey<Ref<google.maps.Map | undefined>>;
export declare const apiSymbol: InjectionKey<Ref<typeof google.maps | undefined>>;
export declare const markerSymbol: InjectionKey<Ref<google.maps.Marker | undefined>>;
export declare const markerClusterSymbol: InjectionKey<Ref<MarkerClusterer | undefined>>;
export declare const customMarkerClassSymbol: "CustomMarker";

@@ -9,0 +9,0 @@ /**

/// <reference types="google.maps" />
declare type ICustomMarkerInterface = google.maps.OverlayView & {
type ICustomMarkerInterface = google.maps.OverlayView & {
getPosition(): google.maps.LatLng | null;

@@ -4,0 +4,0 @@ getVisible(): boolean;

{
"name": "vue3-google-map",
"version": "0.15.0",
"version": "0.16.0",
"license": "MIT",

@@ -11,6 +11,6 @@ "repository": {

"description": "A set of composable components for easy use of Google Maps in your Vue 3 projects.",
"unpkg": "dist/cjs/index.js",
"jsdelivr": "dist/cjs/index.js",
"main": "dist/cjs/index.js",
"module": "dist/es/index.js",
"unpkg": "dist/index.umd.js",
"jsdelivr": "dist/index.umd.js",
"main": "dist/index.cjs.js",
"module": "dist/index.es.js",
"files": [

@@ -21,6 +21,11 @@ "dist"

".": {
"import": "./dist/es/index.js",
"require": "./dist/cjs/index.js"
"import": "./dist/index.es.js",
"require": "./dist/index.cjs.js",
"types": "./dist/types/index.d.ts"
},
"./themes": "./dist/themes/es/index.js",
"./themes": {
"import": "./dist/themes/index.es.js",
"require": "./dist/themes/index.cjs.js",
"types": "./dist/types/themes/index.d.ts"
},
"./package.json": "./package.json"

@@ -34,3 +39,3 @@ },

"themes": [
"dist/themes/types/index.d.ts"
"dist/types/themes/index.d.ts"
]

@@ -41,12 +46,6 @@ }

"dev": "vite",
"autoindex": "yarn do autoindex --sfc",
"clear": "rimraf dist/**/*",
"lint": "run-s lint:eslint lint:tsc",
"lint:eslint": "npx eslint --ext .ts,.vue src dev docs --fix",
"lint:tsc": "npx tsc --noEmit ",
"build": "run-s clear autoindex build:closure ",
"build:bundle": "node ./build/build commonjs esnext",
"build:min": "node ./build/build commonjs esnext --min",
"build:analyze": "node ./build/build esnext --analyze",
"build:closure": "node ./build/build commonjs esnext --closure",
"clean": "rimraf dist/**/*",
"lint": "npx eslint --ext .ts,.vue src dev docs --fix",
"build:umd": "node ./scripts/build-umd.js",
"build": "pnpm clean && vue-tsc --declaration --emitDeclarationOnly --project tsconfig.build.json && vite build && pnpm build:umd",
"docs": "vitepress dev docs",

@@ -61,18 +60,12 @@ "docs:dev": "vitepress dev docs",

"@googlemaps/markerclusterer": "^2.0.6",
"fast-deep-equal": "^3.1.3"
"fast-deep-equal": "^3.1.3",
"vite-plugin-css-injected-by-js": "^3.2.1"
},
"devDependencies": {
"@ampproject/rollup-plugin-closure-compiler": "^0.26.0",
"@rollup/plugin-commonjs": "^19.0.0",
"@rollup/plugin-json": "^4.1.0",
"@rollup/plugin-node-resolve": "^13.0.0",
"@types/google.maps": "^3.45.6",
"@typescript-eslint/eslint-plugin": "^4.25.0",
"@typescript-eslint/parser": "^4.25.0",
"@vitejs/plugin-vue": "^1.2.2",
"@vue/compiler-sfc": "^3.0.0",
"@vitejs/plugin-vue": "^4.2.3",
"@vue/eslint-config-prettier": "^6.0.0",
"@vue/eslint-config-typescript": "^7.0.0",
"cross-env": "^7.0.2",
"dd": "^0.11.3",
"eslint": "^7.27.0",

@@ -82,28 +75,19 @@ "eslint-config-prettier": "^8.2.0",

"eslint-plugin-vue": "^7.9.0",
"minimist": "^1.2.5",
"npm-run-all": "^4.1.5",
"postcss": "^8.3.2",
"prettier": "^2.1.2",
"rimraf": "^3.0.2",
"rollup": "^2.50.4",
"rollup-plugin-analyzer": "^4.0.0",
"rollup-plugin-babel": "^4.4.0",
"rollup-plugin-postcss": "^4.0.0",
"rollup-plugin-terser": "^7.0.2",
"rollup-plugin-typescript2": "^0.30.0",
"rollup-plugin-vue": "^6.0.0",
"standard-version": "^9.3.2",
"ttypescript": "^1.5.12",
"typescript": "^4.8.2",
"typescript-transform-paths": "^2.2.4",
"vite": "^2.3.4",
"typescript": "^5.0.2",
"vite": "^4.4.5",
"vitepress": "^0.14.0",
"vue": "3"
"vue": "^3.3.4",
"vue-tsc": "^1.8.5"
},
"peerDependencies": {
"vue": "3"
"vue": "^3.3.4"
},
"engines": {
"node": ">=12"
"node": ">=18.17.0"
}
}

@@ -24,2 +24,3 @@ # vue3-google-map

- [Marker Cluster](#marker-cluster)
- [Heatmap Layer](#heatmap-layer)
- [Advanced Usage](#advanced-usage)

@@ -608,3 +609,59 @@ - [Contribution](#contribution)

### Heatmap Layer
Use the `HeatmapLayer` component to depict the intensity of data at geographical points on the map. Make sure to include the `visualization` library in the `libraries` prop of the `GoogleMap` component.
#### Options
You can pass a [HeatmapLayerOptions](https://developers.google.com/maps/documentation/javascript/reference/visualization#HeatmapLayerOptions) object to the `options` prop to configure your heatmap layer. Note that for convenience you can use [LatLngLiteral](https://developers.google.com/maps/documentation/javascript/reference/coordinates#LatLngLiteral)s if you wish for the locations.
```vue
<template>
<GoogleMap
api-key="YOUR_GOOGLE_MAPS_API_KEY"
:libraries="['visualization']"
style="width: 100%; height: 500px"
:center="sanFrancisco"
:zoom="13"
>
<HeatmapLayer :options="{ data: heatmapData }" />
</GoogleMap>
</template>
<script>
import { defineComponent } from "vue";
import { GoogleMap, HeatmapLayer } from "vue3-google-map";
export default defineComponent({
components: { GoogleMap, HeatmapLayer },
setup() {
const sanFrancisco = { lat: 37.774546, lng: -122.433523 }
const heatmapData = [
{ location: { lat: 37.782, lng: -122.447 }, weight: 0.5 },
{ lat: 37.782, lng: -122.445 },
{ location: { lat: 37.782, lng: -122.443 }, weight: 2 },
{ location: { lat: 37.782, lng: -122.441 }, weight: 3 },
{ location: { lat: 37.782, lng: -122.439 }, weight: 2 },
{ lat: 37.782, lng: -122.437 },
{ location: { lat: 37.782, lng: -122.435 }, weight: 0.5 },
{ location: { lat: 37.785, lng: -122.447 }, weight: 3 },
{ location: { lat: 37.785, lng: -122.445 }, weight: 2 },
{ lat: 37.785, lng: -122.443 },
{ location: { lat: 37.785, lng: -122.441 }, weight: 0.5 },
{ lat: 37.785, lng: -122.439 },
{ location: { lat: 37.785, lng: -122.437 }, weight: 2 },
{ location: { lat: 37.785, lng: -122.435 }, weight: 3 },
];
return {
sanFrancisco,
heatmapData,
}
},
});
</script>
```
## Advanced Usage

@@ -611,0 +668,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc