react-leaflet
Advanced tools
Comparing version 3.2.1 to 3.2.2
"use strict"; | ||
exports.__esModule = true; | ||
exports.ZoomControl = exports.WMSTileLayer = exports.VideoOverlay = exports.Tooltip = exports.TileLayer = exports.SVGOverlay = exports.ScaleControl = exports.Rectangle = exports.Popup = exports.Polyline = exports.Polygon = exports.Pane = exports.Marker = exports.MapContainer = exports.MapConsumer = exports.LayersControl = exports.LayerGroup = exports.ImageOverlay = exports.GeoJSON = exports.FeatureGroup = exports.CircleMarker = exports.Circle = exports.AttributionControl = exports.useMapEvents = exports.useMapEvent = exports.useMap = void 0; | ||
exports.useMapEvents = exports.useMapEvent = exports.useMap = exports.ZoomControl = exports.WMSTileLayer = exports.VideoOverlay = exports.Tooltip = exports.TileLayer = exports.ScaleControl = exports.SVGOverlay = exports.Rectangle = exports.Popup = exports.Polyline = exports.Polygon = exports.Pane = exports.Marker = exports.MapContainer = exports.MapConsumer = exports.LayersControl = exports.LayerGroup = exports.ImageOverlay = exports.GeoJSON = exports.FeatureGroup = exports.CircleMarker = exports.Circle = exports.AttributionControl = void 0; | ||
@@ -6,0 +6,0 @@ var _hooks = require("./hooks"); |
"use strict"; | ||
exports.__esModule = true; | ||
exports.LayersControl = void 0; | ||
exports.createControlledLayer = createControlledLayer; | ||
exports.LayersControl = exports.useLayersControl = exports.useLayersControlElement = void 0; | ||
exports.useLayersControlElement = exports.useLayersControl = void 0; | ||
@@ -7,0 +8,0 @@ var _core = require("@react-leaflet/core"); |
"use strict"; | ||
exports.__esModule = true; | ||
exports.MapContainer = MapContainer; | ||
exports.useMapElement = useMapElement; | ||
exports.MapContainer = MapContainer; | ||
@@ -7,0 +7,0 @@ var _core = require("@react-leaflet/core"); |
"use strict"; | ||
exports.__esModule = true; | ||
exports.SVGOverlay = exports.useSVGOverlay = exports.useSVGOverlayElement = void 0; | ||
exports.useSVGOverlayElement = exports.useSVGOverlay = exports.SVGOverlay = void 0; | ||
@@ -6,0 +6,0 @@ var _core = require("@react-leaflet/core"); |
{ | ||
"name": "react-leaflet", | ||
"version": "3.2.1", | ||
"version": "3.2.2", | ||
"description": "React components for Leaflet maps", | ||
@@ -46,3 +46,3 @@ "main": "cjs/index.js", | ||
"dependencies": { | ||
"@react-leaflet/core": "^1.1.0" | ||
"@react-leaflet/core": "^1.1.1" | ||
}, | ||
@@ -56,6 +56,6 @@ "peerDependencies": { | ||
"@rollup/plugin-babel": "^5.3.0", | ||
"@rollup/plugin-commonjs": "^20.0.0", | ||
"@rollup/plugin-node-resolve": "^13.0.4", | ||
"@rollup/plugin-commonjs": "^21.0.0", | ||
"@rollup/plugin-node-resolve": "^13.0.5", | ||
"@rollup/plugin-replace": "^3.0.0", | ||
"rollup": "^2.55.1", | ||
"rollup": "^2.58.0", | ||
"rollup-plugin-terser": "^7.0.0" | ||
@@ -62,0 +62,0 @@ }, |
@@ -5,3 +5,3 @@ (function (global, factory) { | ||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.ReactLeaflet = {}, global.React, global.L, global.ReactDOM)); | ||
}(this, (function (exports, React, leaflet, reactDom) { 'use strict'; | ||
})(this, (function (exports, React, leaflet, reactDom) { 'use strict'; | ||
@@ -59,3 +59,3 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
React.useImperativeHandle(ref, () => instance); | ||
return props.children == null ? null : /*#__PURE__*/React__default['default'].createElement(LeafletProvider, { | ||
return props.children == null ? null : /*#__PURE__*/React__default["default"].createElement(LeafletProvider, { | ||
value: context | ||
@@ -199,5 +199,5 @@ }, props.children); | ||
return function removeLayer() { | ||
var _context$layersContro; | ||
var _context$layerContain; | ||
(_context$layersContro = context.layersControl) == null ? void 0 : _context$layersContro.removeLayer(element.instance); | ||
(_context$layerContain = context.layerContainer) == null ? void 0 : _context$layerContain.removeLayer(element.instance); | ||
context.map.removeLayer(element.instance); | ||
@@ -492,3 +492,3 @@ }; | ||
}); | ||
return props.children ? /*#__PURE__*/React__default['default'].createElement(LeafletProvider, { | ||
return props.children ? /*#__PURE__*/React__default["default"].createElement(LeafletProvider, { | ||
value: context | ||
@@ -577,6 +577,6 @@ }, props.children) : null; | ||
} : null, [map]); | ||
const contents = context ? /*#__PURE__*/React__default['default'].createElement(LeafletProvider, { | ||
const contents = context ? /*#__PURE__*/React__default["default"].createElement(LeafletProvider, { | ||
value: context | ||
}, children) : placeholder ?? null; | ||
return /*#__PURE__*/React__default['default'].createElement("div", _extends({}, props, { | ||
return /*#__PURE__*/React__default["default"].createElement("div", _extends({}, props, { | ||
ref: mapRef | ||
@@ -683,3 +683,3 @@ }), contents); | ||
}, []); | ||
return props.children != null && paneElement != null ? /*#__PURE__*/reactDom.createPortal( /*#__PURE__*/React__default['default'].createElement(LeafletProvider, { | ||
return props.children != null && paneElement != null ? /*#__PURE__*/reactDom.createPortal( /*#__PURE__*/React__default["default"].createElement(LeafletProvider, { | ||
value: newContext | ||
@@ -995,2 +995,2 @@ }, props.children), paneElement) : null; | ||
}))); | ||
})); |
@@ -1,1 +0,1 @@ | ||
!function(n,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("react"),require("leaflet"),require("react-dom")):"function"==typeof define&&define.amd?define(["exports","react","leaflet","react-dom"],e):e((n="undefined"!=typeof globalThis?globalThis:n||self).ReactLeaflet={},n.React,n.L,n.ReactDOM)}(this,(function(n,e,t,r){"use strict";function o(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}var u=o(e);function c(n,t){const r=e.useRef(t);e.useEffect((function(){t!==r.current&&null!=n.attributionControl&&(null!=r.current&&n.attributionControl.removeAttribution(r.current),null!=t&&n.attributionControl.addAttribution(t)),r.current=t}),[n,t])}function a(n,e,t){e.center!==t.center&&n.setLatLng(e.center),null!=e.radius&&e.radius!==t.radius&&n.setRadius(e.radius)}const l=e.createContext(null),i=l.Provider;function s(){const n=e.useContext(l);if(null==n)throw new Error("No context provided: useLeafletContext() can only be used in a descendant of <MapContainer>");return n}function f(n){function t(t,r){const{instance:o,context:c}=n(t).current;return e.useImperativeHandle(r,(()=>o)),null==t.children?null:u.default.createElement(i,{value:c},t.children)}return e.forwardRef(t)}function p(n){function t(t,r){const{instance:o}=n(t).current;return e.useImperativeHandle(r,(()=>o)),null}return e.forwardRef(t)}function d(n){return function(t){const r=s(),o=n(t,r),{instance:u}=o.current,c=e.useRef(t.position),{position:a}=t;return e.useEffect((function(){return u.addTo(r.map),function(){u.remove()}}),[r.map,u]),e.useEffect((function(){null!=a&&a!==c.current&&(u.setPosition(a),c.current=a)}),[u,a]),o}}function y(n,t){const r=e.useRef();e.useEffect((function(){return null!=t&&n.instance.on(t),r.current=t,function(){null!=r.current&&n.instance.off(r.current),r.current=null}}),[n,t])}function m(n,e){const t=n.pane??e.pane;return t?{...n,pane:t}:n}function v(n,e){(function(n){return n.split(" ").filter(Boolean)})(e).forEach((e=>{t.DomUtil.addClass(n,e)}))}function C(n,t){return null==t?function(t,r){return e.useRef(n(t,r))}:function(r,o){const u=e.useRef(n(r,o)),c=e.useRef(r),{instance:a}=u.current;return e.useEffect((function(){c.current!==r&&(t(a,r,c.current),c.current=r)}),[a,r,o]),u}}function h(n,t){e.useEffect((function(){return(t.layerContainer??t.map).addLayer(n.instance),function(){var e;null==(e=t.layersControl)||e.removeLayer(n.instance),t.map.removeLayer(n.instance)}}),[t,n])}function b(n){return function(e){const t=s(),r=n(m(e,t),t);return c(t.map,e.attribution),y(r.current,e.eventHandlers),h(r.current,t),r}}function w(n){return function(t){const r=s(),o=n(m(t,r),r);return y(o.current,t.eventHandlers),h(o.current,r),function(n,t){const r=e.useRef();e.useEffect((function(){if(t.pathOptions!==r.current){const e=t.pathOptions??{};n.instance.setStyle(e),r.current=e}}),[n,t])}(o.current,t),o}}function x(n){return p(d(C((function(e,t){return{instance:n(e),context:t}}))))}function g(n,e){return f(b(C(n,e)))}function L(n,t){return function(n){function t(t,o){const[u,c]=e.useState(!1),{instance:a}=n(t,c).current;e.useImperativeHandle(o,(()=>a)),e.useEffect((function(){u&&a.update()}),[a,u,t.children]);const l=a._contentNode;return l?r.createPortal(t.children,l):null}return e.forwardRef(t)}(function(n,e){return function(t,r){const o=s(),u=n(m(t,o),o);return c(o.map,t.attribution),y(u.current,t.eventHandlers),e(u.current,o,t,r),u}}(C(n),t))}function E(n,e){return f(w(C(n,e)))}function O(n,e){return p(b(C(n,e)))}function P(n,e,t){const{opacity:r,zIndex:o}=e;null!=r&&r!==t.opacity&&n.setOpacity(r),null!=o&&o!==t.zIndex&&n.setZIndex(o)}function R(n,e,r){e.bounds instanceof t.LatLngBounds&&e.bounds!==r.bounds&&n.setBounds(e.bounds),null!=e.opacity&&e.opacity!==r.opacity&&n.setOpacity(e.opacity),null!=e.zIndex&&e.zIndex!==r.zIndex&&n.setZIndex(e.zIndex)}function I(){return s().map}const M=x((function(n){return new t.Control.Attribution(n)})),S=E((function({center:n,children:e,...r},o){const u=new t.Circle(n,r);return{instance:u,context:{...o,overlayContainer:u}}}),a),k=E((function({center:n,children:e,...r},o){const u=new t.CircleMarker(n,r);return{instance:u,context:{...o,overlayContainer:u}}}),a),z=E((function({children:n,...e},r){const o=new t.FeatureGroup([],e);return{instance:o,context:{...r,layerContainer:o,overlayContainer:o}}})),T=E((function({data:n,...e},r){const o=new t.GeoJSON(n,e);return{instance:o,context:{...r,overlayContainer:o}}}),(function(n,e,t){e.style!==t.style&&(null==e.style?n.resetStyle():n.setStyle(e.style))})),_=g((function({bounds:n,url:e,...r},o){const u=new t.ImageOverlay(e,n,r);return{instance:u,context:{...o,overlayContainer:u}}}),(function(n,e,t){R(n,e,t),e.url!==t.url&&n.setUrl(e.url)})),N=g((function({children:n,...e},r){const o=new t.LayerGroup([],e);return{instance:o,context:{...r,layerContainer:o}}})),G=f(d(C((function({children:n,...e},r){const o=new t.Control.Layers(void 0,void 0,e);return{instance:o,context:{...r,layersControl:o}}}),(function(n,e,t){e.collapsed!==t.collapsed&&(!0===e.collapsed?n.collapse():n.expand())}))));function j(n){return function(t){const r=s(),o=e.useRef(t),[c,a]=e.useState(null),{layersControl:l,map:f}=r,p=e.useCallback((e=>{null!=l&&(o.current.checked&&f.addLayer(e),n(l,e,o.current.name),a(e))}),[l,f]),d=e.useCallback((n=>{null==l||l.removeLayer(n),a(null)}),[l]),y=e.useMemo((()=>({...r,layerContainer:{addLayer:p,removeLayer:d}})),[r,p,d]);return e.useEffect((()=>{null!==c&&o.current!==t&&(!0!==t.checked||null!=o.current.checked&&!1!==o.current.checked?!0!==o.current.checked||null!=t.checked&&!1!==t.checked||f.removeLayer(c):f.addLayer(c),o.current=t)})),t.children?u.default.createElement(i,{value:y},t.children):null}}function A(){return(A=Object.assign||function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n}).apply(this,arguments)}G.BaseLayer=j((function(n,e,t){n.addBaseLayer(e,t)})),G.Overlay=j((function(n,e,t){n.addOverlay(e,t)}));const B=g((function({position:n,...e},r){const o=new t.Marker(n,e);return{instance:o,context:{...r,overlayContainer:o}}}),(function(n,e,t){e.position!==t.position&&n.setLatLng(e.position),null!=e.icon&&e.icon!==t.icon&&n.setIcon(e.icon),null!=e.zIndexOffset&&e.zIndexOffset!==t.zIndexOffset&&n.setZIndexOffset(e.zIndexOffset),null!=e.opacity&&e.opacity!==t.opacity&&n.setOpacity(e.opacity),null!=n.dragging&&e.draggable!==t.draggable&&(!0===e.draggable?n.dragging.enable():n.dragging.disable())})),H=["mapPane","markerPane","overlayPane","popupPane","shadowPane","tilePane","tooltipPane"];function V(n,e){const{[e]:t,...r}=n;return r}const Z=E((function({positions:n,...e},r){const o=new t.Polygon(n,e);return{instance:o,context:{...r,overlayContainer:o}}}),(function(n,e,t){e.positions!==t.positions&&n.setLatLngs(e.positions)})),q=E((function({positions:n,...e},r){const o=new t.Polyline(n,e);return{instance:o,context:{...r,overlayContainer:o}}}),(function(n,e,t){e.positions!==t.positions&&n.setLatLngs(e.positions)})),U=L((function(n,e){return{instance:new t.Popup(n,e.overlayContainer),context:e}}),(function(n,t,r,o){const{onClose:u,onOpen:c,position:a}=r;e.useEffect((function(){const{instance:e}=n;function r(n){n.popup===e&&(e.update(),o(!0),null==c||c())}function l(n){n.popup===e&&(o(!1),null==u||u())}return t.map.on({popupopen:r,popupclose:l}),null==t.overlayContainer?(null!=a&&e.setLatLng(a),e.openOn(t.map)):t.overlayContainer.bindPopup(e),function(){var n;t.map.off({popupopen:r,popupclose:l}),null==(n=t.overlayContainer)||n.unbindPopup(),t.map.removeLayer(e)}}),[n,t,o,u,c,a])})),D=E((function({bounds:n,...e},r){const o=new t.Rectangle(n,e);return{instance:o,context:{...r,overlayContainer:o}}}),(function(n,e,t){e.bounds!==t.bounds&&n.setBounds(e.bounds)})),F=x((function(n){return new t.Control.Scale(n)})),J=b(C((function(n,e){const{attributes:r,bounds:o,...u}=n,c=document.createElementNS("http://www.w3.org/2000/svg","svg");return c.setAttribute("xmlns","http://www.w3.org/2000/svg"),null!=r&&Object.keys(r).forEach((n=>{c.setAttribute(n,r[n])})),{instance:new t.SVGOverlay(c,o,u),container:c,context:e}}),R));function W({children:n,...t},o){const{instance:u,container:c}=J(t).current;return e.useImperativeHandle(o,(()=>u)),null==c||null==n?null:r.createPortal(n,c)}const $=e.forwardRef(W),Y=O((function({url:n,...e},r){return{instance:new t.TileLayer(n,m(e,r)),context:r}}),P),K=L((function(n,e){return{instance:new t.Tooltip(n,e.overlayContainer),context:e}}),(function(n,t,r,o){const{onClose:u,onOpen:c}=r;e.useEffect((function(){const e=t.overlayContainer;if(null==e)return;const{instance:r}=n,a=n=>{n.tooltip===r&&(r.update(),o(!0),null==c||c())},l=n=>{n.tooltip===r&&(o(!1),null==u||u())};return e.on({tooltipopen:a,tooltipclose:l}),e.bindTooltip(r),function(){e.off({tooltipopen:a,tooltipclose:l}),null!=e._map&&e.unbindTooltip()}}),[n,t,o,u,c])})),Q=g((function({bounds:n,url:e,...r},o){const u=new t.VideoOverlay(e,n,r);var c;!0===r.play&&(null==(c=u.getElement())||c.play());return{instance:u,context:{...o,overlayContainer:u}}}),(function(n,e,t){R(n,e,t),"string"==typeof e.url&&e.url!==t.url&&n.setUrl(e.url);const r=n.getElement();null!=r&&(!0!==e.play||t.play?e.play||!0!==t.play||r.pause():r.play())})),X=O((function({params:n={},url:e,...r},o){return{instance:new t.TileLayer.WMS(e,{...n,...m(r,o)}),context:o}}),(function(n,e,t){P(n,e,t),null!=e.params&&e.params!==t.params&&n.setParams(e.params)})),nn=x((function(n){return new t.Control.Zoom(n)}));n.AttributionControl=M,n.Circle=S,n.CircleMarker=k,n.FeatureGroup=z,n.GeoJSON=T,n.ImageOverlay=_,n.LayerGroup=N,n.LayersControl=G,n.MapConsumer=function({children:n}){return n(I())},n.MapContainer=function({children:n,className:r,id:o,placeholder:c,style:a,whenCreated:l,...s}){const f=e.useRef(null),p=function(n,r){const[o,u]=e.useState(null);return e.useEffect((()=>{if(null!==n.current&&null===o){const e=new t.Map(n.current,r);null!=r.center&&null!=r.zoom?e.setView(r.center,r.zoom):null!=r.bounds&&e.fitBounds(r.bounds,r.boundsOptions),null!=r.whenReady&&e.whenReady(r.whenReady),u(e)}}),[n,o,r]),o}(f,s),d=e.useRef(!1);e.useEffect((()=>{null!=p&&!1===d.current&&null!=l&&(d.current=!0,l(p))}),[p,l]);const[y]=e.useState({className:r,id:o,style:a}),m=e.useMemo((()=>p?{__version:1,map:p}:null),[p]),v=m?u.default.createElement(i,{value:m},n):c??null;return u.default.createElement("div",A({},y,{ref:f}),v)},n.Marker=B,n.Pane=function(n){const[t,o]=e.useState(),c=s(),a=e.useMemo((()=>({...c,pane:n.name})),[c]);return e.useEffect((()=>(o(function(n,e){const t=n.name;if(-1!==H.indexOf(t))throw new Error(`You must use a unique name for a pane that is not a default Leaflet pane: ${t}`);if(null!=e.map.getPane(t))throw new Error(`A pane with this name already exists: ${t}`);const r=n.pane??e.pane,o=r?e.map.getPane(r):void 0,u=e.map.createPane(t,o);return null!=n.className&&v(u,n.className),null!=n.style&&Object.keys(n.style).forEach((e=>{u.style[e]=n.style[e]})),u}(n,c)),function(){const e=c.map.getPane(n.name);null==e||null==e.remove||e.remove(),null!=c.map._panes&&(c.map._panes=V(c.map._panes,n.name),c.map._paneRenderers=V(c.map._paneRenderers,n.name))})),[]),null!=n.children&&null!=t?r.createPortal(u.default.createElement(i,{value:a},n.children),t):null},n.Polygon=Z,n.Polyline=q,n.Popup=U,n.Rectangle=D,n.SVGOverlay=$,n.ScaleControl=F,n.TileLayer=Y,n.Tooltip=K,n.VideoOverlay=Q,n.WMSTileLayer=X,n.ZoomControl=nn,n.useMap=I,n.useMapEvent=function(n,t){const r=I();return e.useEffect((function(){return r.on(n,t),function(){r.off(n,t)}}),[r,n,t]),r},n.useMapEvents=function(n){const t=I();return e.useEffect((function(){return t.on(n),function(){t.off(n)}}),[t,n]),t},Object.defineProperty(n,"__esModule",{value:!0})})); | ||
!function(n,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("react"),require("leaflet"),require("react-dom")):"function"==typeof define&&define.amd?define(["exports","react","leaflet","react-dom"],e):e((n="undefined"!=typeof globalThis?globalThis:n||self).ReactLeaflet={},n.React,n.L,n.ReactDOM)}(this,(function(n,e,t,r){"use strict";function o(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}var u=o(e);function c(n,t){const r=e.useRef(t);e.useEffect((function(){t!==r.current&&null!=n.attributionControl&&(null!=r.current&&n.attributionControl.removeAttribution(r.current),null!=t&&n.attributionControl.addAttribution(t)),r.current=t}),[n,t])}function a(n,e,t){e.center!==t.center&&n.setLatLng(e.center),null!=e.radius&&e.radius!==t.radius&&n.setRadius(e.radius)}const l=e.createContext(null),i=l.Provider;function s(){const n=e.useContext(l);if(null==n)throw new Error("No context provided: useLeafletContext() can only be used in a descendant of <MapContainer>");return n}function f(n){function t(t,r){const{instance:o,context:c}=n(t).current;return e.useImperativeHandle(r,(()=>o)),null==t.children?null:u.default.createElement(i,{value:c},t.children)}return e.forwardRef(t)}function p(n){function t(t,r){const{instance:o}=n(t).current;return e.useImperativeHandle(r,(()=>o)),null}return e.forwardRef(t)}function d(n){return function(t){const r=s(),o=n(t,r),{instance:u}=o.current,c=e.useRef(t.position),{position:a}=t;return e.useEffect((function(){return u.addTo(r.map),function(){u.remove()}}),[r.map,u]),e.useEffect((function(){null!=a&&a!==c.current&&(u.setPosition(a),c.current=a)}),[u,a]),o}}function y(n,t){const r=e.useRef();e.useEffect((function(){return null!=t&&n.instance.on(t),r.current=t,function(){null!=r.current&&n.instance.off(r.current),r.current=null}}),[n,t])}function m(n,e){const t=n.pane??e.pane;return t?{...n,pane:t}:n}function v(n,e){(function(n){return n.split(" ").filter(Boolean)})(e).forEach((e=>{t.DomUtil.addClass(n,e)}))}function C(n,t){return null==t?function(t,r){return e.useRef(n(t,r))}:function(r,o){const u=e.useRef(n(r,o)),c=e.useRef(r),{instance:a}=u.current;return e.useEffect((function(){c.current!==r&&(t(a,r,c.current),c.current=r)}),[a,r,o]),u}}function h(n,t){e.useEffect((function(){return(t.layerContainer??t.map).addLayer(n.instance),function(){var e;null==(e=t.layerContainer)||e.removeLayer(n.instance),t.map.removeLayer(n.instance)}}),[t,n])}function b(n){return function(e){const t=s(),r=n(m(e,t),t);return c(t.map,e.attribution),y(r.current,e.eventHandlers),h(r.current,t),r}}function w(n){return function(t){const r=s(),o=n(m(t,r),r);return y(o.current,t.eventHandlers),h(o.current,r),function(n,t){const r=e.useRef();e.useEffect((function(){if(t.pathOptions!==r.current){const e=t.pathOptions??{};n.instance.setStyle(e),r.current=e}}),[n,t])}(o.current,t),o}}function x(n){return p(d(C((function(e,t){return{instance:n(e),context:t}}))))}function g(n,e){return f(b(C(n,e)))}function L(n,t){const o=function(n,e){return function(t,r){const o=s(),u=n(m(t,o),o);return c(o.map,t.attribution),y(u.current,t.eventHandlers),e(u.current,o,t,r),u}}(C(n),t);return function(n){function t(t,o){const[u,c]=e.useState(!1),{instance:a}=n(t,c).current;e.useImperativeHandle(o,(()=>a)),e.useEffect((function(){u&&a.update()}),[a,u,t.children]);const l=a._contentNode;return l?r.createPortal(t.children,l):null}return e.forwardRef(t)}(o)}function E(n,e){return f(w(C(n,e)))}function O(n,e){return p(b(C(n,e)))}function P(n,e,t){const{opacity:r,zIndex:o}=e;null!=r&&r!==t.opacity&&n.setOpacity(r),null!=o&&o!==t.zIndex&&n.setZIndex(o)}function R(n,e,r){e.bounds instanceof t.LatLngBounds&&e.bounds!==r.bounds&&n.setBounds(e.bounds),null!=e.opacity&&e.opacity!==r.opacity&&n.setOpacity(e.opacity),null!=e.zIndex&&e.zIndex!==r.zIndex&&n.setZIndex(e.zIndex)}function I(){return s().map}const M=x((function(n){return new t.Control.Attribution(n)})),S=E((function({center:n,children:e,...r},o){const u=new t.Circle(n,r);return{instance:u,context:{...o,overlayContainer:u}}}),a),k=E((function({center:n,children:e,...r},o){const u=new t.CircleMarker(n,r);return{instance:u,context:{...o,overlayContainer:u}}}),a),z=E((function({children:n,...e},r){const o=new t.FeatureGroup([],e);return{instance:o,context:{...r,layerContainer:o,overlayContainer:o}}})),T=E((function({data:n,...e},r){const o=new t.GeoJSON(n,e);return{instance:o,context:{...r,overlayContainer:o}}}),(function(n,e,t){e.style!==t.style&&(null==e.style?n.resetStyle():n.setStyle(e.style))})),_=g((function({bounds:n,url:e,...r},o){const u=new t.ImageOverlay(e,n,r);return{instance:u,context:{...o,overlayContainer:u}}}),(function(n,e,t){R(n,e,t),e.url!==t.url&&n.setUrl(e.url)})),N=g((function({children:n,...e},r){const o=new t.LayerGroup([],e);return{instance:o,context:{...r,layerContainer:o}}})),G=f(d(C((function({children:n,...e},r){const o=new t.Control.Layers(void 0,void 0,e);return{instance:o,context:{...r,layersControl:o}}}),(function(n,e,t){e.collapsed!==t.collapsed&&(!0===e.collapsed?n.collapse():n.expand())}))));function j(n){return function(t){const r=s(),o=e.useRef(t),[c,a]=e.useState(null),{layersControl:l,map:f}=r,p=e.useCallback((e=>{null!=l&&(o.current.checked&&f.addLayer(e),n(l,e,o.current.name),a(e))}),[l,f]),d=e.useCallback((n=>{null==l||l.removeLayer(n),a(null)}),[l]),y=e.useMemo((()=>({...r,layerContainer:{addLayer:p,removeLayer:d}})),[r,p,d]);return e.useEffect((()=>{null!==c&&o.current!==t&&(!0!==t.checked||null!=o.current.checked&&!1!==o.current.checked?!0!==o.current.checked||null!=t.checked&&!1!==t.checked||f.removeLayer(c):f.addLayer(c),o.current=t)})),t.children?u.default.createElement(i,{value:y},t.children):null}}function A(){return A=Object.assign||function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},A.apply(this,arguments)}G.BaseLayer=j((function(n,e,t){n.addBaseLayer(e,t)})),G.Overlay=j((function(n,e,t){n.addOverlay(e,t)}));const B=g((function({position:n,...e},r){const o=new t.Marker(n,e);return{instance:o,context:{...r,overlayContainer:o}}}),(function(n,e,t){e.position!==t.position&&n.setLatLng(e.position),null!=e.icon&&e.icon!==t.icon&&n.setIcon(e.icon),null!=e.zIndexOffset&&e.zIndexOffset!==t.zIndexOffset&&n.setZIndexOffset(e.zIndexOffset),null!=e.opacity&&e.opacity!==t.opacity&&n.setOpacity(e.opacity),null!=n.dragging&&e.draggable!==t.draggable&&(!0===e.draggable?n.dragging.enable():n.dragging.disable())})),H=["mapPane","markerPane","overlayPane","popupPane","shadowPane","tilePane","tooltipPane"];function V(n,e){const{[e]:t,...r}=n;return r}const Z=E((function({positions:n,...e},r){const o=new t.Polygon(n,e);return{instance:o,context:{...r,overlayContainer:o}}}),(function(n,e,t){e.positions!==t.positions&&n.setLatLngs(e.positions)})),q=E((function({positions:n,...e},r){const o=new t.Polyline(n,e);return{instance:o,context:{...r,overlayContainer:o}}}),(function(n,e,t){e.positions!==t.positions&&n.setLatLngs(e.positions)})),U=L((function(n,e){return{instance:new t.Popup(n,e.overlayContainer),context:e}}),(function(n,t,r,o){const{onClose:u,onOpen:c,position:a}=r;e.useEffect((function(){const{instance:e}=n;function r(n){n.popup===e&&(e.update(),o(!0),null==c||c())}function l(n){n.popup===e&&(o(!1),null==u||u())}return t.map.on({popupopen:r,popupclose:l}),null==t.overlayContainer?(null!=a&&e.setLatLng(a),e.openOn(t.map)):t.overlayContainer.bindPopup(e),function(){var n;t.map.off({popupopen:r,popupclose:l}),null==(n=t.overlayContainer)||n.unbindPopup(),t.map.removeLayer(e)}}),[n,t,o,u,c,a])})),D=E((function({bounds:n,...e},r){const o=new t.Rectangle(n,e);return{instance:o,context:{...r,overlayContainer:o}}}),(function(n,e,t){e.bounds!==t.bounds&&n.setBounds(e.bounds)})),F=x((function(n){return new t.Control.Scale(n)})),J=b(C((function(n,e){const{attributes:r,bounds:o,...u}=n,c=document.createElementNS("http://www.w3.org/2000/svg","svg");return c.setAttribute("xmlns","http://www.w3.org/2000/svg"),null!=r&&Object.keys(r).forEach((n=>{c.setAttribute(n,r[n])})),{instance:new t.SVGOverlay(c,o,u),container:c,context:e}}),R));function W({children:n,...t},o){const{instance:u,container:c}=J(t).current;return e.useImperativeHandle(o,(()=>u)),null==c||null==n?null:r.createPortal(n,c)}const $=e.forwardRef(W),Y=O((function({url:n,...e},r){return{instance:new t.TileLayer(n,m(e,r)),context:r}}),P),K=L((function(n,e){return{instance:new t.Tooltip(n,e.overlayContainer),context:e}}),(function(n,t,r,o){const{onClose:u,onOpen:c}=r;e.useEffect((function(){const e=t.overlayContainer;if(null==e)return;const{instance:r}=n,a=n=>{n.tooltip===r&&(r.update(),o(!0),null==c||c())},l=n=>{n.tooltip===r&&(o(!1),null==u||u())};return e.on({tooltipopen:a,tooltipclose:l}),e.bindTooltip(r),function(){e.off({tooltipopen:a,tooltipclose:l}),null!=e._map&&e.unbindTooltip()}}),[n,t,o,u,c])})),Q=g((function({bounds:n,url:e,...r},o){const u=new t.VideoOverlay(e,n,r);var c;!0===r.play&&(null==(c=u.getElement())||c.play());return{instance:u,context:{...o,overlayContainer:u}}}),(function(n,e,t){R(n,e,t),"string"==typeof e.url&&e.url!==t.url&&n.setUrl(e.url);const r=n.getElement();null!=r&&(!0!==e.play||t.play?e.play||!0!==t.play||r.pause():r.play())})),X=O((function({params:n={},url:e,...r},o){return{instance:new t.TileLayer.WMS(e,{...n,...m(r,o)}),context:o}}),(function(n,e,t){P(n,e,t),null!=e.params&&e.params!==t.params&&n.setParams(e.params)})),nn=x((function(n){return new t.Control.Zoom(n)}));n.AttributionControl=M,n.Circle=S,n.CircleMarker=k,n.FeatureGroup=z,n.GeoJSON=T,n.ImageOverlay=_,n.LayerGroup=N,n.LayersControl=G,n.MapConsumer=function({children:n}){return n(I())},n.MapContainer=function({children:n,className:r,id:o,placeholder:c,style:a,whenCreated:l,...s}){const f=e.useRef(null),p=function(n,r){const[o,u]=e.useState(null);return e.useEffect((()=>{if(null!==n.current&&null===o){const e=new t.Map(n.current,r);null!=r.center&&null!=r.zoom?e.setView(r.center,r.zoom):null!=r.bounds&&e.fitBounds(r.bounds,r.boundsOptions),null!=r.whenReady&&e.whenReady(r.whenReady),u(e)}}),[n,o,r]),o}(f,s),d=e.useRef(!1);e.useEffect((()=>{null!=p&&!1===d.current&&null!=l&&(d.current=!0,l(p))}),[p,l]);const[y]=e.useState({className:r,id:o,style:a}),m=e.useMemo((()=>p?{__version:1,map:p}:null),[p]),v=m?u.default.createElement(i,{value:m},n):c??null;return u.default.createElement("div",A({},y,{ref:f}),v)},n.Marker=B,n.Pane=function(n){const[t,o]=e.useState(),c=s(),a=e.useMemo((()=>({...c,pane:n.name})),[c]);return e.useEffect((()=>(o(function(n,e){const t=n.name;if(-1!==H.indexOf(t))throw new Error(`You must use a unique name for a pane that is not a default Leaflet pane: ${t}`);if(null!=e.map.getPane(t))throw new Error(`A pane with this name already exists: ${t}`);const r=n.pane??e.pane,o=r?e.map.getPane(r):void 0,u=e.map.createPane(t,o);return null!=n.className&&v(u,n.className),null!=n.style&&Object.keys(n.style).forEach((e=>{u.style[e]=n.style[e]})),u}(n,c)),function(){const e=c.map.getPane(n.name);null==e||null==e.remove||e.remove(),null!=c.map._panes&&(c.map._panes=V(c.map._panes,n.name),c.map._paneRenderers=V(c.map._paneRenderers,n.name))})),[]),null!=n.children&&null!=t?r.createPortal(u.default.createElement(i,{value:a},n.children),t):null},n.Polygon=Z,n.Polyline=q,n.Popup=U,n.Rectangle=D,n.SVGOverlay=$,n.ScaleControl=F,n.TileLayer=Y,n.Tooltip=K,n.VideoOverlay=Q,n.WMSTileLayer=X,n.ZoomControl=nn,n.useMap=I,n.useMapEvent=function(n,t){const r=I();return e.useEffect((function(){return r.on(n,t),function(){r.off(n,t)}}),[r,n,t]),r},n.useMapEvents=function(n){const t=I();return e.useEffect((function(){return t.on(n),function(){t.off(n)}}),[t,n]),t},Object.defineProperty(n,"__esModule",{value:!0})})); |
116475
2566
Updated@react-leaflet/core@^1.1.1