@mdchristians/react-leaflet-cluster
Version:
React-leaflet-cluster is a plugin for react-leaflet. A wrapper component of Leaflet.markercluster.
1 lines • 2.17 kB
JavaScript
;var __assign=this&&this.__assign||function(){return(__assign=Object.assign||function(e){for(var r,t=1,n=arguments.length;t<n;t++)for(var a in r=arguments[t])Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a]);return e}).apply(this,arguments)},__rest=this&&this.__rest||function(e,r){var t={};for(a in e)Object.prototype.hasOwnProperty.call(e,a)&&r.indexOf(a)<0&&(t[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var n=0,a=Object.getOwnPropertySymbols(e);n<a.length;n++)r.indexOf(a[n])<0&&Object.prototype.propertyIsEnumerable.call(e,a[n])&&(t[a[n]]=e[a[n]]);return t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},core_1=(Object.defineProperty(exports,"__esModule",{value:!0}),require("@react-leaflet/core")),leaflet_1=__importDefault(require("leaflet")),react_1=(require("leaflet.markercluster"),require("react"));function getPropsAndEvents(e){var n={},a={},e=(e.children,__rest(e,["children"]));return Object.entries(e).forEach(function(e){var r,t=e[0],e=e[1];t.startsWith("on")?a=__assign(__assign({},a),((r={})[t]=e,r)):n=__assign(__assign({},n),((r={})[t]=e,r))}),[n,a]}function createMarkerCluster(e,r){var e=getPropsAndEvents(e),t=e[0],n=e[1],a=new leaflet_1.default.MarkerClusterGroup(t);return(0,react_1.useEffect)(function(){return Object.entries(n).forEach(function(e){var r=e[0],e=e[1],r="cluster".concat(r.substring(2).toLowerCase());a.on(r,e)}),function(){Object.entries(n).forEach(function(e){e=e[0],e="cluster".concat(e.substring(2).toLowerCase());a.removeEventListener(e)})}},[n,a]),{instance:a,context:__assign(__assign({},r),{layerContainer:a})}}delete leaflet_1.default.Icon.Default.prototype._getIconUrl,leaflet_1.default.Icon.Default.mergeOptions({iconRetinaUrl:require("leaflet/dist/images/marker-icon-2x.png").default,iconUrl:require("leaflet/dist/images/marker-icon.png").default,shadowUrl:require("leaflet/dist/images/marker-shadow.png").default});var updateMarkerCluster=function(e,r,t){r.showCoverageOnHover,t.showCoverageOnHover},MarkerClusterGroup=(0,core_1.createPathComponent)(createMarkerCluster,updateMarkerCluster);exports.default=MarkerClusterGroup;