@loongbao-web-gis-utils/draw-utils-core 0.1.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +28 -0
- package/dist/index.d.ts +288 -9
- package/dist/index.js +5369 -5
- package/package.json +25 -7
- package/dist/DrawTool.d.ts +0 -50
- package/dist/DrawTool.js +0 -358
- package/dist/adapter/index.d.ts +0 -48
- package/dist/adapter/index.js +0 -1
- package/dist/state-machine/index.d.ts +0 -12
- package/dist/state-machine/index.js +0 -42
- package/dist/types/config.d.ts +0 -69
- package/dist/types/config.js +0 -7
- package/dist/types/feature.d.ts +0 -60
- package/dist/types/feature.js +0 -1
- package/dist/types/index.d.ts +0 -4
- package/dist/types/index.js +0 -2
- package/dist/types/state.d.ts +0 -6
- package/dist/types/state.js +0 -7
- package/dist/utils/index.d.ts +0 -11
- package/dist/utils/index.js +0 -101
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";var si=Object.defineProperty;var oi=(e,t,n)=>t in e?si(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var he=(e,t,n)=>oi(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Rs={limit:1,enableLimitMsg:!1,enableEdit:!1,enableDel:!1,showLenOnInsert:!1,showAreaOnInsert:!1,showLenForAll:!1,showAreaForAll:!1,debug:!1},Fs={name:"",lineWidth:2,lineType:"solid",strokeLineDash:"15 15 15 15",lineRgba:"rgba(255,0,0,1)",fillRgba:"rgba(255,0,0,0.5)",textRgba:"rgba(255,255,255,1)"},$s={name:"",lineWidth:2,lineType:"solid",strokeLineDash:"15 15 15 15",lineRgba:"rgba(0,0,255,1)",fillRgba:"rgba(0,0,255,0.5)",textRgba:"rgba(255,255,255,1)"},js={name:"",radius:0,lineWidth:2,lineType:"solid",strokeLineDash:"15 15 15 15",lineRgba:"rgba(34,197,94,1)",fillRgba:"rgba(34,197,94,0.5)",textRgba:"rgba(255,255,255,1)"},Hs={name:"",lineWidth:2,lineType:"solid",strokeLineDash:"15 15 15 15",lineRgba:"rgba(234,179,8,1)",textRgba:"rgba(255,255,255,1)"},Us={name:"",lineWidth:2,lineType:"solid",strokeLineDash:"15 15 15 15",lineRgba:"rgba(234,179,8,1)",textRgba:"rgba(255,255,255,1)"},ks={name:"",lineWidth:2,lineType:"solid",strokeLineDash:"15 15 15 15",lineRgba:"rgba(139,92,246,1)",fillRgba:"rgba(139,92,246,0.5)",textRgba:"rgba(255,255,255,1)"};var J=(e=>(e.IDLE="idle",e.DRAWING="drawing",e.EDITING="editing",e.DELETING="deleting",e))(J||{});class Ws{constructor(){he(this,"currentState",J.IDLE)}get state(){return this.currentState}canTransitionTo(t){switch(this.currentState){case J.IDLE:return[J.DRAWING,J.EDITING,J.DELETING].includes(t);case J.DRAWING:return t===J.IDLE;case J.EDITING:return t===J.IDLE;case J.DELETING:return t===J.IDLE;default:return!1}}transitionTo(t){if(!this.canTransitionTo(t))throw new Error(`Invalid state transition from ${this.currentState} to ${t}`);this.currentState=t}forceTransitionTo(t){this.currentState=t}isIdle(){return this.currentState===J.IDLE}isDrawing(){return this.currentState===J.DRAWING}isEditing(){return this.currentState===J.EDITING}isDeleting(){return this.currentState===J.DELETING}}let Gr=0;function Bs(){return Gr+=1,Date.now()*100+Gr}function er(e=8){const t="abcdefghijklmnopqrstuvwxyz0123456789";let n="";for(let r=0;r<e;r++)n+=t.charAt(Math.floor(Math.random()*t.length));return n}function ii(e,t){let n=!1;const[r,s]=e;let o=t.length-1;for(let i=0;i<t.length;i++){const[l,u]=t[i],[p,a]=t[o];u>s!=a>s&&r<(p-l)*(s-u)/(a-u)+l&&(n=!n),o=i}return n}function li(e){const t=e.match(/\((.*)\)/);if(!t)throw new Error(`Invalid WKT: ${e}`);let n=t[1];return n=n.replace(/^\(/,"").replace(/\)$/,""),n.split(",").map(r=>{const[s,o]=r.trim().split(/\s+/).map(Number);return[s,o]})}function jt(e){return`POLYGON((${e.map(([n,r])=>`${n} ${r}`).join(", ")}))`}function tr(e){return`LINESTRING(${e.map(([n,r])=>`${n} ${r}`).join(", ")})`}function Dt(e,t){const r=(t[1]-e[1])*Math.PI/180,s=(t[0]-e[0])*Math.PI/180,o=e[1]*Math.PI/180,i=t[1]*Math.PI/180,l=Math.sin(r/2),u=Math.sin(s/2),p=l*l+Math.cos(o)*Math.cos(i)*u*u;return 2*6371e3*Math.atan2(Math.sqrt(p),Math.sqrt(1-p))}function Ks(e){const t=e.length;if(t<3)return 0;let n=0;for(let l=0;l<t;l++){const u=(l+1)%t;n+=e[l][0]*e[u][1],n-=e[u][0]*e[l][1]}n=Math.abs(n)/2;const s=e.reduce((l,u)=>l+u[1],0)/t*Math.PI/180,o=111320*Math.cos(s);return n*o*111320}function Gs(e){const t=e.length;let n=0,r=0;for(const s of e)n+=s[0],r+=s[1];return[n/t,r/t]}function ft(e){return e<.01?"0.00米":e<1?e.toFixed(2)+"米":e<1e3?e.toFixed(1)+"米":(e/1e3).toFixed(2)+"千米"}function gn(e){return e<.01?"0.00㎡":e<1?e.toFixed(2)+"㎡":e<1e4?e.toFixed(1)+"㎡":(e/1e6).toFixed(2)+"k㎡"}/**
|
|
2
|
+
* @vue/shared v3.5.34
|
|
3
|
+
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
4
|
+
* @license MIT
|
|
5
|
+
**/function Qe(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const q=process.env.NODE_ENV!=="production"?Object.freeze({}):{},Wt=process.env.NODE_ENV!=="production"?Object.freeze([]):[],ee=()=>{},zs=()=>!1,nn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Jt=e=>e.startsWith("onUpdate:"),ne=Object.assign,mr=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},ci=Object.prototype.hasOwnProperty,U=(e,t)=>ci.call(e,t),M=Array.isArray,wt=e=>rn(e)==="[object Map]",ui=e=>rn(e)==="[object Set]",zr=e=>rn(e)==="[object Date]",L=e=>typeof e=="function",X=e=>typeof e=="string",Xe=e=>typeof e=="symbol",B=e=>e!==null&&typeof e=="object",vr=e=>(B(e)||L(e))&&L(e.then)&&L(e.catch),ai=Object.prototype.toString,rn=e=>ai.call(e),Er=e=>rn(e).slice(8,-1),fi=e=>rn(e)==="[object Object]",br=e=>X(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Bt=Qe(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),di=Qe("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),Pn=e=>{const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},pi=/-\w/g,Ee=Pn(e=>e.replace(pi,t=>t.slice(1).toUpperCase())),hi=/\B([A-Z])/g,it=Pn(e=>e.replace(hi,"-$1").toLowerCase()),Ln=Pn(e=>e.charAt(0).toUpperCase()+e.slice(1)),dt=Pn(e=>e?`on${Ln(e)}`:""),Ue=(e,t)=>!Object.is(e,t),Lt=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},On=(e,t,n,r=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},gi=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let qr;const ot=()=>qr||(qr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function yr(e){if(M(e)){const t={};for(let n=0;n<e.length;n++){const r=e[n],s=X(r)?Ei(r):yr(r);if(s)for(const o in s)t[o]=s[o]}return t}else if(X(e)||B(e))return e}const _i=/;(?![^(]*\))/g,mi=/:([^]+)/,vi=/\/\*[^]*?\*\//g;function Ei(e){const t={};return e.replace(vi,"").split(_i).forEach(n=>{if(n){const r=n.split(mi);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function Nr(e){let t="";if(X(e))t=e;else if(M(e))for(let n=0;n<e.length;n++){const r=Nr(e[n]);r&&(t+=r+" ")}else if(B(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}const bi="html,body,base,head,link,meta,style,title,address,article,aside,footer,header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,summary,template,blockquote,iframe,tfoot",yi="svg,animate,animateMotion,animateTransform,circle,clipPath,color-profile,defs,desc,discard,ellipse,feBlend,feColorMatrix,feComponentTransfer,feComposite,feConvolveMatrix,feDiffuseLighting,feDisplacementMap,feDistantLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,feGaussianBlur,feImage,feMerge,feMergeNode,feMorphology,feOffset,fePointLight,feSpecularLighting,feSpotLight,feTile,feTurbulence,filter,foreignObject,g,hatch,hatchpath,image,line,linearGradient,marker,mask,mesh,meshgradient,meshpatch,meshrow,metadata,mpath,path,pattern,polygon,polyline,radialGradient,rect,set,solidcolor,stop,switch,symbol,text,textPath,title,tspan,unknown,use,view",Ni="annotation,annotation-xml,maction,maligngroup,malignmark,math,menclose,merror,mfenced,mfrac,mfraction,mglyph,mi,mlabeledtr,mlongdiv,mmultiscripts,mn,mo,mover,mpadded,mphantom,mprescripts,mroot,mrow,ms,mscarries,mscarry,msgroup,msline,mspace,msqrt,msrow,mstack,mstyle,msub,msubsup,msup,mtable,mtd,mtext,mtr,munder,munderover,none,semantics",Oi=Qe(bi),Di=Qe(yi),xi=Qe(Ni),wi="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",Ti=Qe(wi);function qs(e){return!!e||e===""}function Vi(e,t){if(e.length!==t.length)return!1;let n=!0;for(let r=0;n&&r<e.length;r++)n=Or(e[r],t[r]);return n}function Or(e,t){if(e===t)return!0;let n=zr(e),r=zr(t);if(n||r)return n&&r?e.getTime()===t.getTime():!1;if(n=Xe(e),r=Xe(t),n||r)return e===t;if(n=M(e),r=M(t),n||r)return n&&r?Vi(e,t):!1;if(n=B(e),r=B(t),n||r){if(!n||!r)return!1;const s=Object.keys(e).length,o=Object.keys(t).length;if(s!==o)return!1;for(const i in e){const l=e.hasOwnProperty(i),u=t.hasOwnProperty(i);if(l&&!u||!l&&u||!Or(e[i],t[i]))return!1}}return String(e)===String(t)}/**
|
|
6
|
+
* @vue/reactivity v3.5.34
|
|
7
|
+
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
8
|
+
* @license MIT
|
|
9
|
+
**/function Ie(e,...t){console.warn(`[Vue warn] ${e}`,...t)}let fe;class Si{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&fe&&(fe.active?(this.parent=fe,this.index=(fe.scopes||(fe.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].pause();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].resume();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].resume()}}run(t){if(this._active){const n=fe;try{return fe=this,t()}finally{fe=n}}else process.env.NODE_ENV!=="production"&&this._warnOnRun&&Ie("cannot run an inactive effect scope.")}on(){++this._on===1&&(this.prevScope=fe,fe=this)}off(){if(this._on>0&&--this._on===0){if(fe===this)fe=this.prevScope;else{let t=fe;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let n,r;for(n=0,r=this.effects.length;n<r;n++)this.effects[n].stop();for(this.effects.length=0,n=0,r=this.cleanups.length;n<r;n++)this.cleanups[n]();if(this.cleanups.length=0,this.scopes){for(n=0,r=this.scopes.length;n<r;n++)this.scopes[n].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const s=this.parent.scopes.pop();s&&s!==this&&(this.parent.scopes[this.index]=s,s.index=this.index)}this.parent=void 0}}}function Ii(){return fe}let G;const Bn=new WeakSet;class Ys{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,fe&&(fe.active?fe.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Bn.has(this)&&(Bn.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||Xs(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,Yr(this),Zs(this);const t=G,n=Ve;G=this,Ve=!0;try{return this.fn()}finally{process.env.NODE_ENV!=="production"&&G!==this&&Ie("Active effect was not restored correctly - this is likely a Vue internal bug."),Qs(this),G=t,Ve=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)wr(t);this.deps=this.depsTail=void 0,Yr(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Bn.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){nr(this)&&this.run()}get dirty(){return nr(this)}}let Js=0,Kt,Gt;function Xs(e,t=!1){if(e.flags|=8,t){e.next=Gt,Gt=e;return}e.next=Kt,Kt=e}function Dr(){Js++}function xr(){if(--Js>0)return;if(Gt){let t=Gt;for(Gt=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Kt;){let t=Kt;for(Kt=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(r){e||(e=r)}t=n}}if(e)throw e}function Zs(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Qs(e){let t,n=e.depsTail,r=n;for(;r;){const s=r.prevDep;r.version===-1?(r===n&&(n=s),wr(r),Ci(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=s}e.deps=t,e.depsTail=n}function nr(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(eo(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function eo(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Xt)||(e.globalVersion=Xt,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!nr(e))))return;e.flags|=2;const t=e.dep,n=G,r=Ve;G=e,Ve=!0;try{Zs(e);const s=e.fn(e._value);(t.version===0||Ue(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{G=n,Ve=r,Qs(e),e.flags&=-3}}function wr(e,t=!1){const{dep:n,prevSub:r,nextSub:s}=e;if(r&&(r.nextSub=s,e.prevSub=void 0),s&&(s.prevSub=r,e.nextSub=void 0),process.env.NODE_ENV!=="production"&&n.subsHead===e&&(n.subsHead=s),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let o=n.computed.deps;o;o=o.nextDep)wr(o,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Ci(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Ve=!0;const to=[];function Ce(){to.push(Ve),Ve=!1}function Ae(){const e=to.pop();Ve=e===void 0?!0:e}function Yr(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=G;G=void 0;try{t()}finally{G=n}}}let Xt=0;class Ai{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Tr{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0,process.env.NODE_ENV!=="production"&&(this.subsHead=void 0)}track(t){if(!G||!Ve||G===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==G)n=this.activeLink=new Ai(G,this),G.deps?(n.prevDep=G.depsTail,G.depsTail.nextDep=n,G.depsTail=n):G.deps=G.depsTail=n,no(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const r=n.nextDep;r.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=r),n.prevDep=G.depsTail,n.nextDep=void 0,G.depsTail.nextDep=n,G.depsTail=n,G.deps===n&&(G.deps=r)}return process.env.NODE_ENV!=="production"&&G.onTrack&&G.onTrack(ne({effect:G},t)),n}trigger(t){this.version++,Xt++,this.notify(t)}notify(t){Dr();try{if(process.env.NODE_ENV!=="production")for(let n=this.subsHead;n;n=n.nextSub)n.sub.onTrigger&&!(n.sub.flags&8)&&n.sub.onTrigger(ne({effect:n.sub},t));for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{xr()}}}function no(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let r=t.deps;r;r=r.nextDep)no(r)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),process.env.NODE_ENV!=="production"&&e.dep.subsHead===void 0&&(e.dep.subsHead=e),e.dep.subs=e}}const rr=new WeakMap,ht=Symbol(process.env.NODE_ENV!=="production"?"Object iterate":""),sr=Symbol(process.env.NODE_ENV!=="production"?"Map keys iterate":""),Zt=Symbol(process.env.NODE_ENV!=="production"?"Array iterate":"");function se(e,t,n){if(Ve&&G){let r=rr.get(e);r||rr.set(e,r=new Map);let s=r.get(n);s||(r.set(n,s=new Tr),s.map=r,s.key=n),process.env.NODE_ENV!=="production"?s.track({target:e,type:t,key:n}):s.track()}}function ke(e,t,n,r,s,o){const i=rr.get(e);if(!i){Xt++;return}const l=u=>{u&&(process.env.NODE_ENV!=="production"?u.trigger({target:e,type:t,key:n,newValue:r,oldValue:s,oldTarget:o}):u.trigger())};if(Dr(),t==="clear")i.forEach(l);else{const u=M(e),p=u&&br(n);if(u&&n==="length"){const a=Number(r);i.forEach((f,g)=>{(g==="length"||g===Zt||!Xe(g)&&g>=a)&&l(f)})}else switch((n!==void 0||i.has(void 0))&&l(i.get(n)),p&&l(i.get(Zt)),t){case"add":u?p&&l(i.get("length")):(l(i.get(ht)),wt(e)&&l(i.get(sr)));break;case"delete":u||(l(i.get(ht)),wt(e)&&l(i.get(sr)));break;case"set":wt(e)&&l(i.get(ht));break}}xr()}function bt(e){const t=R(e);return t===e?t:(se(t,"iterate",Zt),be(e)?t:t.map(Ze))}function Vr(e){return se(e=R(e),"iterate",Zt),e}function je(e,t){return Be(e)?Qt(gt(e)?Ze(t):t):Ze(t)}const Mi={__proto__:null,[Symbol.iterator](){return Kn(this,Symbol.iterator,e=>je(this,e))},concat(...e){return bt(this).concat(...e.map(t=>M(t)?bt(t):t))},entries(){return Kn(this,"entries",e=>(e[1]=je(this,e[1]),e))},every(e,t){return Ge(this,"every",e,t,void 0,arguments)},filter(e,t){return Ge(this,"filter",e,t,n=>n.map(r=>je(this,r)),arguments)},find(e,t){return Ge(this,"find",e,t,n=>je(this,n),arguments)},findIndex(e,t){return Ge(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Ge(this,"findLast",e,t,n=>je(this,n),arguments)},findLastIndex(e,t){return Ge(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Ge(this,"forEach",e,t,void 0,arguments)},includes(...e){return Gn(this,"includes",e)},indexOf(...e){return Gn(this,"indexOf",e)},join(e){return bt(this).join(e)},lastIndexOf(...e){return Gn(this,"lastIndexOf",e)},map(e,t){return Ge(this,"map",e,t,void 0,arguments)},pop(){return Rt(this,"pop")},push(...e){return Rt(this,"push",e)},reduce(e,...t){return Jr(this,"reduce",e,t)},reduceRight(e,...t){return Jr(this,"reduceRight",e,t)},shift(){return Rt(this,"shift")},some(e,t){return Ge(this,"some",e,t,void 0,arguments)},splice(...e){return Rt(this,"splice",e)},toReversed(){return bt(this).toReversed()},toSorted(e){return bt(this).toSorted(e)},toSpliced(...e){return bt(this).toSpliced(...e)},unshift(...e){return Rt(this,"unshift",e)},values(){return Kn(this,"values",e=>je(this,e))}};function Kn(e,t,n){const r=Vr(e),s=r[t]();return r!==e&&!be(e)&&(s._next=s.next,s.next=()=>{const o=s._next();return o.done||(o.value=n(o.value)),o}),s}const Pi=Array.prototype;function Ge(e,t,n,r,s,o){const i=Vr(e),l=i!==e&&!be(e),u=i[t];if(u!==Pi[t]){const f=u.apply(e,o);return l?Ze(f):f}let p=n;i!==e&&(l?p=function(f,g){return n.call(this,je(e,f),g,e)}:n.length>2&&(p=function(f,g){return n.call(this,f,g,e)}));const a=u.call(i,p,r);return l&&s?s(a):a}function Jr(e,t,n,r){const s=Vr(e),o=s!==e&&!be(e);let i=n,l=!1;s!==e&&(o?(l=r.length===0,i=function(p,a,f){return l&&(l=!1,p=je(e,p)),n.call(this,p,je(e,a),f,e)}):n.length>3&&(i=function(p,a,f){return n.call(this,p,a,f,e)}));const u=s[t](i,...r);return l?je(e,u):u}function Gn(e,t,n){const r=R(e);se(r,"iterate",Zt);const s=r[t](...n);return(s===-1||s===!1)&&Dn(n[0])?(n[0]=R(n[0]),r[t](...n)):s}function Rt(e,t,n=[]){Ce(),Dr();const r=R(e)[t].apply(e,n);return xr(),Ae(),r}const Li=Qe("__proto__,__v_isRef,__isVue"),ro=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Xe));function Ri(e){Xe(e)||(e=String(e));const t=R(this);return se(t,"has",e),t.hasOwnProperty(e)}class so{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,r){if(n==="__v_skip")return t.__v_skip;const s=this._isReadonly,o=this._isShallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return o;if(n==="__v_raw")return r===(s?o?ao:uo:o?co:lo).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(r)?t:void 0;const i=M(t);if(!s){let u;if(i&&(u=Mi[n]))return u;if(n==="hasOwnProperty")return Ri}const l=Reflect.get(t,n,te(t)?t:r);if((Xe(n)?ro.has(n):Li(n))||(s||se(t,"get",n),o))return l;if(te(l)){const u=i&&br(n)?l:l.value;return s&&B(u)?ir(u):u}return B(l)?s?ir(l):Sr(l):l}}class oo extends so{constructor(t=!1){super(!1,t)}set(t,n,r,s){let o=t[n];const i=M(t)&&br(n);if(!this._isShallow){const p=Be(o);if(!be(r)&&!Be(r)&&(o=R(o),r=R(r)),!i&&te(o)&&!te(r))return p?(process.env.NODE_ENV!=="production"&&Ie(`Set operation on key "${String(n)}" failed: target is readonly.`,t[n]),!0):(o.value=r,!0)}const l=i?Number(n)<t.length:U(t,n),u=Reflect.set(t,n,r,te(t)?t:s);return t===R(s)&&(l?Ue(r,o)&&ke(t,"set",n,r,o):ke(t,"add",n,r)),u}deleteProperty(t,n){const r=U(t,n),s=t[n],o=Reflect.deleteProperty(t,n);return o&&r&&ke(t,"delete",n,void 0,s),o}has(t,n){const r=Reflect.has(t,n);return(!Xe(n)||!ro.has(n))&&se(t,"has",n),r}ownKeys(t){return se(t,"iterate",M(t)?"length":ht),Reflect.ownKeys(t)}}class io extends so{constructor(t=!1){super(!0,t)}set(t,n){return process.env.NODE_ENV!=="production"&&Ie(`Set operation on key "${String(n)}" failed: target is readonly.`,t),!0}deleteProperty(t,n){return process.env.NODE_ENV!=="production"&&Ie(`Delete operation on key "${String(n)}" failed: target is readonly.`,t),!0}}const Fi=new oo,$i=new io,ji=new oo(!0),Hi=new io(!0),or=e=>e,dn=e=>Reflect.getPrototypeOf(e);function Ui(e,t,n){return function(...r){const s=this.__v_raw,o=R(s),i=wt(o),l=e==="entries"||e===Symbol.iterator&&i,u=e==="keys"&&i,p=s[e](...r),a=n?or:t?Qt:Ze;return!t&&se(o,"iterate",u?sr:ht),ne(Object.create(p),{next(){const{value:f,done:g}=p.next();return g?{value:f,done:g}:{value:l?[a(f[0]),a(f[1])]:a(f),done:g}}})}}function pn(e){return function(...t){if(process.env.NODE_ENV!=="production"){const n=t[0]?`on key "${t[0]}" `:"";Ie(`${Ln(e)} operation ${n}failed: target is readonly.`,R(this))}return e==="delete"?!1:e==="clear"?void 0:this}}function ki(e,t){const n={get(s){const o=this.__v_raw,i=R(o),l=R(s);e||(Ue(s,l)&&se(i,"get",s),se(i,"get",l));const{has:u}=dn(i),p=t?or:e?Qt:Ze;if(u.call(i,s))return p(o.get(s));if(u.call(i,l))return p(o.get(l));o!==i&&o.get(s)},get size(){const s=this.__v_raw;return!e&&se(R(s),"iterate",ht),s.size},has(s){const o=this.__v_raw,i=R(o),l=R(s);return e||(Ue(s,l)&&se(i,"has",s),se(i,"has",l)),s===l?o.has(s):o.has(s)||o.has(l)},forEach(s,o){const i=this,l=i.__v_raw,u=R(l),p=t?or:e?Qt:Ze;return!e&&se(u,"iterate",ht),l.forEach((a,f)=>s.call(o,p(a),p(f),i))}};return ne(n,e?{add:pn("add"),set:pn("set"),delete:pn("delete"),clear:pn("clear")}:{add(s){const o=R(this),i=dn(o),l=R(s),u=!t&&!be(s)&&!Be(s)?l:s;return i.has.call(o,u)||Ue(s,u)&&i.has.call(o,s)||Ue(l,u)&&i.has.call(o,l)||(o.add(u),ke(o,"add",u,u)),this},set(s,o){!t&&!be(o)&&!Be(o)&&(o=R(o));const i=R(this),{has:l,get:u}=dn(i);let p=l.call(i,s);p?process.env.NODE_ENV!=="production"&&Xr(i,l,s):(s=R(s),p=l.call(i,s));const a=u.call(i,s);return i.set(s,o),p?Ue(o,a)&&ke(i,"set",s,o,a):ke(i,"add",s,o),this},delete(s){const o=R(this),{has:i,get:l}=dn(o);let u=i.call(o,s);u?process.env.NODE_ENV!=="production"&&Xr(o,i,s):(s=R(s),u=i.call(o,s));const p=l?l.call(o,s):void 0,a=o.delete(s);return u&&ke(o,"delete",s,void 0,p),a},clear(){const s=R(this),o=s.size!==0,i=process.env.NODE_ENV!=="production"?wt(s)?new Map(s):new Set(s):void 0,l=s.clear();return o&&ke(s,"clear",void 0,void 0,i),l}}),["keys","values","entries",Symbol.iterator].forEach(s=>{n[s]=Ui(s,e,t)}),n}function Rn(e,t){const n=ki(e,t);return(r,s,o)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?r:Reflect.get(U(n,s)&&s in r?n:r,s,o)}const Wi={get:Rn(!1,!1)},Bi={get:Rn(!1,!0)},Ki={get:Rn(!0,!1)},Gi={get:Rn(!0,!0)};function Xr(e,t,n){const r=R(n);if(r!==n&&t.call(e,r)){const s=Er(e);Ie(`Reactive ${s} contains both the raw and reactive versions of the same object${s==="Map"?" as keys":""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`)}}const lo=new WeakMap,co=new WeakMap,uo=new WeakMap,ao=new WeakMap;function zi(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function qi(e){return e.__v_skip||!Object.isExtensible(e)?0:zi(Er(e))}function Sr(e){return Be(e)?e:Fn(e,!1,Fi,Wi,lo)}function Yi(e){return Fn(e,!1,ji,Bi,co)}function ir(e){return Fn(e,!0,$i,Ki,uo)}function We(e){return Fn(e,!0,Hi,Gi,ao)}function Fn(e,t,n,r,s){if(!B(e))return process.env.NODE_ENV!=="production"&&Ie(`value cannot be made ${t?"readonly":"reactive"}: ${String(e)}`),e;if(e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=qi(e);if(o===0)return e;const i=s.get(e);if(i)return i;const l=new Proxy(e,o===2?r:n);return s.set(e,l),l}function gt(e){return Be(e)?gt(e.__v_raw):!!(e&&e.__v_isReactive)}function Be(e){return!!(e&&e.__v_isReadonly)}function be(e){return!!(e&&e.__v_isShallow)}function Dn(e){return e?!!e.__v_raw:!1}function R(e){const t=e&&e.__v_raw;return t?R(t):e}function Ji(e){return!U(e,"__v_skip")&&Object.isExtensible(e)&&On(e,"__v_skip",!0),e}const Ze=e=>B(e)?Sr(e):e,Qt=e=>B(e)?ir(e):e;function te(e){return e?e.__v_isRef===!0:!1}function ye(e){return Xi(e,!1)}function Xi(e,t){return te(e)?e:new Zi(e,t)}class Zi{constructor(t,n){this.dep=new Tr,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:R(t),this._value=n?t:Ze(t),this.__v_isShallow=n}get value(){return process.env.NODE_ENV!=="production"?this.dep.track({target:this,type:"get",key:"value"}):this.dep.track(),this._value}set value(t){const n=this._rawValue,r=this.__v_isShallow||be(t)||Be(t);t=r?t:R(t),Ue(t,n)&&(this._rawValue=t,this._value=r?t:Ze(t),process.env.NODE_ENV!=="production"?this.dep.trigger({target:this,type:"set",key:"value",newValue:t,oldValue:n}):this.dep.trigger())}}function Qi(e){return te(e)?e.value:e}const el={get:(e,t,n)=>t==="__v_raw"?e:Qi(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const s=e[t];return te(s)&&!te(n)?(s.value=n,!0):Reflect.set(e,t,n,r)}};function fo(e){return gt(e)?e:new Proxy(e,el)}class tl{constructor(t,n,r){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Tr(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Xt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=r}notify(){if(this.flags|=16,!(this.flags&8)&&G!==this)return Xs(this,!0),!0;process.env.NODE_ENV}get value(){const t=process.env.NODE_ENV!=="production"?this.dep.track({target:this,type:"get",key:"value"}):this.dep.track();return eo(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter?this.setter(t):process.env.NODE_ENV!=="production"&&Ie("Write operation failed: computed value is readonly")}}function nl(e,t,n=!1){let r,s;L(e)?r=e:(r=e.get,s=e.set);const o=new tl(r,s,n);return process.env.NODE_ENV,o}const hn={},xn=new WeakMap;let pt;function rl(e,t=!1,n=pt){if(n){let r=xn.get(n);r||xn.set(n,r=[]),r.push(e)}else process.env.NODE_ENV!=="production"&&!t&&Ie("onWatcherCleanup() was called when there was no active watcher to associate with.")}function sl(e,t,n=q){const{immediate:r,deep:s,once:o,scheduler:i,augmentJob:l,call:u}=n,p=T=>{(n.onWarn||Ie)("Invalid watch source: ",T,"A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.")},a=T=>s?T:be(T)||s===!1||s===0?st(T,1):st(T);let f,g,b,S,w=!1,Y=!1;if(te(e)?(g=()=>e.value,w=be(e)):gt(e)?(g=()=>a(e),w=!0):M(e)?(Y=!0,w=e.some(T=>gt(T)||be(T)),g=()=>e.map(T=>{if(te(T))return T.value;if(gt(T))return a(T);if(L(T))return u?u(T,2):T();process.env.NODE_ENV!=="production"&&p(T)})):L(e)?t?g=u?()=>u(e,2):e:g=()=>{if(b){Ce();try{b()}finally{Ae()}}const T=pt;pt=f;try{return u?u(e,3,[S]):e(S)}finally{pt=T}}:(g=ee,process.env.NODE_ENV!=="production"&&p(e)),t&&s){const T=g,Z=s===!0?1/0:s;g=()=>st(T(),Z)}const W=Ii(),$=()=>{f.stop(),W&&W.active&&mr(W.effects,f)};if(o&&t){const T=t;t=(...Z)=>{T(...Z),$()}}let F=Y?new Array(e.length).fill(hn):hn;const oe=T=>{if(!(!(f.flags&1)||!f.dirty&&!T))if(t){const Z=f.run();if(s||w||(Y?Z.some((de,ie)=>Ue(de,F[ie])):Ue(Z,F))){b&&b();const de=pt;pt=f;try{const ie=[Z,F===hn?void 0:Y&&F[0]===hn?[]:F,S];F=Z,u?u(t,3,ie):t(...ie)}finally{pt=de}}}else f.run()};return l&&l(oe),f=new Ys(g),f.scheduler=i?()=>i(oe,!1):oe,S=T=>rl(T,!1,f),b=f.onStop=()=>{const T=xn.get(f);if(T){if(u)u(T,4);else for(const Z of T)Z();xn.delete(f)}},process.env.NODE_ENV!=="production"&&(f.onTrack=n.onTrack,f.onTrigger=n.onTrigger),t?r?oe(!0):F=f.run():i?i(oe.bind(null,!0),!0):f.run(),$.pause=f.pause.bind(f),$.resume=f.resume.bind(f),$.stop=$,$}function st(e,t=1/0,n){if(t<=0||!B(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,te(e))st(e.value,t,n);else if(M(e))for(let r=0;r<e.length;r++)st(e[r],t,n);else if(ui(e)||wt(e))e.forEach(r=>{st(r,t,n)});else if(fi(e)){for(const r in e)st(e[r],t,n);for(const r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&st(e[r],t,n)}return e}/**
|
|
10
|
+
* @vue/runtime-core v3.5.34
|
|
11
|
+
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
12
|
+
* @license MIT
|
|
13
|
+
**/const _t=[];function _n(e){_t.push(e)}function mn(){_t.pop()}let zn=!1;function O(e,...t){if(zn)return;zn=!0,Ce();const n=_t.length?_t[_t.length-1].component:null,r=n&&n.appContext.config.warnHandler,s=ol();if(r)It(r,n,11,[e+t.map(o=>{var i,l;return(l=(i=o.toString)==null?void 0:i.call(o))!=null?l:JSON.stringify(o)}).join(""),n&&n.proxy,s.map(({vnode:o})=>`at <${un(n,o.type)}>`).join(`
|
|
14
|
+
`),s]);else{const o=[`[Vue warn]: ${e}`,...t];s.length&&o.push(`
|
|
15
|
+
`,...il(s)),console.warn(...o)}Ae(),zn=!1}function ol(){let e=_t[_t.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const r=e.component&&e.component.parent;e=r&&r.vnode}return t}function il(e){const t=[];return e.forEach((n,r)=>{t.push(...r===0?[]:[`
|
|
16
|
+
`],...ll(n))}),t}function ll({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",r=e.component?e.component.parent==null:!1,s=` at <${un(e.component,e.type,r)}`,o=">"+n;return e.props?[s,...cl(e.props),o]:[s+o]}function cl(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(r=>{t.push(...po(r,e[r]))}),n.length>3&&t.push(" ..."),t}function po(e,t,n){return X(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:te(t)?(t=po(e,R(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):L(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=R(t),n?t:[`${e}=`,t])}const Ir={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush",15:"component update",16:"app unmount cleanup function"};function It(e,t,n,r){try{return r?e(...r):e()}catch(s){sn(s,t,n)}}function Ke(e,t,n,r){if(L(e)){const s=It(e,t,n,r);return s&&vr(s)&&s.catch(o=>{sn(o,t,n)}),s}if(M(e)){const s=[];for(let o=0;o<e.length;o++)s.push(Ke(e[o],t,n,r));return s}else process.env.NODE_ENV!=="production"&&O(`Invalid value type passed to callWithAsyncErrorHandling(): ${typeof e}`)}function sn(e,t,n,r=!0){const s=t?t.vnode:null,{errorHandler:o,throwUnhandledErrorInProduction:i}=t&&t.appContext.config||q;if(t){let l=t.parent;const u=t.proxy,p=process.env.NODE_ENV!=="production"?Ir[n]:`https://vuejs.org/error-reference/#runtime-${n}`;for(;l;){const a=l.ec;if(a){for(let f=0;f<a.length;f++)if(a[f](e,u,p)===!1)return}l=l.parent}if(o){Ce(),It(o,null,10,[e,u,p]),Ae();return}}ul(e,n,s,r,i)}function ul(e,t,n,r=!0,s=!1){if(process.env.NODE_ENV!=="production"){const o=Ir[t];if(n&&_n(n),O(`Unhandled error${o?` during execution of ${o}`:""}`),n&&mn(),r)throw e;console.error(e)}else{if(s)throw e;console.error(e)}}const _e=[];let $e=-1;const Tt=[];let rt=null,xt=0;const ho=Promise.resolve();let wn=null;const al=100;function fl(e){const t=wn||ho;return e?t.then(this?e.bind(this):e):t}function dl(e){let t=$e+1,n=_e.length;for(;t<n;){const r=t+n>>>1,s=_e[r],o=en(s);o<e||o===e&&s.flags&2?t=r+1:n=r}return t}function $n(e){if(!(e.flags&1)){const t=en(e),n=_e[_e.length-1];!n||!(e.flags&2)&&t>=en(n)?_e.push(e):_e.splice(dl(t),0,e),e.flags|=1,go()}}function go(){wn||(wn=ho.then(vo))}function _o(e){M(e)?Tt.push(...e):rt&&e.id===-1?rt.splice(xt+1,0,e):e.flags&1||(Tt.push(e),e.flags|=1),go()}function Zr(e,t,n=$e+1){for(process.env.NODE_ENV!=="production"&&(t=t||new Map);n<_e.length;n++){const r=_e[n];if(r&&r.flags&2){if(e&&r.id!==e.uid||process.env.NODE_ENV!=="production"&&Cr(t,r))continue;_e.splice(n,1),n--,r.flags&4&&(r.flags&=-2),r(),r.flags&4||(r.flags&=-2)}}}function mo(e){if(Tt.length){const t=[...new Set(Tt)].sort((n,r)=>en(n)-en(r));if(Tt.length=0,rt){rt.push(...t);return}for(rt=t,process.env.NODE_ENV!=="production"&&(e=e||new Map),xt=0;xt<rt.length;xt++){const n=rt[xt];process.env.NODE_ENV!=="production"&&Cr(e,n)||(n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2)}rt=null,xt=0}}const en=e=>e.id==null?e.flags&2?-1:1/0:e.id;function vo(e){process.env.NODE_ENV!=="production"&&(e=e||new Map);const t=process.env.NODE_ENV!=="production"?n=>Cr(e,n):ee;try{for($e=0;$e<_e.length;$e++){const n=_e[$e];if(n&&!(n.flags&8)){if(process.env.NODE_ENV!=="production"&&t(n))continue;n.flags&4&&(n.flags&=-2),It(n,n.i,n.i?15:14),n.flags&4||(n.flags&=-2)}}}finally{for(;$e<_e.length;$e++){const n=_e[$e];n&&(n.flags&=-2)}$e=-1,_e.length=0,mo(e),wn=null,(_e.length||Tt.length)&&vo(e)}}function Cr(e,t){const n=e.get(t)||0;if(n>al){const r=t.i,s=r&&Qo(r.type);return sn(`Maximum recursive updates exceeded${s?` in component <${s}>`:""}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`,null,10),!0}return e.set(t,n+1),!1}let Ne=!1;const Qr=e=>{try{return Ne}finally{Ne=e}},vn=new Map;process.env.NODE_ENV!=="production"&&(ot().__VUE_HMR_RUNTIME__={createRecord:qn(Eo),rerender:qn(gl),reload:qn(_l)});const vt=new Map;function pl(e){const t=e.type.__hmrId;let n=vt.get(t);n||(Eo(t,e.type),n=vt.get(t)),n.instances.add(e)}function hl(e){vt.get(e.type.__hmrId).instances.delete(e)}function Eo(e,t){return vt.has(e)?!1:(vt.set(e,{initialDef:Tn(t),instances:new Set}),!0)}function Tn(e){return ei(e)?e.__vccOpts:e}function gl(e,t){const n=vt.get(e);n&&(n.initialDef.render=t,[...n.instances].forEach(r=>{t&&(r.render=t,Tn(r.type).render=t),r.renderCache=[],Ne=!0,r.job.flags&8||r.update(),Ne=!1}))}function _l(e,t){const n=vt.get(e);if(!n)return;t=Tn(t),es(n.initialDef,t);const r=[...n.instances];for(let s=0;s<r.length;s++){const o=r[s],i=Tn(o.type);let l=vn.get(i);l||(i!==n.initialDef&&es(i,t),vn.set(i,l=new Set)),l.add(o),o.appContext.propsCache.delete(o.type),o.appContext.emitsCache.delete(o.type),o.appContext.optionsCache.delete(o.type),o.ceReload?(l.add(o),o.ceReload(t.styles),l.delete(o)):o.parent?$n(()=>{o.job.flags&8||(Ne=!0,o.parent.update(),Ne=!1,l.delete(o))}):o.appContext.reload?o.appContext.reload():typeof window<"u"?window.location.reload():console.warn("[HMR] Root or manually mounted instance modified. Full reload required."),o.root.ce&&o!==o.root&&o.root.ce._removeChildStyle(i)}_o(()=>{vn.clear()})}function es(e,t){ne(e,t);for(const n in e)n!=="__file"&&!(n in t)&&delete e[n]}function qn(e){return(t,n)=>{try{return e(t,n)}catch(r){console.error(r),console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required.")}}}let we,Ht=[],lr=!1;function on(e,...t){we?we.emit(e,...t):lr||Ht.push({event:e,args:t})}function Ar(e,t){var n,r;we=e,we?(we.enabled=!0,Ht.forEach(({event:s,args:o})=>we.emit(s,...o)),Ht=[]):typeof window<"u"&&window.HTMLElement&&!((r=(n=window.navigator)==null?void 0:n.userAgent)!=null&&r.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(o=>{Ar(o,t)}),setTimeout(()=>{we||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,lr=!0,Ht=[])},3e3)):(lr=!0,Ht=[])}function ml(e,t){on("app:init",e,t,{Fragment:He,Text:ln,Comment:Se,Static:yn})}function vl(e){on("app:unmount",e)}const El=Mr("component:added"),bo=Mr("component:updated"),bl=Mr("component:removed"),yl=e=>{we&&typeof we.cleanupBuffer=="function"&&!we.cleanupBuffer(e)&&bl(e)};function Mr(e){return t=>{on(e,t.appContext.app,t.uid,t.parent?t.parent.uid:void 0,t)}}const Nl=yo("perf:start"),Ol=yo("perf:end");function yo(e){return(t,n,r)=>{on(e,t.appContext.app,t.uid,t,n,r)}}function Dl(e,t,n){on("component:emit",e.appContext.app,e,t,n)}let Oe=null,No=null;function Vn(e){const t=Oe;return Oe=e,No=e&&e.type.__scopeId||null,t}function xl(e,t=Oe,n){if(!t||e._n)return e;const r=(...s)=>{r._d;const o=Vn(t);let i;try{i=e(...s)}finally{Vn(o),r._d}return(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&bo(t),i};return r._n=!0,r._c=!0,r._d=!0,r}function Oo(e){di(e)&&O("Do not use built-in directive ids as custom directive id: "+e)}function ut(e,t,n,r){const s=e.dirs,o=t&&t.dirs;for(let i=0;i<s.length;i++){const l=s[i];o&&(l.oldValue=o[i].value);let u=l.dir[r];u&&(Ce(),Ke(u,n,8,[e.el,l,e,t]),Ae())}}function wl(e,t){if(process.env.NODE_ENV!=="production"&&(!re||re.isMounted)&&O("provide() can only be used inside setup()."),re){let n=re.provides;const r=re.parent&&re.parent.provides;r===n&&(n=re.provides=Object.create(r)),n[e]=t}}function En(e,t,n=!1){const r=Jo();if(r||Vt){let s=Vt?Vt._context.provides:r?r.parent==null||r.ce?r.vnode.appContext&&r.vnode.appContext.provides:r.parent.provides:void 0;if(s&&e in s)return s[e];if(arguments.length>1)return n&&L(t)?t.call(r&&r.proxy):t;process.env.NODE_ENV!=="production"&&O(`injection "${String(e)}" not found.`)}else process.env.NODE_ENV!=="production"&&O("inject() can only be used inside setup() or functional components.")}const Tl=Symbol.for("v-scx"),Vl=()=>{{const e=En(Tl);return e||process.env.NODE_ENV!=="production"&&O("Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build."),e}};function zt(e,t,n){return process.env.NODE_ENV!=="production"&&!L(t)&&O("`watch(fn, options?)` signature has been moved to a separate API. Use `watchEffect(fn, options?)` instead. `watch` now only supports `watch(source, cb, options?) signature."),Do(e,t,n)}function Do(e,t,n=q){const{immediate:r,deep:s,flush:o,once:i}=n;process.env.NODE_ENV!=="production"&&!t&&(r!==void 0&&O('watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.'),s!==void 0&&O('watch() "deep" option is only respected when using the watch(source, callback, options?) signature.'),i!==void 0&&O('watch() "once" option is only respected when using the watch(source, callback, options?) signature.'));const l=ne({},n);process.env.NODE_ENV!=="production"&&(l.onWarn=O);const u=t&&r||!t&&o!=="post";let p;if(tn){if(o==="sync"){const b=Vl();p=b.__watcherHandles||(b.__watcherHandles=[])}else if(!u){const b=()=>{};return b.stop=ee,b.resume=ee,b.pause=ee,b}}const a=re;l.call=(b,S,w)=>Ke(b,a,S,w);let f=!1;o==="post"?l.scheduler=b=>{ve(b,a&&a.suspense)}:o!=="sync"&&(f=!0,l.scheduler=(b,S)=>{S?b():$n(b)}),l.augmentJob=b=>{t&&(b.flags|=4),f&&(b.flags|=2,a&&(b.id=a.uid,b.i=a))};const g=sl(e,t,l);return tn&&(p?p.push(g):u&&g()),g}function Sl(e,t,n){const r=this.proxy,s=X(e)?e.includes(".")?xo(r,e):()=>r[e]:e.bind(r,r);let o;L(t)?o=t:(o=t.handler,n=t);const i=cn(this),l=Do(s,o.bind(r),n);return i(),l}function xo(e,t){const n=t.split(".");return()=>{let r=e;for(let s=0;s<n.length&&r;s++)r=r[n[s]];return r}}const Il=Symbol("_vte"),Cl=e=>e.__isTeleport,Al=Symbol("_leaveCb");function Pr(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Pr(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function wo(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}const ts=new WeakSet;function ns(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const Sn=new WeakMap;function qt(e,t,n,r,s=!1){if(M(e)){e.forEach((w,Y)=>qt(w,t&&(M(t)?t[Y]:t),n,r,s));return}if(Yt(r)&&!s){r.shapeFlag&512&&r.type.__asyncResolved&&r.component.subTree.component&&qt(e,t,n,r.component.subTree);return}const o=r.shapeFlag&4?Ur(r.component):r.el,i=s?null:o,{i:l,r:u}=e;if(process.env.NODE_ENV!=="production"&&!l){O("Missing ref owner context. ref cannot be used on hoisted vnodes. A vnode with ref must be created inside the render function.");return}const p=t&&t.r,a=l.refs===q?l.refs={}:l.refs,f=l.setupState,g=R(f),b=f===q?zs:w=>process.env.NODE_ENV!=="production"&&(U(g,w)&&!te(g[w])&&O(`Template ref "${w}" used on a non-ref value. It will not work in the production build.`),ts.has(g[w]))||ns(a,w)?!1:U(g,w),S=(w,Y)=>!(process.env.NODE_ENV!=="production"&&ts.has(w)||Y&&ns(a,Y));if(p!=null&&p!==u){if(rs(t),X(p))a[p]=null,b(p)&&(f[p]=null);else if(te(p)){const w=t;S(p,w.k)&&(p.value=null),w.k&&(a[w.k]=null)}}if(L(u))It(u,l,12,[i,a]);else{const w=X(u),Y=te(u);if(w||Y){const W=()=>{if(e.f){const $=w?b(u)?f[u]:a[u]:S(u)||!e.k?u.value:a[e.k];if(s)M($)&&mr($,o);else if(M($))$.includes(o)||$.push(o);else if(w)a[u]=[o],b(u)&&(f[u]=a[u]);else{const F=[o];S(u,e.k)&&(u.value=F),e.k&&(a[e.k]=F)}}else w?(a[u]=i,b(u)&&(f[u]=i)):Y?(S(u,e.k)&&(u.value=i),e.k&&(a[e.k]=i)):process.env.NODE_ENV!=="production"&&O("Invalid template ref type:",u,`(${typeof u})`)};if(i){const $=()=>{W(),Sn.delete(e)};$.id=-1,Sn.set(e,$),ve($,n)}else rs(e),W()}else process.env.NODE_ENV!=="production"&&O("Invalid template ref type:",u,`(${typeof u})`)}}function rs(e){const t=Sn.get(e);t&&(t.flags|=8,Sn.delete(e))}ot().requestIdleCallback;ot().cancelIdleCallback;const Yt=e=>!!e.type.__asyncLoader,Lr=e=>e.type.__isKeepAlive;function Ml(e,t){To(e,"a",t)}function Pl(e,t){To(e,"da",t)}function To(e,t,n=re){const r=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(jn(t,r,n),n){let s=n.parent;for(;s&&s.parent;)Lr(s.parent.vnode)&&Ll(r,t,n,s),s=s.parent}}function Ll(e,t,n,r){const s=jn(t,e,r,!0);Vo(()=>{mr(r[t],s)},n)}function jn(e,t,n=re,r=!1){if(n){const s=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...i)=>{Ce();const l=cn(n),u=Ke(t,n,e,i);return l(),Ae(),u});return r?s.unshift(o):s.push(o),o}else if(process.env.NODE_ENV!=="production"){const s=dt(Ir[e].replace(/ hook$/,""));O(`${s} is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup(). If you are using async setup(), make sure to register lifecycle hooks before the first await statement.`)}}const et=e=>(t,n=re)=>{(!tn||e==="sp")&&jn(e,(...r)=>t(...r),n)},Rl=et("bm"),Fl=et("m"),$l=et("bu"),jl=et("u"),Hl=et("bum"),Vo=et("um"),Ul=et("sp"),kl=et("rtg"),Wl=et("rtc");function Bl(e,t=re){jn("ec",e,t)}const Kl=Symbol.for("v-ndc"),cr=e=>e?Xo(e)?Ur(e):cr(e.parent):null,mt=ne(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>process.env.NODE_ENV!=="production"?We(e.props):e.props,$attrs:e=>process.env.NODE_ENV!=="production"?We(e.attrs):e.attrs,$slots:e=>process.env.NODE_ENV!=="production"?We(e.slots):e.slots,$refs:e=>process.env.NODE_ENV!=="production"?We(e.refs):e.refs,$parent:e=>cr(e.parent),$root:e=>cr(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>__VUE_OPTIONS_API__?Co(e):e.type,$forceUpdate:e=>e.f||(e.f=()=>{$n(e.update)}),$nextTick:e=>e.n||(e.n=fl.bind(e.proxy)),$watch:e=>__VUE_OPTIONS_API__?Sl.bind(e):ee}),Rr=e=>e==="_"||e==="$",Yn=(e,t)=>e!==q&&!e.__isScriptSetup&&U(e,t),So={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:r,data:s,props:o,accessCache:i,type:l,appContext:u}=e;if(process.env.NODE_ENV!=="production"&&t==="__isVue")return!0;if(t[0]!=="$"){const g=i[t];if(g!==void 0)switch(g){case 1:return r[t];case 2:return s[t];case 4:return n[t];case 3:return o[t]}else{if(Yn(r,t))return i[t]=1,r[t];if(__VUE_OPTIONS_API__&&s!==q&&U(s,t))return i[t]=2,s[t];if(U(o,t))return i[t]=3,o[t];if(n!==q&&U(n,t))return i[t]=4,n[t];(!__VUE_OPTIONS_API__||ur)&&(i[t]=0)}}const p=mt[t];let a,f;if(p)return t==="$attrs"?(se(e.attrs,"get",""),process.env.NODE_ENV!=="production"&&Cn()):process.env.NODE_ENV!=="production"&&t==="$slots"&&se(e,"get",t),p(e);if((a=l.__cssModules)&&(a=a[t]))return a;if(n!==q&&U(n,t))return i[t]=4,n[t];if(f=u.config.globalProperties,U(f,t))return f[t];process.env.NODE_ENV!=="production"&&Oe&&(!X(t)||t.indexOf("__v")!==0)&&(s!==q&&Rr(t[0])&&U(s,t)?O(`Property ${JSON.stringify(t)} must be accessed via $data because it starts with a reserved character ("$" or "_") and is not proxied on the render context.`):e===Oe&&O(`Property ${JSON.stringify(t)} was accessed during render but is not defined on instance.`))},set({_:e},t,n){const{data:r,setupState:s,ctx:o}=e;return Yn(s,t)?(s[t]=n,!0):process.env.NODE_ENV!=="production"&&s.__isScriptSetup&&U(s,t)?(O(`Cannot mutate <script setup> binding "${t}" from Options API.`),!1):__VUE_OPTIONS_API__&&r!==q&&U(r,t)?(r[t]=n,!0):U(e.props,t)?(process.env.NODE_ENV!=="production"&&O(`Attempting to mutate prop "${t}". Props are readonly.`),!1):t[0]==="$"&&t.slice(1)in e?(process.env.NODE_ENV!=="production"&&O(`Attempting to mutate public property "${t}". Properties starting with $ are reserved and readonly.`),!1):(process.env.NODE_ENV!=="production"&&t in e.appContext.config.globalProperties?Object.defineProperty(o,t,{enumerable:!0,configurable:!0,value:n}):o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:s,props:o,type:i}},l){let u;return!!(n[l]||__VUE_OPTIONS_API__&&e!==q&&l[0]!=="$"&&U(e,l)||Yn(t,l)||U(o,l)||U(r,l)||U(mt,l)||U(s.config.globalProperties,l)||(u=i.__cssModules)&&u[l])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:U(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};process.env.NODE_ENV!=="production"&&(So.ownKeys=e=>(O("Avoid app logic that relies on enumerating keys on a component instance. The keys will be empty in production mode to avoid performance overhead."),Reflect.ownKeys(e)));function Gl(e){const t={};return Object.defineProperty(t,"_",{configurable:!0,enumerable:!1,get:()=>e}),Object.keys(mt).forEach(n=>{Object.defineProperty(t,n,{configurable:!0,enumerable:!1,get:()=>mt[n](e),set:ee})}),t}function zl(e){const{ctx:t,propsOptions:[n]}=e;n&&Object.keys(n).forEach(r=>{Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>e.props[r],set:ee})})}function ql(e){const{ctx:t,setupState:n}=e;Object.keys(R(n)).forEach(r=>{if(!n.__isScriptSetup){if(Rr(r[0])){O(`setup() return property ${JSON.stringify(r)} should not start with "$" or "_" which are reserved prefixes for Vue internals.`);return}Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>n[r],set:ee})}})}function ss(e){return M(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}function Yl(){const e=Object.create(null);return(t,n)=>{e[n]?O(`${t} property "${n}" is already defined in ${e[n]}.`):e[n]=t}}let ur=!0;function Jl(e){const t=Co(e),n=e.proxy,r=e.ctx;ur=!1,t.beforeCreate&&os(t.beforeCreate,e,"bc");const{data:s,computed:o,methods:i,watch:l,provide:u,inject:p,created:a,beforeMount:f,mounted:g,beforeUpdate:b,updated:S,activated:w,deactivated:Y,beforeDestroy:W,beforeUnmount:$,destroyed:F,unmounted:oe,render:T,renderTracked:Z,renderTriggered:de,errorCaptured:ie,serverPrefetch:I,expose:ce,inheritAttrs:ue,components:le,directives:ct,filters:an}=t,De=process.env.NODE_ENV!=="production"?Yl():null;if(process.env.NODE_ENV!=="production"){const[H]=e.propsOptions;if(H)for(const j in H)De("Props",j)}if(p&&Xl(p,r,De),i)for(const H in i){const j=i[H];L(j)?(process.env.NODE_ENV!=="production"?Object.defineProperty(r,H,{value:j.bind(n),configurable:!0,enumerable:!0,writable:!0}):r[H]=j.bind(n),process.env.NODE_ENV!=="production"&&De("Methods",H)):process.env.NODE_ENV!=="production"&&O(`Method "${H}" has type "${typeof j}" in the component definition. Did you reference the function correctly?`)}if(s){process.env.NODE_ENV!=="production"&&!L(s)&&O("The data option must be a function. Plain object usage is no longer supported.");const H=s.call(n,n);if(process.env.NODE_ENV!=="production"&&vr(H)&&O("data() returned a Promise - note data() cannot be async; If you intend to perform data fetching before component renders, use async setup() + <Suspense>."),!B(H))process.env.NODE_ENV!=="production"&&O("data() should return an object.");else if(e.data=Sr(H),process.env.NODE_ENV!=="production")for(const j in H)De("Data",j),Rr(j[0])||Object.defineProperty(r,j,{configurable:!0,enumerable:!0,get:()=>H[j],set:ee})}if(ur=!0,o)for(const H in o){const j=o[H],Me=L(j)?j.bind(n,n):L(j.get)?j.get.bind(n,n):ee;process.env.NODE_ENV!=="production"&&Me===ee&&O(`Computed property "${H}" has no getter.`);const Un=!L(j)&&L(j.set)?j.set.bind(n):process.env.NODE_ENV!=="production"?()=>{O(`Write operation failed: computed property "${H}" is readonly.`)}:ee,Ct=Kc({get:Me,set:Un});Object.defineProperty(r,H,{enumerable:!0,configurable:!0,get:()=>Ct.value,set:Et=>Ct.value=Et}),process.env.NODE_ENV!=="production"&&De("Computed",H)}if(l)for(const H in l)Io(l[H],r,n,H);if(u){const H=L(u)?u.call(n):u;Reflect.ownKeys(H).forEach(j=>{wl(j,H[j])})}a&&os(a,e,"c");function me(H,j){M(j)?j.forEach(Me=>H(Me.bind(n))):j&&H(j.bind(n))}if(me(Rl,f),me(Fl,g),me($l,b),me(jl,S),me(Ml,w),me(Pl,Y),me(Bl,ie),me(Wl,Z),me(kl,de),me(Hl,$),me(Vo,oe),me(Ul,I),M(ce))if(ce.length){const H=e.exposed||(e.exposed={});ce.forEach(j=>{Object.defineProperty(H,j,{get:()=>n[j],set:Me=>n[j]=Me,enumerable:!0})})}else e.exposed||(e.exposed={});T&&e.render===ee&&(e.render=T),ue!=null&&(e.inheritAttrs=ue),le&&(e.components=le),ct&&(e.directives=ct),I&&wo(e)}function Xl(e,t,n=ee){M(e)&&(e=ar(e));for(const r in e){const s=e[r];let o;B(s)?"default"in s?o=En(s.from||r,s.default,!0):o=En(s.from||r):o=En(s),te(o)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>o.value,set:i=>o.value=i}):t[r]=o,process.env.NODE_ENV!=="production"&&n("Inject",r)}}function os(e,t,n){Ke(M(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function Io(e,t,n,r){let s=r.includes(".")?xo(n,r):()=>n[r];if(X(e)){const o=t[e];L(o)?zt(s,o):process.env.NODE_ENV!=="production"&&O(`Invalid watch handler specified by key "${e}"`,o)}else if(L(e))zt(s,e.bind(n));else if(B(e))if(M(e))e.forEach(o=>Io(o,t,n,r));else{const o=L(e.handler)?e.handler.bind(n):t[e.handler];L(o)?zt(s,o,e):process.env.NODE_ENV!=="production"&&O(`Invalid watch handler specified by key "${e.handler}"`,o)}else process.env.NODE_ENV!=="production"&&O(`Invalid watch option: "${r}"`,e)}function Co(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:s,optionsCache:o,config:{optionMergeStrategies:i}}=e.appContext,l=o.get(t);let u;return l?u=l:!s.length&&!n&&!r?u=t:(u={},s.length&&s.forEach(p=>In(u,p,i,!0)),In(u,t,i)),B(t)&&o.set(t,u),u}function In(e,t,n,r=!1){const{mixins:s,extends:o}=t;o&&In(e,o,n,!0),s&&s.forEach(i=>In(e,i,n,!0));for(const i in t)if(r&&i==="expose")process.env.NODE_ENV!=="production"&&O('"expose" option is ignored when declared in mixins or extends. It should only be declared in the base component itself.');else{const l=Zl[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const Zl={data:is,props:ls,emits:ls,methods:Ut,computed:Ut,beforeCreate:ge,created:ge,beforeMount:ge,mounted:ge,beforeUpdate:ge,updated:ge,beforeDestroy:ge,beforeUnmount:ge,destroyed:ge,unmounted:ge,activated:ge,deactivated:ge,errorCaptured:ge,serverPrefetch:ge,components:Ut,directives:Ut,watch:ec,provide:is,inject:Ql};function is(e,t){return t?e?function(){return ne(L(e)?e.call(this,this):e,L(t)?t.call(this,this):t)}:t:e}function Ql(e,t){return Ut(ar(e),ar(t))}function ar(e){if(M(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function ge(e,t){return e?[...new Set([].concat(e,t))]:t}function Ut(e,t){return e?ne(Object.create(null),e,t):t}function ls(e,t){return e?M(e)&&M(t)?[...new Set([...e,...t])]:ne(Object.create(null),ss(e),ss(t??{})):t}function ec(e,t){if(!e)return t;if(!t)return e;const n=ne(Object.create(null),e);for(const r in t)n[r]=ge(e[r],t[r]);return n}function Ao(){return{app:null,config:{isNativeTag:zs,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let tc=0;function nc(e,t){return function(r,s=null){L(r)||(r=ne({},r)),s!=null&&!B(s)&&(process.env.NODE_ENV!=="production"&&O("root props passed to app.mount() must be an object."),s=null);const o=Ao(),i=new WeakSet,l=[];let u=!1;const p=o.app={_uid:tc++,_component:r,_props:s,_container:null,_context:o,_instance:null,version:vs,get config(){return o.config},set config(a){process.env.NODE_ENV!=="production"&&O("app.config cannot be replaced. Modify individual options instead.")},use(a,...f){return i.has(a)?process.env.NODE_ENV!=="production"&&O("Plugin has already been applied to target app."):a&&L(a.install)?(i.add(a),a.install(p,...f)):L(a)?(i.add(a),a(p,...f)):process.env.NODE_ENV!=="production"&&O('A plugin must either be a function or an object with an "install" function.'),p},mixin(a){return __VUE_OPTIONS_API__?o.mixins.includes(a)?process.env.NODE_ENV!=="production"&&O("Mixin has already been applied to target app"+(a.name?`: ${a.name}`:"")):o.mixins.push(a):process.env.NODE_ENV!=="production"&&O("Mixins are only available in builds supporting Options API"),p},component(a,f){return process.env.NODE_ENV!=="production"&&gr(a,o.config),f?(process.env.NODE_ENV!=="production"&&o.components[a]&&O(`Component "${a}" has already been registered in target app.`),o.components[a]=f,p):o.components[a]},directive(a,f){return process.env.NODE_ENV!=="production"&&Oo(a),f?(process.env.NODE_ENV!=="production"&&o.directives[a]&&O(`Directive "${a}" has already been registered in target app.`),o.directives[a]=f,p):o.directives[a]},mount(a,f,g){if(u)process.env.NODE_ENV!=="production"&&O("App has already been mounted.\nIf you want to remount the same app, move your app creation logic into a factory function and create fresh app instances for each mount - e.g. `const createMyApp = () => createApp(App)`");else{process.env.NODE_ENV!=="production"&&a.__vue_app__&&O("There is already an app instance mounted on the host container.\n If you want to mount another app on the same host container, you need to unmount the previous app by calling `app.unmount()` first.");const b=p._ceVNode||Te(r,s);return b.appContext=o,g===!0?g="svg":g===!1&&(g=void 0),process.env.NODE_ENV!=="production"&&(o.reload=()=>{const S=lt(b);S.el=null,e(S,a,g)}),e(b,a,g),u=!0,p._container=a,a.__vue_app__=p,(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&(p._instance=b.component,ml(p,vs)),Ur(b.component)}},onUnmount(a){process.env.NODE_ENV!=="production"&&typeof a!="function"&&O(`Expected function as first argument to app.onUnmount(), but got ${typeof a}`),l.push(a)},unmount(){u?(Ke(l,p._instance,16),e(null,p._container),(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&(p._instance=null,vl(p)),delete p._container.__vue_app__):process.env.NODE_ENV!=="production"&&O("Cannot unmount an app that is not mounted.")},provide(a,f){return process.env.NODE_ENV!=="production"&&a in o.provides&&(U(o.provides,a)?O(`App already provides property with key "${String(a)}". It will be overwritten with the new value.`):O(`App already provides property with key "${String(a)}" inherited from its parent element. It will be overwritten with the new value.`)),o.provides[a]=f,p},runWithContext(a){const f=Vt;Vt=p;try{return a()}finally{Vt=f}}};return p}}let Vt=null;const rc=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ee(t)}Modifiers`]||e[`${it(t)}Modifiers`];function sc(e,t,...n){if(e.isUnmounted)return;const r=e.vnode.props||q;if(process.env.NODE_ENV!=="production"){const{emitsOptions:a,propsOptions:[f]}=e;if(a)if(!(t in a))(!f||!(dt(Ee(t))in f))&&O(`Component emitted event "${t}" but it is neither declared in the emits option nor as an "${dt(Ee(t))}" prop.`);else{const g=a[t];L(g)&&(g(...n)||O(`Invalid event arguments: event validation failed for event "${t}".`))}}let s=n;const o=t.startsWith("update:"),i=o&&rc(r,t.slice(7));if(i&&(i.trim&&(s=n.map(a=>X(a)?a.trim():a)),i.number&&(s=n.map(gi))),(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&Dl(e,t,s),process.env.NODE_ENV!=="production"){const a=t.toLowerCase();a!==t&&r[dt(a)]&&O(`Event "${a}" is emitted in component ${un(e,e.type)} but the handler is registered for "${t}". Note that HTML attributes are case-insensitive and you cannot use v-on to listen to camelCase events when using in-DOM templates. You should probably use "${it(t)}" instead of "${t}".`)}let l,u=r[l=dt(t)]||r[l=dt(Ee(t))];!u&&o&&(u=r[l=dt(it(t))]),u&&Ke(u,e,6,s);const p=r[l+"Once"];if(p){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,Ke(p,e,6,s)}}const oc=new WeakMap;function Mo(e,t,n=!1){const r=__VUE_OPTIONS_API__&&n?oc:t.emitsCache,s=r.get(e);if(s!==void 0)return s;const o=e.emits;let i={},l=!1;if(__VUE_OPTIONS_API__&&!L(e)){const u=p=>{const a=Mo(p,t,!0);a&&(l=!0,ne(i,a))};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}return!o&&!l?(B(e)&&r.set(e,null),null):(M(o)?o.forEach(u=>i[u]=null):ne(i,o),B(e)&&r.set(e,i),i)}function Hn(e,t){return!e||!nn(t)?!1:(t=t.slice(2).replace(/Once$/,""),U(e,t[0].toLowerCase()+t.slice(1))||U(e,it(t))||U(e,t))}let fr=!1;function Cn(){fr=!0}function cs(e){const{type:t,vnode:n,proxy:r,withProxy:s,propsOptions:[o],slots:i,attrs:l,emit:u,render:p,renderCache:a,props:f,data:g,setupState:b,ctx:S,inheritAttrs:w}=e,Y=Vn(e);let W,$;process.env.NODE_ENV!=="production"&&(fr=!1);try{if(n.shapeFlag&4){const T=s||r,Z=process.env.NODE_ENV!=="production"&&b.__isScriptSetup?new Proxy(T,{get(de,ie,I){return O(`Property '${String(ie)}' was accessed via 'this'. Avoid using 'this' in templates.`),Reflect.get(de,ie,I)}}):T;W=xe(p.call(Z,T,a,process.env.NODE_ENV!=="production"?We(f):f,b,g,S)),$=l}else{const T=t;process.env.NODE_ENV!=="production"&&l===f&&Cn(),W=xe(T.length>1?T(process.env.NODE_ENV!=="production"?We(f):f,process.env.NODE_ENV!=="production"?{get attrs(){return Cn(),We(l)},slots:i,emit:u}:{attrs:l,slots:i,emit:u}):T(process.env.NODE_ENV!=="production"?We(f):f,null)),$=t.props?l:ic(l)}}catch(T){sn(T,e,1),W=Te(Se)}let F=W,oe;if(process.env.NODE_ENV!=="production"&&W.patchFlag>0&&W.patchFlag&2048&&([F,oe]=Po(W)),$&&w!==!1){const T=Object.keys($),{shapeFlag:Z}=F;if(T.length){if(Z&7)o&&T.some(Jt)&&($=lc($,o)),F=lt(F,$,!1,!0);else if(process.env.NODE_ENV!=="production"&&!fr&&F.type!==Se){const de=Object.keys(l),ie=[],I=[];for(let ce=0,ue=de.length;ce<ue;ce++){const le=de[ce];nn(le)?Jt(le)||ie.push(le[2].toLowerCase()+le.slice(3)):I.push(le)}I.length&&O(`Extraneous non-props attributes (${I.join(", ")}) were passed to component but could not be automatically inherited because component renders fragment or text or teleport root nodes.`),ie.length&&O(`Extraneous non-emits event listeners (${ie.join(", ")}) were passed to component but could not be automatically inherited because component renders fragment or text root nodes. If the listener is intended to be a component custom event listener only, declare it using the "emits" option.`)}}}return n.dirs&&(process.env.NODE_ENV!=="production"&&!us(F)&&O("Runtime directive used on component with non-element root node. The directives will not function as intended."),F=lt(F,null,!1,!0),F.dirs=F.dirs?F.dirs.concat(n.dirs):n.dirs),n.transition&&(process.env.NODE_ENV!=="production"&&!us(F)&&O("Component inside <Transition> renders non-element root node that cannot be animated."),Pr(F,n.transition)),process.env.NODE_ENV!=="production"&&oe?oe(F):W=F,Vn(Y),W}const Po=e=>{const t=e.children,n=e.dynamicChildren,r=Fr(t,!1);if(r){if(process.env.NODE_ENV!=="production"&&r.patchFlag>0&&r.patchFlag&2048)return Po(r)}else return[e,void 0];const s=t.indexOf(r),o=n?n.indexOf(r):-1,i=l=>{t[s]=l,n&&(o>-1?n[o]=l:l.patchFlag>0&&(e.dynamicChildren=[...n,l]))};return[xe(r),i]};function Fr(e,t=!0){let n;for(let r=0;r<e.length;r++){const s=e[r];if(St(s)){if(s.type!==Se||s.children==="v-if"){if(n)return;if(n=s,process.env.NODE_ENV!=="production"&&t&&n.patchFlag>0&&n.patchFlag&2048)return Fr(n.children)}}else return}return n}const ic=e=>{let t;for(const n in e)(n==="class"||n==="style"||nn(n))&&((t||(t={}))[n]=e[n]);return t},lc=(e,t)=>{const n={};for(const r in e)(!Jt(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n},us=e=>e.shapeFlag&7||e.type===Se;function cc(e,t,n){const{props:r,children:s,component:o}=e,{props:i,children:l,patchFlag:u}=t,p=o.emitsOptions;if(process.env.NODE_ENV!=="production"&&(s||l)&&Ne||t.dirs||t.transition)return!0;if(n&&u>=0){if(u&1024)return!0;if(u&16)return r?as(r,i,p):!!i;if(u&8){const a=t.dynamicProps;for(let f=0;f<a.length;f++){const g=a[f];if(Lo(i,r,g)&&!Hn(p,g))return!0}}}else return(s||l)&&(!l||!l.$stable)?!0:r===i?!1:r?i?as(r,i,p):!0:!!i;return!1}function as(e,t,n){const r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let s=0;s<r.length;s++){const o=r[s];if(Lo(t,e,o)&&!Hn(n,o))return!0}return!1}function Lo(e,t,n){const r=e[n],s=t[n];return n==="style"&&B(r)&&B(s)?!Or(r,s):r!==s}function uc({vnode:e,parent:t,suspense:n},r){for(;t;){const s=t.subTree;if(s.suspense&&s.suspense.activeBranch===e&&(s.suspense.vnode.el=s.el=r,e=s),s===e)(e=t.vnode).el=r,t=t.parent;else break}n&&n.activeBranch===e&&(n.vnode.el=r)}const Ro={},Fo=()=>Object.create(Ro),$o=e=>Object.getPrototypeOf(e)===Ro;function ac(e,t,n,r=!1){const s={},o=Fo();e.propsDefaults=Object.create(null),jo(e,t,s,o);for(const i in e.propsOptions[0])i in s||(s[i]=void 0);process.env.NODE_ENV!=="production"&&Uo(t||{},s,e),n?e.props=r?s:Yi(s):e.type.props?e.props=s:e.props=o,e.attrs=o}function fc(e){for(;e;){if(e.type.__hmrId)return!0;e=e.parent}}function dc(e,t,n,r){const{props:s,attrs:o,vnode:{patchFlag:i}}=e,l=R(s),[u]=e.propsOptions;let p=!1;if(!(process.env.NODE_ENV!=="production"&&fc(e))&&(r||i>0)&&!(i&16)){if(i&8){const a=e.vnode.dynamicProps;for(let f=0;f<a.length;f++){let g=a[f];if(Hn(e.emitsOptions,g))continue;const b=t[g];if(u)if(U(o,g))b!==o[g]&&(o[g]=b,p=!0);else{const S=Ee(g);s[S]=dr(u,l,S,b,e,!1)}else b!==o[g]&&(o[g]=b,p=!0)}}}else{jo(e,t,s,o)&&(p=!0);let a;for(const f in l)(!t||!U(t,f)&&((a=it(f))===f||!U(t,a)))&&(u?n&&(n[f]!==void 0||n[a]!==void 0)&&(s[f]=dr(u,l,f,void 0,e,!0)):delete s[f]);if(o!==l)for(const f in o)(!t||!U(t,f))&&(delete o[f],p=!0)}p&&ke(e.attrs,"set",""),process.env.NODE_ENV!=="production"&&Uo(t||{},s,e)}function jo(e,t,n,r){const[s,o]=e.propsOptions;let i=!1,l;if(t)for(let u in t){if(Bt(u))continue;const p=t[u];let a;s&&U(s,a=Ee(u))?!o||!o.includes(a)?n[a]=p:(l||(l={}))[a]=p:Hn(e.emitsOptions,u)||(!(u in r)||p!==r[u])&&(r[u]=p,i=!0)}if(o){const u=R(n),p=l||q;for(let a=0;a<o.length;a++){const f=o[a];n[f]=dr(s,u,f,p[f],e,!U(p,f))}}return i}function dr(e,t,n,r,s,o){const i=e[n];if(i!=null){const l=U(i,"default");if(l&&r===void 0){const u=i.default;if(i.type!==Function&&!i.skipFactory&&L(u)){const{propsDefaults:p}=s;if(n in p)r=p[n];else{const a=cn(s);r=p[n]=u.call(null,t),a()}}else r=u;s.ce&&s.ce._setProp(n,r)}i[0]&&(o&&!l?r=!1:i[1]&&(r===""||r===it(n))&&(r=!0))}return r}const pc=new WeakMap;function Ho(e,t,n=!1){const r=__VUE_OPTIONS_API__&&n?pc:t.propsCache,s=r.get(e);if(s)return s;const o=e.props,i={},l=[];let u=!1;if(__VUE_OPTIONS_API__&&!L(e)){const a=f=>{u=!0;const[g,b]=Ho(f,t,!0);ne(i,g),b&&l.push(...b)};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}if(!o&&!u)return B(e)&&r.set(e,Wt),Wt;if(M(o))for(let a=0;a<o.length;a++){process.env.NODE_ENV!=="production"&&!X(o[a])&&O("props must be strings when using array syntax.",o[a]);const f=Ee(o[a]);fs(f)&&(i[f]=q)}else if(o){process.env.NODE_ENV!=="production"&&!B(o)&&O("invalid props options",o);for(const a in o){const f=Ee(a);if(fs(f)){const g=o[a],b=i[f]=M(g)||L(g)?{type:g}:ne({},g),S=b.type;let w=!1,Y=!0;if(M(S))for(let W=0;W<S.length;++W){const $=S[W],F=L($)&&$.name;if(F==="Boolean"){w=!0;break}else F==="String"&&(Y=!1)}else w=L(S)&&S.name==="Boolean";b[0]=w,b[1]=Y,(w||U(b,"default"))&&l.push(f)}}}const p=[i,l];return B(e)&&r.set(e,p),p}function fs(e){return e[0]!=="$"&&!Bt(e)?!0:(process.env.NODE_ENV!=="production"&&O(`Invalid prop name: "${e}" is a reserved property.`),!1)}function hc(e){return e===null?"null":typeof e=="function"?e.name||"":typeof e=="object"&&e.constructor&&e.constructor.name||""}function Uo(e,t,n){const r=R(t),s=n.propsOptions[0],o=Object.keys(e).map(i=>Ee(i));for(const i in s){let l=s[i];l!=null&&gc(i,r[i],l,process.env.NODE_ENV!=="production"?We(r):r,!o.includes(i))}}function gc(e,t,n,r,s){const{type:o,required:i,validator:l,skipCheck:u}=n;if(i&&s){O('Missing required prop: "'+e+'"');return}if(!(t==null&&!i)){if(o!=null&&o!==!0&&!u){let p=!1;const a=M(o)?o:[o],f=[];for(let g=0;g<a.length&&!p;g++){const{valid:b,expectedType:S}=mc(t,a[g]);f.push(S||""),p=b}if(!p){O(vc(e,t,f));return}}l&&!l(t,r)&&O('Invalid prop: custom validator check failed for prop "'+e+'".')}}const _c=Qe("String,Number,Boolean,Function,Symbol,BigInt");function mc(e,t){let n;const r=hc(t);if(r==="null")n=e===null;else if(_c(r)){const s=typeof e;n=s===r.toLowerCase(),!n&&s==="object"&&(n=e instanceof t)}else r==="Object"?n=B(e):r==="Array"?n=M(e):n=e instanceof t;return{valid:n,expectedType:r}}function vc(e,t,n){if(n.length===0)return`Prop type [] for prop "${e}" won't match anything. Did you mean to use type Array instead?`;let r=`Invalid prop: type check failed for prop "${e}". Expected ${n.map(Ln).join(" | ")}`;const s=n[0],o=Er(t),i=ds(t,s),l=ds(t,o);return n.length===1&&ps(s)&&Ec(s,o)&&(r+=` with value ${i}`),r+=`, got ${o} `,ps(o)&&(r+=`with value ${l}.`),r}function ds(e,t){return Xe(e)?e.toString():t==="String"?`"${e}"`:t==="Number"?`${Number(e)}`:`${e}`}function ps(e){return["string","number","boolean"].some(n=>e.toLowerCase()===n)}function Ec(...e){return e.every(t=>{const n=t.toLowerCase();return n!=="boolean"&&n!=="symbol"})}const $r=e=>e==="_"||e==="_ctx"||e==="$stable",jr=e=>M(e)?e.map(xe):[xe(e)],bc=(e,t,n)=>{if(t._n)return t;const r=xl((...s)=>(process.env.NODE_ENV!=="production"&&re&&!(n===null&&Oe)&&!(n&&n.root!==re.root)&&O(`Slot "${e}" invoked outside of the render function: this will not track dependencies used in the slot. Invoke the slot function inside the render function instead.`),jr(t(...s))),n);return r._c=!1,r},ko=(e,t,n)=>{const r=e._ctx;for(const s in e){if($r(s))continue;const o=e[s];if(L(o))t[s]=bc(s,o,r);else if(o!=null){process.env.NODE_ENV!=="production"&&O(`Non-function value encountered for slot "${s}". Prefer function slots for better performance.`);const i=jr(o);t[s]=()=>i}}},Wo=(e,t)=>{process.env.NODE_ENV!=="production"&&!Lr(e.vnode)&&O("Non-function value encountered for default slot. Prefer function slots for better performance.");const n=jr(t);e.slots.default=()=>n},pr=(e,t,n)=>{for(const r in t)(n||!$r(r))&&(e[r]=t[r])},yc=(e,t,n)=>{const r=e.slots=Fo();if(e.vnode.shapeFlag&32){const s=t._;s?(pr(r,t,n),n&&On(r,"_",s,!0)):ko(t,r)}else t&&Wo(e,t)},Nc=(e,t,n)=>{const{vnode:r,slots:s}=e;let o=!0,i=q;if(r.shapeFlag&32){const l=t._;l?process.env.NODE_ENV!=="production"&&Ne?(pr(s,t,n),ke(e,"set","$slots")):n&&l===1?o=!1:pr(s,t,n):(o=!t.$stable,ko(t,s)),i=t}else t&&(Wo(e,t),i={default:1});if(o)for(const l in s)!$r(l)&&i[l]==null&&delete s[l]};let Ft,qe;function yt(e,t){e.appContext.config.performance&&An()&&qe.mark(`vue-${t}-${e.uid}`),(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&Nl(e,t,An()?qe.now():Date.now())}function Nt(e,t){if(e.appContext.config.performance&&An()){const n=`vue-${t}-${e.uid}`,r=n+":end",s=`<${un(e,e.type)}> ${t}`;qe.mark(r),qe.measure(s,n,r),qe.clearMeasures(s),qe.clearMarks(n),qe.clearMarks(r)}(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&Ol(e,t,An()?qe.now():Date.now())}function An(){return Ft!==void 0||(typeof window<"u"&&window.performance?(Ft=!0,qe=window.performance):Ft=!1),Ft}function Oc(){const e=[];if(typeof __VUE_OPTIONS_API__!="boolean"&&(process.env.NODE_ENV!=="production"&&e.push("__VUE_OPTIONS_API__"),ot().__VUE_OPTIONS_API__=!0),typeof __VUE_PROD_DEVTOOLS__!="boolean"&&(process.env.NODE_ENV!=="production"&&e.push("__VUE_PROD_DEVTOOLS__"),ot().__VUE_PROD_DEVTOOLS__=!1),typeof __VUE_PROD_HYDRATION_MISMATCH_DETAILS__!="boolean"&&(process.env.NODE_ENV!=="production"&&e.push("__VUE_PROD_HYDRATION_MISMATCH_DETAILS__"),ot().__VUE_PROD_HYDRATION_MISMATCH_DETAILS__=!1),process.env.NODE_ENV!=="production"&&e.length){const t=e.length>1;console.warn(`Feature flag${t?"s":""} ${e.join(", ")} ${t?"are":"is"} not explicitly defined. You are running the esm-bundler build of Vue, which expects these compile-time feature flags to be globally injected via the bundler config in order to get better tree-shaking in the production bundle.
|
|
17
|
+
|
|
18
|
+
For more details, see https://link.vuejs.org/feature-flags.`)}}const ve=Vc;function Dc(e){return xc(e)}function xc(e,t){Oc();const n=ot();n.__VUE__=!0,(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&Ar(n.__VUE_DEVTOOLS_GLOBAL_HOOK__,n);const{insert:r,remove:s,patchProp:o,createElement:i,createText:l,createComment:u,setText:p,setElementText:a,parentNode:f,nextSibling:g,setScopeId:b=ee,insertStaticContent:S}=e,w=(c,d,h,E=null,_=null,m=null,D=void 0,N=null,y=process.env.NODE_ENV!=="production"&&Ne?!1:!!d.dynamicChildren)=>{if(c===d)return;c&&!$t(c,d)&&(E=fn(c),tt(c,_,m,!0),c=null),d.patchFlag===-2&&(y=!1,d.dynamicChildren=null);const{type:v,ref:C,shapeFlag:x}=d;switch(v){case ln:Y(c,d,h,E);break;case Se:W(c,d,h,E);break;case yn:c==null?$(d,h,E,D):process.env.NODE_ENV!=="production"&&F(c,d,h,D);break;case He:ct(c,d,h,E,_,m,D,N,y);break;default:x&1?Z(c,d,h,E,_,m,D,N,y):x&6?an(c,d,h,E,_,m,D,N,y):x&64||x&128?v.process(c,d,h,E,_,m,D,N,y,Mt):process.env.NODE_ENV!=="production"&&O("Invalid VNode type:",v,`(${typeof v})`)}C!=null&&_?qt(C,c&&c.ref,m,d||c,!d):C==null&&c&&c.ref!=null&&qt(c.ref,null,m,c,!0)},Y=(c,d,h,E)=>{if(c==null)r(d.el=l(d.children),h,E);else{const _=d.el=c.el;d.children!==c.children&&p(_,d.children)}},W=(c,d,h,E)=>{c==null?r(d.el=u(d.children||""),h,E):d.el=c.el},$=(c,d,h,E)=>{[c.el,c.anchor]=S(c.children,d,h,E,c.el,c.anchor)},F=(c,d,h,E)=>{if(d.children!==c.children){const _=g(c.anchor);T(c),[d.el,d.anchor]=S(d.children,h,_,E)}else d.el=c.el,d.anchor=c.anchor},oe=({el:c,anchor:d},h,E)=>{let _;for(;c&&c!==d;)_=g(c),r(c,h,E),c=_;r(d,h,E)},T=({el:c,anchor:d})=>{let h;for(;c&&c!==d;)h=g(c),s(c),c=h;s(d)},Z=(c,d,h,E,_,m,D,N,y)=>{if(d.type==="svg"?D="svg":d.type==="math"&&(D="mathml"),c==null)de(d,h,E,_,m,D,N,y);else{const v=c.el&&c.el._isVueCE?c.el:null;try{v&&v._beginPatch(),ce(c,d,_,m,D,N,y)}finally{v&&v._endPatch()}}},de=(c,d,h,E,_,m,D,N)=>{let y,v;const{props:C,shapeFlag:x,transition:V,dirs:P}=c;if(y=c.el=i(c.type,m,C&&C.is,C),x&8?a(y,c.children):x&16&&I(c.children,y,null,E,_,Jn(c,m),D,N),P&&ut(c,null,E,"created"),ie(y,c,c.scopeId,D,E),C){for(const K in C)K!=="value"&&!Bt(K)&&o(y,K,null,C[K],m,E);"value"in C&&o(y,"value",null,C.value,m),(v=C.onVnodeBeforeMount)&&Fe(v,E,c)}(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&(On(y,"__vnode",c,!0),On(y,"__vueParentComponent",E,!0)),P&&ut(c,null,E,"beforeMount");const k=wc(_,V);if(k&&V.beforeEnter(y),r(y,d,h),(v=C&&C.onVnodeMounted)||k||P){const K=process.env.NODE_ENV!=="production"&&Ne;ve(()=>{let z;process.env.NODE_ENV!=="production"&&(z=Qr(K));try{v&&Fe(v,E,c),k&&V.enter(y),P&&ut(c,null,E,"mounted")}finally{process.env.NODE_ENV!=="production"&&Qr(z)}},_)}},ie=(c,d,h,E,_)=>{if(h&&b(c,h),E)for(let m=0;m<E.length;m++)b(c,E[m]);if(_){let m=_.subTree;if(process.env.NODE_ENV!=="production"&&m.patchFlag>0&&m.patchFlag&2048&&(m=Fr(m.children)||m),d===m||Go(m.type)&&(m.ssContent===d||m.ssFallback===d)){const D=_.vnode;ie(c,D,D.scopeId,D.slotScopeIds,_.parent)}}},I=(c,d,h,E,_,m,D,N,y=0)=>{for(let v=y;v<c.length;v++){const C=c[v]=N?Ye(c[v]):xe(c[v]);w(null,C,d,h,E,_,m,D,N)}},ce=(c,d,h,E,_,m,D)=>{const N=d.el=c.el;(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&(N.__vnode=d);let{patchFlag:y,dynamicChildren:v,dirs:C}=d;y|=c.patchFlag&16;const x=c.props||q,V=d.props||q;let P;if(h&&at(h,!1),(P=V.onVnodeBeforeUpdate)&&Fe(P,h,d,c),C&&ut(d,c,h,"beforeUpdate"),h&&at(h,!0),process.env.NODE_ENV!=="production"&&Ne&&(y=0,D=!1,v=null),(x.innerHTML&&V.innerHTML==null||x.textContent&&V.textContent==null)&&a(N,""),v?(ue(c.dynamicChildren,v,N,h,E,Jn(d,_),m),process.env.NODE_ENV!=="production"&&bn(c,d)):D||Me(c,d,N,null,h,E,Jn(d,_),m,!1),y>0){if(y&16)le(N,x,V,h,_);else if(y&2&&x.class!==V.class&&o(N,"class",null,V.class,_),y&4&&o(N,"style",x.style,V.style,_),y&8){const k=d.dynamicProps;for(let K=0;K<k.length;K++){const z=k[K],Q=x[z],ae=V[z];(ae!==Q||z==="value")&&o(N,z,Q,ae,_,h)}}y&1&&c.children!==d.children&&a(N,d.children)}else!D&&v==null&&le(N,x,V,h,_);((P=V.onVnodeUpdated)||C)&&ve(()=>{P&&Fe(P,h,d,c),C&&ut(d,c,h,"updated")},E)},ue=(c,d,h,E,_,m,D)=>{for(let N=0;N<d.length;N++){const y=c[N],v=d[N],C=y.el&&(y.type===He||!$t(y,v)||y.shapeFlag&198)?f(y.el):h;w(y,v,C,null,E,_,m,D,!0)}},le=(c,d,h,E,_)=>{if(d!==h){if(d!==q)for(const m in d)!Bt(m)&&!(m in h)&&o(c,m,d[m],null,_,E);for(const m in h){if(Bt(m))continue;const D=h[m],N=d[m];D!==N&&m!=="value"&&o(c,m,N,D,_,E)}"value"in h&&o(c,"value",d.value,h.value,_)}},ct=(c,d,h,E,_,m,D,N,y)=>{const v=d.el=c?c.el:l(""),C=d.anchor=c?c.anchor:l("");let{patchFlag:x,dynamicChildren:V,slotScopeIds:P}=d;process.env.NODE_ENV!=="production"&&(Ne||x&2048)&&(x=0,y=!1,V=null),P&&(N=N?N.concat(P):P),c==null?(r(v,h,E),r(C,h,E),I(d.children||[],h,C,_,m,D,N,y)):x>0&&x&64&&V&&c.dynamicChildren&&c.dynamicChildren.length===V.length?(ue(c.dynamicChildren,V,h,_,m,D,N),process.env.NODE_ENV!=="production"?bn(c,d):(d.key!=null||_&&d===_.subTree)&&bn(c,d,!0)):Me(c,d,h,C,_,m,D,N,y)},an=(c,d,h,E,_,m,D,N,y)=>{d.slotScopeIds=N,c==null?d.shapeFlag&512?_.ctx.activate(d,h,E,D,y):De(d,h,E,_,m,D,y):me(c,d,y)},De=(c,d,h,E,_,m,D)=>{const N=c.component=Rc(c,E,_);if(process.env.NODE_ENV!=="production"&&N.type.__hmrId&&pl(N),process.env.NODE_ENV!=="production"&&(_n(c),yt(N,"mount")),Lr(c)&&(N.ctx.renderer=Mt),process.env.NODE_ENV!=="production"&&yt(N,"init"),$c(N,!1,D),process.env.NODE_ENV!=="production"&&Nt(N,"init"),process.env.NODE_ENV!=="production"&&Ne&&(c.el=null),N.asyncDep){if(_&&_.registerDep(N,H,D),!c.el){const y=N.subTree=Te(Se);W(null,y,d,h),c.placeholder=y.el}}else H(N,c,d,h,_,m,D);process.env.NODE_ENV!=="production"&&(mn(),Nt(N,"mount"))},me=(c,d,h)=>{const E=d.component=c.component;if(cc(c,d,h))if(E.asyncDep&&!E.asyncResolved){process.env.NODE_ENV!=="production"&&_n(d),j(E,d,h),process.env.NODE_ENV!=="production"&&mn();return}else E.next=d,E.update();else d.el=c.el,E.vnode=d},H=(c,d,h,E,_,m,D)=>{const N=()=>{if(c.isMounted){let{next:x,bu:V,u:P,parent:k,vnode:K}=c;{const Le=Bo(c);if(Le){x&&(x.el=K.el,j(c,x,D)),Le.asyncDep.then(()=>{ve(()=>{c.isUnmounted||v()},_)});return}}let z=x,Q;process.env.NODE_ENV!=="production"&&_n(x||c.vnode),at(c,!1),x?(x.el=K.el,j(c,x,D)):x=K,V&&Lt(V),(Q=x.props&&x.props.onVnodeBeforeUpdate)&&Fe(Q,k,x,K),at(c,!0),process.env.NODE_ENV!=="production"&&yt(c,"render");const ae=cs(c);process.env.NODE_ENV!=="production"&&Nt(c,"render");const Pe=c.subTree;c.subTree=ae,process.env.NODE_ENV!=="production"&&yt(c,"patch"),w(Pe,ae,f(Pe.el),fn(Pe),c,_,m),process.env.NODE_ENV!=="production"&&Nt(c,"patch"),x.el=ae.el,z===null&&uc(c,ae.el),P&&ve(P,_),(Q=x.props&&x.props.onVnodeUpdated)&&ve(()=>Fe(Q,k,x,K),_),(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&bo(c),process.env.NODE_ENV!=="production"&&mn()}else{let x;const{el:V,props:P}=d,{bm:k,m:K,parent:z,root:Q,type:ae}=c,Pe=Yt(d);at(c,!1),k&&Lt(k),!Pe&&(x=P&&P.onVnodeBeforeMount)&&Fe(x,z,d),at(c,!0);{Q.ce&&Q.ce._hasShadowRoot()&&Q.ce._injectChildStyle(ae,c.parent?c.parent.type:void 0),process.env.NODE_ENV!=="production"&&yt(c,"render");const Le=c.subTree=cs(c);process.env.NODE_ENV!=="production"&&Nt(c,"render"),process.env.NODE_ENV!=="production"&&yt(c,"patch"),w(null,Le,h,E,c,_,m),process.env.NODE_ENV!=="production"&&Nt(c,"patch"),d.el=Le.el}if(K&&ve(K,_),!Pe&&(x=P&&P.onVnodeMounted)){const Le=d;ve(()=>Fe(x,z,Le),_)}(d.shapeFlag&256||z&&Yt(z.vnode)&&z.vnode.shapeFlag&256)&&c.a&&ve(c.a,_),c.isMounted=!0,(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&El(c),d=h=E=null}};c.scope.on();const y=c.effect=new Ys(N);c.scope.off();const v=c.update=y.run.bind(y),C=c.job=y.runIfDirty.bind(y);C.i=c,C.id=c.uid,y.scheduler=()=>$n(C),at(c,!0),process.env.NODE_ENV!=="production"&&(y.onTrack=c.rtc?x=>Lt(c.rtc,x):void 0,y.onTrigger=c.rtg?x=>Lt(c.rtg,x):void 0),v()},j=(c,d,h)=>{d.component=c;const E=c.vnode.props;c.vnode=d,c.next=null,dc(c,d.props,E,h),Nc(c,d.children,h),Ce(),Zr(c),Ae()},Me=(c,d,h,E,_,m,D,N,y=!1)=>{const v=c&&c.children,C=c?c.shapeFlag:0,x=d.children,{patchFlag:V,shapeFlag:P}=d;if(V>0){if(V&128){Ct(v,x,h,E,_,m,D,N,y);return}else if(V&256){Un(v,x,h,E,_,m,D,N,y);return}}P&8?(C&16&&At(v,_,m),x!==v&&a(h,x)):C&16?P&16?Ct(v,x,h,E,_,m,D,N,y):At(v,_,m,!0):(C&8&&a(h,""),P&16&&I(x,h,E,_,m,D,N,y))},Un=(c,d,h,E,_,m,D,N,y)=>{c=c||Wt,d=d||Wt;const v=c.length,C=d.length,x=Math.min(v,C);let V;for(V=0;V<x;V++){const P=d[V]=y?Ye(d[V]):xe(d[V]);w(c[V],P,h,null,_,m,D,N,y)}v>C?At(c,_,m,!0,!1,x):I(d,h,E,_,m,D,N,y,x)},Ct=(c,d,h,E,_,m,D,N,y)=>{let v=0;const C=d.length;let x=c.length-1,V=C-1;for(;v<=x&&v<=V;){const P=c[v],k=d[v]=y?Ye(d[v]):xe(d[v]);if($t(P,k))w(P,k,h,null,_,m,D,N,y);else break;v++}for(;v<=x&&v<=V;){const P=c[x],k=d[V]=y?Ye(d[V]):xe(d[V]);if($t(P,k))w(P,k,h,null,_,m,D,N,y);else break;x--,V--}if(v>x){if(v<=V){const P=V+1,k=P<C?d[P].el:E;for(;v<=V;)w(null,d[v]=y?Ye(d[v]):xe(d[v]),h,k,_,m,D,N,y),v++}}else if(v>V)for(;v<=x;)tt(c[v],_,m,!0),v++;else{const P=v,k=v,K=new Map;for(v=k;v<=V;v++){const pe=d[v]=y?Ye(d[v]):xe(d[v]);pe.key!=null&&(process.env.NODE_ENV!=="production"&&K.has(pe.key)&&O("Duplicate keys found during update:",JSON.stringify(pe.key),"Make sure keys are unique."),K.set(pe.key,v))}let z,Q=0;const ae=V-k+1;let Pe=!1,Le=0;const Pt=new Array(ae);for(v=0;v<ae;v++)Pt[v]=0;for(v=P;v<=x;v++){const pe=c[v];if(Q>=ae){tt(pe,_,m,!0);continue}let Re;if(pe.key!=null)Re=K.get(pe.key);else for(z=k;z<=V;z++)if(Pt[z-k]===0&&$t(pe,d[z])){Re=z;break}Re===void 0?tt(pe,_,m,!0):(Pt[Re-k]=v+1,Re>=Le?Le=Re:Pe=!0,w(pe,d[Re],h,null,_,m,D,N,y),Q++)}const Wr=Pe?Tc(Pt):Wt;for(z=Wr.length-1,v=ae-1;v>=0;v--){const pe=k+v,Re=d[pe],Br=d[pe+1],Kr=pe+1<C?Br.el||Ko(Br):E;Pt[v]===0?w(null,Re,h,Kr,_,m,D,N,y):Pe&&(z<0||v!==Wr[z]?Et(Re,h,Kr,2):z--)}}},Et=(c,d,h,E,_=null)=>{const{el:m,type:D,transition:N,children:y,shapeFlag:v}=c;if(v&6){Et(c.component.subTree,d,h,E);return}if(v&128){c.suspense.move(d,h,E);return}if(v&64){D.move(c,d,h,Mt);return}if(D===He){r(m,d,h);for(let x=0;x<y.length;x++)Et(y[x],d,h,E);r(c.anchor,d,h);return}if(D===yn){oe(c,d,h);return}if(E!==2&&v&1&&N)if(E===0)N.beforeEnter(m),r(m,d,h),ve(()=>N.enter(m),_);else{const{leave:x,delayLeave:V,afterLeave:P}=N,k=()=>{c.ctx.isUnmounted?s(m):r(m,d,h)},K=()=>{m._isLeaving&&m[Al](!0),x(m,()=>{k(),P&&P()})};V?V(m,k,K):K()}else r(m,d,h)},tt=(c,d,h,E=!1,_=!1)=>{const{type:m,props:D,ref:N,children:y,dynamicChildren:v,shapeFlag:C,patchFlag:x,dirs:V,cacheIndex:P,memo:k}=c;if(x===-2&&(_=!1),N!=null&&(Ce(),qt(N,null,h,c,!0),Ae()),P!=null&&(d.renderCache[P]=void 0),C&256){d.ctx.deactivate(c);return}const K=C&1&&V,z=!Yt(c);let Q;if(z&&(Q=D&&D.onVnodeBeforeUnmount)&&Fe(Q,d,c),C&6)ri(c.component,h,E);else{if(C&128){c.suspense.unmount(h,E);return}K&&ut(c,null,d,"beforeUnmount"),C&64?c.type.remove(c,d,h,Mt,E):v&&!v.hasOnce&&(m!==He||x>0&&x&64)?At(v,d,h,!1,!0):(m===He&&x&384||!_&&C&16)&&At(y,d,h),E&&kn(c)}const ae=k!=null&&P==null;(z&&(Q=D&&D.onVnodeUnmounted)||K||ae)&&ve(()=>{Q&&Fe(Q,d,c),K&&ut(c,null,d,"unmounted"),ae&&(c.el=null)},h)},kn=c=>{const{type:d,el:h,anchor:E,transition:_}=c;if(d===He){process.env.NODE_ENV!=="production"&&c.patchFlag>0&&c.patchFlag&2048&&_&&!_.persisted?c.children.forEach(D=>{D.type===Se?s(D.el):kn(D)}):ni(h,E);return}if(d===yn){T(c);return}const m=()=>{s(h),_&&!_.persisted&&_.afterLeave&&_.afterLeave()};if(c.shapeFlag&1&&_&&!_.persisted){const{leave:D,delayLeave:N}=_,y=()=>D(h,m);N?N(c.el,m,y):y()}else m()},ni=(c,d)=>{let h;for(;c!==d;)h=g(c),s(c),c=h;s(d)},ri=(c,d,h)=>{process.env.NODE_ENV!=="production"&&c.type.__hmrId&&hl(c);const{bum:E,scope:_,job:m,subTree:D,um:N,m:y,a:v}=c;hs(y),hs(v),E&&Lt(E),_.stop(),m&&(m.flags|=8,tt(D,c,d,h)),N&&ve(N,d),ve(()=>{c.isUnmounted=!0},d),(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&yl(c)},At=(c,d,h,E=!1,_=!1,m=0)=>{for(let D=m;D<c.length;D++)tt(c[D],d,h,E,_)},fn=c=>{if(c.shapeFlag&6)return fn(c.component.subTree);if(c.shapeFlag&128)return c.suspense.next();const d=g(c.anchor||c.el),h=d&&d[Il];return h?g(h):d};let Wn=!1;const kr=(c,d,h)=>{let E;c==null?d._vnode&&(tt(d._vnode,null,null,!0),E=d._vnode.component):w(d._vnode||null,c,d,null,null,null,h),d._vnode=c,Wn||(Wn=!0,Zr(E),mo(),Wn=!1)},Mt={p:w,um:tt,m:Et,r:kn,mt:De,mc:I,pc:Me,pbc:ue,n:fn,o:e};return{render:kr,hydrate:void 0,createApp:nc(kr)}}function Jn({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function at({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function wc(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function bn(e,t,n=!1){const r=e.children,s=t.children;if(M(r)&&M(s))for(let o=0;o<r.length;o++){const i=r[o];let l=s[o];l.shapeFlag&1&&!l.dynamicChildren&&((l.patchFlag<=0||l.patchFlag===32)&&(l=s[o]=Ye(s[o]),l.el=i.el),!n&&l.patchFlag!==-2&&bn(i,l)),l.type===ln&&(l.patchFlag===-1&&(l=s[o]=Ye(l)),l.el=i.el),l.type===Se&&!l.el&&(l.el=i.el),process.env.NODE_ENV!=="production"&&l.el&&(l.el.__vnode=l)}}function Tc(e){const t=e.slice(),n=[0];let r,s,o,i,l;const u=e.length;for(r=0;r<u;r++){const p=e[r];if(p!==0){if(s=n[n.length-1],e[s]<p){t[r]=s,n.push(r);continue}for(o=0,i=n.length-1;o<i;)l=o+i>>1,e[n[l]]<p?o=l+1:i=l;p<e[n[o]]&&(o>0&&(t[r]=n[o-1]),n[o]=r)}}for(o=n.length,i=n[o-1];o-- >0;)n[o]=i,i=t[i];return n}function Bo(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Bo(t)}function hs(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function Ko(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?Ko(t.subTree):null}const Go=e=>e.__isSuspense;function Vc(e,t){t&&t.pendingBranch?M(e)?t.effects.push(...e):t.effects.push(e):_o(e)}const He=Symbol.for("v-fgt"),ln=Symbol.for("v-txt"),Se=Symbol.for("v-cmt"),yn=Symbol.for("v-stc");function St(e){return e?e.__v_isVNode===!0:!1}function $t(e,t){if(process.env.NODE_ENV!=="production"&&t.shapeFlag&6&&e.component){const n=vn.get(t.type);if(n&&n.has(e.component))return e.shapeFlag&=-257,t.shapeFlag&=-513,!1}return e.type===t.type&&e.key===t.key}const Sc=(...e)=>qo(...e),zo=({key:e})=>e??null,Nn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?X(e)||te(e)||L(e)?{i:Oe,r:e,k:t,f:!!n}:e:null);function Ic(e,t=null,n=null,r=0,s=null,o=e===He?0:1,i=!1,l=!1){const u={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&zo(t),ref:t&&Nn(t),scopeId:No,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:r,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:Oe};return l?(Hr(u,n),o&128&&e.normalize(u)):n&&(u.shapeFlag|=X(n)?8:16),process.env.NODE_ENV!=="production"&&u.key!==u.key&&O("VNode created with invalid key (NaN). VNode type:",u.type),u}const Te=process.env.NODE_ENV!=="production"?Sc:qo;function qo(e,t=null,n=null,r=0,s=null,o=!1){if((!e||e===Kl)&&(process.env.NODE_ENV!=="production"&&!e&&O(`Invalid vnode type when creating vnode: ${e}.`),e=Se),St(e)){const l=lt(e,t,!0);return n&&Hr(l,n),l.patchFlag=-2,l}if(ei(e)&&(e=e.__vccOpts),t){t=Cc(t);let{class:l,style:u}=t;l&&!X(l)&&(t.class=Nr(l)),B(u)&&(Dn(u)&&!M(u)&&(u=ne({},u)),t.style=yr(u))}const i=X(e)?1:Go(e)?128:Cl(e)?64:B(e)?4:L(e)?2:0;return process.env.NODE_ENV!=="production"&&i&4&&Dn(e)&&(e=R(e),O("Vue received a Component that was made a reactive object. This can lead to unnecessary performance overhead and should be avoided by marking the component with `markRaw` or using `shallowRef` instead of `ref`.",`
|
|
19
|
+
Component that was made reactive: `,e)),Ic(e,t,n,r,s,i,o,!0)}function Cc(e){return e?Dn(e)||$o(e)?ne({},e):e:null}function lt(e,t,n=!1,r=!1){const{props:s,ref:o,patchFlag:i,children:l,transition:u}=e,p=t?Mc(s||{},t):s,a={__v_isVNode:!0,__v_skip:!0,type:e.type,props:p,key:p&&zo(p),ref:t&&t.ref?n&&o?M(o)?o.concat(Nn(t)):[o,Nn(t)]:Nn(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:process.env.NODE_ENV!=="production"&&i===-1&&M(l)?l.map(Yo):l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==He?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:u,component:e.component,suspense:e.suspense,ssContent:e.ssContent&<(e.ssContent),ssFallback:e.ssFallback&<(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return u&&r&&Pr(a,u.clone(a)),a}function Yo(e){const t=lt(e);return M(e.children)&&(t.children=e.children.map(Yo)),t}function Ac(e=" ",t=0){return Te(ln,null,e,t)}function xe(e){return e==null||typeof e=="boolean"?Te(Se):M(e)?Te(He,null,e.slice()):St(e)?Ye(e):Te(ln,null,String(e))}function Ye(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:lt(e)}function Hr(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(M(t))n=16;else if(typeof t=="object")if(r&65){const s=t.default;s&&(s._c&&(s._d=!1),Hr(e,s()),s._c&&(s._d=!0));return}else{n=32;const s=t._;!s&&!$o(t)?t._ctx=Oe:s===3&&Oe&&(Oe.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else L(t)?(t={default:t,_ctx:Oe},n=32):(t=String(t),r&64?(n=16,t=[Ac(t)]):n=8);e.children=t,e.shapeFlag|=n}function Mc(...e){const t={};for(let n=0;n<e.length;n++){const r=e[n];for(const s in r)if(s==="class")t.class!==r.class&&(t.class=Nr([t.class,r.class]));else if(s==="style")t.style=yr([t.style,r.style]);else if(nn(s)){const o=t[s],i=r[s];i&&o!==i&&!(M(o)&&o.includes(i))?t[s]=o?[].concat(o,i):i:i==null&&o==null&&!Jt(s)&&(t[s]=i)}else s!==""&&(t[s]=r[s])}return t}function Fe(e,t,n,r=null){Ke(e,t,7,[n,r])}const Pc=Ao();let Lc=0;function Rc(e,t,n){const r=e.type,s=(t?t.appContext:e.appContext)||Pc,o={uid:Lc++,vnode:e,type:r,parent:t,appContext:s,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new Si(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(s.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:Ho(r,s),emitsOptions:Mo(r,s),emit:null,emitted:null,propsDefaults:q,inheritAttrs:r.inheritAttrs,ctx:q,data:q,props:q,attrs:q,slots:q,refs:q,setupState:q,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return process.env.NODE_ENV!=="production"?o.ctx=Gl(o):o.ctx={_:o},o.root=t?t.root:o,o.emit=sc.bind(null,o),e.ce&&e.ce(o),o}let re=null;const Jo=()=>re||Oe;let Mn,hr;{const e=ot(),t=(n,r)=>{let s;return(s=e[n])||(s=e[n]=[]),s.push(r),o=>{s.length>1?s.forEach(i=>i(o)):s[0](o)}};Mn=t("__VUE_INSTANCE_SETTERS__",n=>re=n),hr=t("__VUE_SSR_SETTERS__",n=>tn=n)}const cn=e=>{const t=re;return Mn(e),e.scope.on(),()=>{e.scope.off(),Mn(t)}},gs=()=>{re&&re.scope.off(),Mn(null)},Fc=Qe("slot,component");function gr(e,{isNativeTag:t}){(Fc(e)||t(e))&&O("Do not use built-in or reserved HTML elements as component id: "+e)}function Xo(e){return e.vnode.shapeFlag&4}let tn=!1;function $c(e,t=!1,n=!1){t&&hr(t);const{props:r,children:s}=e.vnode,o=Xo(e);ac(e,r,o,t),yc(e,s,n||t);const i=o?jc(e,t):void 0;return t&&hr(!1),i}function jc(e,t){const n=e.type;if(process.env.NODE_ENV!=="production"){if(n.name&&gr(n.name,e.appContext.config),n.components){const s=Object.keys(n.components);for(let o=0;o<s.length;o++)gr(s[o],e.appContext.config)}if(n.directives){const s=Object.keys(n.directives);for(let o=0;o<s.length;o++)Oo(s[o])}n.compilerOptions&&Hc()&&O('"compilerOptions" is only supported when using a build of Vue that includes the runtime compiler. Since you are using a runtime-only build, the options should be passed via your build tool config instead.')}e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,So),process.env.NODE_ENV!=="production"&&zl(e);const{setup:r}=n;if(r){Ce();const s=e.setupContext=r.length>1?kc(e):null,o=cn(e),i=It(r,e,0,[process.env.NODE_ENV!=="production"?We(e.props):e.props,s]),l=vr(i);if(Ae(),o(),(l||e.sp)&&!Yt(e)&&wo(e),l){if(i.then(gs,gs),t)return i.then(u=>{_s(e,u,t)}).catch(u=>{sn(u,e,0)});if(e.asyncDep=i,process.env.NODE_ENV!=="production"&&!e.suspense){const u=un(e,n);O(`Component <${u}>: setup function returned a promise, but no <Suspense> boundary was found in the parent component tree. A component with async setup() must be nested in a <Suspense> in order to be rendered.`)}}else _s(e,i,t)}else Zo(e,t)}function _s(e,t,n){L(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:B(t)?(process.env.NODE_ENV!=="production"&&St(t)&&O("setup() should not return VNodes directly - return a render function instead."),(process.env.NODE_ENV!=="production"||__VUE_PROD_DEVTOOLS__)&&(e.devtoolsRawSetupState=t),e.setupState=fo(t),process.env.NODE_ENV!=="production"&&ql(e)):process.env.NODE_ENV!=="production"&&t!==void 0&&O(`setup() should return an object. Received: ${t===null?"null":typeof t}`),Zo(e,n)}const Hc=()=>!0;function Zo(e,t,n){const r=e.type;if(e.render||(e.render=r.render||ee),__VUE_OPTIONS_API__){const s=cn(e);Ce();try{Jl(e)}finally{Ae(),s()}}process.env.NODE_ENV!=="production"&&!r.render&&e.render===ee&&!t&&(r.template?O('Component provided template option but runtime compilation is not supported in this build of Vue. Configure your bundler to alias "vue" to "vue/dist/vue.esm-bundler.js".'):O("Component is missing template or render function: ",r))}const ms=process.env.NODE_ENV!=="production"?{get(e,t){return Cn(),se(e,"get",""),e[t]},set(){return O("setupContext.attrs is readonly."),!1},deleteProperty(){return O("setupContext.attrs is readonly."),!1}}:{get(e,t){return se(e,"get",""),e[t]}};function Uc(e){return new Proxy(e.slots,{get(t,n){return se(e,"get","$slots"),t[n]}})}function kc(e){const t=n=>{if(process.env.NODE_ENV!=="production"&&(e.exposed&&O("expose() should be called only once per setup()."),n!=null)){let r=typeof n;r==="object"&&(M(n)?r="array":te(n)&&(r="ref")),r!=="object"&&O(`expose() should be passed a plain object, received ${r}.`)}e.exposed=n||{}};if(process.env.NODE_ENV!=="production"){let n,r;return Object.freeze({get attrs(){return n||(n=new Proxy(e.attrs,ms))},get slots(){return r||(r=Uc(e))},get emit(){return(s,...o)=>e.emit(s,...o)},expose:t})}else return{attrs:new Proxy(e.attrs,ms),slots:e.slots,emit:e.emit,expose:t}}function Ur(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(fo(Ji(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in mt)return mt[n](e)},has(t,n){return n in t||n in mt}})):e.proxy}const Wc=/(?:^|[-_])\w/g,Bc=e=>e.replace(Wc,t=>t.toUpperCase()).replace(/[-_]/g,"");function Qo(e,t=!0){return L(e)?e.displayName||e.name:e.name||t&&e.__name}function un(e,t,n=!1){let r=Qo(t);if(!r&&t.__file){const s=t.__file.match(/([^/\\]+)\.\w+$/);s&&(r=s[1])}if(!r&&e){const s=o=>{for(const i in o)if(o[i]===t)return i};r=s(e.components)||e.parent&&s(e.parent.type.components)||s(e.appContext.components)}return r?Bc(r):n?"App":"Anonymous"}function ei(e){return L(e)&&"__vccOpts"in e}const Kc=(e,t)=>{const n=nl(e,t,tn);if(process.env.NODE_ENV!=="production"){const r=Jo();r&&r.appContext.config.warnRecursiveComputed&&(n._warnRecursive=!0)}return n};function A(e,t,n){try{const r=arguments.length;return r===2?B(t)&&!M(t)?St(t)?Te(e,null,[t]):Te(e,t):Te(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&St(n)&&(n=[n]),Te(e,t,n))}finally{}}function Gc(){if(process.env.NODE_ENV==="production"||typeof window>"u")return;const e={style:"color:#3ba776"},t={style:"color:#1677ff"},n={style:"color:#f5222d"},r={style:"color:#eb2f96"},s={__vue_custom_formatter:!0,header(f){if(!B(f))return null;if(f.__isVue)return["div",e,"VueInstance"];if(te(f)){Ce();const g=f.value;return Ae(),["div",{},["span",e,a(f)],"<",l(g),">"]}else{if(gt(f))return["div",{},["span",e,be(f)?"ShallowReactive":"Reactive"],"<",l(f),`>${Be(f)?" (readonly)":""}`];if(Be(f))return["div",{},["span",e,be(f)?"ShallowReadonly":"Readonly"],"<",l(f),">"]}return null},hasBody(f){return f&&f.__isVue},body(f){if(f&&f.__isVue)return["div",{},...o(f.$)]}};function o(f){const g=[];f.type.props&&f.props&&g.push(i("props",R(f.props))),f.setupState!==q&&g.push(i("setup",f.setupState)),f.data!==q&&g.push(i("data",R(f.data)));const b=u(f,"computed");b&&g.push(i("computed",b));const S=u(f,"inject");return S&&g.push(i("injected",S)),g.push(["div",{},["span",{style:r.style+";opacity:0.66"},"$ (internal): "],["object",{object:f}]]),g}function i(f,g){return g=ne({},g),Object.keys(g).length?["div",{style:"line-height:1.25em;margin-bottom:0.6em"},["div",{style:"color:#476582"},f],["div",{style:"padding-left:1.25em"},...Object.keys(g).map(b=>["div",{},["span",r,b+": "],l(g[b],!1)])]]:["span",{}]}function l(f,g=!0){return typeof f=="number"?["span",t,f]:typeof f=="string"?["span",n,JSON.stringify(f)]:typeof f=="boolean"?["span",r,f]:B(f)?["object",{object:g?R(f):f}]:["span",n,String(f)]}function u(f,g){const b=f.type;if(L(b))return;const S={};for(const w in f.ctx)p(b,w,g)&&(S[w]=f.ctx[w]);return S}function p(f,g,b){const S=f[b];if(M(S)&&S.includes(g)||B(S)&&g in S||f.extends&&p(f.extends,g,b)||f.mixins&&f.mixins.some(w=>p(w,g,b)))return!0}function a(f){return be(f)?"ShallowRef":f.effect?"ComputedRef":"Ref"}window.devtoolsFormatters?window.devtoolsFormatters.push(s):window.devtoolsFormatters=[s]}const vs="3.5.34",Je=process.env.NODE_ENV!=="production"?O:ee;process.env.NODE_ENV;process.env.NODE_ENV;/**
|
|
20
|
+
* @vue/runtime-dom v3.5.34
|
|
21
|
+
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
22
|
+
* @license MIT
|
|
23
|
+
**/let _r;const Es=typeof window<"u"&&window.trustedTypes;if(Es)try{_r=Es.createPolicy("vue",{createHTML:e=>e})}catch(e){process.env.NODE_ENV!=="production"&&Je(`Error creating trusted types policy: ${e}`)}const ti=_r?e=>_r.createHTML(e):e=>e,zc="http://www.w3.org/2000/svg",qc="http://www.w3.org/1998/Math/MathML",ze=typeof document<"u"?document:null,bs=ze&&ze.createElement("template"),Yc={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const s=t==="svg"?ze.createElementNS(zc,e):t==="mathml"?ze.createElementNS(qc,e):n?ze.createElement(e,{is:n}):ze.createElement(e);return e==="select"&&r&&r.multiple!=null&&s.setAttribute("multiple",r.multiple),s},createText:e=>ze.createTextNode(e),createComment:e=>ze.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>ze.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,s,o){const i=n?n.previousSibling:t.lastChild;if(s&&(s===o||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===o||!(s=s.nextSibling)););else{bs.innerHTML=ti(r==="svg"?`<svg>${e}</svg>`:r==="mathml"?`<math>${e}</math>`:e);const l=bs.content;if(r==="svg"||r==="mathml"){const u=l.firstChild;for(;u.firstChild;)l.appendChild(u.firstChild);l.removeChild(u)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Jc=Symbol("_vtc");function Xc(e,t,n){const r=e[Jc];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const ys=Symbol("_vod"),Zc=Symbol("_vsh"),Qc=Symbol(process.env.NODE_ENV!=="production"?"CSS_VAR_TEXT":""),eu=/(?:^|;)\s*display\s*:/;function tu(e,t,n){const r=e.style,s=X(n);let o=!1;if(n&&!s){if(t)if(X(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&kt(r,l,"")}else for(const i in t)n[i]==null&&kt(r,i,"");for(const i in n){i==="display"&&(o=!0);const l=n[i];l!=null?su(e,i,!X(t)&&t?t[i]:void 0,l)||kt(r,i,l):kt(r,i,"")}}else if(s){if(t!==n){const i=r[Qc];i&&(n+=";"+i),r.cssText=n,o=eu.test(n)}}else t&&e.removeAttribute("style");ys in e&&(e[ys]=o?r.display:"",e[Zc]&&(r.display="none"))}const nu=/[^\\];\s*$/,Ns=/\s*!important$/;function kt(e,t,n){if(M(n))n.forEach(r=>kt(e,t,r));else if(n==null&&(n=""),process.env.NODE_ENV!=="production"&&nu.test(n)&&Je(`Unexpected semicolon at the end of '${t}' style value: '${n}'`),t.startsWith("--"))e.setProperty(t,n);else{const r=ru(e,t);Ns.test(n)?e.setProperty(it(r),n.replace(Ns,""),"important"):e[r]=n}}const Os=["Webkit","Moz","ms"],Xn={};function ru(e,t){const n=Xn[t];if(n)return n;let r=Ee(t);if(r!=="filter"&&r in e)return Xn[t]=r;r=Ln(r);for(let s=0;s<Os.length;s++){const o=Os[s]+r;if(o in e)return Xn[t]=o}return t}function su(e,t,n,r){return e.tagName==="TEXTAREA"&&(t==="width"||t==="height")&&X(r)&&n===r}const Ds="http://www.w3.org/1999/xlink";function xs(e,t,n,r,s,o=Ti(t)){r&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(Ds,t.slice(6,t.length)):e.setAttributeNS(Ds,t,n):n==null||o&&!qs(n)?e.removeAttribute(t):e.setAttribute(t,o?"":Xe(n)?String(n):n)}function ws(e,t,n,r,s){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?ti(n):n);return}const o=e.tagName;if(t==="value"&&o!=="PROGRESS"&&!o.includes("-")){const l=o==="OPTION"?e.getAttribute("value")||"":e.value,u=n==null?e.type==="checkbox"?"on":"":String(n);(l!==u||!("_value"in e))&&(e.value=u),n==null&&e.removeAttribute(t),e._value=n;return}let i=!1;if(n===""||n==null){const l=typeof e[t];l==="boolean"?n=qs(n):n==null&&l==="string"?(n="",i=!0):l==="number"&&(n=0,i=!0)}try{e[t]=n}catch(l){process.env.NODE_ENV!=="production"&&!i&&Je(`Failed setting prop "${t}" on <${o.toLowerCase()}>: value ${n} is invalid.`,l)}i&&e.removeAttribute(s||t)}function ou(e,t,n,r){e.addEventListener(t,n,r)}function iu(e,t,n,r){e.removeEventListener(t,n,r)}const Ts=Symbol("_vei");function lu(e,t,n,r,s=null){const o=e[Ts]||(e[Ts]={}),i=o[t];if(r&&i)i.value=process.env.NODE_ENV!=="production"?Ss(r,t):r;else{const[l,u]=cu(t);if(r){const p=o[t]=fu(process.env.NODE_ENV!=="production"?Ss(r,t):r,s);ou(e,l,p,u)}else i&&(iu(e,l,i,u),o[t]=void 0)}}const Vs=/(?:Once|Passive|Capture)$/;function cu(e){let t;if(Vs.test(e)){t={};let r;for(;r=e.match(Vs);)e=e.slice(0,e.length-r[0].length),t[r[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):it(e.slice(2)),t]}let Zn=0;const uu=Promise.resolve(),au=()=>Zn||(uu.then(()=>Zn=0),Zn=Date.now());function fu(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;Ke(du(r,n.value),t,5,[r])};return n.value=e,n.attached=au(),n}function Ss(e,t){return L(e)||M(e)?e:(Je(`Wrong type passed as event handler to ${t} - did you forget @ or : in front of your prop?
|
|
24
|
+
Expected function or array of functions, received type ${typeof e}.`),ee)}function du(e,t){if(M(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>s=>!s._stopped&&r&&r(s))}else return t}const Is=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,pu=(e,t,n,r,s,o)=>{const i=s==="svg";t==="class"?Xc(e,r,i):t==="style"?tu(e,n,r):nn(t)?Jt(t)||lu(e,t,n,r,o):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):hu(e,t,r,i))?(ws(e,t,r),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&xs(e,t,r,i,o,t!=="value")):e._isVueCE&&(gu(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!X(r)))?ws(e,Ee(t),r,o,t):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),xs(e,t,r,i))};function hu(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&Is(t)&&L(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const s=e.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return!1}return Is(t)&&X(n)?!1:t in e}function gu(e,t){const n=e._def.props;if(!n)return!1;const r=Ee(t);return Array.isArray(n)?n.some(s=>Ee(s)===r):Object.keys(n).some(s=>Ee(s)===r)}const _u=ne({patchProp:pu},Yc);let Cs;function mu(){return Cs||(Cs=Dc(_u))}const vu=((...e)=>{const t=mu().createApp(...e);process.env.NODE_ENV!=="production"&&(bu(t),yu(t));const{mount:n}=t;return t.mount=r=>{const s=Nu(r);if(!s)return;const o=t._component;!L(o)&&!o.render&&!o.template&&(o.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const i=n(s,!1,Eu(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),i},t});function Eu(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function bu(e){Object.defineProperty(e.config,"isNativeTag",{value:t=>Oi(t)||Di(t)||xi(t),writable:!1})}function yu(e){{const t=e.config.isCustomElement;Object.defineProperty(e.config,"isCustomElement",{get(){return t},set(){Je("The `isCustomElement` config option is deprecated. Use `compilerOptions.isCustomElement` instead.")}});const n=e.config.compilerOptions,r='The `compilerOptions` config option is only respected when using a build of Vue.js that includes the runtime compiler (aka "full build"). Since you are using the runtime-only build, `compilerOptions` must be passed to `@vue/compiler-dom` in the build setup instead.\n- For vue-loader: pass it via vue-loader\'s `compilerOptions` loader option.\n- For vue-cli: see https://cli.vuejs.org/guide/webpack.html#modifying-options-of-a-loader\n- For vite: pass it via @vitejs/plugin-vue options. See https://github.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue#example-for-passing-options-to-vuecompiler-sfc';Object.defineProperty(e.config,"compilerOptions",{get(){return Je(r),n},set(){Je(r)}})}}function Nu(e){if(X(e)){const t=document.querySelector(e);return process.env.NODE_ENV!=="production"&&!t&&Je(`Failed to mount app: mount target selector "${e}" returned null.`),t}return process.env.NODE_ENV!=="production"&&window.ShadowRoot&&e instanceof window.ShadowRoot&&e.mode==="closed"&&Je('mounting on a ShadowRoot with `{mode: "closed"}` may lead to unpredictable bugs'),e}/**
|
|
25
|
+
* vue v3.5.34
|
|
26
|
+
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
27
|
+
* @license MIT
|
|
28
|
+
**/function Ou(){Gc()}process.env.NODE_ENV!=="production"&&Ou();const Du=["#ef4444","#f97316","#eab308","#22c55e","#06b6d4","#3b82f6","#8b5cf6","#ec4899","#ffffff","#000000","#9ca3af","#6b7280"];function As(e){const t=e.replace("#","");return`rgba(${parseInt(t.substring(0,2),16)},${parseInt(t.substring(2,4),16)},${parseInt(t.substring(4,6),16)},1)`}function xu(e){const t=e.match(/rgba?\((\d+),\s*(\d+),\s*(\d+)/);return t?"#"+[t[1],t[2],t[3]].map(n=>parseInt(n).toString(16).padStart(2,"0")).join(""):"#000000"}function Ms(e,t,n){const r=[];for(let s=0;s<n;s++){const o=2*Math.PI*s/n;r.push([e[0]+t*Math.cos(o),e[1]+t*Math.sin(o)])}return r.push(r[0]),r}function Ps(e){return 111320*Math.cos(e*Math.PI/180)}function wu(e){const t=e.match(/\((.*)\)/);return t?t[1].replace(/^\(/,"").replace(/\)$/,"").split(",").map(r=>{const[s,o]=r.trim().split(/\s+/).map(Number);return[s,o]}):null}class Tu{constructor(t){he(this,"adapter");he(this,"renderer");he(this,"bizCallbacks");he(this,"stateMachine",new Ws);he(this,"config",null);he(this,"featureMap",new Map);he(this,"currentDrawing",null);he(this,"drawnCount",0);he(this,"roundFeatureIds",new Set);he(this,"uiApp",null);he(this,"uiMountEl",null);he(this,"editingFeature",null);he(this,"measureLabels",[]);this.adapter=t.adapter,this.renderer=this.adapter.getFeatureRenderer(),this.bizCallbacks=t.bizCallbacks||{},this.renderer.onHoverAction((n,r)=>{n==="edit"?this.editFeature(r.id):n==="delete"&&this.requestDeleteFeature(r.id),this.renderer.hideHoverActions()})}onMouseMove(t){if(this.stateMachine.isDrawing()&&this.currentDrawing){const{type:n,points:r}=this.currentDrawing;n==="circle"&&r.length>=1?this.renderer.updatePreview([r[0],t],n):n==="rect"&&r.length>=1?this.renderer.updatePreview([r[0],t],n):n==="line"&&r.length>=1?this.renderer.updatePreview([...r,t],n):(n==="polyline"||n==="customShape")&&r.length>=1?this.renderer.updatePreview([...r,t],n):n==="triangle"&&r.length>=1&&(r.length===1?this.renderer.updatePreview([r[0],t,t],n):this.renderer.updatePreview([...r,t],n)),this.updateMeasureLabels(n,r,t);return}if(!this.stateMachine.isEditing()&&this.stateMachine.isIdle()){const n=this.renderer.getFeatureAtCoordinate(t);this.renderer.highlightHoverFeature(n?n.id:null)}}onClick(t){if(this.stateMachine.isDrawing()&&this.currentDrawing){const n=this.currentDrawing.type;if(n==="triangle"&&this.currentDrawing.points.length===1){this.currentDrawing.points.push(t);return}if(n==="polyline"||n==="customShape"){this.currentDrawing.points.push(t);return}return}if(!this.stateMachine.isEditing()&&this.stateMachine.isIdle()){const n=this.renderer.getFeatureAtCoordinate(t);n&&(this.canEditFeature(n.id)||this.canDeleteFeature(n.id))?this.renderer.showHoverActions(n,t,{showEdit:this.canEditFeature(n.id),showDelete:this.canDeleteFeature(n.id)}):this.renderer.hideHoverActions();return}}async onDblClick(t){var o,i;if(this.stateMachine.isIdle()){if(this.renderer.getFeatureAtCoordinate(t))return;const l=((o=this.config)==null?void 0:o.limit)??1;if(!this.config||l<=0)return;if(this.drawnCount>=l){(i=this.config)!=null&&i.enableLimitMsg&&this.showToast("绘制元素数量超出限制");return}this.stateMachine.transitionTo(J.DRAWING),this.currentDrawing={type:this.config.type,points:[t]},this.renderer.startDrawing(this.config.type),this.log("DRAWING start",{type:this.config.type,point:t,count:this.drawnCount+1});return}if(!this.stateMachine.isDrawing()||!this.currentDrawing)return;const{type:n,points:r}=this.currentDrawing;if(n==="customShape"||n==="triangle"){const l=[...r,t];if(new Set(l.map(p=>`${p[0]},${p[1]}`)).size<3){this.renderer.cancelDrawing(),this.stateMachine.forceTransitionTo(J.IDLE),this.currentDrawing=null,this.clearMeasureLabels();return}}const s=this.makeFeature(n,r,t);if(!s){this.stateMachine.forceTransitionTo(J.IDLE),this.currentDrawing=null,this.clearMeasureLabels();return}await this.invokeInsert(s)&&(this.featureMap.set(s.id,s),this.roundFeatureIds.add(s.id),this.renderer.cancelDrawing(),this.renderer.renderFeature(s),this.drawnCount++,this.renderer.refreshAllFeatureLabels(this.getAllFeatures())),this.stateMachine.forceTransitionTo(J.IDLE),this.currentDrawing=null,this.clearMeasureLabels(),this.log("finishDrawing",{type:n,id:s.id,drawnCount:this.drawnCount})}startDraw(t){var n,r;if(!this.stateMachine.isIdle())throw new Error("Cannot start drawing while not in idle state");this.config={...Rs,...t,name:t.name||er()},this.drawnCount=0,this.roundFeatureIds.clear(),this.log("startDraw",{type:this.config.type,limit:this.config.limit,enableEdit:this.config.enableEdit,enableDel:this.config.enableDel,oldFeatures:((n=this.config.oldFeatures)==null?void 0:n.length)||0}),this.renderer.setAllFeatureLabels(this.config.showLenForAll??!1,this.config.showAreaForAll??!1),(r=this.config.oldFeatures)==null||r.forEach(s=>{this.featureMap.set(s.id,s),this.renderer.renderFeature(s)}),this.renderer.refreshAllFeatureLabels(this.getAllFeatures())}stopDraw(){this.destroyUi(),this.clearMeasureLabels(),this.stateMachine.forceTransitionTo(J.IDLE),this.config=null,this.currentDrawing=null,this.drawnCount=0,this.featureMap.clear(),this.roundFeatureIds.clear(),this.renderer.clearAll()}destroy(){this.destroyUi(),this.stopDraw(),this.clearMeasureLabels(),this.adapter.destroy()}getFeature(t){return this.featureMap.get(t)}getAllFeatures(){return Array.from(this.featureMap.values())}getState(){return this.stateMachine.state}updateFeatureInfo(t){this.featureMap.set(t.id,t)}canEditFeature(t){var n;return((n=this.config)==null?void 0:n.enableEdit)??!1}canDeleteFeature(t){var n;return((n=this.config)==null?void 0:n.enableDel)??!1}makeFeature(t,n,r){var i;const s=((i=this.config)==null?void 0:i.name)||er(),o=Bs();switch(t){case"rect":{const[l,u]=n,p=r,a=[[l[0],l[1]],[p[0],l[1]],[p[0],p[1]],[l[0],p[1]],[l[0],l[1]]];return{id:o,type:t,wkt:jt(a),details:{...Fs,name:s}}}case"triangle":{const l=n.length===1?[...n,r,r]:[...n,r],u=[l[0],l[1],l[2],l[0]];return{id:o,type:t,wkt:jt(u),details:{...$s,name:s}}}case"circle":{const l=n[0],u=r,p=Math.sqrt((u[0]-l[0])**2+(u[1]-l[1])**2),a=p*Ps(l[1]),f=Ms(l,p,64);return{id:o,type:t,wkt:jt(f),details:{...js,name:s,radius:Math.round(a)}}}case"line":{const l=[...n,r];return{id:o,type:t,wkt:tr(l),details:{...Hs,name:s}}}case"polyline":{const l=[...n,r];return{id:o,type:t,wkt:tr(l),details:{...Us,name:s}}}case"customShape":{const l=[...n,r],u=[...l,l[0]];return{id:o,type:t,wkt:jt(u),details:{...ks,name:s}}}default:return null}}async invokeInsert(t){return this.bizCallbacks.onInsert?await Promise.resolve(this.bizCallbacks.onInsert(t)):!0}editFeature(t){if(!this.stateMachine.isIdle())return;const n=this.featureMap.get(t);n&&(this.stateMachine.transitionTo(J.EDITING),this.editingFeature=n,this.renderer.startEditing(n),this.log("EDIT start",{id:n.id,type:n.type,details:n.details}),this.showEditPanel(n))}requestDeleteFeature(t){if(!this.stateMachine.isIdle())return;const n=this.featureMap.get(t);n&&(this.log("DELETE request",{id:n.id,type:n.type}),this.showDeleteConfirm(n))}async doDelete(t){const n=this.featureMap.get(t);if(!n||!this.stateMachine.isIdle())return;this.stateMachine.transitionTo(J.DELETING),this.log("DELETE execute",{id:n.id}),(this.bizCallbacks.onDelete?await Promise.resolve(this.bizCallbacks.onDelete(n)):!0)?(this.featureMap.delete(t),this.roundFeatureIds.delete(t),this.renderer.removeFeature(t),this.log("DELETE done",{id:n.id})):this.log("DELETE fail",{id:n.id}),this.stateMachine.forceTransitionTo(J.IDLE)}updateMeasureLabels(t,n,r){if(this.clearMeasureLabels(),!this.config)return;const s=this.config.showLenOnInsert,o=this.config.showAreaOnInsert;if(!s&&!o)return;const i=[...n,r],l=["rect","triangle","circle","customShape"].includes(t),u=this.renderer.getContainer(),p=(a,f,g)=>{const b=document.createElement("div");b.style.cssText=`position:absolute;pointer-events:none;z-index:1500;color:${g};font-size:12px;font-weight:600;white-space:nowrap;text-shadow:0 0 3px white,0 0 3px white;transform:translate(-50%,-50%);`,b.textContent=f;const S=this.renderer.getPixelFromCoordinate(a);b.style.left=`${S[0]}px`,b.style.top=`${S[1]}px`,u.appendChild(b),this.measureLabels.push(b)};if(t==="rect"&&i.length>=2){const[a,f]=i,g=Dt(a,[f[0],a[1]]),b=Dt(a,[a[0],f[1]]);s&&(p([(a[0]+f[0])/2,a[1]],ft(g),"#2563eb"),p([a[0],(a[1]+f[1])/2],ft(b),"#2563eb")),o&&p([(a[0]+f[0])/2,(a[1]+f[1])/2],gn(g*b),"#dc2626")}else if(t==="circle"&&i.length>=2){const a=Dt(i[0],i[1]),f=o?gn(Math.PI*a*a):"",g=f?`r=${ft(a)}, ${f}`:`r=${ft(a)}`;(s||o)&&p(i[0],g,"#2563eb")}else if(l&&i.length>=3){if([...i,i[0]],s)for(let a=0;a<i.length;a++){const f=(a+1)%i.length,g=Dt(i[a],i[f]);g<.01||p([(i[a][0]+i[f][0])/2,(i[a][1]+i[f][1])/2],ft(g),"#2563eb")}o&&p(Gs(i),gn(Ks(i)),"#dc2626")}else if((t==="line"||t==="polyline")&&s&&i.length>=2)for(let a=0;a<i.length-1;a++){const f=Dt(i[a],i[a+1]);f<.01||p([(i[a][0]+i[a+1][0])/2,(i[a][1]+i[a+1][1])/2],ft(f),"#2563eb")}}clearMeasureLabels(){this.measureLabels.forEach(t=>t.remove()),this.measureLabels=[]}log(...t){var n;(n=this.config)!=null&&n.debug&&console.log("[DrawTool]",...t)}showToast(t){const n=document.createElement("div");n.style.cssText="position:fixed;top:250px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,0.7);color:#fff;padding:8px 20px;border-radius:6px;font-size:14px;z-index:3000;pointer-events:none;",n.textContent=t,document.body.appendChild(n),setTimeout(()=>n.remove(),2e3)}showDeleteConfirm(t){const n=this;this.mountUi(r=>()=>A("div",{style:{...Ls,width:"360px",padding:"24px"}},[A("div",{style:{display:"flex",gap:"12px",marginBottom:"20px"}},[A("div",{style:{width:"44px",height:"44px",borderRadius:"50%",backgroundColor:"#fef2f2",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0}},[A("svg",{viewBox:"0 0 24 24",width:"22",height:"22"},[A("path",{d:"M10 4h4v1h5v2H4V5h5V4ZM6 8h12l-.8 11.2a1 1 0 0 1-1 .8H7.8a1 1 0 0 1-1-.8L6 8Zm3 2v7h2v-7H9Zm4 0v7h2v-7h-2Z",fill:"#dc2626"})])]),A("div",{},[A("div",{style:{fontSize:"16px",fontWeight:"600",color:"#1f2937",marginBottom:"4px"}},"确认删除"),A("div",{style:{fontSize:"13px",color:"#6b7280",lineHeight:"1.5"}},"删除后将无法恢复,您确定要删除该要素吗?")])]),A("div",{style:{display:"flex",gap:"8px",justifyContent:"flex-end"}},[A("button",{style:{...Qn,padding:"8px 20px",fontSize:"14px"},onClick:r},"取消"),A("button",{style:{padding:"8px 20px",borderRadius:"4px",fontSize:"14px",cursor:"pointer",backgroundColor:"#dc2626",color:"#fff",border:"none"},onClick:()=>{r(),n.doDelete(t.id)}},"确认删除")])]),!1)}showEditPanel(t){const n=this,r=t.details,s=["rect","triangle","circle","customShape"].includes(t.type),o=t.type==="circle";this.mountUi(i=>{const l=ye(r.name||""),u=ye(r.lineType||"solid"),p=ye(r.lineRgba||"rgba(255,0,0,1)"),a=ye(r.fillRgba||"rgba(255,0,0,0.5)"),f=ye(r.textRgba||"rgba(255,255,255,1)"),g=ye(r.radius||0),b=ye(r.lineWidth||2),S=ye(r.strokeLineDash||"15 15 15 15"),w=ye("15"),Y=ye("15"),W=ye("15"),$=ye("15"),F=ye(!1),oe=(S.value||"15 15 15 15").split(/\s+/);w.value=oe[0]||"15",Y.value=oe[1]||"15",W.value=oe[2]||"15",$.value=oe[3]||"15";const T=()=>{S.value=`${w.value} ${Y.value} ${W.value} ${$.value}`,u.value==="solid"?n.renderer.updateDashVariables(0,0,0,0):n.renderer.updateDashVariables(Number(w.value),Number(Y.value),Number(W.value),Number($.value))};u.value==="solid"?n.renderer.updateDashVariables(0,0,0,0):n.renderer.updateDashVariables(Number(w.value),Number(Y.value),Number(W.value),Number($.value));const Z=[p];s&&Z.push(a),zt(Z,()=>{n.renderer.updateFeatureStyle(t.id,{strokeColor:p.value,fillColor:s?a.value:void 0,lineType:u.value})},{immediate:!0}),zt(b,I=>{n.renderer.updateFeatureStyle(t.id,{strokeWidth:u.value==="solid"?I:I*2}),n.renderer.updateFeatureStyle(t.id,{lineWidth:I})},{immediate:!0}),n.renderer.onGeometryChange(()=>{if(o){const I=n.renderer.getEditFeatureRadius();I!=null&&(g.value=Math.round(I))}});const de=(I,ce)=>A("div",{style:{marginBottom:"12px"}},[A("label",{style:Ot},I),A("div",{style:{display:"flex",flexWrap:"wrap",gap:"4px",marginBottom:"4px"}},Du.map(ue=>A("span",{style:{width:"20px",height:"20px",borderRadius:"4px",border:"1px solid #d1d5db",cursor:"pointer",backgroundColor:ue},onClick:()=>{ce.value=As(ue)}}))),A("div",{style:{display:"flex",gap:"4px",alignItems:"center"}},[A("input",{type:"color",style:{width:"32px",height:"32px",border:"1px solid #d1d5db",borderRadius:"4px",cursor:"pointer",padding:"0"},value:xu(ce.value),onInput:ue=>{ce.value=As(ue.target.value)}}),A("input",{style:{flex:"1",border:"1px solid #d1d5db",borderRadius:"4px",padding:"4px 8px",fontSize:"12px"},value:ce.value,onInput:ue=>{ce.value=ue.target.value}})])]),ie=()=>{const I={name:l.value,lineWidth:b.value,lineType:u.value,strokeLineDash:S.value,lineRgba:p.value,textRgba:f.value};return s&&(I.fillRgba=a.value),o&&(I.radius=g.value),I};return()=>A("div",{style:{...Ls,width:"340px"}},[A("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"8px 16px",borderBottom:F.value?"none":"1px solid #e5e7eb",backgroundColor:"#f9fafb",borderRadius:F.value?"8px":"8px 8px 0 0",cursor:"move",userSelect:"none"},onMousedown:I=>n.dragPanel(I)},[A("span",{style:{fontSize:"14px",fontWeight:"500",color:"#374151"}},"要素编辑"),A("div",{style:{display:"flex",gap:"8px",alignItems:"center"}},[A("span",{style:{color:"#6b7280",cursor:"pointer",fontSize:"18px",lineHeight:"1",userSelect:"none",padding:"0 4px"},onClick:()=>{F.value=!F.value}},F.value?"+":"−"),A("span",{style:{color:"#9ca3af",cursor:"pointer",fontSize:"18px",lineHeight:"1"},onClick:i},"×")])]),F.value?null:A("div",{style:{padding:"16px"}},[A("div",{style:{marginBottom:"12px"}},[A("label",{style:Ot},"名称"),A("input",{style:nt,value:l.value,onInput:I=>{l.value=I.target.value}})]),A("div",{style:{marginBottom:"12px"}},[A("label",{style:Ot},"线宽(px)"),A("input",{style:nt,type:"number",min:"1",max:"20",value:String(b.value),onInput:I=>{b.value=Number(I.target.value)}})]),o?A("div",{style:{marginBottom:"12px"}},[A("label",{style:Ot},"半径 (米)"),A("input",{style:nt,type:"number",value:String(g.value),onInput:I=>{g.value=Number(I.target.value)}})]):null,A("div",{style:{marginBottom:"12px"}},[A("label",{style:Ot},"线条类型"),A("select",{style:nt,value:u.value,onChange:I=>{u.value=I.target.value,T()}},[A("option",{value:"solid"},"实线"),A("option",{value:"dashed"},"虚线")])]),u.value==="dashed"?A("div",{style:{marginBottom:"12px"}},[A("label",{style:Ot},"虚线间距"),A("div",{style:{display:"flex",gap:"4px"}},[A("input",{style:nt,type:"number",min:"1",value:w.value,onInput:I=>{w.value=I.target.value,T()}}),A("input",{style:nt,type:"number",min:"1",value:Y.value,onInput:I=>{Y.value=I.target.value,T()}}),A("input",{style:nt,type:"number",min:"1",value:W.value,onInput:I=>{W.value=I.target.value,T()}}),A("input",{style:nt,type:"number",min:"1",value:$.value,onInput:I=>{$.value=I.target.value,T()}})])]):null,de("线条颜色",p),s?de("填充颜色",a):null,de("文本颜色",f),A("div",{style:{display:"flex",gap:"8px",justifyContent:"flex-end",marginTop:"16px",paddingTop:"12px",borderTop:"1px solid #e5e7eb"}},[A("button",{style:Qn,onClick:i},"关闭"),A("button",{style:{...Qn,backgroundColor:"#2563eb",color:"#fff",border:"none"},onClick:async()=>{const I={...t,details:ie()},ce=n.bizCallbacks.onEdit?await Promise.resolve(n.bizCallbacks.onEdit(I)):!0;if(i(),n.renderer.cancelEditing(),ce&&(n.featureMap.set(I.id,I),n.renderer.updateFeatureStyle(I.id,{fillColor:s?a.value:void 0,strokeColor:p.value,lineType:u.value}),t.type==="circle")){const ue=I.details,le=wu(t.wkt);if(le){const ct=le.length-1,an=(le[0][0]+le[Math.floor(ct/2)][0])/2,De=(le[0][1]+le[Math.floor(ct/2)][1])/2;n.renderer.updateFeatureGeometry(I.id,Ms([an,De],ue.radius/Ps(De),64))}}n.editingFeature=null,n.stateMachine.forceTransitionTo(J.IDLE)}},"保存")])])])},!0)}mountUi(t,n){this.destroyUi();const r=this,s=document.createElement("div");this.uiMountEl=s;const o=()=>{r.destroyUi(),r.stateMachine.isEditing()&&r.editingFeature&&(r.renderer.cancelEditing(),r.editingFeature=null,r.stateMachine.forceTransitionTo(J.IDLE))},i=vu({setup(){const l=t(o);return()=>A("div",{style:{pointerEvents:"auto"},onMousedown:u=>u.stopPropagation(),onClick:u=>u.stopPropagation()},[l()])}});n?(s.style.cssText="position:absolute;z-index:2000;top:20px;left:20px;",this.renderer.getContainer().appendChild(s)):(s.style.cssText="position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.15);",document.body.appendChild(s)),i.mount(s),this.uiApp=i}dragPanel(t){const n=this.uiMountEl;if(!n)return;const r=t.clientX,s=t.clientY,o=n.offsetLeft,i=n.offsetTop,l=p=>{n.style.left=`${o+p.clientX-r}px`,n.style.top=`${i+p.clientY-s}px`},u=()=>{document.removeEventListener("mousemove",l),document.removeEventListener("mouseup",u)};document.addEventListener("mousemove",l),document.addEventListener("mouseup",u)}destroyUi(){var t,n;(t=this.uiApp)==null||t.unmount(),(n=this.uiMountEl)==null||n.remove(),this.uiApp=null,this.uiMountEl=null}}const Ls={backgroundColor:"#fff",borderRadius:"8px",boxShadow:"0 4px 16px rgba(0,0,0,0.15)"},Ot={fontSize:"12px",color:"#6b7280",display:"block",marginBottom:"4px"},nt={width:"100%",boxSizing:"border-box",border:"1px solid #d1d5db",borderRadius:"4px",padding:"4px 8px",fontSize:"14px"},Qn={padding:"6px 16px",borderRadius:"4px",fontSize:"14px",cursor:"pointer",border:"1px solid #d1d5db",backgroundColor:"#fff",color:"#4b5563"};exports.DEFAULT_CIRCLE_DETAILS=js;exports.DEFAULT_DRAW_CONFIG=Rs;exports.DEFAULT_LINE_DETAILS=Hs;exports.DEFAULT_POLYLINE_DETAILS=Us;exports.DEFAULT_RECT_DETAILS=Fs;exports.DEFAULT_SHAPE_DETAILS=ks;exports.DEFAULT_TRIANGLE_DETAILS=$s;exports.DrawState=J;exports.DrawTool=Tu;exports.StateMachine=Ws;exports.formatArea=gn;exports.formatMeters=ft;exports.generateFeatureName=er;exports.generateUniqueId=Bs;exports.geoArea=Ks;exports.geoDistance=Dt;exports.geoPolygonCenter=Gs;exports.isPointInPolygon=ii;exports.parseWkt=li;exports.toWktLineString=tr;exports.toWktPolygon=jt;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,288 @@
|
|
|
1
|
-
export
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
export declare interface CircleInfo {
|
|
2
|
+
name: string;
|
|
3
|
+
radius: number;
|
|
4
|
+
lineWidth: number;
|
|
5
|
+
lineType: 'dashed' | 'solid';
|
|
6
|
+
strokeLineDash: string;
|
|
7
|
+
lineRgba: string;
|
|
8
|
+
fillRgba: string;
|
|
9
|
+
textRgba: string;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export declare const DEFAULT_CIRCLE_DETAILS: {
|
|
13
|
+
name: string;
|
|
14
|
+
radius: number;
|
|
15
|
+
lineWidth: number;
|
|
16
|
+
lineType: "solid";
|
|
17
|
+
strokeLineDash: string;
|
|
18
|
+
lineRgba: string;
|
|
19
|
+
fillRgba: string;
|
|
20
|
+
textRgba: string;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export declare const DEFAULT_DRAW_CONFIG: Omit<DrawConfig, 'type'>;
|
|
24
|
+
|
|
25
|
+
export declare const DEFAULT_LINE_DETAILS: {
|
|
26
|
+
name: string;
|
|
27
|
+
lineWidth: number;
|
|
28
|
+
lineType: "solid";
|
|
29
|
+
strokeLineDash: string;
|
|
30
|
+
lineRgba: string;
|
|
31
|
+
textRgba: string;
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
export declare const DEFAULT_POLYLINE_DETAILS: {
|
|
35
|
+
name: string;
|
|
36
|
+
lineWidth: number;
|
|
37
|
+
lineType: "solid";
|
|
38
|
+
strokeLineDash: string;
|
|
39
|
+
lineRgba: string;
|
|
40
|
+
textRgba: string;
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
export declare const DEFAULT_RECT_DETAILS: {
|
|
44
|
+
name: string;
|
|
45
|
+
lineWidth: number;
|
|
46
|
+
lineType: "solid";
|
|
47
|
+
strokeLineDash: string;
|
|
48
|
+
lineRgba: string;
|
|
49
|
+
fillRgba: string;
|
|
50
|
+
textRgba: string;
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
export declare const DEFAULT_SHAPE_DETAILS: {
|
|
54
|
+
name: string;
|
|
55
|
+
lineWidth: number;
|
|
56
|
+
lineType: "solid";
|
|
57
|
+
strokeLineDash: string;
|
|
58
|
+
lineRgba: string;
|
|
59
|
+
fillRgba: string;
|
|
60
|
+
textRgba: string;
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
export declare const DEFAULT_TRIANGLE_DETAILS: {
|
|
64
|
+
name: string;
|
|
65
|
+
lineWidth: number;
|
|
66
|
+
lineType: "solid";
|
|
67
|
+
strokeLineDash: string;
|
|
68
|
+
lineRgba: string;
|
|
69
|
+
fillRgba: string;
|
|
70
|
+
textRgba: string;
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
export declare interface DrawConfig {
|
|
74
|
+
type: FeatureType;
|
|
75
|
+
name?: string;
|
|
76
|
+
limit?: number;
|
|
77
|
+
enableLimitMsg?: boolean;
|
|
78
|
+
enableEdit?: boolean;
|
|
79
|
+
enableDel?: boolean;
|
|
80
|
+
showLenOnInsert?: boolean;
|
|
81
|
+
showAreaOnInsert?: boolean;
|
|
82
|
+
showLenForAll?: boolean;
|
|
83
|
+
showAreaForAll?: boolean;
|
|
84
|
+
debug?: boolean;
|
|
85
|
+
oldFeatures?: FeatureInfo[];
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
export declare enum DrawState {
|
|
89
|
+
IDLE = "idle",
|
|
90
|
+
DRAWING = "drawing",
|
|
91
|
+
EDITING = "editing",
|
|
92
|
+
DELETING = "deleting"
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export declare class DrawTool {
|
|
96
|
+
private adapter;
|
|
97
|
+
private renderer;
|
|
98
|
+
private bizCallbacks;
|
|
99
|
+
private stateMachine;
|
|
100
|
+
private config;
|
|
101
|
+
private featureMap;
|
|
102
|
+
private currentDrawing;
|
|
103
|
+
private drawnCount;
|
|
104
|
+
private roundFeatureIds;
|
|
105
|
+
private uiApp;
|
|
106
|
+
private uiMountEl;
|
|
107
|
+
private editingFeature;
|
|
108
|
+
private measureLabels;
|
|
109
|
+
constructor(options: DrawToolOptions);
|
|
110
|
+
onMouseMove(coord: [number, number]): void;
|
|
111
|
+
onClick(coord: [number, number]): void;
|
|
112
|
+
onDblClick(coord: [number, number]): Promise<void>;
|
|
113
|
+
startDraw(config: DrawConfig): void;
|
|
114
|
+
stopDraw(): void;
|
|
115
|
+
destroy(): void;
|
|
116
|
+
getFeature(id: number): FeatureInfo | undefined;
|
|
117
|
+
getAllFeatures(): FeatureInfo[];
|
|
118
|
+
getState(): DrawState;
|
|
119
|
+
updateFeatureInfo(f: FeatureInfo): void;
|
|
120
|
+
private canEditFeature;
|
|
121
|
+
private canDeleteFeature;
|
|
122
|
+
private makeFeature;
|
|
123
|
+
private invokeInsert;
|
|
124
|
+
private editFeature;
|
|
125
|
+
private requestDeleteFeature;
|
|
126
|
+
private doDelete;
|
|
127
|
+
private updateMeasureLabels;
|
|
128
|
+
private clearMeasureLabels;
|
|
129
|
+
private log;
|
|
130
|
+
private showToast;
|
|
131
|
+
private showDeleteConfirm;
|
|
132
|
+
private showEditPanel;
|
|
133
|
+
private mountUi;
|
|
134
|
+
private dragPanel;
|
|
135
|
+
private destroyUi;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
export declare interface DrawToolOptions {
|
|
139
|
+
adapter: IGisAdapter;
|
|
140
|
+
bizCallbacks?: IBizCallbacks;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
export declare interface FeatureInfo {
|
|
144
|
+
id: number;
|
|
145
|
+
type: FeatureType;
|
|
146
|
+
wkt: string;
|
|
147
|
+
details: RectInfo | TriangleInfo | CircleInfo | LineInfo | PolylineInfo | ShapeInfo;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
export declare interface FeatureStyle {
|
|
151
|
+
fillColor?: string;
|
|
152
|
+
strokeColor?: string;
|
|
153
|
+
strokeWidth?: number;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
export declare type FeatureType = 'rect' | 'triangle' | 'circle' | 'line' | 'polyline' | 'customShape';
|
|
157
|
+
|
|
158
|
+
export declare function formatArea(area: number): string;
|
|
159
|
+
|
|
160
|
+
export declare function formatMeters(m: number): string;
|
|
161
|
+
|
|
162
|
+
export declare function generateFeatureName(length?: number): string;
|
|
163
|
+
|
|
164
|
+
export declare function generateUniqueId(): number;
|
|
165
|
+
|
|
166
|
+
export declare function geoArea(coords: [number, number][]): number;
|
|
167
|
+
|
|
168
|
+
export declare function geoDistance(a: [number, number], b: [number, number]): number;
|
|
169
|
+
|
|
170
|
+
export declare function geoPolygonCenter(coords: [number, number][]): [number, number];
|
|
171
|
+
|
|
172
|
+
export declare interface HoverActionConfig {
|
|
173
|
+
showEdit: boolean;
|
|
174
|
+
showDelete: boolean;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
export declare type HoverActionType = 'edit' | 'delete';
|
|
178
|
+
|
|
179
|
+
export declare interface IBizCallbacks {
|
|
180
|
+
onInsert?: (info: FeatureInfo) => Promise<boolean> | boolean;
|
|
181
|
+
onEdit?: (info: FeatureInfo) => Promise<boolean> | boolean;
|
|
182
|
+
onDelete?: (info: FeatureInfo) => Promise<boolean> | boolean;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
export declare interface IFeatureRenderer {
|
|
186
|
+
startDrawing(type: FeatureType): void;
|
|
187
|
+
updatePreview(coordinates: [number, number][], type: FeatureType): void;
|
|
188
|
+
finishDrawing(): Promise<FeatureInfo>;
|
|
189
|
+
cancelDrawing(): void;
|
|
190
|
+
renderFeature(feature: FeatureInfo, isHighlight?: boolean): void;
|
|
191
|
+
removeFeature(featureId: number): void;
|
|
192
|
+
clearAll(): void;
|
|
193
|
+
startEditing(feature: FeatureInfo): void;
|
|
194
|
+
cancelEditing(): void;
|
|
195
|
+
showHoverActions(feature: FeatureInfo, position: [number, number], actions: HoverActionConfig): void;
|
|
196
|
+
hideHoverActions(): void;
|
|
197
|
+
getFeatureAtCoordinate(coordinate: [number, number]): FeatureInfo | null;
|
|
198
|
+
updateFeatureStyle(featureId: number, style: FeatureStyle): void;
|
|
199
|
+
updateFeatureGeometry(featureId: number, ring: [number, number][]): void;
|
|
200
|
+
getContainer(): HTMLElement;
|
|
201
|
+
onHoverAction(callback: (action: HoverActionType, feature: FeatureInfo) => void): void;
|
|
202
|
+
onGeometryChange(callback: () => void): void;
|
|
203
|
+
getEditFeatureRadius(): number | null;
|
|
204
|
+
updateDashVariables(d1: number, d2: number, d3: number, d4: number): void;
|
|
205
|
+
getPixelFromCoordinate(coord: [number, number]): [number, number];
|
|
206
|
+
setAllFeatureLabels(showLen: boolean, showArea: boolean): void;
|
|
207
|
+
refreshAllFeatureLabels(features: FeatureInfo[]): void;
|
|
208
|
+
highlightHoverFeature(featureId: number | null): void;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
export declare interface IGisAdapter {
|
|
212
|
+
getFeatureRenderer(): IFeatureRenderer;
|
|
213
|
+
destroy(): void;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
export declare function isPointInPolygon(point: [number, number], polygon: [number, number][]): boolean;
|
|
217
|
+
|
|
218
|
+
export declare interface IToastHandler {
|
|
219
|
+
show(message: string): void;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
export declare interface LineInfo {
|
|
223
|
+
name: string;
|
|
224
|
+
lineWidth: number;
|
|
225
|
+
lineType: 'dashed' | 'solid';
|
|
226
|
+
strokeLineDash: string;
|
|
227
|
+
lineRgba: string;
|
|
228
|
+
textRgba: string;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
export declare function parseWkt(wkt: string): [number, number][];
|
|
232
|
+
|
|
233
|
+
export declare interface PolylineInfo {
|
|
234
|
+
name: string;
|
|
235
|
+
lineWidth: number;
|
|
236
|
+
lineType: 'dashed' | 'solid';
|
|
237
|
+
strokeLineDash: string;
|
|
238
|
+
lineRgba: string;
|
|
239
|
+
textRgba: string;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
export declare interface RectInfo {
|
|
243
|
+
name: string;
|
|
244
|
+
lineWidth: number;
|
|
245
|
+
lineType: 'dashed' | 'solid';
|
|
246
|
+
strokeLineDash: string;
|
|
247
|
+
lineRgba: string;
|
|
248
|
+
fillRgba: string;
|
|
249
|
+
textRgba: string;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
export declare interface ShapeInfo {
|
|
253
|
+
name: string;
|
|
254
|
+
lineWidth: number;
|
|
255
|
+
lineType: 'dashed' | 'solid';
|
|
256
|
+
strokeLineDash: string;
|
|
257
|
+
lineRgba: string;
|
|
258
|
+
fillRgba: string;
|
|
259
|
+
textRgba: string;
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
export declare class StateMachine {
|
|
263
|
+
private currentState;
|
|
264
|
+
get state(): DrawState;
|
|
265
|
+
canTransitionTo(targetState: DrawState): boolean;
|
|
266
|
+
transitionTo(targetState: DrawState): void;
|
|
267
|
+
forceTransitionTo(targetState: DrawState): void;
|
|
268
|
+
isIdle(): boolean;
|
|
269
|
+
isDrawing(): boolean;
|
|
270
|
+
isEditing(): boolean;
|
|
271
|
+
isDeleting(): boolean;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
export declare function toWktLineString(coordinates: [number, number][]): string;
|
|
275
|
+
|
|
276
|
+
export declare function toWktPolygon(coordinates: [number, number][]): string;
|
|
277
|
+
|
|
278
|
+
export declare interface TriangleInfo {
|
|
279
|
+
name: string;
|
|
280
|
+
lineWidth: number;
|
|
281
|
+
lineType: 'dashed' | 'solid';
|
|
282
|
+
strokeLineDash: string;
|
|
283
|
+
lineRgba: string;
|
|
284
|
+
fillRgba: string;
|
|
285
|
+
textRgba: string;
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
export { }
|