@react-google-maps/marker-clusterer
Advanced tools
Comparing version 2.2.0 to 2.3.0
@@ -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 }; |
{ | ||
"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" | ||
} |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 1 instance in 1 package
553858
4744
0
40
22
1