Socket
Socket
Sign inDemoInstall

@react-google-maps/marker-clusterer

Package Overview
Dependencies
Maintainers
2
Versions
68
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@react-google-maps/marker-clusterer - npm Package Compare versions

Comparing version 2.2.0 to 2.3.0

dist/cjs.js

187

dist/index.d.ts

@@ -0,1 +1,183 @@

/// <reference types="googlemaps" />
/* globals google */
interface ClusterIconInfo {
text: string;
index: number;
title: string;
}
type MarkerExtended = google.maps.Marker & {
isAdded?: boolean;
};
type TCalculator = (markers: MarkerExtended[], num: number) => ClusterIconInfo;
interface ClustererOptions {
gridSize?: number;
maxZoom?: number;
zoomOnClick?: boolean;
averageCenter?: boolean;
minimumClusterSize?: number;
ignoreHidden?: boolean;
title?: string;
calculator?: TCalculator;
clusterClass?: string;
styles?: ClusterIconStyle[];
enableRetinaIcons?: boolean;
batchSize?: number;
batchSizeIE?: number;
imagePath?: string;
imageExtension?: string;
imageSizes?: number[];
}
interface ClusterIconStyle {
url: string;
className?: string;
height: number;
width: number;
anchorText?: number[];
anchorIcon?: number[];
textColor?: string;
textSize?: number;
textDecoration?: string;
fontWeight?: string;
fontStyle?: string;
fontFamily?: string;
backgroundPosition?: string;
}
declare class ClusterIcon {
cluster: Cluster;
className: string;
styles: ClusterIconStyle[];
center: google.maps.LatLng | undefined;
div: HTMLDivElement | null;
sums: ClusterIconInfo | null;
visible: boolean;
url: string;
height: number;
width: number;
anchorText: number[];
anchorIcon: number[];
textColor: string;
textSize: number;
textDecoration: string;
fontWeight: string;
fontStyle: string;
fontFamily: string;
backgroundPosition: string;
boundsChangedListener: google.maps.MapsEventListener | null;
constructor(cluster: Cluster, styles: ClusterIconStyle[]);
onAdd(): void;
onRemove(): void;
draw(): void;
hide(): void;
show(): void;
useStyle(sums: ClusterIconInfo): void;
setCenter(center: google.maps.LatLng): void;
createCss(pos: google.maps.Point): string;
getPosFromLatLng(latlng: google.maps.LatLng): google.maps.Point;
}
declare class Cluster {
markerClusterer: Clusterer;
map: google.maps.Map | google.maps.StreetViewPanorama;
gridSize: number;
minClusterSize: number;
averageCenter: boolean;
markers: MarkerExtended[];
center: google.maps.LatLng | undefined;
bounds: google.maps.LatLngBounds | null;
clusterIcon: ClusterIcon;
constructor(markerClusterer: Clusterer);
getSize(): number;
getMarkers(): MarkerExtended[];
getCenter(): google.maps.LatLng | undefined;
getMap(): google.maps.Map | google.maps.StreetViewPanorama;
getClusterer(): Clusterer;
getBounds(): google.maps.LatLngBounds;
remove(): void;
addMarker(marker: MarkerExtended): boolean;
isMarkerInClusterBounds(marker: MarkerExtended): boolean;
calculateBounds(): void;
updateIcon(): void;
isMarkerAlreadyAdded(marker: MarkerExtended): boolean;
}
declare class Clusterer {
markers: MarkerExtended[];
clusters: Cluster[];
listeners: google.maps.MapsEventListener[];
activeMap: google.maps.Map | google.maps.StreetViewPanorama | null;
ready: boolean;
gridSize: number;
minClusterSize: number;
maxZoom: number | null;
styles: ClusterIconStyle[];
title: string;
zoomOnClick: boolean;
averageCenter: boolean;
ignoreHidden: boolean;
enableRetinaIcons: boolean;
imagePath: string;
imageExtension: string;
imageSizes: number[];
calculator: TCalculator;
batchSize: number;
batchSizeIE: number;
clusterClass: string;
timerRefStatic: number | null;
constructor(map: google.maps.Map, optMarkers?: MarkerExtended[], optOptions?: ClustererOptions);
onAdd(): void;
// eslint-disable-next-line @getify/proper-arrows/this
onRemove(): void;
// eslint-disable-next-line @typescript-eslint/no-empty-function
draw(): void;
setupStyles(): void;
fitMapToMarkers(): void;
getGridSize(): number;
setGridSize(gridSize: number): void;
getMinimumClusterSize(): number;
setMinimumClusterSize(minimumClusterSize: number): void;
getMaxZoom(): number | null;
setMaxZoom(maxZoom: number): void;
getStyles(): ClusterIconStyle[];
setStyles(styles: ClusterIconStyle[]): void;
getTitle(): string;
setTitle(title: string): void;
getZoomOnClick(): boolean;
setZoomOnClick(zoomOnClick: boolean): void;
getAverageCenter(): boolean;
setAverageCenter(averageCenter: boolean): void;
getIgnoreHidden(): boolean;
setIgnoreHidden(ignoreHidden: boolean): void;
getEnableRetinaIcons(): boolean;
setEnableRetinaIcons(enableRetinaIcons: boolean): void;
getImageExtension(): string;
setImageExtension(imageExtension: string): void;
getImagePath(): string;
setImagePath(imagePath: string): void;
getImageSizes(): number[];
setImageSizes(imageSizes: number[]): void;
getCalculator(): TCalculator;
setCalculator(calculator: TCalculator): void;
getBatchSizeIE(): number;
setBatchSizeIE(batchSizeIE: number): void;
getClusterClass(): string;
setClusterClass(clusterClass: string): void;
getMarkers(): MarkerExtended[];
getTotalMarkers(): number;
getClusters(): Cluster[];
getTotalClusters(): number;
addMarker(marker: MarkerExtended, optNoDraw: boolean): void;
addMarkers(markers: MarkerExtended[], optNoDraw: boolean): void;
pushMarkerTo(marker: MarkerExtended): void;
removeMarker_(marker: MarkerExtended): boolean;
removeMarker(marker: MarkerExtended, optNoDraw: boolean): boolean;
removeMarkers(markers: MarkerExtended[], optNoDraw: boolean): boolean;
clearMarkers(): void;
repaint(): void;
getExtendedBounds(bounds: google.maps.LatLngBounds): google.maps.LatLngBounds;
redraw(): void;
resetViewport(optHide: boolean): void;
distanceBetweenPoints(p1: google.maps.LatLng, p2: google.maps.LatLng): number;
isMarkerInBounds(marker: MarkerExtended, bounds: google.maps.LatLngBounds): boolean;
addToClosestCluster(marker: MarkerExtended): void;
createClusters(iFirst: number): void;
extend(obj1: any, obj2: any): any;
}
/**

@@ -36,5 +218,2 @@ * @name MarkerClusterer for Google Maps V3

*/
export { Clusterer } from './Clusterer';
export { Cluster } from './Cluster';
export { ClusterIcon } from './ClusterIcon';
export { ClusterIconInfo, ClusterIconStyle, MarkerExtended, TCalculator, ClustererOptions, } from './types';
export { Clusterer, Cluster, ClusterIcon, ClusterIconInfo, ClusterIconStyle, MarkerExtended, TCalculator, ClustererOptions };

50

package.json
{
"name": "@react-google-maps/marker-clusterer",
"sideEffects": false,
"version": "2.2.0",
"version": "2.3.0",
"description": "Marker Clusterer for React.js Google Maps API",

@@ -12,2 +12,5 @@ "license": "MIT",

},
"contributors": [
"Kevin Brown <kevin.brown@exogee.com> (https://github.com/thekevinbrown)"
],
"repository": {

@@ -25,6 +28,6 @@ "type": "git",

},
"main": "dist/index.js",
"main": "dist/cjs.js",
"types": "dist/index.d.ts",
"unpkg": "dist/markerclusterer.umd.production.min.js",
"module": "dist/markerclusterer.esm.js",
"unpkg": "dist/umd.min.js",
"module": "dist/esm.js",
"files": [

@@ -44,3 +47,3 @@ "src/",

"prebuild": "rimraf dist",
"build": "npx tsdx build --name markerClusterer --format=cjs,esm,umd",
"build": "rollup --config",
"clean": "rimraf ./package-lock.json ./yarn.lock ./node_modules/ && yarn",

@@ -57,12 +60,14 @@ "update": "yarn-check -u",

"@getify/eslint-plugin-proper-arrows": "11.0.3",
"@types/babel-types": "7.0.9",
"@rollup/plugin-commonjs": "20.0.0",
"@rollup/plugin-node-resolve": "13.0.4",
"@types/babel-types": "7.0.11",
"@types/googlemaps": "3.43.3",
"@types/react-dom": "17.0.5",
"@typescript-eslint/eslint-plugin": "4.24.0",
"@typescript-eslint/parser": "4.24.0",
"@types/react-dom": "17.0.9",
"@typescript-eslint/eslint-plugin": "4.31.1",
"@typescript-eslint/parser": "4.31.1",
"awesome-typescript-loader": "5.2.1",
"eslint": "7.26.0",
"eslint-config-standard": "16.0.2",
"eslint": "7.32.0",
"eslint-config-standard": "16.0.3",
"eslint-config-standard-react": "11.0.1",
"eslint-import-resolver-typescript": "2.4.0",
"eslint-import-resolver-typescript": "2.5.0",
"eslint-plugin-ascii": "1.0.0",

@@ -72,10 +77,10 @@ "eslint-plugin-babel": "5.3.1",

"eslint-plugin-html": "6.1.2",
"eslint-plugin-import": "2.23.2",
"eslint-plugin-json": "3.0.0",
"eslint-plugin-import": "2.24.2",
"eslint-plugin-json": "3.1.0",
"eslint-plugin-jsx-a11y": "6.4.1",
"eslint-plugin-no-inferred-method-name": "2.0.0",
"eslint-plugin-node": "11.1.0",
"eslint-plugin-optimize-regex": "1.2.0",
"eslint-plugin-optimize-regex": "1.2.1",
"eslint-plugin-promise": "5.1.0",
"eslint-plugin-react": "7.23.2",
"eslint-plugin-react": "7.25.3",
"eslint-plugin-react-functional-set-state": "1.2.1",

@@ -86,13 +91,14 @@ "eslint-plugin-react-hooks": "4.2.0",

"eslint-plugin-you-dont-need-lodash-underscore": "6.12.0",
"jest": "26.6.3",
"jest-cli": "26.6.3",
"jest": "27.2.0",
"jest-cli": "27.2.0",
"react": "17.0.2",
"react-dom": "17.0.2",
"rimraf": "3.0.2",
"ts-jest": "26.5.6",
"tsdx": "0.14.1",
"typescript": "4.2.4",
"webpack": "5.37.1"
"rollup": "2.56.3",
"rollup-plugin-terser": "7.0.2",
"rollup-plugin-ts": "1.4.2",
"ts-jest": "27.0.5",
"typescript": "4.4.3"
},
"gitHead": "80167ddcc3d8e356dbf0b0c3a6292c6a3a989f83"
}
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