1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"8566dc59cf167e3471c2374f77ce66d586edb89e"};var o=(new e.Error).stack;o&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[o]="52b0adb9-4442-4d79-b907-6dcdecb275a5",e._sentryDebugIdIdentifier="sentry-dbid-52b0adb9-4442-4d79-b907-6dcdecb275a5")}catch(a){}}();import{ac as e,cG as o,cH as a,cI as n,cn as t,dx as s,cp as r,cm as i,ct as l,cv as d,cw as p,cq as c,cz as g,cB as u,W as O,Y as w,cC as y,cF as T}from"./index-KRfpCm9j.js";import{n as v,i as m}from"./plugin-component-config-B2ePcfBs-Cnxmvu5w.js";const f=e({name:"drawing-manager",__name:"drawing-manager",props:{circleOptions:{default:void 0},drawingControl:{type:Boolean,default:!0},drawingControlOptions:{default:void 0},drawingMode:{default:null},markerOptions:{default:void 0},polygonOptions:{default:void 0},polylineOptions:{default:void 0},rectangleOptions:{default:void 0},position:{default:void 0},drawingModes:{default:void 0},shapes:{default:void 0},drawingKey:{default:void 0},mapKey:{default:void 0},options:{default:void 0}},emits:["circlecomplete","markercomplete","polygoncomplete","polylinecomplete","rectanglecomplete","overlaycomplete","update:shapes","added:shape","removed:shape"],setup(e,{expose:f,emit:E}){var h,C,P,_;const M=e,b=E,R=o(),L=M.mapKey?a(M.mapKey):null==(C=null==(h=n("map-layer"))?void 0:h.exposed)?void 0:C.mapPromise;if(!L)throw new Error("The map promise was not built");const{promiseDeferred:G,promise:I}=t(M.drawingKey??s);r(M.drawingKey??s,I);const D=null==(_=null==(P=i())?void 0:P.excludeEventsOnAllComponents)?void 0:_.call(P);let B,N;const k=e=>{const o=new Error("[GmapVue] The Google Maps JavaScript API Drawing Library is unavailable. Google removed DrawingManager in Maps JavaScript API v3.65+. Use editable Maps shapes, the Data layer/GeoJSON, or a third-party drawing library such as Terra Draw instead.");return o.name="GmapVueDrawingLibraryUnavailableError",e&&(o.cause=e),o};L.then(async e=>{var o,a;if(!e)throw new Error("the map instance is not defined");let n;B=e;try{n=await google.maps.importLibrary("drawing")}catch(O){throw k(O)}const{DrawingManager:t}=n,s=n.OverlayType??(null==(o=google.maps.drawing)?void 0:o.OverlayType);if(!t||!s)throw k();const r={drawingModes:[s.MARKER,s.CIRCLE,s.POLYGON,s.POLYLINE,s.RECTANGLE],position:google.maps.ControlPosition.TOP_CENTER},i={map:e,...l(M),...M.options},c=new t({...i,drawingControlOptions:{...r,...i.drawingControlOptions},drawingControl:R.default?!R.default:M.drawingControl}),g=v("GmvDrawingManager"),u=m("GmvDrawingManager","auto");if(d(g,c,b,M),p(u,c,b,D),c.addListener("overlaycomplete",async e=>{await A(e)}),e.addListener("click",K),null!=(a=M.shapes)&&a.length&&H(),!G.resolve)throw new Error("drawingPromiseDeferred.resolve is undefined");G.resolve(c)}).catch(e=>{var o;const a=e instanceof Error?e:k(e);null==(o=G.reject)||o.call(G,a)});const F=T(()=>{switch(M.position){case"TOP_CENTER":default:return google.maps.ControlPosition.TOP_CENTER;case"TOP_LEFT":return google.maps.ControlPosition.TOP_LEFT;case"TOP_RIGHT":return google.maps.ControlPosition.TOP_RIGHT;case"BOTTOM_CENTER":return google.maps.ControlPosition.BOTTOM_CENTER;case"BOTTOM_LEFT":return google.maps.ControlPosition.BOTTOM_LEFT;case"BOTTOM_RIGHT":return google.maps.ControlPosition.BOTTOM_RIGHT;case"LEFT_BOTTOM":return google.maps.ControlPosition.LEFT_BOTTOM;case"LEFT_CENTER":return google.maps.ControlPosition.LEFT_CENTER;case"LEFT_TOP":return google.maps.ControlPosition.LEFT_TOP;case"RIGHT_BOTTOM":return google.maps.ControlPosition.RIGHT_BOTTOM;case"RIGHT_CENTER":return google.maps.ControlPosition.RIGHT_CENTER;case"RIGHT_TOP":return google.maps.ControlPosition.RIGHT_TOP}}),H=()=>{var e;null==(e=M.shapes)||e.forEach(e=>{if(!B)throw new Error("the map instance is not defined");e.overlay.setMap(B),google.maps.event.addListener(e.overlay,"click",()=>{x(e)})})},K=()=>{null!=N&&N.overlay&&(N.overlay.set("fillColor","#777"),N.overlay.set("strokeColor","#999"),N.overlay.setOptions({editable:!1}),N.overlay.setDraggable(!1),N=void 0)},x=e=>{K(),e.overlay.setOptions({editable:!0}),e.overlay.setDraggable(!0),N=e,N.overlay.set("fillColor","#555"),N.overlay.set("strokeColor","#777")},A=async e=>{var o;await S(null),b("added:shape",e),b("update:shapes",[...null!=(o=M.shapes)&&o.length?M.shapes:[],e]),google.maps.event.addListener(e.overlay,"click",()=>{x(e)}),google.maps.event.addListener(e.overlay,"rightclick",()=>{Y()}),x(e)},S=async e=>{const o=await I;o&&o.setDrawingMode(e)},Y=()=>{var e,o;if(null!=N&&N.overlay){N.overlay.setMap(null);const a=null==(e=M.shapes)?void 0:e.indexOf(N);if(a&&a>=0){const e=[...null!=(o=M.shapes)&&o.length?M.shapes:[]],[n]=e.splice(a,1);n&&b("removed:shape",n),b("update:shapes",e)}}};return c(()=>M.drawingControlOptions,async(e,o)=>{const a=await I;a&&e&&e!==o&&a.setOptions({drawingControlOptions:{...o,...e}})}),c(()=>M.position,async(e,o)=>{const a=await I;a&&e&&e!==o&&a.setOptions({drawingControlOptions:{position:F.value}})}),c(()=>M.drawingModes,async(e,o)=>{const a=await I;a&&e&&e!==o&&a.setOptions({drawingControlOptions:{drawingModes:e}})}),c(()=>M.drawingControlOptions,async e=>{const o=await I;o&&e&&o.setOptions({drawingControlOptions:e})}),c(()=>M.circleOptions,async e=>{const o=await I;o&&e&&o.setOptions({circleOptions:e})}),c(()=>M.markerOptions,async e=>{const o=await I;o&&e&&o.setOptions({markerOptions:e})}),c(()=>M.polygonOptions,async e=>{const o=await I;o&&e&&o.setOptions({polygonOptions:e})}),c(()=>M.polylineOptions,async e=>{const o=await I;o&&e&&o.setOptions({polylineOptions:e})}),c(()=>M.rectangleOptions,async e=>{const o=await I;o&&e&&o.setOptions({rectangleOptions:e})}),g(async()=>{const e=await I.catch(()=>{});null==e||e.setMap(null),u(M.drawingKey??s)}),f({setDrawingMode:S,deleteSelection:Y,clearAll:()=>{var e;
1K(),null==(e=M.shapes)||e.forEach(e=>{e.overlay.setMap(null)})},drawingManagerPromise:I}),(e,o)=>(O(),w("div",null,[y(e.$slots,"default",{deleteSelection:Y,setDrawingMode:S})]))}});export{f as default}; 2//# sourceMappingURL=drawing-manager-l9quVue6-BDjGXvxJ.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.