@hpcc-js/map 2.76.7 → 2.77.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.es6.js +459 -176
- package/dist/index.es6.js.map +1 -1
- package/dist/index.js +459 -176
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +3 -3
- package/dist/index.min.js.map +1 -1
- package/package.json +9 -9
- package/src/__package__.ts +2 -2
- package/src/leaflet/ClusterCircles.ts +1 -1
- package/types/__package__.d.ts +2 -2
- package/types/__package__.d.ts.map +1 -1
- package/types-3.4/__package__.d.ts +2 -2
package/dist/index.js
CHANGED
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
var PKG_NAME = "@hpcc-js/map";
|
|
23
|
-
var PKG_VERSION = "2.
|
|
24
|
-
var BUILD_VERSION = "2.104.
|
|
23
|
+
var PKG_VERSION = "2.77.1";
|
|
24
|
+
var BUILD_VERSION = "2.104.13";
|
|
25
25
|
|
|
26
26
|
/******************************************************************************
|
|
27
27
|
Copyright (c) Microsoft Corporation.
|
|
@@ -7885,7 +7885,7 @@
|
|
|
7885
7885
|
var ___CSS_LOADER_URL_REPLACEMENT_1___ = _css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default()(___CSS_LOADER_URL_IMPORT_1___);
|
|
7886
7886
|
var ___CSS_LOADER_URL_REPLACEMENT_2___ = _css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default()(___CSS_LOADER_URL_IMPORT_2___);
|
|
7887
7887
|
// Module
|
|
7888
|
-
___CSS_LOADER_EXPORT___.push([module.id, "/* required styles */\r\n\r\n.leaflet-pane,\r\n.leaflet-tile,\r\n.leaflet-marker-icon,\r\n.leaflet-marker-shadow,\r\n.leaflet-tile-container,\r\n.leaflet-pane > svg,\r\n.leaflet-pane > canvas,\r\n.leaflet-zoom-box,\r\n.leaflet-image-layer,\r\n.leaflet-layer {\r\n\tposition: absolute;\r\n\tleft: 0;\r\n\ttop: 0;\r\n\t}\r\n.leaflet-container {\r\n\toverflow: hidden;\r\n\t}\r\n.leaflet-tile,\r\n.leaflet-marker-icon,\r\n.leaflet-marker-shadow {\r\n\t-webkit-user-select: none;\r\n\t -moz-user-select: none;\r\n\t user-select: none;\r\n\t -webkit-user-drag: none;\r\n\t}\r\n/* Prevents IE11 from highlighting tiles in blue */\r\n.leaflet-tile::selection {\r\n\tbackground: transparent;\r\n}\r\n/* Safari renders non-retina tile on retina better with this, but Chrome is worse */\r\n.leaflet-safari .leaflet-tile {\r\n\timage-rendering: -webkit-optimize-contrast;\r\n\t}\r\n/* hack that prevents hw layers \"stretching\" when loading new tiles */\r\n.leaflet-safari .leaflet-tile-container {\r\n\twidth: 1600px;\r\n\theight: 1600px;\r\n\t-webkit-transform-origin: 0 0;\r\n\t}\r\n.leaflet-marker-icon,\r\n.leaflet-marker-shadow {\r\n\tdisplay: block;\r\n\t}\r\n/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */\r\n/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */\r\n.leaflet-container .leaflet-overlay-pane svg {\r\n\tmax-width: none !important;\r\n\tmax-height: none !important;\r\n\t}\r\n.leaflet-container .leaflet-marker-pane img,\r\n.leaflet-container .leaflet-shadow-pane img,\r\n.leaflet-container .leaflet-tile-pane img,\r\n.leaflet-container img.leaflet-image-layer,\r\n.leaflet-container .leaflet-tile {\r\n\tmax-width: none !important;\r\n\tmax-height: none !important;\r\n\twidth: auto;\r\n\tpadding: 0;\r\n\t}\r\n\r\n.leaflet-container.leaflet-touch-zoom {\r\n\t-ms-touch-action: pan-x pan-y;\r\n\ttouch-action: pan-x pan-y;\r\n\t}\r\n.leaflet-container.leaflet-touch-drag {\r\n\t-ms-touch-action: pinch-zoom;\r\n\t/* Fallback for FF which doesn't support pinch-zoom */\r\n\ttouch-action: none;\r\n\ttouch-action: pinch-zoom;\r\n}\r\n.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {\r\n\t-ms-touch-action: none;\r\n\ttouch-action: none;\r\n}\r\n.leaflet-container {\r\n\t-webkit-tap-highlight-color: transparent;\r\n}\r\n.leaflet-container a {\r\n\t-webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);\r\n}\r\n.leaflet-tile {\r\n\tfilter: inherit;\r\n\tvisibility: hidden;\r\n\t}\r\n.leaflet-tile-loaded {\r\n\tvisibility: inherit;\r\n\t}\r\n.leaflet-zoom-box {\r\n\twidth: 0;\r\n\theight: 0;\r\n\t-moz-box-sizing: border-box;\r\n\t box-sizing: border-box;\r\n\tz-index: 800;\r\n\t}\r\n/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */\r\n.leaflet-overlay-pane svg {\r\n\t-moz-user-select: none;\r\n\t}\r\n\r\n.leaflet-pane { z-index: 400; }\r\n\r\n.leaflet-tile-pane { z-index: 200; }\r\n.leaflet-overlay-pane { z-index: 400; }\r\n.leaflet-shadow-pane { z-index: 500; }\r\n.leaflet-marker-pane { z-index: 600; }\r\n.leaflet-tooltip-pane { z-index: 650; }\r\n.leaflet-popup-pane { z-index: 700; }\r\n\r\n.leaflet-map-pane canvas { z-index: 100; }\r\n.leaflet-map-pane svg { z-index: 200; }\r\n\r\n.leaflet-vml-shape {\r\n\twidth: 1px;\r\n\theight: 1px;\r\n\t}\r\n.lvml {\r\n\tbehavior: url(#default#VML);\r\n\tdisplay: inline-block;\r\n\tposition: absolute;\r\n\t}\r\n\r\n\r\n/* control positioning */\r\n\r\n.leaflet-control {\r\n\tposition: relative;\r\n\tz-index: 800;\r\n\tpointer-events: visiblePainted; /* IE 9-10 doesn't have auto */\r\n\tpointer-events: auto;\r\n\t}\r\n.leaflet-top,\r\n.leaflet-bottom {\r\n\tposition: absolute;\r\n\tz-index: 1000;\r\n\tpointer-events: none;\r\n\t}\r\n.leaflet-top {\r\n\ttop: 0;\r\n\t}\r\n.leaflet-right {\r\n\tright: 0;\r\n\t}\r\n.leaflet-bottom {\r\n\tbottom: 0;\r\n\t}\r\n.leaflet-left {\r\n\tleft: 0;\r\n\t}\r\n.leaflet-control {\r\n\tfloat: left;\r\n\tclear: both;\r\n\t}\r\n.leaflet-right .leaflet-control {\r\n\tfloat: right;\r\n\t}\r\n.leaflet-top .leaflet-control {\r\n\tmargin-top: 10px;\r\n\t}\r\n.leaflet-bottom .leaflet-control {\r\n\tmargin-bottom: 10px;\r\n\t}\r\n.leaflet-left .leaflet-control {\r\n\tmargin-left: 10px;\r\n\t}\r\n.leaflet-right .leaflet-control {\r\n\tmargin-right: 10px;\r\n\t}\r\n\r\n\r\n/* zoom and fade animations */\r\n\r\n.leaflet-fade-anim .leaflet-popup {\r\n\topacity: 0;\r\n\t-webkit-transition: opacity 0.2s linear;\r\n\t -moz-transition: opacity 0.2s linear;\r\n\t transition: opacity 0.2s linear;\r\n\t}\r\n.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {\r\n\topacity: 1;\r\n\t}\r\n.leaflet-zoom-animated {\r\n\t-webkit-transform-origin: 0 0;\r\n\t -ms-transform-origin: 0 0;\r\n\t transform-origin: 0 0;\r\n\t}\r\nsvg.leaflet-zoom-animated {\r\n\twill-change: transform;\r\n}\r\n\r\n.leaflet-zoom-anim .leaflet-zoom-animated {\r\n\t-webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);\r\n\t -moz-transition: -moz-transform 0.25s cubic-bezier(0,0,0.25,1);\r\n\t transition: transform 0.25s cubic-bezier(0,0,0.25,1);\r\n\t}\r\n.leaflet-zoom-anim .leaflet-tile,\r\n.leaflet-pan-anim .leaflet-tile {\r\n\t-webkit-transition: none;\r\n\t -moz-transition: none;\r\n\t transition: none;\r\n\t}\r\n\r\n.leaflet-zoom-anim .leaflet-zoom-hide {\r\n\tvisibility: hidden;\r\n\t}\r\n\r\n\r\n/* cursors */\r\n\r\n.leaflet-interactive {\r\n\tcursor: pointer;\r\n\t}\r\n.leaflet-grab {\r\n\tcursor: -webkit-grab;\r\n\tcursor: -moz-grab;\r\n\tcursor: grab;\r\n\t}\r\n.leaflet-crosshair,\r\n.leaflet-crosshair .leaflet-interactive {\r\n\tcursor: crosshair;\r\n\t}\r\n.leaflet-popup-pane,\r\n.leaflet-control {\r\n\tcursor: auto;\r\n\t}\r\n.leaflet-dragging .leaflet-grab,\r\n.leaflet-dragging .leaflet-grab .leaflet-interactive,\r\n.leaflet-dragging .leaflet-marker-draggable {\r\n\tcursor: move;\r\n\tcursor: -webkit-grabbing;\r\n\tcursor: -moz-grabbing;\r\n\tcursor: grabbing;\r\n\t}\r\n\r\n/* marker & overlays interactivity */\r\n.leaflet-marker-icon,\r\n.leaflet-marker-shadow,\r\n.leaflet-image-layer,\r\n.leaflet-pane > svg path,\r\n.leaflet-tile-container {\r\n\tpointer-events: none;\r\n\t}\r\n\r\n.leaflet-marker-icon.leaflet-interactive,\r\n.leaflet-image-layer.leaflet-interactive,\r\n.leaflet-pane > svg path.leaflet-interactive,\r\nsvg.leaflet-image-layer.leaflet-interactive path {\r\n\tpointer-events: visiblePainted; /* IE 9-10 doesn't have auto */\r\n\tpointer-events: auto;\r\n\t}\r\n\r\n/* visual tweaks */\r\n\r\n.leaflet-container {\r\n\tbackground: #ddd;\r\n\toutline-offset: 1px;\r\n\t}\r\n.leaflet-container a {\r\n\tcolor: #0078A8;\r\n\t}\r\n.leaflet-zoom-box {\r\n\tborder: 2px dotted #38f;\r\n\tbackground: rgba(255,255,255,0.5);\r\n\t}\r\n\r\n\r\n/* general typography */\r\n.leaflet-container {\r\n\tfont-family: \"Helvetica Neue\", Arial, Helvetica, sans-serif;\r\n\tfont-size: 12px;\r\n\tfont-size: 0.75rem;\r\n\tline-height: 1.5;\r\n\t}\r\n\r\n\r\n/* general toolbar styles */\r\n\r\n.leaflet-bar {\r\n\tbox-shadow: 0 1px 5px rgba(0,0,0,0.65);\r\n\tborder-radius: 4px;\r\n\t}\r\n.leaflet-bar a {\r\n\tbackground-color: #fff;\r\n\tborder-bottom: 1px solid #ccc;\r\n\twidth: 26px;\r\n\theight: 26px;\r\n\tline-height: 26px;\r\n\tdisplay: block;\r\n\ttext-align: center;\r\n\ttext-decoration: none;\r\n\tcolor: black;\r\n\t}\r\n.leaflet-bar a,\r\n.leaflet-control-layers-toggle {\r\n\tbackground-position: 50% 50%;\r\n\tbackground-repeat: no-repeat;\r\n\tdisplay: block;\r\n\t}\r\n.leaflet-bar a:hover,\r\n.leaflet-bar a:focus {\r\n\tbackground-color: #f4f4f4;\r\n\t}\r\n.leaflet-bar a:first-child {\r\n\tborder-top-left-radius: 4px;\r\n\tborder-top-right-radius: 4px;\r\n\t}\r\n.leaflet-bar a:last-child {\r\n\tborder-bottom-left-radius: 4px;\r\n\tborder-bottom-right-radius: 4px;\r\n\tborder-bottom: none;\r\n\t}\r\n.leaflet-bar a.leaflet-disabled {\r\n\tcursor: default;\r\n\tbackground-color: #f4f4f4;\r\n\tcolor: #bbb;\r\n\t}\r\n\r\n.leaflet-touch .leaflet-bar a {\r\n\twidth: 30px;\r\n\theight: 30px;\r\n\tline-height: 30px;\r\n\t}\r\n.leaflet-touch .leaflet-bar a:first-child {\r\n\tborder-top-left-radius: 2px;\r\n\tborder-top-right-radius: 2px;\r\n\t}\r\n.leaflet-touch .leaflet-bar a:last-child {\r\n\tborder-bottom-left-radius: 2px;\r\n\tborder-bottom-right-radius: 2px;\r\n\t}\r\n\r\n/* zoom control */\r\n\r\n.leaflet-control-zoom-in,\r\n.leaflet-control-zoom-out {\r\n\tfont: bold 18px 'Lucida Console', Monaco, monospace;\r\n\ttext-indent: 1px;\r\n\t}\r\n\r\n.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out {\r\n\tfont-size: 22px;\r\n\t}\r\n\r\n\r\n/* layers control */\r\n\r\n.leaflet-control-layers {\r\n\tbox-shadow: 0 1px 5px rgba(0,0,0,0.4);\r\n\tbackground: #fff;\r\n\tborder-radius: 5px;\r\n\t}\r\n.leaflet-control-layers-toggle {\r\n\tbackground-image: url(" + ___CSS_LOADER_URL_REPLACEMENT_0___ + ");\r\n\twidth: 36px;\r\n\theight: 36px;\r\n\t}\r\n.leaflet-retina .leaflet-control-layers-toggle {\r\n\tbackground-image: url(" + ___CSS_LOADER_URL_REPLACEMENT_1___ + ");\r\n\tbackground-size: 26px 26px;\r\n\t}\r\n.leaflet-touch .leaflet-control-layers-toggle {\r\n\twidth: 44px;\r\n\theight: 44px;\r\n\t}\r\n.leaflet-control-layers .leaflet-control-layers-list,\r\n.leaflet-control-layers-expanded .leaflet-control-layers-toggle {\r\n\tdisplay: none;\r\n\t}\r\n.leaflet-control-layers-expanded .leaflet-control-layers-list {\r\n\tdisplay: block;\r\n\tposition: relative;\r\n\t}\r\n.leaflet-control-layers-expanded {\r\n\tpadding: 6px 10px 6px 6px;\r\n\tcolor: #333;\r\n\tbackground: #fff;\r\n\t}\r\n.leaflet-control-layers-scrollbar {\r\n\toverflow-y: scroll;\r\n\toverflow-x: hidden;\r\n\tpadding-right: 5px;\r\n\t}\r\n.leaflet-control-layers-selector {\r\n\tmargin-top: 2px;\r\n\tposition: relative;\r\n\ttop: 1px;\r\n\t}\r\n.leaflet-control-layers label {\r\n\tdisplay: block;\r\n\tfont-size: 13px;\r\n\tfont-size: 1.08333em;\r\n\t}\r\n.leaflet-control-layers-separator {\r\n\theight: 0;\r\n\tborder-top: 1px solid #ddd;\r\n\tmargin: 5px -10px 5px -6px;\r\n\t}\r\n\r\n/* Default icon URLs */\r\n.leaflet-default-icon-path { /* used only in path-guessing heuristic, see L.Icon.Default */\r\n\tbackground-image: url(" + ___CSS_LOADER_URL_REPLACEMENT_2___ + ");\r\n\t}\r\n\r\n\r\n/* attribution and scale controls */\r\n\r\n.leaflet-container .leaflet-control-attribution {\r\n\tbackground: #fff;\r\n\tbackground: rgba(255, 255, 255, 0.8);\r\n\tmargin: 0;\r\n\t}\r\n.leaflet-control-attribution,\r\n.leaflet-control-scale-line {\r\n\tpadding: 0 5px;\r\n\tcolor: #333;\r\n\tline-height: 1.4;\r\n\t}\r\n.leaflet-control-attribution a {\r\n\ttext-decoration: none;\r\n\t}\r\n.leaflet-control-attribution a:hover,\r\n.leaflet-control-attribution a:focus {\r\n\ttext-decoration: underline;\r\n\t}\r\n.leaflet-control-attribution svg {\r\n\tdisplay: inline !important;\r\n\t}\r\n.leaflet-left .leaflet-control-scale {\r\n\tmargin-left: 5px;\r\n\t}\r\n.leaflet-bottom .leaflet-control-scale {\r\n\tmargin-bottom: 5px;\r\n\t}\r\n.leaflet-control-scale-line {\r\n\tborder: 2px solid #777;\r\n\tborder-top: none;\r\n\tline-height: 1.1;\r\n\tpadding: 2px 5px 1px;\r\n\twhite-space: nowrap;\r\n\toverflow: hidden;\r\n\t-moz-box-sizing: border-box;\r\n\t box-sizing: border-box;\r\n\r\n\tbackground: #fff;\r\n\tbackground: rgba(255, 255, 255, 0.5);\r\n\t}\r\n.leaflet-control-scale-line:not(:first-child) {\r\n\tborder-top: 2px solid #777;\r\n\tborder-bottom: none;\r\n\tmargin-top: -2px;\r\n\t}\r\n.leaflet-control-scale-line:not(:first-child):not(:last-child) {\r\n\tborder-bottom: 2px solid #777;\r\n\t}\r\n\r\n.leaflet-touch .leaflet-control-attribution,\r\n.leaflet-touch .leaflet-control-layers,\r\n.leaflet-touch .leaflet-bar {\r\n\tbox-shadow: none;\r\n\t}\r\n.leaflet-touch .leaflet-control-layers,\r\n.leaflet-touch .leaflet-bar {\r\n\tborder: 2px solid rgba(0,0,0,0.2);\r\n\tbackground-clip: padding-box;\r\n\t}\r\n\r\n\r\n/* popup */\r\n\r\n.leaflet-popup {\r\n\tposition: absolute;\r\n\ttext-align: center;\r\n\tmargin-bottom: 20px;\r\n\t}\r\n.leaflet-popup-content-wrapper {\r\n\tpadding: 1px;\r\n\ttext-align: left;\r\n\tborder-radius: 12px;\r\n\t}\r\n.leaflet-popup-content {\r\n\tmargin: 13px 24px 13px 20px;\r\n\tline-height: 1.3;\r\n\tfont-size: 13px;\r\n\tfont-size: 1.08333em;\r\n\tmin-height: 1px;\r\n\t}\r\n.leaflet-popup-content p {\r\n\tmargin: 17px 0;\r\n\tmargin: 1.3em 0;\r\n\t}\r\n.leaflet-popup-tip-container {\r\n\twidth: 40px;\r\n\theight: 20px;\r\n\tposition: absolute;\r\n\tleft: 50%;\r\n\tmargin-top: -1px;\r\n\tmargin-left: -20px;\r\n\toverflow: hidden;\r\n\tpointer-events: none;\r\n\t}\r\n.leaflet-popup-tip {\r\n\twidth: 17px;\r\n\theight: 17px;\r\n\tpadding: 1px;\r\n\r\n\tmargin: -10px auto 0;\r\n\tpointer-events: auto;\r\n\r\n\t-webkit-transform: rotate(45deg);\r\n\t -moz-transform: rotate(45deg);\r\n\t -ms-transform: rotate(45deg);\r\n\t transform: rotate(45deg);\r\n\t}\r\n.leaflet-popup-content-wrapper,\r\n.leaflet-popup-tip {\r\n\tbackground: white;\r\n\tcolor: #333;\r\n\tbox-shadow: 0 3px 14px rgba(0,0,0,0.4);\r\n\t}\r\n.leaflet-container a.leaflet-popup-close-button {\r\n\tposition: absolute;\r\n\ttop: 0;\r\n\tright: 0;\r\n\tborder: none;\r\n\ttext-align: center;\r\n\twidth: 24px;\r\n\theight: 24px;\r\n\tfont: 16px/24px Tahoma, Verdana, sans-serif;\r\n\tcolor: #757575;\r\n\ttext-decoration: none;\r\n\tbackground: transparent;\r\n\t}\r\n.leaflet-container a.leaflet-popup-close-button:hover,\r\n.leaflet-container a.leaflet-popup-close-button:focus {\r\n\tcolor: #585858;\r\n\t}\r\n.leaflet-popup-scrolled {\r\n\toverflow: auto;\r\n\tborder-bottom: 1px solid #ddd;\r\n\tborder-top: 1px solid #ddd;\r\n\t}\r\n\r\n.leaflet-oldie .leaflet-popup-content-wrapper {\r\n\t-ms-zoom: 1;\r\n\t}\r\n.leaflet-oldie .leaflet-popup-tip {\r\n\twidth: 24px;\r\n\tmargin: 0 auto;\r\n\r\n\t-ms-filter: \"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)\";\r\n\tfilter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);\r\n\t}\r\n\r\n.leaflet-oldie .leaflet-control-zoom,\r\n.leaflet-oldie .leaflet-control-layers,\r\n.leaflet-oldie .leaflet-popup-content-wrapper,\r\n.leaflet-oldie .leaflet-popup-tip {\r\n\tborder: 1px solid #999;\r\n\t}\r\n\r\n\r\n/* div icon */\r\n\r\n.leaflet-div-icon {\r\n\tbackground: #fff;\r\n\tborder: 1px solid #666;\r\n\t}\r\n\r\n\r\n/* Tooltip */\r\n/* Base styles for the element that has a tooltip */\r\n.leaflet-tooltip {\r\n\tposition: absolute;\r\n\tpadding: 6px;\r\n\tbackground-color: #fff;\r\n\tborder: 1px solid #fff;\r\n\tborder-radius: 3px;\r\n\tcolor: #222;\r\n\twhite-space: nowrap;\r\n\t-webkit-user-select: none;\r\n\t-moz-user-select: none;\r\n\t-ms-user-select: none;\r\n\tuser-select: none;\r\n\tpointer-events: none;\r\n\tbox-shadow: 0 1px 3px rgba(0,0,0,0.4);\r\n\t}\r\n.leaflet-tooltip.leaflet-interactive {\r\n\tcursor: pointer;\r\n\tpointer-events: auto;\r\n\t}\r\n.leaflet-tooltip-top:before,\r\n.leaflet-tooltip-bottom:before,\r\n.leaflet-tooltip-left:before,\r\n.leaflet-tooltip-right:before {\r\n\tposition: absolute;\r\n\tpointer-events: none;\r\n\tborder: 6px solid transparent;\r\n\tbackground: transparent;\r\n\tcontent: \"\";\r\n\t}\r\n\r\n/* Directions */\r\n\r\n.leaflet-tooltip-bottom {\r\n\tmargin-top: 6px;\r\n}\r\n.leaflet-tooltip-top {\r\n\tmargin-top: -6px;\r\n}\r\n.leaflet-tooltip-bottom:before,\r\n.leaflet-tooltip-top:before {\r\n\tleft: 50%;\r\n\tmargin-left: -6px;\r\n\t}\r\n.leaflet-tooltip-top:before {\r\n\tbottom: 0;\r\n\tmargin-bottom: -12px;\r\n\tborder-top-color: #fff;\r\n\t}\r\n.leaflet-tooltip-bottom:before {\r\n\ttop: 0;\r\n\tmargin-top: -12px;\r\n\tmargin-left: -6px;\r\n\tborder-bottom-color: #fff;\r\n\t}\r\n.leaflet-tooltip-left {\r\n\tmargin-left: -6px;\r\n}\r\n.leaflet-tooltip-right {\r\n\tmargin-left: 6px;\r\n}\r\n.leaflet-tooltip-left:before,\r\n.leaflet-tooltip-right:before {\r\n\ttop: 50%;\r\n\tmargin-top: -6px;\r\n\t}\r\n.leaflet-tooltip-left:before {\r\n\tright: 0;\r\n\tmargin-right: -12px;\r\n\tborder-left-color: #fff;\r\n\t}\r\n.leaflet-tooltip-right:before {\r\n\tleft: 0;\r\n\tmargin-left: -12px;\r\n\tborder-right-color: #fff;\r\n\t}\r\n\r\n/* Printing */\r\n\t\r\n@media print {\r\n\t/* Prevent printers from removing background-images of controls. */\r\n\t.leaflet-control {\r\n\t\t-webkit-print-color-adjust: exact;\r\n\t\tcolor-adjust: exact;\r\n\t\t}\r\n\t}\r\n", ""]);
|
|
7888
|
+
___CSS_LOADER_EXPORT___.push([module.id, "/* required styles */\r\n\r\n.leaflet-pane,\r\n.leaflet-tile,\r\n.leaflet-marker-icon,\r\n.leaflet-marker-shadow,\r\n.leaflet-tile-container,\r\n.leaflet-pane > svg,\r\n.leaflet-pane > canvas,\r\n.leaflet-zoom-box,\r\n.leaflet-image-layer,\r\n.leaflet-layer {\r\n\tposition: absolute;\r\n\tleft: 0;\r\n\ttop: 0;\r\n\t}\r\n.leaflet-container {\r\n\toverflow: hidden;\r\n\t}\r\n.leaflet-tile,\r\n.leaflet-marker-icon,\r\n.leaflet-marker-shadow {\r\n\t-webkit-user-select: none;\r\n\t -moz-user-select: none;\r\n\t user-select: none;\r\n\t -webkit-user-drag: none;\r\n\t}\r\n/* Prevents IE11 from highlighting tiles in blue */\r\n.leaflet-tile::selection {\r\n\tbackground: transparent;\r\n}\r\n/* Safari renders non-retina tile on retina better with this, but Chrome is worse */\r\n.leaflet-safari .leaflet-tile {\r\n\timage-rendering: -webkit-optimize-contrast;\r\n\t}\r\n/* hack that prevents hw layers \"stretching\" when loading new tiles */\r\n.leaflet-safari .leaflet-tile-container {\r\n\twidth: 1600px;\r\n\theight: 1600px;\r\n\t-webkit-transform-origin: 0 0;\r\n\t}\r\n.leaflet-marker-icon,\r\n.leaflet-marker-shadow {\r\n\tdisplay: block;\r\n\t}\r\n/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */\r\n/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */\r\n.leaflet-container .leaflet-overlay-pane svg {\r\n\tmax-width: none !important;\r\n\tmax-height: none !important;\r\n\t}\r\n.leaflet-container .leaflet-marker-pane img,\r\n.leaflet-container .leaflet-shadow-pane img,\r\n.leaflet-container .leaflet-tile-pane img,\r\n.leaflet-container img.leaflet-image-layer,\r\n.leaflet-container .leaflet-tile {\r\n\tmax-width: none !important;\r\n\tmax-height: none !important;\r\n\twidth: auto;\r\n\tpadding: 0;\r\n\t}\r\n\r\n.leaflet-container.leaflet-touch-zoom {\r\n\t-ms-touch-action: pan-x pan-y;\r\n\ttouch-action: pan-x pan-y;\r\n\t}\r\n.leaflet-container.leaflet-touch-drag {\r\n\t-ms-touch-action: pinch-zoom;\r\n\t/* Fallback for FF which doesn't support pinch-zoom */\r\n\ttouch-action: none;\r\n\ttouch-action: pinch-zoom;\r\n}\r\n.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {\r\n\t-ms-touch-action: none;\r\n\ttouch-action: none;\r\n}\r\n.leaflet-container {\r\n\t-webkit-tap-highlight-color: transparent;\r\n}\r\n.leaflet-container a {\r\n\t-webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);\r\n}\r\n.leaflet-tile {\r\n\tfilter: inherit;\r\n\tvisibility: hidden;\r\n\t}\r\n.leaflet-tile-loaded {\r\n\tvisibility: inherit;\r\n\t}\r\n.leaflet-zoom-box {\r\n\twidth: 0;\r\n\theight: 0;\r\n\t-moz-box-sizing: border-box;\r\n\t box-sizing: border-box;\r\n\tz-index: 800;\r\n\t}\r\n/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */\r\n.leaflet-overlay-pane svg {\r\n\t-moz-user-select: none;\r\n\t}\r\n\r\n.leaflet-pane { z-index: 400; }\r\n\r\n.leaflet-tile-pane { z-index: 200; }\r\n.leaflet-overlay-pane { z-index: 400; }\r\n.leaflet-shadow-pane { z-index: 500; }\r\n.leaflet-marker-pane { z-index: 600; }\r\n.leaflet-tooltip-pane { z-index: 650; }\r\n.leaflet-popup-pane { z-index: 700; }\r\n\r\n.leaflet-map-pane canvas { z-index: 100; }\r\n.leaflet-map-pane svg { z-index: 200; }\r\n\r\n.leaflet-vml-shape {\r\n\twidth: 1px;\r\n\theight: 1px;\r\n\t}\r\n.lvml {\r\n\tbehavior: url(#default#VML);\r\n\tdisplay: inline-block;\r\n\tposition: absolute;\r\n\t}\r\n\r\n\r\n/* control positioning */\r\n\r\n.leaflet-control {\r\n\tposition: relative;\r\n\tz-index: 800;\r\n\tpointer-events: visiblePainted; /* IE 9-10 doesn't have auto */\r\n\tpointer-events: auto;\r\n\t}\r\n.leaflet-top,\r\n.leaflet-bottom {\r\n\tposition: absolute;\r\n\tz-index: 1000;\r\n\tpointer-events: none;\r\n\t}\r\n.leaflet-top {\r\n\ttop: 0;\r\n\t}\r\n.leaflet-right {\r\n\tright: 0;\r\n\t}\r\n.leaflet-bottom {\r\n\tbottom: 0;\r\n\t}\r\n.leaflet-left {\r\n\tleft: 0;\r\n\t}\r\n.leaflet-control {\r\n\tfloat: left;\r\n\tclear: both;\r\n\t}\r\n.leaflet-right .leaflet-control {\r\n\tfloat: right;\r\n\t}\r\n.leaflet-top .leaflet-control {\r\n\tmargin-top: 10px;\r\n\t}\r\n.leaflet-bottom .leaflet-control {\r\n\tmargin-bottom: 10px;\r\n\t}\r\n.leaflet-left .leaflet-control {\r\n\tmargin-left: 10px;\r\n\t}\r\n.leaflet-right .leaflet-control {\r\n\tmargin-right: 10px;\r\n\t}\r\n\r\n\r\n/* zoom and fade animations */\r\n\r\n.leaflet-fade-anim .leaflet-popup {\r\n\topacity: 0;\r\n\t-webkit-transition: opacity 0.2s linear;\r\n\t -moz-transition: opacity 0.2s linear;\r\n\t transition: opacity 0.2s linear;\r\n\t}\r\n.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {\r\n\topacity: 1;\r\n\t}\r\n.leaflet-zoom-animated {\r\n\t-webkit-transform-origin: 0 0;\r\n\t -ms-transform-origin: 0 0;\r\n\t transform-origin: 0 0;\r\n\t}\r\nsvg.leaflet-zoom-animated {\r\n\twill-change: transform;\r\n}\r\n\r\n.leaflet-zoom-anim .leaflet-zoom-animated {\r\n\t-webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);\r\n\t -moz-transition: -moz-transform 0.25s cubic-bezier(0,0,0.25,1);\r\n\t transition: transform 0.25s cubic-bezier(0,0,0.25,1);\r\n\t}\r\n.leaflet-zoom-anim .leaflet-tile,\r\n.leaflet-pan-anim .leaflet-tile {\r\n\t-webkit-transition: none;\r\n\t -moz-transition: none;\r\n\t transition: none;\r\n\t}\r\n\r\n.leaflet-zoom-anim .leaflet-zoom-hide {\r\n\tvisibility: hidden;\r\n\t}\r\n\r\n\r\n/* cursors */\r\n\r\n.leaflet-interactive {\r\n\tcursor: pointer;\r\n\t}\r\n.leaflet-grab {\r\n\tcursor: -webkit-grab;\r\n\tcursor: -moz-grab;\r\n\tcursor: grab;\r\n\t}\r\n.leaflet-crosshair,\r\n.leaflet-crosshair .leaflet-interactive {\r\n\tcursor: crosshair;\r\n\t}\r\n.leaflet-popup-pane,\r\n.leaflet-control {\r\n\tcursor: auto;\r\n\t}\r\n.leaflet-dragging .leaflet-grab,\r\n.leaflet-dragging .leaflet-grab .leaflet-interactive,\r\n.leaflet-dragging .leaflet-marker-draggable {\r\n\tcursor: move;\r\n\tcursor: -webkit-grabbing;\r\n\tcursor: -moz-grabbing;\r\n\tcursor: grabbing;\r\n\t}\r\n\r\n/* marker & overlays interactivity */\r\n.leaflet-marker-icon,\r\n.leaflet-marker-shadow,\r\n.leaflet-image-layer,\r\n.leaflet-pane > svg path,\r\n.leaflet-tile-container {\r\n\tpointer-events: none;\r\n\t}\r\n\r\n.leaflet-marker-icon.leaflet-interactive,\r\n.leaflet-image-layer.leaflet-interactive,\r\n.leaflet-pane > svg path.leaflet-interactive,\r\nsvg.leaflet-image-layer.leaflet-interactive path {\r\n\tpointer-events: visiblePainted; /* IE 9-10 doesn't have auto */\r\n\tpointer-events: auto;\r\n\t}\r\n\r\n/* visual tweaks */\r\n\r\n.leaflet-container {\r\n\tbackground: #ddd;\r\n\toutline-offset: 1px;\r\n\t}\r\n.leaflet-container a {\r\n\tcolor: #0078A8;\r\n\t}\r\n.leaflet-zoom-box {\r\n\tborder: 2px dotted #38f;\r\n\tbackground: rgba(255,255,255,0.5);\r\n\t}\r\n\r\n\r\n/* general typography */\r\n.leaflet-container {\r\n\tfont-family: \"Helvetica Neue\", Arial, Helvetica, sans-serif;\r\n\tfont-size: 12px;\r\n\tfont-size: 0.75rem;\r\n\tline-height: 1.5;\r\n\t}\r\n\r\n\r\n/* general toolbar styles */\r\n\r\n.leaflet-bar {\r\n\tbox-shadow: 0 1px 5px rgba(0,0,0,0.65);\r\n\tborder-radius: 4px;\r\n\t}\r\n.leaflet-bar a {\r\n\tbackground-color: #fff;\r\n\tborder-bottom: 1px solid #ccc;\r\n\twidth: 26px;\r\n\theight: 26px;\r\n\tline-height: 26px;\r\n\tdisplay: block;\r\n\ttext-align: center;\r\n\ttext-decoration: none;\r\n\tcolor: black;\r\n\t}\r\n.leaflet-bar a,\r\n.leaflet-control-layers-toggle {\r\n\tbackground-position: 50% 50%;\r\n\tbackground-repeat: no-repeat;\r\n\tdisplay: block;\r\n\t}\r\n.leaflet-bar a:hover,\r\n.leaflet-bar a:focus {\r\n\tbackground-color: #f4f4f4;\r\n\t}\r\n.leaflet-bar a:first-child {\r\n\tborder-top-left-radius: 4px;\r\n\tborder-top-right-radius: 4px;\r\n\t}\r\n.leaflet-bar a:last-child {\r\n\tborder-bottom-left-radius: 4px;\r\n\tborder-bottom-right-radius: 4px;\r\n\tborder-bottom: none;\r\n\t}\r\n.leaflet-bar a.leaflet-disabled {\r\n\tcursor: default;\r\n\tbackground-color: #f4f4f4;\r\n\tcolor: #bbb;\r\n\t}\r\n\r\n.leaflet-touch .leaflet-bar a {\r\n\twidth: 30px;\r\n\theight: 30px;\r\n\tline-height: 30px;\r\n\t}\r\n.leaflet-touch .leaflet-bar a:first-child {\r\n\tborder-top-left-radius: 2px;\r\n\tborder-top-right-radius: 2px;\r\n\t}\r\n.leaflet-touch .leaflet-bar a:last-child {\r\n\tborder-bottom-left-radius: 2px;\r\n\tborder-bottom-right-radius: 2px;\r\n\t}\r\n\r\n/* zoom control */\r\n\r\n.leaflet-control-zoom-in,\r\n.leaflet-control-zoom-out {\r\n\tfont: bold 18px 'Lucida Console', Monaco, monospace;\r\n\ttext-indent: 1px;\r\n\t}\r\n\r\n.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out {\r\n\tfont-size: 22px;\r\n\t}\r\n\r\n\r\n/* layers control */\r\n\r\n.leaflet-control-layers {\r\n\tbox-shadow: 0 1px 5px rgba(0,0,0,0.4);\r\n\tbackground: #fff;\r\n\tborder-radius: 5px;\r\n\t}\r\n.leaflet-control-layers-toggle {\r\n\tbackground-image: url(" + ___CSS_LOADER_URL_REPLACEMENT_0___ + ");\r\n\twidth: 36px;\r\n\theight: 36px;\r\n\t}\r\n.leaflet-retina .leaflet-control-layers-toggle {\r\n\tbackground-image: url(" + ___CSS_LOADER_URL_REPLACEMENT_1___ + ");\r\n\tbackground-size: 26px 26px;\r\n\t}\r\n.leaflet-touch .leaflet-control-layers-toggle {\r\n\twidth: 44px;\r\n\theight: 44px;\r\n\t}\r\n.leaflet-control-layers .leaflet-control-layers-list,\r\n.leaflet-control-layers-expanded .leaflet-control-layers-toggle {\r\n\tdisplay: none;\r\n\t}\r\n.leaflet-control-layers-expanded .leaflet-control-layers-list {\r\n\tdisplay: block;\r\n\tposition: relative;\r\n\t}\r\n.leaflet-control-layers-expanded {\r\n\tpadding: 6px 10px 6px 6px;\r\n\tcolor: #333;\r\n\tbackground: #fff;\r\n\t}\r\n.leaflet-control-layers-scrollbar {\r\n\toverflow-y: scroll;\r\n\toverflow-x: hidden;\r\n\tpadding-right: 5px;\r\n\t}\r\n.leaflet-control-layers-selector {\r\n\tmargin-top: 2px;\r\n\tposition: relative;\r\n\ttop: 1px;\r\n\t}\r\n.leaflet-control-layers label {\r\n\tdisplay: block;\r\n\tfont-size: 13px;\r\n\tfont-size: 1.08333em;\r\n\t}\r\n.leaflet-control-layers-separator {\r\n\theight: 0;\r\n\tborder-top: 1px solid #ddd;\r\n\tmargin: 5px -10px 5px -6px;\r\n\t}\r\n\r\n/* Default icon URLs */\r\n.leaflet-default-icon-path { /* used only in path-guessing heuristic, see L.Icon.Default */\r\n\tbackground-image: url(" + ___CSS_LOADER_URL_REPLACEMENT_2___ + ");\r\n\t}\r\n\r\n\r\n/* attribution and scale controls */\r\n\r\n.leaflet-container .leaflet-control-attribution {\r\n\tbackground: #fff;\r\n\tbackground: rgba(255, 255, 255, 0.8);\r\n\tmargin: 0;\r\n\t}\r\n.leaflet-control-attribution,\r\n.leaflet-control-scale-line {\r\n\tpadding: 0 5px;\r\n\tcolor: #333;\r\n\tline-height: 1.4;\r\n\t}\r\n.leaflet-control-attribution a {\r\n\ttext-decoration: none;\r\n\t}\r\n.leaflet-control-attribution a:hover,\r\n.leaflet-control-attribution a:focus {\r\n\ttext-decoration: underline;\r\n\t}\r\n.leaflet-attribution-flag {\r\n\tdisplay: inline !important;\r\n\tvertical-align: baseline !important;\r\n\twidth: 1em;\r\n\theight: 0.6669em;\r\n\t}\r\n.leaflet-left .leaflet-control-scale {\r\n\tmargin-left: 5px;\r\n\t}\r\n.leaflet-bottom .leaflet-control-scale {\r\n\tmargin-bottom: 5px;\r\n\t}\r\n.leaflet-control-scale-line {\r\n\tborder: 2px solid #777;\r\n\tborder-top: none;\r\n\tline-height: 1.1;\r\n\tpadding: 2px 5px 1px;\r\n\twhite-space: nowrap;\r\n\toverflow: hidden;\r\n\t-moz-box-sizing: border-box;\r\n\t box-sizing: border-box;\r\n\r\n\tbackground: #fff;\r\n\tbackground: rgba(255, 255, 255, 0.5);\r\n\t}\r\n.leaflet-control-scale-line:not(:first-child) {\r\n\tborder-top: 2px solid #777;\r\n\tborder-bottom: none;\r\n\tmargin-top: -2px;\r\n\t}\r\n.leaflet-control-scale-line:not(:first-child):not(:last-child) {\r\n\tborder-bottom: 2px solid #777;\r\n\t}\r\n\r\n.leaflet-touch .leaflet-control-attribution,\r\n.leaflet-touch .leaflet-control-layers,\r\n.leaflet-touch .leaflet-bar {\r\n\tbox-shadow: none;\r\n\t}\r\n.leaflet-touch .leaflet-control-layers,\r\n.leaflet-touch .leaflet-bar {\r\n\tborder: 2px solid rgba(0,0,0,0.2);\r\n\tbackground-clip: padding-box;\r\n\t}\r\n\r\n\r\n/* popup */\r\n\r\n.leaflet-popup {\r\n\tposition: absolute;\r\n\ttext-align: center;\r\n\tmargin-bottom: 20px;\r\n\t}\r\n.leaflet-popup-content-wrapper {\r\n\tpadding: 1px;\r\n\ttext-align: left;\r\n\tborder-radius: 12px;\r\n\t}\r\n.leaflet-popup-content {\r\n\tmargin: 13px 24px 13px 20px;\r\n\tline-height: 1.3;\r\n\tfont-size: 13px;\r\n\tfont-size: 1.08333em;\r\n\tmin-height: 1px;\r\n\t}\r\n.leaflet-popup-content p {\r\n\tmargin: 17px 0;\r\n\tmargin: 1.3em 0;\r\n\t}\r\n.leaflet-popup-tip-container {\r\n\twidth: 40px;\r\n\theight: 20px;\r\n\tposition: absolute;\r\n\tleft: 50%;\r\n\tmargin-top: -1px;\r\n\tmargin-left: -20px;\r\n\toverflow: hidden;\r\n\tpointer-events: none;\r\n\t}\r\n.leaflet-popup-tip {\r\n\twidth: 17px;\r\n\theight: 17px;\r\n\tpadding: 1px;\r\n\r\n\tmargin: -10px auto 0;\r\n\tpointer-events: auto;\r\n\r\n\t-webkit-transform: rotate(45deg);\r\n\t -moz-transform: rotate(45deg);\r\n\t -ms-transform: rotate(45deg);\r\n\t transform: rotate(45deg);\r\n\t}\r\n.leaflet-popup-content-wrapper,\r\n.leaflet-popup-tip {\r\n\tbackground: white;\r\n\tcolor: #333;\r\n\tbox-shadow: 0 3px 14px rgba(0,0,0,0.4);\r\n\t}\r\n.leaflet-container a.leaflet-popup-close-button {\r\n\tposition: absolute;\r\n\ttop: 0;\r\n\tright: 0;\r\n\tborder: none;\r\n\ttext-align: center;\r\n\twidth: 24px;\r\n\theight: 24px;\r\n\tfont: 16px/24px Tahoma, Verdana, sans-serif;\r\n\tcolor: #757575;\r\n\ttext-decoration: none;\r\n\tbackground: transparent;\r\n\t}\r\n.leaflet-container a.leaflet-popup-close-button:hover,\r\n.leaflet-container a.leaflet-popup-close-button:focus {\r\n\tcolor: #585858;\r\n\t}\r\n.leaflet-popup-scrolled {\r\n\toverflow: auto;\r\n\t}\r\n\r\n.leaflet-oldie .leaflet-popup-content-wrapper {\r\n\t-ms-zoom: 1;\r\n\t}\r\n.leaflet-oldie .leaflet-popup-tip {\r\n\twidth: 24px;\r\n\tmargin: 0 auto;\r\n\r\n\t-ms-filter: \"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)\";\r\n\tfilter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);\r\n\t}\r\n\r\n.leaflet-oldie .leaflet-control-zoom,\r\n.leaflet-oldie .leaflet-control-layers,\r\n.leaflet-oldie .leaflet-popup-content-wrapper,\r\n.leaflet-oldie .leaflet-popup-tip {\r\n\tborder: 1px solid #999;\r\n\t}\r\n\r\n\r\n/* div icon */\r\n\r\n.leaflet-div-icon {\r\n\tbackground: #fff;\r\n\tborder: 1px solid #666;\r\n\t}\r\n\r\n\r\n/* Tooltip */\r\n/* Base styles for the element that has a tooltip */\r\n.leaflet-tooltip {\r\n\tposition: absolute;\r\n\tpadding: 6px;\r\n\tbackground-color: #fff;\r\n\tborder: 1px solid #fff;\r\n\tborder-radius: 3px;\r\n\tcolor: #222;\r\n\twhite-space: nowrap;\r\n\t-webkit-user-select: none;\r\n\t-moz-user-select: none;\r\n\t-ms-user-select: none;\r\n\tuser-select: none;\r\n\tpointer-events: none;\r\n\tbox-shadow: 0 1px 3px rgba(0,0,0,0.4);\r\n\t}\r\n.leaflet-tooltip.leaflet-interactive {\r\n\tcursor: pointer;\r\n\tpointer-events: auto;\r\n\t}\r\n.leaflet-tooltip-top:before,\r\n.leaflet-tooltip-bottom:before,\r\n.leaflet-tooltip-left:before,\r\n.leaflet-tooltip-right:before {\r\n\tposition: absolute;\r\n\tpointer-events: none;\r\n\tborder: 6px solid transparent;\r\n\tbackground: transparent;\r\n\tcontent: \"\";\r\n\t}\r\n\r\n/* Directions */\r\n\r\n.leaflet-tooltip-bottom {\r\n\tmargin-top: 6px;\r\n}\r\n.leaflet-tooltip-top {\r\n\tmargin-top: -6px;\r\n}\r\n.leaflet-tooltip-bottom:before,\r\n.leaflet-tooltip-top:before {\r\n\tleft: 50%;\r\n\tmargin-left: -6px;\r\n\t}\r\n.leaflet-tooltip-top:before {\r\n\tbottom: 0;\r\n\tmargin-bottom: -12px;\r\n\tborder-top-color: #fff;\r\n\t}\r\n.leaflet-tooltip-bottom:before {\r\n\ttop: 0;\r\n\tmargin-top: -12px;\r\n\tmargin-left: -6px;\r\n\tborder-bottom-color: #fff;\r\n\t}\r\n.leaflet-tooltip-left {\r\n\tmargin-left: -6px;\r\n}\r\n.leaflet-tooltip-right {\r\n\tmargin-left: 6px;\r\n}\r\n.leaflet-tooltip-left:before,\r\n.leaflet-tooltip-right:before {\r\n\ttop: 50%;\r\n\tmargin-top: -6px;\r\n\t}\r\n.leaflet-tooltip-left:before {\r\n\tright: 0;\r\n\tmargin-right: -12px;\r\n\tborder-left-color: #fff;\r\n\t}\r\n.leaflet-tooltip-right:before {\r\n\tleft: 0;\r\n\tmargin-left: -12px;\r\n\tborder-right-color: #fff;\r\n\t}\r\n\r\n/* Printing */\r\n\t\r\n@media print {\r\n\t/* Prevent printers from removing background-images of controls. */\r\n\t.leaflet-control {\r\n\t\t-webkit-print-color-adjust: exact;\r\n\t\tprint-color-adjust: exact;\r\n\t\t}\r\n\t}\r\n", ""]);
|
|
7889
7889
|
// Exports
|
|
7890
7890
|
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
|
|
7891
7891
|
|
|
@@ -11273,14 +11273,14 @@
|
|
|
11273
11273
|
/***/ (function(__unused_webpack_module, exports) {
|
|
11274
11274
|
|
|
11275
11275
|
/* @preserve
|
|
11276
|
-
* Leaflet 1.
|
|
11276
|
+
* Leaflet 1.9.2, a JS library for interactive maps. https://leafletjs.com
|
|
11277
11277
|
* (c) 2010-2022 Vladimir Agafonkin, (c) 2010-2011 CloudMade
|
|
11278
11278
|
*/
|
|
11279
11279
|
|
|
11280
11280
|
(function (global, factory) {
|
|
11281
11281
|
factory(exports) ;
|
|
11282
11282
|
})(this, (function (exports) {
|
|
11283
|
-
var version = "1.
|
|
11283
|
+
var version = "1.9.2";
|
|
11284
11284
|
|
|
11285
11285
|
/*
|
|
11286
11286
|
* @namespace Util
|
|
@@ -11776,35 +11776,30 @@
|
|
|
11776
11776
|
},
|
|
11777
11777
|
|
|
11778
11778
|
// attach listener (without syntactic sugar now)
|
|
11779
|
-
_on: function (type, fn, context) {
|
|
11779
|
+
_on: function (type, fn, context, _once) {
|
|
11780
11780
|
if (typeof fn !== 'function') {
|
|
11781
11781
|
console.warn('wrong listener type: ' + typeof fn);
|
|
11782
11782
|
return;
|
|
11783
11783
|
}
|
|
11784
|
-
this._events = this._events || {};
|
|
11785
11784
|
|
|
11786
|
-
|
|
11787
|
-
|
|
11788
|
-
|
|
11789
|
-
typeListeners = [];
|
|
11790
|
-
this._events[type] = typeListeners;
|
|
11785
|
+
// check if fn already there
|
|
11786
|
+
if (this._listens(type, fn, context) !== false) {
|
|
11787
|
+
return;
|
|
11791
11788
|
}
|
|
11792
11789
|
|
|
11793
11790
|
if (context === this) {
|
|
11794
11791
|
// Less memory footprint.
|
|
11795
11792
|
context = undefined;
|
|
11796
11793
|
}
|
|
11797
|
-
var newListener = {fn: fn, ctx: context},
|
|
11798
|
-
listeners = typeListeners;
|
|
11799
11794
|
|
|
11800
|
-
|
|
11801
|
-
|
|
11802
|
-
|
|
11803
|
-
return;
|
|
11804
|
-
}
|
|
11795
|
+
var newListener = {fn: fn, ctx: context};
|
|
11796
|
+
if (_once) {
|
|
11797
|
+
newListener.once = true;
|
|
11805
11798
|
}
|
|
11806
11799
|
|
|
11807
|
-
|
|
11800
|
+
this._events = this._events || {};
|
|
11801
|
+
this._events[type] = this._events[type] || [];
|
|
11802
|
+
this._events[type].push(newListener);
|
|
11808
11803
|
},
|
|
11809
11804
|
|
|
11810
11805
|
_off: function (type, fn, context) {
|
|
@@ -11812,10 +11807,11 @@
|
|
|
11812
11807
|
i,
|
|
11813
11808
|
len;
|
|
11814
11809
|
|
|
11815
|
-
if (!this._events) {
|
|
11810
|
+
if (!this._events) {
|
|
11811
|
+
return;
|
|
11812
|
+
}
|
|
11816
11813
|
|
|
11817
11814
|
listeners = this._events[type];
|
|
11818
|
-
|
|
11819
11815
|
if (!listeners) {
|
|
11820
11816
|
return;
|
|
11821
11817
|
}
|
|
@@ -11833,32 +11829,24 @@
|
|
|
11833
11829
|
return;
|
|
11834
11830
|
}
|
|
11835
11831
|
|
|
11836
|
-
if (context === this) {
|
|
11837
|
-
context = undefined;
|
|
11838
|
-
}
|
|
11839
|
-
|
|
11840
11832
|
if (typeof fn !== 'function') {
|
|
11841
11833
|
console.warn('wrong listener type: ' + typeof fn);
|
|
11842
11834
|
return;
|
|
11843
11835
|
}
|
|
11836
|
+
|
|
11844
11837
|
// find fn and remove it
|
|
11845
|
-
|
|
11846
|
-
|
|
11847
|
-
|
|
11848
|
-
if (
|
|
11849
|
-
if
|
|
11850
|
-
|
|
11851
|
-
l.fn = falseFn;
|
|
11852
|
-
|
|
11853
|
-
/* copy array in case events are being fired */
|
|
11854
|
-
this._events[type] = listeners = listeners.slice();
|
|
11855
|
-
}
|
|
11856
|
-
listeners.splice(i, 1);
|
|
11838
|
+
var index = this._listens(type, fn, context);
|
|
11839
|
+
if (index !== false) {
|
|
11840
|
+
var listener = listeners[index];
|
|
11841
|
+
if (this._firingCount) {
|
|
11842
|
+
// set the removed listener to noop so that's not called if remove happens in fire
|
|
11843
|
+
listener.fn = falseFn;
|
|
11857
11844
|
|
|
11858
|
-
|
|
11845
|
+
/* copy array in case events are being fired */
|
|
11846
|
+
this._events[type] = listeners = listeners.slice();
|
|
11859
11847
|
}
|
|
11848
|
+
listeners.splice(index, 1);
|
|
11860
11849
|
}
|
|
11861
|
-
console.warn('listener not found');
|
|
11862
11850
|
},
|
|
11863
11851
|
|
|
11864
11852
|
// @method fire(type: String, data?: Object, propagate?: Boolean): this
|
|
@@ -11876,12 +11864,16 @@
|
|
|
11876
11864
|
|
|
11877
11865
|
if (this._events) {
|
|
11878
11866
|
var listeners = this._events[type];
|
|
11879
|
-
|
|
11880
11867
|
if (listeners) {
|
|
11881
11868
|
this._firingCount = (this._firingCount + 1) || 1;
|
|
11882
11869
|
for (var i = 0, len = listeners.length; i < len; i++) {
|
|
11883
11870
|
var l = listeners[i];
|
|
11884
|
-
l.fn
|
|
11871
|
+
// off overwrites l.fn, so we need to copy fn to a var
|
|
11872
|
+
var fn = l.fn;
|
|
11873
|
+
if (l.once) {
|
|
11874
|
+
this.off(type, fn, l.ctx);
|
|
11875
|
+
}
|
|
11876
|
+
fn.call(l.ctx || this, event);
|
|
11885
11877
|
}
|
|
11886
11878
|
|
|
11887
11879
|
this._firingCount--;
|
|
@@ -11897,45 +11889,85 @@
|
|
|
11897
11889
|
},
|
|
11898
11890
|
|
|
11899
11891
|
// @method listens(type: String, propagate?: Boolean): Boolean
|
|
11892
|
+
// @method listens(type: String, fn: Function, context?: Object, propagate?: Boolean): Boolean
|
|
11900
11893
|
// Returns `true` if a particular event type has any listeners attached to it.
|
|
11901
11894
|
// The verification can optionally be propagated, it will return `true` if parents have the listener attached to it.
|
|
11902
|
-
listens: function (type, propagate) {
|
|
11895
|
+
listens: function (type, fn, context, propagate) {
|
|
11903
11896
|
if (typeof type !== 'string') {
|
|
11904
11897
|
console.warn('"string" type argument expected');
|
|
11905
11898
|
}
|
|
11899
|
+
|
|
11900
|
+
// we don't overwrite the input `fn` value, because we need to use it for propagation
|
|
11901
|
+
var _fn = fn;
|
|
11902
|
+
if (typeof fn !== 'function') {
|
|
11903
|
+
propagate = !!fn;
|
|
11904
|
+
_fn = undefined;
|
|
11905
|
+
context = undefined;
|
|
11906
|
+
}
|
|
11907
|
+
|
|
11906
11908
|
var listeners = this._events && this._events[type];
|
|
11907
|
-
if (listeners && listeners.length) {
|
|
11909
|
+
if (listeners && listeners.length) {
|
|
11910
|
+
if (this._listens(type, _fn, context) !== false) {
|
|
11911
|
+
return true;
|
|
11912
|
+
}
|
|
11913
|
+
}
|
|
11908
11914
|
|
|
11909
11915
|
if (propagate) {
|
|
11910
11916
|
// also check parents for listeners if event propagates
|
|
11911
11917
|
for (var id in this._eventParents) {
|
|
11912
|
-
if (this._eventParents[id].listens(type, propagate)) { return true; }
|
|
11918
|
+
if (this._eventParents[id].listens(type, fn, context, propagate)) { return true; }
|
|
11919
|
+
}
|
|
11920
|
+
}
|
|
11921
|
+
return false;
|
|
11922
|
+
},
|
|
11923
|
+
|
|
11924
|
+
// returns the index (number) or false
|
|
11925
|
+
_listens: function (type, fn, context) {
|
|
11926
|
+
if (!this._events) {
|
|
11927
|
+
return false;
|
|
11928
|
+
}
|
|
11929
|
+
|
|
11930
|
+
var listeners = this._events[type] || [];
|
|
11931
|
+
if (!fn) {
|
|
11932
|
+
return !!listeners.length;
|
|
11933
|
+
}
|
|
11934
|
+
|
|
11935
|
+
if (context === this) {
|
|
11936
|
+
// Less memory footprint.
|
|
11937
|
+
context = undefined;
|
|
11938
|
+
}
|
|
11939
|
+
|
|
11940
|
+
for (var i = 0, len = listeners.length; i < len; i++) {
|
|
11941
|
+
if (listeners[i].fn === fn && listeners[i].ctx === context) {
|
|
11942
|
+
return i;
|
|
11913
11943
|
}
|
|
11914
11944
|
}
|
|
11915
11945
|
return false;
|
|
11946
|
+
|
|
11916
11947
|
},
|
|
11917
11948
|
|
|
11918
11949
|
// @method once(…): this
|
|
11919
11950
|
// Behaves as [`on(…)`](#evented-on), except the listener will only get fired once and then removed.
|
|
11920
11951
|
once: function (types, fn, context) {
|
|
11921
11952
|
|
|
11953
|
+
// types can be a map of types/handlers
|
|
11922
11954
|
if (typeof types === 'object') {
|
|
11923
11955
|
for (var type in types) {
|
|
11924
|
-
|
|
11956
|
+
// we don't process space-separated events here for performance;
|
|
11957
|
+
// it's a hot path since Layer uses the on(obj) syntax
|
|
11958
|
+
this._on(type, types[type], fn, true);
|
|
11925
11959
|
}
|
|
11926
|
-
return this;
|
|
11927
|
-
}
|
|
11928
11960
|
|
|
11929
|
-
|
|
11930
|
-
|
|
11931
|
-
|
|
11932
|
-
.off(types, handler, context);
|
|
11933
|
-
}, this);
|
|
11961
|
+
} else {
|
|
11962
|
+
// types can be a string of space-separated words
|
|
11963
|
+
types = splitWords(types);
|
|
11934
11964
|
|
|
11935
|
-
|
|
11936
|
-
|
|
11937
|
-
|
|
11938
|
-
|
|
11965
|
+
for (var i = 0, len = types.length; i < len; i++) {
|
|
11966
|
+
this._on(types[i], fn, context, true);
|
|
11967
|
+
}
|
|
11968
|
+
}
|
|
11969
|
+
|
|
11970
|
+
return this;
|
|
11939
11971
|
},
|
|
11940
11972
|
|
|
11941
11973
|
// @method addEventParent(obj: Evented): this
|
|
@@ -12251,21 +12283,36 @@
|
|
|
12251
12283
|
Bounds.prototype = {
|
|
12252
12284
|
// @method extend(point: Point): this
|
|
12253
12285
|
// Extends the bounds to contain the given point.
|
|
12254
|
-
|
|
12255
|
-
|
|
12286
|
+
|
|
12287
|
+
// @alternative
|
|
12288
|
+
// @method extend(otherBounds: Bounds): this
|
|
12289
|
+
// Extend the bounds to contain the given bounds
|
|
12290
|
+
extend: function (obj) {
|
|
12291
|
+
var min2, max2;
|
|
12292
|
+
if (!obj) { return this; }
|
|
12293
|
+
|
|
12294
|
+
if (obj instanceof Point || typeof obj[0] === 'number' || 'x' in obj) {
|
|
12295
|
+
min2 = max2 = toPoint(obj);
|
|
12296
|
+
} else {
|
|
12297
|
+
obj = toBounds(obj);
|
|
12298
|
+
min2 = obj.min;
|
|
12299
|
+
max2 = obj.max;
|
|
12300
|
+
|
|
12301
|
+
if (!min2 || !max2) { return this; }
|
|
12302
|
+
}
|
|
12256
12303
|
|
|
12257
12304
|
// @property min: Point
|
|
12258
12305
|
// The top left corner of the rectangle.
|
|
12259
12306
|
// @property max: Point
|
|
12260
12307
|
// The bottom right corner of the rectangle.
|
|
12261
12308
|
if (!this.min && !this.max) {
|
|
12262
|
-
this.min =
|
|
12263
|
-
this.max =
|
|
12309
|
+
this.min = min2.clone();
|
|
12310
|
+
this.max = max2.clone();
|
|
12264
12311
|
} else {
|
|
12265
|
-
this.min.x = Math.min(
|
|
12266
|
-
this.max.x = Math.max(
|
|
12267
|
-
this.min.y = Math.min(
|
|
12268
|
-
this.max.y = Math.max(
|
|
12312
|
+
this.min.x = Math.min(min2.x, this.min.x);
|
|
12313
|
+
this.max.x = Math.max(max2.x, this.max.x);
|
|
12314
|
+
this.min.y = Math.min(min2.y, this.min.y);
|
|
12315
|
+
this.max.y = Math.max(max2.y, this.max.y);
|
|
12269
12316
|
}
|
|
12270
12317
|
return this;
|
|
12271
12318
|
},
|
|
@@ -12273,7 +12320,7 @@
|
|
|
12273
12320
|
// @method getCenter(round?: Boolean): Point
|
|
12274
12321
|
// Returns the center point of the bounds.
|
|
12275
12322
|
getCenter: function (round) {
|
|
12276
|
-
return
|
|
12323
|
+
return toPoint(
|
|
12277
12324
|
(this.min.x + this.max.x) / 2,
|
|
12278
12325
|
(this.min.y + this.max.y) / 2, round);
|
|
12279
12326
|
},
|
|
@@ -12281,13 +12328,13 @@
|
|
|
12281
12328
|
// @method getBottomLeft(): Point
|
|
12282
12329
|
// Returns the bottom-left point of the bounds.
|
|
12283
12330
|
getBottomLeft: function () {
|
|
12284
|
-
return
|
|
12331
|
+
return toPoint(this.min.x, this.max.y);
|
|
12285
12332
|
},
|
|
12286
12333
|
|
|
12287
12334
|
// @method getTopRight(): Point
|
|
12288
12335
|
// Returns the top-right point of the bounds.
|
|
12289
12336
|
getTopRight: function () { // -> Point
|
|
12290
|
-
return
|
|
12337
|
+
return toPoint(this.max.x, this.min.y);
|
|
12291
12338
|
},
|
|
12292
12339
|
|
|
12293
12340
|
// @method getTopLeft(): Point
|
|
@@ -12367,9 +12414,40 @@
|
|
|
12367
12414
|
return xOverlaps && yOverlaps;
|
|
12368
12415
|
},
|
|
12369
12416
|
|
|
12417
|
+
// @method isValid(): Boolean
|
|
12418
|
+
// Returns `true` if the bounds are properly initialized.
|
|
12370
12419
|
isValid: function () {
|
|
12371
12420
|
return !!(this.min && this.max);
|
|
12372
|
-
}
|
|
12421
|
+
},
|
|
12422
|
+
|
|
12423
|
+
|
|
12424
|
+
// @method pad(bufferRatio: Number): Bounds
|
|
12425
|
+
// Returns bounds created by extending or retracting the current bounds by a given ratio in each direction.
|
|
12426
|
+
// For example, a ratio of 0.5 extends the bounds by 50% in each direction.
|
|
12427
|
+
// Negative values will retract the bounds.
|
|
12428
|
+
pad: function (bufferRatio) {
|
|
12429
|
+
var min = this.min,
|
|
12430
|
+
max = this.max,
|
|
12431
|
+
heightBuffer = Math.abs(min.x - max.x) * bufferRatio,
|
|
12432
|
+
widthBuffer = Math.abs(min.y - max.y) * bufferRatio;
|
|
12433
|
+
|
|
12434
|
+
|
|
12435
|
+
return toBounds(
|
|
12436
|
+
toPoint(min.x - heightBuffer, min.y - widthBuffer),
|
|
12437
|
+
toPoint(max.x + heightBuffer, max.y + widthBuffer));
|
|
12438
|
+
},
|
|
12439
|
+
|
|
12440
|
+
|
|
12441
|
+
// @method equals(otherBounds: Bounds): Boolean
|
|
12442
|
+
// Returns `true` if the rectangle is equivalent to the given bounds.
|
|
12443
|
+
equals: function (bounds) {
|
|
12444
|
+
if (!bounds) { return false; }
|
|
12445
|
+
|
|
12446
|
+
bounds = toBounds(bounds);
|
|
12447
|
+
|
|
12448
|
+
return this.min.equals(bounds.getTopLeft()) &&
|
|
12449
|
+
this.max.equals(bounds.getBottomRight());
|
|
12450
|
+
},
|
|
12373
12451
|
};
|
|
12374
12452
|
|
|
12375
12453
|
|
|
@@ -13277,6 +13355,13 @@
|
|
|
13277
13355
|
}
|
|
13278
13356
|
}());
|
|
13279
13357
|
|
|
13358
|
+
|
|
13359
|
+
// @property mac: Boolean; `true` when the browser is running in a Mac platform
|
|
13360
|
+
var mac = navigator.platform.indexOf('Mac') === 0;
|
|
13361
|
+
|
|
13362
|
+
// @property mac: Boolean; `true` when the browser is running in a Linux platform
|
|
13363
|
+
var linux = navigator.platform.indexOf('Linux') === 0;
|
|
13364
|
+
|
|
13280
13365
|
function userAgentContains(str) {
|
|
13281
13366
|
return navigator.userAgent.toLowerCase().indexOf(str) >= 0;
|
|
13282
13367
|
}
|
|
@@ -13315,7 +13400,9 @@
|
|
|
13315
13400
|
canvas: canvas$1,
|
|
13316
13401
|
svg: svg$1,
|
|
13317
13402
|
vml: vml,
|
|
13318
|
-
inlineSvg: inlineSvg
|
|
13403
|
+
inlineSvg: inlineSvg,
|
|
13404
|
+
mac: mac,
|
|
13405
|
+
linux: linux
|
|
13319
13406
|
};
|
|
13320
13407
|
|
|
13321
13408
|
/*
|
|
@@ -13458,6 +13545,25 @@
|
|
|
13458
13545
|
return;
|
|
13459
13546
|
}
|
|
13460
13547
|
|
|
13548
|
+
// When clicking on an <input>, the browser generates a click on its
|
|
13549
|
+
// <label> (and vice versa) triggering two clicks in quick succession.
|
|
13550
|
+
// This ignores clicks on elements which are a label with a 'for'
|
|
13551
|
+
// attribute (or children of such a label), but not children of
|
|
13552
|
+
// a <input>.
|
|
13553
|
+
var path = getPropagationPath(e);
|
|
13554
|
+
if (path.some(function (el) {
|
|
13555
|
+
return el instanceof HTMLLabelElement && el.attributes.for;
|
|
13556
|
+
}) &&
|
|
13557
|
+
!path.some(function (el) {
|
|
13558
|
+
return (
|
|
13559
|
+
el instanceof HTMLInputElement ||
|
|
13560
|
+
el instanceof HTMLSelectElement
|
|
13561
|
+
);
|
|
13562
|
+
})
|
|
13563
|
+
) {
|
|
13564
|
+
return;
|
|
13565
|
+
}
|
|
13566
|
+
|
|
13461
13567
|
var now = Date.now();
|
|
13462
13568
|
if (now - last <= delay) {
|
|
13463
13569
|
detail++;
|
|
@@ -14079,6 +14185,26 @@
|
|
|
14079
14185
|
return this;
|
|
14080
14186
|
}
|
|
14081
14187
|
|
|
14188
|
+
// @function getPropagationPath(ev: DOMEvent): Array
|
|
14189
|
+
// Compatibility polyfill for [`Event.composedPath()`](https://developer.mozilla.org/en-US/docs/Web/API/Event/composedPath).
|
|
14190
|
+
// Returns an array containing the `HTMLElement`s that the given DOM event
|
|
14191
|
+
// should propagate to (if not stopped).
|
|
14192
|
+
function getPropagationPath(ev) {
|
|
14193
|
+
if (ev.composedPath) {
|
|
14194
|
+
return ev.composedPath();
|
|
14195
|
+
}
|
|
14196
|
+
|
|
14197
|
+
var path = [];
|
|
14198
|
+
var el = ev.target;
|
|
14199
|
+
|
|
14200
|
+
while (el) {
|
|
14201
|
+
path.push(el);
|
|
14202
|
+
el = el.parentNode;
|
|
14203
|
+
}
|
|
14204
|
+
return path;
|
|
14205
|
+
}
|
|
14206
|
+
|
|
14207
|
+
|
|
14082
14208
|
// @function getMousePosition(ev: DOMEvent, container?: HTMLElement): Point
|
|
14083
14209
|
// Gets normalized mouse position from a DOM event relative to the
|
|
14084
14210
|
// `container` (border excluded) or to the whole page if not specified.
|
|
@@ -14098,12 +14224,15 @@
|
|
|
14098
14224
|
);
|
|
14099
14225
|
}
|
|
14100
14226
|
|
|
14101
|
-
// Chrome on Win scrolls double the pixels as in other platforms (see #4538),
|
|
14102
|
-
// and Firefox scrolls device pixels, not CSS pixels
|
|
14103
|
-
var wheelPxFactor =
|
|
14104
|
-
(Browser.win && Browser.chrome) ? 2 * window.devicePixelRatio :
|
|
14105
|
-
Browser.gecko ? window.devicePixelRatio : 1;
|
|
14106
14227
|
|
|
14228
|
+
// except , Safari and
|
|
14229
|
+
// We need double the scroll pixels (see #7403 and #4538) for all Browsers
|
|
14230
|
+
// except OSX (Mac) -> 3x, Chrome running on Linux 1x
|
|
14231
|
+
|
|
14232
|
+
var wheelPxFactor =
|
|
14233
|
+
(Browser.linux && Browser.chrome) ? window.devicePixelRatio :
|
|
14234
|
+
Browser.mac ? window.devicePixelRatio * 3 :
|
|
14235
|
+
window.devicePixelRatio > 0 ? 2 * window.devicePixelRatio : 1;
|
|
14107
14236
|
// @function getWheelDelta(ev: DOMEvent): Number
|
|
14108
14237
|
// Gets normalized wheel delta from a wheel DOM event, in vertical
|
|
14109
14238
|
// pixels scrolled (negative if scrolling down).
|
|
@@ -14147,6 +14276,7 @@
|
|
|
14147
14276
|
disableClickPropagation: disableClickPropagation,
|
|
14148
14277
|
preventDefault: preventDefault,
|
|
14149
14278
|
stop: stop,
|
|
14279
|
+
getPropagationPath: getPropagationPath,
|
|
14150
14280
|
getMousePosition: getMousePosition,
|
|
14151
14281
|
getWheelDelta: getWheelDelta,
|
|
14152
14282
|
isExternalTarget: isExternalTarget,
|
|
@@ -14162,8 +14292,21 @@
|
|
|
14162
14292
|
*
|
|
14163
14293
|
* @example
|
|
14164
14294
|
* ```js
|
|
14165
|
-
* var
|
|
14166
|
-
*
|
|
14295
|
+
* var myPositionMarker = L.marker([48.864716, 2.294694]).addTo(map);
|
|
14296
|
+
*
|
|
14297
|
+
* myPositionMarker.on("click", function() {
|
|
14298
|
+
* var pos = map.latLngToLayerPoint(myPositionMarker.getLatLng());
|
|
14299
|
+
* pos.y -= 25;
|
|
14300
|
+
* var fx = new L.PosAnimation();
|
|
14301
|
+
*
|
|
14302
|
+
* fx.once('end',function() {
|
|
14303
|
+
* pos.y += 25;
|
|
14304
|
+
* fx.run(myPositionMarker._icon, pos, 0.8);
|
|
14305
|
+
* });
|
|
14306
|
+
*
|
|
14307
|
+
* fx.run(myPositionMarker._icon, pos, 0.3);
|
|
14308
|
+
* });
|
|
14309
|
+
*
|
|
14167
14310
|
* ```
|
|
14168
14311
|
*
|
|
14169
14312
|
* @constructor L.PosAnimation()
|
|
@@ -14443,7 +14586,7 @@
|
|
|
14443
14586
|
}
|
|
14444
14587
|
|
|
14445
14588
|
// animation didn't start, just reset the map view
|
|
14446
|
-
this._resetView(center, zoom);
|
|
14589
|
+
this._resetView(center, zoom, options.pan && options.pan.noMoveStart);
|
|
14447
14590
|
|
|
14448
14591
|
return this;
|
|
14449
14592
|
},
|
|
@@ -14686,11 +14829,13 @@
|
|
|
14686
14829
|
setMaxBounds: function (bounds) {
|
|
14687
14830
|
bounds = toLatLngBounds(bounds);
|
|
14688
14831
|
|
|
14832
|
+
if (this.listens('moveend', this._panInsideMaxBounds)) {
|
|
14833
|
+
this.off('moveend', this._panInsideMaxBounds);
|
|
14834
|
+
}
|
|
14835
|
+
|
|
14689
14836
|
if (!bounds.isValid()) {
|
|
14690
14837
|
this.options.maxBounds = null;
|
|
14691
|
-
return this
|
|
14692
|
-
} else if (this.options.maxBounds) {
|
|
14693
|
-
this.off('moveend', this._panInsideMaxBounds);
|
|
14838
|
+
return this;
|
|
14694
14839
|
}
|
|
14695
14840
|
|
|
14696
14841
|
this.options.maxBounds = bounds;
|
|
@@ -15060,7 +15205,7 @@
|
|
|
15060
15205
|
this._checkIfLoaded();
|
|
15061
15206
|
|
|
15062
15207
|
if (this._lastCenter && !this._moved()) {
|
|
15063
|
-
return this._lastCenter;
|
|
15208
|
+
return this._lastCenter.clone();
|
|
15064
15209
|
}
|
|
15065
15210
|
return this.layerPointToLatLng(this._getCenterLayerPoint());
|
|
15066
15211
|
},
|
|
@@ -15409,7 +15554,7 @@
|
|
|
15409
15554
|
// private methods that modify map state
|
|
15410
15555
|
|
|
15411
15556
|
// @section Map state change events
|
|
15412
|
-
_resetView: function (center, zoom) {
|
|
15557
|
+
_resetView: function (center, zoom, noMoveStart) {
|
|
15413
15558
|
setPosition(this._mapPane, new Point(0, 0));
|
|
15414
15559
|
|
|
15415
15560
|
var loading = !this._loaded;
|
|
@@ -15420,7 +15565,7 @@
|
|
|
15420
15565
|
|
|
15421
15566
|
var zoomChanged = this._zoom !== zoom;
|
|
15422
15567
|
this
|
|
15423
|
-
._moveStart(zoomChanged,
|
|
15568
|
+
._moveStart(zoomChanged, noMoveStart)
|
|
15424
15569
|
._move(center, zoom)
|
|
15425
15570
|
._moveEnd(zoomChanged);
|
|
15426
15571
|
|
|
@@ -15617,7 +15762,7 @@
|
|
|
15617
15762
|
},
|
|
15618
15763
|
|
|
15619
15764
|
_isClickDisabled: function (el) {
|
|
15620
|
-
while (el !== this._container) {
|
|
15765
|
+
while (el && el !== this._container) {
|
|
15621
15766
|
if (el['_leaflet_disable_click']) { return true; }
|
|
15622
15767
|
el = el.parentNode;
|
|
15623
15768
|
}
|
|
@@ -16843,7 +16988,7 @@
|
|
|
16843
16988
|
return new Scale(options);
|
|
16844
16989
|
};
|
|
16845
16990
|
|
|
16846
|
-
var ukrainianFlag = '<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="12" height="8"><path fill="#4C7BE1" d="M0 0h12v4H0z"/><path fill="#FFD500" d="M0 4h12v3H0z"/><path fill="#E0BC00" d="M0 7h12v1H0z"/></svg>';
|
|
16991
|
+
var ukrainianFlag = '<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8" class="leaflet-attribution-flag"><path fill="#4C7BE1" d="M0 0h12v4H0z"/><path fill="#FFD500" d="M0 4h12v3H0z"/><path fill="#E0BC00" d="M0 7h12v1H0z"/></svg>';
|
|
16847
16992
|
|
|
16848
16993
|
|
|
16849
16994
|
/*
|
|
@@ -16912,7 +17057,7 @@
|
|
|
16912
17057
|
},
|
|
16913
17058
|
|
|
16914
17059
|
// @method addAttribution(text: String): this
|
|
16915
|
-
// Adds an attribution text (e.g. `'
|
|
17060
|
+
// Adds an attribution text (e.g. `'© OpenStreetMap contributors'`).
|
|
16916
17061
|
addAttribution: function (text) {
|
|
16917
17062
|
if (!text) { return this; }
|
|
16918
17063
|
|
|
@@ -17502,6 +17647,55 @@
|
|
|
17502
17647
|
function _flat(latlngs) {
|
|
17503
17648
|
console.warn('Deprecated use of _flat, please use L.LineUtil.isFlat instead.');
|
|
17504
17649
|
return isFlat(latlngs);
|
|
17650
|
+
}
|
|
17651
|
+
|
|
17652
|
+
/* @function polylineCenter(latlngs: LatLng[], crs: CRS): LatLng
|
|
17653
|
+
* Returns the center ([centroid](http://en.wikipedia.org/wiki/Centroid)) of the passed LatLngs (first ring) from a polyline.
|
|
17654
|
+
*/
|
|
17655
|
+
function polylineCenter(latlngs, crs) {
|
|
17656
|
+
var i, halfDist, segDist, dist, p1, p2, ratio, center;
|
|
17657
|
+
|
|
17658
|
+
if (!latlngs || latlngs.length === 0) {
|
|
17659
|
+
throw new Error('latlngs not passed');
|
|
17660
|
+
}
|
|
17661
|
+
|
|
17662
|
+
if (!isFlat(latlngs)) {
|
|
17663
|
+
console.warn('latlngs are not flat! Only the first ring will be used');
|
|
17664
|
+
latlngs = latlngs[0];
|
|
17665
|
+
}
|
|
17666
|
+
|
|
17667
|
+
var points = [];
|
|
17668
|
+
for (var j in latlngs) {
|
|
17669
|
+
points.push(crs.project(toLatLng(latlngs[j])));
|
|
17670
|
+
}
|
|
17671
|
+
|
|
17672
|
+
var len = points.length;
|
|
17673
|
+
|
|
17674
|
+
for (i = 0, halfDist = 0; i < len - 1; i++) {
|
|
17675
|
+
halfDist += points[i].distanceTo(points[i + 1]) / 2;
|
|
17676
|
+
}
|
|
17677
|
+
|
|
17678
|
+
// The line is so small in the current view that all points are on the same pixel.
|
|
17679
|
+
if (halfDist === 0) {
|
|
17680
|
+
center = points[0];
|
|
17681
|
+
} else {
|
|
17682
|
+
for (i = 0, dist = 0; i < len - 1; i++) {
|
|
17683
|
+
p1 = points[i];
|
|
17684
|
+
p2 = points[i + 1];
|
|
17685
|
+
segDist = p1.distanceTo(p2);
|
|
17686
|
+
dist += segDist;
|
|
17687
|
+
|
|
17688
|
+
if (dist > halfDist) {
|
|
17689
|
+
ratio = (dist - halfDist) / segDist;
|
|
17690
|
+
center = [
|
|
17691
|
+
p2.x - ratio * (p2.x - p1.x),
|
|
17692
|
+
p2.y - ratio * (p2.y - p1.y)
|
|
17693
|
+
];
|
|
17694
|
+
break;
|
|
17695
|
+
}
|
|
17696
|
+
}
|
|
17697
|
+
}
|
|
17698
|
+
return crs.unproject(toPoint(center));
|
|
17505
17699
|
}
|
|
17506
17700
|
|
|
17507
17701
|
var LineUtil = {
|
|
@@ -17514,7 +17708,8 @@
|
|
|
17514
17708
|
_getBitCode: _getBitCode,
|
|
17515
17709
|
_sqClosestPointOnSegment: _sqClosestPointOnSegment,
|
|
17516
17710
|
isFlat: isFlat,
|
|
17517
|
-
_flat: _flat
|
|
17711
|
+
_flat: _flat,
|
|
17712
|
+
polylineCenter: polylineCenter
|
|
17518
17713
|
};
|
|
17519
17714
|
|
|
17520
17715
|
/*
|
|
@@ -17569,11 +17764,55 @@
|
|
|
17569
17764
|
}
|
|
17570
17765
|
|
|
17571
17766
|
return points;
|
|
17767
|
+
}
|
|
17768
|
+
|
|
17769
|
+
/* @function polygonCenter(latlngs: LatLng[] crs: CRS): LatLng
|
|
17770
|
+
* Returns the center ([centroid](http://en.wikipedia.org/wiki/Centroid)) of the passed LatLngs (first ring) from a polygon.
|
|
17771
|
+
*/
|
|
17772
|
+
function polygonCenter(latlngs, crs) {
|
|
17773
|
+
var i, j, p1, p2, f, area, x, y, center;
|
|
17774
|
+
|
|
17775
|
+
if (!latlngs || latlngs.length === 0) {
|
|
17776
|
+
throw new Error('latlngs not passed');
|
|
17777
|
+
}
|
|
17778
|
+
|
|
17779
|
+
if (!isFlat(latlngs)) {
|
|
17780
|
+
console.warn('latlngs are not flat! Only the first ring will be used');
|
|
17781
|
+
latlngs = latlngs[0];
|
|
17782
|
+
}
|
|
17783
|
+
|
|
17784
|
+
var points = [];
|
|
17785
|
+
for (var k in latlngs) {
|
|
17786
|
+
points.push(crs.project(toLatLng(latlngs[k])));
|
|
17787
|
+
}
|
|
17788
|
+
|
|
17789
|
+
var len = points.length;
|
|
17790
|
+
area = x = y = 0;
|
|
17791
|
+
|
|
17792
|
+
// polygon centroid algorithm;
|
|
17793
|
+
for (i = 0, j = len - 1; i < len; j = i++) {
|
|
17794
|
+
p1 = points[i];
|
|
17795
|
+
p2 = points[j];
|
|
17796
|
+
|
|
17797
|
+
f = p1.y * p2.x - p2.y * p1.x;
|
|
17798
|
+
x += (p1.x + p2.x) * f;
|
|
17799
|
+
y += (p1.y + p2.y) * f;
|
|
17800
|
+
area += f * 3;
|
|
17801
|
+
}
|
|
17802
|
+
|
|
17803
|
+
if (area === 0) {
|
|
17804
|
+
// Polygon is so small that all points are on same pixel.
|
|
17805
|
+
center = points[0];
|
|
17806
|
+
} else {
|
|
17807
|
+
center = [x / area, y / area];
|
|
17808
|
+
}
|
|
17809
|
+
return crs.unproject(toPoint(center));
|
|
17572
17810
|
}
|
|
17573
17811
|
|
|
17574
17812
|
var PolyUtil = {
|
|
17575
17813
|
__proto__: null,
|
|
17576
|
-
clipPolygon: clipPolygon
|
|
17814
|
+
clipPolygon: clipPolygon,
|
|
17815
|
+
polygonCenter: polygonCenter
|
|
17577
17816
|
};
|
|
17578
17817
|
|
|
17579
17818
|
/*
|
|
@@ -19532,38 +19771,7 @@
|
|
|
19532
19771
|
if (!this._map) {
|
|
19533
19772
|
throw new Error('Must add layer to map before using getCenter()');
|
|
19534
19773
|
}
|
|
19535
|
-
|
|
19536
|
-
var i, halfDist, segDist, dist, p1, p2, ratio,
|
|
19537
|
-
points = this._rings[0],
|
|
19538
|
-
len = points.length;
|
|
19539
|
-
|
|
19540
|
-
if (!len) { return null; }
|
|
19541
|
-
|
|
19542
|
-
// polyline centroid algorithm; only uses the first ring if there are multiple
|
|
19543
|
-
|
|
19544
|
-
for (i = 0, halfDist = 0; i < len - 1; i++) {
|
|
19545
|
-
halfDist += points[i].distanceTo(points[i + 1]) / 2;
|
|
19546
|
-
}
|
|
19547
|
-
|
|
19548
|
-
// The line is so small in the current view that all points are on the same pixel.
|
|
19549
|
-
if (halfDist === 0) {
|
|
19550
|
-
return this._map.layerPointToLatLng(points[0]);
|
|
19551
|
-
}
|
|
19552
|
-
|
|
19553
|
-
for (i = 0, dist = 0; i < len - 1; i++) {
|
|
19554
|
-
p1 = points[i];
|
|
19555
|
-
p2 = points[i + 1];
|
|
19556
|
-
segDist = p1.distanceTo(p2);
|
|
19557
|
-
dist += segDist;
|
|
19558
|
-
|
|
19559
|
-
if (dist > halfDist) {
|
|
19560
|
-
ratio = (dist - halfDist) / segDist;
|
|
19561
|
-
return this._map.layerPointToLatLng([
|
|
19562
|
-
p2.x - ratio * (p2.x - p1.x),
|
|
19563
|
-
p2.y - ratio * (p2.y - p1.y)
|
|
19564
|
-
]);
|
|
19565
|
-
}
|
|
19566
|
-
}
|
|
19774
|
+
return polylineCenter(this._defaultShape(), this._map.options.crs);
|
|
19567
19775
|
},
|
|
19568
19776
|
|
|
19569
19777
|
// @method getBounds(): LatLngBounds
|
|
@@ -19805,39 +20013,14 @@
|
|
|
19805
20013
|
return !this._latlngs.length || !this._latlngs[0].length;
|
|
19806
20014
|
},
|
|
19807
20015
|
|
|
20016
|
+
// @method getCenter(): LatLng
|
|
20017
|
+
// Returns the center ([centroid](http://en.wikipedia.org/wiki/Centroid)) of the Polygon.
|
|
19808
20018
|
getCenter: function () {
|
|
19809
20019
|
// throws error when not yet added to map as this center calculation requires projected coordinates
|
|
19810
20020
|
if (!this._map) {
|
|
19811
20021
|
throw new Error('Must add layer to map before using getCenter()');
|
|
19812
20022
|
}
|
|
19813
|
-
|
|
19814
|
-
var i, j, p1, p2, f, area, x, y, center,
|
|
19815
|
-
points = this._rings[0],
|
|
19816
|
-
len = points.length;
|
|
19817
|
-
|
|
19818
|
-
if (!len) { return null; }
|
|
19819
|
-
|
|
19820
|
-
// polygon centroid algorithm; only uses the first ring if there are multiple
|
|
19821
|
-
|
|
19822
|
-
area = x = y = 0;
|
|
19823
|
-
|
|
19824
|
-
for (i = 0, j = len - 1; i < len; j = i++) {
|
|
19825
|
-
p1 = points[i];
|
|
19826
|
-
p2 = points[j];
|
|
19827
|
-
|
|
19828
|
-
f = p1.y * p2.x - p2.y * p1.x;
|
|
19829
|
-
x += (p1.x + p2.x) * f;
|
|
19830
|
-
y += (p1.y + p2.y) * f;
|
|
19831
|
-
area += f * 3;
|
|
19832
|
-
}
|
|
19833
|
-
|
|
19834
|
-
if (area === 0) {
|
|
19835
|
-
// Polygon is so small that all points are on same pixel.
|
|
19836
|
-
center = points[0];
|
|
19837
|
-
} else {
|
|
19838
|
-
center = [x / area, y / area];
|
|
19839
|
-
}
|
|
19840
|
-
return this._map.layerPointToLatLng(center);
|
|
20023
|
+
return polygonCenter(this._defaultShape(), this._map.options.crs);
|
|
19841
20024
|
},
|
|
19842
20025
|
|
|
19843
20026
|
_convertLatLngs: function (latlngs) {
|
|
@@ -20122,14 +20305,24 @@
|
|
|
20122
20305
|
|
|
20123
20306
|
case 'GeometryCollection':
|
|
20124
20307
|
for (i = 0, len = geometry.geometries.length; i < len; i++) {
|
|
20125
|
-
var
|
|
20308
|
+
var geoLayer = geometryToLayer({
|
|
20126
20309
|
geometry: geometry.geometries[i],
|
|
20127
20310
|
type: 'Feature',
|
|
20128
20311
|
properties: geojson.properties
|
|
20129
20312
|
}, options);
|
|
20130
20313
|
|
|
20131
|
-
if (
|
|
20132
|
-
layers.push(
|
|
20314
|
+
if (geoLayer) {
|
|
20315
|
+
layers.push(geoLayer);
|
|
20316
|
+
}
|
|
20317
|
+
}
|
|
20318
|
+
return new FeatureGroup(layers);
|
|
20319
|
+
|
|
20320
|
+
case 'FeatureCollection':
|
|
20321
|
+
for (i = 0, len = geometry.features.length; i < len; i++) {
|
|
20322
|
+
var featureLayer = geometryToLayer(geometry.features[i], options);
|
|
20323
|
+
|
|
20324
|
+
if (featureLayer) {
|
|
20325
|
+
layers.push(featureLayer);
|
|
20133
20326
|
}
|
|
20134
20327
|
}
|
|
20135
20328
|
return new FeatureGroup(layers);
|
|
@@ -20188,8 +20381,9 @@
|
|
|
20188
20381
|
var coords = [];
|
|
20189
20382
|
|
|
20190
20383
|
for (var i = 0, len = latlngs.length; i < len; i++) {
|
|
20384
|
+
// Check for flat arrays required to ensure unbalanced arrays are correctly converted in recursion
|
|
20191
20385
|
coords.push(levelsDeep ?
|
|
20192
|
-
latLngsToCoords(latlngs[i], levelsDeep - 1, closed, precision) :
|
|
20386
|
+
latLngsToCoords(latlngs[i], isFlat(latlngs[i]) ? 0 : levelsDeep - 1, closed, precision) :
|
|
20193
20387
|
latLngToCoords(latlngs[i], precision));
|
|
20194
20388
|
}
|
|
20195
20389
|
|
|
@@ -20798,13 +20992,25 @@
|
|
|
20798
20992
|
|
|
20799
20993
|
// @option pane: String = undefined
|
|
20800
20994
|
// `Map pane` where the overlay will be added.
|
|
20801
|
-
pane: undefined
|
|
20995
|
+
pane: undefined,
|
|
20996
|
+
|
|
20997
|
+
// @option content: String|HTMLElement|Function = ''
|
|
20998
|
+
// Sets the HTML content of the overlay while initializing. If a function is passed the source layer will be
|
|
20999
|
+
// passed to the function. The function should return a `String` or `HTMLElement` to be used in the overlay.
|
|
21000
|
+
content: ''
|
|
20802
21001
|
},
|
|
20803
21002
|
|
|
20804
21003
|
initialize: function (options, source) {
|
|
20805
|
-
|
|
20806
|
-
|
|
20807
|
-
|
|
21004
|
+
if (options && (options instanceof L.LatLng || isArray(options))) {
|
|
21005
|
+
this._latlng = toLatLng(options);
|
|
21006
|
+
setOptions(this, source);
|
|
21007
|
+
} else {
|
|
21008
|
+
setOptions(this, options);
|
|
21009
|
+
this._source = source;
|
|
21010
|
+
}
|
|
21011
|
+
if (this.options.content) {
|
|
21012
|
+
this._content = this.options.content;
|
|
21013
|
+
}
|
|
20808
21014
|
},
|
|
20809
21015
|
|
|
20810
21016
|
// @method openOn(map: Map): this
|
|
@@ -21116,7 +21322,8 @@
|
|
|
21116
21322
|
* marker.bindPopup(popupContent).openPopup();
|
|
21117
21323
|
* ```
|
|
21118
21324
|
* Path overlays like polylines also have a `bindPopup` method.
|
|
21119
|
-
*
|
|
21325
|
+
*
|
|
21326
|
+
* A popup can be also standalone:
|
|
21120
21327
|
*
|
|
21121
21328
|
* ```js
|
|
21122
21329
|
* var popup = L.popup()
|
|
@@ -21124,6 +21331,11 @@
|
|
|
21124
21331
|
* .setContent('<p>Hello world!<br />This is a nice popup.</p>')
|
|
21125
21332
|
* .openOn(map);
|
|
21126
21333
|
* ```
|
|
21334
|
+
* or
|
|
21335
|
+
* ```js
|
|
21336
|
+
* var popup = L.popup(latlng, {content: '<p>Hello world!<br />This is a nice popup.</p>')
|
|
21337
|
+
* .openOn(map);
|
|
21338
|
+
* ```
|
|
21127
21339
|
*/
|
|
21128
21340
|
|
|
21129
21341
|
|
|
@@ -21152,6 +21364,8 @@
|
|
|
21152
21364
|
// @option maxHeight: Number = null
|
|
21153
21365
|
// If set, creates a scrollable container of the given height
|
|
21154
21366
|
// inside a popup if its content exceeds it.
|
|
21367
|
+
// The scrollable container can be styled using the
|
|
21368
|
+
// `leaflet-popup-scrolled` CSS class selector.
|
|
21155
21369
|
maxHeight: null,
|
|
21156
21370
|
|
|
21157
21371
|
// @option autoPan: Boolean = true
|
|
@@ -21297,7 +21511,10 @@
|
|
|
21297
21511
|
closeButton.href = '#close';
|
|
21298
21512
|
closeButton.innerHTML = '<span aria-hidden="true">×</span>';
|
|
21299
21513
|
|
|
21300
|
-
on(closeButton, 'click',
|
|
21514
|
+
on(closeButton, 'click', function (ev) {
|
|
21515
|
+
preventDefault(ev);
|
|
21516
|
+
this.close();
|
|
21517
|
+
}, this);
|
|
21301
21518
|
}
|
|
21302
21519
|
},
|
|
21303
21520
|
|
|
@@ -21391,6 +21608,9 @@
|
|
|
21391
21608
|
// @namespace Popup
|
|
21392
21609
|
// @factory L.popup(options?: Popup options, source?: Layer)
|
|
21393
21610
|
// Instantiates a `Popup` object given an optional `options` object that describes its appearance and location and an optional `source` object that is used to tag the popup with a reference to the Layer to which it refers.
|
|
21611
|
+
// @alternative
|
|
21612
|
+
// @factory L.popup(latlng: LatLng, options?: Popup options)
|
|
21613
|
+
// Instantiates a `Popup` object given `latlng` where the popup will open and an optional `options` object that describes its appearance and location.
|
|
21394
21614
|
var popup = function (options, source) {
|
|
21395
21615
|
return new Popup(options, source);
|
|
21396
21616
|
};
|
|
@@ -21488,7 +21708,8 @@
|
|
|
21488
21708
|
// @method openPopup(latlng?: LatLng): this
|
|
21489
21709
|
// Opens the bound popup at the specified `latlng` or at the default popup anchor if no `latlng` is passed.
|
|
21490
21710
|
openPopup: function (latlng) {
|
|
21491
|
-
if (this._popup && this._popup._prepareOpen(latlng)) {
|
|
21711
|
+
if (this._popup && this._popup._prepareOpen(latlng || this._latlng)) {
|
|
21712
|
+
|
|
21492
21713
|
// open the popup on the map
|
|
21493
21714
|
this._popup.openOn(this._map);
|
|
21494
21715
|
}
|
|
@@ -21574,10 +21795,28 @@
|
|
|
21574
21795
|
* Used to display small texts on top of map layers.
|
|
21575
21796
|
*
|
|
21576
21797
|
* @example
|
|
21798
|
+
* If you want to just bind a tooltip to marker:
|
|
21577
21799
|
*
|
|
21578
21800
|
* ```js
|
|
21579
21801
|
* marker.bindTooltip("my tooltip text").openTooltip();
|
|
21580
21802
|
* ```
|
|
21803
|
+
* Path overlays like polylines also have a `bindTooltip` method.
|
|
21804
|
+
*
|
|
21805
|
+
* A tooltip can be also standalone:
|
|
21806
|
+
*
|
|
21807
|
+
* ```js
|
|
21808
|
+
* var tooltip = L.tooltip()
|
|
21809
|
+
* .setLatLng(latlng)
|
|
21810
|
+
* .setContent('Hello world!<br />This is a nice tooltip.')
|
|
21811
|
+
* .addTo(map);
|
|
21812
|
+
* ```
|
|
21813
|
+
* or
|
|
21814
|
+
* ```js
|
|
21815
|
+
* var tooltip = L.tooltip(latlng, {content: 'Hello world!<br />This is a nice tooltip.'})
|
|
21816
|
+
* .addTo(map);
|
|
21817
|
+
* ```
|
|
21818
|
+
*
|
|
21819
|
+
*
|
|
21581
21820
|
* Note about tooltip offset. Leaflet takes two options in consideration
|
|
21582
21821
|
* for computing tooltip offsetting:
|
|
21583
21822
|
* - the `offset` Tooltip option: it defaults to [0, 0], and it's specific to one tooltip.
|
|
@@ -21678,6 +21917,9 @@
|
|
|
21678
21917
|
className = prefix + ' ' + (this.options.className || '') + ' leaflet-zoom-' + (this._zoomAnimated ? 'animated' : 'hide');
|
|
21679
21918
|
|
|
21680
21919
|
this._contentNode = this._container = create$1('div', className);
|
|
21920
|
+
|
|
21921
|
+
this._container.setAttribute('role', 'tooltip');
|
|
21922
|
+
this._container.setAttribute('id', 'leaflet-tooltip-' + stamp(this));
|
|
21681
21923
|
},
|
|
21682
21924
|
|
|
21683
21925
|
_updateLayout: function () {},
|
|
@@ -21758,7 +22000,10 @@
|
|
|
21758
22000
|
|
|
21759
22001
|
// @namespace Tooltip
|
|
21760
22002
|
// @factory L.tooltip(options?: Tooltip options, source?: Layer)
|
|
21761
|
-
// Instantiates a Tooltip object given an optional `options` object that describes its appearance and location and an optional `source` object that is used to tag the tooltip with a reference to the Layer to which it refers.
|
|
22003
|
+
// Instantiates a `Tooltip` object given an optional `options` object that describes its appearance and location and an optional `source` object that is used to tag the tooltip with a reference to the Layer to which it refers.
|
|
22004
|
+
// @alternative
|
|
22005
|
+
// @factory L.tooltip(latlng: LatLng, options?: Tooltip options)
|
|
22006
|
+
// Instantiates a `Tooltip` object given `latlng` where the tooltip will open and an optional `options` object that describes its appearance and location.
|
|
21762
22007
|
var tooltip = function (options, source) {
|
|
21763
22008
|
return new Tooltip(options, source);
|
|
21764
22009
|
};
|
|
@@ -21846,6 +22091,11 @@
|
|
|
21846
22091
|
events.mouseover = this._openTooltip;
|
|
21847
22092
|
events.mouseout = this.closeTooltip;
|
|
21848
22093
|
events.click = this._openTooltip;
|
|
22094
|
+
if (this._map) {
|
|
22095
|
+
this._addFocusListeners();
|
|
22096
|
+
} else {
|
|
22097
|
+
events.add = this._addFocusListeners;
|
|
22098
|
+
}
|
|
21849
22099
|
} else {
|
|
21850
22100
|
events.add = this._openTooltip;
|
|
21851
22101
|
}
|
|
@@ -21862,6 +22112,12 @@
|
|
|
21862
22112
|
if (this._tooltip && this._tooltip._prepareOpen(latlng)) {
|
|
21863
22113
|
// open the tooltip on the map
|
|
21864
22114
|
this._tooltip.openOn(this._map);
|
|
22115
|
+
|
|
22116
|
+
if (this.getElement) {
|
|
22117
|
+
this._setAriaDescribedByOnLayer(this);
|
|
22118
|
+
} else if (this.eachLayer) {
|
|
22119
|
+
this.eachLayer(this._setAriaDescribedByOnLayer, this);
|
|
22120
|
+
}
|
|
21865
22121
|
}
|
|
21866
22122
|
return this;
|
|
21867
22123
|
},
|
|
@@ -21904,6 +22160,33 @@
|
|
|
21904
22160
|
return this._tooltip;
|
|
21905
22161
|
},
|
|
21906
22162
|
|
|
22163
|
+
_addFocusListeners: function () {
|
|
22164
|
+
if (this.getElement) {
|
|
22165
|
+
this._addFocusListenersOnLayer(this);
|
|
22166
|
+
} else if (this.eachLayer) {
|
|
22167
|
+
this.eachLayer(this._addFocusListenersOnLayer, this);
|
|
22168
|
+
}
|
|
22169
|
+
},
|
|
22170
|
+
|
|
22171
|
+
_addFocusListenersOnLayer: function (layer) {
|
|
22172
|
+
var el = layer.getElement();
|
|
22173
|
+
if (el) {
|
|
22174
|
+
on(el, 'focus', function () {
|
|
22175
|
+
this._tooltip._source = layer;
|
|
22176
|
+
this.openTooltip();
|
|
22177
|
+
}, this);
|
|
22178
|
+
on(el, 'blur', this.closeTooltip, this);
|
|
22179
|
+
}
|
|
22180
|
+
},
|
|
22181
|
+
|
|
22182
|
+
_setAriaDescribedByOnLayer: function (layer) {
|
|
22183
|
+
var el = layer.getElement();
|
|
22184
|
+
if (el) {
|
|
22185
|
+
el.setAttribute('aria-describedby', this._tooltip._container.id);
|
|
22186
|
+
}
|
|
22187
|
+
},
|
|
22188
|
+
|
|
22189
|
+
|
|
21907
22190
|
_openTooltip: function (e) {
|
|
21908
22191
|
if (!this._tooltip || !this._map || (this._map.dragging && this._map.dragging.moving())) {
|
|
21909
22192
|
return;
|
|
@@ -22922,7 +23205,7 @@
|
|
|
22922
23205
|
* @example
|
|
22923
23206
|
*
|
|
22924
23207
|
* ```js
|
|
22925
|
-
* L.tileLayer('https://
|
|
23208
|
+
* L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png?{foo}', {foo: 'bar', attribution: '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'}).addTo(map);
|
|
22926
23209
|
* ```
|
|
22927
23210
|
*
|
|
22928
23211
|
* @section URL template
|
|
@@ -23009,13 +23292,19 @@
|
|
|
23009
23292
|
|
|
23010
23293
|
if (!options.zoomReverse) {
|
|
23011
23294
|
options.zoomOffset++;
|
|
23012
|
-
options.maxZoom
|
|
23295
|
+
options.maxZoom = Math.max(options.minZoom, options.maxZoom - 1);
|
|
23013
23296
|
} else {
|
|
23014
23297
|
options.zoomOffset--;
|
|
23015
|
-
options.minZoom
|
|
23298
|
+
options.minZoom = Math.min(options.maxZoom, options.minZoom + 1);
|
|
23016
23299
|
}
|
|
23017
23300
|
|
|
23018
23301
|
options.minZoom = Math.max(0, options.minZoom);
|
|
23302
|
+
} else if (!options.zoomReverse) {
|
|
23303
|
+
// make sure maxZoom is gte minZoom
|
|
23304
|
+
options.maxZoom = Math.max(options.minZoom, options.maxZoom);
|
|
23305
|
+
} else {
|
|
23306
|
+
// make sure minZoom is lte maxZoom
|
|
23307
|
+
options.minZoom = Math.min(options.maxZoom, options.minZoom);
|
|
23019
23308
|
}
|
|
23020
23309
|
|
|
23021
23310
|
if (typeof options.subdomains === 'string') {
|
|
@@ -23062,18 +23351,12 @@
|
|
|
23062
23351
|
tile.referrerPolicy = this.options.referrerPolicy;
|
|
23063
23352
|
}
|
|
23064
23353
|
|
|
23065
|
-
|
|
23066
|
-
|
|
23067
|
-
|
|
23068
|
-
|
|
23354
|
+
// The alt attribute is set to the empty string,
|
|
23355
|
+
// allowing screen readers to ignore the decorative image tiles.
|
|
23356
|
+
// https://www.w3.org/WAI/tutorials/images/decorative/
|
|
23357
|
+
// https://www.w3.org/TR/html-aria/#el-img-empty-alt
|
|
23069
23358
|
tile.alt = '';
|
|
23070
23359
|
|
|
23071
|
-
/*
|
|
23072
|
-
Set role="presentation" to force screen readers to ignore this
|
|
23073
|
-
https://www.w3.org/TR/wai-aria/roles#textalternativecomputation
|
|
23074
|
-
*/
|
|
23075
|
-
tile.setAttribute('role', 'presentation');
|
|
23076
|
-
|
|
23077
23360
|
tile.src = this.getTileUrl(coords);
|
|
23078
23361
|
|
|
23079
23362
|
return tile;
|
|
@@ -25266,7 +25549,7 @@
|
|
|
25266
25549
|
|
|
25267
25550
|
cancelAnimFrame(this._animRequest);
|
|
25268
25551
|
|
|
25269
|
-
var moveFn = bind(map._move, map, this._center, this._zoom, {pinch: true, round: false});
|
|
25552
|
+
var moveFn = bind(map._move, map, this._center, this._zoom, {pinch: true, round: false}, undefined);
|
|
25270
25553
|
this._animRequest = requestAnimFrame(moveFn, this, true);
|
|
25271
25554
|
|
|
25272
25555
|
preventDefault(e);
|
|
@@ -28928,7 +29211,7 @@
|
|
|
28928
29211
|
ClusterCircles.prototype.publish("latitudeColumn", null, "set", "Latitude column", function () { return this.columns(); }, { optional: true });
|
|
28929
29212
|
ClusterCircles.prototype.publish("longitudeColumn", null, "set", "Longitude column", function () { return this.columns(); }, { optional: true });
|
|
28930
29213
|
ClusterCircles.prototype.publish("weightColumn", null, "set", "Weight column", function () { return this.columns(); }, { optional: true });
|
|
28931
|
-
ClusterCircles.prototype.publish("weightFormat", "
|
|
29214
|
+
ClusterCircles.prototype.publish("weightFormat", ",", "string", "Number format for weight");
|
|
28932
29215
|
ClusterCircles.prototype.publish("opacity", 0.66, "number", "Opacity", null, { tags: ["Advanced"] });
|
|
28933
29216
|
|
|
28934
29217
|
function fixDateLine(feature, layer) {
|