{"version":3,"sources":["webpack:///./src/components/system/GoogleMap.vue?b946","webpack:///./node_modules/@googlemaps/js-api-loader/dist/index.esm.js","webpack:///./node_modules/@googlemaps/markerclustererplus/dist/index.esm.js","webpack:///./src/components/system/GoogleMap.vue","webpack:///./src/components/system/GoogleMap.vue?1888","webpack:///./src/components/system/GoogleMap.vue?ab8a","webpack:///./src/components/system/GoogleMap.vue?0e89"],"names":["render","_vm","this","_h","$createElement","_self","_c","_m","staticRenderFns","attrs","_v","fastDeepEqual","equal","a","b","constructor","length","i","keys","Array","isArray","RegExp","source","flags","valueOf","Object","prototype","toString","hasOwnProperty","call","key","DEFAULT_ID","Loader","apiKey","channel","client","id","libraries","language","region","version","mapIds","nonce","retries","url","CALLBACK","callbacks","done","loading","errors","instance","options","Error","JSON","stringify","join","loadPromise","Promise","resolve","reject","loadCallback","err","fn","push","execute","document","getElementById","callback","createUrl","script","createElement","type","src","onerror","loadErrorCallback","bind","defer","async","head","appendChild","remove","deleteScript","onerrorEvent","failed","reset","e","delay","Math","pow","console","log","setTimeout","setScript","window","__googleMapsCallback","forEach","cb","resetIfRetryingFailed","google","maps","warn","setCallback","extendStatics","d","setPrototypeOf","__proto__","p","__extends","TypeError","String","__","create","__assign","assign","t","s","n","arguments","apply","extend","type1","type2","property","OverlayViewSafe","OverlayView","toCssText","styles","reduce","acc","coercePixels","pixels","undefined","ClusterIcon","_super","cluster_","styles_","_this","center_","div_","sums_","visible_","style","setMap","getMap","onAdd","cMouseDownInCluster","cDraggingMapByCluster","mc","getMarkerClusterer","_a","split","major","minor","gmVersion","parseInt","show","getPanes","overlayMouseTarget","boundsChangedListener_","event","addListener","addDomListener","stopPropagation","trigger","getZoomOnClick","mz_1","getMaxZoom","theBounds_1","getBounds","fitBounds","getZoom","setZoom","cancelBubble","onRemove","parentNode","hide","removeListener","clearInstanceListeners","removeChild","draw","pos","getPosFromLatLng_","top","y","left","x","display","className","className_","cssText","createCss_","innerHTML","getImageElementHtml","getLabelDivHtml","title","getTitle","ariaLabel","ariaLabelFn","text","divStyle","position","anchorText_","color","textColor","textSize","fontFamily","fontWeight","fontStyle","textDecoration","width","textLineHeight","bp","backgroundPosition","spriteH","replace","spriteV","dimensions","getEnableRetinaIcons","height","Y1","X1","Y2","X2","clip","overrideDimensionsDynamicIcon","useStyle","sums","index","max","min","anchorText","anchorIcon_","anchorIcon","floor","getClusterClass","setCenter","center","getZIndex","cursor","latlng","getProjection","fromLatLngToDivPixel","Cluster","markerClusterer_","map_","minClusterSize_","getMinimumClusterSize","averageCenter_","getAverageCenter","markers_","bounds_","clusterIcon_","getStyles","getSize","getMarkers","getCenter","bounds","LatLngBounds","markers","getPosition","addMarker","marker","isMarkerAlreadyAdded_","l","lat","lng","LatLng","calculateBounds_","isAdded","mCount","mz","isMarkerInClusterBounds","contains","getExtendedBounds","updateIcon","numStyles","getCalculator","indexOf","getOption","prop","def","MarkerClusterer","map","clusters_","listeners_","activeMap_","ready_","zIndex_","zIndex","Number","Marker","MAX_ZINDEX","gridSize_","gridSize","minimumClusterSize","maxZoom_","maxZoom","title_","zoomOnClick_","ignoreHidden_","enableRetinaIcons_","imagePath_","imagePath","IMAGE_PATH","imageExtension_","imageExtension","IMAGE_EXTENSION","imageSizes_","imageSizes","IMAGE_SIZES","calculator_","calculator","CALCULATOR","batchSize_","batchSize","BATCH_SIZE","batchSizeIE_","batchSizeIE","BATCH_SIZE_IE","clusterClass_","clusterClass","navigator","userAgent","toLowerCase","setupStyles_","addMarkers","repaint","prevZoom_","minZoom","mapTypes","getMapTypeId","zoom","resetViewport_","redraw_","size","withDefaultStyle","fitMapToMarkers","padding","getVisible","getIgnoreHidden","getGridSize","setGridSize","setMinimumClusterSize","setMaxZoom","setZIndex","setStyles","setTitle","setZoomOnClick","zoomOnClick","setAverageCenter","averageCenter","setIgnoreHidden","ignoreHidden","setEnableRetinaIcons","enableRetinaIcons","getImageExtension","setImageExtension","getImagePath","setImagePath","getImageSizes","setImageSizes","setCalculator","getBatchSizeIE","setBatchSizeIE","setClusterClass","getTotalMarkers","getClusters","getTotalClusters","nodraw","pushMarkerTo_","getDraggable","removeMarker","removed","removeMarker_","removeMarkers","r","splice","clearMarkers","oldClusters","slice","projection","tr","getNorthEast","bl","getSouthWest","trPix","blPix","ne","fromDivPixelToLatLng","sw","createClusters_","distanceBetweenPoints_","p1","p2","R","dLat","PI","dLon","sin","cos","c","atan2","sqrt","isMarkerInBounds_","addToClosestCluster_","distance","clusterToAddTo","cluster","iFirst","mapBounds","timerRefStatic","clearTimeout","iLast","count","dv","overrides","loader","newLocations","newLoc","markerClusterer","markersArray","load","then","Map","mapConfig","locations","clusterMarkers","catch","loc","description","infoWindow","InfoWindow","setContent","open","setMapOnAll","hideMarkers","default","mapTypeControl","streetViewControl","component"],"mappings":"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","file":"js/chunk-23c5cfa8.1b545fa3.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{attrs:{\"id\":\"map\"}},[_vm._v(\"Map did not load\")])])}]\n\nexport { render, staticRenderFns }","// do not edit .js files directly - edit src/index.jst\n\n\n\nvar fastDeepEqual = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n\n/**\r\n * Copyright 2019 Google LLC. All Rights Reserved.\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at.\r\n *\r\n * Http://www.apache.org/licenses/LICENSE-2.0.\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\nconst DEFAULT_ID = \"__googleMapsScriptId\";\r\n/**\r\n * [[Loader]] makes it easier to add Google Maps JavaScript API to your application\r\n * dynamically using\r\n * [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise).\r\n * It works by dynamically creating and appending a script node to the the\r\n * document head and wrapping the callback function so as to return a promise.\r\n *\r\n * ```\r\n * const loader = new Loader({\r\n * apiKey: \"\",\r\n * version: \"weekly\",\r\n * libraries: [\"places\"]\r\n * });\r\n *\r\n * loader.load().then(() => {\r\n * const map = new google.maps.Map(...)\r\n * })\r\n * ```\r\n */\r\nclass Loader {\r\n /**\r\n * Creates an instance of Loader using [[LoaderOptions]]. No defaults are set\r\n * using this library, instead the defaults are set by the Google Maps\r\n * JavaScript API server.\r\n *\r\n * ```\r\n * const loader = Loader({apiKey, version: 'weekly', libraries: ['places']});\r\n * ```\r\n */\r\n constructor({ apiKey, channel, client, id = DEFAULT_ID, libraries = [], language, region, version, mapIds, nonce, retries = 3, url = \"https://maps.googleapis.com/maps/api/js\", }) {\r\n this.CALLBACK = \"__googleMapsCallback\";\r\n this.callbacks = [];\r\n this.done = false;\r\n this.loading = false;\r\n this.errors = [];\r\n this.version = version;\r\n this.apiKey = apiKey;\r\n this.channel = channel;\r\n this.client = client;\r\n this.id = id || DEFAULT_ID; // Do not allow empty string\r\n this.libraries = libraries;\r\n this.language = language;\r\n this.region = region;\r\n this.mapIds = mapIds;\r\n this.nonce = nonce;\r\n this.retries = retries;\r\n this.url = url;\r\n if (Loader.instance) {\r\n if (!fastDeepEqual(this.options, Loader.instance.options)) {\r\n throw new Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(Loader.instance.options)}`);\r\n }\r\n return Loader.instance;\r\n }\r\n Loader.instance = this;\r\n }\r\n get options() {\r\n return {\r\n version: this.version,\r\n apiKey: this.apiKey,\r\n channel: this.channel,\r\n client: this.client,\r\n id: this.id,\r\n libraries: this.libraries,\r\n language: this.language,\r\n region: this.region,\r\n mapIds: this.mapIds,\r\n nonce: this.nonce,\r\n url: this.url,\r\n };\r\n }\r\n get failed() {\r\n return this.done && !this.loading && this.errors.length >= this.retries + 1;\r\n }\r\n /**\r\n * CreateUrl returns the Google Maps JavaScript API script url given the [[LoaderOptions]].\r\n *\r\n * @ignore\r\n */\r\n createUrl() {\r\n let url = this.url;\r\n url += `?callback=${this.CALLBACK}`;\r\n if (this.apiKey) {\r\n url += `&key=${this.apiKey}`;\r\n }\r\n if (this.channel) {\r\n url += `&channel=${this.channel}`;\r\n }\r\n if (this.client) {\r\n url += `&client=${this.client}`;\r\n }\r\n if (this.libraries.length > 0) {\r\n url += `&libraries=${this.libraries.join(\",\")}`;\r\n }\r\n if (this.language) {\r\n url += `&language=${this.language}`;\r\n }\r\n if (this.region) {\r\n url += `®ion=${this.region}`;\r\n }\r\n if (this.version) {\r\n url += `&v=${this.version}`;\r\n }\r\n if (this.mapIds) {\r\n url += `&map_ids=${this.mapIds.join(\",\")}`;\r\n }\r\n return url;\r\n }\r\n /**\r\n * Load the Google Maps JavaScript API script and return a Promise.\r\n */\r\n load() {\r\n return this.loadPromise();\r\n }\r\n /**\r\n * Load the Google Maps JavaScript API script and return a Promise.\r\n *\r\n * @ignore\r\n */\r\n loadPromise() {\r\n return new Promise((resolve, reject) => {\r\n this.loadCallback((err) => {\r\n if (!err) {\r\n resolve();\r\n }\r\n else {\r\n reject(err);\r\n }\r\n });\r\n });\r\n }\r\n /**\r\n * Load the Google Maps JavaScript API script with a callback.\r\n */\r\n loadCallback(fn) {\r\n this.callbacks.push(fn);\r\n this.execute();\r\n }\r\n /**\r\n * Set the script on document.\r\n */\r\n setScript() {\r\n if (document.getElementById(this.id)) {\r\n // TODO wrap onerror callback for cases where the script was loaded elsewhere\r\n this.callback();\r\n return;\r\n }\r\n const url = this.createUrl();\r\n const script = document.createElement(\"script\");\r\n script.id = this.id;\r\n script.type = \"text/javascript\";\r\n script.src = url;\r\n script.onerror = this.loadErrorCallback.bind(this);\r\n script.defer = true;\r\n script.async = true;\r\n if (this.nonce) {\r\n script.nonce = this.nonce;\r\n }\r\n document.head.appendChild(script);\r\n }\r\n deleteScript() {\r\n const script = document.getElementById(this.id);\r\n if (script) {\r\n script.remove();\r\n }\r\n }\r\n /**\r\n * Reset the loader state.\r\n */\r\n reset() {\r\n this.deleteScript();\r\n this.done = false;\r\n this.loading = false;\r\n this.errors = [];\r\n this.onerrorEvent = null;\r\n }\r\n resetIfRetryingFailed() {\r\n if (this.failed) {\r\n this.reset();\r\n }\r\n }\r\n loadErrorCallback(e) {\r\n this.errors.push(e);\r\n if (this.errors.length <= this.retries) {\r\n const delay = this.errors.length * Math.pow(2, this.errors.length);\r\n console.log(`Failed to load Google Maps script, retrying in ${delay} ms.`);\r\n setTimeout(() => {\r\n this.deleteScript();\r\n this.setScript();\r\n }, delay);\r\n }\r\n else {\r\n this.onerrorEvent = e;\r\n this.callback();\r\n }\r\n }\r\n setCallback() {\r\n window.__googleMapsCallback = this.callback.bind(this);\r\n }\r\n callback() {\r\n this.done = true;\r\n this.loading = false;\r\n this.callbacks.forEach((cb) => {\r\n cb(this.onerrorEvent);\r\n });\r\n this.callbacks = [];\r\n }\r\n execute() {\r\n this.resetIfRetryingFailed();\r\n if (this.done) {\r\n this.callback();\r\n }\r\n else {\r\n // short circuit and warn if google.maps is already loaded\r\n if (window.google && window.google.maps && window.google.maps.version) {\r\n console.warn(\"Google Maps already loaded outside @googlemaps/js-api-loader.\" +\r\n \"This may result in undesirable behavior as options and script parameters may not match.\");\r\n this.callback();\r\n return;\r\n }\r\n if (this.loading) ;\r\n else {\r\n this.loading = true;\r\n this.setCallback();\r\n this.setScript();\r\n }\r\n }\r\n }\r\n}\n\nexport { DEFAULT_ID, Loader };\n//# sourceMappingURL=index.esm.js.map\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nfunction __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\n\n/**\r\n * Copyright 2019 Google LLC. All Rights Reserved.\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n/**\r\n * Extends an object's prototype by another's.\r\n *\r\n * @param type1 The Type to be extended.\r\n * @param type2 The Type to extend with.\r\n * @ignore\r\n */\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nfunction extend(type1, type2) {\r\n // eslint-disable-next-line prefer-const\r\n for (var property in type2.prototype) {\r\n type1.prototype[property] = type2.prototype[property];\r\n }\r\n}\r\n/**\r\n * @ignore\r\n */\r\nvar OverlayViewSafe = /** @class */ (function () {\r\n function OverlayViewSafe() {\r\n // MarkerClusterer implements google.maps.OverlayView interface. We use the\r\n // extend function to extend MarkerClusterer with google.maps.OverlayView\r\n // because it might not always be available when the code is defined so we\r\n // look for it at the last possible moment. If it doesn't exist now then\r\n // there is no point going ahead :)\r\n extend(OverlayViewSafe, google.maps.OverlayView);\r\n }\r\n return OverlayViewSafe;\r\n}());\n\n/**\r\n * Copyright 2019 Google LLC. All Rights Reserved.\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n/**\r\n *\r\n * @hidden\r\n */\r\nfunction toCssText(styles) {\r\n return Object.keys(styles)\r\n .reduce(function (acc, key) {\r\n if (styles[key]) {\r\n acc.push(key + \":\" + styles[key]);\r\n }\r\n return acc;\r\n }, [])\r\n .join(\";\");\r\n}\r\n/**\r\n *\r\n * @hidden\r\n */\r\nfunction coercePixels(pixels) {\r\n return pixels ? pixels + \"px\" : undefined;\r\n}\r\n/**\r\n * A cluster icon.\r\n */\r\nvar ClusterIcon = /** @class */ (function (_super) {\r\n __extends(ClusterIcon, _super);\r\n /**\r\n * @param cluster_ The cluster with which the icon is to be associated.\r\n * @param styles_ An array of {@link ClusterIconStyle} defining the cluster icons\r\n * to use for various cluster sizes.\r\n */\r\n function ClusterIcon(cluster_, styles_) {\r\n var _this = _super.call(this) || this;\r\n _this.cluster_ = cluster_;\r\n _this.styles_ = styles_;\r\n _this.center_ = null;\r\n _this.div_ = null;\r\n _this.sums_ = null;\r\n _this.visible_ = false;\r\n _this.style = null;\r\n _this.setMap(cluster_.getMap()); // Note: this causes onAdd to be called\r\n return _this;\r\n }\r\n /**\r\n * Adds the icon to the DOM.\r\n */\r\n ClusterIcon.prototype.onAdd = function () {\r\n var _this = this;\r\n var cMouseDownInCluster;\r\n var cDraggingMapByCluster;\r\n var mc = this.cluster_.getMarkerClusterer();\r\n var _a = google.maps.version.split(\".\"), major = _a[0], minor = _a[1];\r\n var gmVersion = parseInt(major, 10) * 100 + parseInt(minor, 10);\r\n this.div_ = document.createElement(\"div\");\r\n if (this.visible_) {\r\n this.show();\r\n }\r\n this.getPanes().overlayMouseTarget.appendChild(this.div_);\r\n // Fix for Issue 157\r\n this.boundsChangedListener_ = google.maps.event.addListener(this.getMap(), \"bounds_changed\", function () {\r\n cDraggingMapByCluster = cMouseDownInCluster;\r\n });\r\n google.maps.event.addDomListener(this.div_, \"mousedown\", function () {\r\n cMouseDownInCluster = true;\r\n cDraggingMapByCluster = false;\r\n });\r\n // March 1, 2018: Fix for this 3.32 exp bug, https://issuetracker.google.com/issues/73571522\r\n // But it doesn't work with earlier releases so do a version check.\r\n if (gmVersion >= 332) {\r\n // Ugly version-dependent code\r\n google.maps.event.addDomListener(this.div_, \"touchstart\", function (e) {\r\n e.stopPropagation();\r\n });\r\n }\r\n google.maps.event.addDomListener(this.div_, \"click\", function (e) {\r\n cMouseDownInCluster = false;\r\n if (!cDraggingMapByCluster) {\r\n /**\r\n * This event is fired when a cluster marker is clicked.\r\n * @name MarkerClusterer#click\r\n * @param {Cluster} c The cluster that was clicked.\r\n * @event\r\n */\r\n google.maps.event.trigger(mc, \"click\", _this.cluster_);\r\n google.maps.event.trigger(mc, \"clusterclick\", _this.cluster_); // deprecated name\r\n // The default click handler follows. Disable it by setting\r\n // the zoomOnClick property to false.\r\n if (mc.getZoomOnClick()) {\r\n // Zoom into the cluster.\r\n var mz_1 = mc.getMaxZoom();\r\n var theBounds_1 = _this.cluster_.getBounds();\r\n mc.getMap().fitBounds(theBounds_1);\r\n // There is a fix for Issue 170 here:\r\n setTimeout(function () {\r\n mc.getMap().fitBounds(theBounds_1);\r\n // Don't zoom beyond the max zoom level\r\n if (mz_1 !== null && mc.getMap().getZoom() > mz_1) {\r\n mc.getMap().setZoom(mz_1 + 1);\r\n }\r\n }, 100);\r\n }\r\n // Prevent event propagation to the map:\r\n e.cancelBubble = true;\r\n if (e.stopPropagation) {\r\n e.stopPropagation();\r\n }\r\n }\r\n });\r\n google.maps.event.addDomListener(this.div_, \"mouseover\", function () {\r\n /**\r\n * This event is fired when the mouse moves over a cluster marker.\r\n * @name MarkerClusterer#mouseover\r\n * @param {Cluster} c The cluster that the mouse moved over.\r\n * @event\r\n */\r\n google.maps.event.trigger(mc, \"mouseover\", _this.cluster_);\r\n });\r\n google.maps.event.addDomListener(this.div_, \"mouseout\", function () {\r\n /**\r\n * This event is fired when the mouse moves out of a cluster marker.\r\n * @name MarkerClusterer#mouseout\r\n * @param {Cluster} c The cluster that the mouse moved out of.\r\n * @event\r\n */\r\n google.maps.event.trigger(mc, \"mouseout\", _this.cluster_);\r\n });\r\n };\r\n /**\r\n * Removes the icon from the DOM.\r\n */\r\n ClusterIcon.prototype.onRemove = function () {\r\n if (this.div_ && this.div_.parentNode) {\r\n this.hide();\r\n google.maps.event.removeListener(this.boundsChangedListener_);\r\n google.maps.event.clearInstanceListeners(this.div_);\r\n this.div_.parentNode.removeChild(this.div_);\r\n this.div_ = null;\r\n }\r\n };\r\n /**\r\n * Draws the icon.\r\n */\r\n ClusterIcon.prototype.draw = function () {\r\n if (this.visible_) {\r\n var pos = this.getPosFromLatLng_(this.center_);\r\n this.div_.style.top = pos.y + \"px\";\r\n this.div_.style.left = pos.x + \"px\";\r\n }\r\n };\r\n /**\r\n * Hides the icon.\r\n */\r\n ClusterIcon.prototype.hide = function () {\r\n if (this.div_) {\r\n this.div_.style.display = \"none\";\r\n }\r\n this.visible_ = false;\r\n };\r\n /**\r\n * Positions and shows the icon.\r\n */\r\n ClusterIcon.prototype.show = function () {\r\n if (this.div_) {\r\n this.div_.className = this.className_;\r\n this.div_.style.cssText = this.createCss_(this.getPosFromLatLng_(this.center_));\r\n this.div_.innerHTML =\r\n (this.style.url ? this.getImageElementHtml() : \"\") +\r\n this.getLabelDivHtml();\r\n if (typeof this.sums_.title === \"undefined\" || this.sums_.title === \"\") {\r\n this.div_.title = this.cluster_.getMarkerClusterer().getTitle();\r\n }\r\n else {\r\n this.div_.title = this.sums_.title;\r\n }\r\n this.div_.style.display = \"\";\r\n }\r\n this.visible_ = true;\r\n };\r\n ClusterIcon.prototype.getLabelDivHtml = function () {\r\n var mc = this.cluster_.getMarkerClusterer();\r\n var ariaLabel = mc.ariaLabelFn(this.sums_.text);\r\n var divStyle = {\r\n position: \"absolute\",\r\n top: coercePixels(this.anchorText_[0]),\r\n left: coercePixels(this.anchorText_[1]),\r\n color: this.style.textColor,\r\n \"font-size\": coercePixels(this.style.textSize),\r\n \"font-family\": this.style.fontFamily,\r\n \"font-weight\": this.style.fontWeight,\r\n \"font-style\": this.style.fontStyle,\r\n \"text-decoration\": this.style.textDecoration,\r\n \"text-align\": \"center\",\r\n width: coercePixels(this.style.width),\r\n \"line-height\": coercePixels(this.style.textLineHeight),\r\n };\r\n return \"\\n