tg-map-vue3 3.8.3 → 3.8.5
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/tg-map.js +170 -174
- package/dist/tg-map.js.map +1 -1
- package/dist/tg-map.umd.cjs +1 -1
- package/dist/tg-map.umd.cjs.map +1 -1
- package/package.json +1 -1
package/dist/tg-map.umd.cjs
CHANGED
|
@@ -14,5 +14,5 @@
|
|
|
14
14
|
`)}r.trimIndent=e;function i(s){return s.replace(/([^A-Z]?)([A-Z])/g,(l,d,o)=>d?`${d}-${o.toLowerCase()}`:o.toLowerCase())}r.pascal2kebab=i;function n(s){return/^-?\d+$/.test(s)}r.isInt=n})(a.Strings||(a.Strings={}));const Gi={basename(r,t){const e=r.endsWith("/")?r.slice(0,-1):r,i=e.lastIndexOf("/"),n=i>=0?e.substring(i+1):e;return t&&n.endsWith(t)?n.slice(0,-t.length):n}};var ue=(r=>(r.map="map",r.overlay="overlay",r.overlayMouseTarget="overlayMouseTarget",r.float="float",r))(ue||{});a.MapPanes=void 0,(r=>{function t(i,n){switch(i){case"float":return n.floatPane;case"overlayMouseTarget":return n.overlayMouseTarget;case"overlay":return n.overlayLayer;case"map":return n.mapPane;default:Ge(i)}}r.toGoogle=t;function e(i,n){switch(i){case"float":return n.floatPane;case"overlayMouseTarget":return n.markerMouseTarget;case"overlay":return n.markerPane;case"map":return n.mapPane;default:Ge(i)}}r.toBaidu=e})(a.MapPanes||(a.MapPanes={}));class Ni{constructor(t,e){f(this,"baidu");f(this,"google");f(this,"projection");f(this,"element",void 0);f(this,"mapPane");this.map=t,this.mapPane=e.mapPane}create(){return this.element=this.onCreate(),this.element.className+=" element-overlay",this.element}draw(){this.projection&&this.onDraw(this.projection)}getProjection(){return this.projection}asBaidu(){if(!this.baidu){const t=this;$i();class e extends BMap.OverlayV3{initialize(s){var o;const l=t.create(),d=s.getPanes();return(o=a.MapPanes.toBaidu(t.mapPane,d))==null||o.appendChild(l),l}draw(){t.draw()}}this.baidu=new e;const i=t.map.innerMap;this.projection={fromLatLngToOverlayPoint(n){return i.pointToOverlayPixel(n.toBaidu(t.map.coordType))},fromOverlayPointToLatLng(n){return w.fromBaidu(i.overlayPixelToPoint(new BMap.Pixel(n.x,n.y)),t.map.coordType)}}}return this.baidu}asGoogle(){if(!this.google){const t=this;class e extends google.maps.OverlayView{onAdd(){const n=t.create(),s=this.getPanes()??I("onAdd回调中一定会有panes");a.MapPanes.toGoogle(t.mapPane,s).appendChild(n)}draw(){t.draw()}onRemove(){var n;(n=t.element.parentNode)==null||n.removeChild(t.element)}}this.google=new e,this.projection={fromLatLngToOverlayPoint(i){return t.google.getProjection().fromLatLngToDivPixel(i.toGoogle(t.map.coordType))??a.Point.ZERO},fromOverlayPointToLatLng(i){return w.fromGoogle(t.google.getProjection().fromDivPixelToLatLng(new google.maps.Point(i.x,i.y))??ie.LATLNG_ZERO,t.map.coordType)}}}return this.google}}let Ut;function Qr(r,t,e,i,n){return Ut||(Ut=en()),new Ut(r,t,e,i,n)}function en(){return class extends google.maps.OverlayView{constructor(e,i,n,s=ue.overlayMouseTarget,l){super();f(this,"container");this.position=i,this.offset=n,this._mapPane=s,this.container=document.createElement("div"),this.container.className="label-container",this.container.style.position="absolute",l&&this.setZIndex(l),this.container.addEventListener("click",()=>{google.maps.event.trigger(this,"click")}),this.setElement(e)}setZIndex(e){this.container.style.zIndex=`${e}`}setElement(e){const i=this.container.firstChild;i!==e&&(i?this.container.replaceChild(i,e):this.container.appendChild(e))}onAdd(){const e=this.getPanes()??I("onAdd回调中一定能够获取panes");a.MapPanes.toGoogle(this._mapPane,e).appendChild(this.container)}draw(){var e,i;if(this.container.style.display=this.position?"block":"none",this.position){const n=this.getProjection();if(n){const s=n.fromLatLngToDivPixel(this.position);s&&(this.container.style.left=`${s.x+(((e=this.offset)==null?void 0:e.x)??0)}px`,this.container.style.top=`${s.y+(((i=this.offset)==null?void 0:i.y)??0)}px`)}}}onRemove(){var e;(e=this.container.parentNode)==null||e.removeChild(this.container)}setPosition(e){this.position=e,this.draw()}getPosition(){return this.position}setOffset(e){this.offset=e,this.draw()}getOffset(){return this.offset}getVisible(){return this.container.style.visibility!=="hidden"}setVisible(e){this.container.style.visibility=e?"visible":"hidden"}}}var pe;(r=>{function t(i){return typeof i=="string"?i:i.outerHTML}r.toString=t;function e(i){if(typeof i=="string"){const n=document.createElement("div");return n.innerHTML=i,n}return i}r.toElement=e})(pe||(pe={}));class Yt extends Ce{constructor(e,i,n,s){super(e,i,n);f(this,"icon");f(this,"iconAnchor");f(this,"content",void 0);f(this,"contentObserver");this.setContentInternal(s,!0)}static create(e){var l;const i=this.coordType,n=new BMap.Label(pe.toString(e.content),{position:(l=e.position)==null?void 0:l.toBaidu(i),offset:e.offset&&new BMap.Size(e.offset.x,e.offset.y)});e.zIndex&&n.setZIndex(e.zIndex),n.setStyle({border:"0px",padding:"0px",backgroundColor:"unset"});const s=new Yt(n,i,this,e.content);return n.__label__=s,s}setContentInternal(e,i=!1){this.content!==e&&(this.contentObserver&&(this.contentObserver.disconnect(),this.contentObserver=void 0),typeof e!="string"&&(this.contentObserver=new MutationObserver(()=>{this.innerOverlay.setContent(e.outerHTML)}),this.contentObserver.observe(e,{attributes:!0,characterData:!0,childList:!0,subtree:!0})),i||this.innerOverlay.setContent(pe.toString(e)),this.content=e)}setZIndex(e){this.innerOverlay.setZIndex(e)}getPosition(){return w.fromBaidu(this.innerOverlay.getPosition(),this.coordType)}setPosition(e){this.coordType=this.map.coordType,this.innerOverlay.setPosition(e.toBaidu(this.coordType))}getOffset(){const e=this.innerOverlay.getOffset();let i=0,n=0;return this.iconAnchor&&(i=this.iconAnchor.width,n=this.iconAnchor.height),{x:e.width-i,y:e.height-n}}setOffset(e){let i=0,n=0;this.iconAnchor&&(i=this.iconAnchor.width,n=this.iconAnchor.height),this.innerOverlay.setOffset(new BMap.Size(e.x+i,e.y+n))}setContent(e){this.setContentInternal(e)}attachIcon(e){var d;let i;if(e instanceof BMap.Icon)i=e.anchor;else if(e)if(e.anchor)i=e.anchor;else{const o=((d=e.__icon__)==null?void 0:d.baiduLabelOffset)??{x:0,y:0};i={width:e.style.anchor.width+o.x,height:e.style.anchor.height+o.y},process.env.NODE_ENV!=="production"&&setTimeout(()=>{var g,m;if(ne(e.__icon__,`${e}必须是由'SymbolIcon.toBaidu()'创建的`),!e.anchor){console.log("BaiduLabelOverlay.attachIcon","Bmap.Symbol.anchor尚未计算完成");return}const c=e.anchor.width-e.style.anchor.width,u=e.anchor.height-e.style.anchor.height;if(o.x!==c||o.y!==u){const v=[(g=e.__icon__.anchor)==null?void 0:g.x,(m=e.__icon__.anchor)==null?void 0:m.y,e.__icon__.rotation,e.__icon__.scale,e.__icon__.strokeWeight].map(C=>C??"").join(",");console.warn("BaiduLabelOverlay.attachIcon",e.__icon__,a.Strings.trimIndent(`
|
|
15
15
|
为了保证Label的位置正确, 请将SymbolIcon(${v})中baiduLabelOffset的值改写成:
|
|
16
16
|
${JSON.stringify({x:c,y:u})}
|
|
17
|
-
`))}},1)}const n=this.innerOverlay.getOffset();let s=n.width,l=n.height;this.iconAnchor&&(s-=this.iconAnchor.width,l-=this.iconAnchor.height),i&&(s+=i.width,l+=i.height),this.innerOverlay.setOffset(new BMap.Size(s,l)),this.icon=e,this.iconAnchor=i}}class qt extends lt{static create(t){var n;const e=this.coordType,i=Qr(pe.toElement(t.content),(n=t.position)==null?void 0:n.toGoogle(e),t.offset,t.mapPane,t.zIndex);return new qt(i,e,this)}setZIndex(t){this.innerOverlay.setZIndex(t)}setContent(t){this.innerOverlay.setElement(pe.toElement(t))}getPosition(){const t=this.innerOverlay.getPosition();return t?w.fromGoogle(t,this.coordType):w.ZERO}setPosition(t){this.coordType=this.map.coordType,this.innerOverlay.setPosition(t.toGoogle(this.coordType))}getOffset(){return this.innerOverlay.getOffset()??a.Point.ZERO}setOffset(t){this.innerOverlay.setOffset(t)}}const Oe={toGoogle:r=>"url"in r?a.Icon.toGoogle(r):a.SymbolIcon.toGoogle(r),toBaidu:r=>"url"in r?a.Icon.toBaidu(r):a.SymbolIcon.toBaidu(r)};a.Icon=void 0,(r=>{function t(i){return{url:i.url,size:new google.maps.Size(i.size.width,i.size.height),origin:i.origin&&new google.maps.Point(i.origin.x,i.origin.y),scaledSize:i.scaledSize&&new google.maps.Size(i.scaledSize.width,i.scaledSize.height),anchor:i.anchor&&new google.maps.Point(i.anchor.x,i.anchor.y)}}r.toGoogle=t;function e(i){return new BMap.Icon(i.url,new BMap.Size(i.size.width,i.size.height),{imageOffset:i.origin&&new BMap.Size(-i.origin.x,-i.origin.y),imageSize:i.scaledSize&&new BMap.Size(i.scaledSize.width,i.scaledSize.height),anchor:i.anchor?new BMap.Size(i.anchor.x,i.anchor.y):new BMap.Size(i.size.width/2,i.size.height)})}r.toBaidu=e})(a.Icon||(a.Icon={})),a.SymbolIcon=void 0,(r=>{function t(i){return{path:typeof i.path=="string"?i.path:i.path.google(),anchor:i.anchor&&new google.maps.Point(i.anchor.x,i.anchor.y),fillColor:i.fillColor,fillOpacity:i.fillOpacity,scale:i.scale,rotation:i.rotation,strokeColor:i.strokeColor,strokeOpacity:i.strokeOpacity,strokeWeight:i.strokeWeight}}r.toGoogle=t;function e(i){const n=new BMap.Symbol(typeof i.path=="string"?i.path:i.path.baidu(),{anchor:i.anchor&&new BMap.Size(i.anchor.x,i.anchor.y),fillColor:i.fillColor,fillOpacity:i.fillOpacity,scale:i.scale,rotation:i.rotation,strokeColor:i.strokeColor,strokeOpacity:i.strokeOpacity,strokeWeight:i.strokeWeight});return n.__icon__=i,n}r.toBaidu=e})(a.SymbolIcon||(a.SymbolIcon={}));const tn={CIRCLE:{baidu:()=>BMap_Symbol_SHAPE_CIRCLE,google:()=>google.maps.SymbolPath.CIRCLE},BACKWARD_CLOSED_ARROW:{baidu:()=>BMap_Symbol_SHAPE_BACKWARD_CLOSED_ARROW,google:()=>google.maps.SymbolPath.BACKWARD_CLOSED_ARROW},BACKWARD_OPEN_ARROW:{baidu:()=>BMap_Symbol_SHAPE_BACKWARD_OPEN_ARROW,google:()=>google.maps.SymbolPath.BACKWARD_OPEN_ARROW},FORWARD_CLOSED_ARROW:{baidu:()=>BMap_Symbol_SHAPE_FORWARD_CLOSED_ARROW,google:()=>google.maps.SymbolPath.FORWARD_CLOSED_ARROW},FORWARD_OPEN_ARROW:{baidu:()=>BMap_Symbol_SHAPE_FORWARD_OPEN_ARROW,google:()=>google.maps.SymbolPath.FORWARD_OPEN_ARROW}};a.IconSequence=void 0,(r=>{function t(i){return{icon:a.SymbolIcon.toGoogle(i.icon),offset:i.offset,repeat:i.repeat,fixedRotation:i.fixedRotation}}r.toGoogle=t;function e(i){return new BMap.IconSequence(a.SymbolIcon.toBaidu(i.icon),i.offset,i.repeat??"",i.fixedRotation)}r.toBaidu=e})(a.IconSequence||(a.IconSequence={}));class ge extends Ce{constructor(t,e,i,n){super(t,e,i),this.state=n}static create(t){const e=this.coordType,i=t.icon,n={title:t.title,icon:i&&Oe.toBaidu(i),enableClicking:t.clickable,enableDragging:t.draggable,raiseOnDrag:t.crossOnDrag===void 0?!0:t.crossOnDrag,draggingCursor:t.cursor},s=new BMap.Marker(t.position.toBaidu(e,t.normalizePositionForBaidu),n);s.__create_by_tg__=!0,t.zIndex!==void 0&&s.setZIndex(t.zIndex);const l=t.clickable===void 0?!0:t.clickable,d=!!t.draggable;return new ge(s,e,this,{clickable:l,draggable:d,zIndex:t.zIndex,normalize:t.normalizePositionForBaidu}).visibleOptionInternal(t.visible)}getPosition(){return w.fromBaidu(this.innerOverlay.getPosition(),this.coordType)}setPosition(t){var e;this.coordType=this.map.coordType,this.innerOverlay.setPosition(t.toBaidu(this.coordType,this.state.normalize)),(e=this.innerOverlay.__info_box__)==null||e.onMarkerPositionChanged()}setTitle(t){this.innerOverlay.setTitle(t)}getTitle(){return this.innerOverlay.getTitle()}setIcon(t){const e=Oe.toBaidu(t);this.innerOverlay.setIcon(e);const i=this.getLabel();i&&i.attachIcon(e)}getIcon(){return this.innerOverlay.getIcon()}setClickable(t){this.state.clickable=t}isClickable(){return this.state.clickable}setDraggable(t){this.state.draggable=t,t?this.innerOverlay.enableDragging():this.innerOverlay.disableDragging()}isDraggable(){return this.state.draggable}setZIndex(t){this.state.zIndex=t,this.innerOverlay.setZIndex(t||0)}getZIndex(){return this.state.zIndex}setLabel(t){const e=this.getLabel();e&&e.attachIcon(void 0),t&&t.attachIcon(this.innerOverlay.getIcon()),this.innerOverlay.setLabel(t==null?void 0:t.innerOverlay)}getLabel(){var t;return(t=this.innerOverlay.getLabel())==null?void 0:t.__label__}}class yt extends lt{constructor(){super(...arguments);f(this,"label");f(this,"labelPositionListener");f(this,"labelVisibleListener");f(this,"labelMapChangedListener")}static create(e){const i=this.coordType,n=e.icon,s={position:e.position.toGoogle(i),title:e.title,zIndex:e.zIndex,visible:e.visible,icon:n&&Oe.toGoogle(n),clickable:e.clickable,draggable:e.draggable,crossOnDrag:e.crossOnDrag,cursor:e.cursor,anchorPoint:new google.maps.Point(0,0)};return new yt(new google.maps.Marker(s),i,this)}getPosition(){return w.fromGoogle(this.innerOverlay.getPosition(),this.coordType)}setPosition(e){this.coordType=this.map.coordType,this.innerOverlay.setPosition(e.toGoogle(this.coordType))}setTitle(e){this.innerOverlay.setTitle(e)}getTitle(){return this.innerOverlay.getTitle()||""}setIcon(e){this.innerOverlay.setIcon(Oe.toGoogle(e))}getIcon(){return this.innerOverlay.getIcon()}setClickable(e){this.innerOverlay.setClickable(e)}isClickable(){return this.innerOverlay.getClickable()}setDraggable(e){this.innerOverlay.setDraggable(e)}isDraggable(){return!!this.innerOverlay.getDraggable()}setZIndex(e){this.innerOverlay.setZIndex(e===void 0?null:e)}getZIndex(){const e=this.innerOverlay.getZIndex();return e===null?void 0:e}setLabel(e){if(this.label&&this.map.removeOverlay(this.label),this.labelPositionListener&&this.labelPositionListener.remove(),this.labelVisibleListener&&this.labelVisibleListener.remove(),this.labelMapChangedListener&&this.labelMapChangedListener.remove(),e){const i=()=>{e.innerOverlay.setPosition(this.innerOverlay.getPosition())},n=()=>{e.innerOverlay.setVisible(this.innerOverlay.getVisible())},s=()=>{this.innerOverlay.getMap()?this.map.addOverlay(e):this.map.removeOverlay(e)};s(),i(),n(),this.label=e,this.labelMapChangedListener=this.innerOverlay.addListener("map_changed",s),this.labelPositionListener=this.innerOverlay.addListener("position_changed",i),this.labelVisibleListener=this.innerOverlay.addListener("visible_changed",n)}else this.label=void 0,this.labelPositionListener=void 0,this.labelVisibleListener=void 0,this.labelMapChangedListener=void 0}}class vt extends U{constructor(){super(...arguments);f(this,"eventHubDelegate");f(this,"prevPath");f(this,"isDoingSetPath",!1);f(this,"onLineUpdate",()=>{var i;const e=this.innerOverlay.getPath();e!==this.prevPath&&(this.isDoingSetPath||(i=this.eventHubDelegate)==null||i.notify({type:this.pathEditedEventType,target:this,originalEvent:{prevPath:this.prevPath,path:e}}),this.prevPath=e)})}setPathInternal(e){this.isDoingSetPath=!0,this.innerOverlay.setPath(e),this.isDoingSetPath=!1}createDelegate(){return this.eventHubDelegate=new Ve(super.createDelegate(),{types:[this.pathEditedEventType],onListen:()=>{this.prevPath=this.innerOverlay.getPath(),this.innerOverlay.addEventListener("lineupdate",this.onLineUpdate)},onCancel:()=>{this.innerOverlay.removeEventListener("lineupdate",this.onLineUpdate),this.prevPath=void 0}})}}class _t extends vt{constructor(){super(...arguments);f(this,"pathEditedEventType","path-edited")}static create(e){var s,l;const i=this.coordType,n=new BMap.Polyline(e.path.map(d=>d.toBaidu(i)),{enableClicking:e.clickable,enableEditing:e.editable,strokeColor:e.strokeColor,strokeOpacity:e.strokeOpacity!=null?e.strokeOpacity+U.OPACITY_DELTA:void 0,strokeWeight:e.strokeWeight,icons:(s=e.icons)==null?void 0:s.map(a.IconSequence.toBaidu)});return new _t(n,i,this,{editable:!!e.editable,symbolIcons:(l=e.icons)==null?void 0:l.map(d=>d.icon)}).visibleOptionInternal(e.visible)}getPath(){return this.innerOverlay.getPath().map(e=>w.fromBaidu(e,this.coordType))}setPath(e){this.coordType=this.map.coordType,this.setPathInternal(e.map(i=>i.toBaidu(this.coordType)))}remove(){var e;super.remove(),(e=this.state.symbolIcons)!=null&&e.length&&this.map.innerMap.getOverlays().filter(n=>{var o;if(!(n instanceof BMap.Marker))return!1;const s=n;if(s.__create_by_tg__)return!1;const l=s.getIcon();if(!(l instanceof BMap.Symbol))return!1;const d=l;return d.__icon__?(o=this.state.symbolIcons)==null?void 0:o.includes(d.__icon__):!1}).forEach(n=>this.map.innerMap.removeOverlay(n))}}class bt extends ht{constructor(){super(...arguments);f(this,"pathChangedListeners");f(this,"eventHubDelegate")}static create(e){var s;const i=this.coordType,n=new google.maps.Polyline({path:e.path.map(l=>l.toGoogle(i)),clickable:e.clickable,editable:e.editable,strokeColor:e.strokeColor,strokeOpacity:e.strokeOpacity,strokeWeight:e.strokeWeight,visible:e.visible,icons:(s=e.icons)==null?void 0:s.map(a.IconSequence.toGoogle)});return new bt(n,i,this)}setupPathChangedListeners(){const e=()=>{var n;return(n=this.eventHubDelegate)==null?void 0:n.notify({type:"path-edited",target:this})},i=this.innerOverlay.getPath();this.pathChangedListeners=a.MVCArrays.listenChanged(i,e)}clearPathChangedListeners(){var e;(e=this.pathChangedListeners)==null||e.forEach(i=>i.remove()),this.pathChangedListeners=void 0}createDelegate(){return this.eventHubDelegate=new Ve(super.createDelegate(),{types:["path-edited"],onListen:()=>this.setupPathChangedListeners(),onCancel:()=>this.clearPathChangedListeners()})}getPath(){const e=[];return this.innerOverlay.getPath().forEach(i=>{e.push(w.fromGoogle(i,this.coordType))}),e}setPath(e){var i;this.coordType=this.map.coordType,this.innerOverlay.setPath(e.map(n=>n.toGoogle(this.coordType))),(i=this.eventHubDelegate)!=null&&i.hasListener("path-edited")&&this.setupPathChangedListeners()}}class Mt extends vt{constructor(){super(...arguments);f(this,"pathEditedEventType","paths-edited")}static create(e){const i=this.coordType;e.paths.length>1&&console.warn("baidu不支持多path, 只会显示paths[0]");const n=e.paths[0]||[],s=new BMap.Polygon(n.map(l=>l.toBaidu(i)),{enableClicking:e.clickable,enableEditing:e.editable,strokeColor:e.strokeColor,strokeOpacity:e.strokeOpacity!=null?e.strokeOpacity+U.OPACITY_DELTA:void 0,strokeWeight:e.strokeWeight,fillColor:e.fillColor,fillOpacity:e.fillOpacity!=null?e.fillOpacity+U.OPACITY_DELTA:void 0});return new Mt(s,i,this,{editable:!!e.editable}).visibleOptionInternal(e.visible)}getPaths(){return[this.innerOverlay.getPath().map(e=>w.fromBaidu(e,this.coordType))]}setPaths(e){e.length>1&&console.warn("baidu不支持多path, 只会显示paths[0]"),this.coordType=this.map.coordType,this.setPathInternal((e[0]||[]).map(i=>i.toBaidu(this.coordType)))}}class Tt extends ht{constructor(){super(...arguments);f(this,"pathChangedListeners");f(this,"eventHubDelegate")}static create(e){const i=this.coordType,n=new google.maps.Polygon({paths:e.paths.map(s=>s.map(l=>l.toGoogle(i))),clickable:e.clickable,editable:e.editable,strokeColor:e.strokeColor,strokeOpacity:e.strokeOpacity,strokeWeight:e.strokeWeight,fillColor:e.fillColor,fillOpacity:e.fillOpacity,visible:e.visible});return new Tt(n,i,this)}setupPathChangedListeners(){const e=()=>{var n;return(n=this.eventHubDelegate)==null?void 0:n.notify({type:"paths-edited",target:this})},i=this.innerOverlay.getPaths();this.pathChangedListeners=[],i.forEach(n=>{this.pathChangedListeners.push(...a.MVCArrays.listenChanged(n,e))})}clearPathChangedListeners(){var e;(e=this.pathChangedListeners)==null||e.forEach(i=>i.remove()),this.pathChangedListeners=void 0}createDelegate(){return this.eventHubDelegate=new Ve(super.createDelegate(),{types:["paths-edited"],onListen:()=>this.setupPathChangedListeners(),onCancel:()=>this.clearPathChangedListeners()})}getPaths(){const e=this.innerOverlay.getPaths(),i=[];return e.forEach(n=>{const s=[];i.push(s),n.forEach(l=>{s.push(w.fromGoogle(l,this.coordType))})}),i}setPaths(e){var i;this.coordType=this.map.coordType,this.innerOverlay.setPaths(e.map(n=>n.map(s=>s.toGoogle(this.coordType)))),(i=this.eventHubDelegate)!=null&&i.hasListener("paths-edited")&&this.setupPathChangedListeners()}}class Ct extends vt{constructor(e,i,n,s){super(e,i,n,s);f(this,"pathEditedEventType","bounds-changed");f(this,"isDoingUpdateRectangle",!1);f(this,"onBoundsChanged",({originalEvent:e})=>{if(this.isDoingUpdateRectangle)return;const i=e.prevPath??[],n=e.path;setTimeout(()=>{let s=n;const l=n.length;if(i.length===4)if(l>i.length){for(let o=0;o<l;o++)if(i[o]==null||!zi.equals(n[o],i[o])){const c=n[(o-2+l)%l],u=n[(o-1+l)%l],g=n[o],m=n[(o+1)%l],v=n[(o+2)%l];let C;u.lat===m.lat?C=new BMap.Point(u.lng,g.lat):u.lng===m.lng?C=new BMap.Point(g.lng,u.lat):C=g,s=[c,v,C];break}}else if(l===i.length){for(let o=0;o<l;o++)if(!zi.equals(n[o],i[o])){s=[n[o],n[(o+2)%4]];break}}else l<i.length;const d=j.fromArray(s.map(o=>w.fromBaidu(o,this.coordType)));d&&(this.isDoingUpdateRectangle=!0,this.innerOverlay.setPath(d.toRectArray().map(o=>o.toBaidu(this.coordType))),this.isDoingUpdateRectangle=!1)},0)});this.addEventListener("bounds-changed",this.onBoundsChanged)}static create(e){const i=this.coordType,n=new BMap.Polygon(e.bounds.toRectArray().map(s=>s.toBaidu(i)),{enableClicking:e.clickable,enableEditing:e.editable,strokeColor:e.strokeColor,strokeOpacity:e.strokeOpacity!=null?e.strokeOpacity+U.OPACITY_DELTA:void 0,strokeWeight:e.strokeWeight,fillColor:e.fillColor,fillOpacity:e.fillOpacity!=null?e.fillOpacity+U.OPACITY_DELTA:void 0});return new Ct(n,i,this,{editable:!!e.editable}).visibleOptionInternal(e.visible)}getBounds(){return j.fromBaidu(this.innerOverlay.getBounds(),this.coordType)}setBounds(e){const i=e.toRectArray();this.innerOverlay.getPath().length===i.length?e.toRectArray().forEach((n,s)=>{this.innerOverlay.setPositionAt(s,n.toBaidu(this.coordType))}):this.setPathInternal(i.map(n=>n.toBaidu(this.coordType)))}}class Ot extends ht{static create(t){const e=this.coordType,i=new google.maps.Rectangle({bounds:t.bounds.toGoogle(e),clickable:t.clickable,editable:t.editable,strokeColor:t.strokeColor,strokeOpacity:t.strokeOpacity,strokeWeight:t.strokeWeight,fillColor:t.fillColor,fillOpacity:t.fillOpacity,visible:t.visible});return new Ot(i,e,this)}getBounds(){return j.fromGoogle(this.innerOverlay.getBounds()??ie.BOUNDS_ZERO,this.coordType)}setBounds(t){const e=t.toGoogle(this.coordType);e.equals(this.innerOverlay.getBounds())||this.innerOverlay.setBounds(e)}}const se=1;class rn extends at{constructor(e,i){var n;super(e);f(this,"buildInMapTypeId2BIMT");f(this,"baiduMapType2BIMT");f(this,"map");f(this,"createLabel",Yt.create);f(this,"createCircle",ct.create);f(this,"createPolygon",Mt.create);f(this,"createPolyline",_t.create);f(this,"createRectangle",Ct.create);f(this,"createInfoWindow",pt.create);f(this,"createInfoBox",mt.create);f(this,"createMarker",ge.create);f(this,"createMapTypeControl",Ue.create);f(this,"createZoomControl",Qe.create);f(this,"createStreetViewControl",Xe.create);f(this,"createScaleControl",qe.create);this.buildInMapTypeId2BIMT=a.MapType.BUILD_IN_MAP_TYPES.getValueMap(W.prototype.getId),this.baiduMapType2BIMT=a.MapType.BUILD_IN_MAP_TYPES.getValueMap(W.prototype.asBaiduMapType),this.map=new BMap.Map(e,{minZoom:i.minZoom&&i.minZoom+se,maxZoom:i.maxZoom&&i.maxZoom+se,mapType:i.buildInMapTypeId&&((n=this.buildInMapTypeId2BIMT.get(i.buildInMapTypeId))==null?void 0:n.asBaiduMapType()),enableMapClick:!1}),this.map.centerAndZoom(i.center.toBaidu(this.coordType),i.zoom+se),this.setGestureHandling(i.gestureHandling),i.infoWindowMode==="multi"&&console.warn("baidu不支持多个InfoWindow, 可能会出现未知问题"),i.mapStyle&&this.map.setMapStyleV2(i.mapStyle.baidu),this.setEventTargetDelegate(new _e(this.map,this)),this.map.addEventListener("addoverlay",s=>{const l=s.target.__info_box__;l&&(console.debug("add:info-box",l),this.map.addOverlay(l))}),this.map.addEventListener("removeoverlay",s=>{const l=s.target.__info_box__;l&&(console.debug("remove:info-box",l),this.map.removeOverlay(l))})}setGestureHandling(e=X.auto){switch(e===X.auto&&(e=this.element.parentElement&&xt.isScrollable(this.element.parentElement)?X.cooperative:X.greedy),e){case X.cooperative:this.map.disableScrollWheelZoom(),this.map.enableDragging(),this.map.enableDoubleClickZoom();break;case X.greedy:this.map.enableScrollWheelZoom(),this.map.enableDragging(),this.map.enableDoubleClickZoom();break;case X.none:this.map.disableDragging(),this.map.disableScrollWheelZoom(),this.map.disableDoubleClickZoom();break}}get innerMap(){return this.map}get coordType(){return this.getMapType().getBaiduCoordType()}addEventListener(e,i){if(e==="center-changed"){super.addEventListener("movestart",i),super.addEventListener("moving",i),super.addEventListener("moveend",i),super.addEventListener("zoomend",i);return}super.addEventListener(e,i)}removeEventListener(e,i){if(e==="center-changed"){super.removeEventListener("movestart",i),super.removeEventListener("moving",i),super.removeEventListener("moveend",i),super.removeEventListener("zoomend",i);return}super.removeEventListener(e,i)}fromContainerPointToLatLng(e){return w.fromBaidu(this.innerMap.pixelToPoint(new BMap.Pixel(e.x,e.y)),this.coordType)}fromLatLngToContainerPoint(e){return this.innerMap.pointToPixel(e.toBaidu(this.coordType))}setDefaultCursor(e){this.innerMap.setDefaultCursor(e)}setDraggable(e){e?this.innerMap.enableDragging():this.innerMap.disableDragging()}setDoubleClickZoom(e){e?this.map.enableDoubleClickZoom():this.map.disableDoubleClickZoom()}getCenter(){return w.fromBaidu(this.map.getCenter(),this.coordType)}setCenter(e){this.map.setCenter(e.toBaidu(this.coordType))}getZoom(){return super.getZoom()-se}setZoom(e){return super.setZoom(e+se)}setMinZoom(e){this.map.setMinZoom(e+se)}setMaxZoom(e){this.map.setMaxZoom(e+se)}setMapStyle(e){this.map.setMapStyleV2((e==null?void 0:e.baidu)??{styleJson:[]})}setBuildInMapTypeId(e){var n;const i=(n=this.buildInMapTypeId2BIMT.get(e))==null?void 0:n.asBaiduMapType();this.map.setMapType(i??I("理论上来说不可能为空"))}setMapType(e){this.map.setMapType(e.asBaiduMapType())}getMapType(){const e=this.map.getMapType(),i=this.baiduMapType2BIMT.get(e);return i||(e.__baidu_map_type__??I("实现asBaiduMapType()时, 忘了给实例设置__baidu_map_type__?"))}addLayer(e){this.map.addTileLayer(e.asBaiduLayer())}removeLayer(e){this.map.removeTileLayer(e.asBaiduLayer())}panTo(e){this.map.panTo(e.toBaidu(this.coordType))}panBy(e,i){this.map.panBy(e,i)}fitBounds(e,i){this.map.setViewport(e.toBaiduArray(this.coordType),{margins:i&&[i.top,i.right,i.bottom,i.left]})}getBounds(){return j.fromBaidu(this.map.getBounds(),this.coordType)}addElementOverlay(e){this.map.addOverlay(e.asBaidu())}removeElementOverlay(e){this.map.removeOverlay(e.asBaidu())}addOverlay(e){this.map.addOverlay(e.innerOverlay)}removeOverlay(e){this.map.removeOverlay(e.innerOverlay)}addCustomControl(e){if(!e.inner){const i=class extends BMap.Control{constructor(){super(...arguments);f(this,"defaultAnchor",a.ControlPositionConverter.getBaidu().toValue(e.position));f(this,"defaultOffset",new BMap.Size(0,0))}initialize(s){const l=e.onCreateElement();return s.getContainer().appendChild(l),l}};e.inner=new i,this.map.addControl(e.inner)}}removeCustomControl(e){e.inner&&(ne(e.inner instanceof BMap.Control,`control.inner(${e.inner})需要是BMap.Control`),this.map.removeControl(e.inner))}createMarkerClusterer(e){return new Ci(this,e)}createHeatmap(e){return new yi(this,e)}createAutocomplete(e){return new pi(this,e)}createSearchBox(e){return new Li(this,e)}createPlacesService(e){return new Ei(this,e)}createMapUrls(e){return new nt(e)}}class nn extends at{constructor(e,i){var s,l;super(e);f(this,"buildInMapTypeId2BIMT");f(this,"googleMapTypeId2BIMT");f(this,"map");f(this,"createLabel",qt.create);f(this,"createCircle",dt.create);f(this,"createPolygon",Tt.create);f(this,"createPolyline",bt.create);f(this,"createRectangle",Ot.create);f(this,"createInfoWindow",gt.create);f(this,"createInfoBox",ft.create);f(this,"createMarker",yt.create);f(this,"createMapTypeControl",Ye.create);f(this,"createZoomControl",et.create);f(this,"createStreetViewControl",Je.create);f(this,"createScaleControl",Ke.create);this.mapOptions=i,this.buildInMapTypeId2BIMT=a.MapType.BUILD_IN_MAP_TYPES.getValueMap(W.prototype.getId),this.googleMapTypeId2BIMT=a.MapType.BUILD_IN_MAP_TYPES.getValueMap(W.prototype.getGoogleMapTypeId);const n=i.buildInMapTypeId&&this.buildInMapTypeId2BIMT.get(i.buildInMapTypeId);this.map=new google.maps.Map(e,{center:i.center.toGoogle((n??a.MapType.NORMAL).getGoogleCoordType()),zoom:i.zoom,disableDefaultUI:!0,gestureHandling:i.gestureHandling,minZoom:i.minZoom,maxZoom:i.maxZoom,styles:(s=i.mapStyle)==null?void 0:s.google.styles,mapId:(l=i.mapStyle)==null?void 0:l.google.mapId,mapTypeId:n==null?void 0:n.getGoogleMapTypeId()}),this.setEventTargetDelegate(new he(this.map,this))}setGestureHandling(e){this.map.setOptions({gestureHandling:e})}get innerMap(){return this.map}get coordType(){return this.getMapType().getGoogleCoordType()}fromContainerPointToLatLng(e){const i=this.innerMap.getProjection(),n=this.innerMap.getBounds();if(i==null||n==null)return w.ZERO;const s=i.fromLatLngToPoint(n.getSouthWest()),l=i.fromLatLngToPoint(n.getNorthEast()),d=this.innerMap.getZoom();if(s==null||l==null||d==null)return w.ZERO;const o=Math.pow(2,d),c=new google.maps.Point(e.x/o+s.x,e.y/o+l.y);return w.fromGoogle(i.fromPointToLatLng(c)??ie.LATLNG_ZERO,this.coordType)}fromLatLngToContainerPoint(e){const i=this.innerMap.getProjection(),n=this.innerMap.getBounds();if(i==null||n==null)return a.Point.ZERO;const s=i.fromLatLngToPoint(n.getSouthWest()),l=i.fromLatLngToPoint(n.getNorthEast()),d=this.innerMap.getZoom();if(s==null||l==null||d==null)return a.Point.ZERO;const o=Math.pow(2,d),c=i.fromLatLngToPoint(e.toGoogle(this.coordType));return c==null?a.Point.ZERO:{x:(c.x-s.x)*o,y:(c.y-l.y)*o}}setDefaultCursor(e){this.innerMap.setOptions({draggableCursor:e})}setDraggable(e){this.innerMap.setOptions({draggable:e})}setDoubleClickZoom(e){this.map.setOptions({disableDoubleClickZoom:!e})}getCenter(){return w.fromGoogle(this.map.getCenter()??ie.LATLNG_ZERO,this.coordType)}setCenter(e){this.map.setCenter(e.toGoogle(this.coordType))}setMinZoom(e){this.map.setOptions({minZoom:e})}setMaxZoom(e){this.map.setOptions({maxZoom:e})}setMapStyle(e){this.map.setOptions({styles:e==null?void 0:e.google.styles,mapId:e==null?void 0:e.google.mapId})}setBuildInMapTypeId(e){var n;const i=(n=this.buildInMapTypeId2BIMT.get(e))==null?void 0:n.getGoogleMapTypeId();this.map.setMapTypeId(i??I("理论上来说不可能为空"))}setMapType(e){e instanceof W?this.map.setMapTypeId(e.getGoogleMapTypeId()):(this.map.mapTypes.set(e.id,e.asGoogleMapType()),this.map.setMapTypeId(e.id))}getMapType(){const e=this.map.getMapTypeId()??google.maps.MapTypeId.ROADMAP,i=this.googleMapTypeId2BIMT.get(e);return i||(this.map.mapTypes.get(e).__google_map_type__??I(`实现${e}的asGoogleMapType()时, 忘了给实例设置__google_map_type__?`))}addOverlayMapType(e){this.map.overlayMapTypes.push(e.asGoogleMapType())}removeOverlayMapType(e){a.MVCArrays.remove(this.map.overlayMapTypes,e.asGoogleMapType())}addLayer(e){e.asGoogleLayer().setMap(this.map)}removeLayer(e){e.asGoogleLayer().setMap(null)}panTo(e){this.map.panTo(e.toGoogle(this.coordType))}panBy(e,i){this.map.panBy(e,i)}fitBounds(e,i){this.map.fitBounds(e.toGoogle(this.coordType),i)}getBounds(){const e=this.map.getBounds();return e?j.fromGoogle(e,this.coordType):j.EMPTY}addElementOverlay(e){e.asGoogle().setMap(this.map)}removeElementOverlay(e){e.asGoogle().setMap(null)}addOverlay(e){e.innerOverlay.setMap(this.map)}removeOverlay(e){e.innerOverlay.setMap(null)}addCustomControl(e){e.inner||(e.inner=e.onCreateElement(),this.map.controls[a.ControlPositionConverter.getGoogle().toValue(e.position)].push(e.inner))}removeCustomControl(e){if(e.inner){const i=this.map.controls[a.ControlPositionConverter.getGoogle().toValue(e.position)];a.MVCArrays.remove(i,e.inner)}}createMarkerClusterer(e){return new Oi(this,e)}createHeatmap(e){return new fi(this,e)}createAutocomplete(e){return new ui(this,e)}createSearchBox(e){return new Pi(this,e)}createPlacesService(e){return new wi(this,e)}createMapUrls(e){return new rt(e)}}const wt=["3.0"],sn={baidu:{version:"3.0",key:"kXOq8Hg9BZbZEWAjXKuzd1oGreynup8h"},google:{version:"quarterly",key:"AIzaSyBcyzMel3dYFNcfcr0LOklbBQNpWycyZXo",language:"en-us",libraries:["places","visualization"]},here:{version:wt[0],key:""}};let Zi;function Kt(){return Zi||I("请先安装: Vue<PartialTgMapConfig>.use(TgMap, {})")}function Wi(r){r!=null&&(Zi=ki(sn,r))}class on extends at{constructor(e,i){var l;super(e);f(this,"map");f(this,"defaultLayers");this.mapOptions=i;const n=Kt().here;wt.includes(n.version)||I(`不支持${n.version}, HereMap当前只支持如下版本: ${wt}`);const s=new H.service.Platform({app_id:n.key.split(",")[0],app_code:n.key.split(",")[1]});this.defaultLayers=s.createDefaultLayers(),this.map=new H.Map(e,this.defaultLayers.normal.map,{zoom:i.zoom,center:(l=i.center)==null?void 0:l.toHere(this.coordType)}),new H.mapevents.Behavior(new H.mapevents.MapEvents(this.map)),H.ui.UI.createDefault(this.map,this.defaultLayers)}get innerMap(){return this.map}get coordType(){return R.wgs84}getCenter(){return w.fromHere(this.map.getCenter(),this.coordType)}setCenter(e){this.map.setCenter(e.toHere(this.coordType))}setGestureHandling(e){throw new Error("Method not implemented.")}fromContainerPointToLatLng(e){throw new Error("Method not implemented.")}fromLatLngToContainerPoint(e){throw new Error("Method not implemented.")}setDefaultCursor(e){throw new Error("Method not implemented.")}setDraggable(e){throw new Error("Method not implemented.")}setDoubleClickZoom(e){throw new Error("Method not implemented.")}setMinZoom(e){throw new Error("Method not implemented.")}setMaxZoom(e){throw new Error("Method not implemented.")}setMapStyle(e){throw new Error("Method not implemented.")}setBuildInMapTypeId(e){throw new Error("Method not implemented.")}setMapType(e){throw new Error("Method not implemented.")}getMapType(){throw new Error("Method not implemented.")}addLayer(e){throw new Error("Method not implemented.")}removeLayer(e){throw new Error("Method not implemented.")}panTo(e){throw new Error("Method not implemented.")}panBy(e,i){throw new Error("Method not implemented.")}fitBounds(e,i){throw new Error("Method not implemented.")}getBounds(){throw new Error("Method not implemented.")}addElementOverlay(e){throw new Error("Method not implemented.")}removeElementOverlay(e){throw new Error("Method not implemented.")}addOverlay(e){throw new Error("Method not implemented.")}removeOverlay(e){throw new Error("Method not implemented.")}createMarker(e){throw new Error("Method not implemented.")}createMarkerClusterer(e){throw new Error("Method not implemented.")}createHeatmap(e){throw new Error("Method not implemented.")}createAutocomplete(e){throw new Error("Method not implemented.")}createSearchBox(e){throw new Error("Method not implemented.")}createPlacesService(e){throw new Error("Method not implemented.")}createMapUrls(e){throw new Error("Method not implemented.")}createInfoWindow(e){throw new Error("Method not implemented.")}createInfoBox(e){throw new Error("Method not implemented.")}createPolyline(e){throw new Error("Method not implemented.")}createPolygon(e){throw new Error("Method not implemented.")}createRectangle(e){throw new Error("Method not implemented.")}createCircle(e){throw new Error("Method not implemented.")}createLabel(e){throw new Error("Method not implemented.")}addCustomControl(e){throw new Error("Method not implemented.")}removeCustomControl(e){throw new Error("Method not implemented.")}createMapTypeControl(e){throw new Error("Method not implemented.")}createZoomControl(e){throw new Error("Method not implemented.")}createStreetViewControl(e){throw new Error("Method not implemented.")}createScaleControl(e){throw new Error("Method not implemented.")}}var Y=(r=>(r.google="google",r.baidu="baidu",r.here="here",r))(Y||{});a.TgMapFactory=void 0,(r=>{function t(e,i,n){const s=a.MapOptions.create(n);switch(e){case"google":return new nn(i,s);case"baidu":return new rn(i,s);case"here":return new on(i,s)}}r.createMap=t})(a.TgMapFactory||(a.TgMapFactory={}));var an={VITE_APP_DEV_KEY_BAIDU:"kXOq8Hg9BZbZEWAjXKuzd1oGreynup8h",VITE_APP_DEV_KEY_GOOGLE:"AIzaSyBcyzMel3dYFNcfcr0LOklbBQNpWycyZXo",VITE_APP_DEV_KEY_HERE:"",BASE_URL:"/",MODE:"production",DEV:!1,PROD:!0,SSR:!1};const ln={};function Hi(r){return a.Objects.putIfAbsent(ln,r,()=>ei(()=>hn({type:r,config:Kt()[r]})))()}function hn({type:r,config:t}){const e=window,i=cn(r);if(a.Objects.get(e,i))return Promise.resolve();switch(r!==Y.here&&!t.key&&I(`请先配置${r}地图的key`),r){case Y.google:return an.VITE_FALSE?(Pr({key:t.key,v:"3.52"}),google.maps.importLibrary("core")):Vi(`https://maps.googleapis.com/maps/api/js?key=${t.key}&language=${t.language}&v=${t.version}&libraries=${t.libraries.join(",")}`);case Y.baidu:return Vi(`https://api.map.baidu.com/api?v=${t.version}&ak=${t.key}`);case Y.here:return Ee(we("core",t.version)).then(()=>Promise.all([Ee(we("service",t.version)),Ee(we("mapevents",t.version)),Ee(we("clustering",t.version)),Ee(we("ui",t.version))])).catch(n=>(a.Objects.del(e,i),Promise.reject(n)));default:Ge(r)}}function we(r,t=wt[0]){return`https://js.api.here.com/v3/${t}/mapsjs-${r}.js`}function cn(r){switch(r){case Y.google:return"google.maps";case Y.baidu:return"BMap";case Y.here:return"H"}}let dn=0;function Vi(r,t="callback"){return new Promise((e,i)=>{const n=`__callback${dn++}`;window[n]=e;const s=document.createElement("script");s.src=`${r}&${t}=${n}`,s.onerror=i,document.body.appendChild(s)})}function Ee(r){return new Promise((t,e)=>{const i=document.createElement("script");i.src=r,i.onload=t,i.onerror=e,document.body.appendChild(i)})}function V(r,t){return{type:String,default:t,validator:e=>Object.values(r).includes(e)}}function ji(r,t){return{type:String,default:t,validator:e=>r.includes(e)}}function N(r){return{type:r,required:!0}}function T(r,t){return{type:r,default:t}}function un(r){const t={};return Object.entries(r).forEach(([e,i])=>{const n=`__${e}`;t[e]={get(){const s=this[n];return s===void 0?i:s},set(s){this[n]=s}}}),t}const Pe={enumerable:!0,configurable:!0,get:le,set:le};function Fi(r){return Object.keys(r).forEach(t=>{const e=r[t];let i=!1;typeof e=="function"?(Pe.get=e,Pe.set=le,i=!0):typeof e=="object"&&typeof e.get=="function"&&(Pe.get=e.get,Pe.set=e.set,i=!0),i&&(r[t]=Object.defineProperty(r,t,Pe))}),r}function pn(r){return Fi(r)}function Le(){return y.createCommentVNode()}function Be(r,t){const e=r.$options[t];if(e)for(const i of e)i.call(r)}function gn(r,t){for(const e of r)if(e.$options.name===t.name)return e}function mn(r,t){if(!r.default)return;const e=r.default();for(const i of e)if((i==null?void 0:i.type).name===t.name)return i}function Ui(r,t){const e={},i={},n={};return Object.keys(r).forEach(s=>{s.startsWith("on")?e[a.Strings.pascal2kebab(s.substring(2))]=r[s]:i[s]=r[s]}),t&&Object.keys(t).forEach(s=>{s.startsWith("on")&&(n[a.Strings.pascal2kebab(s.substring(2))]=t[s])}),{binds:i,listeners:e,listenerProps:n}}function J(r,t){return y.computed(()=>Ui(r,t))}function x(){return Function}const fn=()=>{let r,t;function e(n){console.log(n),r=n&&n.type,t=Date.now()}function i(n){((n&&n.type)!==r||Date.now()-(t??0)>1e3)&&e(n)}return{eventLog:e,eventLogLess:i}},Et="$map",me="onCreate",fe="onDestroy",z=y.defineComponent({inject:[Et],mounted(){Be(this,me)},beforeUnmount(){Be(this,fe)},methods:{recreate(){Be(this,fe),Be(this,me)}},render(){return Le()}}),yn=y.defineComponent({name:"tg-map",provide(){return{[Et]:y.computed(()=>this.map)}},inheritAttrs:!1,props:{type:V(Y,Y.google),center:N(w),centerSyncDelay:T(Number,300),currentCenter:T(w),lastCenter:T(w),zoom:N(Number),infoWindowMode:ji(Di),gestureHandling:V(X),minZoom:T(Number),maxZoom:T(Number),mapStyle:T(Object),mapTypeId:V(Rt),mapType:T(Object),hideLogo:T(Boolean),onLoad:x(),"onUpdate:center":x(),"onUpdate:current-center":x(),"onUpdate:last-center":x(),"onUpdate:map-type":x(),"onUpdate:map-type-id":x(),"onUpdate:zoom":x(),onError:x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),centerSyncTimeoutId:void 0}},data(){return{map:Ne(),isDestroyed:!1}},computed:{propsJson(){return a.Objects.toJsonSafely(this.$props)}},watch:{gestureHandling(r){var t;r&&((t=this.map)==null||t.setGestureHandling(r))},minZoom(r){var t;(t=this.map)==null||t.setMinZoom(r)},maxZoom(r){var t;(t=this.map)==null||t.setMaxZoom(r)},mapStyle(r){var t;(t=this.map)==null||t.setMapStyle(r)},mapTypeId(r){var t;r&&((t=this.map)==null||t.setBuildInMapTypeId(r))},mapType(r){var t;(t=this.map)==null||t.setMapType(r??a.MapType.NORMAL)}},async mounted(){const r=this.type;try{await Hi(r)}catch(n){this.$emit("error",n);return}if(this.isDestroyed){console.warn(`tg-map(type=${r})已销毁, 不需要继续执行`);return}const t=a.TgMapFactory.createMap(r,this.$refs.map,{center:this.center,zoom:this.zoom,infoWindowMode:this.infoWindowMode,gestureHandling:this.gestureHandling,minZoom:this.minZoom,maxZoom:this.maxZoom,mapStyle:this.mapStyle,buildInMapTypeId:this.mapTypeId});if(this.map=y.markRaw(t),this.mapType&&t.setMapType(this.mapType),"ready"in this.attrs.listeners&&console.error("地图载入完成的事件已经从ready改为了load, 请手动修改"),$(this.attrs.listeners,t,["load"]),this.$emit("load",t),y.watch([()=>this.zoom,()=>this.center],([n,s],[l,d])=>{n!==l&&t.setZoom(n),s!==d&&(t.getCenter().equals(s)||t.setCenter(s))}),"update:center"in this.attrs.listenerProps){const n=()=>this.$emit("update:center",t.getCenter());t.addEventListener("center-changed",()=>{this.centerSyncDelay>0?(clearTimeout(this.centerSyncTimeoutId),this.centerSyncTimeoutId=setTimeout(n,this.centerSyncDelay)):n()})}"update:current-center"in this.attrs.listenerProps&&(this.$emit("update:current-center",this.center),t.addEventListener("center-changed",()=>{this.$emit("update:current-center",t.getCenter())})),"update:zoom"in this.attrs.listenerProps&&t.addEventListener("zoom-changed",()=>{this.$emit("update:zoom",t.getZoom())});const e="update:map-type"in this.attrs.listenerProps,i="update:map-type-id"in this.attrs.listenerProps;(e||i)&&t.addEventListener("map-type-changed",()=>{const n=t.getMapType();e&&this.$emit("update:map-type",n),i&&this.$emit("update:map-type-id",n.id)})},unmounted(){this.isDestroyed=!0,this.map&&("update:last-center"in this.attrs.listenerProps&&this.$emit("update:last-center",this.map.getCenter()),"update:center"in this.attrs.listenerProps&&(clearTimeout(this.centerSyncTimeoutId),this.$emit("update:center",this.map.getCenter())))},methods:{}}),Q=(r,t)=>{const e=r.__vccOpts||r;for(const[i,n]of t)e[i]=n;return e};function vn(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",y.mergeProps({class:"tg-map"},r.attrs.binds),[y.createElementVNode("div",{ref:"map",class:y.normalizeClass({"tg-map__map":!0,[`tg-map__map--hide-logo-${r.type}`]:r.hideLogo})},null,2),y.createCommentVNode("",!0),r.map?y.renderSlot(r.$slots,"default",{key:1}):y.createCommentVNode("",!0),y.renderSlot(r.$slots,"overlay")],16)}const ye=Q(yn,[["render",vn]]);function _n(r){if(r==null)return;let t;if(typeof r=="string"){if(t=+r,Number.isNaN(t))return r}else t=r;return`${t}px`}const bn=y.defineComponent({name:"tg-map-widget",props:{left:{type:[Number,String],default:null},top:{type:[Number,String],default:null},right:{type:[Number,String],default:null},bottom:{type:[Number,String],default:null}},computed:{topValue(){return this.top==null&&this.bottom==null?0:this.top}},methods:{dimen:_n}});function Mn(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",{class:y.normalizeClass(r.$options.name),style:y.normalizeStyle({left:r.dimen(r.left),top:r.dimen(r.topValue),right:r.dimen(r.right),bottom:r.dimen(r.bottom)})},[y.renderSlot(r.$slots,"default")],6)}const Yi=Q(bn,[["render",Mn]]),Tn=y.defineComponent({name:"tg-custom-control",mixins:[z],props:{position:V(k,k.RIGHT_BOTTOM)},setup(){return{control:void 0}},watch:{position(){this.recreate()}},onCreate(){St(this.$parent,ye)||console.warn("请将tg-custom-control放到tg-map中");const{$el:r}=this,t=class extends oi{onCreateElement(){return r}};this.control=new t(this.position),this.$map.addCustomControl(this.control)},onDestroy(){this.$map.removeCustomControl(this.control)}});function Cn(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",{class:y.normalizeClass(r.$options.name)},[y.renderSlot(r.$slots,"default")],2)}const qi=Q(Tn,[["render",Cn]]),Ki=y.defineComponent({name:"tg-map-type-control",mixins:[z],props:{position:V(k,k.TOP_LEFT),type:V(Dt),mapTypes:T(Array)},setup(){return{control:void 0}},watch:{position(r){this.control.setPosition(r)},type(){this.recreate()},mapTypes:{handler(){this.recreate()},deep:!0}},onCreate(){this.control=this.$map.createMapTypeControl(this),this.$map.addControl(this.control)},onDestroy(){this.$map.removeControl(this.control)}}),Xi=y.defineComponent({name:"tg-scale-control",mixins:[z],props:{position:V(k,k.BOTTOM_RIGHT)},setup(){return{control:void 0}},watch:{position(r){this.control.setPosition(r)}},onCreate(){this.control=this.$map.createScaleControl(this),this.$map.addControl(this.control)},onDestroy(){this.$map.removeControl(this.control)}});function Ji(){var e;const r=(e=y.getCurrentInstance())==null?void 0:e.type;let t=(r==null?void 0:r.name)??(r==null?void 0:r.__name);if(!t){const i=r==null?void 0:r.__file;i&&(t=Gi.basename(i,".vue"))}return t}function Pt(){const r=y.inject(Et);let t,e;return r==null&&I(`<${Ji()||"unknown"}>必须作为<tg-map>的子代组件`),{mapRef:r,get map(){return r.value??I("map尚未初始化")},[me](i){y.onMounted(i),t&&I(`${me}只能调用一次`),t=i},[fe](i){y.onBeforeUnmount(i),e&&I(`${fe}只能调用一次`),e=i},recreate(){e==null||e(),t==null||t()}}}const Qi=y.defineComponent({name:"tg-street-view-control",props:{position:V(k,k.RIGHT_BOTTOM)},setup(r){let t=void 0;const{map:e,onCreate:i,onDestroy:n}=Pt();return i(()=>{t=e.createStreetViewControl(r),e.addControl(t)}),n(()=>{e.removeControl(t)}),y.watch(()=>r.position,s=>{t.setPosition(s)}),Le}}),er=y.defineComponent({name:"tg-zoom-control",props:{position:V(k,k.RIGHT_BOTTOM)},setup(r){let t=void 0;const{map:e,onCreate:i,onDestroy:n}=Pt();return i(()=>{t=e.createZoomControl(r),e.addControl(t)}),n(()=>{e.removeControl(t)}),y.watch(()=>r.position,s=>{t.setPosition(s)}),Le}}),tr=y.defineComponent({name:"tg-heatmap",props:{maxIntensity:T(Number),gradient:T(Object),opacity:T(Number),radius:T(Number),data:N(Array)},setup(r){const{map:t,onCreate:e,onDestroy:i}=Pt();let n=void 0;return e(()=>{n=t.createHeatmap(r)}),i(()=>{n.remove()}),y.watch(()=>r.data,s=>n.setData(s)),y.watch([()=>r.maxIntensity,()=>r.gradient,()=>r.opacity,()=>r.radius],()=>n.setOptions(r)),Le}}),On=y.defineComponent({name:"tg-marker-clusterer",mixins:[z],props:{gridSize:T(Number),maxZoom:T(Number),minClusterSize:T(Number),averageCenter:T(Boolean),styles:T(Array),stylesIndexCalculator:T(Function),zIndex:T(Number)},setup(){return{clusterer:void 0,markers:[]}},watch:{gridSize(){this.recreate()},maxZoom(){this.recreate()},minClusterSize(){this.recreate()},averageCenter(){this.recreate()},styles:{handler(){this.recreate()},deep:!0},stylesIndexCalculator(){this.recreate()},zIndex(){this.recreate()}},onCreate(){this.clusterer=this.$map.createMarkerClusterer(this)},onDestroy(){this.clusterer.clearMarkers()},methods:{isInitiated(){return this.clusterer!=null},onAddMarker(r){this.markers.push(r),this.isInitiated()&&this.clusterer.addMarker(r)},onRemoveMarker(r){this.isInitiated()&&this.clusterer.removeMarker(r),a.Arrays.remove(this.markers,r)}}});function wn(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",{class:y.normalizeClass(r.$options.name)},[y.renderSlot(r.$slots,"default")],2)}const Xt=Q(On,[["render",wn]]),ir=y.defineComponent({name:"tg-traffic-layer",mixins:[z],setup(){return{layer:void 0}},watch:{},onCreate(){this.layer=new li,this.$map.addLayer(this.layer)},onDestroy(){this.$map.removeLayer(this.layer)}}),rr=y.defineComponent({name:"tg-circle",mixins:[z],inheritAttrs:!1,props:{center:N(w),radius:N(Number),clickable:T(Boolean),editable:T(Boolean),strokeColor:T(String),strokeOpacity:T(Number),strokeWeight:T(Number),visible:T(Boolean),fillColor:T(String),fillOpacity:T(Number),"onUpdate:center":x(),"onUpdate:radius":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),overlay:void 0,emittedRadius:void 0,emittedCenter:void 0}},watch:{center(r){if(this.emittedCenter!=null){const t=this.emittedCenter;if(this.emittedCenter=void 0,t===y.toRaw(r))return}this.overlay.setCenter(r)},radius(r){if(this.emittedRadius!=null){const t=this.emittedRadius;if(this.emittedRadius=void 0,t===r)return}this.overlay.setRadius(r)},clickable(){this.recreate()},editable(r){this.overlay.setEditable(r)},strokeColor(r){this.overlay.setStrokeColor(r)},strokeOpacity(r){this.overlay.setStrokeOpacity(r)},strokeWeight(r){this.overlay.setStrokeWeight(r)},fillColor(r){this.overlay.setFillColor(r)},fillOpacity(r){this.overlay.setFillOpacity(r)},visible(r){this.overlay.setVisible(r)}},onCreate(){this.overlay=this.$map.createCircle(this),this.$map.addOverlay(this.overlay),$(this.attrs.listeners,this.overlay),"update:center"in this.attrs.listenerProps&&this.overlay.addEventListener("center-changed",()=>{this.$emit("update:center",this.emittedCenter=this.overlay.getCenter())}),"update:radius"in this.attrs.listenerProps&&this.overlay.addEventListener("radius-changed",()=>{this.$emit("update:radius",this.emittedRadius=this.overlay.getRadius())})},onDestroy(){this.$map.removeOverlay(this.overlay)}});class En extends Ni{constructor(t,e,i,n){super(t,e),this.content=i,this.position=n}onCreate(){return this.content}onDraw(t){const e=t.fromLatLngToOverlayPoint(this.position);this.content.style.left=e.x+"px",this.content.style.top=e.y+"px"}setPosition(t){this.position=t,this.draw()}}const Pn=y.defineComponent({name:"tg-element-overlay",mixins:[z],props:{mapPane:V(ue,ue.overlayMouseTarget),position:N(w)},setup(){return{overlay:void 0}},watch:{position(r){this.overlay.setPosition(r)},mapPane(){this.recreate()}},methods:{content(){return this.$el}},onCreate(){this.overlay=new En(this.$map,this,this.content(),this.position),this.$map.addElementOverlay(this.overlay)},onDestroy(){this.$map.removeElementOverlay(this.overlay)}});function Ln(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",y.mergeProps({class:r.$options.name},r.$attrs),[y.renderSlot(r.$slots,"default")],16)}const nr=Q(Pn,[["render",Ln]]),Bn=y.defineComponent({name:"tg-marker",mixins:[z],inheritAttrs:!1,props:{position:N(w),title:T(String),icon:T(Object),clickable:T(Boolean),draggable:T(Boolean),crossOnDrag:T(Boolean),cursor:T(String),zIndex:T(Number),visible:T(Boolean),normalizePositionForBaidu:T(Boolean),autoAddToClusterer:T(Boolean,!0),"onUpdate:position":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),marker:void 0,label:Ne(),info:Ne(),emittedPosition:void 0,autoAddToClustererWhenCreate:r.autoAddToClusterer}},watch:{position(r){if(this.emittedPosition!=null){const t=this.emittedPosition;if(this.emittedPosition=void 0,t===y.toRaw(r))return}this.marker.setPosition(r)},title(r){this.marker.setTitle(r)},icon(r){r?this.marker.setIcon(r):this.recreate()},clickable(r){this.marker instanceof ge?this.recreate():this.marker.setClickable(r)},draggable(r){this.marker.setDraggable(r)},crossOnDrag(){this.recreate()},cursor(){this.recreate()},zIndex(r){this.marker instanceof ge?this.recreate():this.marker.setZIndex(r)},visible(r){this.marker.setVisible(r)},normalizePositionForBaidu(){this.recreate()},autoAddToClusterer(){this.recreate()}},onCreate(){this.marker=this.$map.createMarker(this),this.label&&this.marker.setLabel(this.label.overlay),this.$clusterer()&&this.autoAddToClusterer?this.$clusterer().onAddMarker(this.marker):this.$map.addOverlay(this.marker),this.autoAddToClustererWhenCreate=this.autoAddToClusterer,this.info&&this.info.show&&this.info.overlay.open(this.marker),$(this.attrs.listeners,this.marker),"update:position"in this.attrs.listenerProps&&this.marker.addEventListener("dragend",r=>{this.$emit("update:position",this.emittedPosition=r.position)})},onDestroy(){this.$clusterer()&&this.autoAddToClustererWhenCreate?this.$clusterer().onRemoveMarker(this.marker):this.$map.removeOverlay(this.marker)},methods:{$clusterer(){return St(this.$parent,Xt)},onAddLabel(r){this.label=r,this.marker&&this.marker.setLabel(r.overlay)},onRemoveLabel(r){this.marker.setLabel(void 0),this.label=void 0},onAddInfo(r){this.info=r,this.marker&&r.show&&r.overlay.open(this.marker)},onRemoveInfo(r){r.overlay.close(),this.info=void 0},onInfoShowChanged(r,t){t?r.overlay.open(this.marker):r.overlay.close()}}});function In(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",y.mergeProps({class:r.$options.name},r.attrs.binds),[y.renderSlot(r.$slots,"default")],16)}const Ie=Q(Bn,[["render",In]]),Sn=y.defineComponent({name:"tg-info-box",mixins:[z],inheritAttrs:!1,props:{show:N(Boolean),position:T(w),offset:T(Object),maxWidth:T(Number),borderClass:T(String),zIndex:T(Number),"onUpdate:show":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),overlay:void 0}},watch:{show(r){this.$marker()?this.$marker().onInfoShowChanged(this,r):r?this.overlay.open():this.overlay.close()},position(r){this.overlay.setPosition(r)},offset(){this.recreate()},maxWidth(r){this.overlay.setMaxWidth(r)},borderClass(){this.recreate()},zIndex(r){this.overlay.setZIndex(r)}},onCreate(){this.overlay=this.$map.createInfoBox(this.getOptions()),this.$marker()?this.$marker().onAddInfo(this):this.show&&this.overlay.open(),"update:show"in this.attrs.listenerProps&&this.overlay.addEventListener("closeclick",()=>{this.$emit("update:show",!1)}),$(this.attrs.listeners,this.overlay)},onDestroy(){this.$marker()?this.$marker().onRemoveInfo(this):this.overlay.close()},methods:{getOptions(){return{content:this.content(),position:this.position,offset:this.offset,zIndex:this.zIndex,maxWidth:this.maxWidth,borderClass:this.borderClass}},content(){return this.$el},$marker(){return We(Ie,this.$parent,ye)},open(r){this.overlay.open(r)},close(){this.overlay.close()}}});function kn(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",y.mergeProps({class:r.$options.name},r.attrs.binds),[y.renderSlot(r.$slots,"default")],16)}const sr=Q(Sn,[["render",kn]]),xn=y.defineComponent({name:"tg-info-window",mixins:[z],inheritAttrs:!1,props:{show:N(Boolean),position:T(w),maxWidth:T(Number),offset:T(Object),disableAutoPan:T(Boolean),"onUpdate:show":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),overlay:void 0}},watch:{show(r){this.$marker()?this.$marker().onInfoShowChanged(this,r):r?this.overlay.open():this.overlay.close()},position(r){this.overlay.setPosition(r)},maxWidth(){this.recreate()},offset(){this.recreate()},disableAutoPan(){this.recreate()}},methods:{content(){return this.$el},$marker(){return We(Ie,this.$parent,ye)},getOptions(){return{content:this.content(),position:this.position,maxWidth:this.maxWidth,offset:this.offset,disableAutoPan:this.disableAutoPan}}},onCreate(){this.overlay=this.$map.createInfoWindow(this.getOptions()),this.$marker()?this.$marker().onAddInfo(this):this.show&&this.overlay.open(),this.overlay.addEventListener("open",()=>{this.$emit("update:show",!0)}),this.overlay.addEventListener("close",()=>{this.$emit("update:show",!1)}),$(this.attrs.listeners,this.overlay)},onDestroy(){this.$marker()?this.$marker().onRemoveInfo(this):this.overlay.close()}});function An(r,t,e,i,n,s){return y.withDirectives((y.openBlock(),y.createElementBlock("div",y.mergeProps({class:r.$options.name},r.attrs.binds),[y.renderSlot(r.$slots,"default")],16)),[[y.vShow,r.show]])}const or=Q(xn,[["render",An]]),Rn=y.defineComponent({name:"tg-label",mixins:[z],inheritAttrs:!1,props:{position:T(w),offset:T(Object),zIndex:T(Number),mapPane:V(ue)},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t),overlay:void 0}},watch:{position(r){this.overlay.setPosition(r)},offset(r){this.overlay.setOffset(r)},zIndex(r){this.overlay.setZIndex(r)},visible(r){this.overlay.setVisible(r)},mapPane(){this.recreate()}},methods:{content(){return this.$el},marker(){var r;return(r=this.$marker())==null?void 0:r.marker},$marker(){return We(Ie,this.$parent,ye)},getOptions(){return{content:this.content(),position:this.position,offset:this.offset,zIndex:this.zIndex,mapPane:this.mapPane}}},onCreate(){this.overlay=this.$map.createLabel(this.getOptions()),this.$marker()?this.$marker().onAddLabel(this):this.$map.addOverlay(this.overlay),$(this.attrs.listeners,this.overlay)},onDestroy(){this.$marker()?this.$marker().onRemoveLabel(this):this.$map.removeOverlay(this.overlay)}});function Dn(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",y.mergeProps({class:r.$options.name},r.attrs.binds),[y.renderSlot(r.$slots,"default")],16)}const ar=Q(Rn,[["render",Dn]]),lr=y.defineComponent({name:"tg-polygon",mixins:[z],inheritAttrs:!1,props:{paths:N(Array),clickable:T(Boolean),editable:T(Boolean),strokeColor:T(String),strokeOpacity:T(Number),strokeWeight:T(Number),visible:T(Boolean),fillColor:T(String),fillOpacity:T(Number),"onUpdate:paths":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),overlay:void 0,emittedPaths:void 0}},watch:{paths:{handler(r){if(this.emittedPaths!=null){const t=this.emittedPaths;if(this.emittedPaths=void 0,t.length===r.length&&t.every((e,i)=>e===y.toRaw(r[i])))return}this.overlay.setPaths(r)},deep:!0},clickable(){this.recreate()},editable(r){this.overlay.setEditable(r)},strokeColor(r){this.overlay.setStrokeColor(r)},strokeOpacity(r){this.overlay.setStrokeOpacity(r)},strokeWeight(r){this.overlay.setStrokeWeight(r)},fillColor(r){this.overlay.setFillColor(r)},fillOpacity(r){this.overlay.setFillOpacity(r)},visible(r){this.overlay.setVisible(r)}},onCreate(){this.overlay=this.$map.createPolygon(this),this.$map.addOverlay(this.overlay),$(this.attrs.listeners,this.overlay),"update:paths"in this.attrs.listenerProps&&this.overlay.addEventListener("paths-edited",()=>{this.$emit("update:paths",this.emittedPaths=this.overlay.getPaths())})},onDestroy(){this.$map.removeOverlay(this.overlay)}}),hr=y.defineComponent({name:"tg-polyline",mixins:[z],inheritAttrs:!1,props:{path:N(Array),icons:T(Array),clickable:T(Boolean),editable:T(Boolean),strokeColor:T(String),strokeOpacity:T(Number),strokeWeight:T(Number),visible:T(Boolean),"onUpdate:path":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),overlay:void 0,emittedPath:void 0}},watch:{path:{handler(r){if(this.emittedPath!=null){const t=this.emittedPath;if(this.emittedPath=void 0,t===y.toRaw(r))return}this.overlay.setPath(r)},deep:!0},icons:{handler(){this.recreate()},deep:!0},clickable(){this.recreate()},editable(r){this.overlay.setEditable(r)},strokeColor(r){this.overlay.setStrokeColor(r)},strokeOpacity(r){this.overlay.setStrokeOpacity(r)},strokeWeight(r){this.overlay.setStrokeWeight(r)},visible(r){this.overlay.setVisible(r)}},onCreate(){this.overlay=this.$map.createPolyline(this),this.$map.addOverlay(this.overlay),$(this.attrs.listeners,this.overlay),"update:path"in this.attrs.listenerProps&&this.overlay.addEventListener("path-edited",()=>{this.$emit("update:path",this.emittedPath=this.overlay.getPath())})},onDestroy(){this.overlay.remove()}}),cr=y.defineComponent({name:"tg-rectangle",mixins:[z],inheritAttrs:!1,props:{bounds:N(Object),clickable:T(Boolean),editable:T(Boolean),strokeColor:T(String),strokeOpacity:T(Number),strokeWeight:T(Number),visible:T(Boolean),fillColor:T(String),fillOpacity:T(Number),"onUpdate:bounds":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),overlay:void 0,emittedBounds:void 0}},watch:{bounds(r){if(this.emittedBounds!=null){const t=this.emittedBounds;if(this.emittedBounds=void 0,t.equals(r))return}this.overlay.setBounds(r)},clickable(){this.recreate()},editable(r){this.overlay.setEditable(r)},strokeColor(r){this.overlay.setStrokeColor(r)},strokeOpacity(r){this.overlay.setStrokeOpacity(r)},strokeWeight(r){this.overlay.setStrokeWeight(r)},fillColor(r){this.overlay.setFillColor(r)},fillOpacity(r){this.overlay.setFillOpacity(r)},visible(r){this.overlay.setVisible(r)}},onCreate(){this.overlay=this.$map.createRectangle(this),this.$map.addOverlay(this.overlay),$(this.attrs.listeners,this.overlay),"update:bounds"in this.attrs.listenerProps&&this.overlay.addEventListener("bounds-changed",()=>{this.$emit("update:bounds",this.emittedBounds=this.overlay.getBounds())})},onDestroy(){this.$map.removeOverlay(this.overlay)}}),$n=["beforeUpdate","updated"],zn={install(r,t={}){if(t.enable!==!1){const e=y.defineComponent({beforeCreate(){const i=Ji()??"",s=(t.nameRegex||/^[A-Z]/).test(i)?l=>{t.hookNames?t.hookNames.includes(l)&&console.debug("[lifecycle]",i,l):$n.includes(l)||console.debug("[lifecycle]",i,l)}:le;s("beforeCreate"),this.__life_impl=s},created(){this.__life("created")},beforeMount(){this.__life("beforeMount")},mounted(){this.__life("mounted")},beforeUpdate(){this.__life("beforeUpdate")},updated(){this.__life("updated")},beforeUnmount(){this.__life("beforeUnmount")},unmounted(){this.__life("unmounted")},methods:{__life(i){this.__life_impl(i)}},onCreate(){this.__life("onCreate")},onDestroy(){this.__life("onDestroy")}});r.mixin(e)}}},Gn=6378137;function Se(r){return r*Math.PI/180}function dr(r){return r*180/Math.PI}function Nn(r,t){if(r.lat===t.lat&&r.lng===t.lng)return 0;const e=Se((r.lat+t.lat)/2),i=Se((r.lat-t.lat)/2),n=Se((r.lng-t.lng)/2);let s=Math.sin(i),l=Math.sin(n),d=Math.sin(e);const o=Gn,c=1/298.257;s=s*s,l=l*l,d=d*d;const u=s*(1-l)+(1-d)*l,g=(1-s)*(1-l)+d*l,m=Math.atan(Math.sqrt(u/g)),v=Math.sqrt(u*g)/m,C=2*m*o,M=(3*v-1)/2/g,O=(3*v+1)/2/u;return C*(1+c*(M*d*(1-s)-O*(1-d)*s))}function ur(r,t,e){const n=63567523142e-4,s=1/298.257223563,l=Se(t),d=Math.sin(l),o=Math.cos(l),c=(1-s)*Math.tan(Se(r.lat)),u=1/Math.sqrt(1+c*c),g=c*u,m=Math.atan2(c,o),v=u*d,C=1-v*v,M=C*(6378137*6378137-n*n)/(n*n),O=1+M/16384*(4096+M*(-768+M*(320-175*M))),h=M/1024*(256+M*(-128+M*(74-47*M)));let p=0,_=0,b=0,E=e/(n*O),P=2*Math.PI;for(;Math.abs(E-P)>1e-12;){p=Math.cos(2*m+E),_=Math.sin(E),b=Math.cos(E);const q=h*_*(p+h/4*(b*(-1+2*p*p)-h/6*p*(-3+4*_*_)*(-3+4*p*p)));P=E,E=e/(n*O)+q}const B=g*_-u*b*o,D=Math.atan2(g*b+u*_*o,(1-s)*Math.sqrt(v*v+B*B)),Z=Math.atan2(_*d,u*b-g*_*o),S=s/16*C*(4+s*(4-3*C)),ee=Z-(1-S)*s*v*(E+S*_*(p+S*b*(-1+2*p*p)));return{lng:r.lng+dr(ee),lat:dr(D)}}const Zn={getDistance:Nn,getDestination:ur};var Wn={VITE_APP_DEV_KEY_BAIDU:"kXOq8Hg9BZbZEWAjXKuzd1oGreynup8h",VITE_APP_DEV_KEY_GOOGLE:"AIzaSyBcyzMel3dYFNcfcr0LOklbBQNpWycyZXo",VITE_APP_DEV_KEY_HERE:"",BASE_URL:"/",MODE:"production",DEV:!1,PROD:!0,SSR:!1};const Hn={install(r,t){if(Wi(t),Wn.VITE_FALSE){const i=Object.assign({"./TgMap.vue":ye,"./TgMapWidget.vue":Yi,"./controls/TgCustomControl.vue":qi,"./controls/TgMapTypeControl.vue":Ki,"./controls/TgScaleControl.vue":Xi,"./controls/TgStreetViewControl.vue":Qi,"./controls/TgZoomControl.vue":er,"./extra/TgHeatmap.vue":tr,"./extra/TgMarkerClusterer.vue":Xt,"./layers/TgTrafficLayer.vue":ir,"./overlays/TgCircle.vue":rr,"./overlays/TgElementOverlay.vue":nr,"./overlays/TgInfoBox.vue":sr,"./overlays/TgInfoWindow.vue":or,"./overlays/TgLabel.vue":ar,"./overlays/TgMarker.vue":Ie,"./overlays/TgPolygon.vue":lr,"./overlays/TgPolyline.vue":hr,"./overlays/TgRectangle.vue":cr});Object.keys(i).forEach(n=>{const s=i[n];r.component(s.name??I(`Tg开头的组件必须设置name: ${n}`),s)})}const e=r.config.optionMergeStrategies;e[me]=e[fe]=(i,n)=>i?[...new Set([].concat(i,n))]:Array.isArray(n)?n:[n]}};a.AbstractControl=je,a.AbstractMap=at,a.Autocomplete=$t,a.BaiduAutocomplete=pi,a.BaiduCircle=ct,a.BaiduControl=Fe,a.BaiduHeatmap=yi,a.BaiduInfoBoxOverlay=mt,a.BaiduInfoWindow=pt,a.BaiduMapTypeControl=Ue,a.BaiduMapUrls=nt,a.BaiduMarker=ge,a.BaiduMarkerClusterer=Ci,a.BaiduOverlay=Ce,a.BaiduPlacesService=Ei,a.BaiduPolyShape=vt,a.BaiduPolygon=Mt,a.BaiduPolyline=_t,a.BaiduRectangle=Ct,a.BaiduScaleControl=qe,a.BaiduSearchBox=Li,a.BaiduStreetViewControl=Xe,a.BaiduZoomControl=Qe,a.BuildInMapType=W,a.BuildInMapTypeId=Rt,a.CachedValue=ce,a.ControlPosition=k,a.CoordType=R,a.CustomControl=oi,a.ElementOverlay=Ni,a.EmptyControl=ai,a.FastFindValues=si,a.GestureHandlingOptions=X,a.GoogleAutocomplete=ui,a.GoogleCircle=dt,a.GoogleControl=be,a.GoogleHeatmap=fi,a.GoogleInfoBoxOverlay=ft,a.GoogleInfoWindow=gt,a.GoogleMapTypeControl=Ye,a.GoogleMapUrls=rt,a.GoogleMarker=yt,a.GoogleMarkerClusterer=Oi,a.GoogleOverlay=lt,a.GooglePlacesService=wi,a.GooglePolygon=Tt,a.GooglePolyline=bt,a.GoogleRectangle=Ot,a.GoogleScaleControl=Ke,a.GoogleSearchBox=Pi,a.GoogleStreetViewControl=Je,a.GoogleZoomControl=et,a.Heatmap=zt,a.ImageMapType=Er,a.InfoWindow=ut,a.InfoWindowModeValues=Di,a.KeyValue=At,a.LatLng=w,a.LatLngBounds=j,a.LifecycleLogPlugin=zn,a.MIXIN_HOOK_CREATE=me,a.MIXIN_HOOK_DESTROY=fe,a.MIXIN_MAP_NAME=Et,a.MapMixin=z,a.MapPane=ue,a.MapTypeControlType=Dt,a.MapUrls=Gt,a.MapZoom=Bi,a.MarkerClusterer=Wt,a.Overlay=jt,a.PlacesService=Ht,a.SearchBox=Vt,a.SphericalUtils=Zn,a.SymbolPath=tn,a.TgCircle=rr,a.TgCustomControl=qi,a.TgElementOverlay=nr,a.TgHeatmap=tr,a.TgInfoBox=sr,a.TgInfoWindow=or,a.TgLabel=ar,a.TgMap=ye,a.TgMapType=Y,a.TgMapTypeControl=Ki,a.TgMapWidget=Yi,a.TgMarker=Ie,a.TgMarkerClusterer=Xt,a.TgPolygon=lr,a.TgPolyline=hr,a.TgRectangle=cr,a.TgScaleControl=Xi,a.TgStreetViewControl=Qi,a.TgTrafficLayer=ir,a.TgZoomControl=er,a.TrafficLayer=li,a.UnionIcon=Oe,a.assert=ne,a.assertNever=Ge,a.callHook=Be,a.computedSaveOnThis=un,a.createAsyncSingleton=ei,a.createEmptyVNode=Le,a.createPropertyObject=Fi,a.createPropertyObjectTyped=pn,a.debug=Tr,a.default=Hn,a.eventProp=x,a.extractVNodeFromSlotsByComponent=mn,a.findAncestorComponentByType=We,a.findByComponentType=gn,a.getDestination=ur,a.getTgMapConfig=Kt,a.isComponentByType=Ze,a.isDef=Cr,a.isEntryValueDef=Qt,a.isInstanceOf=vr,a.lateinit=yr,a.loadCachedMap=Hi,a.noop=le,a.optionalProp=T,a.path=Gi,a.requiredProp=N,a.safeAs=_r,a.safeAsComponent=St,a.setTgMapConfig=Wi,a.splitAttrs=Ui,a.stringEnumProp=V,a.stringUnionPropFromValues=ji,a.throwError=I,a.throwUnsupported=He,a.todo=Mr,a.typed=Ne,a.unwrapStringEnumValue=br,a.useEventLogMethods=fn,a.useSplittedAttrs=J,a.useTgMapInner=Pt,Object.defineProperties(a,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
17
|
+
`))}},1)}const n=this.innerOverlay.getOffset();let s=n.width,l=n.height;this.iconAnchor&&(s-=this.iconAnchor.width,l-=this.iconAnchor.height),i&&(s+=i.width,l+=i.height),this.innerOverlay.setOffset(new BMap.Size(s,l)),this.icon=e,this.iconAnchor=i}}class qt extends lt{static create(t){var n;const e=this.coordType,i=Qr(pe.toElement(t.content),(n=t.position)==null?void 0:n.toGoogle(e),t.offset,t.mapPane,t.zIndex);return new qt(i,e,this)}setZIndex(t){this.innerOverlay.setZIndex(t)}setContent(t){this.innerOverlay.setElement(pe.toElement(t))}getPosition(){const t=this.innerOverlay.getPosition();return t?w.fromGoogle(t,this.coordType):w.ZERO}setPosition(t){this.coordType=this.map.coordType,this.innerOverlay.setPosition(t.toGoogle(this.coordType))}getOffset(){return this.innerOverlay.getOffset()??a.Point.ZERO}setOffset(t){this.innerOverlay.setOffset(t)}}const Oe={toGoogle:r=>"url"in r?a.Icon.toGoogle(r):a.SymbolIcon.toGoogle(r),toBaidu:r=>"url"in r?a.Icon.toBaidu(r):a.SymbolIcon.toBaidu(r)};a.Icon=void 0,(r=>{function t(i){return{url:i.url,size:new google.maps.Size(i.size.width,i.size.height),origin:i.origin&&new google.maps.Point(i.origin.x,i.origin.y),scaledSize:i.scaledSize&&new google.maps.Size(i.scaledSize.width,i.scaledSize.height),anchor:i.anchor&&new google.maps.Point(i.anchor.x,i.anchor.y)}}r.toGoogle=t;function e(i){return new BMap.Icon(i.url,new BMap.Size(i.size.width,i.size.height),{imageOffset:i.origin&&new BMap.Size(-i.origin.x,-i.origin.y),imageSize:i.scaledSize&&new BMap.Size(i.scaledSize.width,i.scaledSize.height),anchor:i.anchor?new BMap.Size(i.anchor.x,i.anchor.y):new BMap.Size(i.size.width/2,i.size.height)})}r.toBaidu=e})(a.Icon||(a.Icon={})),a.SymbolIcon=void 0,(r=>{function t(i){return{path:typeof i.path=="string"?i.path:i.path.google(),anchor:i.anchor&&new google.maps.Point(i.anchor.x,i.anchor.y),fillColor:i.fillColor,fillOpacity:i.fillOpacity,scale:i.scale,rotation:i.rotation,strokeColor:i.strokeColor,strokeOpacity:i.strokeOpacity,strokeWeight:i.strokeWeight}}r.toGoogle=t;function e(i){const n=new BMap.Symbol(typeof i.path=="string"?i.path:i.path.baidu(),{anchor:i.anchor&&new BMap.Size(i.anchor.x,i.anchor.y),fillColor:i.fillColor,fillOpacity:i.fillOpacity,scale:i.scale,rotation:i.rotation,strokeColor:i.strokeColor,strokeOpacity:i.strokeOpacity,strokeWeight:i.strokeWeight});return n.__icon__=i,n}r.toBaidu=e})(a.SymbolIcon||(a.SymbolIcon={}));const tn={CIRCLE:{baidu:()=>BMap_Symbol_SHAPE_CIRCLE,google:()=>google.maps.SymbolPath.CIRCLE},BACKWARD_CLOSED_ARROW:{baidu:()=>BMap_Symbol_SHAPE_BACKWARD_CLOSED_ARROW,google:()=>google.maps.SymbolPath.BACKWARD_CLOSED_ARROW},BACKWARD_OPEN_ARROW:{baidu:()=>BMap_Symbol_SHAPE_BACKWARD_OPEN_ARROW,google:()=>google.maps.SymbolPath.BACKWARD_OPEN_ARROW},FORWARD_CLOSED_ARROW:{baidu:()=>BMap_Symbol_SHAPE_FORWARD_CLOSED_ARROW,google:()=>google.maps.SymbolPath.FORWARD_CLOSED_ARROW},FORWARD_OPEN_ARROW:{baidu:()=>BMap_Symbol_SHAPE_FORWARD_OPEN_ARROW,google:()=>google.maps.SymbolPath.FORWARD_OPEN_ARROW}};a.IconSequence=void 0,(r=>{function t(i){return{icon:a.SymbolIcon.toGoogle(i.icon),offset:i.offset,repeat:i.repeat,fixedRotation:i.fixedRotation}}r.toGoogle=t;function e(i){return new BMap.IconSequence(a.SymbolIcon.toBaidu(i.icon),i.offset,i.repeat??"",i.fixedRotation)}r.toBaidu=e})(a.IconSequence||(a.IconSequence={}));class ge extends Ce{constructor(t,e,i,n){super(t,e,i),this.state=n}static create(t){const e=this.coordType,i=t.icon,n={title:t.title,icon:i&&Oe.toBaidu(i),enableClicking:t.clickable,enableDragging:t.draggable,raiseOnDrag:t.crossOnDrag===void 0?!0:t.crossOnDrag,draggingCursor:t.cursor},s=new BMap.Marker(t.position.toBaidu(e,t.normalizePositionForBaidu),n);s.__create_by_tg__=!0,t.zIndex!==void 0&&s.setZIndex(t.zIndex);const l=t.clickable===void 0?!0:t.clickable,d=!!t.draggable;return new ge(s,e,this,{clickable:l,draggable:d,zIndex:t.zIndex,normalize:t.normalizePositionForBaidu}).visibleOptionInternal(t.visible)}getPosition(){return w.fromBaidu(this.innerOverlay.getPosition(),this.coordType)}setPosition(t){var e;this.coordType=this.map.coordType,this.innerOverlay.setPosition(t.toBaidu(this.coordType,this.state.normalize)),(e=this.innerOverlay.__info_box__)==null||e.onMarkerPositionChanged()}setTitle(t){this.innerOverlay.setTitle(t)}getTitle(){return this.innerOverlay.getTitle()}setIcon(t){const e=Oe.toBaidu(t);this.innerOverlay.setIcon(e);const i=this.getLabel();i&&i.attachIcon(e)}getIcon(){return this.innerOverlay.getIcon()}setClickable(t){this.state.clickable=t}isClickable(){return this.state.clickable}setDraggable(t){this.state.draggable=t,t?this.innerOverlay.enableDragging():this.innerOverlay.disableDragging()}isDraggable(){return this.state.draggable}setZIndex(t){this.state.zIndex=t,this.innerOverlay.setZIndex(t||0)}getZIndex(){return this.state.zIndex}setLabel(t){const e=this.getLabel();e&&e.attachIcon(void 0),t&&t.attachIcon(this.innerOverlay.getIcon()),this.innerOverlay.setLabel(t==null?void 0:t.innerOverlay)}getLabel(){var t;return(t=this.innerOverlay.getLabel())==null?void 0:t.__label__}}class yt extends lt{constructor(){super(...arguments);f(this,"label");f(this,"labelPositionListener");f(this,"labelVisibleListener");f(this,"labelMapChangedListener")}static create(e){const i=this.coordType,n=e.icon,s={position:e.position.toGoogle(i),title:e.title,zIndex:e.zIndex,visible:e.visible,icon:n&&Oe.toGoogle(n),clickable:e.clickable,draggable:e.draggable,crossOnDrag:e.crossOnDrag,cursor:e.cursor,anchorPoint:new google.maps.Point(0,0)};return new yt(new google.maps.Marker(s),i,this)}getPosition(){return w.fromGoogle(this.innerOverlay.getPosition(),this.coordType)}setPosition(e){this.coordType=this.map.coordType,this.innerOverlay.setPosition(e.toGoogle(this.coordType))}setTitle(e){this.innerOverlay.setTitle(e)}getTitle(){return this.innerOverlay.getTitle()||""}setIcon(e){this.innerOverlay.setIcon(Oe.toGoogle(e))}getIcon(){return this.innerOverlay.getIcon()}setClickable(e){this.innerOverlay.setClickable(e)}isClickable(){return this.innerOverlay.getClickable()}setDraggable(e){this.innerOverlay.setDraggable(e)}isDraggable(){return!!this.innerOverlay.getDraggable()}setZIndex(e){this.innerOverlay.setZIndex(e===void 0?null:e)}getZIndex(){const e=this.innerOverlay.getZIndex();return e===null?void 0:e}setLabel(e){if(this.label&&this.map.removeOverlay(this.label),this.labelPositionListener&&this.labelPositionListener.remove(),this.labelVisibleListener&&this.labelVisibleListener.remove(),this.labelMapChangedListener&&this.labelMapChangedListener.remove(),e){const i=()=>{e.innerOverlay.setPosition(this.innerOverlay.getPosition())},n=()=>{e.innerOverlay.setVisible(this.innerOverlay.getVisible())},s=()=>{this.innerOverlay.getMap()?this.map.addOverlay(e):this.map.removeOverlay(e)};s(),i(),n(),this.label=e,this.labelMapChangedListener=this.innerOverlay.addListener("map_changed",s),this.labelPositionListener=this.innerOverlay.addListener("position_changed",i),this.labelVisibleListener=this.innerOverlay.addListener("visible_changed",n)}else this.label=void 0,this.labelPositionListener=void 0,this.labelVisibleListener=void 0,this.labelMapChangedListener=void 0}}class vt extends U{constructor(){super(...arguments);f(this,"eventHubDelegate");f(this,"prevPath");f(this,"isDoingSetPath",!1);f(this,"onLineUpdate",()=>{var i;const e=this.innerOverlay.getPath();e!==this.prevPath&&(this.isDoingSetPath||(i=this.eventHubDelegate)==null||i.notify({type:this.pathEditedEventType,target:this,originalEvent:{prevPath:this.prevPath,path:e}}),this.prevPath=e)})}setPathInternal(e){this.isDoingSetPath=!0,this.innerOverlay.setPath(e),this.isDoingSetPath=!1}createDelegate(){return this.eventHubDelegate=new Ve(super.createDelegate(),{types:[this.pathEditedEventType],onListen:()=>{this.prevPath=this.innerOverlay.getPath(),this.innerOverlay.addEventListener("lineupdate",this.onLineUpdate)},onCancel:()=>{this.innerOverlay.removeEventListener("lineupdate",this.onLineUpdate),this.prevPath=void 0}})}}class _t extends vt{constructor(){super(...arguments);f(this,"pathEditedEventType","path-edited")}static create(e){var s,l;const i=this.coordType,n=new BMap.Polyline(e.path.map(d=>d.toBaidu(i)),{enableClicking:e.clickable,enableEditing:e.editable,strokeColor:e.strokeColor,strokeOpacity:e.strokeOpacity!=null?e.strokeOpacity+U.OPACITY_DELTA:void 0,strokeWeight:e.strokeWeight,icons:(s=e.icons)==null?void 0:s.map(a.IconSequence.toBaidu)});return new _t(n,i,this,{editable:!!e.editable,symbolIcons:(l=e.icons)==null?void 0:l.map(d=>d.icon)}).visibleOptionInternal(e.visible)}getPath(){return this.innerOverlay.getPath().map(e=>w.fromBaidu(e,this.coordType))}setPath(e){this.coordType=this.map.coordType,this.setPathInternal(e.map(i=>i.toBaidu(this.coordType)))}remove(){var e;super.remove(),(e=this.state.symbolIcons)!=null&&e.length&&this.map.innerMap.getOverlays().filter(n=>{var o;if(!(n instanceof BMap.Marker))return!1;const s=n;if(s.__create_by_tg__)return!1;const l=s.getIcon();if(!(l instanceof BMap.Symbol))return!1;const d=l;return d.__icon__?(o=this.state.symbolIcons)==null?void 0:o.includes(d.__icon__):!1}).forEach(n=>this.map.innerMap.removeOverlay(n))}}class bt extends ht{constructor(){super(...arguments);f(this,"pathChangedListeners");f(this,"eventHubDelegate")}static create(e){var s;const i=this.coordType,n=new google.maps.Polyline({path:e.path.map(l=>l.toGoogle(i)),clickable:e.clickable,editable:e.editable,strokeColor:e.strokeColor,strokeOpacity:e.strokeOpacity,strokeWeight:e.strokeWeight,visible:e.visible,icons:(s=e.icons)==null?void 0:s.map(a.IconSequence.toGoogle)});return new bt(n,i,this)}setupPathChangedListeners(){const e=()=>{var n;return(n=this.eventHubDelegate)==null?void 0:n.notify({type:"path-edited",target:this})},i=this.innerOverlay.getPath();this.pathChangedListeners=a.MVCArrays.listenChanged(i,e)}clearPathChangedListeners(){var e;(e=this.pathChangedListeners)==null||e.forEach(i=>i.remove()),this.pathChangedListeners=void 0}createDelegate(){return this.eventHubDelegate=new Ve(super.createDelegate(),{types:["path-edited"],onListen:()=>this.setupPathChangedListeners(),onCancel:()=>this.clearPathChangedListeners()})}getPath(){const e=[];return this.innerOverlay.getPath().forEach(i=>{e.push(w.fromGoogle(i,this.coordType))}),e}setPath(e){var i;this.coordType=this.map.coordType,this.innerOverlay.setPath(e.map(n=>n.toGoogle(this.coordType))),(i=this.eventHubDelegate)!=null&&i.hasListener("path-edited")&&this.setupPathChangedListeners()}}class Mt extends vt{constructor(){super(...arguments);f(this,"pathEditedEventType","paths-edited")}static create(e){const i=this.coordType;e.paths.length>1&&console.warn("baidu不支持多path, 只会显示paths[0]");const n=e.paths[0]||[],s=new BMap.Polygon(n.map(l=>l.toBaidu(i)),{enableClicking:e.clickable,enableEditing:e.editable,strokeColor:e.strokeColor,strokeOpacity:e.strokeOpacity!=null?e.strokeOpacity+U.OPACITY_DELTA:void 0,strokeWeight:e.strokeWeight,fillColor:e.fillColor,fillOpacity:e.fillOpacity!=null?e.fillOpacity+U.OPACITY_DELTA:void 0});return new Mt(s,i,this,{editable:!!e.editable}).visibleOptionInternal(e.visible)}getPaths(){return[this.innerOverlay.getPath().map(e=>w.fromBaidu(e,this.coordType))]}setPaths(e){e.length>1&&console.warn("baidu不支持多path, 只会显示paths[0]"),this.coordType=this.map.coordType,this.setPathInternal((e[0]||[]).map(i=>i.toBaidu(this.coordType)))}}class Tt extends ht{constructor(){super(...arguments);f(this,"pathChangedListeners");f(this,"eventHubDelegate")}static create(e){const i=this.coordType,n=new google.maps.Polygon({paths:e.paths.map(s=>s.map(l=>l.toGoogle(i))),clickable:e.clickable,editable:e.editable,strokeColor:e.strokeColor,strokeOpacity:e.strokeOpacity,strokeWeight:e.strokeWeight,fillColor:e.fillColor,fillOpacity:e.fillOpacity,visible:e.visible});return new Tt(n,i,this)}setupPathChangedListeners(){const e=()=>{var n;return(n=this.eventHubDelegate)==null?void 0:n.notify({type:"paths-edited",target:this})},i=this.innerOverlay.getPaths();this.pathChangedListeners=[],i.forEach(n=>{this.pathChangedListeners.push(...a.MVCArrays.listenChanged(n,e))})}clearPathChangedListeners(){var e;(e=this.pathChangedListeners)==null||e.forEach(i=>i.remove()),this.pathChangedListeners=void 0}createDelegate(){return this.eventHubDelegate=new Ve(super.createDelegate(),{types:["paths-edited"],onListen:()=>this.setupPathChangedListeners(),onCancel:()=>this.clearPathChangedListeners()})}getPaths(){const e=this.innerOverlay.getPaths(),i=[];return e.forEach(n=>{const s=[];i.push(s),n.forEach(l=>{s.push(w.fromGoogle(l,this.coordType))})}),i}setPaths(e){var i;this.coordType=this.map.coordType,this.innerOverlay.setPaths(e.map(n=>n.map(s=>s.toGoogle(this.coordType)))),(i=this.eventHubDelegate)!=null&&i.hasListener("paths-edited")&&this.setupPathChangedListeners()}}class Ct extends vt{constructor(e,i,n,s){super(e,i,n,s);f(this,"pathEditedEventType","bounds-changed");f(this,"isDoingUpdateRectangle",!1);f(this,"onBoundsChanged",({originalEvent:e})=>{if(this.isDoingUpdateRectangle)return;const i=e.prevPath??[],n=e.path;setTimeout(()=>{let s=n;const l=n.length;if(i.length===4)if(l>i.length){for(let o=0;o<l;o++)if(i[o]==null||!zi.equals(n[o],i[o])){const c=n[(o-2+l)%l],u=n[(o-1+l)%l],g=n[o],m=n[(o+1)%l],v=n[(o+2)%l];let C;u.lat===m.lat?C=new BMap.Point(u.lng,g.lat):u.lng===m.lng?C=new BMap.Point(g.lng,u.lat):C=g,s=[c,v,C];break}}else if(l===i.length){for(let o=0;o<l;o++)if(!zi.equals(n[o],i[o])){s=[n[o],n[(o+2)%4]];break}}else l<i.length;const d=j.fromArray(s.map(o=>w.fromBaidu(o,this.coordType)));d&&(this.isDoingUpdateRectangle=!0,this.innerOverlay.setPath(d.toRectArray().map(o=>o.toBaidu(this.coordType))),this.isDoingUpdateRectangle=!1)},0)});this.addEventListener("bounds-changed",this.onBoundsChanged)}static create(e){const i=this.coordType,n=new BMap.Polygon(e.bounds.toRectArray().map(s=>s.toBaidu(i)),{enableClicking:e.clickable,enableEditing:e.editable,strokeColor:e.strokeColor,strokeOpacity:e.strokeOpacity!=null?e.strokeOpacity+U.OPACITY_DELTA:void 0,strokeWeight:e.strokeWeight,fillColor:e.fillColor,fillOpacity:e.fillOpacity!=null?e.fillOpacity+U.OPACITY_DELTA:void 0});return new Ct(n,i,this,{editable:!!e.editable}).visibleOptionInternal(e.visible)}getBounds(){return j.fromBaidu(this.innerOverlay.getBounds(),this.coordType)}setBounds(e){const i=e.toRectArray();this.innerOverlay.getPath().length===i.length?e.toRectArray().forEach((n,s)=>{this.innerOverlay.setPositionAt(s,n.toBaidu(this.coordType))}):this.setPathInternal(i.map(n=>n.toBaidu(this.coordType)))}}class Ot extends ht{static create(t){const e=this.coordType,i=new google.maps.Rectangle({bounds:t.bounds.toGoogle(e),clickable:t.clickable,editable:t.editable,strokeColor:t.strokeColor,strokeOpacity:t.strokeOpacity,strokeWeight:t.strokeWeight,fillColor:t.fillColor,fillOpacity:t.fillOpacity,visible:t.visible});return new Ot(i,e,this)}getBounds(){return j.fromGoogle(this.innerOverlay.getBounds()??ie.BOUNDS_ZERO,this.coordType)}setBounds(t){const e=t.toGoogle(this.coordType);e.equals(this.innerOverlay.getBounds())||this.innerOverlay.setBounds(e)}}const se=1;class rn extends at{constructor(e,i){var n;super(e);f(this,"buildInMapTypeId2BIMT");f(this,"baiduMapType2BIMT");f(this,"map");f(this,"createLabel",Yt.create);f(this,"createCircle",ct.create);f(this,"createPolygon",Mt.create);f(this,"createPolyline",_t.create);f(this,"createRectangle",Ct.create);f(this,"createInfoWindow",pt.create);f(this,"createInfoBox",mt.create);f(this,"createMarker",ge.create);f(this,"createMapTypeControl",Ue.create);f(this,"createZoomControl",Qe.create);f(this,"createStreetViewControl",Xe.create);f(this,"createScaleControl",qe.create);this.buildInMapTypeId2BIMT=a.MapType.BUILD_IN_MAP_TYPES.getValueMap(W.prototype.getId),this.baiduMapType2BIMT=a.MapType.BUILD_IN_MAP_TYPES.getValueMap(W.prototype.asBaiduMapType),this.map=new BMap.Map(e,{minZoom:i.minZoom&&i.minZoom+se,maxZoom:i.maxZoom&&i.maxZoom+se,mapType:i.buildInMapTypeId&&((n=this.buildInMapTypeId2BIMT.get(i.buildInMapTypeId))==null?void 0:n.asBaiduMapType()),enableMapClick:!1}),this.map.centerAndZoom(i.center.toBaidu(this.coordType),i.zoom+se),this.setGestureHandling(i.gestureHandling),i.infoWindowMode==="multi"&&console.warn("baidu不支持多个InfoWindow, 可能会出现未知问题"),i.mapStyle&&this.map.setMapStyleV2(i.mapStyle.baidu),this.setEventTargetDelegate(new _e(this.map,this)),this.map.addEventListener("addoverlay",s=>{const l=s.target.__info_box__;l&&(console.debug("add:info-box",l),this.map.addOverlay(l))}),this.map.addEventListener("removeoverlay",s=>{const l=s.target.__info_box__;l&&(console.debug("remove:info-box",l),this.map.removeOverlay(l))})}setGestureHandling(e=X.auto){switch(e===X.auto&&(e=this.element.parentElement&&xt.isScrollable(this.element.parentElement)?X.cooperative:X.greedy),e){case X.cooperative:this.map.disableScrollWheelZoom(),this.map.enableDragging(),this.map.enableDoubleClickZoom();break;case X.greedy:this.map.enableScrollWheelZoom(),this.map.enableDragging(),this.map.enableDoubleClickZoom();break;case X.none:this.map.disableDragging(),this.map.disableScrollWheelZoom(),this.map.disableDoubleClickZoom();break}}get innerMap(){return this.map}get coordType(){return this.getMapType().getBaiduCoordType()}addEventListener(e,i){if(e==="center-changed"){super.addEventListener("movestart",i),super.addEventListener("moving",i),super.addEventListener("moveend",i),super.addEventListener("zoomend",i);return}super.addEventListener(e,i)}removeEventListener(e,i){if(e==="center-changed"){super.removeEventListener("movestart",i),super.removeEventListener("moving",i),super.removeEventListener("moveend",i),super.removeEventListener("zoomend",i);return}super.removeEventListener(e,i)}fromContainerPointToLatLng(e){return w.fromBaidu(this.innerMap.pixelToPoint(new BMap.Pixel(e.x,e.y)),this.coordType)}fromLatLngToContainerPoint(e){return this.innerMap.pointToPixel(e.toBaidu(this.coordType))}setDefaultCursor(e){this.innerMap.setDefaultCursor(e)}setDraggable(e){e?this.innerMap.enableDragging():this.innerMap.disableDragging()}setDoubleClickZoom(e){e?this.map.enableDoubleClickZoom():this.map.disableDoubleClickZoom()}getCenter(){return w.fromBaidu(this.map.getCenter(),this.coordType)}setCenter(e){this.map.setCenter(e.toBaidu(this.coordType))}getZoom(){return super.getZoom()-se}setZoom(e){return super.setZoom(e+se)}setMinZoom(e){this.map.setMinZoom(e+se)}setMaxZoom(e){this.map.setMaxZoom(e+se)}setMapStyle(e){this.map.setMapStyleV2((e==null?void 0:e.baidu)??{styleJson:[]})}setBuildInMapTypeId(e){var n;const i=(n=this.buildInMapTypeId2BIMT.get(e))==null?void 0:n.asBaiduMapType();this.map.setMapType(i??I("理论上来说不可能为空"))}setMapType(e){this.map.setMapType(e.asBaiduMapType())}getMapType(){const e=this.map.getMapType(),i=this.baiduMapType2BIMT.get(e);return i||(e.__baidu_map_type__??I("实现asBaiduMapType()时, 忘了给实例设置__baidu_map_type__?"))}addLayer(e){this.map.addTileLayer(e.asBaiduLayer())}removeLayer(e){this.map.removeTileLayer(e.asBaiduLayer())}panTo(e){this.map.panTo(e.toBaidu(this.coordType))}panBy(e,i){this.map.panBy(e,i)}fitBounds(e,i){this.map.setViewport(e.toBaiduArray(this.coordType),{margins:i&&[i.top,i.right,i.bottom,i.left]})}getBounds(){return j.fromBaidu(this.map.getBounds(),this.coordType)}addElementOverlay(e){this.map.addOverlay(e.asBaidu())}removeElementOverlay(e){this.map.removeOverlay(e.asBaidu())}addOverlay(e){this.map.addOverlay(e.innerOverlay)}removeOverlay(e){this.map.removeOverlay(e.innerOverlay)}addCustomControl(e){if(!e.inner){const i=class extends BMap.Control{constructor(){super(...arguments);f(this,"defaultAnchor",a.ControlPositionConverter.getBaidu().toValue(e.position));f(this,"defaultOffset",new BMap.Size(0,0))}initialize(s){const l=e.onCreateElement();return s.getContainer().appendChild(l),l}};e.inner=new i,this.map.addControl(e.inner)}}removeCustomControl(e){e.inner&&(ne(e.inner instanceof BMap.Control,`control.inner(${e.inner})需要是BMap.Control`),this.map.removeControl(e.inner))}createMarkerClusterer(e){return new Ci(this,e)}createHeatmap(e){return new yi(this,e)}createAutocomplete(e){return new pi(this,e)}createSearchBox(e){return new Li(this,e)}createPlacesService(e){return new Ei(this,e)}createMapUrls(e){return new nt(e)}}class nn extends at{constructor(e,i){var s,l;super(e);f(this,"buildInMapTypeId2BIMT");f(this,"googleMapTypeId2BIMT");f(this,"map");f(this,"createLabel",qt.create);f(this,"createCircle",dt.create);f(this,"createPolygon",Tt.create);f(this,"createPolyline",bt.create);f(this,"createRectangle",Ot.create);f(this,"createInfoWindow",gt.create);f(this,"createInfoBox",ft.create);f(this,"createMarker",yt.create);f(this,"createMapTypeControl",Ye.create);f(this,"createZoomControl",et.create);f(this,"createStreetViewControl",Je.create);f(this,"createScaleControl",Ke.create);this.mapOptions=i,this.buildInMapTypeId2BIMT=a.MapType.BUILD_IN_MAP_TYPES.getValueMap(W.prototype.getId),this.googleMapTypeId2BIMT=a.MapType.BUILD_IN_MAP_TYPES.getValueMap(W.prototype.getGoogleMapTypeId);const n=i.buildInMapTypeId&&this.buildInMapTypeId2BIMT.get(i.buildInMapTypeId);this.map=new google.maps.Map(e,{center:i.center.toGoogle((n??a.MapType.NORMAL).getGoogleCoordType()),zoom:i.zoom,disableDefaultUI:!0,gestureHandling:i.gestureHandling,minZoom:i.minZoom,maxZoom:i.maxZoom,styles:(s=i.mapStyle)==null?void 0:s.google.styles,mapId:(l=i.mapStyle)==null?void 0:l.google.mapId,mapTypeId:n==null?void 0:n.getGoogleMapTypeId()}),this.setEventTargetDelegate(new he(this.map,this))}setGestureHandling(e){this.map.setOptions({gestureHandling:e})}get innerMap(){return this.map}get coordType(){return this.getMapType().getGoogleCoordType()}fromContainerPointToLatLng(e){const i=this.innerMap.getProjection(),n=this.innerMap.getBounds();if(i==null||n==null)return w.ZERO;const s=i.fromLatLngToPoint(n.getSouthWest()),l=i.fromLatLngToPoint(n.getNorthEast()),d=this.innerMap.getZoom();if(s==null||l==null||d==null)return w.ZERO;const o=Math.pow(2,d),c=new google.maps.Point(e.x/o+s.x,e.y/o+l.y);return w.fromGoogle(i.fromPointToLatLng(c)??ie.LATLNG_ZERO,this.coordType)}fromLatLngToContainerPoint(e){const i=this.innerMap.getProjection(),n=this.innerMap.getBounds();if(i==null||n==null)return a.Point.ZERO;const s=i.fromLatLngToPoint(n.getSouthWest()),l=i.fromLatLngToPoint(n.getNorthEast()),d=this.innerMap.getZoom();if(s==null||l==null||d==null)return a.Point.ZERO;const o=Math.pow(2,d),c=i.fromLatLngToPoint(e.toGoogle(this.coordType));return c==null?a.Point.ZERO:{x:(c.x-s.x)*o,y:(c.y-l.y)*o}}setDefaultCursor(e){this.innerMap.setOptions({draggableCursor:e})}setDraggable(e){this.innerMap.setOptions({draggable:e})}setDoubleClickZoom(e){this.map.setOptions({disableDoubleClickZoom:!e})}getCenter(){return w.fromGoogle(this.map.getCenter()??ie.LATLNG_ZERO,this.coordType)}setCenter(e){this.map.setCenter(e.toGoogle(this.coordType))}setMinZoom(e){this.map.setOptions({minZoom:e})}setMaxZoom(e){this.map.setOptions({maxZoom:e})}setMapStyle(e){this.map.setOptions({styles:e==null?void 0:e.google.styles,mapId:e==null?void 0:e.google.mapId})}setBuildInMapTypeId(e){var n;const i=(n=this.buildInMapTypeId2BIMT.get(e))==null?void 0:n.getGoogleMapTypeId();this.map.setMapTypeId(i??I("理论上来说不可能为空"))}setMapType(e){e instanceof W?this.map.setMapTypeId(e.getGoogleMapTypeId()):(this.map.mapTypes.set(e.id,e.asGoogleMapType()),this.map.setMapTypeId(e.id))}getMapType(){const e=this.map.getMapTypeId()??google.maps.MapTypeId.ROADMAP,i=this.googleMapTypeId2BIMT.get(e);return i||(this.map.mapTypes.get(e).__google_map_type__??I(`实现${e}的asGoogleMapType()时, 忘了给实例设置__google_map_type__?`))}addOverlayMapType(e){this.map.overlayMapTypes.push(e.asGoogleMapType())}removeOverlayMapType(e){a.MVCArrays.remove(this.map.overlayMapTypes,e.asGoogleMapType())}addLayer(e){e.asGoogleLayer().setMap(this.map)}removeLayer(e){e.asGoogleLayer().setMap(null)}panTo(e){this.map.panTo(e.toGoogle(this.coordType))}panBy(e,i){this.map.panBy(e,i)}fitBounds(e,i){this.map.fitBounds(e.toGoogle(this.coordType),i)}getBounds(){const e=this.map.getBounds();return e?j.fromGoogle(e,this.coordType):j.EMPTY}addElementOverlay(e){e.asGoogle().setMap(this.map)}removeElementOverlay(e){e.asGoogle().setMap(null)}addOverlay(e){e.innerOverlay.setMap(this.map)}removeOverlay(e){e.innerOverlay.setMap(null)}addCustomControl(e){e.inner||(e.inner=e.onCreateElement(),this.map.controls[a.ControlPositionConverter.getGoogle().toValue(e.position)].push(e.inner))}removeCustomControl(e){if(e.inner){const i=this.map.controls[a.ControlPositionConverter.getGoogle().toValue(e.position)];a.MVCArrays.remove(i,e.inner)}}createMarkerClusterer(e){return new Oi(this,e)}createHeatmap(e){return new fi(this,e)}createAutocomplete(e){return new ui(this,e)}createSearchBox(e){return new Pi(this,e)}createPlacesService(e){return new wi(this,e)}createMapUrls(e){return new rt(e)}}const wt=["3.0"],sn={baidu:{version:"3.0",key:"kXOq8Hg9BZbZEWAjXKuzd1oGreynup8h"},google:{version:"quarterly",key:"AIzaSyBcyzMel3dYFNcfcr0LOklbBQNpWycyZXo",language:"en-us",libraries:["places","visualization"]},here:{version:wt[0],key:""}};let Zi;function Kt(){return Zi||I("请先安装: Vue<PartialTgMapConfig>.use(TgMap, {})")}function Wi(r){r!=null&&(Zi=ki(sn,r))}class on extends at{constructor(e,i){var l;super(e);f(this,"map");f(this,"defaultLayers");this.mapOptions=i;const n=Kt().here;wt.includes(n.version)||I(`不支持${n.version}, HereMap当前只支持如下版本: ${wt}`);const s=new H.service.Platform({app_id:n.key.split(",")[0],app_code:n.key.split(",")[1]});this.defaultLayers=s.createDefaultLayers(),this.map=new H.Map(e,this.defaultLayers.normal.map,{zoom:i.zoom,center:(l=i.center)==null?void 0:l.toHere(this.coordType)}),new H.mapevents.Behavior(new H.mapevents.MapEvents(this.map)),H.ui.UI.createDefault(this.map,this.defaultLayers)}get innerMap(){return this.map}get coordType(){return R.wgs84}getCenter(){return w.fromHere(this.map.getCenter(),this.coordType)}setCenter(e){this.map.setCenter(e.toHere(this.coordType))}setGestureHandling(e){throw new Error("Method not implemented.")}fromContainerPointToLatLng(e){throw new Error("Method not implemented.")}fromLatLngToContainerPoint(e){throw new Error("Method not implemented.")}setDefaultCursor(e){throw new Error("Method not implemented.")}setDraggable(e){throw new Error("Method not implemented.")}setDoubleClickZoom(e){throw new Error("Method not implemented.")}setMinZoom(e){throw new Error("Method not implemented.")}setMaxZoom(e){throw new Error("Method not implemented.")}setMapStyle(e){throw new Error("Method not implemented.")}setBuildInMapTypeId(e){throw new Error("Method not implemented.")}setMapType(e){throw new Error("Method not implemented.")}getMapType(){throw new Error("Method not implemented.")}addLayer(e){throw new Error("Method not implemented.")}removeLayer(e){throw new Error("Method not implemented.")}panTo(e){throw new Error("Method not implemented.")}panBy(e,i){throw new Error("Method not implemented.")}fitBounds(e,i){throw new Error("Method not implemented.")}getBounds(){throw new Error("Method not implemented.")}addElementOverlay(e){throw new Error("Method not implemented.")}removeElementOverlay(e){throw new Error("Method not implemented.")}addOverlay(e){throw new Error("Method not implemented.")}removeOverlay(e){throw new Error("Method not implemented.")}createMarker(e){throw new Error("Method not implemented.")}createMarkerClusterer(e){throw new Error("Method not implemented.")}createHeatmap(e){throw new Error("Method not implemented.")}createAutocomplete(e){throw new Error("Method not implemented.")}createSearchBox(e){throw new Error("Method not implemented.")}createPlacesService(e){throw new Error("Method not implemented.")}createMapUrls(e){throw new Error("Method not implemented.")}createInfoWindow(e){throw new Error("Method not implemented.")}createInfoBox(e){throw new Error("Method not implemented.")}createPolyline(e){throw new Error("Method not implemented.")}createPolygon(e){throw new Error("Method not implemented.")}createRectangle(e){throw new Error("Method not implemented.")}createCircle(e){throw new Error("Method not implemented.")}createLabel(e){throw new Error("Method not implemented.")}addCustomControl(e){throw new Error("Method not implemented.")}removeCustomControl(e){throw new Error("Method not implemented.")}createMapTypeControl(e){throw new Error("Method not implemented.")}createZoomControl(e){throw new Error("Method not implemented.")}createStreetViewControl(e){throw new Error("Method not implemented.")}createScaleControl(e){throw new Error("Method not implemented.")}}var Y=(r=>(r.google="google",r.baidu="baidu",r.here="here",r))(Y||{});a.TgMapFactory=void 0,(r=>{function t(e,i,n){const s=a.MapOptions.create(n);switch(e){case"google":return new nn(i,s);case"baidu":return new rn(i,s);case"here":return new on(i,s)}}r.createMap=t})(a.TgMapFactory||(a.TgMapFactory={}));var an={VITE_APP_DEV_KEY_BAIDU:"kXOq8Hg9BZbZEWAjXKuzd1oGreynup8h",VITE_APP_DEV_KEY_GOOGLE:"AIzaSyBcyzMel3dYFNcfcr0LOklbBQNpWycyZXo",VITE_APP_DEV_KEY_HERE:"",BASE_URL:"/",MODE:"production",DEV:!1,PROD:!0,SSR:!1};const ln={};function Hi(r){return a.Objects.putIfAbsent(ln,r,()=>ei(()=>hn({type:r,config:Kt()[r]})))()}function hn({type:r,config:t}){const e=window,i=cn(r);if(a.Objects.get(e,i))return Promise.resolve();switch(r!==Y.here&&!t.key&&I(`请先配置${r}地图的key`),r){case Y.google:return an.VITE_FALSE?(Pr({key:t.key,v:"3.52"}),google.maps.importLibrary("core")):Vi(`https://maps.googleapis.com/maps/api/js?key=${t.key}&language=${t.language}&v=${t.version}&libraries=${t.libraries.join(",")}`);case Y.baidu:return Vi(`https://api.map.baidu.com/api?v=${t.version}&ak=${t.key}`);case Y.here:return Ee(we("core",t.version)).then(()=>Promise.all([Ee(we("service",t.version)),Ee(we("mapevents",t.version)),Ee(we("clustering",t.version)),Ee(we("ui",t.version))])).catch(n=>(a.Objects.del(e,i),Promise.reject(n)));default:Ge(r)}}function we(r,t=wt[0]){return`https://js.api.here.com/v3/${t}/mapsjs-${r}.js`}function cn(r){switch(r){case Y.google:return"google.maps";case Y.baidu:return"BMap";case Y.here:return"H"}}let dn=0;function Vi(r,t="callback"){return new Promise((e,i)=>{const n=`__callback${dn++}`;window[n]=e;const s=document.createElement("script");s.src=`${r}&${t}=${n}`,s.onerror=i,document.body.appendChild(s)})}function Ee(r){return new Promise((t,e)=>{const i=document.createElement("script");i.src=r,i.onload=t,i.onerror=e,document.body.appendChild(i)})}function V(r,t){return{type:String,default:t,validator:e=>Object.values(r).includes(e)}}function ji(r,t){return{type:String,default:t,validator:e=>r.includes(e)}}function N(r){return{type:r,required:!0}}function T(r,t){return{type:r,default:t}}function un(r){const t={};return Object.entries(r).forEach(([e,i])=>{const n=`__${e}`;t[e]={get(){const s=this[n];return s===void 0?i:s},set(s){this[n]=s}}}),t}const Pe={enumerable:!0,configurable:!0,get:le,set:le};function Fi(r){return Object.keys(r).forEach(t=>{const e=r[t];let i=!1;typeof e=="function"?(Pe.get=e,Pe.set=le,i=!0):typeof e=="object"&&typeof e.get=="function"&&(Pe.get=e.get,Pe.set=e.set,i=!0),i&&(r[t]=Object.defineProperty(r,t,Pe))}),r}function pn(r){return Fi(r)}function Le(){return y.createCommentVNode()}function Be(r,t){const e=r.$options[t];if(e)for(const i of e)i.call(r)}function gn(r,t){for(const e of r)if(e.$options.name===t.name)return e}function mn(r,t){if(!r.default)return;const e=r.default();for(const i of e)if((i==null?void 0:i.type).name===t.name)return i}function Ui(r,t){const e={},i={},n={};return Object.keys(r).forEach(s=>{s.startsWith("on")?e[a.Strings.pascal2kebab(s.substring(2))]=r[s]:i[s]=r[s]}),t&&Object.keys(t).forEach(s=>{s.startsWith("on")&&(n[a.Strings.pascal2kebab(s.substring(2))]=t[s])}),{binds:i,listeners:e,listenerProps:n}}function J(r,t){return y.computed(()=>Ui(r,t))}function x(){return Function}const fn=()=>{let r,t;function e(n){console.log(n),r=n&&n.type,t=Date.now()}function i(n){((n&&n.type)!==r||Date.now()-(t??0)>1e3)&&e(n)}return{eventLog:e,eventLogLess:i}},Et="$map",me="onCreate",fe="onDestroy",z=y.defineComponent({inject:[Et],mounted(){Be(this,me)},beforeUnmount(){Be(this,fe)},methods:{recreate(){Be(this,fe),Be(this,me)}},render(){return Le()}}),yn=y.defineComponent({name:"tg-map",provide(){return{[Et]:y.computed(()=>this.map)}},inheritAttrs:!1,props:{type:V(Y,Y.google),center:N(w),centerSyncDelay:T(Number,300),currentCenter:T(w),lastCenter:T(w),zoom:N(Number),infoWindowMode:ji(Di),gestureHandling:V(X),minZoom:T(Number),maxZoom:T(Number),mapStyle:T(Object),mapTypeId:V(Rt),mapType:T(Object),hideLogo:T(Boolean),onLoad:x(),"onUpdate:center":x(),"onUpdate:current-center":x(),"onUpdate:last-center":x(),"onUpdate:map-type":x(),"onUpdate:map-type-id":x(),"onUpdate:zoom":x(),onError:x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),centerSyncTimeoutId:void 0}},data(){return{map:Ne(),isDestroyed:!1}},computed:{propsJson(){return a.Objects.toJsonSafely(this.$props)}},watch:{gestureHandling(r){var t;r&&((t=this.map)==null||t.setGestureHandling(r))},minZoom(r){var t;(t=this.map)==null||t.setMinZoom(r)},maxZoom(r){var t;(t=this.map)==null||t.setMaxZoom(r)},mapStyle(r){var t;(t=this.map)==null||t.setMapStyle(r)},mapTypeId(r){var t;r&&((t=this.map)==null||t.setBuildInMapTypeId(r))},mapType(r){var t;(t=this.map)==null||t.setMapType(r??a.MapType.NORMAL)}},async mounted(){const r=this.type;try{await Hi(r)}catch(n){this.$emit("error",n);return}if(this.isDestroyed){console.warn(`tg-map(type=${r})已销毁, 不需要继续执行`);return}const t=a.TgMapFactory.createMap(r,this.$refs.map,{center:this.center,zoom:this.zoom,infoWindowMode:this.infoWindowMode,gestureHandling:this.gestureHandling,minZoom:this.minZoom,maxZoom:this.maxZoom,mapStyle:this.mapStyle,buildInMapTypeId:this.mapTypeId});if(this.map=y.markRaw(t),this.mapType&&t.setMapType(this.mapType),"ready"in this.attrs.listeners&&console.error("地图载入完成的事件已经从ready改为了load, 请手动修改"),$(this.attrs.listeners,t,["load"]),this.$emit("load",t),y.watch([()=>this.zoom,()=>this.center],([n,s],[l,d])=>{n!==l&&t.setZoom(n),s!==d&&(t.getCenter().equals(s)||t.setCenter(s))}),this.attrs.listenerProps["update:center"]){const n=()=>this.$emit("update:center",t.getCenter());t.addEventListener("center-changed",()=>{this.centerSyncDelay>0?(clearTimeout(this.centerSyncTimeoutId),this.centerSyncTimeoutId=setTimeout(n,this.centerSyncDelay)):n()})}this.attrs.listenerProps["update:current-center"]&&(this.$emit("update:current-center",this.center),t.addEventListener("center-changed",()=>{this.$emit("update:current-center",t.getCenter())})),this.attrs.listenerProps["update:zoom"]&&t.addEventListener("zoom-changed",()=>{this.$emit("update:zoom",t.getZoom())});const e=this.attrs.listenerProps["update:map-type"],i=this.attrs.listenerProps["update:map-type-id"];(e||i)&&t.addEventListener("map-type-changed",()=>{const n=t.getMapType();e&&this.$emit("update:map-type",n),i&&this.$emit("update:map-type-id",n.id)})},unmounted(){this.isDestroyed=!0,this.map&&(this.attrs.listenerProps["update:last-center"]&&this.$emit("update:last-center",this.map.getCenter()),this.attrs.listenerProps["update:center"]&&(clearTimeout(this.centerSyncTimeoutId),this.$emit("update:center",this.map.getCenter())))},methods:{}}),Q=(r,t)=>{const e=r.__vccOpts||r;for(const[i,n]of t)e[i]=n;return e};function vn(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",y.mergeProps({class:"tg-map"},r.attrs.binds),[y.createElementVNode("div",{ref:"map",class:y.normalizeClass({"tg-map__map":!0,[`tg-map__map--hide-logo-${r.type}`]:r.hideLogo})},null,2),y.createCommentVNode("",!0),r.map?y.renderSlot(r.$slots,"default",{key:1}):y.createCommentVNode("",!0),y.renderSlot(r.$slots,"overlay")],16)}const ye=Q(yn,[["render",vn]]);function _n(r){if(r==null)return;let t;if(typeof r=="string"){if(t=+r,Number.isNaN(t))return r}else t=r;return`${t}px`}const bn=y.defineComponent({name:"tg-map-widget",props:{left:{type:[Number,String],default:null},top:{type:[Number,String],default:null},right:{type:[Number,String],default:null},bottom:{type:[Number,String],default:null}},computed:{topValue(){return this.top==null&&this.bottom==null?0:this.top}},methods:{dimen:_n}});function Mn(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",{class:y.normalizeClass(r.$options.name),style:y.normalizeStyle({left:r.dimen(r.left),top:r.dimen(r.topValue),right:r.dimen(r.right),bottom:r.dimen(r.bottom)})},[y.renderSlot(r.$slots,"default")],6)}const Yi=Q(bn,[["render",Mn]]),Tn=y.defineComponent({name:"tg-custom-control",mixins:[z],props:{position:V(k,k.RIGHT_BOTTOM)},setup(){return{control:void 0}},watch:{position(){this.recreate()}},onCreate(){St(this.$parent,ye)||console.warn("请将tg-custom-control放到tg-map中");const{$el:r}=this,t=class extends oi{onCreateElement(){return r}};this.control=new t(this.position),this.$map.addCustomControl(this.control)},onDestroy(){this.$map.removeCustomControl(this.control)}});function Cn(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",{class:y.normalizeClass(r.$options.name)},[y.renderSlot(r.$slots,"default")],2)}const qi=Q(Tn,[["render",Cn]]),Ki=y.defineComponent({name:"tg-map-type-control",mixins:[z],props:{position:V(k,k.TOP_LEFT),type:V(Dt),mapTypes:T(Array)},setup(){return{control:void 0}},watch:{position(r){this.control.setPosition(r)},type(){this.recreate()},mapTypes:{handler(){this.recreate()},deep:!0}},onCreate(){this.control=this.$map.createMapTypeControl(this),this.$map.addControl(this.control)},onDestroy(){this.$map.removeControl(this.control)}}),Xi=y.defineComponent({name:"tg-scale-control",mixins:[z],props:{position:V(k,k.BOTTOM_RIGHT)},setup(){return{control:void 0}},watch:{position(r){this.control.setPosition(r)}},onCreate(){this.control=this.$map.createScaleControl(this),this.$map.addControl(this.control)},onDestroy(){this.$map.removeControl(this.control)}});function Ji(){var e;const r=(e=y.getCurrentInstance())==null?void 0:e.type;let t=(r==null?void 0:r.name)??(r==null?void 0:r.__name);if(!t){const i=r==null?void 0:r.__file;i&&(t=Gi.basename(i,".vue"))}return t}function Pt(){const r=y.inject(Et);let t,e;return r==null&&I(`<${Ji()||"unknown"}>必须作为<tg-map>的子代组件`),{mapRef:r,get map(){return r.value??I("map尚未初始化")},[me](i){y.onMounted(i),t&&I(`${me}只能调用一次`),t=i},[fe](i){y.onBeforeUnmount(i),e&&I(`${fe}只能调用一次`),e=i},recreate(){e==null||e(),t==null||t()}}}const Qi=y.defineComponent({name:"tg-street-view-control",props:{position:V(k,k.RIGHT_BOTTOM)},setup(r){let t=void 0;const{map:e,onCreate:i,onDestroy:n}=Pt();return i(()=>{t=e.createStreetViewControl(r),e.addControl(t)}),n(()=>{e.removeControl(t)}),y.watch(()=>r.position,s=>{t.setPosition(s)}),Le}}),er=y.defineComponent({name:"tg-zoom-control",props:{position:V(k,k.RIGHT_BOTTOM)},setup(r){let t=void 0;const{map:e,onCreate:i,onDestroy:n}=Pt();return i(()=>{t=e.createZoomControl(r),e.addControl(t)}),n(()=>{e.removeControl(t)}),y.watch(()=>r.position,s=>{t.setPosition(s)}),Le}}),tr=y.defineComponent({name:"tg-heatmap",props:{maxIntensity:T(Number),gradient:T(Object),opacity:T(Number),radius:T(Number),data:N(Array)},setup(r){const{map:t,onCreate:e,onDestroy:i}=Pt();let n=void 0;return e(()=>{n=t.createHeatmap(r)}),i(()=>{n.remove()}),y.watch(()=>r.data,s=>n.setData(s)),y.watch([()=>r.maxIntensity,()=>r.gradient,()=>r.opacity,()=>r.radius],()=>n.setOptions(r)),Le}}),On=y.defineComponent({name:"tg-marker-clusterer",mixins:[z],props:{gridSize:T(Number),maxZoom:T(Number),minClusterSize:T(Number),averageCenter:T(Boolean),styles:T(Array),stylesIndexCalculator:T(Function),zIndex:T(Number)},setup(){return{clusterer:void 0,markers:[]}},watch:{gridSize(){this.recreate()},maxZoom(){this.recreate()},minClusterSize(){this.recreate()},averageCenter(){this.recreate()},styles:{handler(){this.recreate()},deep:!0},stylesIndexCalculator(){this.recreate()},zIndex(){this.recreate()}},onCreate(){this.clusterer=this.$map.createMarkerClusterer(this)},onDestroy(){this.clusterer.clearMarkers()},methods:{isInitiated(){return this.clusterer!=null},onAddMarker(r){this.markers.push(r),this.isInitiated()&&this.clusterer.addMarker(r)},onRemoveMarker(r){this.isInitiated()&&this.clusterer.removeMarker(r),a.Arrays.remove(this.markers,r)}}});function wn(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",{class:y.normalizeClass(r.$options.name)},[y.renderSlot(r.$slots,"default")],2)}const Xt=Q(On,[["render",wn]]),ir=y.defineComponent({name:"tg-traffic-layer",mixins:[z],setup(){return{layer:void 0}},watch:{},onCreate(){this.layer=new li,this.$map.addLayer(this.layer)},onDestroy(){this.$map.removeLayer(this.layer)}}),rr=y.defineComponent({name:"tg-circle",mixins:[z],inheritAttrs:!1,props:{center:N(w),radius:N(Number),clickable:T(Boolean),editable:T(Boolean),strokeColor:T(String),strokeOpacity:T(Number),strokeWeight:T(Number),visible:T(Boolean),fillColor:T(String),fillOpacity:T(Number),"onUpdate:center":x(),"onUpdate:radius":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),overlay:void 0,emittedRadius:void 0,emittedCenter:void 0}},watch:{center(r){if(this.emittedCenter!=null){const t=this.emittedCenter;if(this.emittedCenter=void 0,t===y.toRaw(r))return}this.overlay.setCenter(r)},radius(r){if(this.emittedRadius!=null){const t=this.emittedRadius;if(this.emittedRadius=void 0,t===r)return}this.overlay.setRadius(r)},clickable(){this.recreate()},editable(r){this.overlay.setEditable(r)},strokeColor(r){this.overlay.setStrokeColor(r)},strokeOpacity(r){this.overlay.setStrokeOpacity(r)},strokeWeight(r){this.overlay.setStrokeWeight(r)},fillColor(r){this.overlay.setFillColor(r)},fillOpacity(r){this.overlay.setFillOpacity(r)},visible(r){this.overlay.setVisible(r)}},onCreate(){this.overlay=this.$map.createCircle(this),this.$map.addOverlay(this.overlay),$(this.attrs.listeners,this.overlay),this.attrs.listenerProps["update:center"]&&this.overlay.addEventListener("center-changed",()=>{this.$emit("update:center",this.emittedCenter=this.overlay.getCenter())}),this.attrs.listenerProps["update:radius"]&&this.overlay.addEventListener("radius-changed",()=>{this.$emit("update:radius",this.emittedRadius=this.overlay.getRadius())})},onDestroy(){this.$map.removeOverlay(this.overlay)}});class En extends Ni{constructor(t,e,i,n){super(t,e),this.content=i,this.position=n}onCreate(){return this.content}onDraw(t){const e=t.fromLatLngToOverlayPoint(this.position);this.content.style.left=e.x+"px",this.content.style.top=e.y+"px"}setPosition(t){this.position=t,this.draw()}}const Pn=y.defineComponent({name:"tg-element-overlay",mixins:[z],props:{mapPane:V(ue,ue.overlayMouseTarget),position:N(w)},setup(){return{overlay:void 0}},watch:{position(r){this.overlay.setPosition(r)},mapPane(){this.recreate()}},methods:{content(){return this.$el}},onCreate(){this.overlay=new En(this.$map,this,this.content(),this.position),this.$map.addElementOverlay(this.overlay)},onDestroy(){this.$map.removeElementOverlay(this.overlay)}});function Ln(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",y.mergeProps({class:r.$options.name},r.$attrs),[y.renderSlot(r.$slots,"default")],16)}const nr=Q(Pn,[["render",Ln]]),Bn=y.defineComponent({name:"tg-marker",mixins:[z],inheritAttrs:!1,props:{position:N(w),title:T(String),icon:T(Object),clickable:T(Boolean),draggable:T(Boolean),crossOnDrag:T(Boolean),cursor:T(String),zIndex:T(Number),visible:T(Boolean),normalizePositionForBaidu:T(Boolean),autoAddToClusterer:T(Boolean,!0),"onUpdate:position":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),marker:void 0,label:Ne(),info:Ne(),emittedPosition:void 0,autoAddToClustererWhenCreate:r.autoAddToClusterer}},watch:{position(r){if(this.emittedPosition!=null){const t=this.emittedPosition;if(this.emittedPosition=void 0,t===y.toRaw(r))return}this.marker.setPosition(r)},title(r){this.marker.setTitle(r)},icon(r){r?this.marker.setIcon(r):this.recreate()},clickable(r){this.marker instanceof ge?this.recreate():this.marker.setClickable(r)},draggable(r){this.marker.setDraggable(r)},crossOnDrag(){this.recreate()},cursor(){this.recreate()},zIndex(r){this.marker instanceof ge?this.recreate():this.marker.setZIndex(r)},visible(r){this.marker.setVisible(r)},normalizePositionForBaidu(){this.recreate()},autoAddToClusterer(){this.recreate()}},onCreate(){this.marker=this.$map.createMarker(this),this.label&&this.marker.setLabel(this.label.overlay),this.$clusterer()&&this.autoAddToClusterer?this.$clusterer().onAddMarker(this.marker):this.$map.addOverlay(this.marker),this.autoAddToClustererWhenCreate=this.autoAddToClusterer,this.info&&this.info.show&&this.info.overlay.open(this.marker),$(this.attrs.listeners,this.marker),this.attrs.listenerProps["update:position"]&&this.marker.addEventListener("dragend",r=>{this.$emit("update:position",this.emittedPosition=r.position)})},onDestroy(){this.$clusterer()&&this.autoAddToClustererWhenCreate?this.$clusterer().onRemoveMarker(this.marker):this.$map.removeOverlay(this.marker)},methods:{$clusterer(){return St(this.$parent,Xt)},onAddLabel(r){this.label=r,this.marker&&this.marker.setLabel(r.overlay)},onRemoveLabel(r){this.marker.setLabel(void 0),this.label=void 0},onAddInfo(r){this.info=r,this.marker&&r.show&&r.overlay.open(this.marker)},onRemoveInfo(r){r.overlay.close(),this.info=void 0},onInfoShowChanged(r,t){t?r.overlay.open(this.marker):r.overlay.close()}}});function In(r,t,e,i,n,s){return y.renderSlot(r.$slots,"default")}const Ie=Q(Bn,[["render",In]]),Sn=y.defineComponent({name:"tg-info-box",mixins:[z],inheritAttrs:!1,props:{show:N(Boolean),position:T(w),offset:T(Object),maxWidth:T(Number),borderClass:T(String),zIndex:T(Number),"onUpdate:show":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),overlay:void 0}},watch:{show(r){this.$marker()?this.$marker().onInfoShowChanged(this,r):r?this.overlay.open():this.overlay.close()},position(r){this.overlay.setPosition(r)},offset(){this.recreate()},maxWidth(r){this.overlay.setMaxWidth(r)},borderClass(){this.recreate()},zIndex(r){this.overlay.setZIndex(r)}},onCreate(){this.overlay=this.$map.createInfoBox(this.getOptions()),this.$marker()?this.$marker().onAddInfo(this):this.show&&this.overlay.open(),this.attrs.listenerProps["update:show"]&&this.overlay.addEventListener("closeclick",()=>{this.$emit("update:show",!1)}),$(this.attrs.listeners,this.overlay)},onDestroy(){this.$marker()?this.$marker().onRemoveInfo(this):this.overlay.close()},methods:{getOptions(){return{content:this.content(),position:this.position,offset:this.offset,zIndex:this.zIndex,maxWidth:this.maxWidth,borderClass:this.borderClass}},content(){return this.$el},$marker(){return We(Ie,this.$parent,ye)},open(r){this.overlay.open(r)},close(){this.overlay.close()}}});function kn(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",y.mergeProps({class:r.$options.name},r.attrs.binds),[y.renderSlot(r.$slots,"default")],16)}const sr=Q(Sn,[["render",kn]]),xn=y.defineComponent({name:"tg-info-window",mixins:[z],inheritAttrs:!1,props:{show:N(Boolean),position:T(w),maxWidth:T(Number),offset:T(Object),disableAutoPan:T(Boolean),"onUpdate:show":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),overlay:void 0}},watch:{show(r){this.$marker()?this.$marker().onInfoShowChanged(this,r):r?this.overlay.open():this.overlay.close()},position(r){this.overlay.setPosition(r)},maxWidth(){this.recreate()},offset(){this.recreate()},disableAutoPan(){this.recreate()}},methods:{content(){return this.$el},$marker(){return We(Ie,this.$parent,ye)},getOptions(){return{content:this.content(),position:this.position,maxWidth:this.maxWidth,offset:this.offset,disableAutoPan:this.disableAutoPan}}},onCreate(){this.overlay=this.$map.createInfoWindow(this.getOptions()),this.$marker()?this.$marker().onAddInfo(this):this.show&&this.overlay.open(),this.overlay.addEventListener("open",()=>{this.$emit("update:show",!0)}),this.overlay.addEventListener("close",()=>{this.$emit("update:show",!1)}),$(this.attrs.listeners,this.overlay)},onDestroy(){this.$marker()?this.$marker().onRemoveInfo(this):this.overlay.close()}});function An(r,t,e,i,n,s){return y.withDirectives((y.openBlock(),y.createElementBlock("div",y.mergeProps({class:r.$options.name},r.attrs.binds),[y.renderSlot(r.$slots,"default")],16)),[[y.vShow,r.show]])}const or=Q(xn,[["render",An]]),Rn=y.defineComponent({name:"tg-label",mixins:[z],inheritAttrs:!1,props:{position:T(w),offset:T(Object),zIndex:T(Number),mapPane:V(ue)},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t),overlay:void 0}},watch:{position(r){this.overlay.setPosition(r)},offset(r){this.overlay.setOffset(r)},zIndex(r){this.overlay.setZIndex(r)},visible(r){this.overlay.setVisible(r)},mapPane(){this.recreate()}},methods:{content(){return this.$el},marker(){var r;return(r=this.$marker())==null?void 0:r.marker},$marker(){return We(Ie,this.$parent,ye)},getOptions(){return{content:this.content(),position:this.position,offset:this.offset,zIndex:this.zIndex,mapPane:this.mapPane}}},onCreate(){this.overlay=this.$map.createLabel(this.getOptions()),this.$marker()?this.$marker().onAddLabel(this):this.$map.addOverlay(this.overlay),$(this.attrs.listeners,this.overlay)},onDestroy(){this.$marker()?this.$marker().onRemoveLabel(this):this.$map.removeOverlay(this.overlay)}});function Dn(r,t,e,i,n,s){return y.openBlock(),y.createElementBlock("div",y.mergeProps({class:r.$options.name},r.attrs.binds),[y.renderSlot(r.$slots,"default")],16)}const ar=Q(Rn,[["render",Dn]]),lr=y.defineComponent({name:"tg-polygon",mixins:[z],inheritAttrs:!1,props:{paths:N(Array),clickable:T(Boolean),editable:T(Boolean),strokeColor:T(String),strokeOpacity:T(Number),strokeWeight:T(Number),visible:T(Boolean),fillColor:T(String),fillOpacity:T(Number),"onUpdate:paths":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),overlay:void 0,emittedPaths:void 0}},watch:{paths:{handler(r){if(this.emittedPaths!=null){const t=this.emittedPaths;if(this.emittedPaths=void 0,t.length===r.length&&t.every((e,i)=>e===y.toRaw(r[i])))return}this.overlay.setPaths(r)},deep:!0},clickable(){this.recreate()},editable(r){this.overlay.setEditable(r)},strokeColor(r){this.overlay.setStrokeColor(r)},strokeOpacity(r){this.overlay.setStrokeOpacity(r)},strokeWeight(r){this.overlay.setStrokeWeight(r)},fillColor(r){this.overlay.setFillColor(r)},fillOpacity(r){this.overlay.setFillOpacity(r)},visible(r){this.overlay.setVisible(r)}},onCreate(){this.overlay=this.$map.createPolygon(this),this.$map.addOverlay(this.overlay),$(this.attrs.listeners,this.overlay),this.attrs.listenerProps["update:paths"]&&this.overlay.addEventListener("paths-edited",()=>{this.$emit("update:paths",this.emittedPaths=this.overlay.getPaths())})},onDestroy(){this.$map.removeOverlay(this.overlay)}}),hr=y.defineComponent({name:"tg-polyline",mixins:[z],inheritAttrs:!1,props:{path:N(Array),icons:T(Array),clickable:T(Boolean),editable:T(Boolean),strokeColor:T(String),strokeOpacity:T(Number),strokeWeight:T(Number),visible:T(Boolean),"onUpdate:path":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),overlay:void 0,emittedPath:void 0}},watch:{path:{handler(r){if(this.emittedPath!=null){const t=this.emittedPath;if(this.emittedPath=void 0,t===y.toRaw(r))return}this.overlay.setPath(r)},deep:!0},icons:{handler(){this.recreate()},deep:!0},clickable(){this.recreate()},editable(r){this.overlay.setEditable(r)},strokeColor(r){this.overlay.setStrokeColor(r)},strokeOpacity(r){this.overlay.setStrokeOpacity(r)},strokeWeight(r){this.overlay.setStrokeWeight(r)},visible(r){this.overlay.setVisible(r)}},onCreate(){this.overlay=this.$map.createPolyline(this),this.$map.addOverlay(this.overlay),$(this.attrs.listeners,this.overlay),this.attrs.listenerProps["update:path"]&&this.overlay.addEventListener("path-edited",()=>{this.$emit("update:path",this.emittedPath=this.overlay.getPath())})},onDestroy(){this.overlay.remove()}}),cr=y.defineComponent({name:"tg-rectangle",mixins:[z],inheritAttrs:!1,props:{bounds:N(Object),clickable:T(Boolean),editable:T(Boolean),strokeColor:T(String),strokeOpacity:T(Number),strokeWeight:T(Number),visible:T(Boolean),fillColor:T(String),fillOpacity:T(Number),"onUpdate:bounds":x()},emits:void 0,setup(r,{attrs:t}){return{attrs:J(t,r),overlay:void 0,emittedBounds:void 0}},watch:{bounds(r){if(this.emittedBounds!=null){const t=this.emittedBounds;if(this.emittedBounds=void 0,t.equals(r))return}this.overlay.setBounds(r)},clickable(){this.recreate()},editable(r){this.overlay.setEditable(r)},strokeColor(r){this.overlay.setStrokeColor(r)},strokeOpacity(r){this.overlay.setStrokeOpacity(r)},strokeWeight(r){this.overlay.setStrokeWeight(r)},fillColor(r){this.overlay.setFillColor(r)},fillOpacity(r){this.overlay.setFillOpacity(r)},visible(r){this.overlay.setVisible(r)}},onCreate(){this.overlay=this.$map.createRectangle(this),this.$map.addOverlay(this.overlay),$(this.attrs.listeners,this.overlay),this.attrs.listenerProps["update:bounds"]&&this.overlay.addEventListener("bounds-changed",()=>{this.$emit("update:bounds",this.emittedBounds=this.overlay.getBounds())})},onDestroy(){this.$map.removeOverlay(this.overlay)}}),$n=["beforeUpdate","updated"],zn={install(r,t={}){if(t.enable!==!1){const e=y.defineComponent({beforeCreate(){const i=Ji()??"",s=(t.nameRegex||/^[A-Z]/).test(i)?l=>{t.hookNames?t.hookNames.includes(l)&&console.debug("[lifecycle]",i,l):$n.includes(l)||console.debug("[lifecycle]",i,l)}:le;s("beforeCreate"),this.__life_impl=s},created(){this.__life("created")},beforeMount(){this.__life("beforeMount")},mounted(){this.__life("mounted")},beforeUpdate(){this.__life("beforeUpdate")},updated(){this.__life("updated")},beforeUnmount(){this.__life("beforeUnmount")},unmounted(){this.__life("unmounted")},methods:{__life(i){this.__life_impl(i)}},onCreate(){this.__life("onCreate")},onDestroy(){this.__life("onDestroy")}});r.mixin(e)}}},Gn=6378137;function Se(r){return r*Math.PI/180}function dr(r){return r*180/Math.PI}function Nn(r,t){if(r.lat===t.lat&&r.lng===t.lng)return 0;const e=Se((r.lat+t.lat)/2),i=Se((r.lat-t.lat)/2),n=Se((r.lng-t.lng)/2);let s=Math.sin(i),l=Math.sin(n),d=Math.sin(e);const o=Gn,c=1/298.257;s=s*s,l=l*l,d=d*d;const u=s*(1-l)+(1-d)*l,g=(1-s)*(1-l)+d*l,m=Math.atan(Math.sqrt(u/g)),v=Math.sqrt(u*g)/m,C=2*m*o,M=(3*v-1)/2/g,O=(3*v+1)/2/u;return C*(1+c*(M*d*(1-s)-O*(1-d)*s))}function ur(r,t,e){const n=63567523142e-4,s=1/298.257223563,l=Se(t),d=Math.sin(l),o=Math.cos(l),c=(1-s)*Math.tan(Se(r.lat)),u=1/Math.sqrt(1+c*c),g=c*u,m=Math.atan2(c,o),v=u*d,C=1-v*v,M=C*(6378137*6378137-n*n)/(n*n),O=1+M/16384*(4096+M*(-768+M*(320-175*M))),h=M/1024*(256+M*(-128+M*(74-47*M)));let p=0,_=0,b=0,E=e/(n*O),P=2*Math.PI;for(;Math.abs(E-P)>1e-12;){p=Math.cos(2*m+E),_=Math.sin(E),b=Math.cos(E);const q=h*_*(p+h/4*(b*(-1+2*p*p)-h/6*p*(-3+4*_*_)*(-3+4*p*p)));P=E,E=e/(n*O)+q}const B=g*_-u*b*o,D=Math.atan2(g*b+u*_*o,(1-s)*Math.sqrt(v*v+B*B)),Z=Math.atan2(_*d,u*b-g*_*o),S=s/16*C*(4+s*(4-3*C)),ee=Z-(1-S)*s*v*(E+S*_*(p+S*b*(-1+2*p*p)));return{lng:r.lng+dr(ee),lat:dr(D)}}const Zn={getDistance:Nn,getDestination:ur};var Wn={VITE_APP_DEV_KEY_BAIDU:"kXOq8Hg9BZbZEWAjXKuzd1oGreynup8h",VITE_APP_DEV_KEY_GOOGLE:"AIzaSyBcyzMel3dYFNcfcr0LOklbBQNpWycyZXo",VITE_APP_DEV_KEY_HERE:"",BASE_URL:"/",MODE:"production",DEV:!1,PROD:!0,SSR:!1};const Hn={install(r,t){if(Wi(t),Wn.VITE_FALSE){const i=Object.assign({"./TgMap.vue":ye,"./TgMapWidget.vue":Yi,"./controls/TgCustomControl.vue":qi,"./controls/TgMapTypeControl.vue":Ki,"./controls/TgScaleControl.vue":Xi,"./controls/TgStreetViewControl.vue":Qi,"./controls/TgZoomControl.vue":er,"./extra/TgHeatmap.vue":tr,"./extra/TgMarkerClusterer.vue":Xt,"./layers/TgTrafficLayer.vue":ir,"./overlays/TgCircle.vue":rr,"./overlays/TgElementOverlay.vue":nr,"./overlays/TgInfoBox.vue":sr,"./overlays/TgInfoWindow.vue":or,"./overlays/TgLabel.vue":ar,"./overlays/TgMarker.vue":Ie,"./overlays/TgPolygon.vue":lr,"./overlays/TgPolyline.vue":hr,"./overlays/TgRectangle.vue":cr});Object.keys(i).forEach(n=>{const s=i[n];r.component(s.name??I(`Tg开头的组件必须设置name: ${n}`),s)})}const e=r.config.optionMergeStrategies;e[me]=e[fe]=(i,n)=>i?[...new Set([].concat(i,n))]:Array.isArray(n)?n:[n]}};a.AbstractControl=je,a.AbstractMap=at,a.Autocomplete=$t,a.BaiduAutocomplete=pi,a.BaiduCircle=ct,a.BaiduControl=Fe,a.BaiduHeatmap=yi,a.BaiduInfoBoxOverlay=mt,a.BaiduInfoWindow=pt,a.BaiduMapTypeControl=Ue,a.BaiduMapUrls=nt,a.BaiduMarker=ge,a.BaiduMarkerClusterer=Ci,a.BaiduOverlay=Ce,a.BaiduPlacesService=Ei,a.BaiduPolyShape=vt,a.BaiduPolygon=Mt,a.BaiduPolyline=_t,a.BaiduRectangle=Ct,a.BaiduScaleControl=qe,a.BaiduSearchBox=Li,a.BaiduStreetViewControl=Xe,a.BaiduZoomControl=Qe,a.BuildInMapType=W,a.BuildInMapTypeId=Rt,a.CachedValue=ce,a.ControlPosition=k,a.CoordType=R,a.CustomControl=oi,a.ElementOverlay=Ni,a.EmptyControl=ai,a.FastFindValues=si,a.GestureHandlingOptions=X,a.GoogleAutocomplete=ui,a.GoogleCircle=dt,a.GoogleControl=be,a.GoogleHeatmap=fi,a.GoogleInfoBoxOverlay=ft,a.GoogleInfoWindow=gt,a.GoogleMapTypeControl=Ye,a.GoogleMapUrls=rt,a.GoogleMarker=yt,a.GoogleMarkerClusterer=Oi,a.GoogleOverlay=lt,a.GooglePlacesService=wi,a.GooglePolygon=Tt,a.GooglePolyline=bt,a.GoogleRectangle=Ot,a.GoogleScaleControl=Ke,a.GoogleSearchBox=Pi,a.GoogleStreetViewControl=Je,a.GoogleZoomControl=et,a.Heatmap=zt,a.ImageMapType=Er,a.InfoWindow=ut,a.InfoWindowModeValues=Di,a.KeyValue=At,a.LatLng=w,a.LatLngBounds=j,a.LifecycleLogPlugin=zn,a.MIXIN_HOOK_CREATE=me,a.MIXIN_HOOK_DESTROY=fe,a.MIXIN_MAP_NAME=Et,a.MapMixin=z,a.MapPane=ue,a.MapTypeControlType=Dt,a.MapUrls=Gt,a.MapZoom=Bi,a.MarkerClusterer=Wt,a.Overlay=jt,a.PlacesService=Ht,a.SearchBox=Vt,a.SphericalUtils=Zn,a.SymbolPath=tn,a.TgCircle=rr,a.TgCustomControl=qi,a.TgElementOverlay=nr,a.TgHeatmap=tr,a.TgInfoBox=sr,a.TgInfoWindow=or,a.TgLabel=ar,a.TgMap=ye,a.TgMapType=Y,a.TgMapTypeControl=Ki,a.TgMapWidget=Yi,a.TgMarker=Ie,a.TgMarkerClusterer=Xt,a.TgPolygon=lr,a.TgPolyline=hr,a.TgRectangle=cr,a.TgScaleControl=Xi,a.TgStreetViewControl=Qi,a.TgTrafficLayer=ir,a.TgZoomControl=er,a.TrafficLayer=li,a.UnionIcon=Oe,a.assert=ne,a.assertNever=Ge,a.callHook=Be,a.computedSaveOnThis=un,a.createAsyncSingleton=ei,a.createEmptyVNode=Le,a.createPropertyObject=Fi,a.createPropertyObjectTyped=pn,a.debug=Tr,a.default=Hn,a.eventProp=x,a.extractVNodeFromSlotsByComponent=mn,a.findAncestorComponentByType=We,a.findByComponentType=gn,a.getDestination=ur,a.getTgMapConfig=Kt,a.isComponentByType=Ze,a.isDef=Cr,a.isEntryValueDef=Qt,a.isInstanceOf=vr,a.lateinit=yr,a.loadCachedMap=Hi,a.noop=le,a.optionalProp=T,a.path=Gi,a.requiredProp=N,a.safeAs=_r,a.safeAsComponent=St,a.setTgMapConfig=Wi,a.splitAttrs=Ui,a.stringEnumProp=V,a.stringUnionPropFromValues=ji,a.throwError=I,a.throwUnsupported=He,a.todo=Mr,a.typed=Ne,a.unwrapStringEnumValue=br,a.useEventLogMethods=fn,a.useSplittedAttrs=J,a.useTgMapInner=Pt,Object.defineProperties(a,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
18
18
|
//# sourceMappingURL=tg-map.umd.cjs.map
|