From 49c415d4b9f2f990f3918bfb72a80b0ced9e9f59 Mon Sep 17 00:00:00 2001 From: Fedorov Vladimir Date: Sun, 7 Dec 2025 03:41:45 +0700 Subject: [PATCH] add update node --- api/main.proto | 37 +- cmd/evening_detective/main.go | 2 +- ...{index-DQOm-aLN.css => index-1rBZ50JZ.css} | 2 +- .../{index-C6nQe7QU.js => index-DY0mDz-m.js} | 50 +-- cmd/evening_detective/static/admin/index.html | 4 +- data/story/story.json | 18 +- internal/app/server.go | 4 + internal/services/services.go | 33 +- internal/services/story_service/service.go | 44 ++- proto/main.pb.go | 331 +++++++++++------- proto/main.pb.gw.go | 66 ++++ proto/main.swagger.json | 145 +++++--- proto/main_grpc.pb.go | 38 ++ 13 files changed, 538 insertions(+), 236 deletions(-) rename cmd/evening_detective/static/admin/assets/{index-DQOm-aLN.css => index-1rBZ50JZ.css} (83%) rename cmd/evening_detective/static/admin/assets/{index-C6nQe7QU.js => index-DY0mDz-m.js} (76%) diff --git a/api/main.proto b/api/main.proto index 5dae84b..15e53e7 100644 --- a/api/main.proto +++ b/api/main.proto @@ -83,6 +83,13 @@ service EveningDetective { get: "/graph" }; } + + rpc UpdateNode(UpdateNodeReq) returns (UpdateNodeRsp) { + option (google.api.http) = { + put: "/graph/nodes", + body: "*" + }; + } } message PingReq {} @@ -189,24 +196,32 @@ message DownloadTeamsQrCodesFileRsp { message GetGraphReq {} message GetGraphRsp { - repeated Node nodes = 1; + repeated GraphNode nodes = 1; repeated Edge edges = 2; int32 countNodes = 3; int32 countEdges = 4; - message Node { - int32 id = 1; - string label = 2; - string name = 3; - string text = 4; - repeated Application applications = 5; - } message Edge { int32 from = 1; int32 to = 2; string arrows = 3; } - message Application { - string name = 1; - } +} + +message UpdateNodeReq { + GraphNode node = 1; +} + +message UpdateNodeRsp {} + +message GraphNode { + int32 id = 1; + string label = 2; + string name = 3; + string text = 4; + repeated GraphApplication applications = 5; +} + +message GraphApplication { + string name = 1; } diff --git a/cmd/evening_detective/main.go b/cmd/evening_detective/main.go index c853fcc..740d75b 100644 --- a/cmd/evening_detective/main.go +++ b/cmd/evening_detective/main.go @@ -128,7 +128,7 @@ func main() { func cors(h http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { w.Header().Set("Access-Control-Allow-Origin", "*") - w.Header().Set("Access-Control-Allow-Methods", "GET, POST, PATCH, DELETE") + w.Header().Set("Access-Control-Allow-Methods", "GET, POST, PUT, PATCH, DELETE") w.Header().Set("Access-Control-Allow-Headers", "Accept, Content-Type, Content-Length, Accept-Encoding, Authorization, ResponseType, X-Id, X-Password") if r.Method == "OPTIONS" { return diff --git a/cmd/evening_detective/static/admin/assets/index-DQOm-aLN.css b/cmd/evening_detective/static/admin/assets/index-1rBZ50JZ.css similarity index 83% rename from cmd/evening_detective/static/admin/assets/index-DQOm-aLN.css rename to cmd/evening_detective/static/admin/assets/index-1rBZ50JZ.css index 4d3fe2e..0c3f00f 100644 --- a/cmd/evening_detective/static/admin/assets/index-DQOm-aLN.css +++ b/cmd/evening_detective/static/admin/assets/index-1rBZ50JZ.css @@ -1 +1 @@ -:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64);--main-color: rgba(34, 50, 60, 1);--second-color: rgb(97, 74, 22);--main-back-color: rgba(240, 240, 240, 1);--main-back-item-color: rgba(254, 254, 254, 1)}:root{--color-background: var(--vt-c-white);--color-background-soft: var(--vt-c-white-soft);--color-background-mute: var(--vt-c-white-mute);--color-border: var(--vt-c-divider-light-2);--color-border-hover: var(--vt-c-divider-light-1);--color-heading: var(--vt-c-text-light-1);--color-text: var(--vt-c-text-light-1);--section-gap: 160px}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100dvh;color:var(--color-text);background:var(--main-back-color);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.input-custom{width:100%;box-sizing:border-box;margin-bottom:15px}.button-custom{margin-left:auto;background-color:var(--main-color);font-weight:600;color:#fff}.button-custom-inline{margin:10px;background-color:var(--main-color);font-weight:600;color:#fff;padding:6px 8px;border:1px solid #ddd;border-radius:15px;font-size:14px}.button-custom:hover,.button-custom-inline:hover{background-color:var(--second-color)}.input-custom,.button-custom{padding:12px 16px;border:1px solid #ddd;border-radius:15px;font-size:16px}.button-container{display:flex}.center-message{display:flex;justify-content:center;align-items:center;height:calc(100dvh - 100px);text-align:center}.qr[data-v-666b8d35]{position:absolute;top:130px;right:30px;text-align:center;width:120px}.header-block[data-v-5b6894ef]{background-color:var(--main-color);font-size:large;color:#fff;vertical-align:middle;padding:10px 0 10px 16px;font-weight:700}.buttons-block[data-v-27835e5c]{padding-top:5px}.button-menu[data-v-27835e5c]{margin:5px 10px 5px 0}table[data-v-27835e5c]{width:700px;border-collapse:collapse;margin:30px auto;border:1px solid #444444}th[data-v-27835e5c],td[data-v-27835e5c]{padding:12px;text-align:left}th[data-v-27835e5c]{background-color:var(--main-color);color:#fff;font-weight:700}tr[data-v-27835e5c]:nth-child(odd){background-color:#efefef}tr[data-v-27835e5c]:nth-child(2n){background-color:#fff}tr[data-v-27835e5c]:hover{background-color:#cfcfcf}.time[data-v-27835e5c]{white-space:nowrap}.team-name[data-v-27835e5c]{font-weight:600}.link-button[data-v-27835e5c]{display:inline;border:none;background:none;padding:0;margin:0;font:inherit;cursor:pointer;color:var(--main-color);text-decoration:underline;font-weight:600;-webkit-appearance:none;-moz-appearance:none;appearance:none;line-height:inherit;text-align:left}.link-button[data-v-27835e5c]:hover{color:var(--second-color);text-decoration:none}.link-button[data-v-27835e5c]:active{color:#036}.link-button[data-v-27835e5c]:focus{outline:none;text-decoration:none;box-shadow:0 0 0 2px #0066cc4d}.form-block[data-v-27835e5c]{width:700px;margin:0 auto}a[data-v-27835e5c]{color:var(--second-color);text-decoration:none;transition:all .2s ease;cursor:pointer}a[data-v-27835e5c]:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}a[data-v-27835e5c]:focus-visible{outline:2px solid #3182ce;outline-offset:2px;border-radius:2px}a[disabled][data-v-27835e5c]{color:#a0aec0;pointer-events:none;cursor:not-allowed}.button-container[data-v-27835e5c]{margin-bottom:30px}.cell-center[data-v-27835e5c]{text-align:center}.graph-container[data-v-22fb1d18]{width:100%;height:calc(100vh - 50px);border:1px solid #e0e0e0;border-radius:8px}.nodes-container[data-v-22fb1d18]{position:fixed;left:5px;top:55px;height:calc(100vh - 100px);padding:10px 20px}.edit-node-container[data-v-22fb1d18]{position:fixed;right:5px;top:55px;height:calc(100vh - 100px);padding:10px 20px;max-width:300px}.node-select-button[data-v-22fb1d18]{color:#373737}.node-select-button[data-v-22fb1d18]:hover{font-weight:700;cursor:pointer}.selected-node[data-v-22fb1d18]{font-weight:700;color:#960000;cursor:pointer} +:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64);--main-color: rgba(34, 50, 60, 1);--second-color: rgb(97, 74, 22);--main-back-color: rgba(240, 240, 240, 1);--main-back-item-color: rgba(254, 254, 254, 1)}:root{--color-background: var(--vt-c-white);--color-background-soft: var(--vt-c-white-soft);--color-background-mute: var(--vt-c-white-mute);--color-border: var(--vt-c-divider-light-2);--color-border-hover: var(--vt-c-divider-light-1);--color-heading: var(--vt-c-text-light-1);--color-text: var(--vt-c-text-light-1);--section-gap: 160px}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100dvh;color:var(--color-text);background:var(--main-back-color);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.input-custom{width:100%;box-sizing:border-box;margin-bottom:15px}.button-custom{margin-left:auto;background-color:var(--main-color);font-weight:600;color:#fff}.button-custom-inline{margin:10px;background-color:var(--main-color);font-weight:600;color:#fff;padding:6px 8px;border:1px solid #ddd;border-radius:15px;font-size:14px}.button-custom:hover,.button-custom-inline:hover{background-color:var(--second-color)}.input-custom,.button-custom{padding:12px 16px;border:1px solid #ddd;border-radius:15px;font-size:16px}.button-container{display:flex}.center-message{display:flex;justify-content:center;align-items:center;height:calc(100dvh - 100px);text-align:center}.qr[data-v-666b8d35]{position:absolute;top:130px;right:30px;text-align:center;width:120px}.header-block[data-v-5b6894ef]{background-color:var(--main-color);font-size:large;color:#fff;vertical-align:middle;padding:10px 0 10px 16px;font-weight:700}.buttons-block[data-v-27835e5c]{padding-top:5px}.button-menu[data-v-27835e5c]{margin:5px 10px 5px 0}table[data-v-27835e5c]{width:700px;border-collapse:collapse;margin:30px auto;border:1px solid #444444}th[data-v-27835e5c],td[data-v-27835e5c]{padding:12px;text-align:left}th[data-v-27835e5c]{background-color:var(--main-color);color:#fff;font-weight:700}tr[data-v-27835e5c]:nth-child(odd){background-color:#efefef}tr[data-v-27835e5c]:nth-child(2n){background-color:#fff}tr[data-v-27835e5c]:hover{background-color:#cfcfcf}.time[data-v-27835e5c]{white-space:nowrap}.team-name[data-v-27835e5c]{font-weight:600}.link-button[data-v-27835e5c]{display:inline;border:none;background:none;padding:0;margin:0;font:inherit;cursor:pointer;color:var(--main-color);text-decoration:underline;font-weight:600;-webkit-appearance:none;-moz-appearance:none;appearance:none;line-height:inherit;text-align:left}.link-button[data-v-27835e5c]:hover{color:var(--second-color);text-decoration:none}.link-button[data-v-27835e5c]:active{color:#036}.link-button[data-v-27835e5c]:focus{outline:none;text-decoration:none;box-shadow:0 0 0 2px #0066cc4d}.form-block[data-v-27835e5c]{width:700px;margin:0 auto}a[data-v-27835e5c]{color:var(--second-color);text-decoration:none;transition:all .2s ease;cursor:pointer}a[data-v-27835e5c]:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}a[data-v-27835e5c]:focus-visible{outline:2px solid #3182ce;outline-offset:2px;border-radius:2px}a[disabled][data-v-27835e5c]{color:#a0aec0;pointer-events:none;cursor:not-allowed}.button-container[data-v-27835e5c]{margin-bottom:30px}.cell-center[data-v-27835e5c]{text-align:center}.graph-container[data-v-06ee41bb]{width:100%;height:calc(100vh - 50px);border:1px solid #e0e0e0;border-radius:8px}.nodes-container[data-v-06ee41bb]{position:fixed;left:5px;top:55px;height:calc(100vh - 100px);padding:10px 20px}.edit-node-container[data-v-06ee41bb]{position:fixed;right:5px;top:55px;height:calc(100vh - 100px);padding:10px 20px;min-width:350px;max-width:400px}.node-select-button[data-v-06ee41bb]{color:#373737}.node-select-button[data-v-06ee41bb]:hover{font-weight:700;cursor:pointer}.selected-node[data-v-06ee41bb]{font-weight:700;color:#960000;cursor:pointer}.node-text-edit-field[data-v-06ee41bb]{padding:7px;margin:5px 0;width:100%}.node-edit-save-button[data-v-06ee41bb]{padding:3px 7px;margin:5px;background-color:#fff;border-radius:7px;border:1px solid #373737}.node-edit-save-button[data-v-06ee41bb]:hover{background-color:#ddd;cursor:pointer}.hr[data-v-06ee41bb]{margin:10px 0} diff --git a/cmd/evening_detective/static/admin/assets/index-C6nQe7QU.js b/cmd/evening_detective/static/admin/assets/index-DY0mDz-m.js similarity index 76% rename from cmd/evening_detective/static/admin/assets/index-C6nQe7QU.js rename to cmd/evening_detective/static/admin/assets/index-DY0mDz-m.js index ecf928c..3162840 100644 --- a/cmd/evening_detective/static/admin/assets/index-C6nQe7QU.js +++ b/cmd/evening_detective/static/admin/assets/index-DY0mDz-m.js @@ -2,34 +2,34 @@ * @vue/shared v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**//*! #__NO_SIDE_EFFECTS__ */function ew(r){const e=Object.create(null);for(const t of r.split(","))e[t]=1;return t=>t in e}const je={},ts=[],Nr=()=>{},U5=()=>!1,vu=r=>r.charCodeAt(0)===111&&r.charCodeAt(1)===110&&(r.charCodeAt(2)>122||r.charCodeAt(2)<97),tw=r=>r.startsWith("onUpdate:"),Dt=Object.assign,rw=(r,e)=>{const t=r.indexOf(e);t>-1&&r.splice(t,1)},V5=Object.prototype.hasOwnProperty,Ne=(r,e)=>V5.call(r,e),ge=Array.isArray,rs=r=>pu(r)==="[object Map]",_j=r=>pu(r)==="[object Set]",be=r=>typeof r=="function",lt=r=>typeof r=="string",si=r=>typeof r=="symbol",Ge=r=>r!==null&&typeof r=="object",wj=r=>(Ge(r)||be(r))&&be(r.then)&&be(r.catch),Ej=Object.prototype.toString,pu=r=>Ej.call(r),K5=r=>pu(r).slice(8,-1),Sj=r=>pu(r)==="[object Object]",iw=r=>lt(r)&&r!=="NaN"&&r[0]!=="-"&&""+parseInt(r,10)===r,ao=ew(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),gu=r=>{const e=Object.create(null);return t=>e[t]||(e[t]=r(t))},G5=/-(\w)/g,Ci=gu(r=>r.replace(G5,(e,t)=>t?t.toUpperCase():"")),Y5=/\B([A-Z])/g,bn=gu(r=>r.replace(Y5,"-$1").toLowerCase()),Oj=gu(r=>r.charAt(0).toUpperCase()+r.slice(1)),cl=gu(r=>r?`on${Oj(r)}`:""),Si=(r,e)=>!Object.is(r,e),Ba=(r,...e)=>{for(let t=0;t{Object.defineProperty(r,e,{configurable:!0,enumerable:!1,writable:i,value:t})},__=r=>{const e=parseFloat(r);return isNaN(e)?r:e};let R0;const mu=()=>R0||(R0=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function nw(r){if(ge(r)){const e={};for(let t=0;t{if(t){const i=t.split(J5);i.length>1&&(e[i[0].trim()]=i[1].trim())}}),e}function yu(r){let e="";if(lt(r))e=r;else if(ge(r))for(let t=0;t!!(r&&r.__v_isRef===!0),or=r=>lt(r)?r:r==null?"":ge(r)||Ge(r)&&(r.toString===Ej||!be(r.toString))?$j(r)?or(r.value):JSON.stringify(r,Pj,2):String(r),Pj=(r,e)=>$j(e)?Pj(r,e.value):rs(e)?{[`Map(${e.size})`]:[...e.entries()].reduce((t,[i,n],s)=>(t[dl(i,s)+" =>"]=n,t),{})}:_j(e)?{[`Set(${e.size})`]:[...e.values()].map(t=>dl(t))}:si(e)?dl(e):Ge(e)&&!ge(e)&&!Sj(e)?String(e):e,dl=(r,e="")=>{var t;return si(r)?`Symbol(${(t=r.description)!=null?t:e})`:r};/** +**//*! #__NO_SIDE_EFFECTS__ */function ew(r){const e=Object.create(null);for(const t of r.split(","))e[t]=1;return t=>t in e}const je={},ts=[],Nr=()=>{},K5=()=>!1,vu=r=>r.charCodeAt(0)===111&&r.charCodeAt(1)===110&&(r.charCodeAt(2)>122||r.charCodeAt(2)<97),tw=r=>r.startsWith("onUpdate:"),Dt=Object.assign,rw=(r,e)=>{const t=r.indexOf(e);t>-1&&r.splice(t,1)},G5=Object.prototype.hasOwnProperty,Ne=(r,e)=>G5.call(r,e),ge=Array.isArray,rs=r=>pu(r)==="[object Map]",_j=r=>pu(r)==="[object Set]",be=r=>typeof r=="function",lt=r=>typeof r=="string",si=r=>typeof r=="symbol",Ge=r=>r!==null&&typeof r=="object",wj=r=>(Ge(r)||be(r))&&be(r.then)&&be(r.catch),Ej=Object.prototype.toString,pu=r=>Ej.call(r),Y5=r=>pu(r).slice(8,-1),Sj=r=>pu(r)==="[object Object]",iw=r=>lt(r)&&r!=="NaN"&&r[0]!=="-"&&""+parseInt(r,10)===r,ao=ew(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),gu=r=>{const e=Object.create(null);return t=>e[t]||(e[t]=r(t))},X5=/-(\w)/g,xi=gu(r=>r.replace(X5,(e,t)=>t?t.toUpperCase():"")),J5=/\B([A-Z])/g,bn=gu(r=>r.replace(J5,"-$1").toLowerCase()),Oj=gu(r=>r.charAt(0).toUpperCase()+r.slice(1)),cl=gu(r=>r?`on${Oj(r)}`:""),Oi=(r,e)=>!Object.is(r,e),Ba=(r,...e)=>{for(let t=0;t{Object.defineProperty(r,e,{configurable:!0,enumerable:!1,writable:i,value:t})},__=r=>{const e=parseFloat(r);return isNaN(e)?r:e};let R0;const mu=()=>R0||(R0=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function nw(r){if(ge(r)){const e={};for(let t=0;t{if(t){const i=t.split(Z5);i.length>1&&(e[i[0].trim()]=i[1].trim())}}),e}function yu(r){let e="";if(lt(r))e=r;else if(ge(r))for(let t=0;t!!(r&&r.__v_isRef===!0),Mt=r=>lt(r)?r:r==null?"":ge(r)||Ge(r)&&(r.toString===Ej||!be(r.toString))?$j(r)?Mt(r.value):JSON.stringify(r,Pj,2):String(r),Pj=(r,e)=>$j(e)?Pj(r,e.value):rs(e)?{[`Map(${e.size})`]:[...e.entries()].reduce((t,[i,n],s)=>(t[dl(i,s)+" =>"]=n,t),{})}:_j(e)?{[`Set(${e.size})`]:[...e.values()].map(t=>dl(t))}:si(e)?dl(e):Ge(e)&&!ge(e)&&!Sj(e)?String(e):e,dl=(r,e="")=>{var t;return si(r)?`Symbol(${(t=r.description)!=null?t:e})`:r};/** * @vue/reactivity v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Qt;class Rj{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=Qt,!e&&Qt&&(this.index=(Qt.scopes||(Qt.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,t;if(this.scopes)for(e=0,t=this.scopes.length;e0)return;if(lo){let e=lo;for(lo=void 0;e;){const t=e.next;e.next=void 0,e.flags&=-9,e=t}}let r;for(;uo;){let e=uo;for(uo=void 0;e;){const t=e.next;if(e.next=void 0,e.flags&=-9,e.flags&1)try{e.trigger()}catch(i){r||(r=i)}e=t}}if(r)throw r}function Dj(r){for(let e=r.deps;e;e=e.nextDep)e.version=-1,e.prevActiveLink=e.dep.activeLink,e.dep.activeLink=e}function Aj(r){let e,t=r.depsTail,i=t;for(;i;){const n=i.prevDep;i.version===-1?(i===t&&(t=n),aw(i),nH(i)):e=i,i.dep.activeLink=i.prevActiveLink,i.prevActiveLink=void 0,i=n}r.deps=e,r.depsTail=t}function w_(r){for(let e=r.deps;e;e=e.nextDep)if(e.dep.version!==e.version||e.dep.computed&&(Mj(e.dep.computed)||e.dep.version!==e.version))return!0;return!!r._dirty}function Mj(r){if(r.flags&4&&!(r.flags&16)||(r.flags&=-17,r.globalVersion===So))return;r.globalVersion=So;const e=r.dep;if(r.flags|=2,e.version>0&&!r.isSSR&&r.deps&&!w_(r)){r.flags&=-3;return}const t=He,i=_r;He=r,_r=!0;try{Dj(r);const n=r.fn(r._value);(e.version===0||Si(n,r._value))&&(r._value=n,e.version++)}catch(n){throw e.version++,n}finally{He=t,_r=i,Aj(r),r.flags&=-3}}function aw(r,e=!1){const{dep:t,prevSub:i,nextSub:n}=r;if(i&&(i.nextSub=n,r.prevSub=void 0),n&&(n.prevSub=i,r.nextSub=void 0),t.subs===r&&(t.subs=i,!i&&t.computed)){t.computed.flags&=-5;for(let s=t.computed.deps;s;s=s.nextDep)aw(s,!0)}!e&&!--t.sc&&t.map&&t.map.delete(t.key)}function nH(r){const{prevDep:e,nextDep:t}=r;e&&(e.nextDep=t,r.prevDep=void 0),t&&(t.prevDep=e,r.nextDep=void 0)}let _r=!0;const Nj=[];function Ni(){Nj.push(_r),_r=!1}function Fi(){const r=Nj.pop();_r=r===void 0?!0:r}function C0(r){const{cleanup:e}=r;if(r.cleanup=void 0,e){const t=He;He=void 0;try{e()}finally{He=t}}}let So=0;class sH{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class uw{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(e){if(!He||!_r||He===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==He)t=this.activeLink=new sH(He,this),He.deps?(t.prevDep=He.depsTail,He.depsTail.nextDep=t,He.depsTail=t):He.deps=He.depsTail=t,Fj(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){const i=t.nextDep;i.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=i),t.prevDep=He.depsTail,t.nextDep=void 0,He.depsTail.nextDep=t,He.depsTail=t,He.deps===t&&(He.deps=i)}return t}trigger(e){this.version++,So++,this.notify(e)}notify(e){sw();try{for(let t=this.subs;t;t=t.prevSub)t.sub.notify()&&t.sub.dep.notify()}finally{ow()}}}function Fj(r){if(r.dep.sc++,r.sub.flags&4){const e=r.dep.computed;if(e&&!r.dep.subs){e.flags|=20;for(let i=e.deps;i;i=i.nextDep)Fj(i)}const t=r.dep.subs;t!==r&&(r.prevSub=t,t&&(t.nextSub=r)),r.dep.subs=r}}const E_=new WeakMap,rn=Symbol(""),S_=Symbol(""),Oo=Symbol("");function Rt(r,e,t){if(_r&&He){let i=E_.get(r);i||E_.set(r,i=new Map);let n=i.get(t);n||(i.set(t,n=new uw),n.map=i,n.key=t),n.track()}}function Vr(r,e,t,i,n,s){const o=E_.get(r);if(!o){So++;return}const a=u=>{u&&u.trigger()};if(sw(),e==="clear")o.forEach(a);else{const u=ge(r),l=u&&iw(t);if(u&&t==="length"){const c=Number(i);o.forEach((d,h)=>{(h==="length"||h===Oo||!si(h)&&h>=c)&&a(d)})}else switch((t!==void 0||o.has(void 0))&&a(o.get(t)),l&&a(o.get(Oo)),e){case"add":u?l&&a(o.get("length")):(a(o.get(rn)),rs(r)&&a(o.get(S_)));break;case"delete":u||(a(o.get(rn)),rs(r)&&a(o.get(S_)));break;case"set":rs(r)&&a(o.get(rn));break}}ow()}function Ln(r){const e=Me(r);return e===r?e:(Rt(e,"iterate",Oo),ur(r)?e:e.map(Ct))}function bu(r){return Rt(r=Me(r),"iterate",Oo),r}const oH={__proto__:null,[Symbol.iterator](){return fl(this,Symbol.iterator,Ct)},concat(...r){return Ln(this).concat(...r.map(e=>ge(e)?Ln(e):e))},entries(){return fl(this,"entries",r=>(r[1]=Ct(r[1]),r))},every(r,e){return Hr(this,"every",r,e,void 0,arguments)},filter(r,e){return Hr(this,"filter",r,e,t=>t.map(Ct),arguments)},find(r,e){return Hr(this,"find",r,e,Ct,arguments)},findIndex(r,e){return Hr(this,"findIndex",r,e,void 0,arguments)},findLast(r,e){return Hr(this,"findLast",r,e,Ct,arguments)},findLastIndex(r,e){return Hr(this,"findLastIndex",r,e,void 0,arguments)},forEach(r,e){return Hr(this,"forEach",r,e,void 0,arguments)},includes(...r){return vl(this,"includes",r)},indexOf(...r){return vl(this,"indexOf",r)},join(r){return Ln(this).join(r)},lastIndexOf(...r){return vl(this,"lastIndexOf",r)},map(r,e){return Hr(this,"map",r,e,void 0,arguments)},pop(){return Xs(this,"pop")},push(...r){return Xs(this,"push",r)},reduce(r,...e){return x0(this,"reduce",r,e)},reduceRight(r,...e){return x0(this,"reduceRight",r,e)},shift(){return Xs(this,"shift")},some(r,e){return Hr(this,"some",r,e,void 0,arguments)},splice(...r){return Xs(this,"splice",r)},toReversed(){return Ln(this).toReversed()},toSorted(r){return Ln(this).toSorted(r)},toSpliced(...r){return Ln(this).toSpliced(...r)},unshift(...r){return Xs(this,"unshift",r)},values(){return fl(this,"values",Ct)}};function fl(r,e,t){const i=bu(r),n=i[e]();return i!==r&&!ur(r)&&(n._next=n.next,n.next=()=>{const s=n._next();return s.value&&(s.value=t(s.value)),s}),n}const aH=Array.prototype;function Hr(r,e,t,i,n,s){const o=bu(r),a=o!==r&&!ur(r),u=o[e];if(u!==aH[e]){const d=u.apply(r,s);return a?Ct(d):d}let l=t;o!==r&&(a?l=function(d,h){return t.call(this,Ct(d),h,r)}:t.length>2&&(l=function(d,h){return t.call(this,d,h,r)}));const c=u.call(o,l,i);return a&&n?n(c):c}function x0(r,e,t,i){const n=bu(r);let s=t;return n!==r&&(ur(r)?t.length>3&&(s=function(o,a,u){return t.call(this,o,a,u,r)}):s=function(o,a,u){return t.call(this,o,Ct(a),u,r)}),n[e](s,...i)}function vl(r,e,t){const i=Me(r);Rt(i,"iterate",Oo);const n=i[e](...t);return(n===-1||n===!1)&&dw(t[0])?(t[0]=Me(t[0]),i[e](...t)):n}function Xs(r,e,t=[]){Ni(),sw();const i=Me(r)[e].apply(r,t);return ow(),Fi(),i}const uH=ew("__proto__,__v_isRef,__isVue"),kj=new Set(Object.getOwnPropertyNames(Symbol).filter(r=>r!=="arguments"&&r!=="caller").map(r=>Symbol[r]).filter(si));function lH(r){si(r)||(r=String(r));const e=Me(this);return Rt(e,"has",r),e.hasOwnProperty(r)}class Bj{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,i){if(t==="__v_skip")return e.__v_skip;const n=this._isReadonly,s=this._isShallow;if(t==="__v_isReactive")return!n;if(t==="__v_isReadonly")return n;if(t==="__v_isShallow")return s;if(t==="__v_raw")return i===(n?s?bH:Hj:s?zj:Lj).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(i)?e:void 0;const o=ge(e);if(!n){let u;if(o&&(u=oH[t]))return u;if(t==="hasOwnProperty")return lH}const a=Reflect.get(e,t,qt(e)?e:i);return(si(t)?kj.has(t):uH(t))||(n||Rt(e,"get",t),s)?a:qt(a)?o&&iw(t)?a:a.value:Ge(a)?n?Uj(a):_u(a):a}}class jj extends Bj{constructor(e=!1){super(!1,e)}set(e,t,i,n){let s=e[t];if(!this._isShallow){const u=cn(s);if(!ur(i)&&!cn(i)&&(s=Me(s),i=Me(i)),!ge(e)&&qt(s)&&!qt(i))return u?!1:(s.value=i,!0)}const o=ge(e)&&iw(t)?Number(t)r,$a=r=>Reflect.getPrototypeOf(r);function vH(r,e,t){return function(...i){const n=this.__v_raw,s=Me(n),o=rs(s),a=r==="entries"||r===Symbol.iterator&&o,u=r==="keys"&&o,l=n[r](...i),c=t?O_:e?I_:Ct;return!e&&Rt(s,"iterate",u?S_:rn),{next(){const{value:d,done:h}=l.next();return h?{value:d,done:h}:{value:a?[c(d[0]),c(d[1])]:c(d),done:h}},[Symbol.iterator](){return this}}}}function Pa(r){return function(...e){return r==="delete"?!1:r==="clear"?void 0:this}}function pH(r,e){const t={get(n){const s=this.__v_raw,o=Me(s),a=Me(n);r||(Si(n,a)&&Rt(o,"get",n),Rt(o,"get",a));const{has:u}=$a(o),l=e?O_:r?I_:Ct;if(u.call(o,n))return l(s.get(n));if(u.call(o,a))return l(s.get(a));s!==o&&s.get(n)},get size(){const n=this.__v_raw;return!r&&Rt(Me(n),"iterate",rn),Reflect.get(n,"size",n)},has(n){const s=this.__v_raw,o=Me(s),a=Me(n);return r||(Si(n,a)&&Rt(o,"has",n),Rt(o,"has",a)),n===a?s.has(n):s.has(n)||s.has(a)},forEach(n,s){const o=this,a=o.__v_raw,u=Me(a),l=e?O_:r?I_:Ct;return!r&&Rt(u,"iterate",rn),a.forEach((c,d)=>n.call(s,l(c),l(d),o))}};return Dt(t,r?{add:Pa("add"),set:Pa("set"),delete:Pa("delete"),clear:Pa("clear")}:{add(n){!e&&!ur(n)&&!cn(n)&&(n=Me(n));const s=Me(this);return $a(s).has.call(s,n)||(s.add(n),Vr(s,"add",n,n)),this},set(n,s){!e&&!ur(s)&&!cn(s)&&(s=Me(s));const o=Me(this),{has:a,get:u}=$a(o);let l=a.call(o,n);l||(n=Me(n),l=a.call(o,n));const c=u.call(o,n);return o.set(n,s),l?Si(s,c)&&Vr(o,"set",n,s):Vr(o,"add",n,s),this},delete(n){const s=Me(this),{has:o,get:a}=$a(s);let u=o.call(s,n);u||(n=Me(n),u=o.call(s,n)),a&&a.call(s,n);const l=s.delete(n);return u&&Vr(s,"delete",n,void 0),l},clear(){const n=Me(this),s=n.size!==0,o=n.clear();return s&&Vr(n,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(n=>{t[n]=vH(n,r,e)}),t}function lw(r,e){const t=pH(r,e);return(i,n,s)=>n==="__v_isReactive"?!r:n==="__v_isReadonly"?r:n==="__v_raw"?i:Reflect.get(Ne(t,n)&&n in i?t:i,n,s)}const gH={get:lw(!1,!1)},mH={get:lw(!1,!0)},yH={get:lw(!0,!1)};const Lj=new WeakMap,zj=new WeakMap,Hj=new WeakMap,bH=new WeakMap;function _H(r){switch(r){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function wH(r){return r.__v_skip||!Object.isExtensible(r)?0:_H(K5(r))}function _u(r){return cn(r)?r:cw(r,!1,dH,gH,Lj)}function Wj(r){return cw(r,!1,fH,mH,zj)}function Uj(r){return cw(r,!0,hH,yH,Hj)}function cw(r,e,t,i,n){if(!Ge(r)||r.__v_raw&&!(e&&r.__v_isReactive))return r;const s=n.get(r);if(s)return s;const o=wH(r);if(o===0)return r;const a=new Proxy(r,o===2?i:t);return n.set(r,a),a}function is(r){return cn(r)?is(r.__v_raw):!!(r&&r.__v_isReactive)}function cn(r){return!!(r&&r.__v_isReadonly)}function ur(r){return!!(r&&r.__v_isShallow)}function dw(r){return r?!!r.__v_raw:!1}function Me(r){const e=r&&r.__v_raw;return e?Me(e):r}function Vj(r){return!Ne(r,"__v_skip")&&Object.isExtensible(r)&&Ij(r,"__v_skip",!0),r}const Ct=r=>Ge(r)?_u(r):r,I_=r=>Ge(r)?Uj(r):r;function qt(r){return r?r.__v_isRef===!0:!1}function sr(r){return Kj(r,!1)}function EH(r){return Kj(r,!0)}function Kj(r,e){return qt(r)?r:new SH(r,e)}class SH{constructor(e,t){this.dep=new uw,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:Me(e),this._value=t?e:Ct(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){const t=this._rawValue,i=this.__v_isShallow||ur(e)||cn(e);e=i?e:Me(e),Si(e,t)&&(this._rawValue=e,this._value=i?e:Ct(e),this.dep.trigger())}}function Zt(r){return qt(r)?r.value:r}const OH={get:(r,e,t)=>e==="__v_raw"?r:Zt(Reflect.get(r,e,t)),set:(r,e,t,i)=>{const n=r[e];return qt(n)&&!qt(t)?(n.value=t,!0):Reflect.set(r,e,t,i)}};function Gj(r){return is(r)?r:new Proxy(r,OH)}class IH{constructor(e,t,i){this.fn=e,this.setter=t,this._value=void 0,this.dep=new uw(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=So-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=i}notify(){if(this.flags|=16,!(this.flags&8)&&He!==this)return qj(this,!0),!0}get value(){const e=this.dep.track();return Mj(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}function TH(r,e,t=!1){let i,n;return be(r)?i=r:(i=r.get,n=r.set),new IH(i,n,t)}const Ra={},Ga=new WeakMap;let Ji;function $H(r,e=!1,t=Ji){if(t){let i=Ga.get(t);i||Ga.set(t,i=[]),i.push(r)}}function PH(r,e,t=je){const{immediate:i,deep:n,once:s,scheduler:o,augmentJob:a,call:u}=t,l=y=>n?y:ur(y)||n===!1||n===0?Kr(y,1):Kr(y);let c,d,h,f,v=!1,p=!1;if(qt(r)?(d=()=>r.value,v=ur(r)):is(r)?(d=()=>l(r),v=!0):ge(r)?(p=!0,v=r.some(y=>is(y)||ur(y)),d=()=>r.map(y=>{if(qt(y))return y.value;if(is(y))return l(y);if(be(y))return u?u(y,2):y()})):be(r)?e?d=u?()=>u(r,2):r:d=()=>{if(h){Ni();try{h()}finally{Fi()}}const y=Ji;Ji=c;try{return u?u(r,3,[f]):r(f)}finally{Ji=y}}:d=Nr,e&&n){const y=d,S=n===!0?1/0:n;d=()=>Kr(y(),S)}const b=iH(),m=()=>{c.stop(),b&&b.active&&rw(b.effects,c)};if(s&&e){const y=e;e=(...S)=>{y(...S),m()}}let g=p?new Array(r.length).fill(Ra):Ra;const w=y=>{if(!(!(c.flags&1)||!c.dirty&&!y))if(e){const S=c.run();if(n||v||(p?S.some((O,I)=>Si(O,g[I])):Si(S,g))){h&&h();const O=Ji;Ji=c;try{const I=[S,g===Ra?void 0:p&&g[0]===Ra?[]:g,f];u?u(e,3,I):e(...I),g=S}finally{Ji=O}}}else c.run()};return a&&a(w),c=new Cj(d),c.scheduler=o?()=>o(w,!1):w,f=y=>$H(y,!1,c),h=c.onStop=()=>{const y=Ga.get(c);if(y){if(u)u(y,4);else for(const S of y)S();Ga.delete(c)}},e?i?w(!0):g=c.run():o?o(w.bind(null,!0),!0):c.run(),m.pause=c.pause.bind(c),m.resume=c.resume.bind(c),m.stop=m,m}function Kr(r,e=1/0,t){if(e<=0||!Ge(r)||r.__v_skip||(t=t||new Set,t.has(r)))return r;if(t.add(r),e--,qt(r))Kr(r.value,e,t);else if(ge(r))for(let i=0;i{Kr(i,e,t)});else if(Sj(r)){for(const i in r)Kr(r[i],e,t);for(const i of Object.getOwnPropertySymbols(r))Object.prototype.propertyIsEnumerable.call(r,i)&&Kr(r[i],e,t)}return r}/** +**/let Zt;class Rj{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=Zt,!e&&Zt&&(this.index=(Zt.scopes||(Zt.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,t;if(this.scopes)for(e=0,t=this.scopes.length;e0)return;if(lo){let e=lo;for(lo=void 0;e;){const t=e.next;e.next=void 0,e.flags&=-9,e=t}}let r;for(;uo;){let e=uo;for(uo=void 0;e;){const t=e.next;if(e.next=void 0,e.flags&=-9,e.flags&1)try{e.trigger()}catch(i){r||(r=i)}e=t}}if(r)throw r}function Dj(r){for(let e=r.deps;e;e=e.nextDep)e.version=-1,e.prevActiveLink=e.dep.activeLink,e.dep.activeLink=e}function Aj(r){let e,t=r.depsTail,i=t;for(;i;){const n=i.prevDep;i.version===-1?(i===t&&(t=n),aw(i),oH(i)):e=i,i.dep.activeLink=i.prevActiveLink,i.prevActiveLink=void 0,i=n}r.deps=e,r.depsTail=t}function w_(r){for(let e=r.deps;e;e=e.nextDep)if(e.dep.version!==e.version||e.dep.computed&&(Mj(e.dep.computed)||e.dep.version!==e.version))return!0;return!!r._dirty}function Mj(r){if(r.flags&4&&!(r.flags&16)||(r.flags&=-17,r.globalVersion===So))return;r.globalVersion=So;const e=r.dep;if(r.flags|=2,e.version>0&&!r.isSSR&&r.deps&&!w_(r)){r.flags&=-3;return}const t=He,i=_r;He=r,_r=!0;try{Dj(r);const n=r.fn(r._value);(e.version===0||Oi(n,r._value))&&(r._value=n,e.version++)}catch(n){throw e.version++,n}finally{He=t,_r=i,Aj(r),r.flags&=-3}}function aw(r,e=!1){const{dep:t,prevSub:i,nextSub:n}=r;if(i&&(i.nextSub=n,r.prevSub=void 0),n&&(n.prevSub=i,r.nextSub=void 0),t.subs===r&&(t.subs=i,!i&&t.computed)){t.computed.flags&=-5;for(let s=t.computed.deps;s;s=s.nextDep)aw(s,!0)}!e&&!--t.sc&&t.map&&t.map.delete(t.key)}function oH(r){const{prevDep:e,nextDep:t}=r;e&&(e.nextDep=t,r.prevDep=void 0),t&&(t.prevDep=e,r.nextDep=void 0)}let _r=!0;const Nj=[];function Fi(){Nj.push(_r),_r=!1}function ki(){const r=Nj.pop();_r=r===void 0?!0:r}function C0(r){const{cleanup:e}=r;if(r.cleanup=void 0,e){const t=He;He=void 0;try{e()}finally{He=t}}}let So=0;class aH{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class uw{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(e){if(!He||!_r||He===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==He)t=this.activeLink=new aH(He,this),He.deps?(t.prevDep=He.depsTail,He.depsTail.nextDep=t,He.depsTail=t):He.deps=He.depsTail=t,Fj(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){const i=t.nextDep;i.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=i),t.prevDep=He.depsTail,t.nextDep=void 0,He.depsTail.nextDep=t,He.depsTail=t,He.deps===t&&(He.deps=i)}return t}trigger(e){this.version++,So++,this.notify(e)}notify(e){sw();try{for(let t=this.subs;t;t=t.prevSub)t.sub.notify()&&t.sub.dep.notify()}finally{ow()}}}function Fj(r){if(r.dep.sc++,r.sub.flags&4){const e=r.dep.computed;if(e&&!r.dep.subs){e.flags|=20;for(let i=e.deps;i;i=i.nextDep)Fj(i)}const t=r.dep.subs;t!==r&&(r.prevSub=t,t&&(t.nextSub=r)),r.dep.subs=r}}const E_=new WeakMap,rn=Symbol(""),S_=Symbol(""),Oo=Symbol("");function Rt(r,e,t){if(_r&&He){let i=E_.get(r);i||E_.set(r,i=new Map);let n=i.get(t);n||(i.set(t,n=new uw),n.map=i,n.key=t),n.track()}}function Vr(r,e,t,i,n,s){const o=E_.get(r);if(!o){So++;return}const a=u=>{u&&u.trigger()};if(sw(),e==="clear")o.forEach(a);else{const u=ge(r),l=u&&iw(t);if(u&&t==="length"){const c=Number(i);o.forEach((d,h)=>{(h==="length"||h===Oo||!si(h)&&h>=c)&&a(d)})}else switch((t!==void 0||o.has(void 0))&&a(o.get(t)),l&&a(o.get(Oo)),e){case"add":u?l&&a(o.get("length")):(a(o.get(rn)),rs(r)&&a(o.get(S_)));break;case"delete":u||(a(o.get(rn)),rs(r)&&a(o.get(S_)));break;case"set":rs(r)&&a(o.get(rn));break}}ow()}function Ln(r){const e=Me(r);return e===r?e:(Rt(e,"iterate",Oo),ur(r)?e:e.map(Ct))}function bu(r){return Rt(r=Me(r),"iterate",Oo),r}const uH={__proto__:null,[Symbol.iterator](){return fl(this,Symbol.iterator,Ct)},concat(...r){return Ln(this).concat(...r.map(e=>ge(e)?Ln(e):e))},entries(){return fl(this,"entries",r=>(r[1]=Ct(r[1]),r))},every(r,e){return Hr(this,"every",r,e,void 0,arguments)},filter(r,e){return Hr(this,"filter",r,e,t=>t.map(Ct),arguments)},find(r,e){return Hr(this,"find",r,e,Ct,arguments)},findIndex(r,e){return Hr(this,"findIndex",r,e,void 0,arguments)},findLast(r,e){return Hr(this,"findLast",r,e,Ct,arguments)},findLastIndex(r,e){return Hr(this,"findLastIndex",r,e,void 0,arguments)},forEach(r,e){return Hr(this,"forEach",r,e,void 0,arguments)},includes(...r){return vl(this,"includes",r)},indexOf(...r){return vl(this,"indexOf",r)},join(r){return Ln(this).join(r)},lastIndexOf(...r){return vl(this,"lastIndexOf",r)},map(r,e){return Hr(this,"map",r,e,void 0,arguments)},pop(){return Xs(this,"pop")},push(...r){return Xs(this,"push",r)},reduce(r,...e){return x0(this,"reduce",r,e)},reduceRight(r,...e){return x0(this,"reduceRight",r,e)},shift(){return Xs(this,"shift")},some(r,e){return Hr(this,"some",r,e,void 0,arguments)},splice(...r){return Xs(this,"splice",r)},toReversed(){return Ln(this).toReversed()},toSorted(r){return Ln(this).toSorted(r)},toSpliced(...r){return Ln(this).toSpliced(...r)},unshift(...r){return Xs(this,"unshift",r)},values(){return fl(this,"values",Ct)}};function fl(r,e,t){const i=bu(r),n=i[e]();return i!==r&&!ur(r)&&(n._next=n.next,n.next=()=>{const s=n._next();return s.value&&(s.value=t(s.value)),s}),n}const lH=Array.prototype;function Hr(r,e,t,i,n,s){const o=bu(r),a=o!==r&&!ur(r),u=o[e];if(u!==lH[e]){const d=u.apply(r,s);return a?Ct(d):d}let l=t;o!==r&&(a?l=function(d,h){return t.call(this,Ct(d),h,r)}:t.length>2&&(l=function(d,h){return t.call(this,d,h,r)}));const c=u.call(o,l,i);return a&&n?n(c):c}function x0(r,e,t,i){const n=bu(r);let s=t;return n!==r&&(ur(r)?t.length>3&&(s=function(o,a,u){return t.call(this,o,a,u,r)}):s=function(o,a,u){return t.call(this,o,Ct(a),u,r)}),n[e](s,...i)}function vl(r,e,t){const i=Me(r);Rt(i,"iterate",Oo);const n=i[e](...t);return(n===-1||n===!1)&&dw(t[0])?(t[0]=Me(t[0]),i[e](...t)):n}function Xs(r,e,t=[]){Fi(),sw();const i=Me(r)[e].apply(r,t);return ow(),ki(),i}const cH=ew("__proto__,__v_isRef,__isVue"),kj=new Set(Object.getOwnPropertyNames(Symbol).filter(r=>r!=="arguments"&&r!=="caller").map(r=>Symbol[r]).filter(si));function dH(r){si(r)||(r=String(r));const e=Me(this);return Rt(e,"has",r),e.hasOwnProperty(r)}class Bj{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,i){if(t==="__v_skip")return e.__v_skip;const n=this._isReadonly,s=this._isShallow;if(t==="__v_isReactive")return!n;if(t==="__v_isReadonly")return n;if(t==="__v_isShallow")return s;if(t==="__v_raw")return i===(n?s?wH:Hj:s?zj:Lj).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(i)?e:void 0;const o=ge(e);if(!n){let u;if(o&&(u=uH[t]))return u;if(t==="hasOwnProperty")return dH}const a=Reflect.get(e,t,qt(e)?e:i);return(si(t)?kj.has(t):cH(t))||(n||Rt(e,"get",t),s)?a:qt(a)?o&&iw(t)?a:a.value:Ge(a)?n?Uj(a):_u(a):a}}class jj extends Bj{constructor(e=!1){super(!1,e)}set(e,t,i,n){let s=e[t];if(!this._isShallow){const u=cn(s);if(!ur(i)&&!cn(i)&&(s=Me(s),i=Me(i)),!ge(e)&&qt(s)&&!qt(i))return u?!1:(s.value=i,!0)}const o=ge(e)&&iw(t)?Number(t)r,$a=r=>Reflect.getPrototypeOf(r);function gH(r,e,t){return function(...i){const n=this.__v_raw,s=Me(n),o=rs(s),a=r==="entries"||r===Symbol.iterator&&o,u=r==="keys"&&o,l=n[r](...i),c=t?O_:e?I_:Ct;return!e&&Rt(s,"iterate",u?S_:rn),{next(){const{value:d,done:h}=l.next();return h?{value:d,done:h}:{value:a?[c(d[0]),c(d[1])]:c(d),done:h}},[Symbol.iterator](){return this}}}}function Pa(r){return function(...e){return r==="delete"?!1:r==="clear"?void 0:this}}function mH(r,e){const t={get(n){const s=this.__v_raw,o=Me(s),a=Me(n);r||(Oi(n,a)&&Rt(o,"get",n),Rt(o,"get",a));const{has:u}=$a(o),l=e?O_:r?I_:Ct;if(u.call(o,n))return l(s.get(n));if(u.call(o,a))return l(s.get(a));s!==o&&s.get(n)},get size(){const n=this.__v_raw;return!r&&Rt(Me(n),"iterate",rn),Reflect.get(n,"size",n)},has(n){const s=this.__v_raw,o=Me(s),a=Me(n);return r||(Oi(n,a)&&Rt(o,"has",n),Rt(o,"has",a)),n===a?s.has(n):s.has(n)||s.has(a)},forEach(n,s){const o=this,a=o.__v_raw,u=Me(a),l=e?O_:r?I_:Ct;return!r&&Rt(u,"iterate",rn),a.forEach((c,d)=>n.call(s,l(c),l(d),o))}};return Dt(t,r?{add:Pa("add"),set:Pa("set"),delete:Pa("delete"),clear:Pa("clear")}:{add(n){!e&&!ur(n)&&!cn(n)&&(n=Me(n));const s=Me(this);return $a(s).has.call(s,n)||(s.add(n),Vr(s,"add",n,n)),this},set(n,s){!e&&!ur(s)&&!cn(s)&&(s=Me(s));const o=Me(this),{has:a,get:u}=$a(o);let l=a.call(o,n);l||(n=Me(n),l=a.call(o,n));const c=u.call(o,n);return o.set(n,s),l?Oi(s,c)&&Vr(o,"set",n,s):Vr(o,"add",n,s),this},delete(n){const s=Me(this),{has:o,get:a}=$a(s);let u=o.call(s,n);u||(n=Me(n),u=o.call(s,n)),a&&a.call(s,n);const l=s.delete(n);return u&&Vr(s,"delete",n,void 0),l},clear(){const n=Me(this),s=n.size!==0,o=n.clear();return s&&Vr(n,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(n=>{t[n]=gH(n,r,e)}),t}function lw(r,e){const t=mH(r,e);return(i,n,s)=>n==="__v_isReactive"?!r:n==="__v_isReadonly"?r:n==="__v_raw"?i:Reflect.get(Ne(t,n)&&n in i?t:i,n,s)}const yH={get:lw(!1,!1)},bH={get:lw(!1,!0)},_H={get:lw(!0,!1)};const Lj=new WeakMap,zj=new WeakMap,Hj=new WeakMap,wH=new WeakMap;function EH(r){switch(r){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function SH(r){return r.__v_skip||!Object.isExtensible(r)?0:EH(Y5(r))}function _u(r){return cn(r)?r:cw(r,!1,fH,yH,Lj)}function Wj(r){return cw(r,!1,pH,bH,zj)}function Uj(r){return cw(r,!0,vH,_H,Hj)}function cw(r,e,t,i,n){if(!Ge(r)||r.__v_raw&&!(e&&r.__v_isReactive))return r;const s=n.get(r);if(s)return s;const o=SH(r);if(o===0)return r;const a=new Proxy(r,o===2?i:t);return n.set(r,a),a}function is(r){return cn(r)?is(r.__v_raw):!!(r&&r.__v_isReactive)}function cn(r){return!!(r&&r.__v_isReadonly)}function ur(r){return!!(r&&r.__v_isShallow)}function dw(r){return r?!!r.__v_raw:!1}function Me(r){const e=r&&r.__v_raw;return e?Me(e):r}function Vj(r){return!Ne(r,"__v_skip")&&Object.isExtensible(r)&&Ij(r,"__v_skip",!0),r}const Ct=r=>Ge(r)?_u(r):r,I_=r=>Ge(r)?Uj(r):r;function qt(r){return r?r.__v_isRef===!0:!1}function or(r){return Kj(r,!1)}function OH(r){return Kj(r,!0)}function Kj(r,e){return qt(r)?r:new IH(r,e)}class IH{constructor(e,t){this.dep=new uw,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:Me(e),this._value=t?e:Ct(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){const t=this._rawValue,i=this.__v_isShallow||ur(e)||cn(e);e=i?e:Me(e),Oi(e,t)&&(this._rawValue=e,this._value=i?e:Ct(e),this.dep.trigger())}}function er(r){return qt(r)?r.value:r}const TH={get:(r,e,t)=>e==="__v_raw"?r:er(Reflect.get(r,e,t)),set:(r,e,t,i)=>{const n=r[e];return qt(n)&&!qt(t)?(n.value=t,!0):Reflect.set(r,e,t,i)}};function Gj(r){return is(r)?r:new Proxy(r,TH)}class $H{constructor(e,t,i){this.fn=e,this.setter=t,this._value=void 0,this.dep=new uw(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=So-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=i}notify(){if(this.flags|=16,!(this.flags&8)&&He!==this)return qj(this,!0),!0}get value(){const e=this.dep.track();return Mj(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}function PH(r,e,t=!1){let i,n;return be(r)?i=r:(i=r.get,n=r.set),new $H(i,n,t)}const Ra={},Ga=new WeakMap;let Ji;function RH(r,e=!1,t=Ji){if(t){let i=Ga.get(t);i||Ga.set(t,i=[]),i.push(r)}}function CH(r,e,t=je){const{immediate:i,deep:n,once:s,scheduler:o,augmentJob:a,call:u}=t,l=y=>n?y:ur(y)||n===!1||n===0?Kr(y,1):Kr(y);let c,d,h,f,v=!1,p=!1;if(qt(r)?(d=()=>r.value,v=ur(r)):is(r)?(d=()=>l(r),v=!0):ge(r)?(p=!0,v=r.some(y=>is(y)||ur(y)),d=()=>r.map(y=>{if(qt(y))return y.value;if(is(y))return l(y);if(be(y))return u?u(y,2):y()})):be(r)?e?d=u?()=>u(r,2):r:d=()=>{if(h){Fi();try{h()}finally{ki()}}const y=Ji;Ji=c;try{return u?u(r,3,[f]):r(f)}finally{Ji=y}}:d=Nr,e&&n){const y=d,S=n===!0?1/0:n;d=()=>Kr(y(),S)}const b=sH(),m=()=>{c.stop(),b&&b.active&&rw(b.effects,c)};if(s&&e){const y=e;e=(...S)=>{y(...S),m()}}let g=p?new Array(r.length).fill(Ra):Ra;const w=y=>{if(!(!(c.flags&1)||!c.dirty&&!y))if(e){const S=c.run();if(n||v||(p?S.some((O,I)=>Oi(O,g[I])):Oi(S,g))){h&&h();const O=Ji;Ji=c;try{const I=[S,g===Ra?void 0:p&&g[0]===Ra?[]:g,f];u?u(e,3,I):e(...I),g=S}finally{Ji=O}}}else c.run()};return a&&a(w),c=new Cj(d),c.scheduler=o?()=>o(w,!1):w,f=y=>RH(y,!1,c),h=c.onStop=()=>{const y=Ga.get(c);if(y){if(u)u(y,4);else for(const S of y)S();Ga.delete(c)}},e?i?w(!0):g=c.run():o?o(w.bind(null,!0),!0):c.run(),m.pause=c.pause.bind(c),m.resume=c.resume.bind(c),m.stop=m,m}function Kr(r,e=1/0,t){if(e<=0||!Ge(r)||r.__v_skip||(t=t||new Set,t.has(r)))return r;if(t.add(r),e--,qt(r))Kr(r.value,e,t);else if(ge(r))for(let i=0;i{Kr(i,e,t)});else if(Sj(r)){for(const i in r)Kr(r[i],e,t);for(const i of Object.getOwnPropertySymbols(r))Object.prototype.propertyIsEnumerable.call(r,i)&&Kr(r[i],e,t)}return r}/** * @vue/runtime-core v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/function Ho(r,e,t,i){try{return i?r(...i):r()}catch(n){wu(n,e,t)}}function Br(r,e,t,i){if(be(r)){const n=Ho(r,e,t,i);return n&&wj(n)&&n.catch(s=>{wu(s,e,t)}),n}if(ge(r)){const n=[];for(let s=0;s>>1,n=Ft[i],s=Io(n);s=Io(t)?Ft.push(r):Ft.splice(CH(e),0,r),r.flags|=1,Jj()}}function Jj(){Ya||(Ya=Yj.then(Zj))}function xH(r){ge(r)?ns.push(...r):gi&&r.id===-1?gi.splice(Vn+1,0,r):r.flags&1||(ns.push(r),r.flags|=1),Jj()}function q0(r,e,t=Rr+1){for(;tIo(t)-Io(i));if(ns.length=0,gi){gi.push(...e);return}for(gi=e,Vn=0;Vnr.id==null?r.flags&2?-1:1/0:r.id;function Zj(r){try{for(Rr=0;Rr{i._d&&L0(-1);const s=Xa(e);let o;try{o=r(...n)}finally{Xa(s),i._d&&L0(1)}return o};return i._n=!0,i._c=!0,i._d=!0,i}function qH(r,e){if(xt===null)return r;const t=Tu(xt),i=r.dirs||(r.dirs=[]);for(let n=0;nr.__isTeleport;function fw(r,e){r.shapeFlag&6&&r.component?(r.transition=e,fw(r.component.subTree,e)):r.shapeFlag&128?(r.ssContent.transition=e.clone(r.ssContent),r.ssFallback.transition=e.clone(r.ssFallback)):r.transition=e}/*! #__NO_SIDE_EFFECTS__ */function Or(r,e){return be(r)?Dt({name:r.name},e,{setup:r}):r}function tL(r){r.ids=[r.ids[0]+r.ids[2]+++"-",0,0]}function Ja(r,e,t,i,n=!1){if(ge(r)){r.forEach((v,p)=>Ja(v,e&&(ge(e)?e[p]:e),t,i,n));return}if(ss(i)&&!n){i.shapeFlag&512&&i.type.__asyncResolved&&i.component.subTree.component&&Ja(r,e,t,i.component.subTree);return}const s=i.shapeFlag&4?Tu(i.component):i.el,o=n?null:s,{i:a,r:u}=r,l=e&&e.r,c=a.refs===je?a.refs={}:a.refs,d=a.setupState,h=Me(d),f=d===je?()=>!1:v=>Ne(h,v);if(l!=null&&l!==u&&(lt(l)?(c[l]=null,f(l)&&(d[l]=null)):qt(l)&&(l.value=null)),be(u))Ho(u,a,12,[o,c]);else{const v=lt(u),p=qt(u);if(v||p){const b=()=>{if(r.f){const m=v?f(u)?d[u]:c[u]:u.value;n?ge(m)&&rw(m,s):ge(m)?m.includes(s)||m.push(s):v?(c[u]=[s],f(u)&&(d[u]=c[u])):(u.value=[s],r.k&&(c[r.k]=u.value))}else v?(c[u]=o,f(u)&&(d[u]=o)):p&&(u.value=o,r.k&&(c[r.k]=o))};o?(b.id=-1,Jt(b,t)):b()}}}mu().requestIdleCallback;mu().cancelIdleCallback;const ss=r=>!!r.type.__asyncLoader,rL=r=>r.type.__isKeepAlive;function MH(r,e){iL(r,"a",e)}function NH(r,e){iL(r,"da",e)}function iL(r,e,t=Bt){const i=r.__wdc||(r.__wdc=()=>{let n=t;for(;n;){if(n.isDeactivated)return;n=n.parent}return r()});if(Su(e,i,t),t){let n=t.parent;for(;n&&n.parent;)rL(n.parent.vnode)&&FH(i,e,t,n),n=n.parent}}function FH(r,e,t,i){const n=Su(e,r,i,!0);nL(()=>{rw(i[e],n)},t)}function Su(r,e,t=Bt,i=!1){if(t){const n=t[r]||(t[r]=[]),s=e.__weh||(e.__weh=(...o)=>{Ni();const a=Wo(t),u=Br(e,t,r,o);return a(),Fi(),u});return i?n.unshift(s):n.push(s),s}}const oi=r=>(e,t=Bt)=>{(!Po||r==="sp")&&Su(r,(...i)=>e(...i),t)},kH=oi("bm"),vw=oi("m"),BH=oi("bu"),jH=oi("u"),LH=oi("bum"),nL=oi("um"),zH=oi("sp"),HH=oi("rtg"),WH=oi("rtc");function UH(r,e=Bt){Su("ec",r,e)}const VH=Symbol.for("v-ndc");function co(r,e,t,i){let n;const s=t,o=ge(r);if(o||lt(r)){const a=o&&is(r);let u=!1;a&&(u=!ur(r),r=bu(r)),n=new Array(r.length);for(let l=0,c=r.length;le(a,u,void 0,s));else{const a=Object.keys(r);n=new Array(a.length);for(let u=0,l=a.length;u$o(e)?!(e.type===xi||e.type===pt&&!sL(e.children)):!0)?r:null}const T_=r=>r?TL(r)?Tu(r):T_(r.parent):null,ho=Dt(Object.create(null),{$:r=>r,$el:r=>r.vnode.el,$data:r=>r.data,$props:r=>r.props,$attrs:r=>r.attrs,$slots:r=>r.slots,$refs:r=>r.refs,$parent:r=>T_(r.parent),$root:r=>T_(r.root),$host:r=>r.ce,$emit:r=>r.emit,$options:r=>aL(r),$forceUpdate:r=>r.f||(r.f=()=>{hw(r.update)}),$nextTick:r=>r.n||(r.n=Xj.bind(r.proxy)),$watch:r=>vW.bind(r)}),pl=(r,e)=>r!==je&&!r.__isScriptSetup&&Ne(r,e),GH={get({_:r},e){if(e==="__v_skip")return!0;const{ctx:t,setupState:i,data:n,props:s,accessCache:o,type:a,appContext:u}=r;let l;if(e[0]!=="$"){const f=o[e];if(f!==void 0)switch(f){case 1:return i[e];case 2:return n[e];case 4:return t[e];case 3:return s[e]}else{if(pl(i,e))return o[e]=1,i[e];if(n!==je&&Ne(n,e))return o[e]=2,n[e];if((l=r.propsOptions[0])&&Ne(l,e))return o[e]=3,s[e];if(t!==je&&Ne(t,e))return o[e]=4,t[e];$_&&(o[e]=0)}}const c=ho[e];let d,h;if(c)return e==="$attrs"&&Rt(r.attrs,"get",""),c(r);if((d=a.__cssModules)&&(d=d[e]))return d;if(t!==je&&Ne(t,e))return o[e]=4,t[e];if(h=u.config.globalProperties,Ne(h,e))return h[e]},set({_:r},e,t){const{data:i,setupState:n,ctx:s}=r;return pl(n,e)?(n[e]=t,!0):i!==je&&Ne(i,e)?(i[e]=t,!0):Ne(r.props,e)||e[0]==="$"&&e.slice(1)in r?!1:(s[e]=t,!0)},has({_:{data:r,setupState:e,accessCache:t,ctx:i,appContext:n,propsOptions:s}},o){let a;return!!t[o]||r!==je&&Ne(r,o)||pl(e,o)||(a=s[0])&&Ne(a,o)||Ne(i,o)||Ne(ho,o)||Ne(n.config.globalProperties,o)},defineProperty(r,e,t){return t.get!=null?r._.accessCache[e]=0:Ne(t,"value")&&this.set(r,e,t.value,null),Reflect.defineProperty(r,e,t)}};function D0(r){return ge(r)?r.reduce((e,t)=>(e[t]=null,e),{}):r}let $_=!0;function YH(r){const e=aL(r),t=r.proxy,i=r.ctx;$_=!1,e.beforeCreate&&A0(e.beforeCreate,r,"bc");const{data:n,computed:s,methods:o,watch:a,provide:u,inject:l,created:c,beforeMount:d,mounted:h,beforeUpdate:f,updated:v,activated:p,deactivated:b,beforeDestroy:m,beforeUnmount:g,destroyed:w,unmounted:y,render:S,renderTracked:O,renderTriggered:I,errorCaptured:_,serverPrefetch:E,expose:T,inheritAttrs:R,components:x,directives:C,filters:D}=e;if(l&&XH(l,i,null),o)for(const H in o){const Z=o[H];be(Z)&&(i[H]=Z.bind(t))}if(n){const H=n.call(t,t);Ge(H)&&(r.data=_u(H))}if($_=!0,s)for(const H in s){const Z=s[H],fe=be(Z)?Z.bind(t,t):be(Z.get)?Z.get.bind(t,t):Nr,we=!be(Z)&&be(Z.set)?Z.set.bind(t):Nr,te=br({get:fe,set:we});Object.defineProperty(i,H,{enumerable:!0,configurable:!0,get:()=>te.value,set:me=>te.value=me})}if(a)for(const H in a)oL(a[H],i,t,H);if(u){const H=be(u)?u.call(t):u;Reflect.ownKeys(H).forEach(Z=>{ja(Z,H[Z])})}c&&A0(c,r,"c");function ee(H,Z){ge(Z)?Z.forEach(fe=>H(fe.bind(t))):Z&&H(Z.bind(t))}if(ee(kH,d),ee(vw,h),ee(BH,f),ee(jH,v),ee(MH,p),ee(NH,b),ee(UH,_),ee(WH,O),ee(HH,I),ee(LH,g),ee(nL,y),ee(zH,E),ge(T))if(T.length){const H=r.exposed||(r.exposed={});T.forEach(Z=>{Object.defineProperty(H,Z,{get:()=>t[Z],set:fe=>t[Z]=fe})})}else r.exposed||(r.exposed={});S&&r.render===Nr&&(r.render=S),R!=null&&(r.inheritAttrs=R),x&&(r.components=x),C&&(r.directives=C),E&&tL(r)}function XH(r,e,t=Nr){ge(r)&&(r=P_(r));for(const i in r){const n=r[i];let s;Ge(n)?"default"in n?s=Xr(n.from||i,n.default,!0):s=Xr(n.from||i):s=Xr(n),qt(s)?Object.defineProperty(e,i,{enumerable:!0,configurable:!0,get:()=>s.value,set:o=>s.value=o}):e[i]=s}}function A0(r,e,t){Br(ge(r)?r.map(i=>i.bind(e.proxy)):r.bind(e.proxy),e,t)}function oL(r,e,t,i){let n=i.includes(".")?wL(t,i):()=>t[i];if(lt(r)){const s=e[r];be(s)&&La(n,s)}else if(be(r))La(n,r.bind(t));else if(Ge(r))if(ge(r))r.forEach(s=>oL(s,e,t,i));else{const s=be(r.handler)?r.handler.bind(t):e[r.handler];be(s)&&La(n,s,r)}}function aL(r){const e=r.type,{mixins:t,extends:i}=e,{mixins:n,optionsCache:s,config:{optionMergeStrategies:o}}=r.appContext,a=s.get(e);let u;return a?u=a:!n.length&&!t&&!i?u=e:(u={},n.length&&n.forEach(l=>Qa(u,l,o,!0)),Qa(u,e,o)),Ge(e)&&s.set(e,u),u}function Qa(r,e,t,i=!1){const{mixins:n,extends:s}=e;s&&Qa(r,s,t,!0),n&&n.forEach(o=>Qa(r,o,t,!0));for(const o in e)if(!(i&&o==="expose")){const a=JH[o]||t&&t[o];r[o]=a?a(r[o],e[o]):e[o]}return r}const JH={data:M0,props:N0,emits:N0,methods:no,computed:no,beforeCreate:At,created:At,beforeMount:At,mounted:At,beforeUpdate:At,updated:At,beforeDestroy:At,beforeUnmount:At,destroyed:At,unmounted:At,activated:At,deactivated:At,errorCaptured:At,serverPrefetch:At,components:no,directives:no,watch:ZH,provide:M0,inject:QH};function M0(r,e){return e?r?function(){return Dt(be(r)?r.call(this,this):r,be(e)?e.call(this,this):e)}:e:r}function QH(r,e){return no(P_(r),P_(e))}function P_(r){if(ge(r)){const e={};for(let t=0;t1)return t&&be(e)?e.call(i&&i.proxy):e}}const lL={},cL=()=>Object.create(lL),dL=r=>Object.getPrototypeOf(r)===lL;function rW(r,e,t,i=!1){const n={},s=cL();r.propsDefaults=Object.create(null),hL(r,e,n,s);for(const o in r.propsOptions[0])o in n||(n[o]=void 0);t?r.props=i?n:Wj(n):r.type.props?r.props=n:r.props=s,r.attrs=s}function iW(r,e,t,i){const{props:n,attrs:s,vnode:{patchFlag:o}}=r,a=Me(n),[u]=r.propsOptions;let l=!1;if((i||o>0)&&!(o&16)){if(o&8){const c=r.vnode.dynamicProps;for(let d=0;d{u=!0;const[h,f]=fL(d,e,!0);Dt(o,h),f&&a.push(...f)};!t&&e.mixins.length&&e.mixins.forEach(c),r.extends&&c(r.extends),r.mixins&&r.mixins.forEach(c)}if(!s&&!u)return Ge(r)&&i.set(r,ts),ts;if(ge(s))for(let c=0;cr[0]==="_"||r==="$stable",pw=r=>ge(r)?r.map(xr):[xr(r)],sW=(r,e,t)=>{if(e._n)return e;const i=Eu((...n)=>pw(e(...n)),t);return i._c=!1,i},pL=(r,e,t)=>{const i=r._ctx;for(const n in r){if(vL(n))continue;const s=r[n];if(be(s))e[n]=sW(n,s,i);else if(s!=null){const o=pw(s);e[n]=()=>o}}},gL=(r,e)=>{const t=pw(e);r.slots.default=()=>t},mL=(r,e,t)=>{for(const i in e)(t||i!=="_")&&(r[i]=e[i])},oW=(r,e,t)=>{const i=r.slots=cL();if(r.vnode.shapeFlag&32){const n=e._;n?(mL(i,e,t),t&&Ij(i,"_",n,!0)):pL(e,i)}else e&&gL(r,e)},aW=(r,e,t)=>{const{vnode:i,slots:n}=r;let s=!0,o=je;if(i.shapeFlag&32){const a=e._;a?t&&a===1?s=!1:mL(n,e,t):(s=!e.$stable,pL(e,n)),o=e}else e&&(gL(r,e),o={default:1});if(s)for(const a in n)!vL(a)&&o[a]==null&&delete n[a]},Jt=wW;function uW(r){return lW(r)}function lW(r,e){const t=mu();t.__VUE__=!0;const{insert:i,remove:n,patchProp:s,createElement:o,createText:a,createComment:u,setText:l,setElementText:c,parentNode:d,nextSibling:h,setScopeId:f=Nr,insertStaticContent:v}=r,p=($,P,q,F=null,k=null,N=null,K=void 0,X=null,U=!!P.dynamicChildren)=>{if($===P)return;$&&!Js($,P)&&(F=A($),me($,k,N,!0),$=null),P.patchFlag===-2&&(U=!1,P.dynamicChildren=null);const{type:B,ref:le,shapeFlag:J}=P;switch(B){case Iu:b($,P,q,F);break;case xi:m($,P,q,F);break;case ml:$==null&&g(P,q,F,K);break;case pt:x($,P,q,F,k,N,K,X,U);break;default:J&1?S($,P,q,F,k,N,K,X,U):J&6?C($,P,q,F,k,N,K,X,U):(J&64||J&128)&&B.process($,P,q,F,k,N,K,X,U,ie)}le!=null&&k&&Ja(le,$&&$.ref,N,P||$,!P)},b=($,P,q,F)=>{if($==null)i(P.el=a(P.children),q,F);else{const k=P.el=$.el;P.children!==$.children&&l(k,P.children)}},m=($,P,q,F)=>{$==null?i(P.el=u(P.children||""),q,F):P.el=$.el},g=($,P,q,F)=>{[$.el,$.anchor]=v($.children,P,q,F,$.el,$.anchor)},w=({el:$,anchor:P},q,F)=>{let k;for(;$&&$!==P;)k=h($),i($,q,F),$=k;i(P,q,F)},y=({el:$,anchor:P})=>{let q;for(;$&&$!==P;)q=h($),n($),$=q;n(P)},S=($,P,q,F,k,N,K,X,U)=>{P.type==="svg"?K="svg":P.type==="math"&&(K="mathml"),$==null?O(P,q,F,k,N,K,X,U):E($,P,k,N,K,X,U)},O=($,P,q,F,k,N,K,X)=>{let U,B;const{props:le,shapeFlag:J,transition:se,dirs:de}=$;if(U=$.el=o($.type,N,le&&le.is,le),J&8?c(U,$.children):J&16&&_($.children,U,null,F,k,gl($,N),K,X),de&&Ki($,null,F,"created"),I(U,$,$.scopeId,K,F),le){for(const qe in le)qe!=="value"&&!ao(qe)&&s(U,qe,null,le[qe],N,F);"value"in le&&s(U,"value",null,le.value,N),(B=le.onVnodeBeforeMount)&&$r(B,F,$)}de&&Ki($,null,F,"beforeMount");const Oe=cW(k,se);Oe&&se.beforeEnter(U),i(U,P,q),((B=le&&le.onVnodeMounted)||Oe||de)&&Jt(()=>{B&&$r(B,F,$),Oe&&se.enter(U),de&&Ki($,null,F,"mounted")},k)},I=($,P,q,F,k)=>{if(q&&f($,q),F)for(let N=0;N{for(let B=U;B<$.length;B++){const le=$[B]=X?mi($[B]):xr($[B]);p(null,le,P,q,F,k,N,K,X)}},E=($,P,q,F,k,N,K)=>{const X=P.el=$.el;let{patchFlag:U,dynamicChildren:B,dirs:le}=P;U|=$.patchFlag&16;const J=$.props||je,se=P.props||je;let de;if(q&&Gi(q,!1),(de=se.onVnodeBeforeUpdate)&&$r(de,q,P,$),le&&Ki(P,$,q,"beforeUpdate"),q&&Gi(q,!0),(J.innerHTML&&se.innerHTML==null||J.textContent&&se.textContent==null)&&c(X,""),B?T($.dynamicChildren,B,X,q,F,gl(P,k),N):K||Z($,P,X,null,q,F,gl(P,k),N,!1),U>0){if(U&16)R(X,J,se,q,k);else if(U&2&&J.class!==se.class&&s(X,"class",null,se.class,k),U&4&&s(X,"style",J.style,se.style,k),U&8){const Oe=P.dynamicProps;for(let qe=0;qe{de&&$r(de,q,P,$),le&&Ki(P,$,q,"updated")},F)},T=($,P,q,F,k,N,K)=>{for(let X=0;X{if(P!==q){if(P!==je)for(const N in P)!ao(N)&&!(N in q)&&s($,N,P[N],null,k,F);for(const N in q){if(ao(N))continue;const K=q[N],X=P[N];K!==X&&N!=="value"&&s($,N,X,K,k,F)}"value"in q&&s($,"value",P.value,q.value,k)}},x=($,P,q,F,k,N,K,X,U)=>{const B=P.el=$?$.el:a(""),le=P.anchor=$?$.anchor:a("");let{patchFlag:J,dynamicChildren:se,slotScopeIds:de}=P;de&&(X=X?X.concat(de):de),$==null?(i(B,q,F),i(le,q,F),_(P.children||[],q,le,k,N,K,X,U)):J>0&&J&64&&se&&$.dynamicChildren?(T($.dynamicChildren,se,q,k,N,K,X),(P.key!=null||k&&P===k.subTree)&&yL($,P,!0)):Z($,P,q,le,k,N,K,X,U)},C=($,P,q,F,k,N,K,X,U)=>{P.slotScopeIds=X,$==null?P.shapeFlag&512?k.ctx.activate(P,q,F,K,U):D(P,q,F,k,N,K,U):j($,P,U)},D=($,P,q,F,k,N,K)=>{const X=$.component=RW($,F,k);if(rL($)&&(X.ctx.renderer=ie),CW(X,!1,K),X.asyncDep){if(k&&k.registerDep(X,ee,K),!$.el){const U=X.subTree=yt(xi);m(null,U,P,q)}}else ee(X,$,P,q,k,N,K)},j=($,P,q)=>{const F=P.component=$.component;if(bW($,P,q))if(F.asyncDep&&!F.asyncResolved){H(F,P,q);return}else F.next=P,F.update();else P.el=$.el,F.vnode=P},ee=($,P,q,F,k,N,K)=>{const X=()=>{if($.isMounted){let{next:J,bu:se,u:de,parent:Oe,vnode:qe}=$;{const V=bL($);if(V){J&&(J.el=qe.el,H($,J,K)),V.asyncDep.then(()=>{$.isUnmounted||X()});return}}let Re=J,vt;Gi($,!1),J?(J.el=qe.el,H($,J,K)):J=qe,se&&Ba(se),(vt=J.props&&J.props.onVnodeBeforeUpdate)&&$r(vt,Oe,J,qe),Gi($,!0);const st=B0($),oe=$.subTree;$.subTree=st,p(oe,st,d(oe.el),A(oe),$,k,N),J.el=st.el,Re===null&&_W($,st.el),de&&Jt(de,k),(vt=J.props&&J.props.onVnodeUpdated)&&Jt(()=>$r(vt,Oe,J,qe),k)}else{let J;const{el:se,props:de}=P,{bm:Oe,m:qe,parent:Re,root:vt,type:st}=$,oe=ss(P);Gi($,!1),Oe&&Ba(Oe),!oe&&(J=de&&de.onVnodeBeforeMount)&&$r(J,Re,P),Gi($,!0);{vt.ce&&vt.ce._injectChildStyle(st);const V=$.subTree=B0($);p(null,V,q,F,$,k,N),P.el=V.el}if(qe&&Jt(qe,k),!oe&&(J=de&&de.onVnodeMounted)){const V=P;Jt(()=>$r(J,Re,V),k)}(P.shapeFlag&256||Re&&ss(Re.vnode)&&Re.vnode.shapeFlag&256)&&$.a&&Jt($.a,k),$.isMounted=!0,P=q=F=null}};$.scope.on();const U=$.effect=new Cj(X);$.scope.off();const B=$.update=U.run.bind(U),le=$.job=U.runIfDirty.bind(U);le.i=$,le.id=$.uid,U.scheduler=()=>hw(le),Gi($,!0),B()},H=($,P,q)=>{P.component=$;const F=$.vnode.props;$.vnode=P,$.next=null,iW($,P.props,F,q),aW($,P.children,q),Ni(),q0($),Fi()},Z=($,P,q,F,k,N,K,X,U=!1)=>{const B=$&&$.children,le=$?$.shapeFlag:0,J=P.children,{patchFlag:se,shapeFlag:de}=P;if(se>0){if(se&128){we(B,J,q,F,k,N,K,X,U);return}else if(se&256){fe(B,J,q,F,k,N,K,X,U);return}}de&8?(le&16&&_e(B,k,N),J!==B&&c(q,J)):le&16?de&16?we(B,J,q,F,k,N,K,X,U):_e(B,k,N,!0):(le&8&&c(q,""),de&16&&_(J,q,F,k,N,K,X,U))},fe=($,P,q,F,k,N,K,X,U)=>{$=$||ts,P=P||ts;const B=$.length,le=P.length,J=Math.min(B,le);let se;for(se=0;sele?_e($,k,N,!0,!1,J):_(P,q,F,k,N,K,X,U,J)},we=($,P,q,F,k,N,K,X,U)=>{let B=0;const le=P.length;let J=$.length-1,se=le-1;for(;B<=J&&B<=se;){const de=$[B],Oe=P[B]=U?mi(P[B]):xr(P[B]);if(Js(de,Oe))p(de,Oe,q,null,k,N,K,X,U);else break;B++}for(;B<=J&&B<=se;){const de=$[J],Oe=P[se]=U?mi(P[se]):xr(P[se]);if(Js(de,Oe))p(de,Oe,q,null,k,N,K,X,U);else break;J--,se--}if(B>J){if(B<=se){const de=se+1,Oe=dese)for(;B<=J;)me($[B],k,N,!0),B++;else{const de=B,Oe=B,qe=new Map;for(B=Oe;B<=se;B++){const ne=P[B]=U?mi(P[B]):xr(P[B]);ne.key!=null&&qe.set(ne.key,B)}let Re,vt=0;const st=se-Oe+1;let oe=!1,V=0;const Q=new Array(st);for(B=0;B=st){me(ne,k,N,!0);continue}let Ee;if(ne.key!=null)Ee=qe.get(ne.key);else for(Re=Oe;Re<=se;Re++)if(Q[Re-Oe]===0&&Js(ne,P[Re])){Ee=Re;break}Ee===void 0?me(ne,k,N,!0):(Q[Ee-Oe]=B+1,Ee>=V?V=Ee:oe=!0,p(ne,P[Ee],q,null,k,N,K,X,U),vt++)}const re=oe?dW(Q):ts;for(Re=re.length-1,B=st-1;B>=0;B--){const ne=Oe+B,Ee=P[ne],fi=ne+1{const{el:N,type:K,transition:X,children:U,shapeFlag:B}=$;if(B&6){te($.component.subTree,P,q,F);return}if(B&128){$.suspense.move(P,q,F);return}if(B&64){K.move($,P,q,ie);return}if(K===pt){i(N,P,q);for(let J=0;JX.enter(N),k);else{const{leave:J,delayLeave:se,afterLeave:de}=X,Oe=()=>i(N,P,q),qe=()=>{J(N,()=>{Oe(),de&&de()})};se?se(N,Oe,qe):qe()}else i(N,P,q)},me=($,P,q,F=!1,k=!1)=>{const{type:N,props:K,ref:X,children:U,dynamicChildren:B,shapeFlag:le,patchFlag:J,dirs:se,cacheIndex:de}=$;if(J===-2&&(k=!1),X!=null&&Ja(X,null,q,$,!0),de!=null&&(P.renderCache[de]=void 0),le&256){P.ctx.deactivate($);return}const Oe=le&1&&se,qe=!ss($);let Re;if(qe&&(Re=K&&K.onVnodeBeforeUnmount)&&$r(Re,P,$),le&6)nt($.component,q,F);else{if(le&128){$.suspense.unmount(q,F);return}Oe&&Ki($,null,P,"beforeUnmount"),le&64?$.type.remove($,P,q,ie,F):B&&!B.hasOnce&&(N!==pt||J>0&&J&64)?_e(B,P,q,!1,!0):(N===pt&&J&384||!k&&le&16)&&_e(U,P,q),F&&xe($)}(qe&&(Re=K&&K.onVnodeUnmounted)||Oe)&&Jt(()=>{Re&&$r(Re,P,$),Oe&&Ki($,null,P,"unmounted")},q)},xe=$=>{const{type:P,el:q,anchor:F,transition:k}=$;if(P===pt){De(q,F);return}if(P===ml){y($);return}const N=()=>{n(q),k&&!k.persisted&&k.afterLeave&&k.afterLeave()};if($.shapeFlag&1&&k&&!k.persisted){const{leave:K,delayLeave:X}=k,U=()=>K(q,N);X?X($.el,N,U):U()}else N()},De=($,P)=>{let q;for(;$!==P;)q=h($),n($),$=q;n(P)},nt=($,P,q)=>{const{bum:F,scope:k,job:N,subTree:K,um:X,m:U,a:B}=$;k0(U),k0(B),F&&Ba(F),k.stop(),N&&(N.flags|=8,me(K,$,P,q)),X&&Jt(X,P),Jt(()=>{$.isUnmounted=!0},P),P&&P.pendingBranch&&!P.isUnmounted&&$.asyncDep&&!$.asyncResolved&&$.suspenseId===P.pendingId&&(P.deps--,P.deps===0&&P.resolve())},_e=($,P,q,F=!1,k=!1,N=0)=>{for(let K=N;K<$.length;K++)me($[K],P,q,F,k)},A=$=>{if($.shapeFlag&6)return A($.component.subTree);if($.shapeFlag&128)return $.suspense.next();const P=h($.anchor||$.el),q=P&&P[DH];return q?h(q):P};let W=!1;const Y=($,P,q)=>{$==null?P._vnode&&me(P._vnode,null,null,!0):p(P._vnode||null,$,P,null,null,null,q),P._vnode=$,W||(W=!0,q0(),Qj(),W=!1)},ie={p,um:me,m:te,r:xe,mt:D,mc:_,pc:Z,pbc:T,n:A,o:r};return{render:Y,hydrate:void 0,createApp:tW(Y)}}function gl({type:r,props:e},t){return t==="svg"&&r==="foreignObject"||t==="mathml"&&r==="annotation-xml"&&e&&e.encoding&&e.encoding.includes("html")?void 0:t}function Gi({effect:r,job:e},t){t?(r.flags|=32,e.flags|=4):(r.flags&=-33,e.flags&=-5)}function cW(r,e){return(!r||r&&!r.pendingBranch)&&e&&!e.persisted}function yL(r,e,t=!1){const i=r.children,n=e.children;if(ge(i)&&ge(n))for(let s=0;s>1,r[t[a]]0&&(e[i]=t[s-1]),t[s]=i)}}for(s=t.length,o=t[s-1];s-- >0;)t[s]=o,o=e[o];return t}function bL(r){const e=r.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:bL(e)}function k0(r){if(r)for(let e=0;eXr(hW);function La(r,e,t){return _L(r,e,t)}function _L(r,e,t=je){const{immediate:i,deep:n,flush:s,once:o}=t,a=Dt({},t),u=e&&i||!e&&s!=="post";let l;if(Po){if(s==="sync"){const f=fW();l=f.__watcherHandles||(f.__watcherHandles=[])}else if(!u){const f=()=>{};return f.stop=Nr,f.resume=Nr,f.pause=Nr,f}}const c=Bt;a.call=(f,v,p)=>Br(f,c,v,p);let d=!1;s==="post"?a.scheduler=f=>{Jt(f,c&&c.suspense)}:s!=="sync"&&(d=!0,a.scheduler=(f,v)=>{v?f():hw(f)}),a.augmentJob=f=>{e&&(f.flags|=4),d&&(f.flags|=2,c&&(f.id=c.uid,f.i=c))};const h=PH(r,e,a);return Po&&(l?l.push(h):u&&h()),h}function vW(r,e,t){const i=this.proxy,n=lt(r)?r.includes(".")?wL(i,r):()=>i[r]:r.bind(i,i);let s;be(e)?s=e:(s=e.handler,t=e);const o=Wo(this),a=_L(n,s.bind(i),t);return o(),a}function wL(r,e){const t=e.split(".");return()=>{let i=r;for(let n=0;ne==="modelValue"||e==="model-value"?r.modelModifiers:r[`${e}Modifiers`]||r[`${Ci(e)}Modifiers`]||r[`${bn(e)}Modifiers`];function gW(r,e,...t){if(r.isUnmounted)return;const i=r.vnode.props||je;let n=t;const s=e.startsWith("update:"),o=s&&pW(i,e.slice(7));o&&(o.trim&&(n=t.map(c=>lt(c)?c.trim():c)),o.number&&(n=t.map(__)));let a,u=i[a=cl(e)]||i[a=cl(Ci(e))];!u&&s&&(u=i[a=cl(bn(e))]),u&&Br(u,r,6,n);const l=i[a+"Once"];if(l){if(!r.emitted)r.emitted={};else if(r.emitted[a])return;r.emitted[a]=!0,Br(l,r,6,n)}}function EL(r,e,t=!1){const i=e.emitsCache,n=i.get(r);if(n!==void 0)return n;const s=r.emits;let o={},a=!1;if(!be(r)){const u=l=>{const c=EL(l,e,!0);c&&(a=!0,Dt(o,c))};!t&&e.mixins.length&&e.mixins.forEach(u),r.extends&&u(r.extends),r.mixins&&r.mixins.forEach(u)}return!s&&!a?(Ge(r)&&i.set(r,null),null):(ge(s)?s.forEach(u=>o[u]=null):Dt(o,s),Ge(r)&&i.set(r,o),o)}function Ou(r,e){return!r||!vu(e)?!1:(e=e.slice(2).replace(/Once$/,""),Ne(r,e[0].toLowerCase()+e.slice(1))||Ne(r,bn(e))||Ne(r,e))}function B0(r){const{type:e,vnode:t,proxy:i,withProxy:n,propsOptions:[s],slots:o,attrs:a,emit:u,render:l,renderCache:c,props:d,data:h,setupState:f,ctx:v,inheritAttrs:p}=r,b=Xa(r);let m,g;try{if(t.shapeFlag&4){const y=n||i,S=y;m=xr(l.call(S,y,c,d,f,h,v)),g=a}else{const y=e;m=xr(y.length>1?y(d,{attrs:a,slots:o,emit:u}):y(d,null)),g=e.props?a:mW(a)}}catch(y){fo.length=0,wu(y,r,1),m=yt(xi)}let w=m;if(g&&p!==!1){const y=Object.keys(g),{shapeFlag:S}=w;y.length&&S&7&&(s&&y.some(tw)&&(g=yW(g,s)),w=ds(w,g,!1,!0))}return t.dirs&&(w=ds(w,null,!1,!0),w.dirs=w.dirs?w.dirs.concat(t.dirs):t.dirs),t.transition&&fw(w,t.transition),m=w,Xa(b),m}const mW=r=>{let e;for(const t in r)(t==="class"||t==="style"||vu(t))&&((e||(e={}))[t]=r[t]);return e},yW=(r,e)=>{const t={};for(const i in r)(!tw(i)||!(i.slice(9)in e))&&(t[i]=r[i]);return t};function bW(r,e,t){const{props:i,children:n,component:s}=r,{props:o,children:a,patchFlag:u}=e,l=s.emitsOptions;if(e.dirs||e.transition)return!0;if(t&&u>=0){if(u&1024)return!0;if(u&16)return i?j0(i,o,l):!!o;if(u&8){const c=e.dynamicProps;for(let d=0;dr.__isSuspense;function wW(r,e){e&&e.pendingBranch?ge(r)?e.effects.push(...r):e.effects.push(r):xH(r)}const pt=Symbol.for("v-fgt"),Iu=Symbol.for("v-txt"),xi=Symbol.for("v-cmt"),ml=Symbol.for("v-stc"),fo=[];let er=null;function et(r=!1){fo.push(er=r?null:[])}function EW(){fo.pop(),er=fo[fo.length-1]||null}let To=1;function L0(r,e=!1){To+=r,r<0&&er&&e&&(er.hasOnce=!0)}function OL(r){return r.dynamicChildren=To>0?er||ts:null,EW(),To>0&&er&&er.push(r),r}function Ht(r,e,t,i,n,s){return OL(ve(r,e,t,i,n,s,!0))}function qi(r,e,t,i,n){return OL(yt(r,e,t,i,n,!0))}function $o(r){return r?r.__v_isVNode===!0:!1}function Js(r,e){return r.type===e.type&&r.key===e.key}const IL=({key:r})=>r??null,za=({ref:r,ref_key:e,ref_for:t})=>(typeof r=="number"&&(r=""+r),r!=null?lt(r)||qt(r)||be(r)?{i:xt,r,k:e,f:!!t}:r:null);function ve(r,e=null,t=null,i=0,n=null,s=r===pt?0:1,o=!1,a=!1){const u={__v_isVNode:!0,__v_skip:!0,type:r,props:e,key:e&&IL(e),ref:e&&za(e),scopeId:eL,slotScopeIds:null,children:t,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:s,patchFlag:i,dynamicProps:n,dynamicChildren:null,appContext:null,ctx:xt};return a?(gw(u,t),s&128&&r.normalize(u)):t&&(u.shapeFlag|=lt(t)?8:16),To>0&&!o&&er&&(u.patchFlag>0||s&6)&&u.patchFlag!==32&&er.push(u),u}const yt=SW;function SW(r,e=null,t=null,i=0,n=null,s=!1){if((!r||r===VH)&&(r=xi),$o(r)){const a=ds(r,e,!0);return t&&gw(a,t),To>0&&!s&&er&&(a.shapeFlag&6?er[er.indexOf(r)]=a:er.push(a)),a.patchFlag=-2,a}if(AW(r)&&(r=r.__vccOpts),e){e=OW(e);let{class:a,style:u}=e;a&&!lt(a)&&(e.class=yu(a)),Ge(u)&&(dw(u)&&!ge(u)&&(u=Dt({},u)),e.style=nw(u))}const o=lt(r)?1:SL(r)?128:AH(r)?64:Ge(r)?4:be(r)?2:0;return ve(r,e,t,i,n,o,s,!0)}function OW(r){return r?dw(r)||dL(r)?Dt({},r):r:null}function ds(r,e,t=!1,i=!1){const{props:n,ref:s,patchFlag:o,children:a,transition:u}=r,l=e?TW(n||{},e):n,c={__v_isVNode:!0,__v_skip:!0,type:r.type,props:l,key:l&&IL(l),ref:e&&e.ref?t&&s?ge(s)?s.concat(za(e)):[s,za(e)]:za(e):s,scopeId:r.scopeId,slotScopeIds:r.slotScopeIds,children:a,target:r.target,targetStart:r.targetStart,targetAnchor:r.targetAnchor,staticCount:r.staticCount,shapeFlag:r.shapeFlag,patchFlag:e&&r.type!==pt?o===-1?16:o|16:o,dynamicProps:r.dynamicProps,dynamicChildren:r.dynamicChildren,appContext:r.appContext,dirs:r.dirs,transition:u,component:r.component,suspense:r.suspense,ssContent:r.ssContent&&ds(r.ssContent),ssFallback:r.ssFallback&&ds(r.ssFallback),el:r.el,anchor:r.anchor,ctx:r.ctx,ce:r.ce};return u&&i&&fw(c,u.clone(c)),c}function C_(r=" ",e=0){return yt(Iu,null,r,e)}function IW(r="",e=!1){return e?(et(),qi(xi,null,r)):yt(xi,null,r)}function xr(r){return r==null||typeof r=="boolean"?yt(xi):ge(r)?yt(pt,null,r.slice()):$o(r)?mi(r):yt(Iu,null,String(r))}function mi(r){return r.el===null&&r.patchFlag!==-1||r.memo?r:ds(r)}function gw(r,e){let t=0;const{shapeFlag:i}=r;if(e==null)e=null;else if(ge(e))t=16;else if(typeof e=="object")if(i&65){const n=e.default;n&&(n._c&&(n._d=!1),gw(r,n()),n._c&&(n._d=!0));return}else{t=32;const n=e._;!n&&!dL(e)?e._ctx=xt:n===3&&xt&&(xt.slots._===1?e._=1:(e._=2,r.patchFlag|=1024))}else be(e)?(e={default:e,_ctx:xt},t=32):(e=String(e),i&64?(t=16,e=[C_(e)]):t=8);r.children=e,r.shapeFlag|=t}function TW(...r){const e={};for(let t=0;t{let n;return(n=r[t])||(n=r[t]=[]),n.push(i),s=>{n.length>1?n.forEach(o=>o(s)):n[0](s)}};Za=e("__VUE_INSTANCE_SETTERS__",t=>Bt=t),x_=e("__VUE_SSR_SETTERS__",t=>Po=t)}const Wo=r=>{const e=Bt;return Za(r),r.scope.on(),()=>{r.scope.off(),Za(e)}},z0=()=>{Bt&&Bt.scope.off(),Za(null)};function TL(r){return r.vnode.shapeFlag&4}let Po=!1;function CW(r,e=!1,t=!1){e&&x_(e);const{props:i,children:n}=r.vnode,s=TL(r);rW(r,i,s,e),oW(r,n,t);const o=s?xW(r,e):void 0;return e&&x_(!1),o}function xW(r,e){const t=r.type;r.accessCache=Object.create(null),r.proxy=new Proxy(r.ctx,GH);const{setup:i}=t;if(i){Ni();const n=r.setupContext=i.length>1?DW(r):null,s=Wo(r),o=Ho(i,r,0,[r.props,n]),a=wj(o);if(Fi(),s(),(a||r.sp)&&!ss(r)&&tL(r),a){if(o.then(z0,z0),e)return o.then(u=>{H0(r,u)}).catch(u=>{wu(u,r,0)});r.asyncDep=o}else H0(r,o)}else $L(r)}function H0(r,e,t){be(e)?r.type.__ssrInlineRender?r.ssrRender=e:r.render=e:Ge(e)&&(r.setupState=Gj(e)),$L(r)}function $L(r,e,t){const i=r.type;r.render||(r.render=i.render||Nr);{const n=Wo(r);Ni();try{YH(r)}finally{Fi(),n()}}}const qW={get(r,e){return Rt(r,"get",""),r[e]}};function DW(r){const e=t=>{r.exposed=t||{}};return{attrs:new Proxy(r.attrs,qW),slots:r.slots,emit:r.emit,expose:e}}function Tu(r){return r.exposed?r.exposeProxy||(r.exposeProxy=new Proxy(Gj(Vj(r.exposed)),{get(e,t){if(t in e)return e[t];if(t in ho)return ho[t](r)},has(e,t){return t in e||t in ho}})):r.proxy}function AW(r){return be(r)&&"__vccOpts"in r}const br=(r,e)=>TH(r,e,Po);function mw(r,e,t){const i=arguments.length;return i===2?Ge(e)&&!ge(e)?$o(e)?yt(r,null,[e]):yt(r,e):yt(r,null,e):(i>3?t=Array.prototype.slice.call(arguments,2):i===3&&$o(t)&&(t=[t]),yt(r,e,t))}const MW="3.5.13";/** +**/function Ho(r,e,t,i){try{return i?r(...i):r()}catch(n){wu(n,e,t)}}function Br(r,e,t,i){if(be(r)){const n=Ho(r,e,t,i);return n&&wj(n)&&n.catch(s=>{wu(s,e,t)}),n}if(ge(r)){const n=[];for(let s=0;s>>1,n=kt[i],s=Io(n);s=Io(t)?kt.push(r):kt.splice(qH(e),0,r),r.flags|=1,Jj()}}function Jj(){Ya||(Ya=Yj.then(Zj))}function DH(r){ge(r)?ns.push(...r):mi&&r.id===-1?mi.splice(Vn+1,0,r):r.flags&1||(ns.push(r),r.flags|=1),Jj()}function q0(r,e,t=Rr+1){for(;tIo(t)-Io(i));if(ns.length=0,mi){mi.push(...e);return}for(mi=e,Vn=0;Vnr.id==null?r.flags&2?-1:1/0:r.id;function Zj(r){try{for(Rr=0;Rr{i._d&&L0(-1);const s=Xa(e);let o;try{o=r(...n)}finally{Xa(s),i._d&&L0(1)}return o};return i._n=!0,i._c=!0,i._d=!0,i}function tL(r,e){if(xt===null)return r;const t=Tu(xt),i=r.dirs||(r.dirs=[]);for(let n=0;nr.__isTeleport;function fw(r,e){r.shapeFlag&6&&r.component?(r.transition=e,fw(r.component.subTree,e)):r.shapeFlag&128?(r.ssContent.transition=e.clone(r.ssContent),r.ssFallback.transition=e.clone(r.ssFallback)):r.transition=e}/*! #__NO_SIDE_EFFECTS__ */function Or(r,e){return be(r)?Dt({name:r.name},e,{setup:r}):r}function rL(r){r.ids=[r.ids[0]+r.ids[2]+++"-",0,0]}function Ja(r,e,t,i,n=!1){if(ge(r)){r.forEach((v,p)=>Ja(v,e&&(ge(e)?e[p]:e),t,i,n));return}if(ss(i)&&!n){i.shapeFlag&512&&i.type.__asyncResolved&&i.component.subTree.component&&Ja(r,e,t,i.component.subTree);return}const s=i.shapeFlag&4?Tu(i.component):i.el,o=n?null:s,{i:a,r:u}=r,l=e&&e.r,c=a.refs===je?a.refs={}:a.refs,d=a.setupState,h=Me(d),f=d===je?()=>!1:v=>Ne(h,v);if(l!=null&&l!==u&&(lt(l)?(c[l]=null,f(l)&&(d[l]=null)):qt(l)&&(l.value=null)),be(u))Ho(u,a,12,[o,c]);else{const v=lt(u),p=qt(u);if(v||p){const b=()=>{if(r.f){const m=v?f(u)?d[u]:c[u]:u.value;n?ge(m)&&rw(m,s):ge(m)?m.includes(s)||m.push(s):v?(c[u]=[s],f(u)&&(d[u]=c[u])):(u.value=[s],r.k&&(c[r.k]=u.value))}else v?(c[u]=o,f(u)&&(d[u]=o)):p&&(u.value=o,r.k&&(c[r.k]=o))};o?(b.id=-1,Qt(b,t)):b()}}}mu().requestIdleCallback;mu().cancelIdleCallback;const ss=r=>!!r.type.__asyncLoader,iL=r=>r.type.__isKeepAlive;function NH(r,e){nL(r,"a",e)}function FH(r,e){nL(r,"da",e)}function nL(r,e,t=jt){const i=r.__wdc||(r.__wdc=()=>{let n=t;for(;n;){if(n.isDeactivated)return;n=n.parent}return r()});if(Su(e,i,t),t){let n=t.parent;for(;n&&n.parent;)iL(n.parent.vnode)&&kH(i,e,t,n),n=n.parent}}function kH(r,e,t,i){const n=Su(e,r,i,!0);sL(()=>{rw(i[e],n)},t)}function Su(r,e,t=jt,i=!1){if(t){const n=t[r]||(t[r]=[]),s=e.__weh||(e.__weh=(...o)=>{Fi();const a=Wo(t),u=Br(e,t,r,o);return a(),ki(),u});return i?n.unshift(s):n.push(s),s}}const oi=r=>(e,t=jt)=>{(!Po||r==="sp")&&Su(r,(...i)=>e(...i),t)},BH=oi("bm"),vw=oi("m"),jH=oi("bu"),LH=oi("u"),zH=oi("bum"),sL=oi("um"),HH=oi("sp"),WH=oi("rtg"),UH=oi("rtc");function VH(r,e=jt){Su("ec",r,e)}const KH=Symbol.for("v-ndc");function co(r,e,t,i){let n;const s=t,o=ge(r);if(o||lt(r)){const a=o&&is(r);let u=!1;a&&(u=!ur(r),r=bu(r)),n=new Array(r.length);for(let l=0,c=r.length;le(a,u,void 0,s));else{const a=Object.keys(r);n=new Array(a.length);for(let u=0,l=a.length;u$o(e)?!(e.type===qi||e.type===pt&&!oL(e.children)):!0)?r:null}const T_=r=>r?$L(r)?Tu(r):T_(r.parent):null,ho=Dt(Object.create(null),{$:r=>r,$el:r=>r.vnode.el,$data:r=>r.data,$props:r=>r.props,$attrs:r=>r.attrs,$slots:r=>r.slots,$refs:r=>r.refs,$parent:r=>T_(r.parent),$root:r=>T_(r.root),$host:r=>r.ce,$emit:r=>r.emit,$options:r=>uL(r),$forceUpdate:r=>r.f||(r.f=()=>{hw(r.update)}),$nextTick:r=>r.n||(r.n=Xj.bind(r.proxy)),$watch:r=>pW.bind(r)}),pl=(r,e)=>r!==je&&!r.__isScriptSetup&&Ne(r,e),YH={get({_:r},e){if(e==="__v_skip")return!0;const{ctx:t,setupState:i,data:n,props:s,accessCache:o,type:a,appContext:u}=r;let l;if(e[0]!=="$"){const f=o[e];if(f!==void 0)switch(f){case 1:return i[e];case 2:return n[e];case 4:return t[e];case 3:return s[e]}else{if(pl(i,e))return o[e]=1,i[e];if(n!==je&&Ne(n,e))return o[e]=2,n[e];if((l=r.propsOptions[0])&&Ne(l,e))return o[e]=3,s[e];if(t!==je&&Ne(t,e))return o[e]=4,t[e];$_&&(o[e]=0)}}const c=ho[e];let d,h;if(c)return e==="$attrs"&&Rt(r.attrs,"get",""),c(r);if((d=a.__cssModules)&&(d=d[e]))return d;if(t!==je&&Ne(t,e))return o[e]=4,t[e];if(h=u.config.globalProperties,Ne(h,e))return h[e]},set({_:r},e,t){const{data:i,setupState:n,ctx:s}=r;return pl(n,e)?(n[e]=t,!0):i!==je&&Ne(i,e)?(i[e]=t,!0):Ne(r.props,e)||e[0]==="$"&&e.slice(1)in r?!1:(s[e]=t,!0)},has({_:{data:r,setupState:e,accessCache:t,ctx:i,appContext:n,propsOptions:s}},o){let a;return!!t[o]||r!==je&&Ne(r,o)||pl(e,o)||(a=s[0])&&Ne(a,o)||Ne(i,o)||Ne(ho,o)||Ne(n.config.globalProperties,o)},defineProperty(r,e,t){return t.get!=null?r._.accessCache[e]=0:Ne(t,"value")&&this.set(r,e,t.value,null),Reflect.defineProperty(r,e,t)}};function D0(r){return ge(r)?r.reduce((e,t)=>(e[t]=null,e),{}):r}let $_=!0;function XH(r){const e=uL(r),t=r.proxy,i=r.ctx;$_=!1,e.beforeCreate&&A0(e.beforeCreate,r,"bc");const{data:n,computed:s,methods:o,watch:a,provide:u,inject:l,created:c,beforeMount:d,mounted:h,beforeUpdate:f,updated:v,activated:p,deactivated:b,beforeDestroy:m,beforeUnmount:g,destroyed:w,unmounted:y,render:S,renderTracked:O,renderTriggered:I,errorCaptured:_,serverPrefetch:E,expose:T,inheritAttrs:R,components:x,directives:C,filters:D}=e;if(l&&JH(l,i,null),o)for(const H in o){const Z=o[H];be(Z)&&(i[H]=Z.bind(t))}if(n){const H=n.call(t,t);Ge(H)&&(r.data=_u(H))}if($_=!0,s)for(const H in s){const Z=s[H],ve=be(Z)?Z.bind(t,t):be(Z.get)?Z.get.bind(t,t):Nr,we=!be(Z)&&be(Z.set)?Z.set.bind(t):Nr,te=br({get:ve,set:we});Object.defineProperty(i,H,{enumerable:!0,configurable:!0,get:()=>te.value,set:me=>te.value=me})}if(a)for(const H in a)aL(a[H],i,t,H);if(u){const H=be(u)?u.call(t):u;Reflect.ownKeys(H).forEach(Z=>{ja(Z,H[Z])})}c&&A0(c,r,"c");function ee(H,Z){ge(Z)?Z.forEach(ve=>H(ve.bind(t))):Z&&H(Z.bind(t))}if(ee(BH,d),ee(vw,h),ee(jH,f),ee(LH,v),ee(NH,p),ee(FH,b),ee(VH,_),ee(UH,O),ee(WH,I),ee(zH,g),ee(sL,y),ee(HH,E),ge(T))if(T.length){const H=r.exposed||(r.exposed={});T.forEach(Z=>{Object.defineProperty(H,Z,{get:()=>t[Z],set:ve=>t[Z]=ve})})}else r.exposed||(r.exposed={});S&&r.render===Nr&&(r.render=S),R!=null&&(r.inheritAttrs=R),x&&(r.components=x),C&&(r.directives=C),E&&rL(r)}function JH(r,e,t=Nr){ge(r)&&(r=P_(r));for(const i in r){const n=r[i];let s;Ge(n)?"default"in n?s=Xr(n.from||i,n.default,!0):s=Xr(n.from||i):s=Xr(n),qt(s)?Object.defineProperty(e,i,{enumerable:!0,configurable:!0,get:()=>s.value,set:o=>s.value=o}):e[i]=s}}function A0(r,e,t){Br(ge(r)?r.map(i=>i.bind(e.proxy)):r.bind(e.proxy),e,t)}function aL(r,e,t,i){let n=i.includes(".")?EL(t,i):()=>t[i];if(lt(r)){const s=e[r];be(s)&&La(n,s)}else if(be(r))La(n,r.bind(t));else if(Ge(r))if(ge(r))r.forEach(s=>aL(s,e,t,i));else{const s=be(r.handler)?r.handler.bind(t):e[r.handler];be(s)&&La(n,s,r)}}function uL(r){const e=r.type,{mixins:t,extends:i}=e,{mixins:n,optionsCache:s,config:{optionMergeStrategies:o}}=r.appContext,a=s.get(e);let u;return a?u=a:!n.length&&!t&&!i?u=e:(u={},n.length&&n.forEach(l=>Qa(u,l,o,!0)),Qa(u,e,o)),Ge(e)&&s.set(e,u),u}function Qa(r,e,t,i=!1){const{mixins:n,extends:s}=e;s&&Qa(r,s,t,!0),n&&n.forEach(o=>Qa(r,o,t,!0));for(const o in e)if(!(i&&o==="expose")){const a=QH[o]||t&&t[o];r[o]=a?a(r[o],e[o]):e[o]}return r}const QH={data:M0,props:N0,emits:N0,methods:no,computed:no,beforeCreate:At,created:At,beforeMount:At,mounted:At,beforeUpdate:At,updated:At,beforeDestroy:At,beforeUnmount:At,destroyed:At,unmounted:At,activated:At,deactivated:At,errorCaptured:At,serverPrefetch:At,components:no,directives:no,watch:eW,provide:M0,inject:ZH};function M0(r,e){return e?r?function(){return Dt(be(r)?r.call(this,this):r,be(e)?e.call(this,this):e)}:e:r}function ZH(r,e){return no(P_(r),P_(e))}function P_(r){if(ge(r)){const e={};for(let t=0;t1)return t&&be(e)?e.call(i&&i.proxy):e}}const cL={},dL=()=>Object.create(cL),hL=r=>Object.getPrototypeOf(r)===cL;function iW(r,e,t,i=!1){const n={},s=dL();r.propsDefaults=Object.create(null),fL(r,e,n,s);for(const o in r.propsOptions[0])o in n||(n[o]=void 0);t?r.props=i?n:Wj(n):r.type.props?r.props=n:r.props=s,r.attrs=s}function nW(r,e,t,i){const{props:n,attrs:s,vnode:{patchFlag:o}}=r,a=Me(n),[u]=r.propsOptions;let l=!1;if((i||o>0)&&!(o&16)){if(o&8){const c=r.vnode.dynamicProps;for(let d=0;d{u=!0;const[h,f]=vL(d,e,!0);Dt(o,h),f&&a.push(...f)};!t&&e.mixins.length&&e.mixins.forEach(c),r.extends&&c(r.extends),r.mixins&&r.mixins.forEach(c)}if(!s&&!u)return Ge(r)&&i.set(r,ts),ts;if(ge(s))for(let c=0;cr[0]==="_"||r==="$stable",pw=r=>ge(r)?r.map(xr):[xr(r)],oW=(r,e,t)=>{if(e._n)return e;const i=Eu((...n)=>pw(e(...n)),t);return i._c=!1,i},gL=(r,e,t)=>{const i=r._ctx;for(const n in r){if(pL(n))continue;const s=r[n];if(be(s))e[n]=oW(n,s,i);else if(s!=null){const o=pw(s);e[n]=()=>o}}},mL=(r,e)=>{const t=pw(e);r.slots.default=()=>t},yL=(r,e,t)=>{for(const i in e)(t||i!=="_")&&(r[i]=e[i])},aW=(r,e,t)=>{const i=r.slots=dL();if(r.vnode.shapeFlag&32){const n=e._;n?(yL(i,e,t),t&&Ij(i,"_",n,!0)):gL(e,i)}else e&&mL(r,e)},uW=(r,e,t)=>{const{vnode:i,slots:n}=r;let s=!0,o=je;if(i.shapeFlag&32){const a=e._;a?t&&a===1?s=!1:yL(n,e,t):(s=!e.$stable,gL(e,n)),o=e}else e&&(mL(r,e),o={default:1});if(s)for(const a in n)!pL(a)&&o[a]==null&&delete n[a]},Qt=EW;function lW(r){return cW(r)}function cW(r,e){const t=mu();t.__VUE__=!0;const{insert:i,remove:n,patchProp:s,createElement:o,createText:a,createComment:u,setText:l,setElementText:c,parentNode:d,nextSibling:h,setScopeId:f=Nr,insertStaticContent:v}=r,p=($,P,q,F=null,k=null,N=null,K=void 0,X=null,U=!!P.dynamicChildren)=>{if($===P)return;$&&!Js($,P)&&(F=A($),me($,k,N,!0),$=null),P.patchFlag===-2&&(U=!1,P.dynamicChildren=null);const{type:B,ref:le,shapeFlag:J}=P;switch(B){case Iu:b($,P,q,F);break;case qi:m($,P,q,F);break;case ml:$==null&&g(P,q,F,K);break;case pt:x($,P,q,F,k,N,K,X,U);break;default:J&1?S($,P,q,F,k,N,K,X,U):J&6?C($,P,q,F,k,N,K,X,U):(J&64||J&128)&&B.process($,P,q,F,k,N,K,X,U,ie)}le!=null&&k&&Ja(le,$&&$.ref,N,P||$,!P)},b=($,P,q,F)=>{if($==null)i(P.el=a(P.children),q,F);else{const k=P.el=$.el;P.children!==$.children&&l(k,P.children)}},m=($,P,q,F)=>{$==null?i(P.el=u(P.children||""),q,F):P.el=$.el},g=($,P,q,F)=>{[$.el,$.anchor]=v($.children,P,q,F,$.el,$.anchor)},w=({el:$,anchor:P},q,F)=>{let k;for(;$&&$!==P;)k=h($),i($,q,F),$=k;i(P,q,F)},y=({el:$,anchor:P})=>{let q;for(;$&&$!==P;)q=h($),n($),$=q;n(P)},S=($,P,q,F,k,N,K,X,U)=>{P.type==="svg"?K="svg":P.type==="math"&&(K="mathml"),$==null?O(P,q,F,k,N,K,X,U):E($,P,k,N,K,X,U)},O=($,P,q,F,k,N,K,X)=>{let U,B;const{props:le,shapeFlag:J,transition:se,dirs:he}=$;if(U=$.el=o($.type,N,le&&le.is,le),J&8?c(U,$.children):J&16&&_($.children,U,null,F,k,gl($,N),K,X),he&&Ki($,null,F,"created"),I(U,$,$.scopeId,K,F),le){for(const qe in le)qe!=="value"&&!ao(qe)&&s(U,qe,null,le[qe],N,F);"value"in le&&s(U,"value",null,le.value,N),(B=le.onVnodeBeforeMount)&&$r(B,F,$)}he&&Ki($,null,F,"beforeMount");const Oe=dW(k,se);Oe&&se.beforeEnter(U),i(U,P,q),((B=le&&le.onVnodeMounted)||Oe||he)&&Qt(()=>{B&&$r(B,F,$),Oe&&se.enter(U),he&&Ki($,null,F,"mounted")},k)},I=($,P,q,F,k)=>{if(q&&f($,q),F)for(let N=0;N{for(let B=U;B<$.length;B++){const le=$[B]=X?yi($[B]):xr($[B]);p(null,le,P,q,F,k,N,K,X)}},E=($,P,q,F,k,N,K)=>{const X=P.el=$.el;let{patchFlag:U,dynamicChildren:B,dirs:le}=P;U|=$.patchFlag&16;const J=$.props||je,se=P.props||je;let he;if(q&&Gi(q,!1),(he=se.onVnodeBeforeUpdate)&&$r(he,q,P,$),le&&Ki(P,$,q,"beforeUpdate"),q&&Gi(q,!0),(J.innerHTML&&se.innerHTML==null||J.textContent&&se.textContent==null)&&c(X,""),B?T($.dynamicChildren,B,X,q,F,gl(P,k),N):K||Z($,P,X,null,q,F,gl(P,k),N,!1),U>0){if(U&16)R(X,J,se,q,k);else if(U&2&&J.class!==se.class&&s(X,"class",null,se.class,k),U&4&&s(X,"style",J.style,se.style,k),U&8){const Oe=P.dynamicProps;for(let qe=0;qe{he&&$r(he,q,P,$),le&&Ki(P,$,q,"updated")},F)},T=($,P,q,F,k,N,K)=>{for(let X=0;X{if(P!==q){if(P!==je)for(const N in P)!ao(N)&&!(N in q)&&s($,N,P[N],null,k,F);for(const N in q){if(ao(N))continue;const K=q[N],X=P[N];K!==X&&N!=="value"&&s($,N,X,K,k,F)}"value"in q&&s($,"value",P.value,q.value,k)}},x=($,P,q,F,k,N,K,X,U)=>{const B=P.el=$?$.el:a(""),le=P.anchor=$?$.anchor:a("");let{patchFlag:J,dynamicChildren:se,slotScopeIds:he}=P;he&&(X=X?X.concat(he):he),$==null?(i(B,q,F),i(le,q,F),_(P.children||[],q,le,k,N,K,X,U)):J>0&&J&64&&se&&$.dynamicChildren?(T($.dynamicChildren,se,q,k,N,K,X),(P.key!=null||k&&P===k.subTree)&&bL($,P,!0)):Z($,P,q,le,k,N,K,X,U)},C=($,P,q,F,k,N,K,X,U)=>{P.slotScopeIds=X,$==null?P.shapeFlag&512?k.ctx.activate(P,q,F,K,U):D(P,q,F,k,N,K,U):j($,P,U)},D=($,P,q,F,k,N,K)=>{const X=$.component=CW($,F,k);if(iL($)&&(X.ctx.renderer=ie),xW(X,!1,K),X.asyncDep){if(k&&k.registerDep(X,ee,K),!$.el){const U=X.subTree=yt(qi);m(null,U,P,q)}}else ee(X,$,P,q,k,N,K)},j=($,P,q)=>{const F=P.component=$.component;if(_W($,P,q))if(F.asyncDep&&!F.asyncResolved){H(F,P,q);return}else F.next=P,F.update();else P.el=$.el,F.vnode=P},ee=($,P,q,F,k,N,K)=>{const X=()=>{if($.isMounted){let{next:J,bu:se,u:he,parent:Oe,vnode:qe}=$;{const V=_L($);if(V){J&&(J.el=qe.el,H($,J,K)),V.asyncDep.then(()=>{$.isUnmounted||X()});return}}let Re=J,vt;Gi($,!1),J?(J.el=qe.el,H($,J,K)):J=qe,se&&Ba(se),(vt=J.props&&J.props.onVnodeBeforeUpdate)&&$r(vt,Oe,J,qe),Gi($,!0);const st=B0($),oe=$.subTree;$.subTree=st,p(oe,st,d(oe.el),A(oe),$,k,N),J.el=st.el,Re===null&&wW($,st.el),he&&Qt(he,k),(vt=J.props&&J.props.onVnodeUpdated)&&Qt(()=>$r(vt,Oe,J,qe),k)}else{let J;const{el:se,props:he}=P,{bm:Oe,m:qe,parent:Re,root:vt,type:st}=$,oe=ss(P);Gi($,!1),Oe&&Ba(Oe),!oe&&(J=he&&he.onVnodeBeforeMount)&&$r(J,Re,P),Gi($,!0);{vt.ce&&vt.ce._injectChildStyle(st);const V=$.subTree=B0($);p(null,V,q,F,$,k,N),P.el=V.el}if(qe&&Qt(qe,k),!oe&&(J=he&&he.onVnodeMounted)){const V=P;Qt(()=>$r(J,Re,V),k)}(P.shapeFlag&256||Re&&ss(Re.vnode)&&Re.vnode.shapeFlag&256)&&$.a&&Qt($.a,k),$.isMounted=!0,P=q=F=null}};$.scope.on();const U=$.effect=new Cj(X);$.scope.off();const B=$.update=U.run.bind(U),le=$.job=U.runIfDirty.bind(U);le.i=$,le.id=$.uid,U.scheduler=()=>hw(le),Gi($,!0),B()},H=($,P,q)=>{P.component=$;const F=$.vnode.props;$.vnode=P,$.next=null,nW($,P.props,F,q),uW($,P.children,q),Fi(),q0($),ki()},Z=($,P,q,F,k,N,K,X,U=!1)=>{const B=$&&$.children,le=$?$.shapeFlag:0,J=P.children,{patchFlag:se,shapeFlag:he}=P;if(se>0){if(se&128){we(B,J,q,F,k,N,K,X,U);return}else if(se&256){ve(B,J,q,F,k,N,K,X,U);return}}he&8?(le&16&&_e(B,k,N),J!==B&&c(q,J)):le&16?he&16?we(B,J,q,F,k,N,K,X,U):_e(B,k,N,!0):(le&8&&c(q,""),he&16&&_(J,q,F,k,N,K,X,U))},ve=($,P,q,F,k,N,K,X,U)=>{$=$||ts,P=P||ts;const B=$.length,le=P.length,J=Math.min(B,le);let se;for(se=0;sele?_e($,k,N,!0,!1,J):_(P,q,F,k,N,K,X,U,J)},we=($,P,q,F,k,N,K,X,U)=>{let B=0;const le=P.length;let J=$.length-1,se=le-1;for(;B<=J&&B<=se;){const he=$[B],Oe=P[B]=U?yi(P[B]):xr(P[B]);if(Js(he,Oe))p(he,Oe,q,null,k,N,K,X,U);else break;B++}for(;B<=J&&B<=se;){const he=$[J],Oe=P[se]=U?yi(P[se]):xr(P[se]);if(Js(he,Oe))p(he,Oe,q,null,k,N,K,X,U);else break;J--,se--}if(B>J){if(B<=se){const he=se+1,Oe=hese)for(;B<=J;)me($[B],k,N,!0),B++;else{const he=B,Oe=B,qe=new Map;for(B=Oe;B<=se;B++){const ne=P[B]=U?yi(P[B]):xr(P[B]);ne.key!=null&&qe.set(ne.key,B)}let Re,vt=0;const st=se-Oe+1;let oe=!1,V=0;const Q=new Array(st);for(B=0;B=st){me(ne,k,N,!0);continue}let Ee;if(ne.key!=null)Ee=qe.get(ne.key);else for(Re=Oe;Re<=se;Re++)if(Q[Re-Oe]===0&&Js(ne,P[Re])){Ee=Re;break}Ee===void 0?me(ne,k,N,!0):(Q[Ee-Oe]=B+1,Ee>=V?V=Ee:oe=!0,p(ne,P[Ee],q,null,k,N,K,X,U),vt++)}const re=oe?hW(Q):ts;for(Re=re.length-1,B=st-1;B>=0;B--){const ne=Oe+B,Ee=P[ne],vi=ne+1{const{el:N,type:K,transition:X,children:U,shapeFlag:B}=$;if(B&6){te($.component.subTree,P,q,F);return}if(B&128){$.suspense.move(P,q,F);return}if(B&64){K.move($,P,q,ie);return}if(K===pt){i(N,P,q);for(let J=0;JX.enter(N),k);else{const{leave:J,delayLeave:se,afterLeave:he}=X,Oe=()=>i(N,P,q),qe=()=>{J(N,()=>{Oe(),he&&he()})};se?se(N,Oe,qe):qe()}else i(N,P,q)},me=($,P,q,F=!1,k=!1)=>{const{type:N,props:K,ref:X,children:U,dynamicChildren:B,shapeFlag:le,patchFlag:J,dirs:se,cacheIndex:he}=$;if(J===-2&&(k=!1),X!=null&&Ja(X,null,q,$,!0),he!=null&&(P.renderCache[he]=void 0),le&256){P.ctx.deactivate($);return}const Oe=le&1&&se,qe=!ss($);let Re;if(qe&&(Re=K&&K.onVnodeBeforeUnmount)&&$r(Re,P,$),le&6)nt($.component,q,F);else{if(le&128){$.suspense.unmount(q,F);return}Oe&&Ki($,null,P,"beforeUnmount"),le&64?$.type.remove($,P,q,ie,F):B&&!B.hasOnce&&(N!==pt||J>0&&J&64)?_e(B,P,q,!1,!0):(N===pt&&J&384||!k&&le&16)&&_e(U,P,q),F&&xe($)}(qe&&(Re=K&&K.onVnodeUnmounted)||Oe)&&Qt(()=>{Re&&$r(Re,P,$),Oe&&Ki($,null,P,"unmounted")},q)},xe=$=>{const{type:P,el:q,anchor:F,transition:k}=$;if(P===pt){De(q,F);return}if(P===ml){y($);return}const N=()=>{n(q),k&&!k.persisted&&k.afterLeave&&k.afterLeave()};if($.shapeFlag&1&&k&&!k.persisted){const{leave:K,delayLeave:X}=k,U=()=>K(q,N);X?X($.el,N,U):U()}else N()},De=($,P)=>{let q;for(;$!==P;)q=h($),n($),$=q;n(P)},nt=($,P,q)=>{const{bum:F,scope:k,job:N,subTree:K,um:X,m:U,a:B}=$;k0(U),k0(B),F&&Ba(F),k.stop(),N&&(N.flags|=8,me(K,$,P,q)),X&&Qt(X,P),Qt(()=>{$.isUnmounted=!0},P),P&&P.pendingBranch&&!P.isUnmounted&&$.asyncDep&&!$.asyncResolved&&$.suspenseId===P.pendingId&&(P.deps--,P.deps===0&&P.resolve())},_e=($,P,q,F=!1,k=!1,N=0)=>{for(let K=N;K<$.length;K++)me($[K],P,q,F,k)},A=$=>{if($.shapeFlag&6)return A($.component.subTree);if($.shapeFlag&128)return $.suspense.next();const P=h($.anchor||$.el),q=P&&P[AH];return q?h(q):P};let W=!1;const Y=($,P,q)=>{$==null?P._vnode&&me(P._vnode,null,null,!0):p(P._vnode||null,$,P,null,null,null,q),P._vnode=$,W||(W=!0,q0(),Qj(),W=!1)},ie={p,um:me,m:te,r:xe,mt:D,mc:_,pc:Z,pbc:T,n:A,o:r};return{render:Y,hydrate:void 0,createApp:rW(Y)}}function gl({type:r,props:e},t){return t==="svg"&&r==="foreignObject"||t==="mathml"&&r==="annotation-xml"&&e&&e.encoding&&e.encoding.includes("html")?void 0:t}function Gi({effect:r,job:e},t){t?(r.flags|=32,e.flags|=4):(r.flags&=-33,e.flags&=-5)}function dW(r,e){return(!r||r&&!r.pendingBranch)&&e&&!e.persisted}function bL(r,e,t=!1){const i=r.children,n=e.children;if(ge(i)&&ge(n))for(let s=0;s>1,r[t[a]]0&&(e[i]=t[s-1]),t[s]=i)}}for(s=t.length,o=t[s-1];s-- >0;)t[s]=o,o=e[o];return t}function _L(r){const e=r.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:_L(e)}function k0(r){if(r)for(let e=0;eXr(fW);function La(r,e,t){return wL(r,e,t)}function wL(r,e,t=je){const{immediate:i,deep:n,flush:s,once:o}=t,a=Dt({},t),u=e&&i||!e&&s!=="post";let l;if(Po){if(s==="sync"){const f=vW();l=f.__watcherHandles||(f.__watcherHandles=[])}else if(!u){const f=()=>{};return f.stop=Nr,f.resume=Nr,f.pause=Nr,f}}const c=jt;a.call=(f,v,p)=>Br(f,c,v,p);let d=!1;s==="post"?a.scheduler=f=>{Qt(f,c&&c.suspense)}:s!=="sync"&&(d=!0,a.scheduler=(f,v)=>{v?f():hw(f)}),a.augmentJob=f=>{e&&(f.flags|=4),d&&(f.flags|=2,c&&(f.id=c.uid,f.i=c))};const h=CH(r,e,a);return Po&&(l?l.push(h):u&&h()),h}function pW(r,e,t){const i=this.proxy,n=lt(r)?r.includes(".")?EL(i,r):()=>i[r]:r.bind(i,i);let s;be(e)?s=e:(s=e.handler,t=e);const o=Wo(this),a=wL(n,s.bind(i),t);return o(),a}function EL(r,e){const t=e.split(".");return()=>{let i=r;for(let n=0;ne==="modelValue"||e==="model-value"?r.modelModifiers:r[`${e}Modifiers`]||r[`${xi(e)}Modifiers`]||r[`${bn(e)}Modifiers`];function mW(r,e,...t){if(r.isUnmounted)return;const i=r.vnode.props||je;let n=t;const s=e.startsWith("update:"),o=s&&gW(i,e.slice(7));o&&(o.trim&&(n=t.map(c=>lt(c)?c.trim():c)),o.number&&(n=t.map(__)));let a,u=i[a=cl(e)]||i[a=cl(xi(e))];!u&&s&&(u=i[a=cl(bn(e))]),u&&Br(u,r,6,n);const l=i[a+"Once"];if(l){if(!r.emitted)r.emitted={};else if(r.emitted[a])return;r.emitted[a]=!0,Br(l,r,6,n)}}function SL(r,e,t=!1){const i=e.emitsCache,n=i.get(r);if(n!==void 0)return n;const s=r.emits;let o={},a=!1;if(!be(r)){const u=l=>{const c=SL(l,e,!0);c&&(a=!0,Dt(o,c))};!t&&e.mixins.length&&e.mixins.forEach(u),r.extends&&u(r.extends),r.mixins&&r.mixins.forEach(u)}return!s&&!a?(Ge(r)&&i.set(r,null),null):(ge(s)?s.forEach(u=>o[u]=null):Dt(o,s),Ge(r)&&i.set(r,o),o)}function Ou(r,e){return!r||!vu(e)?!1:(e=e.slice(2).replace(/Once$/,""),Ne(r,e[0].toLowerCase()+e.slice(1))||Ne(r,bn(e))||Ne(r,e))}function B0(r){const{type:e,vnode:t,proxy:i,withProxy:n,propsOptions:[s],slots:o,attrs:a,emit:u,render:l,renderCache:c,props:d,data:h,setupState:f,ctx:v,inheritAttrs:p}=r,b=Xa(r);let m,g;try{if(t.shapeFlag&4){const y=n||i,S=y;m=xr(l.call(S,y,c,d,f,h,v)),g=a}else{const y=e;m=xr(y.length>1?y(d,{attrs:a,slots:o,emit:u}):y(d,null)),g=e.props?a:yW(a)}}catch(y){fo.length=0,wu(y,r,1),m=yt(qi)}let w=m;if(g&&p!==!1){const y=Object.keys(g),{shapeFlag:S}=w;y.length&&S&7&&(s&&y.some(tw)&&(g=bW(g,s)),w=ds(w,g,!1,!0))}return t.dirs&&(w=ds(w,null,!1,!0),w.dirs=w.dirs?w.dirs.concat(t.dirs):t.dirs),t.transition&&fw(w,t.transition),m=w,Xa(b),m}const yW=r=>{let e;for(const t in r)(t==="class"||t==="style"||vu(t))&&((e||(e={}))[t]=r[t]);return e},bW=(r,e)=>{const t={};for(const i in r)(!tw(i)||!(i.slice(9)in e))&&(t[i]=r[i]);return t};function _W(r,e,t){const{props:i,children:n,component:s}=r,{props:o,children:a,patchFlag:u}=e,l=s.emitsOptions;if(e.dirs||e.transition)return!0;if(t&&u>=0){if(u&1024)return!0;if(u&16)return i?j0(i,o,l):!!o;if(u&8){const c=e.dynamicProps;for(let d=0;dr.__isSuspense;function EW(r,e){e&&e.pendingBranch?ge(r)?e.effects.push(...r):e.effects.push(r):DH(r)}const pt=Symbol.for("v-fgt"),Iu=Symbol.for("v-txt"),qi=Symbol.for("v-cmt"),ml=Symbol.for("v-stc"),fo=[];let tr=null;function et(r=!1){fo.push(tr=r?null:[])}function SW(){fo.pop(),tr=fo[fo.length-1]||null}let To=1;function L0(r,e=!1){To+=r,r<0&&tr&&e&&(tr.hasOnce=!0)}function IL(r){return r.dynamicChildren=To>0?tr||ts:null,SW(),To>0&&tr&&tr.push(r),r}function Wt(r,e,t,i,n,s){return IL(de(r,e,t,i,n,s,!0))}function Di(r,e,t,i,n){return IL(yt(r,e,t,i,n,!0))}function $o(r){return r?r.__v_isVNode===!0:!1}function Js(r,e){return r.type===e.type&&r.key===e.key}const TL=({key:r})=>r??null,za=({ref:r,ref_key:e,ref_for:t})=>(typeof r=="number"&&(r=""+r),r!=null?lt(r)||qt(r)||be(r)?{i:xt,r,k:e,f:!!t}:r:null);function de(r,e=null,t=null,i=0,n=null,s=r===pt?0:1,o=!1,a=!1){const u={__v_isVNode:!0,__v_skip:!0,type:r,props:e,key:e&&TL(e),ref:e&&za(e),scopeId:eL,slotScopeIds:null,children:t,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:s,patchFlag:i,dynamicProps:n,dynamicChildren:null,appContext:null,ctx:xt};return a?(gw(u,t),s&128&&r.normalize(u)):t&&(u.shapeFlag|=lt(t)?8:16),To>0&&!o&&tr&&(u.patchFlag>0||s&6)&&u.patchFlag!==32&&tr.push(u),u}const yt=OW;function OW(r,e=null,t=null,i=0,n=null,s=!1){if((!r||r===KH)&&(r=qi),$o(r)){const a=ds(r,e,!0);return t&&gw(a,t),To>0&&!s&&tr&&(a.shapeFlag&6?tr[tr.indexOf(r)]=a:tr.push(a)),a.patchFlag=-2,a}if(MW(r)&&(r=r.__vccOpts),e){e=IW(e);let{class:a,style:u}=e;a&&!lt(a)&&(e.class=yu(a)),Ge(u)&&(dw(u)&&!ge(u)&&(u=Dt({},u)),e.style=nw(u))}const o=lt(r)?1:OL(r)?128:MH(r)?64:Ge(r)?4:be(r)?2:0;return de(r,e,t,i,n,o,s,!0)}function IW(r){return r?dw(r)||hL(r)?Dt({},r):r:null}function ds(r,e,t=!1,i=!1){const{props:n,ref:s,patchFlag:o,children:a,transition:u}=r,l=e?$W(n||{},e):n,c={__v_isVNode:!0,__v_skip:!0,type:r.type,props:l,key:l&&TL(l),ref:e&&e.ref?t&&s?ge(s)?s.concat(za(e)):[s,za(e)]:za(e):s,scopeId:r.scopeId,slotScopeIds:r.slotScopeIds,children:a,target:r.target,targetStart:r.targetStart,targetAnchor:r.targetAnchor,staticCount:r.staticCount,shapeFlag:r.shapeFlag,patchFlag:e&&r.type!==pt?o===-1?16:o|16:o,dynamicProps:r.dynamicProps,dynamicChildren:r.dynamicChildren,appContext:r.appContext,dirs:r.dirs,transition:u,component:r.component,suspense:r.suspense,ssContent:r.ssContent&&ds(r.ssContent),ssFallback:r.ssFallback&&ds(r.ssFallback),el:r.el,anchor:r.anchor,ctx:r.ctx,ce:r.ce};return u&&i&&fw(c,u.clone(c)),c}function C_(r=" ",e=0){return yt(Iu,null,r,e)}function TW(r="",e=!1){return e?(et(),Di(qi,null,r)):yt(qi,null,r)}function xr(r){return r==null||typeof r=="boolean"?yt(qi):ge(r)?yt(pt,null,r.slice()):$o(r)?yi(r):yt(Iu,null,String(r))}function yi(r){return r.el===null&&r.patchFlag!==-1||r.memo?r:ds(r)}function gw(r,e){let t=0;const{shapeFlag:i}=r;if(e==null)e=null;else if(ge(e))t=16;else if(typeof e=="object")if(i&65){const n=e.default;n&&(n._c&&(n._d=!1),gw(r,n()),n._c&&(n._d=!0));return}else{t=32;const n=e._;!n&&!hL(e)?e._ctx=xt:n===3&&xt&&(xt.slots._===1?e._=1:(e._=2,r.patchFlag|=1024))}else be(e)?(e={default:e,_ctx:xt},t=32):(e=String(e),i&64?(t=16,e=[C_(e)]):t=8);r.children=e,r.shapeFlag|=t}function $W(...r){const e={};for(let t=0;t{let n;return(n=r[t])||(n=r[t]=[]),n.push(i),s=>{n.length>1?n.forEach(o=>o(s)):n[0](s)}};Za=e("__VUE_INSTANCE_SETTERS__",t=>jt=t),x_=e("__VUE_SSR_SETTERS__",t=>Po=t)}const Wo=r=>{const e=jt;return Za(r),r.scope.on(),()=>{r.scope.off(),Za(e)}},z0=()=>{jt&&jt.scope.off(),Za(null)};function $L(r){return r.vnode.shapeFlag&4}let Po=!1;function xW(r,e=!1,t=!1){e&&x_(e);const{props:i,children:n}=r.vnode,s=$L(r);iW(r,i,s,e),aW(r,n,t);const o=s?qW(r,e):void 0;return e&&x_(!1),o}function qW(r,e){const t=r.type;r.accessCache=Object.create(null),r.proxy=new Proxy(r.ctx,YH);const{setup:i}=t;if(i){Fi();const n=r.setupContext=i.length>1?AW(r):null,s=Wo(r),o=Ho(i,r,0,[r.props,n]),a=wj(o);if(ki(),s(),(a||r.sp)&&!ss(r)&&rL(r),a){if(o.then(z0,z0),e)return o.then(u=>{H0(r,u)}).catch(u=>{wu(u,r,0)});r.asyncDep=o}else H0(r,o)}else PL(r)}function H0(r,e,t){be(e)?r.type.__ssrInlineRender?r.ssrRender=e:r.render=e:Ge(e)&&(r.setupState=Gj(e)),PL(r)}function PL(r,e,t){const i=r.type;r.render||(r.render=i.render||Nr);{const n=Wo(r);Fi();try{XH(r)}finally{ki(),n()}}}const DW={get(r,e){return Rt(r,"get",""),r[e]}};function AW(r){const e=t=>{r.exposed=t||{}};return{attrs:new Proxy(r.attrs,DW),slots:r.slots,emit:r.emit,expose:e}}function Tu(r){return r.exposed?r.exposeProxy||(r.exposeProxy=new Proxy(Gj(Vj(r.exposed)),{get(e,t){if(t in e)return e[t];if(t in ho)return ho[t](r)},has(e,t){return t in e||t in ho}})):r.proxy}function MW(r){return be(r)&&"__vccOpts"in r}const br=(r,e)=>PH(r,e,Po);function mw(r,e,t){const i=arguments.length;return i===2?Ge(e)&&!ge(e)?$o(e)?yt(r,null,[e]):yt(r,e):yt(r,null,e):(i>3?t=Array.prototype.slice.call(arguments,2):i===3&&$o(t)&&(t=[t]),yt(r,e,t))}const NW="3.5.13";/** * @vue/runtime-dom v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let q_;const W0=typeof window<"u"&&window.trustedTypes;if(W0)try{q_=W0.createPolicy("vue",{createHTML:r=>r})}catch{}const PL=q_?r=>q_.createHTML(r):r=>r,NW="http://www.w3.org/2000/svg",FW="http://www.w3.org/1998/Math/MathML",Ur=typeof document<"u"?document:null,U0=Ur&&Ur.createElement("template"),kW={insert:(r,e,t)=>{e.insertBefore(r,t||null)},remove:r=>{const e=r.parentNode;e&&e.removeChild(r)},createElement:(r,e,t,i)=>{const n=e==="svg"?Ur.createElementNS(NW,r):e==="mathml"?Ur.createElementNS(FW,r):t?Ur.createElement(r,{is:t}):Ur.createElement(r);return r==="select"&&i&&i.multiple!=null&&n.setAttribute("multiple",i.multiple),n},createText:r=>Ur.createTextNode(r),createComment:r=>Ur.createComment(r),setText:(r,e)=>{r.nodeValue=e},setElementText:(r,e)=>{r.textContent=e},parentNode:r=>r.parentNode,nextSibling:r=>r.nextSibling,querySelector:r=>Ur.querySelector(r),setScopeId(r,e){r.setAttribute(e,"")},insertStaticContent(r,e,t,i,n,s){const o=t?t.previousSibling:e.lastChild;if(n&&(n===s||n.nextSibling))for(;e.insertBefore(n.cloneNode(!0),t),!(n===s||!(n=n.nextSibling)););else{U0.innerHTML=PL(i==="svg"?`${r}`:i==="mathml"?`${r}`:r);const a=U0.content;if(i==="svg"||i==="mathml"){const u=a.firstChild;for(;u.firstChild;)a.appendChild(u.firstChild);a.removeChild(u)}e.insertBefore(a,t)}return[o?o.nextSibling:e.firstChild,t?t.previousSibling:e.lastChild]}},BW=Symbol("_vtc");function jW(r,e,t){const i=r[BW];i&&(e=(e?[e,...i]:[...i]).join(" ")),e==null?r.removeAttribute("class"):t?r.setAttribute("class",e):r.className=e}const V0=Symbol("_vod"),LW=Symbol("_vsh"),zW=Symbol(""),HW=/(^|;)\s*display\s*:/;function WW(r,e,t){const i=r.style,n=lt(t);let s=!1;if(t&&!n){if(e)if(lt(e))for(const o of e.split(";")){const a=o.slice(0,o.indexOf(":")).trim();t[a]==null&&Ha(i,a,"")}else for(const o in e)t[o]==null&&Ha(i,o,"");for(const o in t)o==="display"&&(s=!0),Ha(i,o,t[o])}else if(n){if(e!==t){const o=i[zW];o&&(t+=";"+o),i.cssText=t,s=HW.test(t)}}else e&&r.removeAttribute("style");V0 in r&&(r[V0]=s?i.display:"",r[LW]&&(i.display="none"))}const K0=/\s*!important$/;function Ha(r,e,t){if(ge(t))t.forEach(i=>Ha(r,e,i));else if(t==null&&(t=""),e.startsWith("--"))r.setProperty(e,t);else{const i=UW(r,e);K0.test(t)?r.setProperty(bn(i),t.replace(K0,""),"important"):r[i]=t}}const G0=["Webkit","Moz","ms"],yl={};function UW(r,e){const t=yl[e];if(t)return t;let i=Ci(e);if(i!=="filter"&&i in r)return yl[e]=i;i=Oj(i);for(let n=0;nbl||(YW.then(()=>bl=0),bl=Date.now());function JW(r,e){const t=i=>{if(!i._vts)i._vts=Date.now();else if(i._vts<=t.attached)return;Br(QW(i,t.value),e,5,[i])};return t.value=r,t.attached=XW(),t}function QW(r,e){if(ge(e)){const t=r.stopImmediatePropagation;return r.stopImmediatePropagation=()=>{t.call(r),r._stopped=!0},e.map(i=>n=>!n._stopped&&i&&i(n))}else return e}const eE=r=>r.charCodeAt(0)===111&&r.charCodeAt(1)===110&&r.charCodeAt(2)>96&&r.charCodeAt(2)<123,ZW=(r,e,t,i,n,s)=>{const o=n==="svg";e==="class"?jW(r,i,o):e==="style"?WW(r,t,i):vu(e)?tw(e)||KW(r,e,t,i,s):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):e4(r,e,i,o))?(J0(r,e,i),!r.tagName.includes("-")&&(e==="value"||e==="checked"||e==="selected")&&X0(r,e,i,o,s,e!=="value")):r._isVueCE&&(/[A-Z]/.test(e)||!lt(i))?J0(r,Ci(e),i,s,e):(e==="true-value"?r._trueValue=i:e==="false-value"&&(r._falseValue=i),X0(r,e,i,o))};function e4(r,e,t,i){if(i)return!!(e==="innerHTML"||e==="textContent"||e in r&&eE(e)&&be(t));if(e==="spellcheck"||e==="draggable"||e==="translate"||e==="form"||e==="list"&&r.tagName==="INPUT"||e==="type"&&r.tagName==="TEXTAREA")return!1;if(e==="width"||e==="height"){const n=r.tagName;if(n==="IMG"||n==="VIDEO"||n==="CANVAS"||n==="SOURCE")return!1}return eE(e)&<(t)?!1:e in r}const tE=r=>{const e=r.props["onUpdate:modelValue"]||!1;return ge(e)?t=>Ba(e,t):e};function t4(r){r.target.composing=!0}function rE(r){const e=r.target;e.composing&&(e.composing=!1,e.dispatchEvent(new Event("input")))}const _l=Symbol("_assign"),r4={created(r,{modifiers:{lazy:e,trim:t,number:i}},n){r[_l]=tE(n);const s=i||n.props&&n.props.type==="number";Kn(r,e?"change":"input",o=>{if(o.target.composing)return;let a=r.value;t&&(a=a.trim()),s&&(a=__(a)),r[_l](a)}),t&&Kn(r,"change",()=>{r.value=r.value.trim()}),e||(Kn(r,"compositionstart",t4),Kn(r,"compositionend",rE),Kn(r,"change",rE))},mounted(r,{value:e}){r.value=e??""},beforeUpdate(r,{value:e,oldValue:t,modifiers:{lazy:i,trim:n,number:s}},o){if(r[_l]=tE(o),r.composing)return;const a=(s||r.type==="number")&&!/^0\d/.test(r.value)?__(r.value):r.value,u=e??"";a!==u&&(document.activeElement===r&&r.type!=="range"&&(i&&e===t||n&&r.value.trim()===u)||(r.value=u))}},i4=["ctrl","shift","alt","meta"],n4={stop:r=>r.stopPropagation(),prevent:r=>r.preventDefault(),self:r=>r.target!==r.currentTarget,ctrl:r=>!r.ctrlKey,shift:r=>!r.shiftKey,alt:r=>!r.altKey,meta:r=>!r.metaKey,left:r=>"button"in r&&r.button!==0,middle:r=>"button"in r&&r.button!==1,right:r=>"button"in r&&r.button!==2,exact:(r,e)=>i4.some(t=>r[`${t}Key`]&&!e.includes(t))},s4=(r,e)=>{const t=r._withMods||(r._withMods={}),i=e.join(".");return t[i]||(t[i]=(n,...s)=>{for(let o=0;o{const e=a4().createApp(...r),{mount:t}=e;return e.mount=i=>{const n=c4(i);if(!n)return;const s=e._component;!be(s)&&!s.render&&!s.template&&(s.template=n.innerHTML),n.nodeType===1&&(n.textContent="");const o=t(n,!1,l4(n));return n instanceof Element&&(n.removeAttribute("v-cloak"),n.setAttribute("data-v-app","")),o},e};function l4(r){if(r instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&r instanceof MathMLElement)return"mathml"}function c4(r){return lt(r)?document.querySelector(r):r}/*! +**/let q_;const W0=typeof window<"u"&&window.trustedTypes;if(W0)try{q_=W0.createPolicy("vue",{createHTML:r=>r})}catch{}const RL=q_?r=>q_.createHTML(r):r=>r,FW="http://www.w3.org/2000/svg",kW="http://www.w3.org/1998/Math/MathML",Ur=typeof document<"u"?document:null,U0=Ur&&Ur.createElement("template"),BW={insert:(r,e,t)=>{e.insertBefore(r,t||null)},remove:r=>{const e=r.parentNode;e&&e.removeChild(r)},createElement:(r,e,t,i)=>{const n=e==="svg"?Ur.createElementNS(FW,r):e==="mathml"?Ur.createElementNS(kW,r):t?Ur.createElement(r,{is:t}):Ur.createElement(r);return r==="select"&&i&&i.multiple!=null&&n.setAttribute("multiple",i.multiple),n},createText:r=>Ur.createTextNode(r),createComment:r=>Ur.createComment(r),setText:(r,e)=>{r.nodeValue=e},setElementText:(r,e)=>{r.textContent=e},parentNode:r=>r.parentNode,nextSibling:r=>r.nextSibling,querySelector:r=>Ur.querySelector(r),setScopeId(r,e){r.setAttribute(e,"")},insertStaticContent(r,e,t,i,n,s){const o=t?t.previousSibling:e.lastChild;if(n&&(n===s||n.nextSibling))for(;e.insertBefore(n.cloneNode(!0),t),!(n===s||!(n=n.nextSibling)););else{U0.innerHTML=RL(i==="svg"?`${r}`:i==="mathml"?`${r}`:r);const a=U0.content;if(i==="svg"||i==="mathml"){const u=a.firstChild;for(;u.firstChild;)a.appendChild(u.firstChild);a.removeChild(u)}e.insertBefore(a,t)}return[o?o.nextSibling:e.firstChild,t?t.previousSibling:e.lastChild]}},jW=Symbol("_vtc");function LW(r,e,t){const i=r[jW];i&&(e=(e?[e,...i]:[...i]).join(" ")),e==null?r.removeAttribute("class"):t?r.setAttribute("class",e):r.className=e}const V0=Symbol("_vod"),zW=Symbol("_vsh"),HW=Symbol(""),WW=/(^|;)\s*display\s*:/;function UW(r,e,t){const i=r.style,n=lt(t);let s=!1;if(t&&!n){if(e)if(lt(e))for(const o of e.split(";")){const a=o.slice(0,o.indexOf(":")).trim();t[a]==null&&Ha(i,a,"")}else for(const o in e)t[o]==null&&Ha(i,o,"");for(const o in t)o==="display"&&(s=!0),Ha(i,o,t[o])}else if(n){if(e!==t){const o=i[HW];o&&(t+=";"+o),i.cssText=t,s=WW.test(t)}}else e&&r.removeAttribute("style");V0 in r&&(r[V0]=s?i.display:"",r[zW]&&(i.display="none"))}const K0=/\s*!important$/;function Ha(r,e,t){if(ge(t))t.forEach(i=>Ha(r,e,i));else if(t==null&&(t=""),e.startsWith("--"))r.setProperty(e,t);else{const i=VW(r,e);K0.test(t)?r.setProperty(bn(i),t.replace(K0,""),"important"):r[i]=t}}const G0=["Webkit","Moz","ms"],yl={};function VW(r,e){const t=yl[e];if(t)return t;let i=xi(e);if(i!=="filter"&&i in r)return yl[e]=i;i=Oj(i);for(let n=0;nbl||(XW.then(()=>bl=0),bl=Date.now());function QW(r,e){const t=i=>{if(!i._vts)i._vts=Date.now();else if(i._vts<=t.attached)return;Br(ZW(i,t.value),e,5,[i])};return t.value=r,t.attached=JW(),t}function ZW(r,e){if(ge(e)){const t=r.stopImmediatePropagation;return r.stopImmediatePropagation=()=>{t.call(r),r._stopped=!0},e.map(i=>n=>!n._stopped&&i&&i(n))}else return e}const eE=r=>r.charCodeAt(0)===111&&r.charCodeAt(1)===110&&r.charCodeAt(2)>96&&r.charCodeAt(2)<123,e4=(r,e,t,i,n,s)=>{const o=n==="svg";e==="class"?LW(r,i,o):e==="style"?UW(r,t,i):vu(e)?tw(e)||GW(r,e,t,i,s):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):t4(r,e,i,o))?(J0(r,e,i),!r.tagName.includes("-")&&(e==="value"||e==="checked"||e==="selected")&&X0(r,e,i,o,s,e!=="value")):r._isVueCE&&(/[A-Z]/.test(e)||!lt(i))?J0(r,xi(e),i,s,e):(e==="true-value"?r._trueValue=i:e==="false-value"&&(r._falseValue=i),X0(r,e,i,o))};function t4(r,e,t,i){if(i)return!!(e==="innerHTML"||e==="textContent"||e in r&&eE(e)&&be(t));if(e==="spellcheck"||e==="draggable"||e==="translate"||e==="form"||e==="list"&&r.tagName==="INPUT"||e==="type"&&r.tagName==="TEXTAREA")return!1;if(e==="width"||e==="height"){const n=r.tagName;if(n==="IMG"||n==="VIDEO"||n==="CANVAS"||n==="SOURCE")return!1}return eE(e)&<(t)?!1:e in r}const tE=r=>{const e=r.props["onUpdate:modelValue"]||!1;return ge(e)?t=>Ba(e,t):e};function r4(r){r.target.composing=!0}function rE(r){const e=r.target;e.composing&&(e.composing=!1,e.dispatchEvent(new Event("input")))}const _l=Symbol("_assign"),CL={created(r,{modifiers:{lazy:e,trim:t,number:i}},n){r[_l]=tE(n);const s=i||n.props&&n.props.type==="number";Kn(r,e?"change":"input",o=>{if(o.target.composing)return;let a=r.value;t&&(a=a.trim()),s&&(a=__(a)),r[_l](a)}),t&&Kn(r,"change",()=>{r.value=r.value.trim()}),e||(Kn(r,"compositionstart",r4),Kn(r,"compositionend",rE),Kn(r,"change",rE))},mounted(r,{value:e}){r.value=e??""},beforeUpdate(r,{value:e,oldValue:t,modifiers:{lazy:i,trim:n,number:s}},o){if(r[_l]=tE(o),r.composing)return;const a=(s||r.type==="number")&&!/^0\d/.test(r.value)?__(r.value):r.value,u=e??"";a!==u&&(document.activeElement===r&&r.type!=="range"&&(i&&e===t||n&&r.value.trim()===u)||(r.value=u))}},i4=["ctrl","shift","alt","meta"],n4={stop:r=>r.stopPropagation(),prevent:r=>r.preventDefault(),self:r=>r.target!==r.currentTarget,ctrl:r=>!r.ctrlKey,shift:r=>!r.shiftKey,alt:r=>!r.altKey,meta:r=>!r.metaKey,left:r=>"button"in r&&r.button!==0,middle:r=>"button"in r&&r.button!==1,right:r=>"button"in r&&r.button!==2,exact:(r,e)=>i4.some(t=>r[`${t}Key`]&&!e.includes(t))},s4=(r,e)=>{const t=r._withMods||(r._withMods={}),i=e.join(".");return t[i]||(t[i]=(n,...s)=>{for(let o=0;o{const e=a4().createApp(...r),{mount:t}=e;return e.mount=i=>{const n=c4(i);if(!n)return;const s=e._component;!be(s)&&!s.render&&!s.template&&(s.template=n.innerHTML),n.nodeType===1&&(n.textContent="");const o=t(n,!1,l4(n));return n instanceof Element&&(n.removeAttribute("v-cloak"),n.setAttribute("data-v-app","")),o},e};function l4(r){if(r instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&r instanceof MathMLElement)return"mathml"}function c4(r){return lt(r)?document.querySelector(r):r}/*! * pinia v3.0.2 * (c) 2025 Eduardo San Martin Morote * @license MIT - */const d4=Symbol();var nE;(function(r){r.direct="direct",r.patchObject="patch object",r.patchFunction="patch function"})(nE||(nE={}));function h4(){const r=rH(!0),e=r.run(()=>sr({}));let t=[],i=[];const n=Vj({install(s){n._a=s,s.provide(d4,n),s.config.globalProperties.$pinia=n,i.forEach(o=>t.push(o)),i=[]},use(s){return this._a?t.push(s):i.push(s),this},_p:t,_a:null,_e:r,_s:new Map,state:e});return n}/*! + */const d4=Symbol();var nE;(function(r){r.direct="direct",r.patchObject="patch object",r.patchFunction="patch function"})(nE||(nE={}));function h4(){const r=nH(!0),e=r.run(()=>or({}));let t=[],i=[];const n=Vj({install(s){n._a=s,s.provide(d4,n),s.config.globalProperties.$pinia=n,i.forEach(o=>t.push(o)),i=[]},use(s){return this._a?t.push(s):i.push(s),this},_p:t,_a:null,_e:r,_s:new Map,state:e});return n}/*! * vue-router v4.5.1 * (c) 2025 Eduardo San Martin Morote * @license MIT - */const Gn=typeof document<"u";function RL(r){return typeof r=="object"||"displayName"in r||"props"in r||"__vccOpts"in r}function f4(r){return r.__esModule||r[Symbol.toStringTag]==="Module"||r.default&&RL(r.default)}const Ae=Object.assign;function wl(r,e){const t={};for(const i in e){const n=e[i];t[i]=wr(n)?n.map(r):r(n)}return t}const vo=()=>{},wr=Array.isArray,CL=/#/g,v4=/&/g,p4=/\//g,g4=/=/g,m4=/\?/g,xL=/\+/g,y4=/%5B/g,b4=/%5D/g,qL=/%5E/g,_4=/%60/g,DL=/%7B/g,w4=/%7C/g,AL=/%7D/g,E4=/%20/g;function yw(r){return encodeURI(""+r).replace(w4,"|").replace(y4,"[").replace(b4,"]")}function S4(r){return yw(r).replace(DL,"{").replace(AL,"}").replace(qL,"^")}function D_(r){return yw(r).replace(xL,"%2B").replace(E4,"+").replace(CL,"%23").replace(v4,"%26").replace(_4,"`").replace(DL,"{").replace(AL,"}").replace(qL,"^")}function O4(r){return D_(r).replace(g4,"%3D")}function I4(r){return yw(r).replace(CL,"%23").replace(m4,"%3F")}function T4(r){return r==null?"":I4(r).replace(p4,"%2F")}function Ro(r){try{return decodeURIComponent(""+r)}catch{}return""+r}const $4=/\/$/,P4=r=>r.replace($4,"");function El(r,e,t="/"){let i,n={},s="",o="";const a=e.indexOf("#");let u=e.indexOf("?");return a=0&&(u=-1),u>-1&&(i=e.slice(0,u),s=e.slice(u+1,a>-1?a:e.length),n=r(s)),a>-1&&(i=i||e.slice(0,a),o=e.slice(a,e.length)),i=q4(i??e,t),{fullPath:i+(s&&"?")+s+o,path:i,query:n,hash:Ro(o)}}function R4(r,e){const t=e.query?r(e.query):"";return e.path+(t&&"?")+t+(e.hash||"")}function sE(r,e){return!e||!r.toLowerCase().startsWith(e.toLowerCase())?r:r.slice(e.length)||"/"}function C4(r,e,t){const i=e.matched.length-1,n=t.matched.length-1;return i>-1&&i===n&&hs(e.matched[i],t.matched[n])&&ML(e.params,t.params)&&r(e.query)===r(t.query)&&e.hash===t.hash}function hs(r,e){return(r.aliasOf||r)===(e.aliasOf||e)}function ML(r,e){if(Object.keys(r).length!==Object.keys(e).length)return!1;for(const t in r)if(!x4(r[t],e[t]))return!1;return!0}function x4(r,e){return wr(r)?oE(r,e):wr(e)?oE(e,r):r===e}function oE(r,e){return wr(e)?r.length===e.length&&r.every((t,i)=>t===e[i]):r.length===1&&r[0]===e}function q4(r,e){if(r.startsWith("/"))return r;if(!r)return e;const t=e.split("/"),i=r.split("/"),n=i[i.length-1];(n===".."||n===".")&&i.push("");let s=t.length-1,o,a;for(o=0;o1&&s--;else break;return t.slice(0,s).join("/")+"/"+i.slice(o).join("/")}const vi={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var Co;(function(r){r.pop="pop",r.push="push"})(Co||(Co={}));var po;(function(r){r.back="back",r.forward="forward",r.unknown=""})(po||(po={}));function D4(r){if(!r)if(Gn){const e=document.querySelector("base");r=e&&e.getAttribute("href")||"/",r=r.replace(/^\w+:\/\/[^\/]+/,"")}else r="/";return r[0]!=="/"&&r[0]!=="#"&&(r="/"+r),P4(r)}const A4=/^[^#]+#/;function M4(r,e){return r.replace(A4,"#")+e}function N4(r,e){const t=document.documentElement.getBoundingClientRect(),i=r.getBoundingClientRect();return{behavior:e.behavior,left:i.left-t.left-(e.left||0),top:i.top-t.top-(e.top||0)}}const $u=()=>({left:window.scrollX,top:window.scrollY});function F4(r){let e;if("el"in r){const t=r.el,i=typeof t=="string"&&t.startsWith("#"),n=typeof t=="string"?i?document.getElementById(t.slice(1)):document.querySelector(t):t;if(!n)return;e=N4(n,r)}else e=r;"scrollBehavior"in document.documentElement.style?window.scrollTo(e):window.scrollTo(e.left!=null?e.left:window.scrollX,e.top!=null?e.top:window.scrollY)}function aE(r,e){return(history.state?history.state.position-e:-1)+r}const A_=new Map;function k4(r,e){A_.set(r,e)}function B4(r){const e=A_.get(r);return A_.delete(r),e}let j4=()=>location.protocol+"//"+location.host;function NL(r,e){const{pathname:t,search:i,hash:n}=e,s=r.indexOf("#");if(s>-1){let a=n.includes(r.slice(s))?r.slice(s).length:1,u=n.slice(a);return u[0]!=="/"&&(u="/"+u),sE(u,"")}return sE(t,r)+i+n}function L4(r,e,t,i){let n=[],s=[],o=null;const a=({state:h})=>{const f=NL(r,location),v=t.value,p=e.value;let b=0;if(h){if(t.value=f,e.value=h,o&&o===v){o=null;return}b=p?h.position-p.position:0}else i(f);n.forEach(m=>{m(t.value,v,{delta:b,type:Co.pop,direction:b?b>0?po.forward:po.back:po.unknown})})};function u(){o=t.value}function l(h){n.push(h);const f=()=>{const v=n.indexOf(h);v>-1&&n.splice(v,1)};return s.push(f),f}function c(){const{history:h}=window;h.state&&h.replaceState(Ae({},h.state,{scroll:$u()}),"")}function d(){for(const h of s)h();s=[],window.removeEventListener("popstate",a),window.removeEventListener("beforeunload",c)}return window.addEventListener("popstate",a),window.addEventListener("beforeunload",c,{passive:!0}),{pauseListeners:u,listen:l,destroy:d}}function uE(r,e,t,i=!1,n=!1){return{back:r,current:e,forward:t,replaced:i,position:window.history.length,scroll:n?$u():null}}function z4(r){const{history:e,location:t}=window,i={value:NL(r,t)},n={value:e.state};n.value||s(i.value,{back:null,current:i.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0);function s(u,l,c){const d=r.indexOf("#"),h=d>-1?(t.host&&document.querySelector("base")?r:r.slice(d))+u:j4()+r+u;try{e[c?"replaceState":"pushState"](l,"",h),n.value=l}catch(f){console.error(f),t[c?"replace":"assign"](h)}}function o(u,l){const c=Ae({},e.state,uE(n.value.back,u,n.value.forward,!0),l,{position:n.value.position});s(u,c,!0),i.value=u}function a(u,l){const c=Ae({},n.value,e.state,{forward:u,scroll:$u()});s(c.current,c,!0);const d=Ae({},uE(i.value,u,null),{position:c.position+1},l);s(u,d,!1),i.value=u}return{location:i,state:n,push:a,replace:o}}function H4(r){r=D4(r);const e=z4(r),t=L4(r,e.state,e.location,e.replace);function i(s,o=!0){o||t.pauseListeners(),history.go(s)}const n=Ae({location:"",base:r,go:i,createHref:M4.bind(null,r)},e,t);return Object.defineProperty(n,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(n,"state",{enumerable:!0,get:()=>e.state.value}),n}function W4(r){return typeof r=="string"||r&&typeof r=="object"}function FL(r){return typeof r=="string"||typeof r=="symbol"}const kL=Symbol("");var lE;(function(r){r[r.aborted=4]="aborted",r[r.cancelled=8]="cancelled",r[r.duplicated=16]="duplicated"})(lE||(lE={}));function fs(r,e){return Ae(new Error,{type:r,[kL]:!0},e)}function Wr(r,e){return r instanceof Error&&kL in r&&(e==null||!!(r.type&e))}const cE="[^/]+?",U4={sensitive:!1,strict:!1,start:!0,end:!0},V4=/[.+*?^${}()[\]/\\]/g;function K4(r,e){const t=Ae({},U4,e),i=[];let n=t.start?"^":"";const s=[];for(const l of r){const c=l.length?[]:[90];t.strict&&!l.length&&(n+="/");for(let d=0;de.length?e.length===1&&e[0]===80?1:-1:0}function BL(r,e){let t=0;const i=r.score,n=e.score;for(;t0&&e[e.length-1]<0}const Y4={type:0,value:""},X4=/[a-zA-Z0-9_]/;function J4(r){if(!r)return[[]];if(r==="/")return[[Y4]];if(!r.startsWith("/"))throw new Error(`Invalid path "${r}"`);function e(f){throw new Error(`ERR (${t})/"${l}": ${f}`)}let t=0,i=t;const n=[];let s;function o(){s&&n.push(s),s=[]}let a=0,u,l="",c="";function d(){l&&(t===0?s.push({type:0,value:l}):t===1||t===2||t===3?(s.length>1&&(u==="*"||u==="+")&&e(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),s.push({type:1,value:l,regexp:c,repeatable:u==="*"||u==="+",optional:u==="*"||u==="?"})):e("Invalid state to consume buffer"),l="")}function h(){l+=u}for(;a{o(w)}:vo}function o(d){if(FL(d)){const h=i.get(d);h&&(i.delete(d),t.splice(t.indexOf(h),1),h.children.forEach(o),h.alias.forEach(o))}else{const h=t.indexOf(d);h>-1&&(t.splice(h,1),d.record.name&&i.delete(d.record.name),d.children.forEach(o),d.alias.forEach(o))}}function a(){return t}function u(d){const h=rU(d,t);t.splice(h,0,d),d.record.name&&!vE(d)&&i.set(d.record.name,d)}function l(d,h){let f,v={},p,b;if("name"in d&&d.name){if(f=i.get(d.name),!f)throw fs(1,{location:d});b=f.record.name,v=Ae(hE(h.params,f.keys.filter(w=>!w.optional).concat(f.parent?f.parent.keys.filter(w=>w.optional):[]).map(w=>w.name)),d.params&&hE(d.params,f.keys.map(w=>w.name))),p=f.stringify(v)}else if(d.path!=null)p=d.path,f=t.find(w=>w.re.test(p)),f&&(v=f.parse(p),b=f.record.name);else{if(f=h.name?i.get(h.name):t.find(w=>w.re.test(h.path)),!f)throw fs(1,{location:d,currentLocation:h});b=f.record.name,v=Ae({},h.params,d.params),p=f.stringify(v)}const m=[];let g=f;for(;g;)m.unshift(g.record),g=g.parent;return{name:b,path:p,params:v,matched:m,meta:tU(m)}}r.forEach(d=>s(d));function c(){t.length=0,i.clear()}return{addRoute:s,resolve:l,removeRoute:o,clearRoutes:c,getRoutes:a,getRecordMatcher:n}}function hE(r,e){const t={};for(const i of e)i in r&&(t[i]=r[i]);return t}function fE(r){const e={path:r.path,redirect:r.redirect,name:r.name,meta:r.meta||{},aliasOf:r.aliasOf,beforeEnter:r.beforeEnter,props:eU(r),children:r.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in r?r.components||null:r.component&&{default:r.component}};return Object.defineProperty(e,"mods",{value:{}}),e}function eU(r){const e={},t=r.props||!1;if("component"in r)e.default=t;else for(const i in r.components)e[i]=typeof t=="object"?t[i]:t;return e}function vE(r){for(;r;){if(r.record.aliasOf)return!0;r=r.parent}return!1}function tU(r){return r.reduce((e,t)=>Ae(e,t.meta),{})}function pE(r,e){const t={};for(const i in r)t[i]=i in e?e[i]:r[i];return t}function rU(r,e){let t=0,i=e.length;for(;t!==i;){const s=t+i>>1;BL(r,e[s])<0?i=s:t=s+1}const n=iU(r);return n&&(i=e.lastIndexOf(n,i-1)),i}function iU(r){let e=r;for(;e=e.parent;)if(jL(e)&&BL(r,e)===0)return e}function jL({record:r}){return!!(r.name||r.components&&Object.keys(r.components).length||r.redirect)}function nU(r){const e={};if(r===""||r==="?")return e;const i=(r[0]==="?"?r.slice(1):r).split("&");for(let n=0;ns&&D_(s)):[i&&D_(i)]).forEach(s=>{s!==void 0&&(e+=(e.length?"&":"")+t,s!=null&&(e+="="+s))})}return e}function sU(r){const e={};for(const t in r){const i=r[t];i!==void 0&&(e[t]=wr(i)?i.map(n=>n==null?null:""+n):i==null?i:""+i)}return e}const oU=Symbol(""),mE=Symbol(""),bw=Symbol(""),LL=Symbol(""),M_=Symbol("");function Qs(){let r=[];function e(i){return r.push(i),()=>{const n=r.indexOf(i);n>-1&&r.splice(n,1)}}function t(){r=[]}return{add:e,list:()=>r.slice(),reset:t}}function yi(r,e,t,i,n,s=o=>o()){const o=i&&(i.enterCallbacks[n]=i.enterCallbacks[n]||[]);return()=>new Promise((a,u)=>{const l=h=>{h===!1?u(fs(4,{from:t,to:e})):h instanceof Error?u(h):W4(h)?u(fs(2,{from:e,to:h})):(o&&i.enterCallbacks[n]===o&&typeof h=="function"&&o.push(h),a())},c=s(()=>r.call(i&&i.instances[n],e,t,l));let d=Promise.resolve(c);r.length<3&&(d=d.then(l)),d.catch(h=>u(h))})}function Sl(r,e,t,i,n=s=>s()){const s=[];for(const o of r)for(const a in o.components){let u=o.components[a];if(!(e!=="beforeRouteEnter"&&!o.instances[a]))if(RL(u)){const c=(u.__vccOpts||u)[e];c&&s.push(yi(c,t,i,o,a,n))}else{let l=u();s.push(()=>l.then(c=>{if(!c)throw new Error(`Couldn't resolve component "${a}" at "${o.path}"`);const d=f4(c)?c.default:c;o.mods[a]=c,o.components[a]=d;const f=(d.__vccOpts||d)[e];return f&&yi(f,t,i,o,a,n)()}))}}return s}function yE(r){const e=Xr(bw),t=Xr(LL),i=br(()=>{const u=Zt(r.to);return e.resolve(u)}),n=br(()=>{const{matched:u}=i.value,{length:l}=u,c=u[l-1],d=t.matched;if(!c||!d.length)return-1;const h=d.findIndex(hs.bind(null,c));if(h>-1)return h;const f=bE(u[l-2]);return l>1&&bE(c)===f&&d[d.length-1].path!==f?d.findIndex(hs.bind(null,u[l-2])):h}),s=br(()=>n.value>-1&&dU(t.params,i.value.params)),o=br(()=>n.value>-1&&n.value===t.matched.length-1&&ML(t.params,i.value.params));function a(u={}){if(cU(u)){const l=e[Zt(r.replace)?"replace":"push"](Zt(r.to)).catch(vo);return r.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>l),l}return Promise.resolve()}return{route:i,href:br(()=>i.value.href),isActive:s,isExactActive:o,navigate:a}}function aU(r){return r.length===1?r[0]:r}const uU=Or({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:yE,setup(r,{slots:e}){const t=_u(yE(r)),{options:i}=Xr(bw),n=br(()=>({[_E(r.activeClass,i.linkActiveClass,"router-link-active")]:t.isActive,[_E(r.exactActiveClass,i.linkExactActiveClass,"router-link-exact-active")]:t.isExactActive}));return()=>{const s=e.default&&aU(e.default(t));return r.custom?s:mw("a",{"aria-current":t.isExactActive?r.ariaCurrentValue:null,href:t.href,onClick:t.navigate,class:n.value},s)}}}),lU=uU;function cU(r){if(!(r.metaKey||r.altKey||r.ctrlKey||r.shiftKey)&&!r.defaultPrevented&&!(r.button!==void 0&&r.button!==0)){if(r.currentTarget&&r.currentTarget.getAttribute){const e=r.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return r.preventDefault&&r.preventDefault(),!0}}function dU(r,e){for(const t in e){const i=e[t],n=r[t];if(typeof i=="string"){if(i!==n)return!1}else if(!wr(n)||n.length!==i.length||i.some((s,o)=>s!==n[o]))return!1}return!0}function bE(r){return r?r.aliasOf?r.aliasOf.path:r.path:""}const _E=(r,e,t)=>r??e??t,hU=Or({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(r,{attrs:e,slots:t}){const i=Xr(M_),n=br(()=>r.route||i.value),s=Xr(mE,0),o=br(()=>{let l=Zt(s);const{matched:c}=n.value;let d;for(;(d=c[l])&&!d.components;)l++;return l}),a=br(()=>n.value.matched[o.value]);ja(mE,br(()=>o.value+1)),ja(oU,a),ja(M_,n);const u=sr();return La(()=>[u.value,a.value,r.name],([l,c,d],[h,f,v])=>{c&&(c.instances[d]=l,f&&f!==c&&l&&l===h&&(c.leaveGuards.size||(c.leaveGuards=f.leaveGuards),c.updateGuards.size||(c.updateGuards=f.updateGuards))),l&&c&&(!f||!hs(c,f)||!h)&&(c.enterCallbacks[d]||[]).forEach(p=>p(l))},{flush:"post"}),()=>{const l=n.value,c=r.name,d=a.value,h=d&&d.components[c];if(!h)return wE(t.default,{Component:h,route:l});const f=d.props[c],v=f?f===!0?l.params:typeof f=="function"?f(l):f:null,b=mw(h,Ae({},v,e,{onVnodeUnmounted:m=>{m.component.isUnmounted&&(d.instances[c]=null)},ref:u}));return wE(t.default,{Component:b,route:l})||b}}});function wE(r,e){if(!r)return null;const t=r(e);return t.length===1?t[0]:t}const zL=hU;function fU(r){const e=Z4(r.routes,r),t=r.parseQuery||nU,i=r.stringifyQuery||gE,n=r.history,s=Qs(),o=Qs(),a=Qs(),u=EH(vi);let l=vi;Gn&&r.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const c=wl.bind(null,A=>""+A),d=wl.bind(null,T4),h=wl.bind(null,Ro);function f(A,W){let Y,ie;return FL(A)?(Y=e.getRecordMatcher(A),ie=W):ie=A,e.addRoute(ie,Y)}function v(A){const W=e.getRecordMatcher(A);W&&e.removeRoute(W)}function p(){return e.getRoutes().map(A=>A.record)}function b(A){return!!e.getRecordMatcher(A)}function m(A,W){if(W=Ae({},W||u.value),typeof A=="string"){const q=El(t,A,W.path),F=e.resolve({path:q.path},W),k=n.createHref(q.fullPath);return Ae(q,F,{params:h(F.params),hash:Ro(q.hash),redirectedFrom:void 0,href:k})}let Y;if(A.path!=null)Y=Ae({},A,{path:El(t,A.path,W.path).path});else{const q=Ae({},A.params);for(const F in q)q[F]==null&&delete q[F];Y=Ae({},A,{params:d(q)}),W.params=d(W.params)}const ie=e.resolve(Y,W),Pe=A.hash||"";ie.params=c(h(ie.params));const $=R4(i,Ae({},A,{hash:S4(Pe),path:ie.path})),P=n.createHref($);return Ae({fullPath:$,hash:Pe,query:i===gE?sU(A.query):A.query||{}},ie,{redirectedFrom:void 0,href:P})}function g(A){return typeof A=="string"?El(t,A,u.value.path):Ae({},A)}function w(A,W){if(l!==A)return fs(8,{from:W,to:A})}function y(A){return I(A)}function S(A){return y(Ae(g(A),{replace:!0}))}function O(A){const W=A.matched[A.matched.length-1];if(W&&W.redirect){const{redirect:Y}=W;let ie=typeof Y=="function"?Y(A):Y;return typeof ie=="string"&&(ie=ie.includes("?")||ie.includes("#")?ie=g(ie):{path:ie},ie.params={}),Ae({query:A.query,hash:A.hash,params:ie.path!=null?{}:A.params},ie)}}function I(A,W){const Y=l=m(A),ie=u.value,Pe=A.state,$=A.force,P=A.replace===!0,q=O(Y);if(q)return I(Ae(g(q),{state:typeof q=="object"?Ae({},Pe,q.state):Pe,force:$,replace:P}),W||Y);const F=Y;F.redirectedFrom=W;let k;return!$&&C4(i,ie,Y)&&(k=fs(16,{to:F,from:ie}),te(ie,ie,!0,!1)),(k?Promise.resolve(k):T(F,ie)).catch(N=>Wr(N)?Wr(N,2)?N:we(N):Z(N,F,ie)).then(N=>{if(N){if(Wr(N,2))return I(Ae({replace:P},g(N.to),{state:typeof N.to=="object"?Ae({},Pe,N.to.state):Pe,force:$}),W||F)}else N=x(F,ie,!0,P,Pe);return R(F,ie,N),N})}function _(A,W){const Y=w(A,W);return Y?Promise.reject(Y):Promise.resolve()}function E(A){const W=De.values().next().value;return W&&typeof W.runWithContext=="function"?W.runWithContext(A):A()}function T(A,W){let Y;const[ie,Pe,$]=vU(A,W);Y=Sl(ie.reverse(),"beforeRouteLeave",A,W);for(const q of ie)q.leaveGuards.forEach(F=>{Y.push(yi(F,A,W))});const P=_.bind(null,A,W);return Y.push(P),_e(Y).then(()=>{Y=[];for(const q of s.list())Y.push(yi(q,A,W));return Y.push(P),_e(Y)}).then(()=>{Y=Sl(Pe,"beforeRouteUpdate",A,W);for(const q of Pe)q.updateGuards.forEach(F=>{Y.push(yi(F,A,W))});return Y.push(P),_e(Y)}).then(()=>{Y=[];for(const q of $)if(q.beforeEnter)if(wr(q.beforeEnter))for(const F of q.beforeEnter)Y.push(yi(F,A,W));else Y.push(yi(q.beforeEnter,A,W));return Y.push(P),_e(Y)}).then(()=>(A.matched.forEach(q=>q.enterCallbacks={}),Y=Sl($,"beforeRouteEnter",A,W,E),Y.push(P),_e(Y))).then(()=>{Y=[];for(const q of o.list())Y.push(yi(q,A,W));return Y.push(P),_e(Y)}).catch(q=>Wr(q,8)?q:Promise.reject(q))}function R(A,W,Y){a.list().forEach(ie=>E(()=>ie(A,W,Y)))}function x(A,W,Y,ie,Pe){const $=w(A,W);if($)return $;const P=W===vi,q=Gn?history.state:{};Y&&(ie||P?n.replace(A.fullPath,Ae({scroll:P&&q&&q.scroll},Pe)):n.push(A.fullPath,Pe)),u.value=A,te(A,W,Y,P),we()}let C;function D(){C||(C=n.listen((A,W,Y)=>{if(!nt.listening)return;const ie=m(A),Pe=O(ie);if(Pe){I(Ae(Pe,{replace:!0,force:!0}),ie).catch(vo);return}l=ie;const $=u.value;Gn&&k4(aE($.fullPath,Y.delta),$u()),T(ie,$).catch(P=>Wr(P,12)?P:Wr(P,2)?(I(Ae(g(P.to),{force:!0}),ie).then(q=>{Wr(q,20)&&!Y.delta&&Y.type===Co.pop&&n.go(-1,!1)}).catch(vo),Promise.reject()):(Y.delta&&n.go(-Y.delta,!1),Z(P,ie,$))).then(P=>{P=P||x(ie,$,!1),P&&(Y.delta&&!Wr(P,8)?n.go(-Y.delta,!1):Y.type===Co.pop&&Wr(P,20)&&n.go(-1,!1)),R(ie,$,P)}).catch(vo)}))}let j=Qs(),ee=Qs(),H;function Z(A,W,Y){we(A);const ie=ee.list();return ie.length?ie.forEach(Pe=>Pe(A,W,Y)):console.error(A),Promise.reject(A)}function fe(){return H&&u.value!==vi?Promise.resolve():new Promise((A,W)=>{j.add([A,W])})}function we(A){return H||(H=!A,D(),j.list().forEach(([W,Y])=>A?Y(A):W()),j.reset()),A}function te(A,W,Y,ie){const{scrollBehavior:Pe}=r;if(!Gn||!Pe)return Promise.resolve();const $=!Y&&B4(aE(A.fullPath,0))||(ie||!Y)&&history.state&&history.state.scroll||null;return Xj().then(()=>Pe(A,W,$)).then(P=>P&&F4(P)).catch(P=>Z(P,A,W))}const me=A=>n.go(A);let xe;const De=new Set,nt={currentRoute:u,listening:!0,addRoute:f,removeRoute:v,clearRoutes:e.clearRoutes,hasRoute:b,getRoutes:p,resolve:m,options:r,push:y,replace:S,go:me,back:()=>me(-1),forward:()=>me(1),beforeEach:s.add,beforeResolve:o.add,afterEach:a.add,onError:ee.add,isReady:fe,install(A){const W=this;A.component("RouterLink",lU),A.component("RouterView",zL),A.config.globalProperties.$router=W,Object.defineProperty(A.config.globalProperties,"$route",{enumerable:!0,get:()=>Zt(u)}),Gn&&!xe&&u.value===vi&&(xe=!0,y(n.location).catch(Pe=>{}));const Y={};for(const Pe in vi)Object.defineProperty(Y,Pe,{get:()=>u.value[Pe],enumerable:!0});A.provide(bw,W),A.provide(LL,Wj(Y)),A.provide(M_,u);const ie=A.unmount;De.add(A),A.unmount=function(){De.delete(A),De.size<1&&(l=vi,C&&C(),C=null,u.value=vi,xe=!1,H=!1),ie()}}};function _e(A){return A.reduce((W,Y)=>W.then(()=>E(Y)),Promise.resolve())}return nt}function vU(r,e){const t=[],i=[],n=[],s=Math.max(e.matched.length,r.matched.length);for(let o=0;ohs(l,a))?i.push(a):t.push(a));const u=r.matched[o];u&&(e.matched.find(l=>hs(l,u))||n.push(u))}return[t,i,n]}const pU=Or({__name:"App",setup(r){return(e,t)=>(et(),qi(Zt(zL)))}}),gU=sr({width:100,margin:1,color:{dark:"#000000",light:"f0f0f0"}}),mU=r=>{const e=yU(r);bU(e,"teams_qr_code.pdf","application/pdf;teams_qr_code.pdf")},yU=r=>{const e=atob(r),t=new Uint8Array(e.length);for(let i=0;i{const i=new Blob([r],{type:t}),n=URL.createObjectURL(i),s=document.createElement("a");s.href=n,s.download=e,s.click(),URL.revokeObjectURL(n)},EE=async()=>{try{const r=await fetch(ki("/teams"));if(!r.ok)throw new Error(`http error status: ${r.status}`);return await r.json()}catch(r){throw console.error("[apiGetTeams] error:",r),r}},_U=async r=>{try{const e=await fetch(ki("/teams"),{method:"POST",body:JSON.stringify({teams:[{name:r}]})});if(!e.ok)throw new Error(`http error status: ${e.status}`)}catch(e){throw console.error("[apiAddTeam] error:",e),e}},wU=async()=>{try{const r=await fetch(ki("/game"));if(!r.ok)throw new Error(`http error status: ${r.status}`);return await r.json()}catch(r){throw console.error("[apiGetGame] error:",r),r}},EU=async()=>{try{const r=await fetch(ki("/game/start"),{method:"POST"});if(!r.ok)throw new Error(`http error status: ${r.status}`)}catch(r){throw console.error("[apiStartGame] error:",r),r}},SU=async()=>{try{const r=await fetch(ki("/game/stop"),{method:"POST"});if(!r.ok)throw new Error(`http error status: ${r.status}`)}catch(r){throw console.error("[apiStopGame] error:",r),r}},OU=async(r,e)=>{try{const t=await fetch(ki("/teams/"+r+"/applications"),{method:"POST",body:JSON.stringify({applications:[{id:e}]})});if(!t.ok)throw new Error(`http error status: ${t.status}`)}catch(t){throw console.error("[apiGaveApplication] error:",t),t}},SE=async()=>{try{const r=await fetch(ki("/teams/pdf"));if(!r.ok)throw new Error(`http error status: ${r.status}`);const e=await r.json();mU(e.result)}catch(r){throw console.error("[apiDownloadQrCodesFile] error:",r),r}},IU=async()=>{try{const r=await fetch(ki("/graph"));if(!r.ok)throw new Error(`http error status: ${r.status}`);return await r.json()}catch(r){throw console.error("[apiDownloadQrCodesFile] error:",r),r}};function ki(r){return"http://"+window.location.host.split(":")[0]+":8090"+r}var zn={},Ol,OE;function TU(){return OE||(OE=1,Ol=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}),Ol}var Il={},pi={},IE;function _n(){if(IE)return pi;IE=1;let r;const e=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];return pi.getSymbolSize=function(i){if(!i)throw new Error('"version" cannot be null or undefined');if(i<1||i>40)throw new Error('"version" should be in range from 1 to 40');return i*4+17},pi.getSymbolTotalCodewords=function(i){return e[i]},pi.getBCHDigit=function(t){let i=0;for(;t!==0;)i++,t>>>=1;return i},pi.setToSJISFunction=function(i){if(typeof i!="function")throw new Error('"toSJISFunc" is not a valid function.');r=i},pi.isKanjiModeEnabled=function(){return typeof r<"u"},pi.toSJIS=function(i){return r(i)},pi}var Tl={},TE;function _w(){return TE||(TE=1,function(r){r.L={bit:1},r.M={bit:0},r.Q={bit:3},r.H={bit:2};function e(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return r.L;case"m":case"medium":return r.M;case"q":case"quartile":return r.Q;case"h":case"high":return r.H;default:throw new Error("Unknown EC Level: "+t)}}r.isValid=function(i){return i&&typeof i.bit<"u"&&i.bit>=0&&i.bit<4},r.from=function(i,n){if(r.isValid(i))return i;try{return e(i)}catch{return n}}}(Tl)),Tl}var $l,$E;function $U(){if($E)return $l;$E=1;function r(){this.buffer=[],this.length=0}return r.prototype={get:function(e){const t=Math.floor(e/8);return(this.buffer[t]>>>7-e%8&1)===1},put:function(e,t){for(let i=0;i>>t-i-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(e){const t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}},$l=r,$l}var Pl,PE;function PU(){if(PE)return Pl;PE=1;function r(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}return r.prototype.set=function(e,t,i,n){const s=e*this.size+t;this.data[s]=i,n&&(this.reservedBit[s]=!0)},r.prototype.get=function(e,t){return this.data[e*this.size+t]},r.prototype.xor=function(e,t,i){this.data[e*this.size+t]^=i},r.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]},Pl=r,Pl}var Rl={},RE;function RU(){return RE||(RE=1,function(r){const e=_n().getSymbolSize;r.getRowColCoords=function(i){if(i===1)return[];const n=Math.floor(i/7)+2,s=e(i),o=s===145?26:Math.ceil((s-13)/(2*n-2))*2,a=[s-7];for(let u=1;u=0&&n<=7},r.from=function(n){return r.isValid(n)?parseInt(n,10):void 0},r.getPenaltyN1=function(n){const s=n.size;let o=0,a=0,u=0,l=null,c=null;for(let d=0;d=5&&(o+=e.N1+(a-5)),l=f,a=1),f=n.get(h,d),f===c?u++:(u>=5&&(o+=e.N1+(u-5)),c=f,u=1)}a>=5&&(o+=e.N1+(a-5)),u>=5&&(o+=e.N1+(u-5))}return o},r.getPenaltyN2=function(n){const s=n.size;let o=0;for(let a=0;a=10&&(a===1488||a===93)&&o++,u=u<<1&2047|n.get(c,l),c>=10&&(u===1488||u===93)&&o++}return o*e.N3},r.getPenaltyN4=function(n){let s=0;const o=n.data.length;for(let u=0;u=0;){const o=s[0];for(let u=0;u0){const a=new Uint8Array(this.degree);return a.set(s,o),a}return s},Dl=e,Dl}var Al={},Ml={},Nl={},NE;function WL(){return NE||(NE=1,Nl.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}),Nl}var Pr={},FE;function UL(){if(FE)return Pr;FE=1;const r="[0-9]+",e="[A-Z $%*+\\-./:]+";let t="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";t=t.replace(/u/g,"\\u");const i="(?:(?![A-Z0-9 $%*+\\-./:]|"+t+`)(?:.|[\r -]))+`;Pr.KANJI=new RegExp(t,"g"),Pr.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),Pr.BYTE=new RegExp(i,"g"),Pr.NUMERIC=new RegExp(r,"g"),Pr.ALPHANUMERIC=new RegExp(e,"g");const n=new RegExp("^"+t+"$"),s=new RegExp("^"+r+"$"),o=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");return Pr.testKanji=function(u){return n.test(u)},Pr.testNumeric=function(u){return s.test(u)},Pr.testAlphanumeric=function(u){return o.test(u)},Pr}var kE;function wn(){return kE||(kE=1,function(r){const e=WL(),t=UL();r.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},r.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},r.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},r.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},r.MIXED={bit:-1},r.getCharCountIndicator=function(s,o){if(!s.ccBits)throw new Error("Invalid mode: "+s);if(!e.isValid(o))throw new Error("Invalid version: "+o);return o>=1&&o<10?s.ccBits[0]:o<27?s.ccBits[1]:s.ccBits[2]},r.getBestModeForData=function(s){return t.testNumeric(s)?r.NUMERIC:t.testAlphanumeric(s)?r.ALPHANUMERIC:t.testKanji(s)?r.KANJI:r.BYTE},r.toString=function(s){if(s&&s.id)return s.id;throw new Error("Invalid mode")},r.isValid=function(s){return s&&s.bit&&s.ccBits};function i(n){if(typeof n!="string")throw new Error("Param is not a string");switch(n.toLowerCase()){case"numeric":return r.NUMERIC;case"alphanumeric":return r.ALPHANUMERIC;case"kanji":return r.KANJI;case"byte":return r.BYTE;default:throw new Error("Unknown mode: "+n)}}r.from=function(s,o){if(r.isValid(s))return s;try{return i(s)}catch{return o}}}(Ml)),Ml}var BE;function MU(){return BE||(BE=1,function(r){const e=_n(),t=HL(),i=_w(),n=wn(),s=WL(),o=7973,a=e.getBCHDigit(o);function u(h,f,v){for(let p=1;p<=40;p++)if(f<=r.getCapacity(p,v,h))return p}function l(h,f){return n.getCharCountIndicator(h,f)+4}function c(h,f){let v=0;return h.forEach(function(p){const b=l(p.mode,f);v+=b+p.getBitsLength()}),v}function d(h,f){for(let v=1;v<=40;v++)if(c(h,v)<=r.getCapacity(v,f,n.MIXED))return v}r.from=function(f,v){return s.isValid(f)?parseInt(f,10):v},r.getCapacity=function(f,v,p){if(!s.isValid(f))throw new Error("Invalid QR Code version");typeof p>"u"&&(p=n.BYTE);const b=e.getSymbolTotalCodewords(f),m=t.getTotalCodewordsCount(f,v),g=(b-m)*8;if(p===n.MIXED)return g;const w=g-l(p,f);switch(p){case n.NUMERIC:return Math.floor(w/10*3);case n.ALPHANUMERIC:return Math.floor(w/11*2);case n.KANJI:return Math.floor(w/13);case n.BYTE:default:return Math.floor(w/8)}},r.getBestVersionForData=function(f,v){let p;const b=i.from(v,i.M);if(Array.isArray(f)){if(f.length>1)return d(f,b);if(f.length===0)return 1;p=f[0]}else p=f;return u(p.mode,p.getLength(),b)},r.getEncodedBits=function(f){if(!s.isValid(f)||f<7)throw new Error("Invalid QR Code version");let v=f<<12;for(;e.getBCHDigit(v)-a>=0;)v^=o<=0;)u^=e<0&&(s=this.data.substr(n),o=parseInt(s,10),i.put(o,a*3+1))},Bl=e,Bl}var jl,zE;function kU(){if(zE)return jl;zE=1;const r=wn(),e=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function t(i){this.mode=r.ALPHANUMERIC,this.data=i}return t.getBitsLength=function(n){return 11*Math.floor(n/2)+6*(n%2)},t.prototype.getLength=function(){return this.data.length},t.prototype.getBitsLength=function(){return t.getBitsLength(this.data.length)},t.prototype.write=function(n){let s;for(s=0;s+2<=this.data.length;s+=2){let o=e.indexOf(this.data[s])*45;o+=e.indexOf(this.data[s+1]),n.put(o,11)}this.data.length%2&&n.put(e.indexOf(this.data[s]),6)},jl=t,jl}var Ll,HE;function BU(){if(HE)return Ll;HE=1;const r=wn();function e(t){this.mode=r.BYTE,typeof t=="string"?this.data=new TextEncoder().encode(t):this.data=new Uint8Array(t)}return e.getBitsLength=function(i){return i*8},e.prototype.getLength=function(){return this.data.length},e.prototype.getBitsLength=function(){return e.getBitsLength(this.data.length)},e.prototype.write=function(t){for(let i=0,n=this.data.length;i=33088&&s<=40956)s-=33088;else if(s>=57408&&s<=60351)s-=49472;else throw new Error("Invalid SJIS character: "+this.data[n]+` -Make sure your charset is UTF-8`);s=(s>>>8&255)*192+(s&255),i.put(s,13)}},zl=t,zl}var Hl={exports:{}},UE;function LU(){return UE||(UE=1,function(r){var e={single_source_shortest_paths:function(t,i,n){var s={},o={};o[i]=0;var a=e.PriorityQueue.make();a.push(i,0);for(var u,l,c,d,h,f,v,p,b;!a.empty();){u=a.pop(),l=u.value,d=u.cost,h=t[l]||{};for(c in h)h.hasOwnProperty(c)&&(f=h[c],v=d+f,p=o[c],b=typeof o[c]>"u",(b||p>v)&&(o[c]=v,a.push(c,v),s[c]=l))}if(typeof n<"u"&&typeof o[n]>"u"){var m=["Could not find a path from ",i," to ",n,"."].join("");throw new Error(m)}return s},extract_shortest_path_from_predecessor_list:function(t,i){for(var n=[],s=i;s;)n.push(s),t[s],s=t[s];return n.reverse(),n},find_path:function(t,i,n){var s=e.single_source_shortest_paths(t,i,n);return e.extract_shortest_path_from_predecessor_list(s,n)},PriorityQueue:{make:function(t){var i=e.PriorityQueue,n={},s;t=t||{};for(s in i)i.hasOwnProperty(s)&&(n[s]=i[s]);return n.queue=[],n.sorter=t.sorter||i.default_sorter,n},default_sorter:function(t,i){return t.cost-i.cost},push:function(t,i){var n={value:t,cost:i};this.queue.push(n),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};r.exports=e}(Hl)),Hl.exports}var VE;function zU(){return VE||(VE=1,function(r){const e=wn(),t=FU(),i=kU(),n=BU(),s=jU(),o=UL(),a=_n(),u=LU();function l(m){return unescape(encodeURIComponent(m)).length}function c(m,g,w){const y=[];let S;for(;(S=m.exec(w))!==null;)y.push({data:S[0],index:S.index,mode:g,length:S[0].length});return y}function d(m){const g=c(o.NUMERIC,e.NUMERIC,m),w=c(o.ALPHANUMERIC,e.ALPHANUMERIC,m);let y,S;return a.isKanjiModeEnabled()?(y=c(o.BYTE,e.BYTE,m),S=c(o.KANJI,e.KANJI,m)):(y=c(o.BYTE_KANJI,e.BYTE,m),S=[]),g.concat(w,y,S).sort(function(I,_){return I.index-_.index}).map(function(I){return{data:I.data,mode:I.mode,length:I.length}})}function h(m,g){switch(g){case e.NUMERIC:return t.getBitsLength(m);case e.ALPHANUMERIC:return i.getBitsLength(m);case e.KANJI:return s.getBitsLength(m);case e.BYTE:return n.getBitsLength(m)}}function f(m){return m.reduce(function(g,w){const y=g.length-1>=0?g[g.length-1]:null;return y&&y.mode===w.mode?(g[g.length-1].data+=w.data,g):(g.push(w),g)},[])}function v(m){const g=[];for(let w=0;w=0&&C<=6&&(D===0||D===6)||D>=0&&D<=6&&(C===0||C===6)||C>=2&&C<=4&&D>=2&&D<=4?O.set(R+C,x+D,!0,!0):O.set(R+C,x+D,!1,!0))}}function v(O){const I=O.size;for(let _=8;_>C&1)===1,O.set(T,R,x,!0),O.set(R,T,x,!0)}function m(O,I,_){const E=O.size,T=c.getEncodedBits(I,_);let R,x;for(R=0;R<15;R++)x=(T>>R&1)===1,R<6?O.set(R,8,x,!0):R<8?O.set(R+1,8,x,!0):O.set(E-15+R,8,x,!0),R<8?O.set(8,E-R-1,x,!0):R<9?O.set(8,15-R-1+1,x,!0):O.set(8,15-R-1,x,!0);O.set(E-8,8,1,!0)}function g(O,I){const _=O.size;let E=-1,T=_-1,R=7,x=0;for(let C=_-1;C>0;C-=2)for(C===6&&C--;;){for(let D=0;D<2;D++)if(!O.isReserved(T,C-D)){let j=!1;x>>R&1)===1),O.set(T,C-D,j),R--,R===-1&&(x++,R=7)}if(T+=E,T<0||_<=T){T-=E,E=-E;break}}}function w(O,I,_){const E=new t;_.forEach(function(D){E.put(D.mode.bit,4),E.put(D.getLength(),d.getCharCountIndicator(D.mode,O)),D.write(E)});const T=r.getSymbolTotalCodewords(O),R=a.getTotalCodewordsCount(O,I),x=(T-R)*8;for(E.getLengthInBits()+4<=x&&E.put(0,4);E.getLengthInBits()%8!==0;)E.putBit(0);const C=(x-E.getLengthInBits())/8;for(let D=0;D{},wr=Array.isArray,qL=/#/g,v4=/&/g,p4=/\//g,g4=/=/g,m4=/\?/g,DL=/\+/g,y4=/%5B/g,b4=/%5D/g,AL=/%5E/g,_4=/%60/g,ML=/%7B/g,w4=/%7C/g,NL=/%7D/g,E4=/%20/g;function yw(r){return encodeURI(""+r).replace(w4,"|").replace(y4,"[").replace(b4,"]")}function S4(r){return yw(r).replace(ML,"{").replace(NL,"}").replace(AL,"^")}function D_(r){return yw(r).replace(DL,"%2B").replace(E4,"+").replace(qL,"%23").replace(v4,"%26").replace(_4,"`").replace(ML,"{").replace(NL,"}").replace(AL,"^")}function O4(r){return D_(r).replace(g4,"%3D")}function I4(r){return yw(r).replace(qL,"%23").replace(m4,"%3F")}function T4(r){return r==null?"":I4(r).replace(p4,"%2F")}function Ro(r){try{return decodeURIComponent(""+r)}catch{}return""+r}const $4=/\/$/,P4=r=>r.replace($4,"");function El(r,e,t="/"){let i,n={},s="",o="";const a=e.indexOf("#");let u=e.indexOf("?");return a=0&&(u=-1),u>-1&&(i=e.slice(0,u),s=e.slice(u+1,a>-1?a:e.length),n=r(s)),a>-1&&(i=i||e.slice(0,a),o=e.slice(a,e.length)),i=q4(i??e,t),{fullPath:i+(s&&"?")+s+o,path:i,query:n,hash:Ro(o)}}function R4(r,e){const t=e.query?r(e.query):"";return e.path+(t&&"?")+t+(e.hash||"")}function sE(r,e){return!e||!r.toLowerCase().startsWith(e.toLowerCase())?r:r.slice(e.length)||"/"}function C4(r,e,t){const i=e.matched.length-1,n=t.matched.length-1;return i>-1&&i===n&&hs(e.matched[i],t.matched[n])&&FL(e.params,t.params)&&r(e.query)===r(t.query)&&e.hash===t.hash}function hs(r,e){return(r.aliasOf||r)===(e.aliasOf||e)}function FL(r,e){if(Object.keys(r).length!==Object.keys(e).length)return!1;for(const t in r)if(!x4(r[t],e[t]))return!1;return!0}function x4(r,e){return wr(r)?oE(r,e):wr(e)?oE(e,r):r===e}function oE(r,e){return wr(e)?r.length===e.length&&r.every((t,i)=>t===e[i]):r.length===1&&r[0]===e}function q4(r,e){if(r.startsWith("/"))return r;if(!r)return e;const t=e.split("/"),i=r.split("/"),n=i[i.length-1];(n===".."||n===".")&&i.push("");let s=t.length-1,o,a;for(o=0;o1&&s--;else break;return t.slice(0,s).join("/")+"/"+i.slice(o).join("/")}const pi={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var Co;(function(r){r.pop="pop",r.push="push"})(Co||(Co={}));var po;(function(r){r.back="back",r.forward="forward",r.unknown=""})(po||(po={}));function D4(r){if(!r)if(Gn){const e=document.querySelector("base");r=e&&e.getAttribute("href")||"/",r=r.replace(/^\w+:\/\/[^\/]+/,"")}else r="/";return r[0]!=="/"&&r[0]!=="#"&&(r="/"+r),P4(r)}const A4=/^[^#]+#/;function M4(r,e){return r.replace(A4,"#")+e}function N4(r,e){const t=document.documentElement.getBoundingClientRect(),i=r.getBoundingClientRect();return{behavior:e.behavior,left:i.left-t.left-(e.left||0),top:i.top-t.top-(e.top||0)}}const $u=()=>({left:window.scrollX,top:window.scrollY});function F4(r){let e;if("el"in r){const t=r.el,i=typeof t=="string"&&t.startsWith("#"),n=typeof t=="string"?i?document.getElementById(t.slice(1)):document.querySelector(t):t;if(!n)return;e=N4(n,r)}else e=r;"scrollBehavior"in document.documentElement.style?window.scrollTo(e):window.scrollTo(e.left!=null?e.left:window.scrollX,e.top!=null?e.top:window.scrollY)}function aE(r,e){return(history.state?history.state.position-e:-1)+r}const A_=new Map;function k4(r,e){A_.set(r,e)}function B4(r){const e=A_.get(r);return A_.delete(r),e}let j4=()=>location.protocol+"//"+location.host;function kL(r,e){const{pathname:t,search:i,hash:n}=e,s=r.indexOf("#");if(s>-1){let a=n.includes(r.slice(s))?r.slice(s).length:1,u=n.slice(a);return u[0]!=="/"&&(u="/"+u),sE(u,"")}return sE(t,r)+i+n}function L4(r,e,t,i){let n=[],s=[],o=null;const a=({state:h})=>{const f=kL(r,location),v=t.value,p=e.value;let b=0;if(h){if(t.value=f,e.value=h,o&&o===v){o=null;return}b=p?h.position-p.position:0}else i(f);n.forEach(m=>{m(t.value,v,{delta:b,type:Co.pop,direction:b?b>0?po.forward:po.back:po.unknown})})};function u(){o=t.value}function l(h){n.push(h);const f=()=>{const v=n.indexOf(h);v>-1&&n.splice(v,1)};return s.push(f),f}function c(){const{history:h}=window;h.state&&h.replaceState(Ae({},h.state,{scroll:$u()}),"")}function d(){for(const h of s)h();s=[],window.removeEventListener("popstate",a),window.removeEventListener("beforeunload",c)}return window.addEventListener("popstate",a),window.addEventListener("beforeunload",c,{passive:!0}),{pauseListeners:u,listen:l,destroy:d}}function uE(r,e,t,i=!1,n=!1){return{back:r,current:e,forward:t,replaced:i,position:window.history.length,scroll:n?$u():null}}function z4(r){const{history:e,location:t}=window,i={value:kL(r,t)},n={value:e.state};n.value||s(i.value,{back:null,current:i.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0);function s(u,l,c){const d=r.indexOf("#"),h=d>-1?(t.host&&document.querySelector("base")?r:r.slice(d))+u:j4()+r+u;try{e[c?"replaceState":"pushState"](l,"",h),n.value=l}catch(f){console.error(f),t[c?"replace":"assign"](h)}}function o(u,l){const c=Ae({},e.state,uE(n.value.back,u,n.value.forward,!0),l,{position:n.value.position});s(u,c,!0),i.value=u}function a(u,l){const c=Ae({},n.value,e.state,{forward:u,scroll:$u()});s(c.current,c,!0);const d=Ae({},uE(i.value,u,null),{position:c.position+1},l);s(u,d,!1),i.value=u}return{location:i,state:n,push:a,replace:o}}function H4(r){r=D4(r);const e=z4(r),t=L4(r,e.state,e.location,e.replace);function i(s,o=!0){o||t.pauseListeners(),history.go(s)}const n=Ae({location:"",base:r,go:i,createHref:M4.bind(null,r)},e,t);return Object.defineProperty(n,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(n,"state",{enumerable:!0,get:()=>e.state.value}),n}function W4(r){return typeof r=="string"||r&&typeof r=="object"}function BL(r){return typeof r=="string"||typeof r=="symbol"}const jL=Symbol("");var lE;(function(r){r[r.aborted=4]="aborted",r[r.cancelled=8]="cancelled",r[r.duplicated=16]="duplicated"})(lE||(lE={}));function fs(r,e){return Ae(new Error,{type:r,[jL]:!0},e)}function Wr(r,e){return r instanceof Error&&jL in r&&(e==null||!!(r.type&e))}const cE="[^/]+?",U4={sensitive:!1,strict:!1,start:!0,end:!0},V4=/[.+*?^${}()[\]/\\]/g;function K4(r,e){const t=Ae({},U4,e),i=[];let n=t.start?"^":"";const s=[];for(const l of r){const c=l.length?[]:[90];t.strict&&!l.length&&(n+="/");for(let d=0;de.length?e.length===1&&e[0]===80?1:-1:0}function LL(r,e){let t=0;const i=r.score,n=e.score;for(;t0&&e[e.length-1]<0}const Y4={type:0,value:""},X4=/[a-zA-Z0-9_]/;function J4(r){if(!r)return[[]];if(r==="/")return[[Y4]];if(!r.startsWith("/"))throw new Error(`Invalid path "${r}"`);function e(f){throw new Error(`ERR (${t})/"${l}": ${f}`)}let t=0,i=t;const n=[];let s;function o(){s&&n.push(s),s=[]}let a=0,u,l="",c="";function d(){l&&(t===0?s.push({type:0,value:l}):t===1||t===2||t===3?(s.length>1&&(u==="*"||u==="+")&&e(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),s.push({type:1,value:l,regexp:c,repeatable:u==="*"||u==="+",optional:u==="*"||u==="?"})):e("Invalid state to consume buffer"),l="")}function h(){l+=u}for(;a{o(w)}:vo}function o(d){if(BL(d)){const h=i.get(d);h&&(i.delete(d),t.splice(t.indexOf(h),1),h.children.forEach(o),h.alias.forEach(o))}else{const h=t.indexOf(d);h>-1&&(t.splice(h,1),d.record.name&&i.delete(d.record.name),d.children.forEach(o),d.alias.forEach(o))}}function a(){return t}function u(d){const h=rU(d,t);t.splice(h,0,d),d.record.name&&!vE(d)&&i.set(d.record.name,d)}function l(d,h){let f,v={},p,b;if("name"in d&&d.name){if(f=i.get(d.name),!f)throw fs(1,{location:d});b=f.record.name,v=Ae(hE(h.params,f.keys.filter(w=>!w.optional).concat(f.parent?f.parent.keys.filter(w=>w.optional):[]).map(w=>w.name)),d.params&&hE(d.params,f.keys.map(w=>w.name))),p=f.stringify(v)}else if(d.path!=null)p=d.path,f=t.find(w=>w.re.test(p)),f&&(v=f.parse(p),b=f.record.name);else{if(f=h.name?i.get(h.name):t.find(w=>w.re.test(h.path)),!f)throw fs(1,{location:d,currentLocation:h});b=f.record.name,v=Ae({},h.params,d.params),p=f.stringify(v)}const m=[];let g=f;for(;g;)m.unshift(g.record),g=g.parent;return{name:b,path:p,params:v,matched:m,meta:tU(m)}}r.forEach(d=>s(d));function c(){t.length=0,i.clear()}return{addRoute:s,resolve:l,removeRoute:o,clearRoutes:c,getRoutes:a,getRecordMatcher:n}}function hE(r,e){const t={};for(const i of e)i in r&&(t[i]=r[i]);return t}function fE(r){const e={path:r.path,redirect:r.redirect,name:r.name,meta:r.meta||{},aliasOf:r.aliasOf,beforeEnter:r.beforeEnter,props:eU(r),children:r.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in r?r.components||null:r.component&&{default:r.component}};return Object.defineProperty(e,"mods",{value:{}}),e}function eU(r){const e={},t=r.props||!1;if("component"in r)e.default=t;else for(const i in r.components)e[i]=typeof t=="object"?t[i]:t;return e}function vE(r){for(;r;){if(r.record.aliasOf)return!0;r=r.parent}return!1}function tU(r){return r.reduce((e,t)=>Ae(e,t.meta),{})}function pE(r,e){const t={};for(const i in r)t[i]=i in e?e[i]:r[i];return t}function rU(r,e){let t=0,i=e.length;for(;t!==i;){const s=t+i>>1;LL(r,e[s])<0?i=s:t=s+1}const n=iU(r);return n&&(i=e.lastIndexOf(n,i-1)),i}function iU(r){let e=r;for(;e=e.parent;)if(zL(e)&&LL(r,e)===0)return e}function zL({record:r}){return!!(r.name||r.components&&Object.keys(r.components).length||r.redirect)}function nU(r){const e={};if(r===""||r==="?")return e;const i=(r[0]==="?"?r.slice(1):r).split("&");for(let n=0;ns&&D_(s)):[i&&D_(i)]).forEach(s=>{s!==void 0&&(e+=(e.length?"&":"")+t,s!=null&&(e+="="+s))})}return e}function sU(r){const e={};for(const t in r){const i=r[t];i!==void 0&&(e[t]=wr(i)?i.map(n=>n==null?null:""+n):i==null?i:""+i)}return e}const oU=Symbol(""),mE=Symbol(""),bw=Symbol(""),HL=Symbol(""),M_=Symbol("");function Qs(){let r=[];function e(i){return r.push(i),()=>{const n=r.indexOf(i);n>-1&&r.splice(n,1)}}function t(){r=[]}return{add:e,list:()=>r.slice(),reset:t}}function bi(r,e,t,i,n,s=o=>o()){const o=i&&(i.enterCallbacks[n]=i.enterCallbacks[n]||[]);return()=>new Promise((a,u)=>{const l=h=>{h===!1?u(fs(4,{from:t,to:e})):h instanceof Error?u(h):W4(h)?u(fs(2,{from:e,to:h})):(o&&i.enterCallbacks[n]===o&&typeof h=="function"&&o.push(h),a())},c=s(()=>r.call(i&&i.instances[n],e,t,l));let d=Promise.resolve(c);r.length<3&&(d=d.then(l)),d.catch(h=>u(h))})}function Sl(r,e,t,i,n=s=>s()){const s=[];for(const o of r)for(const a in o.components){let u=o.components[a];if(!(e!=="beforeRouteEnter"&&!o.instances[a]))if(xL(u)){const c=(u.__vccOpts||u)[e];c&&s.push(bi(c,t,i,o,a,n))}else{let l=u();s.push(()=>l.then(c=>{if(!c)throw new Error(`Couldn't resolve component "${a}" at "${o.path}"`);const d=f4(c)?c.default:c;o.mods[a]=c,o.components[a]=d;const f=(d.__vccOpts||d)[e];return f&&bi(f,t,i,o,a,n)()}))}}return s}function yE(r){const e=Xr(bw),t=Xr(HL),i=br(()=>{const u=er(r.to);return e.resolve(u)}),n=br(()=>{const{matched:u}=i.value,{length:l}=u,c=u[l-1],d=t.matched;if(!c||!d.length)return-1;const h=d.findIndex(hs.bind(null,c));if(h>-1)return h;const f=bE(u[l-2]);return l>1&&bE(c)===f&&d[d.length-1].path!==f?d.findIndex(hs.bind(null,u[l-2])):h}),s=br(()=>n.value>-1&&dU(t.params,i.value.params)),o=br(()=>n.value>-1&&n.value===t.matched.length-1&&FL(t.params,i.value.params));function a(u={}){if(cU(u)){const l=e[er(r.replace)?"replace":"push"](er(r.to)).catch(vo);return r.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>l),l}return Promise.resolve()}return{route:i,href:br(()=>i.value.href),isActive:s,isExactActive:o,navigate:a}}function aU(r){return r.length===1?r[0]:r}const uU=Or({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:yE,setup(r,{slots:e}){const t=_u(yE(r)),{options:i}=Xr(bw),n=br(()=>({[_E(r.activeClass,i.linkActiveClass,"router-link-active")]:t.isActive,[_E(r.exactActiveClass,i.linkExactActiveClass,"router-link-exact-active")]:t.isExactActive}));return()=>{const s=e.default&&aU(e.default(t));return r.custom?s:mw("a",{"aria-current":t.isExactActive?r.ariaCurrentValue:null,href:t.href,onClick:t.navigate,class:n.value},s)}}}),lU=uU;function cU(r){if(!(r.metaKey||r.altKey||r.ctrlKey||r.shiftKey)&&!r.defaultPrevented&&!(r.button!==void 0&&r.button!==0)){if(r.currentTarget&&r.currentTarget.getAttribute){const e=r.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return r.preventDefault&&r.preventDefault(),!0}}function dU(r,e){for(const t in e){const i=e[t],n=r[t];if(typeof i=="string"){if(i!==n)return!1}else if(!wr(n)||n.length!==i.length||i.some((s,o)=>s!==n[o]))return!1}return!0}function bE(r){return r?r.aliasOf?r.aliasOf.path:r.path:""}const _E=(r,e,t)=>r??e??t,hU=Or({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(r,{attrs:e,slots:t}){const i=Xr(M_),n=br(()=>r.route||i.value),s=Xr(mE,0),o=br(()=>{let l=er(s);const{matched:c}=n.value;let d;for(;(d=c[l])&&!d.components;)l++;return l}),a=br(()=>n.value.matched[o.value]);ja(mE,br(()=>o.value+1)),ja(oU,a),ja(M_,n);const u=or();return La(()=>[u.value,a.value,r.name],([l,c,d],[h,f,v])=>{c&&(c.instances[d]=l,f&&f!==c&&l&&l===h&&(c.leaveGuards.size||(c.leaveGuards=f.leaveGuards),c.updateGuards.size||(c.updateGuards=f.updateGuards))),l&&c&&(!f||!hs(c,f)||!h)&&(c.enterCallbacks[d]||[]).forEach(p=>p(l))},{flush:"post"}),()=>{const l=n.value,c=r.name,d=a.value,h=d&&d.components[c];if(!h)return wE(t.default,{Component:h,route:l});const f=d.props[c],v=f?f===!0?l.params:typeof f=="function"?f(l):f:null,b=mw(h,Ae({},v,e,{onVnodeUnmounted:m=>{m.component.isUnmounted&&(d.instances[c]=null)},ref:u}));return wE(t.default,{Component:b,route:l})||b}}});function wE(r,e){if(!r)return null;const t=r(e);return t.length===1?t[0]:t}const WL=hU;function fU(r){const e=Z4(r.routes,r),t=r.parseQuery||nU,i=r.stringifyQuery||gE,n=r.history,s=Qs(),o=Qs(),a=Qs(),u=OH(pi);let l=pi;Gn&&r.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const c=wl.bind(null,A=>""+A),d=wl.bind(null,T4),h=wl.bind(null,Ro);function f(A,W){let Y,ie;return BL(A)?(Y=e.getRecordMatcher(A),ie=W):ie=A,e.addRoute(ie,Y)}function v(A){const W=e.getRecordMatcher(A);W&&e.removeRoute(W)}function p(){return e.getRoutes().map(A=>A.record)}function b(A){return!!e.getRecordMatcher(A)}function m(A,W){if(W=Ae({},W||u.value),typeof A=="string"){const q=El(t,A,W.path),F=e.resolve({path:q.path},W),k=n.createHref(q.fullPath);return Ae(q,F,{params:h(F.params),hash:Ro(q.hash),redirectedFrom:void 0,href:k})}let Y;if(A.path!=null)Y=Ae({},A,{path:El(t,A.path,W.path).path});else{const q=Ae({},A.params);for(const F in q)q[F]==null&&delete q[F];Y=Ae({},A,{params:d(q)}),W.params=d(W.params)}const ie=e.resolve(Y,W),Pe=A.hash||"";ie.params=c(h(ie.params));const $=R4(i,Ae({},A,{hash:S4(Pe),path:ie.path})),P=n.createHref($);return Ae({fullPath:$,hash:Pe,query:i===gE?sU(A.query):A.query||{}},ie,{redirectedFrom:void 0,href:P})}function g(A){return typeof A=="string"?El(t,A,u.value.path):Ae({},A)}function w(A,W){if(l!==A)return fs(8,{from:W,to:A})}function y(A){return I(A)}function S(A){return y(Ae(g(A),{replace:!0}))}function O(A){const W=A.matched[A.matched.length-1];if(W&&W.redirect){const{redirect:Y}=W;let ie=typeof Y=="function"?Y(A):Y;return typeof ie=="string"&&(ie=ie.includes("?")||ie.includes("#")?ie=g(ie):{path:ie},ie.params={}),Ae({query:A.query,hash:A.hash,params:ie.path!=null?{}:A.params},ie)}}function I(A,W){const Y=l=m(A),ie=u.value,Pe=A.state,$=A.force,P=A.replace===!0,q=O(Y);if(q)return I(Ae(g(q),{state:typeof q=="object"?Ae({},Pe,q.state):Pe,force:$,replace:P}),W||Y);const F=Y;F.redirectedFrom=W;let k;return!$&&C4(i,ie,Y)&&(k=fs(16,{to:F,from:ie}),te(ie,ie,!0,!1)),(k?Promise.resolve(k):T(F,ie)).catch(N=>Wr(N)?Wr(N,2)?N:we(N):Z(N,F,ie)).then(N=>{if(N){if(Wr(N,2))return I(Ae({replace:P},g(N.to),{state:typeof N.to=="object"?Ae({},Pe,N.to.state):Pe,force:$}),W||F)}else N=x(F,ie,!0,P,Pe);return R(F,ie,N),N})}function _(A,W){const Y=w(A,W);return Y?Promise.reject(Y):Promise.resolve()}function E(A){const W=De.values().next().value;return W&&typeof W.runWithContext=="function"?W.runWithContext(A):A()}function T(A,W){let Y;const[ie,Pe,$]=vU(A,W);Y=Sl(ie.reverse(),"beforeRouteLeave",A,W);for(const q of ie)q.leaveGuards.forEach(F=>{Y.push(bi(F,A,W))});const P=_.bind(null,A,W);return Y.push(P),_e(Y).then(()=>{Y=[];for(const q of s.list())Y.push(bi(q,A,W));return Y.push(P),_e(Y)}).then(()=>{Y=Sl(Pe,"beforeRouteUpdate",A,W);for(const q of Pe)q.updateGuards.forEach(F=>{Y.push(bi(F,A,W))});return Y.push(P),_e(Y)}).then(()=>{Y=[];for(const q of $)if(q.beforeEnter)if(wr(q.beforeEnter))for(const F of q.beforeEnter)Y.push(bi(F,A,W));else Y.push(bi(q.beforeEnter,A,W));return Y.push(P),_e(Y)}).then(()=>(A.matched.forEach(q=>q.enterCallbacks={}),Y=Sl($,"beforeRouteEnter",A,W,E),Y.push(P),_e(Y))).then(()=>{Y=[];for(const q of o.list())Y.push(bi(q,A,W));return Y.push(P),_e(Y)}).catch(q=>Wr(q,8)?q:Promise.reject(q))}function R(A,W,Y){a.list().forEach(ie=>E(()=>ie(A,W,Y)))}function x(A,W,Y,ie,Pe){const $=w(A,W);if($)return $;const P=W===pi,q=Gn?history.state:{};Y&&(ie||P?n.replace(A.fullPath,Ae({scroll:P&&q&&q.scroll},Pe)):n.push(A.fullPath,Pe)),u.value=A,te(A,W,Y,P),we()}let C;function D(){C||(C=n.listen((A,W,Y)=>{if(!nt.listening)return;const ie=m(A),Pe=O(ie);if(Pe){I(Ae(Pe,{replace:!0,force:!0}),ie).catch(vo);return}l=ie;const $=u.value;Gn&&k4(aE($.fullPath,Y.delta),$u()),T(ie,$).catch(P=>Wr(P,12)?P:Wr(P,2)?(I(Ae(g(P.to),{force:!0}),ie).then(q=>{Wr(q,20)&&!Y.delta&&Y.type===Co.pop&&n.go(-1,!1)}).catch(vo),Promise.reject()):(Y.delta&&n.go(-Y.delta,!1),Z(P,ie,$))).then(P=>{P=P||x(ie,$,!1),P&&(Y.delta&&!Wr(P,8)?n.go(-Y.delta,!1):Y.type===Co.pop&&Wr(P,20)&&n.go(-1,!1)),R(ie,$,P)}).catch(vo)}))}let j=Qs(),ee=Qs(),H;function Z(A,W,Y){we(A);const ie=ee.list();return ie.length?ie.forEach(Pe=>Pe(A,W,Y)):console.error(A),Promise.reject(A)}function ve(){return H&&u.value!==pi?Promise.resolve():new Promise((A,W)=>{j.add([A,W])})}function we(A){return H||(H=!A,D(),j.list().forEach(([W,Y])=>A?Y(A):W()),j.reset()),A}function te(A,W,Y,ie){const{scrollBehavior:Pe}=r;if(!Gn||!Pe)return Promise.resolve();const $=!Y&&B4(aE(A.fullPath,0))||(ie||!Y)&&history.state&&history.state.scroll||null;return Xj().then(()=>Pe(A,W,$)).then(P=>P&&F4(P)).catch(P=>Z(P,A,W))}const me=A=>n.go(A);let xe;const De=new Set,nt={currentRoute:u,listening:!0,addRoute:f,removeRoute:v,clearRoutes:e.clearRoutes,hasRoute:b,getRoutes:p,resolve:m,options:r,push:y,replace:S,go:me,back:()=>me(-1),forward:()=>me(1),beforeEach:s.add,beforeResolve:o.add,afterEach:a.add,onError:ee.add,isReady:ve,install(A){const W=this;A.component("RouterLink",lU),A.component("RouterView",WL),A.config.globalProperties.$router=W,Object.defineProperty(A.config.globalProperties,"$route",{enumerable:!0,get:()=>er(u)}),Gn&&!xe&&u.value===pi&&(xe=!0,y(n.location).catch(Pe=>{}));const Y={};for(const Pe in pi)Object.defineProperty(Y,Pe,{get:()=>u.value[Pe],enumerable:!0});A.provide(bw,W),A.provide(HL,Wj(Y)),A.provide(M_,u);const ie=A.unmount;De.add(A),A.unmount=function(){De.delete(A),De.size<1&&(l=pi,C&&C(),C=null,u.value=pi,xe=!1,H=!1),ie()}}};function _e(A){return A.reduce((W,Y)=>W.then(()=>E(Y)),Promise.resolve())}return nt}function vU(r,e){const t=[],i=[],n=[],s=Math.max(e.matched.length,r.matched.length);for(let o=0;ohs(l,a))?i.push(a):t.push(a));const u=r.matched[o];u&&(e.matched.find(l=>hs(l,u))||n.push(u))}return[t,i,n]}const pU=Or({__name:"App",setup(r){return(e,t)=>(et(),Di(er(WL)))}}),gU=or({width:100,margin:1,color:{dark:"#000000",light:"f0f0f0"}}),mU=r=>{const e=yU(r);bU(e,"teams_qr_code.pdf","application/pdf;teams_qr_code.pdf")},yU=r=>{const e=atob(r),t=new Uint8Array(e.length);for(let i=0;i{const i=new Blob([r],{type:t}),n=URL.createObjectURL(i),s=document.createElement("a");s.href=n,s.download=e,s.click(),URL.revokeObjectURL(n)},EE=async()=>{try{const r=await fetch(ai("/teams"));if(!r.ok)throw new Error(`http error status: ${r.status}`);return await r.json()}catch(r){throw console.error("[apiGetTeams] error:",r),r}},_U=async r=>{try{const e=await fetch(ai("/teams"),{method:"POST",body:JSON.stringify({teams:[{name:r}]})});if(!e.ok)throw new Error(`http error status: ${e.status}`)}catch(e){throw console.error("[apiAddTeam] error:",e),e}},wU=async()=>{try{const r=await fetch(ai("/game"));if(!r.ok)throw new Error(`http error status: ${r.status}`);return await r.json()}catch(r){throw console.error("[apiGetGame] error:",r),r}},EU=async()=>{try{const r=await fetch(ai("/game/start"),{method:"POST"});if(!r.ok)throw new Error(`http error status: ${r.status}`)}catch(r){throw console.error("[apiStartGame] error:",r),r}},SU=async()=>{try{const r=await fetch(ai("/game/stop"),{method:"POST"});if(!r.ok)throw new Error(`http error status: ${r.status}`)}catch(r){throw console.error("[apiStopGame] error:",r),r}},OU=async(r,e)=>{try{const t=await fetch(ai("/teams/"+r+"/applications"),{method:"POST",body:JSON.stringify({applications:[{id:e}]})});if(!t.ok)throw new Error(`http error status: ${t.status}`)}catch(t){throw console.error("[apiGaveApplication] error:",t),t}},SE=async()=>{try{const r=await fetch(ai("/teams/pdf"));if(!r.ok)throw new Error(`http error status: ${r.status}`);const e=await r.json();mU(e.result)}catch(r){throw console.error("[apiDownloadQrCodesFile] error:",r),r}},IU=async()=>{try{const r=await fetch(ai("/graph"));if(!r.ok)throw new Error(`http error status: ${r.status}`);return await r.json()}catch(r){throw console.error("[apiDownloadQrCodesFile] error:",r),r}},TU=async r=>{try{const e=await fetch(ai("/graph/nodes"),{method:"PUT",body:JSON.stringify({node:r})});if(!e.ok)throw new Error(`http error status: ${e.status}`);return await e.json()}catch(e){throw console.error("[apiDownloadQrCodesFile] error:",e),e}};function ai(r){return"http://"+window.location.host.split(":")[0]+":8090"+r}var zn={},Ol,OE;function $U(){return OE||(OE=1,Ol=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}),Ol}var Il={},gi={},IE;function _n(){if(IE)return gi;IE=1;let r;const e=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];return gi.getSymbolSize=function(i){if(!i)throw new Error('"version" cannot be null or undefined');if(i<1||i>40)throw new Error('"version" should be in range from 1 to 40');return i*4+17},gi.getSymbolTotalCodewords=function(i){return e[i]},gi.getBCHDigit=function(t){let i=0;for(;t!==0;)i++,t>>>=1;return i},gi.setToSJISFunction=function(i){if(typeof i!="function")throw new Error('"toSJISFunc" is not a valid function.');r=i},gi.isKanjiModeEnabled=function(){return typeof r<"u"},gi.toSJIS=function(i){return r(i)},gi}var Tl={},TE;function _w(){return TE||(TE=1,function(r){r.L={bit:1},r.M={bit:0},r.Q={bit:3},r.H={bit:2};function e(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return r.L;case"m":case"medium":return r.M;case"q":case"quartile":return r.Q;case"h":case"high":return r.H;default:throw new Error("Unknown EC Level: "+t)}}r.isValid=function(i){return i&&typeof i.bit<"u"&&i.bit>=0&&i.bit<4},r.from=function(i,n){if(r.isValid(i))return i;try{return e(i)}catch{return n}}}(Tl)),Tl}var $l,$E;function PU(){if($E)return $l;$E=1;function r(){this.buffer=[],this.length=0}return r.prototype={get:function(e){const t=Math.floor(e/8);return(this.buffer[t]>>>7-e%8&1)===1},put:function(e,t){for(let i=0;i>>t-i-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(e){const t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}},$l=r,$l}var Pl,PE;function RU(){if(PE)return Pl;PE=1;function r(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}return r.prototype.set=function(e,t,i,n){const s=e*this.size+t;this.data[s]=i,n&&(this.reservedBit[s]=!0)},r.prototype.get=function(e,t){return this.data[e*this.size+t]},r.prototype.xor=function(e,t,i){this.data[e*this.size+t]^=i},r.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]},Pl=r,Pl}var Rl={},RE;function CU(){return RE||(RE=1,function(r){const e=_n().getSymbolSize;r.getRowColCoords=function(i){if(i===1)return[];const n=Math.floor(i/7)+2,s=e(i),o=s===145?26:Math.ceil((s-13)/(2*n-2))*2,a=[s-7];for(let u=1;u=0&&n<=7},r.from=function(n){return r.isValid(n)?parseInt(n,10):void 0},r.getPenaltyN1=function(n){const s=n.size;let o=0,a=0,u=0,l=null,c=null;for(let d=0;d=5&&(o+=e.N1+(a-5)),l=f,a=1),f=n.get(h,d),f===c?u++:(u>=5&&(o+=e.N1+(u-5)),c=f,u=1)}a>=5&&(o+=e.N1+(a-5)),u>=5&&(o+=e.N1+(u-5))}return o},r.getPenaltyN2=function(n){const s=n.size;let o=0;for(let a=0;a=10&&(a===1488||a===93)&&o++,u=u<<1&2047|n.get(c,l),c>=10&&(u===1488||u===93)&&o++}return o*e.N3},r.getPenaltyN4=function(n){let s=0;const o=n.data.length;for(let u=0;u=0;){const o=s[0];for(let u=0;u0){const a=new Uint8Array(this.degree);return a.set(s,o),a}return s},Dl=e,Dl}var Al={},Ml={},Nl={},NE;function VL(){return NE||(NE=1,Nl.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}),Nl}var Pr={},FE;function KL(){if(FE)return Pr;FE=1;const r="[0-9]+",e="[A-Z $%*+\\-./:]+";let t="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";t=t.replace(/u/g,"\\u");const i="(?:(?![A-Z0-9 $%*+\\-./:]|"+t+`)(?:.|[\r +]))+`;Pr.KANJI=new RegExp(t,"g"),Pr.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),Pr.BYTE=new RegExp(i,"g"),Pr.NUMERIC=new RegExp(r,"g"),Pr.ALPHANUMERIC=new RegExp(e,"g");const n=new RegExp("^"+t+"$"),s=new RegExp("^"+r+"$"),o=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");return Pr.testKanji=function(u){return n.test(u)},Pr.testNumeric=function(u){return s.test(u)},Pr.testAlphanumeric=function(u){return o.test(u)},Pr}var kE;function wn(){return kE||(kE=1,function(r){const e=VL(),t=KL();r.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},r.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},r.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},r.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},r.MIXED={bit:-1},r.getCharCountIndicator=function(s,o){if(!s.ccBits)throw new Error("Invalid mode: "+s);if(!e.isValid(o))throw new Error("Invalid version: "+o);return o>=1&&o<10?s.ccBits[0]:o<27?s.ccBits[1]:s.ccBits[2]},r.getBestModeForData=function(s){return t.testNumeric(s)?r.NUMERIC:t.testAlphanumeric(s)?r.ALPHANUMERIC:t.testKanji(s)?r.KANJI:r.BYTE},r.toString=function(s){if(s&&s.id)return s.id;throw new Error("Invalid mode")},r.isValid=function(s){return s&&s.bit&&s.ccBits};function i(n){if(typeof n!="string")throw new Error("Param is not a string");switch(n.toLowerCase()){case"numeric":return r.NUMERIC;case"alphanumeric":return r.ALPHANUMERIC;case"kanji":return r.KANJI;case"byte":return r.BYTE;default:throw new Error("Unknown mode: "+n)}}r.from=function(s,o){if(r.isValid(s))return s;try{return i(s)}catch{return o}}}(Ml)),Ml}var BE;function NU(){return BE||(BE=1,function(r){const e=_n(),t=UL(),i=_w(),n=wn(),s=VL(),o=7973,a=e.getBCHDigit(o);function u(h,f,v){for(let p=1;p<=40;p++)if(f<=r.getCapacity(p,v,h))return p}function l(h,f){return n.getCharCountIndicator(h,f)+4}function c(h,f){let v=0;return h.forEach(function(p){const b=l(p.mode,f);v+=b+p.getBitsLength()}),v}function d(h,f){for(let v=1;v<=40;v++)if(c(h,v)<=r.getCapacity(v,f,n.MIXED))return v}r.from=function(f,v){return s.isValid(f)?parseInt(f,10):v},r.getCapacity=function(f,v,p){if(!s.isValid(f))throw new Error("Invalid QR Code version");typeof p>"u"&&(p=n.BYTE);const b=e.getSymbolTotalCodewords(f),m=t.getTotalCodewordsCount(f,v),g=(b-m)*8;if(p===n.MIXED)return g;const w=g-l(p,f);switch(p){case n.NUMERIC:return Math.floor(w/10*3);case n.ALPHANUMERIC:return Math.floor(w/11*2);case n.KANJI:return Math.floor(w/13);case n.BYTE:default:return Math.floor(w/8)}},r.getBestVersionForData=function(f,v){let p;const b=i.from(v,i.M);if(Array.isArray(f)){if(f.length>1)return d(f,b);if(f.length===0)return 1;p=f[0]}else p=f;return u(p.mode,p.getLength(),b)},r.getEncodedBits=function(f){if(!s.isValid(f)||f<7)throw new Error("Invalid QR Code version");let v=f<<12;for(;e.getBCHDigit(v)-a>=0;)v^=o<=0;)u^=e<0&&(s=this.data.substr(n),o=parseInt(s,10),i.put(o,a*3+1))},Bl=e,Bl}var jl,zE;function BU(){if(zE)return jl;zE=1;const r=wn(),e=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function t(i){this.mode=r.ALPHANUMERIC,this.data=i}return t.getBitsLength=function(n){return 11*Math.floor(n/2)+6*(n%2)},t.prototype.getLength=function(){return this.data.length},t.prototype.getBitsLength=function(){return t.getBitsLength(this.data.length)},t.prototype.write=function(n){let s;for(s=0;s+2<=this.data.length;s+=2){let o=e.indexOf(this.data[s])*45;o+=e.indexOf(this.data[s+1]),n.put(o,11)}this.data.length%2&&n.put(e.indexOf(this.data[s]),6)},jl=t,jl}var Ll,HE;function jU(){if(HE)return Ll;HE=1;const r=wn();function e(t){this.mode=r.BYTE,typeof t=="string"?this.data=new TextEncoder().encode(t):this.data=new Uint8Array(t)}return e.getBitsLength=function(i){return i*8},e.prototype.getLength=function(){return this.data.length},e.prototype.getBitsLength=function(){return e.getBitsLength(this.data.length)},e.prototype.write=function(t){for(let i=0,n=this.data.length;i=33088&&s<=40956)s-=33088;else if(s>=57408&&s<=60351)s-=49472;else throw new Error("Invalid SJIS character: "+this.data[n]+` +Make sure your charset is UTF-8`);s=(s>>>8&255)*192+(s&255),i.put(s,13)}},zl=t,zl}var Hl={exports:{}},UE;function zU(){return UE||(UE=1,function(r){var e={single_source_shortest_paths:function(t,i,n){var s={},o={};o[i]=0;var a=e.PriorityQueue.make();a.push(i,0);for(var u,l,c,d,h,f,v,p,b;!a.empty();){u=a.pop(),l=u.value,d=u.cost,h=t[l]||{};for(c in h)h.hasOwnProperty(c)&&(f=h[c],v=d+f,p=o[c],b=typeof o[c]>"u",(b||p>v)&&(o[c]=v,a.push(c,v),s[c]=l))}if(typeof n<"u"&&typeof o[n]>"u"){var m=["Could not find a path from ",i," to ",n,"."].join("");throw new Error(m)}return s},extract_shortest_path_from_predecessor_list:function(t,i){for(var n=[],s=i;s;)n.push(s),t[s],s=t[s];return n.reverse(),n},find_path:function(t,i,n){var s=e.single_source_shortest_paths(t,i,n);return e.extract_shortest_path_from_predecessor_list(s,n)},PriorityQueue:{make:function(t){var i=e.PriorityQueue,n={},s;t=t||{};for(s in i)i.hasOwnProperty(s)&&(n[s]=i[s]);return n.queue=[],n.sorter=t.sorter||i.default_sorter,n},default_sorter:function(t,i){return t.cost-i.cost},push:function(t,i){var n={value:t,cost:i};this.queue.push(n),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};r.exports=e}(Hl)),Hl.exports}var VE;function HU(){return VE||(VE=1,function(r){const e=wn(),t=kU(),i=BU(),n=jU(),s=LU(),o=KL(),a=_n(),u=zU();function l(m){return unescape(encodeURIComponent(m)).length}function c(m,g,w){const y=[];let S;for(;(S=m.exec(w))!==null;)y.push({data:S[0],index:S.index,mode:g,length:S[0].length});return y}function d(m){const g=c(o.NUMERIC,e.NUMERIC,m),w=c(o.ALPHANUMERIC,e.ALPHANUMERIC,m);let y,S;return a.isKanjiModeEnabled()?(y=c(o.BYTE,e.BYTE,m),S=c(o.KANJI,e.KANJI,m)):(y=c(o.BYTE_KANJI,e.BYTE,m),S=[]),g.concat(w,y,S).sort(function(I,_){return I.index-_.index}).map(function(I){return{data:I.data,mode:I.mode,length:I.length}})}function h(m,g){switch(g){case e.NUMERIC:return t.getBitsLength(m);case e.ALPHANUMERIC:return i.getBitsLength(m);case e.KANJI:return s.getBitsLength(m);case e.BYTE:return n.getBitsLength(m)}}function f(m){return m.reduce(function(g,w){const y=g.length-1>=0?g[g.length-1]:null;return y&&y.mode===w.mode?(g[g.length-1].data+=w.data,g):(g.push(w),g)},[])}function v(m){const g=[];for(let w=0;w=0&&C<=6&&(D===0||D===6)||D>=0&&D<=6&&(C===0||C===6)||C>=2&&C<=4&&D>=2&&D<=4?O.set(R+C,x+D,!0,!0):O.set(R+C,x+D,!1,!0))}}function v(O){const I=O.size;for(let _=8;_>C&1)===1,O.set(T,R,x,!0),O.set(R,T,x,!0)}function m(O,I,_){const E=O.size,T=c.getEncodedBits(I,_);let R,x;for(R=0;R<15;R++)x=(T>>R&1)===1,R<6?O.set(R,8,x,!0):R<8?O.set(R+1,8,x,!0):O.set(E-15+R,8,x,!0),R<8?O.set(8,E-R-1,x,!0):R<9?O.set(8,15-R-1+1,x,!0):O.set(8,15-R-1,x,!0);O.set(E-8,8,1,!0)}function g(O,I){const _=O.size;let E=-1,T=_-1,R=7,x=0;for(let C=_-1;C>0;C-=2)for(C===6&&C--;;){for(let D=0;D<2;D++)if(!O.isReserved(T,C-D)){let j=!1;x>>R&1)===1),O.set(T,C-D,j),R--,R===-1&&(x++,R=7)}if(T+=E,T<0||_<=T){T-=E,E=-E;break}}}function w(O,I,_){const E=new t;_.forEach(function(D){E.put(D.mode.bit,4),E.put(D.getLength(),d.getCharCountIndicator(D.mode,O)),D.write(E)});const T=r.getSymbolTotalCodewords(O),R=a.getTotalCodewordsCount(O,I),x=(T-R)*8;for(E.getLengthInBits()+4<=x&&E.put(0,4);E.getLengthInBits()%8!==0;)E.putBit(0);const C=(x-E.getLengthInBits())/8;for(let D=0;D=7&&b(D,I),g(D,x),isNaN(E)&&(E=o.getBestMask(D,m.bind(null,D,_))),o.applyMask(E,D),m(D,_,E),{modules:D,version:I,errorCorrectionLevel:_,maskPattern:E,segments:T}}return Il.create=function(I,_){if(typeof I>"u"||I==="")throw new Error("No input text");let E=e.M,T,R;return typeof _<"u"&&(E=e.from(_.errorCorrectionLevel,e.M),T=l.from(_.version),R=o.from(_.maskPattern),_.toSJISFunc&&r.setToSJISFunction(_.toSJISFunc)),S(I,T,E,R)},Il}var Wl={},Ul={},GE;function VL(){return GE||(GE=1,function(r){function e(t){if(typeof t=="number"&&(t=t.toString()),typeof t!="string")throw new Error("Color should be defined as hex string");let i=t.slice().replace("#","").split("");if(i.length<3||i.length===5||i.length>8)throw new Error("Invalid hex color: "+t);(i.length===3||i.length===4)&&(i=Array.prototype.concat.apply([],i.map(function(s){return[s,s]}))),i.length===6&&i.push("F","F");const n=parseInt(i.join(""),16);return{r:n>>24&255,g:n>>16&255,b:n>>8&255,a:n&255,hex:"#"+i.slice(0,6).join("")}}r.getOptions=function(i){i||(i={}),i.color||(i.color={});const n=typeof i.margin>"u"||i.margin===null||i.margin<0?4:i.margin,s=i.width&&i.width>=21?i.width:void 0,o=i.scale||4;return{width:s,scale:s?4:o,margin:n,color:{dark:e(i.color.dark||"#000000ff"),light:e(i.color.light||"#ffffffff")},type:i.type,rendererOpts:i.rendererOpts||{}}},r.getScale=function(i,n){return n.width&&n.width>=i+n.margin*2?n.width/(i+n.margin*2):n.scale},r.getImageWidth=function(i,n){const s=r.getScale(i,n);return Math.floor((i+n.margin*2)*s)},r.qrToImageData=function(i,n,s){const o=n.modules.size,a=n.modules.data,u=r.getScale(o,s),l=Math.floor((o+s.margin*2)*u),c=s.margin*u,d=[s.color.light,s.color.dark];for(let h=0;h=c&&f>=c&&h"u"&&(!o||!o.getContext)&&(u=o,o=void 0),o||(l=i()),u=e.getOptions(u);const c=e.getImageWidth(s.modules.size,u),d=l.getContext("2d"),h=d.createImageData(c,c);return e.qrToImageData(h.data,s,u),t(d,l,c),d.putImageData(h,0,0),l},r.renderToDataURL=function(s,o,a){let u=a;typeof u>"u"&&(!o||!o.getContext)&&(u=o,o=void 0),u||(u={});const l=r.render(s,o,u),c=u.type||"image/png",d=u.rendererOpts||{};return l.toDataURL(c,d.quality)}}(Wl)),Wl}var Vl={},XE;function UU(){if(XE)return Vl;XE=1;const r=VL();function e(n,s){const o=n.a/255,a=s+'="'+n.hex+'"';return o<1?a+" "+s+'-opacity="'+o.toFixed(2).slice(1)+'"':a}function t(n,s,o){let a=n+s;return typeof o<"u"&&(a+=" "+o),a}function i(n,s,o){let a="",u=0,l=!1,c=0;for(let d=0;d0&&h>0&&n[d-1]||(a+=l?t("M",h+o,.5+f+o):t("m",u,0),u=0,l=!1),h+1':"",f="',v='viewBox="0 0 '+d+" "+d+'"',b=''+h+f+` -`;return typeof a=="function"&&a(null,b),b},Vl}var JE;function VU(){if(JE)return zn;JE=1;const r=TU(),e=HU(),t=WU(),i=UU();function n(s,o,a,u,l){const c=[].slice.call(arguments,1),d=c.length,h=typeof c[d-1]=="function";if(!h&&!r())throw new Error("Callback required as last argument");if(h){if(d<2)throw new Error("Too few arguments provided");d===2?(l=a,a=o,o=u=void 0):d===3&&(o.getContext&&typeof l>"u"?(l=u,u=void 0):(l=u,u=a,a=o,o=void 0))}else{if(d<1)throw new Error("Too few arguments provided");return d===1?(a=o,o=u=void 0):d===2&&!o.getContext&&(u=a,a=o,o=void 0),new Promise(function(f,v){try{const p=e.create(a,u);f(s(p,o,u))}catch(p){v(p)}})}try{const f=e.create(a,u);l(null,s(f,o,u))}catch(f){l(f)}}return zn.create=e.create,zn.toCanvas=n.bind(null,t.render),zn.toDataURL=n.bind(null,t.renderToDataURL),zn.toString=n.bind(null,function(s,o,a){return i.render(s,a)}),zn}var Kl=VU();/*! vue-qrcode v2.0.0 | (c) 2018-present Chen Fengyuan | MIT */const QE="ready";var KU=Or({name:"VueQrcode",props:{value:{type:String,default:void 0},options:{type:Object,default:void 0},tag:{type:String,default:"canvas"}},emits:[QE],watch:{$props:{deep:!0,immediate:!0,handler(){this.$el&&this.generate()}}},mounted(){this.generate()},methods:{generate(){const r=this.options||{},e=String(this.value),t=()=>{this.$emit(QE,this.$el)};switch(this.tag){case"canvas":Kl.toCanvas(this.$el,e,r,i=>{if(i)throw i;t()});break;case"img":Kl.toDataURL(e,r,(i,n)=>{if(i)throw i;this.$el.src=n,this.$el.onload=t});break;case"svg":Kl.toString(e,r,(i,n)=>{if(i)throw i;const s=document.createElement("div");s.innerHTML=n;const o=s.querySelector("svg");if(o){const{attributes:a,childNodes:u}=o;Object.keys(a).forEach(l=>{const c=a[Number(l)];this.$el.setAttribute(c.name,c.value)}),Object.keys(u).forEach(l=>{const c=u[Number(l)];this.$el.appendChild(c.cloneNode(!0))}),t()}});break}}},render(){return mw(this.tag,this.$slots.default)}});const GU={key:0,class:"qr"},YU=Or({__name:"TeamQRCode",props:{data:String,title:String},setup(r){return(e,t)=>{var i;return(((i=r.data)==null?void 0:i.length)??0)>1?(et(),Ht("div",GU,[yt(Zt(KU),{value:r.data,options:Zt(gU),tag:"svg"},null,8,["value","options"]),ve("div",null,or(r.title),1)])):IW("",!0)}}}),Pu=(r,e)=>{const t=r.__vccOpts||r;for(const[i,n]of e)t[i]=n;return t},XU=Pu(YU,[["__scopeId","data-v-666b8d35"]]),JU={},QU={class:"header-block"};function ZU(r,e){return et(),Ht("div",QU,[KH(r.$slots,"default",{},void 0)])}const ww=Pu(JU,[["render",ZU],["__scopeId","data-v-5b6894ef"]]),eV={class:"buttons-block"},tV={class:"team-name"},rV=["href"],iV={class:"cell-center"},nV=["onClick"],sV={class:"cell-center"},oV=["onClick"],aV={class:"form-custom form-block"},uV={class:"center-block-custom"},lV=Or({__name:"AdminWindow",setup(r){const e=sr("-"),t=sr("-"),i=sr(""),n=sr(),s=sr({teams:[]}),o=sr("");async function a(){await _U(o.value),o.value=""}async function u(){i.value="Загрузка...",await EU()}async function l(){i.value="Загрузка...",await SU()}async function c(){var f,v,p;n.value=await wU(),n.value.state==="NEW"&&(i.value="Игра ещё не началась"),n.value.state==="RUN"&&(i.value="Игра идет с "+((f=n.value)==null?void 0:f.startAt.substring(11))),n.value.state==="STOP"&&(i.value="Игра остановлена "+((v=n.value)==null?void 0:v.startAt.substring(11))+" - "+((p=n.value)==null?void 0:p.endAt.substring(11)))}function d(f,v){return v.applications.length-f.applications.length}let h=0;return vw(async()=>{s.value=await EE(),h=setInterval(async()=>{s.value=await EE(),s.value.teams.sort(d),await c()},2e3),Z_.beforeEach((f,v,p)=>{clearInterval(h),p()})}),(f,v)=>(et(),Ht(pt,null,[yt(ww,null,{default:Eu(()=>[ve("div",null," Вечерний детектив - "+or(i.value),1),ve("div",eV,[ve("button",{onClick:v[0]||(v[0]=p=>Zt(Z_).push("/editor")),class:"button-menu button-custom-inline"},"Граф"),ve("button",{onClick:u,class:"button-menu button-custom-inline"},"Начать"),ve("button",{onClick:l,class:"button-menu button-custom-inline"},"Остановить"),ve("button",{onClick:v[1]||(v[1]=(...p)=>Zt(SE)&&Zt(SE)(...p)),class:"button-menu button-custom-inline"},"Скачать qr‑ы")])]),_:1}),yt(XU,{data:e.value,title:t.value},null,8,["data","title"]),ve("table",null,[v[3]||(v[3]=ve("thead",null,[ve("tr",null,[ve("th",null,"№"),ve("th",null,"Название команды"),ve("th",null,"Поездки"),ve("th",null,"Приложения"),ve("th",null,"Qr")])],-1)),ve("tbody",null,[(et(!0),Ht(pt,null,co(s.value.teams,(p,b)=>(et(),Ht("tr",{key:p.name},[ve("td",null,or(b+1),1),ve("td",tV,[C_(or(p.name)+" ",1),ve("a",{href:p.url,target:"_blank"},"[url]",8,rV)]),ve("td",iV,or(p.spendTime),1),ve("td",null,[(et(!0),Ht(pt,null,co(p.applications,m=>(et(),Ht("div",{key:m.id},[C_(or(m.name)+" ",1),ve("button",{class:"link-button",onClick:g=>Zt(OU)(p.id,m.id)},"Выдано",8,nV)]))),128))]),ve("td",sV,[ve("a",{onClick:m=>(e.value=p.url,t.value=p.name)},"QR",8,oV)])]))),128))])]),ve("div",aV,[ve("div",uV,[ve("form",{onSubmit:s4(a,["prevent"])},[ve("div",null,[qH(ve("input",{class:"input-custom","onUpdate:modelValue":v[2]||(v[2]=p=>o.value=p),type:"text",placeholder:"Название команды"},null,512),[[r4,o.value]])]),v[4]||(v[4]=ve("div",{class:"button-container"},[ve("button",{class:"button-custom",type:"submit"},"Добавить")],-1))],32)])])],64))}}),cV=Pu(lV,[["__scopeId","data-v-27835e5c"]]),dV=Or({__name:"HomeView",setup(r){return(e,t)=>(et(),qi(cV))}});/** +`);const x=w(I,_,T),C=r.getSymbolSize(I),D=new i(C);return f(D,I),v(D),p(D,I),m(D,_,0),I>=7&&b(D,I),g(D,x),isNaN(E)&&(E=o.getBestMask(D,m.bind(null,D,_))),o.applyMask(E,D),m(D,_,E),{modules:D,version:I,errorCorrectionLevel:_,maskPattern:E,segments:T}}return Il.create=function(I,_){if(typeof I>"u"||I==="")throw new Error("No input text");let E=e.M,T,R;return typeof _<"u"&&(E=e.from(_.errorCorrectionLevel,e.M),T=l.from(_.version),R=o.from(_.maskPattern),_.toSJISFunc&&r.setToSJISFunction(_.toSJISFunc)),S(I,T,E,R)},Il}var Wl={},Ul={},GE;function GL(){return GE||(GE=1,function(r){function e(t){if(typeof t=="number"&&(t=t.toString()),typeof t!="string")throw new Error("Color should be defined as hex string");let i=t.slice().replace("#","").split("");if(i.length<3||i.length===5||i.length>8)throw new Error("Invalid hex color: "+t);(i.length===3||i.length===4)&&(i=Array.prototype.concat.apply([],i.map(function(s){return[s,s]}))),i.length===6&&i.push("F","F");const n=parseInt(i.join(""),16);return{r:n>>24&255,g:n>>16&255,b:n>>8&255,a:n&255,hex:"#"+i.slice(0,6).join("")}}r.getOptions=function(i){i||(i={}),i.color||(i.color={});const n=typeof i.margin>"u"||i.margin===null||i.margin<0?4:i.margin,s=i.width&&i.width>=21?i.width:void 0,o=i.scale||4;return{width:s,scale:s?4:o,margin:n,color:{dark:e(i.color.dark||"#000000ff"),light:e(i.color.light||"#ffffffff")},type:i.type,rendererOpts:i.rendererOpts||{}}},r.getScale=function(i,n){return n.width&&n.width>=i+n.margin*2?n.width/(i+n.margin*2):n.scale},r.getImageWidth=function(i,n){const s=r.getScale(i,n);return Math.floor((i+n.margin*2)*s)},r.qrToImageData=function(i,n,s){const o=n.modules.size,a=n.modules.data,u=r.getScale(o,s),l=Math.floor((o+s.margin*2)*u),c=s.margin*u,d=[s.color.light,s.color.dark];for(let h=0;h=c&&f>=c&&h"u"&&(!o||!o.getContext)&&(u=o,o=void 0),o||(l=i()),u=e.getOptions(u);const c=e.getImageWidth(s.modules.size,u),d=l.getContext("2d"),h=d.createImageData(c,c);return e.qrToImageData(h.data,s,u),t(d,l,c),d.putImageData(h,0,0),l},r.renderToDataURL=function(s,o,a){let u=a;typeof u>"u"&&(!o||!o.getContext)&&(u=o,o=void 0),u||(u={});const l=r.render(s,o,u),c=u.type||"image/png",d=u.rendererOpts||{};return l.toDataURL(c,d.quality)}}(Wl)),Wl}var Vl={},XE;function VU(){if(XE)return Vl;XE=1;const r=GL();function e(n,s){const o=n.a/255,a=s+'="'+n.hex+'"';return o<1?a+" "+s+'-opacity="'+o.toFixed(2).slice(1)+'"':a}function t(n,s,o){let a=n+s;return typeof o<"u"&&(a+=" "+o),a}function i(n,s,o){let a="",u=0,l=!1,c=0;for(let d=0;d0&&h>0&&n[d-1]||(a+=l?t("M",h+o,.5+f+o):t("m",u,0),u=0,l=!1),h+1':"",f="',v='viewBox="0 0 '+d+" "+d+'"',b=''+h+f+` +`;return typeof a=="function"&&a(null,b),b},Vl}var JE;function KU(){if(JE)return zn;JE=1;const r=$U(),e=WU(),t=UU(),i=VU();function n(s,o,a,u,l){const c=[].slice.call(arguments,1),d=c.length,h=typeof c[d-1]=="function";if(!h&&!r())throw new Error("Callback required as last argument");if(h){if(d<2)throw new Error("Too few arguments provided");d===2?(l=a,a=o,o=u=void 0):d===3&&(o.getContext&&typeof l>"u"?(l=u,u=void 0):(l=u,u=a,a=o,o=void 0))}else{if(d<1)throw new Error("Too few arguments provided");return d===1?(a=o,o=u=void 0):d===2&&!o.getContext&&(u=a,a=o,o=void 0),new Promise(function(f,v){try{const p=e.create(a,u);f(s(p,o,u))}catch(p){v(p)}})}try{const f=e.create(a,u);l(null,s(f,o,u))}catch(f){l(f)}}return zn.create=e.create,zn.toCanvas=n.bind(null,t.render),zn.toDataURL=n.bind(null,t.renderToDataURL),zn.toString=n.bind(null,function(s,o,a){return i.render(s,a)}),zn}var Kl=KU();/*! vue-qrcode v2.0.0 | (c) 2018-present Chen Fengyuan | MIT */const QE="ready";var GU=Or({name:"VueQrcode",props:{value:{type:String,default:void 0},options:{type:Object,default:void 0},tag:{type:String,default:"canvas"}},emits:[QE],watch:{$props:{deep:!0,immediate:!0,handler(){this.$el&&this.generate()}}},mounted(){this.generate()},methods:{generate(){const r=this.options||{},e=String(this.value),t=()=>{this.$emit(QE,this.$el)};switch(this.tag){case"canvas":Kl.toCanvas(this.$el,e,r,i=>{if(i)throw i;t()});break;case"img":Kl.toDataURL(e,r,(i,n)=>{if(i)throw i;this.$el.src=n,this.$el.onload=t});break;case"svg":Kl.toString(e,r,(i,n)=>{if(i)throw i;const s=document.createElement("div");s.innerHTML=n;const o=s.querySelector("svg");if(o){const{attributes:a,childNodes:u}=o;Object.keys(a).forEach(l=>{const c=a[Number(l)];this.$el.setAttribute(c.name,c.value)}),Object.keys(u).forEach(l=>{const c=u[Number(l)];this.$el.appendChild(c.cloneNode(!0))}),t()}});break}}},render(){return mw(this.tag,this.$slots.default)}});const YU={key:0,class:"qr"},XU=Or({__name:"TeamQRCode",props:{data:String,title:String},setup(r){return(e,t)=>{var i;return(((i=r.data)==null?void 0:i.length)??0)>1?(et(),Wt("div",YU,[yt(er(GU),{value:r.data,options:er(gU),tag:"svg"},null,8,["value","options"]),de("div",null,Mt(r.title),1)])):TW("",!0)}}}),Pu=(r,e)=>{const t=r.__vccOpts||r;for(const[i,n]of e)t[i]=n;return t},JU=Pu(XU,[["__scopeId","data-v-666b8d35"]]),QU={},ZU={class:"header-block"};function eV(r,e){return et(),Wt("div",ZU,[GH(r.$slots,"default",{},void 0)])}const ww=Pu(QU,[["render",eV],["__scopeId","data-v-5b6894ef"]]),tV={class:"buttons-block"},rV={class:"team-name"},iV=["href"],nV={class:"cell-center"},sV=["onClick"],oV={class:"cell-center"},aV=["onClick"],uV={class:"form-custom form-block"},lV={class:"center-block-custom"},cV=Or({__name:"AdminWindow",setup(r){const e=or("-"),t=or("-"),i=or(""),n=or(),s=or({teams:[]}),o=or("");async function a(){await _U(o.value),o.value=""}async function u(){i.value="Загрузка...",await EU()}async function l(){i.value="Загрузка...",await SU()}async function c(){var f,v,p;n.value=await wU(),n.value.state==="NEW"&&(i.value="Игра ещё не началась"),n.value.state==="RUN"&&(i.value="Игра идет с "+((f=n.value)==null?void 0:f.startAt.substring(11))),n.value.state==="STOP"&&(i.value="Игра остановлена "+((v=n.value)==null?void 0:v.startAt.substring(11))+" - "+((p=n.value)==null?void 0:p.endAt.substring(11)))}function d(f,v){return v.applications.length-f.applications.length}let h=0;return vw(async()=>{s.value=await EE(),h=setInterval(async()=>{s.value=await EE(),s.value.teams.sort(d),await c()},2e3),Z_.beforeEach((f,v,p)=>{clearInterval(h),p()})}),(f,v)=>(et(),Wt(pt,null,[yt(ww,null,{default:Eu(()=>[de("div",null," Вечерний детектив - "+Mt(i.value),1),de("div",tV,[de("button",{onClick:v[0]||(v[0]=p=>er(Z_).push("/editor")),class:"button-menu button-custom-inline"},"Граф"),de("button",{onClick:u,class:"button-menu button-custom-inline"},"Начать"),de("button",{onClick:l,class:"button-menu button-custom-inline"},"Остановить"),de("button",{onClick:v[1]||(v[1]=(...p)=>er(SE)&&er(SE)(...p)),class:"button-menu button-custom-inline"},"Скачать qr‑ы")])]),_:1}),yt(JU,{data:e.value,title:t.value},null,8,["data","title"]),de("table",null,[v[3]||(v[3]=de("thead",null,[de("tr",null,[de("th",null,"№"),de("th",null,"Название команды"),de("th",null,"Поездки"),de("th",null,"Приложения"),de("th",null,"Qr")])],-1)),de("tbody",null,[(et(!0),Wt(pt,null,co(s.value.teams,(p,b)=>(et(),Wt("tr",{key:p.name},[de("td",null,Mt(b+1),1),de("td",rV,[C_(Mt(p.name)+" ",1),de("a",{href:p.url,target:"_blank"},"[url]",8,iV)]),de("td",nV,Mt(p.spendTime),1),de("td",null,[(et(!0),Wt(pt,null,co(p.applications,m=>(et(),Wt("div",{key:m.id},[C_(Mt(m.name)+" ",1),de("button",{class:"link-button",onClick:g=>er(OU)(p.id,m.id)},"Выдано",8,sV)]))),128))]),de("td",oV,[de("a",{onClick:m=>(e.value=p.url,t.value=p.name)},"QR",8,aV)])]))),128))])]),de("div",uV,[de("div",lV,[de("form",{onSubmit:s4(a,["prevent"])},[de("div",null,[tL(de("input",{class:"input-custom","onUpdate:modelValue":v[2]||(v[2]=p=>o.value=p),type:"text",placeholder:"Название команды"},null,512),[[CL,o.value]])]),v[4]||(v[4]=de("div",{class:"button-container"},[de("button",{class:"button-custom",type:"submit"},"Добавить")],-1))],32)])])],64))}}),dV=Pu(cV,[["__scopeId","data-v-27835e5c"]]),hV=Or({__name:"HomeView",setup(r){return(e,t)=>(et(),Di(dV))}});/** * vis-data * http://visjs.org/ * @@ -53,14 +53,14 @@ Minimum version required to store current data is: `+R+`. * http://opensource.org/licenses/MIT * * vis.js may be distributed under either license. - */var ZE=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Te(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var Gl={exports:{}},eS={},eo,tS;function ct(){if(tS)return eo;tS=1;var r=function(e){return e&&e.Math===Math&&e};return eo=r(typeof globalThis=="object"&&globalThis)||r(typeof window=="object"&&window)||r(typeof self=="object"&&self)||r(typeof ZE=="object"&&ZE)||r(typeof eo=="object"&&eo)||function(){return this}()||Function("return this")(),eo}var Yl,rS;function ke(){return rS||(rS=1,Yl=function(r){try{return!!r()}catch{return!0}}),Yl}var Xl,iS;function Uo(){if(iS)return Xl;iS=1;var r=ke();return Xl=!r(function(){var e=(function(){}).bind();return typeof e!="function"||e.hasOwnProperty("prototype")}),Xl}var Jl,nS;function Ru(){if(nS)return Jl;nS=1;var r=Uo(),e=Function.prototype,t=e.apply,i=e.call;return Jl=typeof Reflect=="object"&&Reflect.apply||(r?i.bind(t):function(){return i.apply(t,arguments)}),Jl}var Ql,sS;function ze(){if(sS)return Ql;sS=1;var r=Uo(),e=Function.prototype,t=e.call,i=r&&e.bind.bind(t,t);return Ql=r?i:function(n){return function(){return t.apply(n,arguments)}},Ql}var Zl,oS;function ai(){if(oS)return Zl;oS=1;var r=ze(),e=r({}.toString),t=r("".slice);return Zl=function(i){return t(e(i),8,-1)},Zl}var ec,aS;function KL(){if(aS)return ec;aS=1;var r=ai(),e=ze();return ec=function(t){if(r(t)==="Function")return e(t)},ec}var tc,uS;function bt(){if(uS)return tc;uS=1;var r=typeof document=="object"&&document.all;return tc=typeof r>"u"&&r!==void 0?function(e){return typeof e=="function"||e===r}:function(e){return typeof e=="function"},tc}var rc={},ic,lS;function dt(){if(lS)return ic;lS=1;var r=ke();return ic=!r(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7}),ic}var nc,cS;function Gt(){if(cS)return nc;cS=1;var r=Uo(),e=Function.prototype.call;return nc=r?e.bind(e):function(){return e.apply(e,arguments)},nc}var sc={},dS;function Ew(){if(dS)return sc;dS=1;var r={}.propertyIsEnumerable,e=Object.getOwnPropertyDescriptor,t=e&&!r.call({1:2},1);return sc.f=t?function(n){var s=e(this,n);return!!s&&s.enumerable}:r,sc}var oc,hS;function Vo(){return hS||(hS=1,oc=function(r,e){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:e}}),oc}var ac,fS;function Cu(){if(fS)return ac;fS=1;var r=ze(),e=ke(),t=ai(),i=Object,n=r("".split);return ac=e(function(){return!i("z").propertyIsEnumerable(0)})?function(s){return t(s)==="String"?n(s,""):i(s)}:i,ac}var uc,vS;function Ko(){return vS||(vS=1,uc=function(r){return r==null}),uc}var lc,pS;function En(){if(pS)return lc;pS=1;var r=Ko(),e=TypeError;return lc=function(t){if(r(t))throw new e("Can't call method on "+t);return t},lc}var cc,gS;function jr(){if(gS)return cc;gS=1;var r=Cu(),e=En();return cc=function(t){return r(e(t))},cc}var dc,mS;function zt(){if(mS)return dc;mS=1;var r=bt();return dc=function(e){return typeof e=="object"?e!==null:r(e)},dc}var hc,yS;function gt(){return yS||(yS=1,hc={}),hc}var fc,bS;function tr(){if(bS)return fc;bS=1;var r=gt(),e=ct(),t=bt(),i=function(n){return t(n)?n:void 0};return fc=function(n,s){return arguments.length<2?i(r[n])||i(e[n]):r[n]&&r[n][s]||e[n]&&e[n][s]},fc}var vc,_S;function _t(){if(_S)return vc;_S=1;var r=ze();return vc=r({}.isPrototypeOf),vc}var pc,wS;function Es(){if(wS)return pc;wS=1;var r=ct(),e=r.navigator,t=e&&e.userAgent;return pc=t?String(t):"",pc}var gc,ES;function Go(){if(ES)return gc;ES=1;var r=ct(),e=Es(),t=r.process,i=r.Deno,n=t&&t.versions||i&&i.version,s=n&&n.v8,o,a;return s&&(o=s.split("."),a=o[0]>0&&o[0]<4?1:+(o[0]+o[1])),!a&&e&&(o=e.match(/Edge\/(\d+)/),(!o||o[1]>=74)&&(o=e.match(/Chrome\/(\d+)/),o&&(a=+o[1]))),gc=a,gc}var mc,SS;function Ss(){if(SS)return mc;SS=1;var r=Go(),e=ke(),t=ct(),i=t.String;return mc=!!Object.getOwnPropertySymbols&&!e(function(){var n=Symbol("symbol detection");return!i(n)||!(Object(n)instanceof Symbol)||!Symbol.sham&&r&&r<41}),mc}var yc,OS;function GL(){if(OS)return yc;OS=1;var r=Ss();return yc=r&&!Symbol.sham&&typeof Symbol.iterator=="symbol",yc}var bc,IS;function Yo(){if(IS)return bc;IS=1;var r=tr(),e=bt(),t=_t(),i=GL(),n=Object;return bc=i?function(s){return typeof s=="symbol"}:function(s){var o=r("Symbol");return e(o)&&t(o.prototype,n(s))},bc}var _c,TS;function Os(){if(TS)return _c;TS=1;var r=String;return _c=function(e){try{return r(e)}catch{return"Object"}},_c}var wc,$S;function ui(){if($S)return wc;$S=1;var r=bt(),e=Os(),t=TypeError;return wc=function(i){if(r(i))return i;throw new t(e(i)+" is not a function")},wc}var Ec,PS;function Sw(){if(PS)return Ec;PS=1;var r=ui(),e=Ko();return Ec=function(t,i){var n=t[i];return e(n)?void 0:r(n)},Ec}var Sc,RS;function hV(){if(RS)return Sc;RS=1;var r=Gt(),e=bt(),t=zt(),i=TypeError;return Sc=function(n,s){var o,a;if(s==="string"&&e(o=n.toString)&&!t(a=r(o,n))||e(o=n.valueOf)&&!t(a=r(o,n))||s!=="string"&&e(o=n.toString)&&!t(a=r(o,n)))return a;throw new i("Can't convert object to primitive value")},Sc}var Oc={exports:{}},Ic,CS;function Is(){return CS||(CS=1,Ic=!0),Ic}var Tc,xS;function fV(){if(xS)return Tc;xS=1;var r=ct(),e=Object.defineProperty;return Tc=function(t,i){try{e(r,t,{value:i,configurable:!0,writable:!0})}catch{r[t]=i}return i},Tc}var qS;function Ow(){if(qS)return Oc.exports;qS=1;var r=Is(),e=ct(),t=fV(),i="__core-js_shared__",n=Oc.exports=e[i]||t(i,{});return(n.versions||(n.versions=[])).push({version:"3.44.0",mode:r?"pure":"global",copyright:"© 2014-2025 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.44.0/LICENSE",source:"https://github.com/zloirock/core-js"}),Oc.exports}var $c,DS;function Ts(){if(DS)return $c;DS=1;var r=Ow();return $c=function(e,t){return r[e]||(r[e]=t||{})},$c}var Pc,AS;function Ir(){if(AS)return Pc;AS=1;var r=En(),e=Object;return Pc=function(t){return e(r(t))},Pc}var Rc,MS;function wt(){if(MS)return Rc;MS=1;var r=ze(),e=Ir(),t=r({}.hasOwnProperty);return Rc=Object.hasOwn||function(n,s){return t(e(n),s)},Rc}var Cc,NS;function xu(){if(NS)return Cc;NS=1;var r=ze(),e=0,t=Math.random(),i=r(1.1.toString);return Cc=function(n){return"Symbol("+(n===void 0?"":n)+")_"+i(++e+t,36)},Cc}var xc,FS;function Et(){if(FS)return xc;FS=1;var r=ct(),e=Ts(),t=wt(),i=xu(),n=Ss(),s=GL(),o=r.Symbol,a=e("wks"),u=s?o.for||o:o&&o.withoutSetter||i;return xc=function(l){return t(a,l)||(a[l]=n&&t(o,l)?o[l]:u("Symbol."+l)),a[l]},xc}var qc,kS;function YL(){if(kS)return qc;kS=1;var r=Gt(),e=zt(),t=Yo(),i=Sw(),n=hV(),s=Et(),o=TypeError,a=s("toPrimitive");return qc=function(u,l){if(!e(u)||t(u))return u;var c=i(u,a),d;if(c){if(l===void 0&&(l="default"),d=r(c,u,l),!e(d)||t(d))return d;throw new o("Can't convert object to primitive value")}return l===void 0&&(l="number"),n(u,l)},qc}var Dc,BS;function Iw(){if(BS)return Dc;BS=1;var r=YL(),e=Yo();return Dc=function(t){var i=r(t,"string");return e(i)?i:i+""},Dc}var Ac,jS;function XL(){if(jS)return Ac;jS=1;var r=ct(),e=zt(),t=r.document,i=e(t)&&e(t.createElement);return Ac=function(n){return i?t.createElement(n):{}},Ac}var Mc,LS;function JL(){if(LS)return Mc;LS=1;var r=dt(),e=ke(),t=XL();return Mc=!r&&!e(function(){return Object.defineProperty(t("div"),"a",{get:function(){return 7}}).a!==7}),Mc}var zS;function qu(){if(zS)return rc;zS=1;var r=dt(),e=Gt(),t=Ew(),i=Vo(),n=jr(),s=Iw(),o=wt(),a=JL(),u=Object.getOwnPropertyDescriptor;return rc.f=r?u:function(c,d){if(c=n(c),d=s(d),a)try{return u(c,d)}catch{}if(o(c,d))return i(!e(t.f,c,d),c[d])},rc}var Nc,HS;function vV(){if(HS)return Nc;HS=1;var r=ke(),e=bt(),t=/#|\.prototype\./,i=function(u,l){var c=s[n(u)];return c===a?!0:c===o?!1:e(l)?r(l):!!l},n=i.normalize=function(u){return String(u).replace(t,".").toLowerCase()},s=i.data={},o=i.NATIVE="N",a=i.POLYFILL="P";return Nc=i,Nc}var Fc,WS;function Du(){if(WS)return Fc;WS=1;var r=KL(),e=ui(),t=Uo(),i=r(r.bind);return Fc=function(n,s){return e(n),s===void 0?n:t?i(n,s):function(){return n.apply(s,arguments)}},Fc}var kc={},Bc,US;function QL(){if(US)return Bc;US=1;var r=dt(),e=ke();return Bc=r&&e(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42}),Bc}var jc,VS;function li(){if(VS)return jc;VS=1;var r=zt(),e=String,t=TypeError;return jc=function(i){if(r(i))return i;throw new t(e(i)+" is not an object")},jc}var KS;function dr(){if(KS)return kc;KS=1;var r=dt(),e=JL(),t=QL(),i=li(),n=Iw(),s=TypeError,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,u="enumerable",l="configurable",c="writable";return kc.f=r?t?function(h,f,v){if(i(h),f=n(f),i(v),typeof h=="function"&&f==="prototype"&&"value"in v&&c in v&&!v[c]){var p=a(h,f);p&&p[c]&&(h[f]=v.value,v={configurable:l in v?v[l]:p[l],enumerable:u in v?v[u]:p[u],writable:!1})}return o(h,f,v)}:o:function(h,f,v){if(i(h),f=n(f),i(v),e)try{return o(h,f,v)}catch{}if("get"in v||"set"in v)throw new s("Accessors not supported");return"value"in v&&(h[f]=v.value),h},kc}var Lc,GS;function $s(){if(GS)return Lc;GS=1;var r=dt(),e=dr(),t=Vo();return Lc=r?function(i,n,s){return e.f(i,n,t(1,s))}:function(i,n,s){return i[n]=s,i},Lc}var zc,YS;function ye(){if(YS)return zc;YS=1;var r=ct(),e=Ru(),t=KL(),i=bt(),n=qu().f,s=vV(),o=gt(),a=Du(),u=$s(),l=wt(),c=function(d){var h=function(f,v,p){if(this instanceof h){switch(arguments.length){case 0:return new d;case 1:return new d(f);case 2:return new d(f,v)}return new d(f,v,p)}return e(d,this,arguments)};return h.prototype=d.prototype,h};return zc=function(d,h){var f=d.target,v=d.global,p=d.stat,b=d.proto,m=v?r:p?r[f]:r[f]&&r[f].prototype,g=v?o:o[f]||u(o,f,{})[f],w=g.prototype,y,S,O,I,_,E,T,R,x;for(I in h)y=s(v?I:f+(p?".":"#")+I,d.forced),S=!y&&m&&l(m,I),E=g[I],S&&(d.dontCallGetSet?(x=n(m,I),T=x&&x.value):T=m[I]),_=S&&T?T:h[I],!(!y&&!b&&typeof E==typeof _)&&(d.bind&&S?R=a(_,r):d.wrap&&S?R=c(_):b&&i(_)?R=t(_):R=_,(d.sham||_&&_.sham||E&&E.sham)&&u(R,"sham",!0),u(g,I,R),b&&(O=f+"Prototype",l(o,O)||u(o,O,{}),u(o[O],I,_),d.real&&w&&(y||!w[I])&&u(w,I,_)))},zc}var XS;function pV(){if(XS)return eS;XS=1;var r=ye(),e=dt(),t=dr().f;return r({target:"Object",stat:!0,forced:Object.defineProperty!==t,sham:!e},{defineProperty:t}),eS}var JS;function gV(){if(JS)return Gl.exports;JS=1,pV();var r=gt(),e=r.Object,t=Gl.exports=function(n,s,o){return e.defineProperty(n,s,o)};return e.defineProperty.sham&&(t.sham=!0),Gl.exports}var Hc,QS;function ZL(){if(QS)return Hc;QS=1;var r=gV();return Hc=r,Hc}var Wc,ZS;function mV(){if(ZS)return Wc;ZS=1;var r=ZL();return Wc=r,Wc}var Uc,eO;function yV(){if(eO)return Uc;eO=1;var r=mV();return Uc=r,Uc}var Vc,tO;function bV(){return tO||(tO=1,Vc=yV()),Vc}var _V=bV(),wV=Te(_V),rO={},Kc,iO;function Sn(){if(iO)return Kc;iO=1;var r=ai();return Kc=Array.isArray||function(t){return r(t)==="Array"},Kc}var Gc,nO;function EV(){if(nO)return Gc;nO=1;var r=Math.ceil,e=Math.floor;return Gc=Math.trunc||function(i){var n=+i;return(n>0?e:r)(n)},Gc}var Yc,sO;function Ps(){if(sO)return Yc;sO=1;var r=EV();return Yc=function(e){var t=+e;return t!==t||t===0?0:r(t)},Yc}var Xc,oO;function ez(){if(oO)return Xc;oO=1;var r=Ps(),e=Math.min;return Xc=function(t){var i=r(t);return i>0?e(i,9007199254740991):0},Xc}var Jc,aO;function Bi(){if(aO)return Jc;aO=1;var r=ez();return Jc=function(e){return r(e.length)},Jc}var Qc,uO;function tz(){if(uO)return Qc;uO=1;var r=TypeError,e=9007199254740991;return Qc=function(t){if(t>e)throw r("Maximum allowed index exceeded");return t},Qc}var Zc,lO;function Au(){if(lO)return Zc;lO=1;var r=dt(),e=dr(),t=Vo();return Zc=function(i,n,s){r?e.f(i,n,t(0,s)):i[n]=s},Zc}var ed,cO;function Tw(){if(cO)return ed;cO=1;var r=Et(),e=r("toStringTag"),t={};return t[e]="z",ed=String(t)==="[object z]",ed}var td,dO;function ji(){if(dO)return td;dO=1;var r=Tw(),e=bt(),t=ai(),i=Et(),n=i("toStringTag"),s=Object,o=t(function(){return arguments}())==="Arguments",a=function(u,l){try{return u[l]}catch{}};return td=r?t:function(u){var l,c,d;return u===void 0?"Undefined":u===null?"Null":typeof(c=a(l=s(u),n))=="string"?c:o?t(l):(d=t(l))==="Object"&&e(l.callee)?"Arguments":d},td}var rd,hO;function SV(){if(hO)return rd;hO=1;var r=ze(),e=bt(),t=Ow(),i=r(Function.toString);return e(t.inspectSource)||(t.inspectSource=function(n){return i(n)}),rd=t.inspectSource,rd}var id,fO;function rz(){if(fO)return id;fO=1;var r=ze(),e=ke(),t=bt(),i=ji(),n=tr(),s=SV(),o=function(){},a=n("Reflect","construct"),u=/^\s*(?:class|function)\b/,l=r(u.exec),c=!u.test(o),d=function(v){if(!t(v))return!1;try{return a(o,[],v),!0}catch{return!1}},h=function(v){if(!t(v))return!1;switch(i(v)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return c||!!l(u,s(v))}catch{return!0}};return h.sham=!0,id=!a||e(function(){var f;return d(d.call)||!d(Object)||!d(function(){f=!0})||f})?h:d,id}var nd,vO;function OV(){if(vO)return nd;vO=1;var r=Sn(),e=rz(),t=zt(),i=Et(),n=i("species"),s=Array;return nd=function(o){var a;return r(o)&&(a=o.constructor,e(a)&&(a===s||r(a.prototype))?a=void 0:t(a)&&(a=a[n],a===null&&(a=void 0))),a===void 0?s:a},nd}var sd,pO;function $w(){if(pO)return sd;pO=1;var r=OV();return sd=function(e,t){return new(r(e))(t===0?0:t)},sd}var od,gO;function Xo(){if(gO)return od;gO=1;var r=ke(),e=Et(),t=Go(),i=e("species");return od=function(n){return t>=51||!r(function(){var s=[],o=s.constructor={};return o[i]=function(){return{foo:1}},s[n](Boolean).foo!==1})},od}var mO;function iz(){if(mO)return rO;mO=1;var r=ye(),e=ke(),t=Sn(),i=zt(),n=Ir(),s=Bi(),o=tz(),a=Au(),u=$w(),l=Xo(),c=Et(),d=Go(),h=c("isConcatSpreadable"),f=d>=51||!e(function(){var b=[];return b[h]=!1,b.concat()[0]!==b}),v=function(b){if(!i(b))return!1;var m=b[h];return m!==void 0?!!m:t(b)},p=!f||!l("concat");return r({target:"Array",proto:!0,arity:1,forced:p},{concat:function(m){var g=n(this),w=u(g,0),y=0,S,O,I,_,E;for(S=-1,I=arguments.length;Sc;)if(d=u[c++],d!==d)return!0}else for(;l>c;c++)if((n||c in u)&&u[c]===o)return n||c||0;return!n&&-1}};return cd={includes:i(!0),indexOf:i(!1)},cd}var dd,SO;function Jo(){return SO||(SO=1,dd={}),dd}var hd,OO;function nz(){if(OO)return hd;OO=1;var r=ze(),e=wt(),t=jr(),i=IV().indexOf,n=Jo(),s=r([].push);return hd=function(o,a){var u=t(o),l=0,c=[],d;for(d in u)!e(n,d)&&e(u,d)&&s(c,d);for(;a.length>l;)e(u,d=a[l++])&&(~i(c,d)||s(c,d));return c},hd}var fd,IO;function Rw(){return IO||(IO=1,fd=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]),fd}var vd,TO;function Mu(){if(TO)return vd;TO=1;var r=nz(),e=Rw();return vd=Object.keys||function(i){return r(i,e)},vd}var $O;function Cw(){if($O)return ud;$O=1;var r=dt(),e=QL(),t=dr(),i=li(),n=jr(),s=Mu();return ud.f=r&&!e?Object.defineProperties:function(a,u){i(a);for(var l=n(u),c=s(u),d=c.length,h=0,f;d>h;)t.f(a,f=c[h++],l[f]);return a},ud}var pd,PO;function TV(){if(PO)return pd;PO=1;var r=tr();return pd=r("document","documentElement"),pd}var gd,RO;function Nu(){if(RO)return gd;RO=1;var r=Ts(),e=xu(),t=r("keys");return gd=function(i){return t[i]||(t[i]=e(i))},gd}var md,CO;function Qo(){if(CO)return md;CO=1;var r=li(),e=Cw(),t=Rw(),i=Jo(),n=TV(),s=XL(),o=Nu(),a=">",u="<",l="prototype",c="script",d=o("IE_PROTO"),h=function(){},f=function(g){return u+c+a+g+u+"/"+c+a},v=function(g){g.write(f("")),g.close();var w=g.parentWindow.Object;return g=null,w},p=function(){var g=s("iframe"),w="java"+c+":",y;return g.style.display="none",n.appendChild(g),g.src=String(w),y=g.contentWindow.document,y.open(),y.write(f("document.F=Object")),y.close(),y.F},b,m=function(){try{b=new ActiveXObject("htmlfile")}catch{}m=typeof document<"u"?document.domain&&b?v(b):p():v(b);for(var g=t.length;g--;)delete m[l][t[g]];return m()};return i[d]=!0,md=Object.create||function(w,y){var S;return w!==null?(h[l]=r(w),S=new h,h[l]=null,S[d]=w):S=m(),y===void 0?S:e.f(S,y)},md}var yd={},xO;function Fu(){if(xO)return yd;xO=1;var r=nz(),e=Rw(),t=e.concat("length","prototype");return yd.f=Object.getOwnPropertyNames||function(n){return r(n,t)},yd}var bd={},_d,qO;function Rs(){if(qO)return _d;qO=1;var r=ze();return _d=r([].slice),_d}var DO;function sz(){if(DO)return bd;DO=1;var r=ai(),e=jr(),t=Fu().f,i=Rs(),n=typeof window=="object"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(o){try{return t(o)}catch{return i(n)}};return bd.f=function(a){return n&&r(a)==="Window"?s(a):t(e(a))},bd}var wd={},AO;function ku(){return AO||(AO=1,wd.f=Object.getOwnPropertySymbols),wd}var Ed,MO;function Zo(){if(MO)return Ed;MO=1;var r=$s();return Ed=function(e,t,i,n){return n&&n.enumerable?e[t]=i:r(e,t,i),e},Ed}var Sd,NO;function xw(){if(NO)return Sd;NO=1;var r=dr();return Sd=function(e,t,i){return r.f(e,t,i)},Sd}var Od={},FO;function Bu(){if(FO)return Od;FO=1;var r=Et();return Od.f=r,Od}var Id,kO;function Xe(){if(kO)return Id;kO=1;var r=gt(),e=wt(),t=Bu(),i=dr().f;return Id=function(n){var s=r.Symbol||(r.Symbol={});e(s,n)||i(s,n,{value:t.f(n)})},Id}var Td,BO;function oz(){if(BO)return Td;BO=1;var r=Gt(),e=tr(),t=Et(),i=Zo();return Td=function(){var n=e("Symbol"),s=n&&n.prototype,o=s&&s.valueOf,a=t("toPrimitive");s&&!s[a]&&i(s,a,function(u){return r(o,this)},{arity:1})},Td}var $d,jO;function $V(){if(jO)return $d;jO=1;var r=Tw(),e=ji();return $d=r?{}.toString:function(){return"[object "+e(this)+"]"},$d}var Pd,LO;function On(){if(LO)return Pd;LO=1;var r=Tw(),e=dr().f,t=$s(),i=wt(),n=$V(),s=Et(),o=s("toStringTag");return Pd=function(a,u,l,c){var d=l?a:a&&a.prototype;d&&(i(d,o)||e(d,o,{configurable:!0,value:u}),c&&!r&&t(d,"toString",n))},Pd}var Rd,zO;function PV(){if(zO)return Rd;zO=1;var r=ct(),e=bt(),t=r.WeakMap;return Rd=e(t)&&/native code/.test(String(t)),Rd}var Cd,HO;function ea(){if(HO)return Cd;HO=1;var r=PV(),e=ct(),t=zt(),i=$s(),n=wt(),s=Ow(),o=Nu(),a=Jo(),u="Object already initialized",l=e.TypeError,c=e.WeakMap,d,h,f,v=function(g){return f(g)?h(g):d(g,{})},p=function(g){return function(w){var y;if(!t(w)||(y=h(w)).type!==g)throw new l("Incompatible receiver, "+g+" required");return y}};if(r||s.state){var b=s.state||(s.state=new c);b.get=b.get,b.has=b.has,b.set=b.set,d=function(g,w){if(b.has(g))throw new l(u);return w.facade=g,b.set(g,w),w},h=function(g){return b.get(g)||{}},f=function(g){return b.has(g)}}else{var m=o("state");a[m]=!0,d=function(g,w){if(n(g,m))throw new l(u);return w.facade=g,i(g,m,w),w},h=function(g){return n(g,m)?g[m]:{}},f=function(g){return n(g,m)}}return Cd={set:d,get:h,has:f,enforce:v,getterFor:p},Cd}var xd,WO;function Cs(){if(WO)return xd;WO=1;var r=Du(),e=ze(),t=Cu(),i=Ir(),n=Bi(),s=$w(),o=e([].push),a=function(u){var l=u===1,c=u===2,d=u===3,h=u===4,f=u===6,v=u===7,p=u===5||f;return function(b,m,g,w){for(var y=i(b),S=t(y),O=n(S),I=r(m,g),_=0,E=w||s,T=l?E(b,O):c||v?E(b,0):void 0,R,x;O>_;_++)if((p||_ in S)&&(R=S[_],x=I(R,_,y),u))if(l)T[_]=x;else if(x)switch(u){case 3:return!0;case 5:return R;case 6:return _;case 2:o(T,R)}else switch(u){case 4:return!1;case 7:o(T,R)}return f?-1:d||h?h:T}};return xd={forEach:a(0),map:a(1),filter:a(2),some:a(3),every:a(4),find:a(5),findIndex:a(6),filterReject:a(7)},xd}var UO;function RV(){if(UO)return bO;UO=1;var r=ye(),e=ct(),t=Gt(),i=ze(),n=Is(),s=dt(),o=Ss(),a=ke(),u=wt(),l=_t(),c=li(),d=jr(),h=Iw(),f=Li(),v=Vo(),p=Qo(),b=Mu(),m=Fu(),g=sz(),w=ku(),y=qu(),S=dr(),O=Cw(),I=Ew(),_=Zo(),E=xw(),T=Ts(),R=Nu(),x=Jo(),C=xu(),D=Et(),j=Bu(),ee=Xe(),H=oz(),Z=On(),fe=ea(),we=Cs().forEach,te=R("hidden"),me="Symbol",xe="prototype",De=fe.set,nt=fe.getterFor(me),_e=Object[xe],A=e.Symbol,W=A&&A[xe],Y=e.RangeError,ie=e.TypeError,Pe=e.QObject,$=y.f,P=S.f,q=g.f,F=I.f,k=i([].push),N=T("symbols"),K=T("op-symbols"),X=T("wks"),U=!Pe||!Pe[xe]||!Pe[xe].findChild,B=function(oe,V,Q){var re=$(_e,V);re&&delete _e[V],P(oe,V,Q),re&&oe!==_e&&P(_e,V,re)},le=s&&a(function(){return p(P({},"a",{get:function(){return P(this,"a",{value:7}).a}})).a!==7})?B:P,J=function(oe,V){var Q=N[oe]=p(W);return De(Q,{type:me,tag:oe,description:V}),s||(Q.description=V),Q},se=function(V,Q,re){V===_e&&se(K,Q,re),c(V);var ne=h(Q);return c(re),u(N,ne)?(re.enumerable?(u(V,te)&&V[te][ne]&&(V[te][ne]=!1),re=p(re,{enumerable:v(0,!1)})):(u(V,te)||P(V,te,v(1,p(null))),V[te][ne]=!0),le(V,ne,re)):P(V,ne,re)},de=function(V,Q){c(V);var re=d(Q),ne=b(re).concat(st(re));return we(ne,function(Ee){(!s||t(qe,re,Ee))&&se(V,Ee,re[Ee])}),V},Oe=function(V,Q){return Q===void 0?p(V):de(p(V),Q)},qe=function(V){var Q=h(V),re=t(F,this,Q);return this===_e&&u(N,Q)&&!u(K,Q)?!1:re||!u(this,Q)||!u(N,Q)||u(this,te)&&this[te][Q]?re:!0},Re=function(V,Q){var re=d(V),ne=h(Q);if(!(re===_e&&u(N,ne)&&!u(K,ne))){var Ee=$(re,ne);return Ee&&u(N,ne)&&!(u(re,te)&&re[te][ne])&&(Ee.enumerable=!0),Ee}},vt=function(V){var Q=q(d(V)),re=[];return we(Q,function(ne){!u(N,ne)&&!u(x,ne)&&k(re,ne)}),re},st=function(oe){var V=oe===_e,Q=q(V?K:d(oe)),re=[];return we(Q,function(ne){u(N,ne)&&(!V||u(_e,ne))&&k(re,N[ne])}),re};return o||(A=function(){if(l(W,this))throw new ie("Symbol is not a constructor");var V=!arguments.length||arguments[0]===void 0?void 0:f(arguments[0]),Q=C(V),re=function(ne){var Ee=this===void 0?e:this;Ee===_e&&t(re,K,ne),u(Ee,te)&&u(Ee[te],Q)&&(Ee[te][Q]=!1);var fi=v(1,ne);try{le(Ee,Q,fi)}catch(Ys){if(!(Ys instanceof Y))throw Ys;B(Ee,Q,fi)}};return s&&U&&le(_e,Q,{configurable:!0,set:re}),J(Q,V)},W=A[xe],_(W,"toString",function(){return nt(this).tag}),_(A,"withoutSetter",function(oe){return J(C(oe),oe)}),I.f=qe,S.f=se,O.f=de,y.f=Re,m.f=g.f=vt,w.f=st,j.f=function(oe){return J(D(oe),oe)},s&&(E(W,"description",{configurable:!0,get:function(){return nt(this).description}}),n||_(_e,"propertyIsEnumerable",qe,{unsafe:!0}))),r({global:!0,constructor:!0,wrap:!0,forced:!o,sham:!o},{Symbol:A}),we(b(X),function(oe){ee(oe)}),r({target:me,stat:!0,forced:!o},{useSetter:function(){U=!0},useSimple:function(){U=!1}}),r({target:"Object",stat:!0,forced:!o,sham:!s},{create:Oe,defineProperty:se,defineProperties:de,getOwnPropertyDescriptor:Re}),r({target:"Object",stat:!0,forced:!o},{getOwnPropertyNames:vt}),H(),Z(A,me),x[te]=!0,bO}var VO={},qd,KO;function az(){if(KO)return qd;KO=1;var r=Ss();return qd=r&&!!Symbol.for&&!!Symbol.keyFor,qd}var GO;function CV(){if(GO)return VO;GO=1;var r=ye(),e=tr(),t=wt(),i=Li(),n=Ts(),s=az(),o=n("string-to-symbol-registry"),a=n("symbol-to-string-registry");return r({target:"Symbol",stat:!0,forced:!s},{for:function(u){var l=i(u);if(t(o,l))return o[l];var c=e("Symbol")(l);return o[l]=c,a[c]=l,c}}),VO}var YO={},XO;function xV(){if(XO)return YO;XO=1;var r=ye(),e=wt(),t=Yo(),i=Os(),n=Ts(),s=az(),o=n("symbol-to-string-registry");return r({target:"Symbol",stat:!0,forced:!s},{keyFor:function(u){if(!t(u))throw new TypeError(i(u)+" is not a symbol");if(e(o,u))return o[u]}}),YO}var JO={},Dd,QO;function qV(){if(QO)return Dd;QO=1;var r=ze(),e=Sn(),t=bt(),i=ai(),n=Li(),s=r([].push);return Dd=function(o){if(t(o))return o;if(e(o)){for(var a=o.length,u=[],l=0;l=v.length)return f.target=null,o(void 0,!0);switch(f.kind){case"keys":return o(p,!1);case"values":return o(v[p],!1)}return o([p,v[p]],!1)},"values");var h=t.Arguments=t.Array;if(e("keys"),e("values"),e("entries"),!a&&u&&h.name!=="values")try{n(h,"name",{value:"values"})}catch{}return Gd}var Yd,JI;function tK(){return JI||(JI=1,Yd={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}),Yd}var QI;function Hi(){if(QI)return NI;QI=1,zi();var r=tK(),e=ct(),t=On(),i=xs();for(var n in r)t(e[n],n),i[n]=i.Array;return NI}var Xd,ZI;function gz(){if(ZI)return Xd;ZI=1;var r=VV();return Hi(),Xd=r,Xd}var eT={},tT;function rK(){if(tT)return eT;tT=1;var r=Et(),e=dr().f,t=r("metadata"),i=Function.prototype;return i[t]===void 0&&e(i,t,{value:null}),eT}var rT={},iT;function iK(){return iT||(iT=1,cz()),rT}var nT={},sT;function nK(){return sT||(sT=1,dz()),nT}var oT={},aT;function sK(){if(aT)return oT;aT=1;var r=Xe();return r("metadata"),oT}var Jd,uT;function oK(){if(uT)return Jd;uT=1;var r=gz();return rK(),iK(),nK(),sK(),Jd=r,Jd}var lT={},Qd,cT;function mz(){if(cT)return Qd;cT=1;var r=tr(),e=ze(),t=r("Symbol"),i=t.keyFor,n=e(t.prototype.valueOf);return Qd=t.isRegisteredSymbol||function(o){try{return i(n(o))!==void 0}catch{return!1}},Qd}var dT;function aK(){if(dT)return lT;dT=1;var r=ye(),e=mz();return r({target:"Symbol",stat:!0},{isRegisteredSymbol:e}),lT}var hT={},Zd,fT;function yz(){if(fT)return Zd;fT=1;for(var r=Ts(),e=tr(),t=ze(),i=Yo(),n=Et(),s=e("Symbol"),o=s.isWellKnownSymbol,a=e("Object","getOwnPropertyNames"),u=t(s.prototype.valueOf),l=r("wks"),c=0,d=a(s),h=d.length;c=f?u?"":void 0:(v=s(d,h),v<55296||v>56319||h+1===f||(p=s(d,h+1))<56320||p>57343?u?n(d,h):v:u?o(d,h,h+2):(v-55296<<10)+(p-56320)+65536)}};return rh={codeAt:a(!1),charAt:a(!0)},rh}var MT;function ju(){if(MT)return DT;MT=1;var r=_K().charAt,e=Li(),t=ea(),i=qw(),n=Dw(),s="String Iterator",o=t.set,a=t.getterFor(s);return i(String,"String",function(u){o(this,{type:s,string:e(u),index:0})},function(){var l=a(this),c=l.string,d=l.index,h;return d>=c.length?n(void 0,!0):(h=r(c,d),l.index+=h.length,n(h,!1))}),DT}var ih,NT;function wK(){if(NT)return ih;NT=1,zi(),ju(),hz();var r=Bu();return ih=r.f("iterator"),ih}var nh,FT;function bz(){if(FT)return nh;FT=1;var r=wK();return Hi(),nh=r,nh}var sh,kT;function EK(){if(kT)return sh;kT=1;var r=bz();return sh=r,sh}var oh,BT;function SK(){if(BT)return oh;BT=1;var r=EK();return oh=r,oh}var ah,jT;function OK(){return jT||(jT=1,ah=SK()),ah}var IK=OK(),TK=Te(IK);function xo(r){"@babel/helpers - typeof";return xo=typeof xa=="function"&&typeof TK=="symbol"?function(e){return typeof e}:function(e){return e&&typeof xa=="function"&&e.constructor===xa&&e!==xa.prototype?"symbol":typeof e},xo(r)}var uh,LT;function $K(){if(LT)return uh;LT=1,fz();var r=Bu();return uh=r.f("toPrimitive"),uh}var lh,zT;function PK(){if(zT)return lh;zT=1;var r=$K();return lh=r,lh}var ch,HT;function RK(){if(HT)return ch;HT=1;var r=PK();return ch=r,ch}var dh,WT;function CK(){if(WT)return dh;WT=1;var r=RK();return dh=r,dh}var hh,UT;function xK(){return UT||(UT=1,hh=CK()),hh}var qK=xK(),DK=Te(qK);function AK(r,e){if(xo(r)!="object"||!r)return r;var t=r[DK];if(t!==void 0){var i=t.call(r,e);if(xo(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function MK(r){var e=AK(r,"string");return xo(e)=="symbol"?e:e+""}function Oi(r,e,t){return(e=MK(e))in r?wV(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}var VT={},fh,KT;function NK(){if(KT)return fh;KT=1;var r=ze(),e=ui(),t=zt(),i=wt(),n=Rs(),s=Uo(),o=Function,a=r([].concat),u=r([].join),l={},c=function(d,h,f){if(!i(l,h)){for(var v=[],p=0;p=0:v>p;p+=b)p in f&&(d=l(d,f[p],p,h));return d}};return bh={left:o(!1),right:o(!0)},bh}var _h,r$;function Lu(){if(r$)return _h;r$=1;var r=ke();return _h=function(e,t){var i=[][e];return!!i&&r(function(){i.call(null,t||function(){return 1},1)})},_h}var wh,i$;function wz(){if(i$)return wh;i$=1;var r=ct(),e=Es(),t=ai(),i=function(n){return e.slice(0,n.length)===n};return wh=function(){return i("Bun/")?"BUN":i("Cloudflare-Workers")?"CLOUDFLARE":i("Deno/")?"DENO":i("Node.js/")?"NODE":r.Bun&&typeof Bun.version=="string"?"BUN":r.Deno&&typeof Deno.version=="object"?"DENO":t(r.process)==="process"?"NODE":r.window&&r.document?"BROWSER":"REST"}(),wh}var Eh,n$;function WK(){if(n$)return Eh;n$=1;var r=wz();return Eh=r==="NODE",Eh}var s$;function UK(){if(s$)return e$;s$=1;var r=ye(),e=HK().left,t=Lu(),i=Go(),n=WK(),s=!n&&i>79&&i<83,o=s||!t("reduce");return r({target:"Array",proto:!0,forced:o},{reduce:function(u){var l=arguments.length;return e(this,u,l,l>1?arguments[1]:void 0)}}),e$}var Sh,o$;function VK(){if(o$)return Sh;o$=1,UK();var r=Yt();return Sh=r("Array","reduce"),Sh}var Oh,a$;function KK(){if(a$)return Oh;a$=1;var r=_t(),e=VK(),t=Array.prototype;return Oh=function(i){var n=i.reduce;return i===t||r(t,i)&&n===t.reduce?e:n},Oh}var Ih,u$;function GK(){if(u$)return Ih;u$=1;var r=KK();return Ih=r,Ih}var Th,l$;function YK(){return l$||(l$=1,Th=GK()),Th}var XK=YK(),JK=Te(XK),c$={},d$;function QK(){if(d$)return c$;d$=1;var r=ye(),e=Cs().filter,t=Xo(),i=t("filter");return r({target:"Array",proto:!0,forced:!i},{filter:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),c$}var $h,h$;function ZK(){if(h$)return $h;h$=1,QK();var r=Yt();return $h=r("Array","filter"),$h}var Ph,f$;function eG(){if(f$)return Ph;f$=1;var r=_t(),e=ZK(),t=Array.prototype;return Ph=function(i){var n=i.filter;return i===t||r(t,i)&&n===t.filter?e:n},Ph}var Rh,v$;function tG(){if(v$)return Rh;v$=1;var r=eG();return Rh=r,Rh}var Ch,p$;function rG(){return p$||(p$=1,Ch=tG()),Ch}var iG=rG(),Yn=Te(iG),g$={},m$;function nG(){if(m$)return g$;m$=1;var r=ye(),e=Cs().map,t=Xo(),i=t("map");return r({target:"Array",proto:!0,forced:!i},{map:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),g$}var xh,y$;function sG(){if(y$)return xh;y$=1,nG();var r=Yt();return xh=r("Array","map"),xh}var qh,b$;function oG(){if(b$)return qh;b$=1;var r=_t(),e=sG(),t=Array.prototype;return qh=function(i){var n=i.map;return i===t||r(t,i)&&n===t.map?e:n},qh}var Dh,_$;function aG(){if(_$)return Dh;_$=1;var r=oG();return Dh=r,Dh}var Ah,w$;function uG(){return w$||(w$=1,Ah=aG()),Ah}var lG=uG(),mr=Te(lG),Mh,E$;function cG(){return E$||(E$=1,Mh=gz()),Mh}var dG=cG(),hG=Te(dG),S$={},O$;function fG(){if(O$)return S$;O$=1;var r=ye(),e=Sn(),t=rz(),i=zt(),n=Pw(),s=Bi(),o=jr(),a=Au(),u=Et(),l=Xo(),c=Rs(),d=l("slice"),h=u("species"),f=Array,v=Math.max;return r({target:"Array",proto:!0,forced:!d},{slice:function(b,m){var g=o(this),w=s(g),y=n(b,w),S=n(m===void 0?w:m,w),O,I,_;if(e(g)&&(O=g.constructor,t(O)&&(O===f||e(O.prototype))?O=void 0:i(O)&&(O=O[h],O===null&&(O=void 0)),O===f||O===void 0))return c(g,y,S);for(I=new(O===void 0?f:O)(v(S-y,0)),_=0;y1?arguments[1]:void 0)},Xh}var K$;function FG(){if(K$)return U$;K$=1;var r=ye(),e=NG();return r({target:"Array",proto:!0,forced:[].forEach!==e},{forEach:e}),U$}var Jh,G$;function kG(){if(G$)return Jh;G$=1,FG();var r=Yt();return Jh=r("Array","forEach"),Jh}var Qh,Y$;function BG(){if(Y$)return Qh;Y$=1;var r=kG();return Qh=r,Qh}var Zh,X$;function jG(){if(X$)return Zh;X$=1;var r=ji(),e=wt(),t=_t(),i=BG(),n=Array.prototype,s={DOMTokenList:!0,NodeList:!0};return Zh=function(o){var a=o.forEach;return o===n||t(n,o)&&a===n.forEach||e(s,r(o))?i:a},Zh}var ef,J$;function LG(){return J$||(J$=1,ef=jG()),ef}var zG=LG(),dn=Te(zG),Q$={},Z$;function HG(){if(Z$)return Q$;Z$=1;var r=ye(),e=ze(),t=Sn(),i=e([].reverse),n=[1,2];return r({target:"Array",proto:!0,forced:String(n)===String(n.reverse())},{reverse:function(){return t(this)&&(this.length=this.length),i(this)}}),Q$}var tf,eP;function WG(){if(eP)return tf;eP=1,HG();var r=Yt();return tf=r("Array","reverse"),tf}var rf,tP;function UG(){if(tP)return rf;tP=1;var r=_t(),e=WG(),t=Array.prototype;return rf=function(i){var n=i.reverse;return i===t||r(t,i)&&n===t.reverse?e:n},rf}var nf,rP;function VG(){if(rP)return nf;rP=1;var r=UG();return nf=r,nf}var sf,iP;function KG(){return iP||(iP=1,sf=VG()),sf}var GG=KG(),YG=Te(GG),nP={},of,sP;function XG(){if(sP)return of;sP=1;var r=dt(),e=Sn(),t=TypeError,i=Object.getOwnPropertyDescriptor,n=r&&!function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(s){return s instanceof TypeError}}();return of=n?function(s,o){if(e(s)&&!i(s,"length").writable)throw new t("Cannot set read only .length");return s.length=o}:function(s,o){return s.length=o},of}var af,oP;function Sz(){if(oP)return af;oP=1;var r=Os(),e=TypeError;return af=function(t,i){if(!delete t[i])throw new e("Cannot delete property "+r(i)+" of "+r(t))},af}var aP;function JG(){if(aP)return nP;aP=1;var r=ye(),e=Ir(),t=Pw(),i=Ps(),n=Bi(),s=XG(),o=tz(),a=$w(),u=Au(),l=Sz(),c=Xo(),d=c("splice"),h=Math.max,f=Math.min;return r({target:"Array",proto:!0,forced:!d},{splice:function(p,b){var m=e(this),g=n(m),w=t(p,g),y=arguments.length,S,O,I,_,E,T;for(y===0?S=O=0:y===1?(S=0,O=g-w):(S=y-2,O=f(h(i(b),0),g-w)),o(g+S-O),I=a(m,O),_=0;_g-O+S;_--)l(m,_-1)}else if(S>O)for(_=g-O;_>w;_--)E=_+O-1,T=_+S-1,E in m?m[T]=m[E]:l(m,T);for(_=0;_m;)for(var y=u(arguments[m++]),S=g?d(n(y),g(y)):n(y),O=S.length,I=0,_;O>I;)_=S[I++],(!r||t(w,y,_))&&(p[_]=y[_]);return p}:l,hf}var vP;function n6(){if(vP)return hP;vP=1;var r=ye(),e=i6();return r({target:"Object",stat:!0,arity:2,forced:Object.assign!==e},{assign:e}),hP}var ff,pP;function s6(){if(pP)return ff;pP=1,n6();var r=gt();return ff=r.Object.assign,ff}var vf,gP;function o6(){if(gP)return vf;gP=1;var r=s6();return vf=r,vf}var pf,mP;function a6(){return mP||(mP=1,pf=o6()),pf}var u6=a6(),l6=Te(u6),gf,yP;function c6(){if(yP)return gf;yP=1,iz();var r=Yt();return gf=r("Array","concat"),gf}var mf,bP;function d6(){if(bP)return mf;bP=1;var r=_t(),e=c6(),t=Array.prototype;return mf=function(i){var n=i.concat;return i===t||r(t,i)&&n===t.concat?e:n},mf}var yf,_P;function h6(){if(_P)return yf;_P=1;var r=d6();return yf=r,yf}var bf,wP;function f6(){return wP||(wP=1,bf=h6()),bf}var v6=f6(),p6=Te(v6),EP={},SP;function g6(){if(SP)return EP;SP=1;var r=ye(),e=dt(),t=Qo();return r({target:"Object",stat:!0,sham:!e},{create:t}),EP}var _f,OP;function m6(){if(OP)return _f;OP=1,g6();var r=gt(),e=r.Object;return _f=function(i,n){return e.create(i,n)},_f}var wf,IP;function y6(){if(IP)return wf;IP=1;var r=m6();return wf=r,wf}var Ef,TP;function b6(){return TP||(TP=1,Ef=y6()),Ef}var _6=b6(),w6=Te(_6),$P={},Sf,PP;function E6(){if(PP)return Sf;PP=1;var r=Ps(),e=Li(),t=En(),i=RangeError;return Sf=function(s){var o=e(t(this)),a="",u=r(s);if(u<0||u===1/0)throw new i("Wrong number of repetitions");for(;u>0;(u>>>=1)&&(o+=o))u&1&&(a+=o);return a},Sf}var Of,RP;function S6(){if(RP)return Of;RP=1;var r=ze(),e=ez(),t=Li(),i=E6(),n=En(),s=r(i),o=r("".slice),a=Math.ceil,u=function(l){return function(c,d,h){var f=t(n(c)),v=e(d),p=f.length,b=h===void 0?" ":t(h),m,g;return v<=p||b===""?f:(m=v-p,g=s(b,a(m/b.length)),g.length>m&&(g=o(g,0,m)),l?f+g:g+f)}};return Of={start:u(!1),end:u(!0)},Of}var If,CP;function O6(){if(CP)return If;CP=1;var r=ze(),e=ke(),t=S6().start,i=RangeError,n=isFinite,s=Math.abs,o=Date.prototype,a=o.toISOString,u=r(o.getTime),l=r(o.getUTCDate),c=r(o.getUTCFullYear),d=r(o.getUTCHours),h=r(o.getUTCMilliseconds),f=r(o.getUTCMinutes),v=r(o.getUTCMonth),p=r(o.getUTCSeconds);return If=e(function(){return a.call(new Date(-5e13-1))!=="0385-07-25T07:06:39.999Z"})||!e(function(){a.call(new Date(NaN))})?function(){if(!n(u(this)))throw new i("Invalid time value");var m=this,g=c(m),w=h(m),y=g<0?"-":g>9999?"+":"";return y+t(s(g),y?6:4,0)+"-"+t(v(m)+1,2,0)+"-"+t(l(m),2,0)+"T"+t(d(m),2,0)+":"+t(f(m),2,0)+":"+t(p(m),2,0)+"."+t(w,3,0)+"Z"}:a,If}var xP;function I6(){if(xP)return $P;xP=1;var r=ye(),e=Gt(),t=Ir(),i=YL(),n=O6(),s=ai(),o=ke(),a=o(function(){return new Date(NaN).toJSON()!==null||e(Date.prototype.toJSON,{toISOString:function(){return 1}})!==1});return r({target:"Date",proto:!0,forced:a},{toJSON:function(l){var c=t(this),d=i(c,"number");return typeof d=="number"&&!isFinite(d)?null:!("toISOString"in c)&&s(c)==="Date"?e(n,c):c.toISOString()}}),$P}var Tf,qP;function T6(){if(qP)return Tf;qP=1,I6(),uz();var r=gt(),e=Ru();return r.JSON||(r.JSON={stringify:JSON.stringify}),Tf=function(i,n,s){return e(r.JSON.stringify,null,arguments)},Tf}var $f,DP;function $6(){if(DP)return $f;DP=1;var r=T6();return $f=r,$f}var Pf,AP;function P6(){return AP||(AP=1,Pf=$6()),Pf}var R6=P6(),C6=Te(R6),MP={},NP={},Rf,FP;function x6(){if(FP)return Rf;FP=1;var r=TypeError;return Rf=function(e,t){if(ed,p=t(h)?h:a(h),b=v?s(arguments,d):[],m=v?function(){e(p,this,b)}:p;return c?l(m,f):l(m)}:l},Cf}var BP;function q6(){if(BP)return NP;BP=1;var r=ye(),e=ct(),t=Iz(),i=t(e.setInterval,!0);return r({global:!0,bind:!0,forced:e.setInterval!==i},{setInterval:i}),NP}var jP={},LP;function D6(){if(LP)return jP;LP=1;var r=ye(),e=ct(),t=Iz(),i=t(e.setTimeout,!0);return r({global:!0,bind:!0,forced:e.setTimeout!==i},{setTimeout:i}),jP}var zP;function A6(){return zP||(zP=1,q6(),D6()),MP}var xf,HP;function M6(){if(HP)return xf;HP=1,A6();var r=gt();return xf=r.setTimeout,xf}var qf,WP;function N6(){return WP||(WP=1,qf=M6()),qf}var F6=N6(),k6=Te(F6),Df={exports:{}},UP;function B6(){return UP||(UP=1,function(r){function e(i){if(i)return t(i);this._callbacks=new Map}function t(i){return Object.assign(i,e.prototype),i._callbacks=new Map,i}e.prototype.on=function(i,n){const s=this._callbacks.get(i)??[];return s.push(n),this._callbacks.set(i,s),this},e.prototype.once=function(i,n){const s=(...o)=>{this.off(i,s),n.apply(this,o)};return s.fn=n,this.on(i,s),this},e.prototype.off=function(i,n){if(i===void 0&&n===void 0)return this._callbacks.clear(),this;if(n===void 0)return this._callbacks.delete(i),this;const s=this._callbacks.get(i);if(s){for(const[o,a]of s.entries())if(a===n||a.fn===n){s.splice(o,1);break}s.length===0?this._callbacks.delete(i):this._callbacks.set(i,s)}return this},e.prototype.emit=function(i,...n){const s=this._callbacks.get(i);if(s){const o=[...s];for(const a of o)a.apply(this,n)}return this},e.prototype.listeners=function(i){return this._callbacks.get(i)??[]},e.prototype.listenerCount=function(i){if(i)return this.listeners(i).length;let n=0;for(const s of this._callbacks.values())n+=s.length;return n},e.prototype.hasListeners=function(i){return this.listenerCount(i)>0},e.prototype.addEventListener=e.prototype.on,e.prototype.removeListener=e.prototype.off,e.prototype.removeEventListener=e.prototype.off,e.prototype.removeAllListeners=e.prototype.off,r.exports=e}(Df)),Df.exports}var j6=B6(),L6=Te(j6);/*! Hammer.JS - v2.0.17-rc - 2019-12-16 + */var ZE=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Te(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var Gl={exports:{}},eS={},eo,tS;function ct(){if(tS)return eo;tS=1;var r=function(e){return e&&e.Math===Math&&e};return eo=r(typeof globalThis=="object"&&globalThis)||r(typeof window=="object"&&window)||r(typeof self=="object"&&self)||r(typeof ZE=="object"&&ZE)||r(typeof eo=="object"&&eo)||function(){return this}()||Function("return this")(),eo}var Yl,rS;function ke(){return rS||(rS=1,Yl=function(r){try{return!!r()}catch{return!0}}),Yl}var Xl,iS;function Uo(){if(iS)return Xl;iS=1;var r=ke();return Xl=!r(function(){var e=(function(){}).bind();return typeof e!="function"||e.hasOwnProperty("prototype")}),Xl}var Jl,nS;function Ru(){if(nS)return Jl;nS=1;var r=Uo(),e=Function.prototype,t=e.apply,i=e.call;return Jl=typeof Reflect=="object"&&Reflect.apply||(r?i.bind(t):function(){return i.apply(t,arguments)}),Jl}var Ql,sS;function ze(){if(sS)return Ql;sS=1;var r=Uo(),e=Function.prototype,t=e.call,i=r&&e.bind.bind(t,t);return Ql=r?i:function(n){return function(){return t.apply(n,arguments)}},Ql}var Zl,oS;function ui(){if(oS)return Zl;oS=1;var r=ze(),e=r({}.toString),t=r("".slice);return Zl=function(i){return t(e(i),8,-1)},Zl}var ec,aS;function YL(){if(aS)return ec;aS=1;var r=ui(),e=ze();return ec=function(t){if(r(t)==="Function")return e(t)},ec}var tc,uS;function bt(){if(uS)return tc;uS=1;var r=typeof document=="object"&&document.all;return tc=typeof r>"u"&&r!==void 0?function(e){return typeof e=="function"||e===r}:function(e){return typeof e=="function"},tc}var rc={},ic,lS;function dt(){if(lS)return ic;lS=1;var r=ke();return ic=!r(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7}),ic}var nc,cS;function Yt(){if(cS)return nc;cS=1;var r=Uo(),e=Function.prototype.call;return nc=r?e.bind(e):function(){return e.apply(e,arguments)},nc}var sc={},dS;function Ew(){if(dS)return sc;dS=1;var r={}.propertyIsEnumerable,e=Object.getOwnPropertyDescriptor,t=e&&!r.call({1:2},1);return sc.f=t?function(n){var s=e(this,n);return!!s&&s.enumerable}:r,sc}var oc,hS;function Vo(){return hS||(hS=1,oc=function(r,e){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:e}}),oc}var ac,fS;function Cu(){if(fS)return ac;fS=1;var r=ze(),e=ke(),t=ui(),i=Object,n=r("".split);return ac=e(function(){return!i("z").propertyIsEnumerable(0)})?function(s){return t(s)==="String"?n(s,""):i(s)}:i,ac}var uc,vS;function Ko(){return vS||(vS=1,uc=function(r){return r==null}),uc}var lc,pS;function En(){if(pS)return lc;pS=1;var r=Ko(),e=TypeError;return lc=function(t){if(r(t))throw new e("Can't call method on "+t);return t},lc}var cc,gS;function jr(){if(gS)return cc;gS=1;var r=Cu(),e=En();return cc=function(t){return r(e(t))},cc}var dc,mS;function Ht(){if(mS)return dc;mS=1;var r=bt();return dc=function(e){return typeof e=="object"?e!==null:r(e)},dc}var hc,yS;function gt(){return yS||(yS=1,hc={}),hc}var fc,bS;function rr(){if(bS)return fc;bS=1;var r=gt(),e=ct(),t=bt(),i=function(n){return t(n)?n:void 0};return fc=function(n,s){return arguments.length<2?i(r[n])||i(e[n]):r[n]&&r[n][s]||e[n]&&e[n][s]},fc}var vc,_S;function _t(){if(_S)return vc;_S=1;var r=ze();return vc=r({}.isPrototypeOf),vc}var pc,wS;function Es(){if(wS)return pc;wS=1;var r=ct(),e=r.navigator,t=e&&e.userAgent;return pc=t?String(t):"",pc}var gc,ES;function Go(){if(ES)return gc;ES=1;var r=ct(),e=Es(),t=r.process,i=r.Deno,n=t&&t.versions||i&&i.version,s=n&&n.v8,o,a;return s&&(o=s.split("."),a=o[0]>0&&o[0]<4?1:+(o[0]+o[1])),!a&&e&&(o=e.match(/Edge\/(\d+)/),(!o||o[1]>=74)&&(o=e.match(/Chrome\/(\d+)/),o&&(a=+o[1]))),gc=a,gc}var mc,SS;function Ss(){if(SS)return mc;SS=1;var r=Go(),e=ke(),t=ct(),i=t.String;return mc=!!Object.getOwnPropertySymbols&&!e(function(){var n=Symbol("symbol detection");return!i(n)||!(Object(n)instanceof Symbol)||!Symbol.sham&&r&&r<41}),mc}var yc,OS;function XL(){if(OS)return yc;OS=1;var r=Ss();return yc=r&&!Symbol.sham&&typeof Symbol.iterator=="symbol",yc}var bc,IS;function Yo(){if(IS)return bc;IS=1;var r=rr(),e=bt(),t=_t(),i=XL(),n=Object;return bc=i?function(s){return typeof s=="symbol"}:function(s){var o=r("Symbol");return e(o)&&t(o.prototype,n(s))},bc}var _c,TS;function Os(){if(TS)return _c;TS=1;var r=String;return _c=function(e){try{return r(e)}catch{return"Object"}},_c}var wc,$S;function li(){if($S)return wc;$S=1;var r=bt(),e=Os(),t=TypeError;return wc=function(i){if(r(i))return i;throw new t(e(i)+" is not a function")},wc}var Ec,PS;function Sw(){if(PS)return Ec;PS=1;var r=li(),e=Ko();return Ec=function(t,i){var n=t[i];return e(n)?void 0:r(n)},Ec}var Sc,RS;function fV(){if(RS)return Sc;RS=1;var r=Yt(),e=bt(),t=Ht(),i=TypeError;return Sc=function(n,s){var o,a;if(s==="string"&&e(o=n.toString)&&!t(a=r(o,n))||e(o=n.valueOf)&&!t(a=r(o,n))||s!=="string"&&e(o=n.toString)&&!t(a=r(o,n)))return a;throw new i("Can't convert object to primitive value")},Sc}var Oc={exports:{}},Ic,CS;function Is(){return CS||(CS=1,Ic=!0),Ic}var Tc,xS;function vV(){if(xS)return Tc;xS=1;var r=ct(),e=Object.defineProperty;return Tc=function(t,i){try{e(r,t,{value:i,configurable:!0,writable:!0})}catch{r[t]=i}return i},Tc}var qS;function Ow(){if(qS)return Oc.exports;qS=1;var r=Is(),e=ct(),t=vV(),i="__core-js_shared__",n=Oc.exports=e[i]||t(i,{});return(n.versions||(n.versions=[])).push({version:"3.44.0",mode:r?"pure":"global",copyright:"© 2014-2025 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.44.0/LICENSE",source:"https://github.com/zloirock/core-js"}),Oc.exports}var $c,DS;function Ts(){if(DS)return $c;DS=1;var r=Ow();return $c=function(e,t){return r[e]||(r[e]=t||{})},$c}var Pc,AS;function Ir(){if(AS)return Pc;AS=1;var r=En(),e=Object;return Pc=function(t){return e(r(t))},Pc}var Rc,MS;function wt(){if(MS)return Rc;MS=1;var r=ze(),e=Ir(),t=r({}.hasOwnProperty);return Rc=Object.hasOwn||function(n,s){return t(e(n),s)},Rc}var Cc,NS;function xu(){if(NS)return Cc;NS=1;var r=ze(),e=0,t=Math.random(),i=r(1.1.toString);return Cc=function(n){return"Symbol("+(n===void 0?"":n)+")_"+i(++e+t,36)},Cc}var xc,FS;function Et(){if(FS)return xc;FS=1;var r=ct(),e=Ts(),t=wt(),i=xu(),n=Ss(),s=XL(),o=r.Symbol,a=e("wks"),u=s?o.for||o:o&&o.withoutSetter||i;return xc=function(l){return t(a,l)||(a[l]=n&&t(o,l)?o[l]:u("Symbol."+l)),a[l]},xc}var qc,kS;function JL(){if(kS)return qc;kS=1;var r=Yt(),e=Ht(),t=Yo(),i=Sw(),n=fV(),s=Et(),o=TypeError,a=s("toPrimitive");return qc=function(u,l){if(!e(u)||t(u))return u;var c=i(u,a),d;if(c){if(l===void 0&&(l="default"),d=r(c,u,l),!e(d)||t(d))return d;throw new o("Can't convert object to primitive value")}return l===void 0&&(l="number"),n(u,l)},qc}var Dc,BS;function Iw(){if(BS)return Dc;BS=1;var r=JL(),e=Yo();return Dc=function(t){var i=r(t,"string");return e(i)?i:i+""},Dc}var Ac,jS;function QL(){if(jS)return Ac;jS=1;var r=ct(),e=Ht(),t=r.document,i=e(t)&&e(t.createElement);return Ac=function(n){return i?t.createElement(n):{}},Ac}var Mc,LS;function ZL(){if(LS)return Mc;LS=1;var r=dt(),e=ke(),t=QL();return Mc=!r&&!e(function(){return Object.defineProperty(t("div"),"a",{get:function(){return 7}}).a!==7}),Mc}var zS;function qu(){if(zS)return rc;zS=1;var r=dt(),e=Yt(),t=Ew(),i=Vo(),n=jr(),s=Iw(),o=wt(),a=ZL(),u=Object.getOwnPropertyDescriptor;return rc.f=r?u:function(c,d){if(c=n(c),d=s(d),a)try{return u(c,d)}catch{}if(o(c,d))return i(!e(t.f,c,d),c[d])},rc}var Nc,HS;function pV(){if(HS)return Nc;HS=1;var r=ke(),e=bt(),t=/#|\.prototype\./,i=function(u,l){var c=s[n(u)];return c===a?!0:c===o?!1:e(l)?r(l):!!l},n=i.normalize=function(u){return String(u).replace(t,".").toLowerCase()},s=i.data={},o=i.NATIVE="N",a=i.POLYFILL="P";return Nc=i,Nc}var Fc,WS;function Du(){if(WS)return Fc;WS=1;var r=YL(),e=li(),t=Uo(),i=r(r.bind);return Fc=function(n,s){return e(n),s===void 0?n:t?i(n,s):function(){return n.apply(s,arguments)}},Fc}var kc={},Bc,US;function ez(){if(US)return Bc;US=1;var r=dt(),e=ke();return Bc=r&&e(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42}),Bc}var jc,VS;function ci(){if(VS)return jc;VS=1;var r=Ht(),e=String,t=TypeError;return jc=function(i){if(r(i))return i;throw new t(e(i)+" is not an object")},jc}var KS;function dr(){if(KS)return kc;KS=1;var r=dt(),e=ZL(),t=ez(),i=ci(),n=Iw(),s=TypeError,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,u="enumerable",l="configurable",c="writable";return kc.f=r?t?function(h,f,v){if(i(h),f=n(f),i(v),typeof h=="function"&&f==="prototype"&&"value"in v&&c in v&&!v[c]){var p=a(h,f);p&&p[c]&&(h[f]=v.value,v={configurable:l in v?v[l]:p[l],enumerable:u in v?v[u]:p[u],writable:!1})}return o(h,f,v)}:o:function(h,f,v){if(i(h),f=n(f),i(v),e)try{return o(h,f,v)}catch{}if("get"in v||"set"in v)throw new s("Accessors not supported");return"value"in v&&(h[f]=v.value),h},kc}var Lc,GS;function $s(){if(GS)return Lc;GS=1;var r=dt(),e=dr(),t=Vo();return Lc=r?function(i,n,s){return e.f(i,n,t(1,s))}:function(i,n,s){return i[n]=s,i},Lc}var zc,YS;function ye(){if(YS)return zc;YS=1;var r=ct(),e=Ru(),t=YL(),i=bt(),n=qu().f,s=pV(),o=gt(),a=Du(),u=$s(),l=wt(),c=function(d){var h=function(f,v,p){if(this instanceof h){switch(arguments.length){case 0:return new d;case 1:return new d(f);case 2:return new d(f,v)}return new d(f,v,p)}return e(d,this,arguments)};return h.prototype=d.prototype,h};return zc=function(d,h){var f=d.target,v=d.global,p=d.stat,b=d.proto,m=v?r:p?r[f]:r[f]&&r[f].prototype,g=v?o:o[f]||u(o,f,{})[f],w=g.prototype,y,S,O,I,_,E,T,R,x;for(I in h)y=s(v?I:f+(p?".":"#")+I,d.forced),S=!y&&m&&l(m,I),E=g[I],S&&(d.dontCallGetSet?(x=n(m,I),T=x&&x.value):T=m[I]),_=S&&T?T:h[I],!(!y&&!b&&typeof E==typeof _)&&(d.bind&&S?R=a(_,r):d.wrap&&S?R=c(_):b&&i(_)?R=t(_):R=_,(d.sham||_&&_.sham||E&&E.sham)&&u(R,"sham",!0),u(g,I,R),b&&(O=f+"Prototype",l(o,O)||u(o,O,{}),u(o[O],I,_),d.real&&w&&(y||!w[I])&&u(w,I,_)))},zc}var XS;function gV(){if(XS)return eS;XS=1;var r=ye(),e=dt(),t=dr().f;return r({target:"Object",stat:!0,forced:Object.defineProperty!==t,sham:!e},{defineProperty:t}),eS}var JS;function mV(){if(JS)return Gl.exports;JS=1,gV();var r=gt(),e=r.Object,t=Gl.exports=function(n,s,o){return e.defineProperty(n,s,o)};return e.defineProperty.sham&&(t.sham=!0),Gl.exports}var Hc,QS;function tz(){if(QS)return Hc;QS=1;var r=mV();return Hc=r,Hc}var Wc,ZS;function yV(){if(ZS)return Wc;ZS=1;var r=tz();return Wc=r,Wc}var Uc,eO;function bV(){if(eO)return Uc;eO=1;var r=yV();return Uc=r,Uc}var Vc,tO;function _V(){return tO||(tO=1,Vc=bV()),Vc}var wV=_V(),EV=Te(wV),rO={},Kc,iO;function Sn(){if(iO)return Kc;iO=1;var r=ui();return Kc=Array.isArray||function(t){return r(t)==="Array"},Kc}var Gc,nO;function SV(){if(nO)return Gc;nO=1;var r=Math.ceil,e=Math.floor;return Gc=Math.trunc||function(i){var n=+i;return(n>0?e:r)(n)},Gc}var Yc,sO;function Ps(){if(sO)return Yc;sO=1;var r=SV();return Yc=function(e){var t=+e;return t!==t||t===0?0:r(t)},Yc}var Xc,oO;function rz(){if(oO)return Xc;oO=1;var r=Ps(),e=Math.min;return Xc=function(t){var i=r(t);return i>0?e(i,9007199254740991):0},Xc}var Jc,aO;function Bi(){if(aO)return Jc;aO=1;var r=rz();return Jc=function(e){return r(e.length)},Jc}var Qc,uO;function iz(){if(uO)return Qc;uO=1;var r=TypeError,e=9007199254740991;return Qc=function(t){if(t>e)throw r("Maximum allowed index exceeded");return t},Qc}var Zc,lO;function Au(){if(lO)return Zc;lO=1;var r=dt(),e=dr(),t=Vo();return Zc=function(i,n,s){r?e.f(i,n,t(0,s)):i[n]=s},Zc}var ed,cO;function Tw(){if(cO)return ed;cO=1;var r=Et(),e=r("toStringTag"),t={};return t[e]="z",ed=String(t)==="[object z]",ed}var td,dO;function ji(){if(dO)return td;dO=1;var r=Tw(),e=bt(),t=ui(),i=Et(),n=i("toStringTag"),s=Object,o=t(function(){return arguments}())==="Arguments",a=function(u,l){try{return u[l]}catch{}};return td=r?t:function(u){var l,c,d;return u===void 0?"Undefined":u===null?"Null":typeof(c=a(l=s(u),n))=="string"?c:o?t(l):(d=t(l))==="Object"&&e(l.callee)?"Arguments":d},td}var rd,hO;function OV(){if(hO)return rd;hO=1;var r=ze(),e=bt(),t=Ow(),i=r(Function.toString);return e(t.inspectSource)||(t.inspectSource=function(n){return i(n)}),rd=t.inspectSource,rd}var id,fO;function nz(){if(fO)return id;fO=1;var r=ze(),e=ke(),t=bt(),i=ji(),n=rr(),s=OV(),o=function(){},a=n("Reflect","construct"),u=/^\s*(?:class|function)\b/,l=r(u.exec),c=!u.test(o),d=function(v){if(!t(v))return!1;try{return a(o,[],v),!0}catch{return!1}},h=function(v){if(!t(v))return!1;switch(i(v)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return c||!!l(u,s(v))}catch{return!0}};return h.sham=!0,id=!a||e(function(){var f;return d(d.call)||!d(Object)||!d(function(){f=!0})||f})?h:d,id}var nd,vO;function IV(){if(vO)return nd;vO=1;var r=Sn(),e=nz(),t=Ht(),i=Et(),n=i("species"),s=Array;return nd=function(o){var a;return r(o)&&(a=o.constructor,e(a)&&(a===s||r(a.prototype))?a=void 0:t(a)&&(a=a[n],a===null&&(a=void 0))),a===void 0?s:a},nd}var sd,pO;function $w(){if(pO)return sd;pO=1;var r=IV();return sd=function(e,t){return new(r(e))(t===0?0:t)},sd}var od,gO;function Xo(){if(gO)return od;gO=1;var r=ke(),e=Et(),t=Go(),i=e("species");return od=function(n){return t>=51||!r(function(){var s=[],o=s.constructor={};return o[i]=function(){return{foo:1}},s[n](Boolean).foo!==1})},od}var mO;function sz(){if(mO)return rO;mO=1;var r=ye(),e=ke(),t=Sn(),i=Ht(),n=Ir(),s=Bi(),o=iz(),a=Au(),u=$w(),l=Xo(),c=Et(),d=Go(),h=c("isConcatSpreadable"),f=d>=51||!e(function(){var b=[];return b[h]=!1,b.concat()[0]!==b}),v=function(b){if(!i(b))return!1;var m=b[h];return m!==void 0?!!m:t(b)},p=!f||!l("concat");return r({target:"Array",proto:!0,arity:1,forced:p},{concat:function(m){var g=n(this),w=u(g,0),y=0,S,O,I,_,E;for(S=-1,I=arguments.length;Sc;)if(d=u[c++],d!==d)return!0}else for(;l>c;c++)if((n||c in u)&&u[c]===o)return n||c||0;return!n&&-1}};return cd={includes:i(!0),indexOf:i(!1)},cd}var dd,SO;function Jo(){return SO||(SO=1,dd={}),dd}var hd,OO;function oz(){if(OO)return hd;OO=1;var r=ze(),e=wt(),t=jr(),i=TV().indexOf,n=Jo(),s=r([].push);return hd=function(o,a){var u=t(o),l=0,c=[],d;for(d in u)!e(n,d)&&e(u,d)&&s(c,d);for(;a.length>l;)e(u,d=a[l++])&&(~i(c,d)||s(c,d));return c},hd}var fd,IO;function Rw(){return IO||(IO=1,fd=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]),fd}var vd,TO;function Mu(){if(TO)return vd;TO=1;var r=oz(),e=Rw();return vd=Object.keys||function(i){return r(i,e)},vd}var $O;function Cw(){if($O)return ud;$O=1;var r=dt(),e=ez(),t=dr(),i=ci(),n=jr(),s=Mu();return ud.f=r&&!e?Object.defineProperties:function(a,u){i(a);for(var l=n(u),c=s(u),d=c.length,h=0,f;d>h;)t.f(a,f=c[h++],l[f]);return a},ud}var pd,PO;function $V(){if(PO)return pd;PO=1;var r=rr();return pd=r("document","documentElement"),pd}var gd,RO;function Nu(){if(RO)return gd;RO=1;var r=Ts(),e=xu(),t=r("keys");return gd=function(i){return t[i]||(t[i]=e(i))},gd}var md,CO;function Qo(){if(CO)return md;CO=1;var r=ci(),e=Cw(),t=Rw(),i=Jo(),n=$V(),s=QL(),o=Nu(),a=">",u="<",l="prototype",c="script",d=o("IE_PROTO"),h=function(){},f=function(g){return u+c+a+g+u+"/"+c+a},v=function(g){g.write(f("")),g.close();var w=g.parentWindow.Object;return g=null,w},p=function(){var g=s("iframe"),w="java"+c+":",y;return g.style.display="none",n.appendChild(g),g.src=String(w),y=g.contentWindow.document,y.open(),y.write(f("document.F=Object")),y.close(),y.F},b,m=function(){try{b=new ActiveXObject("htmlfile")}catch{}m=typeof document<"u"?document.domain&&b?v(b):p():v(b);for(var g=t.length;g--;)delete m[l][t[g]];return m()};return i[d]=!0,md=Object.create||function(w,y){var S;return w!==null?(h[l]=r(w),S=new h,h[l]=null,S[d]=w):S=m(),y===void 0?S:e.f(S,y)},md}var yd={},xO;function Fu(){if(xO)return yd;xO=1;var r=oz(),e=Rw(),t=e.concat("length","prototype");return yd.f=Object.getOwnPropertyNames||function(n){return r(n,t)},yd}var bd={},_d,qO;function Rs(){if(qO)return _d;qO=1;var r=ze();return _d=r([].slice),_d}var DO;function az(){if(DO)return bd;DO=1;var r=ui(),e=jr(),t=Fu().f,i=Rs(),n=typeof window=="object"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(o){try{return t(o)}catch{return i(n)}};return bd.f=function(a){return n&&r(a)==="Window"?s(a):t(e(a))},bd}var wd={},AO;function ku(){return AO||(AO=1,wd.f=Object.getOwnPropertySymbols),wd}var Ed,MO;function Zo(){if(MO)return Ed;MO=1;var r=$s();return Ed=function(e,t,i,n){return n&&n.enumerable?e[t]=i:r(e,t,i),e},Ed}var Sd,NO;function xw(){if(NO)return Sd;NO=1;var r=dr();return Sd=function(e,t,i){return r.f(e,t,i)},Sd}var Od={},FO;function Bu(){if(FO)return Od;FO=1;var r=Et();return Od.f=r,Od}var Id,kO;function Xe(){if(kO)return Id;kO=1;var r=gt(),e=wt(),t=Bu(),i=dr().f;return Id=function(n){var s=r.Symbol||(r.Symbol={});e(s,n)||i(s,n,{value:t.f(n)})},Id}var Td,BO;function uz(){if(BO)return Td;BO=1;var r=Yt(),e=rr(),t=Et(),i=Zo();return Td=function(){var n=e("Symbol"),s=n&&n.prototype,o=s&&s.valueOf,a=t("toPrimitive");s&&!s[a]&&i(s,a,function(u){return r(o,this)},{arity:1})},Td}var $d,jO;function PV(){if(jO)return $d;jO=1;var r=Tw(),e=ji();return $d=r?{}.toString:function(){return"[object "+e(this)+"]"},$d}var Pd,LO;function On(){if(LO)return Pd;LO=1;var r=Tw(),e=dr().f,t=$s(),i=wt(),n=PV(),s=Et(),o=s("toStringTag");return Pd=function(a,u,l,c){var d=l?a:a&&a.prototype;d&&(i(d,o)||e(d,o,{configurable:!0,value:u}),c&&!r&&t(d,"toString",n))},Pd}var Rd,zO;function RV(){if(zO)return Rd;zO=1;var r=ct(),e=bt(),t=r.WeakMap;return Rd=e(t)&&/native code/.test(String(t)),Rd}var Cd,HO;function ea(){if(HO)return Cd;HO=1;var r=RV(),e=ct(),t=Ht(),i=$s(),n=wt(),s=Ow(),o=Nu(),a=Jo(),u="Object already initialized",l=e.TypeError,c=e.WeakMap,d,h,f,v=function(g){return f(g)?h(g):d(g,{})},p=function(g){return function(w){var y;if(!t(w)||(y=h(w)).type!==g)throw new l("Incompatible receiver, "+g+" required");return y}};if(r||s.state){var b=s.state||(s.state=new c);b.get=b.get,b.has=b.has,b.set=b.set,d=function(g,w){if(b.has(g))throw new l(u);return w.facade=g,b.set(g,w),w},h=function(g){return b.get(g)||{}},f=function(g){return b.has(g)}}else{var m=o("state");a[m]=!0,d=function(g,w){if(n(g,m))throw new l(u);return w.facade=g,i(g,m,w),w},h=function(g){return n(g,m)?g[m]:{}},f=function(g){return n(g,m)}}return Cd={set:d,get:h,has:f,enforce:v,getterFor:p},Cd}var xd,WO;function Cs(){if(WO)return xd;WO=1;var r=Du(),e=ze(),t=Cu(),i=Ir(),n=Bi(),s=$w(),o=e([].push),a=function(u){var l=u===1,c=u===2,d=u===3,h=u===4,f=u===6,v=u===7,p=u===5||f;return function(b,m,g,w){for(var y=i(b),S=t(y),O=n(S),I=r(m,g),_=0,E=w||s,T=l?E(b,O):c||v?E(b,0):void 0,R,x;O>_;_++)if((p||_ in S)&&(R=S[_],x=I(R,_,y),u))if(l)T[_]=x;else if(x)switch(u){case 3:return!0;case 5:return R;case 6:return _;case 2:o(T,R)}else switch(u){case 4:return!1;case 7:o(T,R)}return f?-1:d||h?h:T}};return xd={forEach:a(0),map:a(1),filter:a(2),some:a(3),every:a(4),find:a(5),findIndex:a(6),filterReject:a(7)},xd}var UO;function CV(){if(UO)return bO;UO=1;var r=ye(),e=ct(),t=Yt(),i=ze(),n=Is(),s=dt(),o=Ss(),a=ke(),u=wt(),l=_t(),c=ci(),d=jr(),h=Iw(),f=Li(),v=Vo(),p=Qo(),b=Mu(),m=Fu(),g=az(),w=ku(),y=qu(),S=dr(),O=Cw(),I=Ew(),_=Zo(),E=xw(),T=Ts(),R=Nu(),x=Jo(),C=xu(),D=Et(),j=Bu(),ee=Xe(),H=uz(),Z=On(),ve=ea(),we=Cs().forEach,te=R("hidden"),me="Symbol",xe="prototype",De=ve.set,nt=ve.getterFor(me),_e=Object[xe],A=e.Symbol,W=A&&A[xe],Y=e.RangeError,ie=e.TypeError,Pe=e.QObject,$=y.f,P=S.f,q=g.f,F=I.f,k=i([].push),N=T("symbols"),K=T("op-symbols"),X=T("wks"),U=!Pe||!Pe[xe]||!Pe[xe].findChild,B=function(oe,V,Q){var re=$(_e,V);re&&delete _e[V],P(oe,V,Q),re&&oe!==_e&&P(_e,V,re)},le=s&&a(function(){return p(P({},"a",{get:function(){return P(this,"a",{value:7}).a}})).a!==7})?B:P,J=function(oe,V){var Q=N[oe]=p(W);return De(Q,{type:me,tag:oe,description:V}),s||(Q.description=V),Q},se=function(V,Q,re){V===_e&&se(K,Q,re),c(V);var ne=h(Q);return c(re),u(N,ne)?(re.enumerable?(u(V,te)&&V[te][ne]&&(V[te][ne]=!1),re=p(re,{enumerable:v(0,!1)})):(u(V,te)||P(V,te,v(1,p(null))),V[te][ne]=!0),le(V,ne,re)):P(V,ne,re)},he=function(V,Q){c(V);var re=d(Q),ne=b(re).concat(st(re));return we(ne,function(Ee){(!s||t(qe,re,Ee))&&se(V,Ee,re[Ee])}),V},Oe=function(V,Q){return Q===void 0?p(V):he(p(V),Q)},qe=function(V){var Q=h(V),re=t(F,this,Q);return this===_e&&u(N,Q)&&!u(K,Q)?!1:re||!u(this,Q)||!u(N,Q)||u(this,te)&&this[te][Q]?re:!0},Re=function(V,Q){var re=d(V),ne=h(Q);if(!(re===_e&&u(N,ne)&&!u(K,ne))){var Ee=$(re,ne);return Ee&&u(N,ne)&&!(u(re,te)&&re[te][ne])&&(Ee.enumerable=!0),Ee}},vt=function(V){var Q=q(d(V)),re=[];return we(Q,function(ne){!u(N,ne)&&!u(x,ne)&&k(re,ne)}),re},st=function(oe){var V=oe===_e,Q=q(V?K:d(oe)),re=[];return we(Q,function(ne){u(N,ne)&&(!V||u(_e,ne))&&k(re,N[ne])}),re};return o||(A=function(){if(l(W,this))throw new ie("Symbol is not a constructor");var V=!arguments.length||arguments[0]===void 0?void 0:f(arguments[0]),Q=C(V),re=function(ne){var Ee=this===void 0?e:this;Ee===_e&&t(re,K,ne),u(Ee,te)&&u(Ee[te],Q)&&(Ee[te][Q]=!1);var vi=v(1,ne);try{le(Ee,Q,vi)}catch(Ys){if(!(Ys instanceof Y))throw Ys;B(Ee,Q,vi)}};return s&&U&&le(_e,Q,{configurable:!0,set:re}),J(Q,V)},W=A[xe],_(W,"toString",function(){return nt(this).tag}),_(A,"withoutSetter",function(oe){return J(C(oe),oe)}),I.f=qe,S.f=se,O.f=he,y.f=Re,m.f=g.f=vt,w.f=st,j.f=function(oe){return J(D(oe),oe)},s&&(E(W,"description",{configurable:!0,get:function(){return nt(this).description}}),n||_(_e,"propertyIsEnumerable",qe,{unsafe:!0}))),r({global:!0,constructor:!0,wrap:!0,forced:!o,sham:!o},{Symbol:A}),we(b(X),function(oe){ee(oe)}),r({target:me,stat:!0,forced:!o},{useSetter:function(){U=!0},useSimple:function(){U=!1}}),r({target:"Object",stat:!0,forced:!o,sham:!s},{create:Oe,defineProperty:se,defineProperties:he,getOwnPropertyDescriptor:Re}),r({target:"Object",stat:!0,forced:!o},{getOwnPropertyNames:vt}),H(),Z(A,me),x[te]=!0,bO}var VO={},qd,KO;function lz(){if(KO)return qd;KO=1;var r=Ss();return qd=r&&!!Symbol.for&&!!Symbol.keyFor,qd}var GO;function xV(){if(GO)return VO;GO=1;var r=ye(),e=rr(),t=wt(),i=Li(),n=Ts(),s=lz(),o=n("string-to-symbol-registry"),a=n("symbol-to-string-registry");return r({target:"Symbol",stat:!0,forced:!s},{for:function(u){var l=i(u);if(t(o,l))return o[l];var c=e("Symbol")(l);return o[l]=c,a[c]=l,c}}),VO}var YO={},XO;function qV(){if(XO)return YO;XO=1;var r=ye(),e=wt(),t=Yo(),i=Os(),n=Ts(),s=lz(),o=n("symbol-to-string-registry");return r({target:"Symbol",stat:!0,forced:!s},{keyFor:function(u){if(!t(u))throw new TypeError(i(u)+" is not a symbol");if(e(o,u))return o[u]}}),YO}var JO={},Dd,QO;function DV(){if(QO)return Dd;QO=1;var r=ze(),e=Sn(),t=bt(),i=ui(),n=Li(),s=r([].push);return Dd=function(o){if(t(o))return o;if(e(o)){for(var a=o.length,u=[],l=0;l=v.length)return f.target=null,o(void 0,!0);switch(f.kind){case"keys":return o(p,!1);case"values":return o(v[p],!1)}return o([p,v[p]],!1)},"values");var h=t.Arguments=t.Array;if(e("keys"),e("values"),e("entries"),!a&&u&&h.name!=="values")try{n(h,"name",{value:"values"})}catch{}return Gd}var Yd,JI;function rK(){return JI||(JI=1,Yd={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}),Yd}var QI;function Hi(){if(QI)return NI;QI=1,zi();var r=rK(),e=ct(),t=On(),i=xs();for(var n in r)t(e[n],n),i[n]=i.Array;return NI}var Xd,ZI;function yz(){if(ZI)return Xd;ZI=1;var r=KV();return Hi(),Xd=r,Xd}var eT={},tT;function iK(){if(tT)return eT;tT=1;var r=Et(),e=dr().f,t=r("metadata"),i=Function.prototype;return i[t]===void 0&&e(i,t,{value:null}),eT}var rT={},iT;function nK(){return iT||(iT=1,hz()),rT}var nT={},sT;function sK(){return sT||(sT=1,fz()),nT}var oT={},aT;function oK(){if(aT)return oT;aT=1;var r=Xe();return r("metadata"),oT}var Jd,uT;function aK(){if(uT)return Jd;uT=1;var r=yz();return iK(),nK(),sK(),oK(),Jd=r,Jd}var lT={},Qd,cT;function bz(){if(cT)return Qd;cT=1;var r=rr(),e=ze(),t=r("Symbol"),i=t.keyFor,n=e(t.prototype.valueOf);return Qd=t.isRegisteredSymbol||function(o){try{return i(n(o))!==void 0}catch{return!1}},Qd}var dT;function uK(){if(dT)return lT;dT=1;var r=ye(),e=bz();return r({target:"Symbol",stat:!0},{isRegisteredSymbol:e}),lT}var hT={},Zd,fT;function _z(){if(fT)return Zd;fT=1;for(var r=Ts(),e=rr(),t=ze(),i=Yo(),n=Et(),s=e("Symbol"),o=s.isWellKnownSymbol,a=e("Object","getOwnPropertyNames"),u=t(s.prototype.valueOf),l=r("wks"),c=0,d=a(s),h=d.length;c=f?u?"":void 0:(v=s(d,h),v<55296||v>56319||h+1===f||(p=s(d,h+1))<56320||p>57343?u?n(d,h):v:u?o(d,h,h+2):(v-55296<<10)+(p-56320)+65536)}};return rh={codeAt:a(!1),charAt:a(!0)},rh}var MT;function ju(){if(MT)return DT;MT=1;var r=wK().charAt,e=Li(),t=ea(),i=qw(),n=Dw(),s="String Iterator",o=t.set,a=t.getterFor(s);return i(String,"String",function(u){o(this,{type:s,string:e(u),index:0})},function(){var l=a(this),c=l.string,d=l.index,h;return d>=c.length?n(void 0,!0):(h=r(c,d),l.index+=h.length,n(h,!1))}),DT}var ih,NT;function EK(){if(NT)return ih;NT=1,zi(),ju(),vz();var r=Bu();return ih=r.f("iterator"),ih}var nh,FT;function wz(){if(FT)return nh;FT=1;var r=EK();return Hi(),nh=r,nh}var sh,kT;function SK(){if(kT)return sh;kT=1;var r=wz();return sh=r,sh}var oh,BT;function OK(){if(BT)return oh;BT=1;var r=SK();return oh=r,oh}var ah,jT;function IK(){return jT||(jT=1,ah=OK()),ah}var TK=IK(),$K=Te(TK);function xo(r){"@babel/helpers - typeof";return xo=typeof xa=="function"&&typeof $K=="symbol"?function(e){return typeof e}:function(e){return e&&typeof xa=="function"&&e.constructor===xa&&e!==xa.prototype?"symbol":typeof e},xo(r)}var uh,LT;function PK(){if(LT)return uh;LT=1,pz();var r=Bu();return uh=r.f("toPrimitive"),uh}var lh,zT;function RK(){if(zT)return lh;zT=1;var r=PK();return lh=r,lh}var ch,HT;function CK(){if(HT)return ch;HT=1;var r=RK();return ch=r,ch}var dh,WT;function xK(){if(WT)return dh;WT=1;var r=CK();return dh=r,dh}var hh,UT;function qK(){return UT||(UT=1,hh=xK()),hh}var DK=qK(),AK=Te(DK);function MK(r,e){if(xo(r)!="object"||!r)return r;var t=r[AK];if(t!==void 0){var i=t.call(r,e);if(xo(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function NK(r){var e=MK(r,"string");return xo(e)=="symbol"?e:e+""}function Ii(r,e,t){return(e=NK(e))in r?EV(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}var VT={},fh,KT;function FK(){if(KT)return fh;KT=1;var r=ze(),e=li(),t=Ht(),i=wt(),n=Rs(),s=Uo(),o=Function,a=r([].concat),u=r([].join),l={},c=function(d,h,f){if(!i(l,h)){for(var v=[],p=0;p=0:v>p;p+=b)p in f&&(d=l(d,f[p],p,h));return d}};return bh={left:o(!1),right:o(!0)},bh}var _h,r$;function Lu(){if(r$)return _h;r$=1;var r=ke();return _h=function(e,t){var i=[][e];return!!i&&r(function(){i.call(null,t||function(){return 1},1)})},_h}var wh,i$;function Sz(){if(i$)return wh;i$=1;var r=ct(),e=Es(),t=ui(),i=function(n){return e.slice(0,n.length)===n};return wh=function(){return i("Bun/")?"BUN":i("Cloudflare-Workers")?"CLOUDFLARE":i("Deno/")?"DENO":i("Node.js/")?"NODE":r.Bun&&typeof Bun.version=="string"?"BUN":r.Deno&&typeof Deno.version=="object"?"DENO":t(r.process)==="process"?"NODE":r.window&&r.document?"BROWSER":"REST"}(),wh}var Eh,n$;function UK(){if(n$)return Eh;n$=1;var r=Sz();return Eh=r==="NODE",Eh}var s$;function VK(){if(s$)return e$;s$=1;var r=ye(),e=WK().left,t=Lu(),i=Go(),n=UK(),s=!n&&i>79&&i<83,o=s||!t("reduce");return r({target:"Array",proto:!0,forced:o},{reduce:function(u){var l=arguments.length;return e(this,u,l,l>1?arguments[1]:void 0)}}),e$}var Sh,o$;function KK(){if(o$)return Sh;o$=1,VK();var r=Xt();return Sh=r("Array","reduce"),Sh}var Oh,a$;function GK(){if(a$)return Oh;a$=1;var r=_t(),e=KK(),t=Array.prototype;return Oh=function(i){var n=i.reduce;return i===t||r(t,i)&&n===t.reduce?e:n},Oh}var Ih,u$;function YK(){if(u$)return Ih;u$=1;var r=GK();return Ih=r,Ih}var Th,l$;function XK(){return l$||(l$=1,Th=YK()),Th}var JK=XK(),QK=Te(JK),c$={},d$;function ZK(){if(d$)return c$;d$=1;var r=ye(),e=Cs().filter,t=Xo(),i=t("filter");return r({target:"Array",proto:!0,forced:!i},{filter:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),c$}var $h,h$;function eG(){if(h$)return $h;h$=1,ZK();var r=Xt();return $h=r("Array","filter"),$h}var Ph,f$;function tG(){if(f$)return Ph;f$=1;var r=_t(),e=eG(),t=Array.prototype;return Ph=function(i){var n=i.filter;return i===t||r(t,i)&&n===t.filter?e:n},Ph}var Rh,v$;function rG(){if(v$)return Rh;v$=1;var r=tG();return Rh=r,Rh}var Ch,p$;function iG(){return p$||(p$=1,Ch=rG()),Ch}var nG=iG(),Yn=Te(nG),g$={},m$;function sG(){if(m$)return g$;m$=1;var r=ye(),e=Cs().map,t=Xo(),i=t("map");return r({target:"Array",proto:!0,forced:!i},{map:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),g$}var xh,y$;function oG(){if(y$)return xh;y$=1,sG();var r=Xt();return xh=r("Array","map"),xh}var qh,b$;function aG(){if(b$)return qh;b$=1;var r=_t(),e=oG(),t=Array.prototype;return qh=function(i){var n=i.map;return i===t||r(t,i)&&n===t.map?e:n},qh}var Dh,_$;function uG(){if(_$)return Dh;_$=1;var r=aG();return Dh=r,Dh}var Ah,w$;function lG(){return w$||(w$=1,Ah=uG()),Ah}var cG=lG(),mr=Te(cG),Mh,E$;function dG(){return E$||(E$=1,Mh=yz()),Mh}var hG=dG(),fG=Te(hG),S$={},O$;function vG(){if(O$)return S$;O$=1;var r=ye(),e=Sn(),t=nz(),i=Ht(),n=Pw(),s=Bi(),o=jr(),a=Au(),u=Et(),l=Xo(),c=Rs(),d=l("slice"),h=u("species"),f=Array,v=Math.max;return r({target:"Array",proto:!0,forced:!d},{slice:function(b,m){var g=o(this),w=s(g),y=n(b,w),S=n(m===void 0?w:m,w),O,I,_;if(e(g)&&(O=g.constructor,t(O)&&(O===f||e(O.prototype))?O=void 0:i(O)&&(O=O[h],O===null&&(O=void 0)),O===f||O===void 0))return c(g,y,S);for(I=new(O===void 0?f:O)(v(S-y,0)),_=0;y1?arguments[1]:void 0)},Xh}var K$;function kG(){if(K$)return U$;K$=1;var r=ye(),e=FG();return r({target:"Array",proto:!0,forced:[].forEach!==e},{forEach:e}),U$}var Jh,G$;function BG(){if(G$)return Jh;G$=1,kG();var r=Xt();return Jh=r("Array","forEach"),Jh}var Qh,Y$;function jG(){if(Y$)return Qh;Y$=1;var r=BG();return Qh=r,Qh}var Zh,X$;function LG(){if(X$)return Zh;X$=1;var r=ji(),e=wt(),t=_t(),i=jG(),n=Array.prototype,s={DOMTokenList:!0,NodeList:!0};return Zh=function(o){var a=o.forEach;return o===n||t(n,o)&&a===n.forEach||e(s,r(o))?i:a},Zh}var ef,J$;function zG(){return J$||(J$=1,ef=LG()),ef}var HG=zG(),dn=Te(HG),Q$={},Z$;function WG(){if(Z$)return Q$;Z$=1;var r=ye(),e=ze(),t=Sn(),i=e([].reverse),n=[1,2];return r({target:"Array",proto:!0,forced:String(n)===String(n.reverse())},{reverse:function(){return t(this)&&(this.length=this.length),i(this)}}),Q$}var tf,eP;function UG(){if(eP)return tf;eP=1,WG();var r=Xt();return tf=r("Array","reverse"),tf}var rf,tP;function VG(){if(tP)return rf;tP=1;var r=_t(),e=UG(),t=Array.prototype;return rf=function(i){var n=i.reverse;return i===t||r(t,i)&&n===t.reverse?e:n},rf}var nf,rP;function KG(){if(rP)return nf;rP=1;var r=VG();return nf=r,nf}var sf,iP;function GG(){return iP||(iP=1,sf=KG()),sf}var YG=GG(),XG=Te(YG),nP={},of,sP;function JG(){if(sP)return of;sP=1;var r=dt(),e=Sn(),t=TypeError,i=Object.getOwnPropertyDescriptor,n=r&&!function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(s){return s instanceof TypeError}}();return of=n?function(s,o){if(e(s)&&!i(s,"length").writable)throw new t("Cannot set read only .length");return s.length=o}:function(s,o){return s.length=o},of}var af,oP;function Iz(){if(oP)return af;oP=1;var r=Os(),e=TypeError;return af=function(t,i){if(!delete t[i])throw new e("Cannot delete property "+r(i)+" of "+r(t))},af}var aP;function QG(){if(aP)return nP;aP=1;var r=ye(),e=Ir(),t=Pw(),i=Ps(),n=Bi(),s=JG(),o=iz(),a=$w(),u=Au(),l=Iz(),c=Xo(),d=c("splice"),h=Math.max,f=Math.min;return r({target:"Array",proto:!0,forced:!d},{splice:function(p,b){var m=e(this),g=n(m),w=t(p,g),y=arguments.length,S,O,I,_,E,T;for(y===0?S=O=0:y===1?(S=0,O=g-w):(S=y-2,O=f(h(i(b),0),g-w)),o(g+S-O),I=a(m,O),_=0;_g-O+S;_--)l(m,_-1)}else if(S>O)for(_=g-O;_>w;_--)E=_+O-1,T=_+S-1,E in m?m[T]=m[E]:l(m,T);for(_=0;_m;)for(var y=u(arguments[m++]),S=g?d(n(y),g(y)):n(y),O=S.length,I=0,_;O>I;)_=S[I++],(!r||t(w,y,_))&&(p[_]=y[_]);return p}:l,hf}var vP;function s6(){if(vP)return hP;vP=1;var r=ye(),e=n6();return r({target:"Object",stat:!0,arity:2,forced:Object.assign!==e},{assign:e}),hP}var ff,pP;function o6(){if(pP)return ff;pP=1,s6();var r=gt();return ff=r.Object.assign,ff}var vf,gP;function a6(){if(gP)return vf;gP=1;var r=o6();return vf=r,vf}var pf,mP;function u6(){return mP||(mP=1,pf=a6()),pf}var l6=u6(),c6=Te(l6),gf,yP;function d6(){if(yP)return gf;yP=1,sz();var r=Xt();return gf=r("Array","concat"),gf}var mf,bP;function h6(){if(bP)return mf;bP=1;var r=_t(),e=d6(),t=Array.prototype;return mf=function(i){var n=i.concat;return i===t||r(t,i)&&n===t.concat?e:n},mf}var yf,_P;function f6(){if(_P)return yf;_P=1;var r=h6();return yf=r,yf}var bf,wP;function v6(){return wP||(wP=1,bf=f6()),bf}var p6=v6(),g6=Te(p6),EP={},SP;function m6(){if(SP)return EP;SP=1;var r=ye(),e=dt(),t=Qo();return r({target:"Object",stat:!0,sham:!e},{create:t}),EP}var _f,OP;function y6(){if(OP)return _f;OP=1,m6();var r=gt(),e=r.Object;return _f=function(i,n){return e.create(i,n)},_f}var wf,IP;function b6(){if(IP)return wf;IP=1;var r=y6();return wf=r,wf}var Ef,TP;function _6(){return TP||(TP=1,Ef=b6()),Ef}var w6=_6(),E6=Te(w6),$P={},Sf,PP;function S6(){if(PP)return Sf;PP=1;var r=Ps(),e=Li(),t=En(),i=RangeError;return Sf=function(s){var o=e(t(this)),a="",u=r(s);if(u<0||u===1/0)throw new i("Wrong number of repetitions");for(;u>0;(u>>>=1)&&(o+=o))u&1&&(a+=o);return a},Sf}var Of,RP;function O6(){if(RP)return Of;RP=1;var r=ze(),e=rz(),t=Li(),i=S6(),n=En(),s=r(i),o=r("".slice),a=Math.ceil,u=function(l){return function(c,d,h){var f=t(n(c)),v=e(d),p=f.length,b=h===void 0?" ":t(h),m,g;return v<=p||b===""?f:(m=v-p,g=s(b,a(m/b.length)),g.length>m&&(g=o(g,0,m)),l?f+g:g+f)}};return Of={start:u(!1),end:u(!0)},Of}var If,CP;function I6(){if(CP)return If;CP=1;var r=ze(),e=ke(),t=O6().start,i=RangeError,n=isFinite,s=Math.abs,o=Date.prototype,a=o.toISOString,u=r(o.getTime),l=r(o.getUTCDate),c=r(o.getUTCFullYear),d=r(o.getUTCHours),h=r(o.getUTCMilliseconds),f=r(o.getUTCMinutes),v=r(o.getUTCMonth),p=r(o.getUTCSeconds);return If=e(function(){return a.call(new Date(-5e13-1))!=="0385-07-25T07:06:39.999Z"})||!e(function(){a.call(new Date(NaN))})?function(){if(!n(u(this)))throw new i("Invalid time value");var m=this,g=c(m),w=h(m),y=g<0?"-":g>9999?"+":"";return y+t(s(g),y?6:4,0)+"-"+t(v(m)+1,2,0)+"-"+t(l(m),2,0)+"T"+t(d(m),2,0)+":"+t(f(m),2,0)+":"+t(p(m),2,0)+"."+t(w,3,0)+"Z"}:a,If}var xP;function T6(){if(xP)return $P;xP=1;var r=ye(),e=Yt(),t=Ir(),i=JL(),n=I6(),s=ui(),o=ke(),a=o(function(){return new Date(NaN).toJSON()!==null||e(Date.prototype.toJSON,{toISOString:function(){return 1}})!==1});return r({target:"Date",proto:!0,forced:a},{toJSON:function(l){var c=t(this),d=i(c,"number");return typeof d=="number"&&!isFinite(d)?null:!("toISOString"in c)&&s(c)==="Date"?e(n,c):c.toISOString()}}),$P}var Tf,qP;function $6(){if(qP)return Tf;qP=1,T6(),cz();var r=gt(),e=Ru();return r.JSON||(r.JSON={stringify:JSON.stringify}),Tf=function(i,n,s){return e(r.JSON.stringify,null,arguments)},Tf}var $f,DP;function P6(){if(DP)return $f;DP=1;var r=$6();return $f=r,$f}var Pf,AP;function R6(){return AP||(AP=1,Pf=P6()),Pf}var C6=R6(),x6=Te(C6),MP={},NP={},Rf,FP;function q6(){if(FP)return Rf;FP=1;var r=TypeError;return Rf=function(e,t){if(ed,p=t(h)?h:a(h),b=v?s(arguments,d):[],m=v?function(){e(p,this,b)}:p;return c?l(m,f):l(m)}:l},Cf}var BP;function D6(){if(BP)return NP;BP=1;var r=ye(),e=ct(),t=$z(),i=t(e.setInterval,!0);return r({global:!0,bind:!0,forced:e.setInterval!==i},{setInterval:i}),NP}var jP={},LP;function A6(){if(LP)return jP;LP=1;var r=ye(),e=ct(),t=$z(),i=t(e.setTimeout,!0);return r({global:!0,bind:!0,forced:e.setTimeout!==i},{setTimeout:i}),jP}var zP;function M6(){return zP||(zP=1,D6(),A6()),MP}var xf,HP;function N6(){if(HP)return xf;HP=1,M6();var r=gt();return xf=r.setTimeout,xf}var qf,WP;function F6(){return WP||(WP=1,qf=N6()),qf}var k6=F6(),B6=Te(k6),Df={exports:{}},UP;function j6(){return UP||(UP=1,function(r){function e(i){if(i)return t(i);this._callbacks=new Map}function t(i){return Object.assign(i,e.prototype),i._callbacks=new Map,i}e.prototype.on=function(i,n){const s=this._callbacks.get(i)??[];return s.push(n),this._callbacks.set(i,s),this},e.prototype.once=function(i,n){const s=(...o)=>{this.off(i,s),n.apply(this,o)};return s.fn=n,this.on(i,s),this},e.prototype.off=function(i,n){if(i===void 0&&n===void 0)return this._callbacks.clear(),this;if(n===void 0)return this._callbacks.delete(i),this;const s=this._callbacks.get(i);if(s){for(const[o,a]of s.entries())if(a===n||a.fn===n){s.splice(o,1);break}s.length===0?this._callbacks.delete(i):this._callbacks.set(i,s)}return this},e.prototype.emit=function(i,...n){const s=this._callbacks.get(i);if(s){const o=[...s];for(const a of o)a.apply(this,n)}return this},e.prototype.listeners=function(i){return this._callbacks.get(i)??[]},e.prototype.listenerCount=function(i){if(i)return this.listeners(i).length;let n=0;for(const s of this._callbacks.values())n+=s.length;return n},e.prototype.hasListeners=function(i){return this.listenerCount(i)>0},e.prototype.addEventListener=e.prototype.on,e.prototype.removeListener=e.prototype.off,e.prototype.removeEventListener=e.prototype.off,e.prototype.removeAllListeners=e.prototype.off,r.exports=e}(Df)),Df.exports}var L6=j6(),z6=Te(L6);/*! Hammer.JS - v2.0.17-rc - 2019-12-16 * http://naver.github.io/egjs * * Forked By Naver egjs * Copyright (c) hammerjs - * Licensed under the MIT license */function Er(){return Er=Object.assign||function(r){for(var e=1;e"u"?{style:{}}:document.createElement("div"),H6="function",Xn=Math.round,fn=Math.abs,Mw=Date.now;function zu(r,e){for(var t,i,n=e[0].toUpperCase()+e.slice(1),s=0;s"u"?Jr={}:Jr=window;var Tz=zu(z6.style,"touchAction"),$z=Tz!==void 0;function W6(){if(!$z)return!1;var r={},e=Jr.CSS&&Jr.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach(function(t){return r[t]=e?Jr.CSS.supports("touch-action",t):!0}),r}var Pz="compute",Rz="auto",F_="manipulation",nn="none",qo="pan-x",Do="pan-y",Da=W6(),U6=/mobile|tablet|ip(ad|hone|od)|android/i,Cz="ontouchstart"in Jr,V6=zu(Jr,"PointerEvent")!==void 0,K6=Cz&&U6.test(navigator.userAgent),ta="touch",G6="pen",Nw="mouse",Y6="kinect",X6=25,jt=1,In=2,ot=4,Vt=8,eu=1,ra=2,ia=4,na=8,vs=16,Fr=ra|ia,sn=na|vs,xz=Fr|sn,qz=["x","y"],tu=["clientX","clientY"];function Qr(r,e,t){var i;if(r)if(r.forEach)r.forEach(e,t);else if(r.length!==void 0)for(i=0;i-1}function J6(r){if(Qi(r,nn))return nn;var e=Qi(r,qo),t=Qi(r,Do);return e&&t?nn:e||t?e?qo:Do:Qi(r,F_)?F_:Rz}var Dz=function(){function r(t,i){this.manager=t,this.set(i)}var e=r.prototype;return e.set=function(i){i===Pz&&(i=this.compute()),$z&&this.manager.element.style&&Da[i]&&(this.manager.element.style[Tz]=i),this.actions=i.toLowerCase().trim()},e.update=function(){this.set(this.manager.options.touchAction)},e.compute=function(){var i=[];return Qr(this.manager.recognizers,function(n){Hu(n.options.enable,[n])&&(i=i.concat(n.getTouchAction()))}),J6(i.join(" "))},e.preventDefaults=function(i){var n=i.srcEvent,s=i.offsetDirection;if(this.manager.session.prevented){n.preventDefault();return}var o=this.actions,a=Qi(o,nn)&&!Da[nn],u=Qi(o,Do)&&!Da[Do],l=Qi(o,qo)&&!Da[qo];if(a){var c=i.pointers.length===1,d=i.distance<2,h=i.deltaTime<250;if(c&&d&&h)return}if(!(l&&u)&&(a||u&&s&Fr||l&&s&sn))return this.preventSrc(n)},e.preventSrc=function(i){this.manager.session.prevented=!0,i.preventDefault()},r}();function Fw(r,e){for(;r;){if(r===e)return!0;r=r.parentNode}return!1}function Az(r){var e=r.length;if(e===1)return{x:Xn(r[0].clientX),y:Xn(r[0].clientY)};for(var t=0,i=0,n=0;n=fn(e)?r<0?ra:ia:e<0?na:vs}function Q6(r,e){var t=e.center,i=r.offsetDelta||{},n=r.prevDelta||{},s=r.prevInput||{};(e.eventType===jt||s.eventType===ot)&&(n=r.prevDelta={x:s.deltaX||0,y:s.deltaY||0},i=r.offsetDelta={x:t.x,y:t.y}),e.deltaX=n.x+(t.x-i.x),e.deltaY=n.y+(t.y-i.y)}function Nz(r,e,t){return{x:e/r||0,y:t/r||0}}function Z6(r,e){return ru(e[0],e[1],tu)/ru(r[0],r[1],tu)}function e8(r,e){return k_(e[1],e[0],tu)+k_(r[1],r[0],tu)}function t8(r,e){var t=r.lastInterval||e,i=e.timeStamp-t.timeStamp,n,s,o,a;if(e.eventType!==Vt&&(i>X6||t.velocity===void 0)){var u=e.deltaX-t.deltaX,l=e.deltaY-t.deltaY,c=Nz(i,u,l);s=c.x,o=c.y,n=fn(c.x)>fn(c.y)?c.x:c.y,a=Mz(u,l),r.lastInterval=e}else n=t.velocity,s=t.velocityX,o=t.velocityY,a=t.direction;e.velocity=n,e.velocityX=s,e.velocityY=o,e.direction=a}function r8(r,e){var t=r.session,i=e.pointers,n=i.length;t.firstInput||(t.firstInput=KP(e)),n>1&&!t.firstMultiple?t.firstMultiple=KP(e):n===1&&(t.firstMultiple=!1);var s=t.firstInput,o=t.firstMultiple,a=o?o.center:s.center,u=e.center=Az(i);e.timeStamp=Mw(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=k_(a,u),e.distance=ru(a,u),Q6(t,e),e.offsetDirection=Mz(e.deltaX,e.deltaY);var l=Nz(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=l.x,e.overallVelocityY=l.y,e.overallVelocity=fn(l.x)>fn(l.y)?l.x:l.y,e.scale=o?Z6(o.pointers,i):1,e.rotation=o?e8(o.pointers,i):0,e.maxPointers=t.prevInput?e.pointers.length>t.prevInput.maxPointers?e.pointers.length:t.prevInput.maxPointers:e.pointers.length,t8(t,e);var c=r.element,d=e.srcEvent,h;d.composedPath?h=d.composedPath()[0]:d.path?h=d.path[0]:h=d.target,Fw(h,c)&&(c=h),e.target=c}function i8(r,e,t){var i=t.pointers.length,n=t.changedPointers.length,s=e&jt&&i-n===0,o=e&(ot|Vt)&&i-n===0;t.isFirst=!!s,t.isFinal=!!o,s&&(r.session={}),t.eventType=e,r8(r,t),r.emit("hammer.input",t),r.recognize(t),r.session.prevInput=t}function Ao(r){return r.trim().split(/\s+/g)}function go(r,e,t){Qr(Ao(e),function(i){r.addEventListener(i,t,!1)})}function mo(r,e,t){Qr(Ao(e),function(i){r.removeEventListener(i,t,!1)})}function GP(r){var e=r.ownerDocument||r;return e.defaultView||e.parentWindow||window}var qs=function(){function r(t,i){var n=this;this.manager=t,this.callback=i,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(s){Hu(t.options.enable,[t])&&n.handler(s)},this.init()}var e=r.prototype;return e.handler=function(){},e.init=function(){this.evEl&&go(this.element,this.evEl,this.domHandler),this.evTarget&&go(this.target,this.evTarget,this.domHandler),this.evWin&&go(GP(this.element),this.evWin,this.domHandler)},e.destroy=function(){this.evEl&&mo(this.element,this.evEl,this.domHandler),this.evTarget&&mo(this.target,this.evTarget,this.domHandler),this.evWin&&mo(GP(this.element),this.evWin,this.domHandler)},r}();function vn(r,e,t){if(r.indexOf&&!t)return r.indexOf(e);for(var i=0;iu[e]}):i=i.sort()),i}var o8={touchstart:jt,touchmove:In,touchend:ot,touchcancel:Vt},a8="touchstart touchmove touchend touchcancel",Bw=function(r){hr(e,r);function e(){var i;return e.prototype.evTarget=a8,i=r.apply(this,arguments)||this,i.targetIds={},i}var t=e.prototype;return t.handler=function(n){var s=o8[n.type],o=u8.call(this,n,s);o&&this.callback(this.manager,s,{pointers:o[0],changedPointers:o[1],pointerType:ta,srcEvent:n})},e}(qs);function u8(r,e){var t=Mo(r.touches),i=this.targetIds;if(e&(jt|In)&&t.length===1)return i[t[0].identifier]=!0,[t,t];var n,s,o=Mo(r.changedTouches),a=[],u=this.target;if(s=t.filter(function(l){return Fw(l.target,u)}),e===jt)for(n=0;n-1&&n.splice(a,1)};setTimeout(s,h8)}}function f8(r,e){r&jt?(this.primaryTouch=e.changedPointers[0].identifier,XP.call(this,e)):r&(ot|Vt)&&XP.call(this,e)}function v8(r){for(var e=r.srcEvent.clientX,t=r.srcEvent.clientY,i=0;i-1&&this.requireFail.splice(n,1),this},e.hasRequireFailures=function(){return this.requireFail.length>0},e.canRecognizeWith=function(i){return!!this.simultaneous[i.id]},e.emit=function(i){var n=this,s=this.state;function o(a){n.manager.emit(a,i)}s=Ii&&o(n.options.event+JP(s))},e.tryEmit=function(i){if(this.canEmit())return this.emit(i);this.state=Dr},e.canEmit=function(){for(var i=0;is.threshold&&u&s.direction},t.attrTest=function(n){return gs.prototype.attrTest.call(this,n)&&(this.state&lr||!(this.state&lr)&&this.directionTest(n))},t.emit=function(n){this.pX=n.deltaX,this.pY=n.deltaY;var s=Lz(n.direction);s&&(n.additionalEvent=this.options.event+s),r.prototype.emit.call(this,n)},e}(gs),zz=function(r){hr(e,r);function e(i){return i===void 0&&(i={}),r.call(this,Er({event:"swipe",threshold:10,velocity:.3,direction:Fr|sn,pointers:1},i))||this}var t=e.prototype;return t.getTouchAction=function(){return Lw.prototype.getTouchAction.call(this)},t.attrTest=function(n){var s=this.options.direction,o;return s&(Fr|sn)?o=n.overallVelocity:s&Fr?o=n.overallVelocityX:s&sn&&(o=n.overallVelocityY),r.prototype.attrTest.call(this,n)&&s&n.offsetDirection&&n.distance>this.options.threshold&&n.maxPointers===this.options.pointers&&fn(o)>this.options.velocity&&n.eventType&ot},t.emit=function(n){var s=Lz(n.offsetDirection);s&&this.manager.emit(this.options.event+s,n),this.manager.emit(this.options.event,n)},e}(gs),Hz=function(r){hr(e,r);function e(i){return i===void 0&&(i={}),r.call(this,Er({event:"pinch",threshold:0,pointers:2},i))||this}var t=e.prototype;return t.getTouchAction=function(){return[nn]},t.attrTest=function(n){return r.prototype.attrTest.call(this,n)&&(Math.abs(n.scale-1)>this.options.threshold||this.state&lr)},t.emit=function(n){if(n.scale!==1){var s=n.scale<1?"in":"out";n.additionalEvent=this.options.event+s}r.prototype.emit.call(this,n)},e}(gs),Wz=function(r){hr(e,r);function e(i){return i===void 0&&(i={}),r.call(this,Er({event:"rotate",threshold:0,pointers:2},i))||this}var t=e.prototype;return t.getTouchAction=function(){return[nn]},t.attrTest=function(n){return r.prototype.attrTest.call(this,n)&&(Math.abs(n.rotation)>this.options.threshold||this.state&lr)},e}(gs),Uz=function(r){hr(e,r);function e(i){var n;return i===void 0&&(i={}),n=r.call(this,Er({event:"press",pointers:1,time:251,threshold:9},i))||this,n._timer=null,n._input=null,n}var t=e.prototype;return t.getTouchAction=function(){return[Rz]},t.process=function(n){var s=this,o=this.options,a=n.pointers.length===o.pointers,u=n.distanceo.time;if(this._input=n,!u||!a||n.eventType&(ot|Vt)&&!l)this.reset();else if(n.eventType&jt)this.reset(),this._timer=setTimeout(function(){s.state=Zr,s.tryEmit()},o.time);else if(n.eventType&ot)return Zr;return Dr},t.reset=function(){clearTimeout(this._timer)},t.emit=function(n){this.state===Zr&&(n&&n.eventType&ot?this.manager.emit(this.options.event+"up",n):(this._input.timeStamp=Mw(),this.manager.emit(this.options.event,this._input)))},e}(sa),Vz={domEvents:!1,touchAction:Pz,enable:!0,inputTarget:null,inputClass:null,cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},QP=[[Wz,{enable:!1}],[Hz,{enable:!1},["rotate"]],[zz,{direction:Fr}],[Lw,{direction:Fr},["swipe"]],[B_],[B_,{event:"doubletap",taps:2},["tap"]],[Uz]],y8=1,ZP=2;function eR(r,e){var t=r.element;if(t.style){var i;Qr(r.options.cssProps,function(n,s){i=zu(t.style,s),e?(r.oldCssProps[i]=t.style[i],t.style[i]=n):t.style[i]=r.oldCssProps[i]||""}),e||(r.oldCssProps={})}}function b8(r,e){var t=document.createEvent("Event");t.initEvent(r,!0,!0),t.gesture=e,e.target.dispatchEvent(t)}var tR=function(){function r(t,i){var n=this;this.options=hn({},Vz,i||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=p8(this),this.touchAction=new Dz(this,this.options.touchAction),eR(this,!0),Qr(this.options.recognizers,function(s){var o=n.add(new s[0](s[1]));s[2]&&o.recognizeWith(s[2]),s[3]&&o.requireFailure(s[3])},this)}var e=r.prototype;return e.set=function(i){return hn(this.options,i),i.touchAction&&this.touchAction.update(),i.inputTarget&&(this.input.destroy(),this.input.target=i.inputTarget,this.input.init()),this},e.stop=function(i){this.session.stopped=i?ZP:y8},e.recognize=function(i){var n=this.session;if(!n.stopped){this.touchAction.preventDefaults(i);var s,o=this.recognizers,a=n.curRecognizer;(!a||a&&a.state&Zr)&&(n.curRecognizer=null,a=null);for(var u=0;u"u"?{style:{}}:document.createElement("div"),W6="function",Xn=Math.round,fn=Math.abs,Mw=Date.now;function zu(r,e){for(var t,i,n=e[0].toUpperCase()+e.slice(1),s=0;s"u"?Jr={}:Jr=window;var Pz=zu(H6.style,"touchAction"),Rz=Pz!==void 0;function U6(){if(!Rz)return!1;var r={},e=Jr.CSS&&Jr.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach(function(t){return r[t]=e?Jr.CSS.supports("touch-action",t):!0}),r}var Cz="compute",xz="auto",F_="manipulation",nn="none",qo="pan-x",Do="pan-y",Da=U6(),V6=/mobile|tablet|ip(ad|hone|od)|android/i,qz="ontouchstart"in Jr,K6=zu(Jr,"PointerEvent")!==void 0,G6=qz&&V6.test(navigator.userAgent),ta="touch",Y6="pen",Nw="mouse",X6="kinect",J6=25,Lt=1,In=2,ot=4,Kt=8,eu=1,ra=2,ia=4,na=8,vs=16,Fr=ra|ia,sn=na|vs,Dz=Fr|sn,Az=["x","y"],tu=["clientX","clientY"];function Qr(r,e,t){var i;if(r)if(r.forEach)r.forEach(e,t);else if(r.length!==void 0)for(i=0;i-1}function Q6(r){if(Qi(r,nn))return nn;var e=Qi(r,qo),t=Qi(r,Do);return e&&t?nn:e||t?e?qo:Do:Qi(r,F_)?F_:xz}var Mz=function(){function r(t,i){this.manager=t,this.set(i)}var e=r.prototype;return e.set=function(i){i===Cz&&(i=this.compute()),Rz&&this.manager.element.style&&Da[i]&&(this.manager.element.style[Pz]=i),this.actions=i.toLowerCase().trim()},e.update=function(){this.set(this.manager.options.touchAction)},e.compute=function(){var i=[];return Qr(this.manager.recognizers,function(n){Hu(n.options.enable,[n])&&(i=i.concat(n.getTouchAction()))}),Q6(i.join(" "))},e.preventDefaults=function(i){var n=i.srcEvent,s=i.offsetDirection;if(this.manager.session.prevented){n.preventDefault();return}var o=this.actions,a=Qi(o,nn)&&!Da[nn],u=Qi(o,Do)&&!Da[Do],l=Qi(o,qo)&&!Da[qo];if(a){var c=i.pointers.length===1,d=i.distance<2,h=i.deltaTime<250;if(c&&d&&h)return}if(!(l&&u)&&(a||u&&s&Fr||l&&s&sn))return this.preventSrc(n)},e.preventSrc=function(i){this.manager.session.prevented=!0,i.preventDefault()},r}();function Fw(r,e){for(;r;){if(r===e)return!0;r=r.parentNode}return!1}function Nz(r){var e=r.length;if(e===1)return{x:Xn(r[0].clientX),y:Xn(r[0].clientY)};for(var t=0,i=0,n=0;n=fn(e)?r<0?ra:ia:e<0?na:vs}function Z6(r,e){var t=e.center,i=r.offsetDelta||{},n=r.prevDelta||{},s=r.prevInput||{};(e.eventType===Lt||s.eventType===ot)&&(n=r.prevDelta={x:s.deltaX||0,y:s.deltaY||0},i=r.offsetDelta={x:t.x,y:t.y}),e.deltaX=n.x+(t.x-i.x),e.deltaY=n.y+(t.y-i.y)}function kz(r,e,t){return{x:e/r||0,y:t/r||0}}function e8(r,e){return ru(e[0],e[1],tu)/ru(r[0],r[1],tu)}function t8(r,e){return k_(e[1],e[0],tu)+k_(r[1],r[0],tu)}function r8(r,e){var t=r.lastInterval||e,i=e.timeStamp-t.timeStamp,n,s,o,a;if(e.eventType!==Kt&&(i>J6||t.velocity===void 0)){var u=e.deltaX-t.deltaX,l=e.deltaY-t.deltaY,c=kz(i,u,l);s=c.x,o=c.y,n=fn(c.x)>fn(c.y)?c.x:c.y,a=Fz(u,l),r.lastInterval=e}else n=t.velocity,s=t.velocityX,o=t.velocityY,a=t.direction;e.velocity=n,e.velocityX=s,e.velocityY=o,e.direction=a}function i8(r,e){var t=r.session,i=e.pointers,n=i.length;t.firstInput||(t.firstInput=KP(e)),n>1&&!t.firstMultiple?t.firstMultiple=KP(e):n===1&&(t.firstMultiple=!1);var s=t.firstInput,o=t.firstMultiple,a=o?o.center:s.center,u=e.center=Nz(i);e.timeStamp=Mw(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=k_(a,u),e.distance=ru(a,u),Z6(t,e),e.offsetDirection=Fz(e.deltaX,e.deltaY);var l=kz(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=l.x,e.overallVelocityY=l.y,e.overallVelocity=fn(l.x)>fn(l.y)?l.x:l.y,e.scale=o?e8(o.pointers,i):1,e.rotation=o?t8(o.pointers,i):0,e.maxPointers=t.prevInput?e.pointers.length>t.prevInput.maxPointers?e.pointers.length:t.prevInput.maxPointers:e.pointers.length,r8(t,e);var c=r.element,d=e.srcEvent,h;d.composedPath?h=d.composedPath()[0]:d.path?h=d.path[0]:h=d.target,Fw(h,c)&&(c=h),e.target=c}function n8(r,e,t){var i=t.pointers.length,n=t.changedPointers.length,s=e&Lt&&i-n===0,o=e&(ot|Kt)&&i-n===0;t.isFirst=!!s,t.isFinal=!!o,s&&(r.session={}),t.eventType=e,i8(r,t),r.emit("hammer.input",t),r.recognize(t),r.session.prevInput=t}function Ao(r){return r.trim().split(/\s+/g)}function go(r,e,t){Qr(Ao(e),function(i){r.addEventListener(i,t,!1)})}function mo(r,e,t){Qr(Ao(e),function(i){r.removeEventListener(i,t,!1)})}function GP(r){var e=r.ownerDocument||r;return e.defaultView||e.parentWindow||window}var qs=function(){function r(t,i){var n=this;this.manager=t,this.callback=i,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(s){Hu(t.options.enable,[t])&&n.handler(s)},this.init()}var e=r.prototype;return e.handler=function(){},e.init=function(){this.evEl&&go(this.element,this.evEl,this.domHandler),this.evTarget&&go(this.target,this.evTarget,this.domHandler),this.evWin&&go(GP(this.element),this.evWin,this.domHandler)},e.destroy=function(){this.evEl&&mo(this.element,this.evEl,this.domHandler),this.evTarget&&mo(this.target,this.evTarget,this.domHandler),this.evWin&&mo(GP(this.element),this.evWin,this.domHandler)},r}();function vn(r,e,t){if(r.indexOf&&!t)return r.indexOf(e);for(var i=0;iu[e]}):i=i.sort()),i}var a8={touchstart:Lt,touchmove:In,touchend:ot,touchcancel:Kt},u8="touchstart touchmove touchend touchcancel",Bw=function(r){hr(e,r);function e(){var i;return e.prototype.evTarget=u8,i=r.apply(this,arguments)||this,i.targetIds={},i}var t=e.prototype;return t.handler=function(n){var s=a8[n.type],o=l8.call(this,n,s);o&&this.callback(this.manager,s,{pointers:o[0],changedPointers:o[1],pointerType:ta,srcEvent:n})},e}(qs);function l8(r,e){var t=Mo(r.touches),i=this.targetIds;if(e&(Lt|In)&&t.length===1)return i[t[0].identifier]=!0,[t,t];var n,s,o=Mo(r.changedTouches),a=[],u=this.target;if(s=t.filter(function(l){return Fw(l.target,u)}),e===Lt)for(n=0;n-1&&n.splice(a,1)};setTimeout(s,f8)}}function v8(r,e){r&Lt?(this.primaryTouch=e.changedPointers[0].identifier,XP.call(this,e)):r&(ot|Kt)&&XP.call(this,e)}function p8(r){for(var e=r.srcEvent.clientX,t=r.srcEvent.clientY,i=0;i-1&&this.requireFail.splice(n,1),this},e.hasRequireFailures=function(){return this.requireFail.length>0},e.canRecognizeWith=function(i){return!!this.simultaneous[i.id]},e.emit=function(i){var n=this,s=this.state;function o(a){n.manager.emit(a,i)}s=Ti&&o(n.options.event+JP(s))},e.tryEmit=function(i){if(this.canEmit())return this.emit(i);this.state=Dr},e.canEmit=function(){for(var i=0;is.threshold&&u&s.direction},t.attrTest=function(n){return gs.prototype.attrTest.call(this,n)&&(this.state&lr||!(this.state&lr)&&this.directionTest(n))},t.emit=function(n){this.pX=n.deltaX,this.pY=n.deltaY;var s=Hz(n.direction);s&&(n.additionalEvent=this.options.event+s),r.prototype.emit.call(this,n)},e}(gs),Wz=function(r){hr(e,r);function e(i){return i===void 0&&(i={}),r.call(this,Er({event:"swipe",threshold:10,velocity:.3,direction:Fr|sn,pointers:1},i))||this}var t=e.prototype;return t.getTouchAction=function(){return Lw.prototype.getTouchAction.call(this)},t.attrTest=function(n){var s=this.options.direction,o;return s&(Fr|sn)?o=n.overallVelocity:s&Fr?o=n.overallVelocityX:s&sn&&(o=n.overallVelocityY),r.prototype.attrTest.call(this,n)&&s&n.offsetDirection&&n.distance>this.options.threshold&&n.maxPointers===this.options.pointers&&fn(o)>this.options.velocity&&n.eventType&ot},t.emit=function(n){var s=Hz(n.offsetDirection);s&&this.manager.emit(this.options.event+s,n),this.manager.emit(this.options.event,n)},e}(gs),Uz=function(r){hr(e,r);function e(i){return i===void 0&&(i={}),r.call(this,Er({event:"pinch",threshold:0,pointers:2},i))||this}var t=e.prototype;return t.getTouchAction=function(){return[nn]},t.attrTest=function(n){return r.prototype.attrTest.call(this,n)&&(Math.abs(n.scale-1)>this.options.threshold||this.state&lr)},t.emit=function(n){if(n.scale!==1){var s=n.scale<1?"in":"out";n.additionalEvent=this.options.event+s}r.prototype.emit.call(this,n)},e}(gs),Vz=function(r){hr(e,r);function e(i){return i===void 0&&(i={}),r.call(this,Er({event:"rotate",threshold:0,pointers:2},i))||this}var t=e.prototype;return t.getTouchAction=function(){return[nn]},t.attrTest=function(n){return r.prototype.attrTest.call(this,n)&&(Math.abs(n.rotation)>this.options.threshold||this.state&lr)},e}(gs),Kz=function(r){hr(e,r);function e(i){var n;return i===void 0&&(i={}),n=r.call(this,Er({event:"press",pointers:1,time:251,threshold:9},i))||this,n._timer=null,n._input=null,n}var t=e.prototype;return t.getTouchAction=function(){return[xz]},t.process=function(n){var s=this,o=this.options,a=n.pointers.length===o.pointers,u=n.distanceo.time;if(this._input=n,!u||!a||n.eventType&(ot|Kt)&&!l)this.reset();else if(n.eventType&Lt)this.reset(),this._timer=setTimeout(function(){s.state=Zr,s.tryEmit()},o.time);else if(n.eventType&ot)return Zr;return Dr},t.reset=function(){clearTimeout(this._timer)},t.emit=function(n){this.state===Zr&&(n&&n.eventType&ot?this.manager.emit(this.options.event+"up",n):(this._input.timeStamp=Mw(),this.manager.emit(this.options.event,this._input)))},e}(sa),Gz={domEvents:!1,touchAction:Cz,enable:!0,inputTarget:null,inputClass:null,cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},QP=[[Vz,{enable:!1}],[Uz,{enable:!1},["rotate"]],[Wz,{direction:Fr}],[Lw,{direction:Fr},["swipe"]],[B_],[B_,{event:"doubletap",taps:2},["tap"]],[Kz]],b8=1,ZP=2;function eR(r,e){var t=r.element;if(t.style){var i;Qr(r.options.cssProps,function(n,s){i=zu(t.style,s),e?(r.oldCssProps[i]=t.style[i],t.style[i]=n):t.style[i]=r.oldCssProps[i]||""}),e||(r.oldCssProps={})}}function _8(r,e){var t=document.createEvent("Event");t.initEvent(r,!0,!0),t.gesture=e,e.target.dispatchEvent(t)}var tR=function(){function r(t,i){var n=this;this.options=hn({},Gz,i||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=g8(this),this.touchAction=new Mz(this,this.options.touchAction),eR(this,!0),Qr(this.options.recognizers,function(s){var o=n.add(new s[0](s[1]));s[2]&&o.recognizeWith(s[2]),s[3]&&o.requireFailure(s[3])},this)}var e=r.prototype;return e.set=function(i){return hn(this.options,i),i.touchAction&&this.touchAction.update(),i.inputTarget&&(this.input.destroy(),this.input.target=i.inputTarget,this.input.init()),this},e.stop=function(i){this.session.stopped=i?ZP:b8},e.recognize=function(i){var n=this.session;if(!n.stopped){this.touchAction.preventDefaults(i);var s,o=this.recognizers,a=n.curRecognizer;(!a||a&&a.state&Zr)&&(n.curRecognizer=null,a=null);for(var u=0;u\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",o=window.console&&(window.console.warn||window.console.log);return o&&o.call(window.console,i,s),r.apply(this,arguments)}}var Gz=Kz(function(r,e,t){for(var i=Object.keys(e),n=0;n1?e-1:0),i=1;i2)return iu(Xz(e[0],e[1]),...bG(e).call(e,2));const i=e[0],n=e[1];if(i instanceof Date&&n instanceof Date)return i.setTime(n.getTime()),i;for(const s of IG(n))Object.prototype.propertyIsEnumerable.call(n,s)&&(n[s]===Yz?delete i[s]:i[s]!==null&&n[s]!==null&&typeof i[s]=="object"&&typeof n[s]=="object"&&!Cr(i[s])&&!Cr(n[s])?i[s]=iu(i[s],n[s]):i[s]=Jz(n[s]));return i}function Jz(r){return Cr(r)?mr(r).call(r,e=>Jz(e)):typeof r=="object"&&r!==null?r instanceof Date?new Date(r.getTime()):iu({},r):r}function Qz(r){for(const e of Aw(r))r[e]===Yz?delete r[e]:typeof r[e]=="object"&&r[e]!==null&&Qz(r[e])}function R8(){const r=()=>{};return{on:r,off:r,destroy:r,emit:r,get(){return{set:r}}}}const C8=typeof window<"u"?window.Hammer||$8:function(){return R8()};function Gr(r){var e;this._cleanupQueue=[],this.active=!1,this._dom={container:r,overlay:document.createElement("div")},this._dom.overlay.classList.add("vis-overlay"),this._dom.container.appendChild(this._dom.overlay),this._cleanupQueue.push(()=>{this._dom.overlay.parentNode.removeChild(this._dom.overlay)});const t=C8(this._dom.overlay);t.on("tap",_z(e=this._onTapOverlay).call(e,this)),this._cleanupQueue.push(()=>{t.destroy()});const i=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];dn(i).call(i,n=>{t.on(n,s=>{s.srcEvent.stopPropagation()})}),document&&document.body&&(this._onClick=n=>{x8(n.target,r)||this.deactivate()},document.body.addEventListener("click",this._onClick),this._cleanupQueue.push(()=>{document.body.removeEventListener("click",this._onClick)})),this._escListener=n=>{("key"in n?n.key==="Escape":n.keyCode===27)&&this.deactivate()}}L6(Gr.prototype);Gr.current=null;Gr.prototype.destroy=function(){this.deactivate();for(const t of YG(r=Oz(e=this._cleanupQueue).call(e,0)).call(r)){var r,e;t()}};Gr.prototype.activate=function(){Gr.current&&Gr.current.deactivate(),Gr.current=this,this.active=!0,this._dom.overlay.style.display="none",this._dom.container.classList.add("vis-active"),this.emit("change"),this.emit("activate"),document.body.addEventListener("keydown",this._escListener)};Gr.prototype.deactivate=function(){this.active=!1,this._dom.overlay.style.display="block",this._dom.container.classList.remove("vis-active"),document.body.removeEventListener("keydown",this._escListener),this.emit("change"),this.emit("deactivate")};Gr.prototype._onTapOverlay=function(r){this.activate(),r.srcEvent.stopPropagation()};function x8(r,e){for(;r;){if(r===e)return!0;r=r.parentNode}return!1}var Af,iR;function q8(){if(iR)return Af;iR=1,lz();var r=gt();return Af=r.Object.getOwnPropertySymbols,Af}var Mf,nR;function D8(){if(nR)return Mf;nR=1;var r=q8();return Mf=r,Mf}var Nf,sR;function A8(){return sR||(sR=1,Nf=D8()),Nf}var M8=A8(),oR=Te(M8),Ff={exports:{}},aR={},uR;function N8(){if(uR)return aR;uR=1;var r=ye(),e=ke(),t=jr(),i=qu().f,n=dt(),s=!n||e(function(){i(1)});return r({target:"Object",stat:!0,forced:s,sham:!n},{getOwnPropertyDescriptor:function(a,u){return i(t(a),u)}}),aR}var lR;function F8(){if(lR)return Ff.exports;lR=1,N8();var r=gt(),e=r.Object,t=Ff.exports=function(n,s){return e.getOwnPropertyDescriptor(n,s)};return e.getOwnPropertyDescriptor.sham&&(t.sham=!0),Ff.exports}var kf,cR;function k8(){if(cR)return kf;cR=1;var r=F8();return kf=r,kf}var Bf,dR;function B8(){return dR||(dR=1,Bf=k8()),Bf}var j8=B8(),Zz=Te(j8),hR={},fR;function L8(){if(fR)return hR;fR=1;var r=ye(),e=dt(),t=Ez(),i=jr(),n=qu(),s=Au();return r({target:"Object",stat:!0,sham:!e},{getOwnPropertyDescriptors:function(a){for(var u=i(a),l=n.f,c=t(u),d={},h=0,f,v;c.length>h;)v=l(u,f=c[h++]),v!==void 0&&s(d,f,v);return d}}),hR}var jf,vR;function z8(){if(vR)return jf;vR=1,L8();var r=gt();return jf=r.Object.getOwnPropertyDescriptors,jf}var Lf,pR;function H8(){if(pR)return Lf;pR=1;var r=z8();return Lf=r,Lf}var zf,gR;function W8(){return gR||(gR=1,zf=H8()),zf}var U8=W8(),mR=Te(U8),Hf={exports:{}},yR={},bR;function V8(){if(bR)return yR;bR=1;var r=ye(),e=dt(),t=Cw().f;return r({target:"Object",stat:!0,forced:Object.defineProperties!==t,sham:!e},{defineProperties:t}),yR}var _R;function K8(){if(_R)return Hf.exports;_R=1,V8();var r=gt(),e=r.Object,t=Hf.exports=function(n,s){return e.defineProperties(n,s)};return e.defineProperties.sham&&(t.sham=!0),Hf.exports}var Wf,wR;function G8(){if(wR)return Wf;wR=1;var r=K8();return Wf=r,Wf}var Uf,ER;function Y8(){return ER||(ER=1,Uf=G8()),Uf}var X8=Y8(),J8=Te(X8),Vf,SR;function Q8(){return SR||(SR=1,Vf=ZL()),Vf}var Z8=Q8(),e9=Te(Z8),OR={},IR={},Kf={exports:{}},Gf,TR;function t9(){if(TR)return Gf;TR=1;var r=ke();return Gf=r(function(){if(typeof ArrayBuffer=="function"){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}),Gf}var Yf,$R;function r9(){if($R)return Yf;$R=1;var r=ke(),e=zt(),t=ai(),i=t9(),n=Object.isExtensible,s=r(function(){});return Yf=s||i?function(a){return!e(a)||i&&t(a)==="ArrayBuffer"?!1:n?n(a):!0}:n,Yf}var Xf,PR;function i9(){if(PR)return Xf;PR=1;var r=ke();return Xf=!r(function(){return Object.isExtensible(Object.preventExtensions({}))}),Xf}var RR;function e3(){if(RR)return Kf.exports;RR=1;var r=ye(),e=ze(),t=Jo(),i=zt(),n=wt(),s=dr().f,o=Fu(),a=sz(),u=r9(),l=xu(),c=i9(),d=!1,h=l("meta"),f=0,v=function(y){s(y,h,{value:{objectID:"O"+f++,weakData:{}}})},p=function(y,S){if(!i(y))return typeof y=="symbol"?y:(typeof y=="string"?"S":"P")+y;if(!n(y,h)){if(!u(y))return"F";if(!S)return"E";v(y)}return y[h].objectID},b=function(y,S){if(!n(y,h)){if(!u(y))return!0;if(!S)return!1;v(y)}return y[h].weakData},m=function(y){return c&&d&&u(y)&&!n(y,h)&&v(y),y},g=function(){w.enable=function(){},d=!0;var y=o.f,S=e([].splice),O={};O[h]=1,y(O).length&&(o.f=function(I){for(var _=y(I),E=0,T=_.length;E_;_++)if(T=D(f[_]),T&&o(h,T))return T;return new d(!1)}O=a(f,I)}for(R=g?f.next:O.next;!(x=e(R,O)).done;){try{T=D(x.value)}catch(j){l(O,"throw",j)}if(typeof T=="object"&&T&&o(h,T))return T}return new d(!1)},tv}var rv,MR;function i3(){if(MR)return rv;MR=1;var r=_t(),e=TypeError;return rv=function(t,i){if(r(i,t))return t;throw new e("Incorrect invocation")},rv}var iv,NR;function n3(){if(NR)return iv;NR=1;var r=ye(),e=ct(),t=e3(),i=ke(),n=$s(),s=Hw(),o=i3(),a=bt(),u=zt(),l=Ko(),c=On(),d=dr().f,h=Cs().forEach,f=dt(),v=ea(),p=v.set,b=v.getterFor;return iv=function(m,g,w){var y=m.indexOf("Map")!==-1,S=m.indexOf("Weak")!==-1,O=y?"set":"add",I=e[m],_=I&&I.prototype,E={},T;if(!f||!a(I)||!(S||_.forEach&&!i(function(){new I().entries().next()})))T=w.getConstructor(g,m,y,O),t.enable();else{T=g(function(C,D){p(o(C,R),{type:m,collection:new I}),l(D)||s(D,C[O],{that:C,AS_ENTRIES:y})});var R=T.prototype,x=b(m);h(["add","clear","delete","forEach","get","has","set","keys","values","entries"],function(C){var D=C==="add"||C==="set";C in _&&!(S&&C==="clear")&&n(R,C,function(j,ee){var H=x(this).collection;if(!D&&S&&!u(j))return C==="get"?void 0:!1;var Z=H[C](j===0?0:j,ee);return D?this:Z})}),S||d(R,"size",{configurable:!0,get:function(){return x(this).collection.size}})}return c(T,m,!1,!0),E[m]=T,r({global:!0,forced:!0},E),S||w.setStrong(T,m,y),T},iv}var nv,FR;function s9(){if(FR)return nv;FR=1;var r=Zo();return nv=function(e,t,i){for(var n in t)i&&i.unsafe&&e[n]?e[n]=t[n]:r(e,n,t[n],i);return e},nv}var sv,kR;function o9(){if(kR)return sv;kR=1;var r=tr(),e=xw(),t=Et(),i=dt(),n=t("species");return sv=function(s){var o=r(s);i&&o&&!o[n]&&e(o,n,{configurable:!0,get:function(){return this}})},sv}var ov,BR;function s3(){if(BR)return ov;BR=1;var r=Qo(),e=xw(),t=s9(),i=Du(),n=i3(),s=Ko(),o=Hw(),a=qw(),u=Dw(),l=o9(),c=dt(),d=e3().fastKey,h=ea(),f=h.set,v=h.getterFor;return ov={getConstructor:function(p,b,m,g){var w=p(function(_,E){n(_,y),f(_,{type:b,index:r(null),first:null,last:null,size:0}),c||(_.size=0),s(E)||o(E,_[g],{that:_,AS_ENTRIES:m})}),y=w.prototype,S=v(b),O=function(_,E,T){var R=S(_),x=I(_,E),C,D;return x?x.value=T:(R.last=x={index:D=d(E,!0),key:E,value:T,previous:C=R.last,next:null,removed:!1},R.first||(R.first=x),C&&(C.next=x),c?R.size++:_.size++,D!=="F"&&(R.index[D]=x)),_},I=function(_,E){var T=S(_),R=d(E),x;if(R!=="F")return T.index[R];for(x=T.first;x;x=x.next)if(x.key===E)return x};return t(y,{clear:function(){for(var E=this,T=S(E),R=T.first;R;)R.removed=!0,R.previous&&(R.previous=R.previous.next=null),R=R.next;T.first=T.last=null,T.index=r(null),c?T.size=0:E.size=0},delete:function(_){var E=this,T=S(E),R=I(E,_);if(R){var x=R.next,C=R.previous;delete T.index[R.index],R.removed=!0,C&&(C.next=x),x&&(x.previous=C),T.first===R&&(T.first=x),T.last===R&&(T.last=C),c?T.size--:E.size--}return!!R},forEach:function(E){for(var T=S(this),R=i(E,arguments.length>1?arguments[1]:void 0),x;x=x?x.next:T.first;)for(R(x.value,x.key,this);x&&x.removed;)x=x.previous},has:function(E){return!!I(this,E)}}),t(y,m?{get:function(E){var T=I(this,E);return T&&T.value},set:function(E,T){return O(this,E===0?0:E,T)}}:{add:function(E){return O(this,E=E===0?0:E,E)}}),c&&e(y,"size",{configurable:!0,get:function(){return S(this).size}}),w},setStrong:function(p,b,m){var g=b+" Iterator",w=v(b),y=v(g);a(p,b,function(S,O){f(this,{type:g,target:S,state:w(S),kind:O,last:null})},function(){for(var S=y(this),O=S.kind,I=S.last;I&&I.removed;)I=I.previous;return!S.target||!(S.last=I=I?I.next:S.state.first)?(S.target=null,u(void 0,!0)):u(O==="keys"?I.key:O==="values"?I.value:[I.key,I.value],!1)},m?"entries":"values",!m,!0),l(b)}},ov}var jR;function a9(){if(jR)return IR;jR=1;var r=n3(),e=s3();return r("Map",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),IR}var LR;function u9(){return LR||(LR=1,a9()),OR}var zR={},av,HR;function o3(){return HR||(HR=1,av=function(r,e){return e===1?function(t,i){return t[r](i)}:function(t,i,n){return t[r](i,n)}}),av}var uv,WR;function l9(){if(WR)return uv;WR=1;var r=tr(),e=o3(),t=r("Map");return uv={Map:t,set:e("set",2),get:e("get",1),has:e("has",1),remove:e("delete",1),proto:t.prototype},uv}var UR;function c9(){if(UR)return zR;UR=1;var r=ye(),e=ze(),t=ui(),i=En(),n=Hw(),s=l9(),o=Is(),a=ke(),u=s.Map,l=s.has,c=s.get,d=s.set,h=e([].push),f=o||a(function(){return u.groupBy("ab",function(v){return v}).get("a").length!==1});return r({target:"Map",stat:!0,forced:o||f},{groupBy:function(p,b){i(p),t(b);var m=new u,g=0;return n(p,function(w){var y=b(w,g++);l(m,y)?h(c(m,y),w):d(m,y,[w])}),m}}),zR}var lv,VR;function d9(){if(VR)return lv;VR=1,zi(),u9(),c9(),ju();var r=gt();return lv=r.Map,lv}var cv,KR;function h9(){if(KR)return cv;KR=1;var r=d9();return Hi(),cv=r,cv}var dv,GR;function f9(){return GR||(GR=1,dv=h9()),dv}var v9=f9(),a3=Te(v9),YR={},XR;function p9(){if(XR)return YR;XR=1;var r=ye(),e=Cs().some,t=Lu(),i=t("some");return r({target:"Array",proto:!0,forced:!i},{some:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),YR}var hv,JR;function g9(){if(JR)return hv;JR=1,p9();var r=Yt();return hv=r("Array","some"),hv}var fv,QR;function m9(){if(QR)return fv;QR=1;var r=_t(),e=g9(),t=Array.prototype;return fv=function(i){var n=i.some;return i===t||r(t,i)&&n===t.some?e:n},fv}var vv,ZR;function y9(){if(ZR)return vv;ZR=1;var r=m9();return vv=r,vv}var pv,eC;function b9(){return eC||(eC=1,pv=y9()),pv}var _9=b9(),w9=Te(_9),gv,tC;function E9(){if(tC)return gv;tC=1,zi();var r=Yt();return gv=r("Array","keys"),gv}var mv,rC;function S9(){if(rC)return mv;rC=1;var r=E9();return mv=r,mv}var yv,iC;function O9(){if(iC)return yv;iC=1,Hi();var r=ji(),e=wt(),t=_t(),i=S9(),n=Array.prototype,s={DOMTokenList:!0,NodeList:!0};return yv=function(o){var a=o.keys;return o===n||t(n,o)&&a===n.keys||e(s,r(o))?i:a},yv}var bv,nC;function I9(){return nC||(nC=1,bv=O9()),bv}var T9=I9(),Hn=Te(T9),sC={},_v,oC;function $9(){if(oC)return _v;oC=1;var r=Rs(),e=Math.floor,t=function(i,n){var s=i.length;if(s<8)for(var o=1,a,u;o0;)i[u]=i[--u];u!==o++&&(i[u]=a)}else for(var l=e(s/2),c=t(r(i,0,l),n),d=t(r(i,l),n),h=c.length,f=d.length,v=0,p=0;v3)){if(d)return!0;if(f)return f<603;var I="",_,E,T,R;for(_=65;_<76;_++){switch(E=String.fromCharCode(_),_){case 66:case 69:case 70:case 72:T=3;break;case 68:case 71:T=4;break;default:T=2}for(R=0;R<47;R++)v.push({k:E+R,v:T})}for(v.sort(function(x,C){return C.v-x.v}),R=0;Ro(E)?1:-1}};return r({target:"Array",proto:!0,forced:S},{sort:function(_){_!==void 0&&t(_);var E=i(this);if(y)return _===void 0?p(E):p(E,_);var T=[],R=n(E),x,C;for(C=0;C"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");Fv=crypto.getRandomValues.bind(crypto)}return Fv(J9)}const Z9=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var IC={randomUUID:Z9};function eY(r,e,t){var n;r=r||{};const i=r.random??((n=r.rng)==null?void 0:n.call(r))??Q9();if(i.length<16)throw new Error("Random bytes length must be >= 16");return i[6]=i[6]&15|64,i[8]=i[8]&63|128,X9(i)}function tY(r,e,t){return IC.randomUUID?IC.randomUUID():eY(r)}function TC(r){return typeof r=="string"||typeof r=="number"}class Ww{constructor(e){Oi(this,"_queue",[]),Oi(this,"_timeout",null),Oi(this,"_extended",null),this.delay=null,this.max=1/0,this.setOptions(e)}setOptions(e){e&&typeof e.delay<"u"&&(this.delay=e.delay),e&&typeof e.max<"u"&&(this.max=e.max),this._flushIfNeeded()}static extend(e,t){const i=new Ww(t);if(e.flush!==void 0)throw new Error("Target object already has a property flush");e.flush=()=>{i.flush()};const n=[{name:"flush",original:void 0}];if(t&&t.replace)for(let s=0;sthis.max&&this.flush(),this._timeout!=null&&(clearTimeout(this._timeout),this._timeout=null),this.queue.length>0&&typeof this.delay=="number"&&(this._timeout=k6(()=>{this.flush()},this.delay))}flush(){var e,t;dn(e=Oz(t=this._queue).call(t,0)).call(e,i=>{i.fn.apply(i.context||i.fn,i.args||[])})}}class nu{constructor(){Oi(this,"_subscribers",{"*":[],add:[],remove:[],update:[]}),Oi(this,"subscribe",nu.prototype.on),Oi(this,"unsubscribe",nu.prototype.off)}_trigger(e,t,i){var n;if(e==="*")throw new Error("Cannot trigger event *");dn(n=[...this._subscribers[e],...this._subscribers["*"]]).call(n,s=>{s(e,t,i??null)})}on(e,t){typeof t=="function"&&this._subscribers[e].push(t)}off(e,t){var i;this._subscribers[e]=Yn(i=this._subscribers[e]).call(i,n=>n!==t)}}var $C={},PC={},RC;function rY(){if(RC)return PC;RC=1;var r=n3(),e=s3();return r("Set",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),PC}var CC;function iY(){return CC||(CC=1,rY()),$C}var xC={},kv,qC;function Tn(){if(qC)return kv;qC=1;var r=Os(),e=TypeError;return kv=function(t){if(typeof t=="object"&&"size"in t&&"has"in t&&"add"in t&&"delete"in t&&"keys"in t)return t;throw new e(r(t)+" is not a set")},kv}var Bv,DC;function $n(){if(DC)return Bv;DC=1;var r=tr(),e=o3(),t=r("Set"),i=t.prototype;return Bv={Set:t,add:e("add",1),has:e("has",1),remove:e("delete",1),proto:i},Bv}var jv,AC;function Pn(){if(AC)return jv;AC=1;var r=Gt();return jv=function(e,t,i){for(var n=i?e:e.iterator,s=e.next,o,a;!(o=r(s,n)).done;)if(a=t(o.value),a!==void 0)return a},jv}var Lv,MC;function oa(){if(MC)return Lv;MC=1;var r=Pn();return Lv=function(e,t,i){return i?r(e.keys(),t,!0):e.forEach(t)},Lv}var zv,NC;function Uw(){if(NC)return zv;NC=1;var r=$n(),e=oa(),t=r.Set,i=r.add;return zv=function(n){var s=new t;return e(n,function(o){i(s,o)}),s},zv}var Hv,FC;function aa(){return FC||(FC=1,Hv=function(r){return r.size}),Hv}var Wv,kC;function nY(){return kC||(kC=1,Wv=function(r){return{iterator:r,next:r.next,done:!1}}),Wv}var Uv,BC;function Rn(){if(BC)return Uv;BC=1;var r=ui(),e=li(),t=Gt(),i=Ps(),n=nY(),s="Invalid size",o=RangeError,a=TypeError,u=Math.max,l=function(c,d){this.set=c,this.size=u(d,0),this.has=r(c.has),this.keys=r(c.keys)};return l.prototype={getIterator:function(){return n(e(t(this.keys,this.set)))},includes:function(c){return t(this.has,this.set,c)}},Uv=function(c){e(c);var d=+c.size;if(d!==d)throw new a(s);var h=i(d);if(h<0)throw new o(s);return new l(c,h)},Uv}var Vv,jC;function sY(){if(jC)return Vv;jC=1;var r=Tn(),e=$n(),t=Uw(),i=aa(),n=Rn(),s=oa(),o=Pn(),a=e.has,u=e.remove;return Vv=function(c){var d=r(this),h=n(c),f=t(d);return i(d)<=h.size?s(d,function(v){h.includes(v)&&u(f,v)}):o(h.getIterator(),function(v){a(f,v)&&u(f,v)}),f},Vv}var Kv,LC;function Cn(){return LC||(LC=1,Kv=function(){return!1}),Kv}var zC;function oY(){if(zC)return xC;zC=1;var r=ye(),e=sY(),t=ke(),i=Cn(),n=!i("difference",function(o){return o.size===0}),s=n||t(function(){var o={size:1,has:function(){return!0},keys:function(){var u=0;return{next:function(){var l=u++>1;return a.has(1)&&a.clear(),{done:l,value:2}}}}},a=new Set([1,2,3,4]);return a.difference(o).size!==3});return r({target:"Set",proto:!0,real:!0,forced:s},{difference:e}),xC}var HC={},Gv,WC;function aY(){if(WC)return Gv;WC=1;var r=Tn(),e=$n(),t=aa(),i=Rn(),n=oa(),s=Pn(),o=e.Set,a=e.add,u=e.has;return Gv=function(c){var d=r(this),h=i(c),f=new o;return t(d)>h.size?s(h.getIterator(),function(v){u(d,v)&&a(f,v)}):n(d,function(v){h.includes(v)&&a(f,v)}),f},Gv}var UC;function uY(){if(UC)return HC;UC=1;var r=ye(),e=ke(),t=aY(),i=Cn(),n=!i("intersection",function(s){return s.size===2&&s.has(1)&&s.has(2)})||e(function(){return String(Array.from(new Set([1,2,3]).intersection(new Set([3,2]))))!=="3,2"});return r({target:"Set",proto:!0,real:!0,forced:n},{intersection:t}),HC}var VC={},Yv,KC;function lY(){if(KC)return Yv;KC=1;var r=Tn(),e=$n().has,t=aa(),i=Rn(),n=oa(),s=Pn(),o=zw();return Yv=function(u){var l=r(this),c=i(u);if(t(l)<=c.size)return n(l,function(h){if(c.includes(h))return!1},!0)!==!1;var d=c.getIterator();return s(d,function(h){if(e(l,h))return o(d,"normal",!1)})!==!1},Yv}var GC;function cY(){if(GC)return VC;GC=1;var r=ye(),e=lY(),t=Cn(),i=!t("isDisjointFrom",function(n){return!n});return r({target:"Set",proto:!0,real:!0,forced:i},{isDisjointFrom:e}),VC}var YC={},Xv,XC;function dY(){if(XC)return Xv;XC=1;var r=Tn(),e=aa(),t=oa(),i=Rn();return Xv=function(s){var o=r(this),a=i(s);return e(o)>a.size?!1:t(o,function(u){if(!a.includes(u))return!1},!0)!==!1},Xv}var JC;function hY(){if(JC)return YC;JC=1;var r=ye(),e=dY(),t=Cn(),i=!t("isSubsetOf",function(n){return n});return r({target:"Set",proto:!0,real:!0,forced:i},{isSubsetOf:e}),YC}var QC={},Jv,ZC;function fY(){if(ZC)return Jv;ZC=1;var r=Tn(),e=$n().has,t=aa(),i=Rn(),n=Pn(),s=zw();return Jv=function(a){var u=r(this),l=i(a);if(t(u)t[0])}toItemArray(){var e;return mr(e=[...this._pairs]).call(e,t=>t[1])}toEntryArray(){return[...this._pairs]}toObjectMap(){const e=w6(null);for(const[t,i]of this._pairs)e[t]=i;return e}toMap(){return new a3(this._pairs)}toIdSet(){return new np(this.toIdArray())}toItemSet(){return new np(this.toItemArray())}cache(){return new Zi([...this._pairs])}distinct(e){const t=new np;for(const[i,n]of this._pairs)t.add(e(n,i));return t}filter(e){const t=this._pairs;return new Zi({*[Qn](){for(const[i,n]of t)e(n,i)&&(yield[i,n])}})}forEach(e){for(const[t,i]of this._pairs)e(i,t)}map(e){const t=this._pairs;return new Zi({*[Qn](){for(const[i,n]of t)yield[i,e(n,i)]}})}max(e){const t=dp(this._pairs);let i=t.next();if(i.done)return null;let n=i.value[1],s=e(i.value[1],i.value[0]);for(;!(i=t.next()).done;){const[o,a]=i.value,u=e(a,o);u>s&&(s=u,n=a)}return n}min(e){const t=dp(this._pairs);let i=t.next();if(i.done)return null;let n=i.value[1],s=e(i.value[1],i.value[0]);for(;!(i=t.next()).done;){const[o,a]=i.value,u=e(a,o);u{var t;return dp(j_(t=[...this._pairs]).call(t,(i,n)=>{let[s,o]=i,[a,u]=n;return e(o,u,s,a)}))}})}}function mx(r,e){var t=Aw(r);if(oR){var i=oR(r);e&&(i=Yn(i).call(i,function(n){return Zz(r,n).enumerable})),t.push.apply(t,i)}return t}function yx(r){for(var e=1;eo[this._idProp]);if(w9(s).call(s,o=>this._data.has(o)))throw new Error("A duplicate id was found in the parameter array.");for(let o=0,a=e.length;o{const c=l[a];if(c!=null&&this._data.has(c)){const d=l,h=l6({},this._data.get(c)),f=this._updateItem(d);n.push(f),o.push(d),s.push(h)}else{const d=this._addItem(l);i.push(d)}};if(Cr(e))for(let l=0,c=e.length;l{const o=this._data.get(s[this._idProp]);if(o==null)throw new Error("Updating non-existent items is not allowed.");return{oldData:o,update:s}})).call(i,s=>{let{oldData:o,update:a}=s;const u=o[this._idProp],l=P8(o,a);return this._data.set(u,l),{id:u,oldData:o,updatedData:l}});if(n.length){const s={items:mr(n).call(n,o=>o.id),oldData:mr(n).call(n,o=>o.oldData),data:mr(n).call(n,o=>o.updatedData)};return this._trigger("update",s,t),s.items}else return[]}get(e,t){let i,n,s;TC(e)?(i=e,s=t):Cr(e)?(n=e,s=t):s=e;const o=s&&s.returnType==="Object"?"Object":"Array",a=s&&Yn(s),u=[];let l,c,d;if(i!=null)l=this._data.get(i),l&&a&&!a(l)&&(l=void 0);else if(n!=null)for(let f=0,v=n.length;f(n[s]=e[s],n),{})}_sort(e,t){if(typeof t=="string"){const i=t;j_(e).call(e,(n,s)=>{const o=n[i],a=s[i];return o>a?1:oi)&&(t=s,i=o)}return t||null}min(e){let t=null,i=null;for(const s of bC(n=this._data).call(n)){var n;const o=s[e];typeof o=="number"&&(i==null||o\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",o=window.console&&(window.console.warn||window.console.log);return o&&o.call(window.console,i,s),r.apply(this,arguments)}}var Xz=Yz(function(r,e,t){for(var i=Object.keys(e),n=0;n1?e-1:0),i=1;i2)return iu(Qz(e[0],e[1]),..._G(e).call(e,2));const i=e[0],n=e[1];if(i instanceof Date&&n instanceof Date)return i.setTime(n.getTime()),i;for(const s of TG(n))Object.prototype.propertyIsEnumerable.call(n,s)&&(n[s]===Jz?delete i[s]:i[s]!==null&&n[s]!==null&&typeof i[s]=="object"&&typeof n[s]=="object"&&!Cr(i[s])&&!Cr(n[s])?i[s]=iu(i[s],n[s]):i[s]=Zz(n[s]));return i}function Zz(r){return Cr(r)?mr(r).call(r,e=>Zz(e)):typeof r=="object"&&r!==null?r instanceof Date?new Date(r.getTime()):iu({},r):r}function e3(r){for(const e of Aw(r))r[e]===Jz?delete r[e]:typeof r[e]=="object"&&r[e]!==null&&e3(r[e])}function C8(){const r=()=>{};return{on:r,off:r,destroy:r,emit:r,get(){return{set:r}}}}const x8=typeof window<"u"?window.Hammer||P8:function(){return C8()};function Gr(r){var e;this._cleanupQueue=[],this.active=!1,this._dom={container:r,overlay:document.createElement("div")},this._dom.overlay.classList.add("vis-overlay"),this._dom.container.appendChild(this._dom.overlay),this._cleanupQueue.push(()=>{this._dom.overlay.parentNode.removeChild(this._dom.overlay)});const t=x8(this._dom.overlay);t.on("tap",Ez(e=this._onTapOverlay).call(e,this)),this._cleanupQueue.push(()=>{t.destroy()});const i=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];dn(i).call(i,n=>{t.on(n,s=>{s.srcEvent.stopPropagation()})}),document&&document.body&&(this._onClick=n=>{q8(n.target,r)||this.deactivate()},document.body.addEventListener("click",this._onClick),this._cleanupQueue.push(()=>{document.body.removeEventListener("click",this._onClick)})),this._escListener=n=>{("key"in n?n.key==="Escape":n.keyCode===27)&&this.deactivate()}}z6(Gr.prototype);Gr.current=null;Gr.prototype.destroy=function(){this.deactivate();for(const t of XG(r=Tz(e=this._cleanupQueue).call(e,0)).call(r)){var r,e;t()}};Gr.prototype.activate=function(){Gr.current&&Gr.current.deactivate(),Gr.current=this,this.active=!0,this._dom.overlay.style.display="none",this._dom.container.classList.add("vis-active"),this.emit("change"),this.emit("activate"),document.body.addEventListener("keydown",this._escListener)};Gr.prototype.deactivate=function(){this.active=!1,this._dom.overlay.style.display="block",this._dom.container.classList.remove("vis-active"),document.body.removeEventListener("keydown",this._escListener),this.emit("change"),this.emit("deactivate")};Gr.prototype._onTapOverlay=function(r){this.activate(),r.srcEvent.stopPropagation()};function q8(r,e){for(;r;){if(r===e)return!0;r=r.parentNode}return!1}var Af,iR;function D8(){if(iR)return Af;iR=1,dz();var r=gt();return Af=r.Object.getOwnPropertySymbols,Af}var Mf,nR;function A8(){if(nR)return Mf;nR=1;var r=D8();return Mf=r,Mf}var Nf,sR;function M8(){return sR||(sR=1,Nf=A8()),Nf}var N8=M8(),oR=Te(N8),Ff={exports:{}},aR={},uR;function F8(){if(uR)return aR;uR=1;var r=ye(),e=ke(),t=jr(),i=qu().f,n=dt(),s=!n||e(function(){i(1)});return r({target:"Object",stat:!0,forced:s,sham:!n},{getOwnPropertyDescriptor:function(a,u){return i(t(a),u)}}),aR}var lR;function k8(){if(lR)return Ff.exports;lR=1,F8();var r=gt(),e=r.Object,t=Ff.exports=function(n,s){return e.getOwnPropertyDescriptor(n,s)};return e.getOwnPropertyDescriptor.sham&&(t.sham=!0),Ff.exports}var kf,cR;function B8(){if(cR)return kf;cR=1;var r=k8();return kf=r,kf}var Bf,dR;function j8(){return dR||(dR=1,Bf=B8()),Bf}var L8=j8(),t3=Te(L8),hR={},fR;function z8(){if(fR)return hR;fR=1;var r=ye(),e=dt(),t=Oz(),i=jr(),n=qu(),s=Au();return r({target:"Object",stat:!0,sham:!e},{getOwnPropertyDescriptors:function(a){for(var u=i(a),l=n.f,c=t(u),d={},h=0,f,v;c.length>h;)v=l(u,f=c[h++]),v!==void 0&&s(d,f,v);return d}}),hR}var jf,vR;function H8(){if(vR)return jf;vR=1,z8();var r=gt();return jf=r.Object.getOwnPropertyDescriptors,jf}var Lf,pR;function W8(){if(pR)return Lf;pR=1;var r=H8();return Lf=r,Lf}var zf,gR;function U8(){return gR||(gR=1,zf=W8()),zf}var V8=U8(),mR=Te(V8),Hf={exports:{}},yR={},bR;function K8(){if(bR)return yR;bR=1;var r=ye(),e=dt(),t=Cw().f;return r({target:"Object",stat:!0,forced:Object.defineProperties!==t,sham:!e},{defineProperties:t}),yR}var _R;function G8(){if(_R)return Hf.exports;_R=1,K8();var r=gt(),e=r.Object,t=Hf.exports=function(n,s){return e.defineProperties(n,s)};return e.defineProperties.sham&&(t.sham=!0),Hf.exports}var Wf,wR;function Y8(){if(wR)return Wf;wR=1;var r=G8();return Wf=r,Wf}var Uf,ER;function X8(){return ER||(ER=1,Uf=Y8()),Uf}var J8=X8(),Q8=Te(J8),Vf,SR;function Z8(){return SR||(SR=1,Vf=tz()),Vf}var e9=Z8(),t9=Te(e9),OR={},IR={},Kf={exports:{}},Gf,TR;function r9(){if(TR)return Gf;TR=1;var r=ke();return Gf=r(function(){if(typeof ArrayBuffer=="function"){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}),Gf}var Yf,$R;function i9(){if($R)return Yf;$R=1;var r=ke(),e=Ht(),t=ui(),i=r9(),n=Object.isExtensible,s=r(function(){});return Yf=s||i?function(a){return!e(a)||i&&t(a)==="ArrayBuffer"?!1:n?n(a):!0}:n,Yf}var Xf,PR;function n9(){if(PR)return Xf;PR=1;var r=ke();return Xf=!r(function(){return Object.isExtensible(Object.preventExtensions({}))}),Xf}var RR;function r3(){if(RR)return Kf.exports;RR=1;var r=ye(),e=ze(),t=Jo(),i=Ht(),n=wt(),s=dr().f,o=Fu(),a=az(),u=i9(),l=xu(),c=n9(),d=!1,h=l("meta"),f=0,v=function(y){s(y,h,{value:{objectID:"O"+f++,weakData:{}}})},p=function(y,S){if(!i(y))return typeof y=="symbol"?y:(typeof y=="string"?"S":"P")+y;if(!n(y,h)){if(!u(y))return"F";if(!S)return"E";v(y)}return y[h].objectID},b=function(y,S){if(!n(y,h)){if(!u(y))return!0;if(!S)return!1;v(y)}return y[h].weakData},m=function(y){return c&&d&&u(y)&&!n(y,h)&&v(y),y},g=function(){w.enable=function(){},d=!0;var y=o.f,S=e([].splice),O={};O[h]=1,y(O).length&&(o.f=function(I){for(var _=y(I),E=0,T=_.length;E_;_++)if(T=D(f[_]),T&&o(h,T))return T;return new d(!1)}O=a(f,I)}for(R=g?f.next:O.next;!(x=e(R,O)).done;){try{T=D(x.value)}catch(j){l(O,"throw",j)}if(typeof T=="object"&&T&&o(h,T))return T}return new d(!1)},tv}var rv,MR;function s3(){if(MR)return rv;MR=1;var r=_t(),e=TypeError;return rv=function(t,i){if(r(i,t))return t;throw new e("Incorrect invocation")},rv}var iv,NR;function o3(){if(NR)return iv;NR=1;var r=ye(),e=ct(),t=r3(),i=ke(),n=$s(),s=Hw(),o=s3(),a=bt(),u=Ht(),l=Ko(),c=On(),d=dr().f,h=Cs().forEach,f=dt(),v=ea(),p=v.set,b=v.getterFor;return iv=function(m,g,w){var y=m.indexOf("Map")!==-1,S=m.indexOf("Weak")!==-1,O=y?"set":"add",I=e[m],_=I&&I.prototype,E={},T;if(!f||!a(I)||!(S||_.forEach&&!i(function(){new I().entries().next()})))T=w.getConstructor(g,m,y,O),t.enable();else{T=g(function(C,D){p(o(C,R),{type:m,collection:new I}),l(D)||s(D,C[O],{that:C,AS_ENTRIES:y})});var R=T.prototype,x=b(m);h(["add","clear","delete","forEach","get","has","set","keys","values","entries"],function(C){var D=C==="add"||C==="set";C in _&&!(S&&C==="clear")&&n(R,C,function(j,ee){var H=x(this).collection;if(!D&&S&&!u(j))return C==="get"?void 0:!1;var Z=H[C](j===0?0:j,ee);return D?this:Z})}),S||d(R,"size",{configurable:!0,get:function(){return x(this).collection.size}})}return c(T,m,!1,!0),E[m]=T,r({global:!0,forced:!0},E),S||w.setStrong(T,m,y),T},iv}var nv,FR;function o9(){if(FR)return nv;FR=1;var r=Zo();return nv=function(e,t,i){for(var n in t)i&&i.unsafe&&e[n]?e[n]=t[n]:r(e,n,t[n],i);return e},nv}var sv,kR;function a9(){if(kR)return sv;kR=1;var r=rr(),e=xw(),t=Et(),i=dt(),n=t("species");return sv=function(s){var o=r(s);i&&o&&!o[n]&&e(o,n,{configurable:!0,get:function(){return this}})},sv}var ov,BR;function a3(){if(BR)return ov;BR=1;var r=Qo(),e=xw(),t=o9(),i=Du(),n=s3(),s=Ko(),o=Hw(),a=qw(),u=Dw(),l=a9(),c=dt(),d=r3().fastKey,h=ea(),f=h.set,v=h.getterFor;return ov={getConstructor:function(p,b,m,g){var w=p(function(_,E){n(_,y),f(_,{type:b,index:r(null),first:null,last:null,size:0}),c||(_.size=0),s(E)||o(E,_[g],{that:_,AS_ENTRIES:m})}),y=w.prototype,S=v(b),O=function(_,E,T){var R=S(_),x=I(_,E),C,D;return x?x.value=T:(R.last=x={index:D=d(E,!0),key:E,value:T,previous:C=R.last,next:null,removed:!1},R.first||(R.first=x),C&&(C.next=x),c?R.size++:_.size++,D!=="F"&&(R.index[D]=x)),_},I=function(_,E){var T=S(_),R=d(E),x;if(R!=="F")return T.index[R];for(x=T.first;x;x=x.next)if(x.key===E)return x};return t(y,{clear:function(){for(var E=this,T=S(E),R=T.first;R;)R.removed=!0,R.previous&&(R.previous=R.previous.next=null),R=R.next;T.first=T.last=null,T.index=r(null),c?T.size=0:E.size=0},delete:function(_){var E=this,T=S(E),R=I(E,_);if(R){var x=R.next,C=R.previous;delete T.index[R.index],R.removed=!0,C&&(C.next=x),x&&(x.previous=C),T.first===R&&(T.first=x),T.last===R&&(T.last=C),c?T.size--:E.size--}return!!R},forEach:function(E){for(var T=S(this),R=i(E,arguments.length>1?arguments[1]:void 0),x;x=x?x.next:T.first;)for(R(x.value,x.key,this);x&&x.removed;)x=x.previous},has:function(E){return!!I(this,E)}}),t(y,m?{get:function(E){var T=I(this,E);return T&&T.value},set:function(E,T){return O(this,E===0?0:E,T)}}:{add:function(E){return O(this,E=E===0?0:E,E)}}),c&&e(y,"size",{configurable:!0,get:function(){return S(this).size}}),w},setStrong:function(p,b,m){var g=b+" Iterator",w=v(b),y=v(g);a(p,b,function(S,O){f(this,{type:g,target:S,state:w(S),kind:O,last:null})},function(){for(var S=y(this),O=S.kind,I=S.last;I&&I.removed;)I=I.previous;return!S.target||!(S.last=I=I?I.next:S.state.first)?(S.target=null,u(void 0,!0)):u(O==="keys"?I.key:O==="values"?I.value:[I.key,I.value],!1)},m?"entries":"values",!m,!0),l(b)}},ov}var jR;function u9(){if(jR)return IR;jR=1;var r=o3(),e=a3();return r("Map",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),IR}var LR;function l9(){return LR||(LR=1,u9()),OR}var zR={},av,HR;function u3(){return HR||(HR=1,av=function(r,e){return e===1?function(t,i){return t[r](i)}:function(t,i,n){return t[r](i,n)}}),av}var uv,WR;function c9(){if(WR)return uv;WR=1;var r=rr(),e=u3(),t=r("Map");return uv={Map:t,set:e("set",2),get:e("get",1),has:e("has",1),remove:e("delete",1),proto:t.prototype},uv}var UR;function d9(){if(UR)return zR;UR=1;var r=ye(),e=ze(),t=li(),i=En(),n=Hw(),s=c9(),o=Is(),a=ke(),u=s.Map,l=s.has,c=s.get,d=s.set,h=e([].push),f=o||a(function(){return u.groupBy("ab",function(v){return v}).get("a").length!==1});return r({target:"Map",stat:!0,forced:o||f},{groupBy:function(p,b){i(p),t(b);var m=new u,g=0;return n(p,function(w){var y=b(w,g++);l(m,y)?h(c(m,y),w):d(m,y,[w])}),m}}),zR}var lv,VR;function h9(){if(VR)return lv;VR=1,zi(),l9(),d9(),ju();var r=gt();return lv=r.Map,lv}var cv,KR;function f9(){if(KR)return cv;KR=1;var r=h9();return Hi(),cv=r,cv}var dv,GR;function v9(){return GR||(GR=1,dv=f9()),dv}var p9=v9(),l3=Te(p9),YR={},XR;function g9(){if(XR)return YR;XR=1;var r=ye(),e=Cs().some,t=Lu(),i=t("some");return r({target:"Array",proto:!0,forced:!i},{some:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),YR}var hv,JR;function m9(){if(JR)return hv;JR=1,g9();var r=Xt();return hv=r("Array","some"),hv}var fv,QR;function y9(){if(QR)return fv;QR=1;var r=_t(),e=m9(),t=Array.prototype;return fv=function(i){var n=i.some;return i===t||r(t,i)&&n===t.some?e:n},fv}var vv,ZR;function b9(){if(ZR)return vv;ZR=1;var r=y9();return vv=r,vv}var pv,eC;function _9(){return eC||(eC=1,pv=b9()),pv}var w9=_9(),E9=Te(w9),gv,tC;function S9(){if(tC)return gv;tC=1,zi();var r=Xt();return gv=r("Array","keys"),gv}var mv,rC;function O9(){if(rC)return mv;rC=1;var r=S9();return mv=r,mv}var yv,iC;function I9(){if(iC)return yv;iC=1,Hi();var r=ji(),e=wt(),t=_t(),i=O9(),n=Array.prototype,s={DOMTokenList:!0,NodeList:!0};return yv=function(o){var a=o.keys;return o===n||t(n,o)&&a===n.keys||e(s,r(o))?i:a},yv}var bv,nC;function T9(){return nC||(nC=1,bv=I9()),bv}var $9=T9(),Hn=Te($9),sC={},_v,oC;function P9(){if(oC)return _v;oC=1;var r=Rs(),e=Math.floor,t=function(i,n){var s=i.length;if(s<8)for(var o=1,a,u;o0;)i[u]=i[--u];u!==o++&&(i[u]=a)}else for(var l=e(s/2),c=t(r(i,0,l),n),d=t(r(i,l),n),h=c.length,f=d.length,v=0,p=0;v3)){if(d)return!0;if(f)return f<603;var I="",_,E,T,R;for(_=65;_<76;_++){switch(E=String.fromCharCode(_),_){case 66:case 69:case 70:case 72:T=3;break;case 68:case 71:T=4;break;default:T=2}for(R=0;R<47;R++)v.push({k:E+R,v:T})}for(v.sort(function(x,C){return C.v-x.v}),R=0;Ro(E)?1:-1}};return r({target:"Array",proto:!0,forced:S},{sort:function(_){_!==void 0&&t(_);var E=i(this);if(y)return _===void 0?p(E):p(E,_);var T=[],R=n(E),x,C;for(C=0;C"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");Fv=crypto.getRandomValues.bind(crypto)}return Fv(Q9)}const eY=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var IC={randomUUID:eY};function tY(r,e,t){var n;r=r||{};const i=r.random??((n=r.rng)==null?void 0:n.call(r))??Z9();if(i.length<16)throw new Error("Random bytes length must be >= 16");return i[6]=i[6]&15|64,i[8]=i[8]&63|128,J9(i)}function rY(r,e,t){return IC.randomUUID?IC.randomUUID():tY(r)}function TC(r){return typeof r=="string"||typeof r=="number"}class Ww{constructor(e){Ii(this,"_queue",[]),Ii(this,"_timeout",null),Ii(this,"_extended",null),this.delay=null,this.max=1/0,this.setOptions(e)}setOptions(e){e&&typeof e.delay<"u"&&(this.delay=e.delay),e&&typeof e.max<"u"&&(this.max=e.max),this._flushIfNeeded()}static extend(e,t){const i=new Ww(t);if(e.flush!==void 0)throw new Error("Target object already has a property flush");e.flush=()=>{i.flush()};const n=[{name:"flush",original:void 0}];if(t&&t.replace)for(let s=0;sthis.max&&this.flush(),this._timeout!=null&&(clearTimeout(this._timeout),this._timeout=null),this.queue.length>0&&typeof this.delay=="number"&&(this._timeout=B6(()=>{this.flush()},this.delay))}flush(){var e,t;dn(e=Tz(t=this._queue).call(t,0)).call(e,i=>{i.fn.apply(i.context||i.fn,i.args||[])})}}class nu{constructor(){Ii(this,"_subscribers",{"*":[],add:[],remove:[],update:[]}),Ii(this,"subscribe",nu.prototype.on),Ii(this,"unsubscribe",nu.prototype.off)}_trigger(e,t,i){var n;if(e==="*")throw new Error("Cannot trigger event *");dn(n=[...this._subscribers[e],...this._subscribers["*"]]).call(n,s=>{s(e,t,i??null)})}on(e,t){typeof t=="function"&&this._subscribers[e].push(t)}off(e,t){var i;this._subscribers[e]=Yn(i=this._subscribers[e]).call(i,n=>n!==t)}}var $C={},PC={},RC;function iY(){if(RC)return PC;RC=1;var r=o3(),e=a3();return r("Set",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),PC}var CC;function nY(){return CC||(CC=1,iY()),$C}var xC={},kv,qC;function Tn(){if(qC)return kv;qC=1;var r=Os(),e=TypeError;return kv=function(t){if(typeof t=="object"&&"size"in t&&"has"in t&&"add"in t&&"delete"in t&&"keys"in t)return t;throw new e(r(t)+" is not a set")},kv}var Bv,DC;function $n(){if(DC)return Bv;DC=1;var r=rr(),e=u3(),t=r("Set"),i=t.prototype;return Bv={Set:t,add:e("add",1),has:e("has",1),remove:e("delete",1),proto:i},Bv}var jv,AC;function Pn(){if(AC)return jv;AC=1;var r=Yt();return jv=function(e,t,i){for(var n=i?e:e.iterator,s=e.next,o,a;!(o=r(s,n)).done;)if(a=t(o.value),a!==void 0)return a},jv}var Lv,MC;function oa(){if(MC)return Lv;MC=1;var r=Pn();return Lv=function(e,t,i){return i?r(e.keys(),t,!0):e.forEach(t)},Lv}var zv,NC;function Uw(){if(NC)return zv;NC=1;var r=$n(),e=oa(),t=r.Set,i=r.add;return zv=function(n){var s=new t;return e(n,function(o){i(s,o)}),s},zv}var Hv,FC;function aa(){return FC||(FC=1,Hv=function(r){return r.size}),Hv}var Wv,kC;function sY(){return kC||(kC=1,Wv=function(r){return{iterator:r,next:r.next,done:!1}}),Wv}var Uv,BC;function Rn(){if(BC)return Uv;BC=1;var r=li(),e=ci(),t=Yt(),i=Ps(),n=sY(),s="Invalid size",o=RangeError,a=TypeError,u=Math.max,l=function(c,d){this.set=c,this.size=u(d,0),this.has=r(c.has),this.keys=r(c.keys)};return l.prototype={getIterator:function(){return n(e(t(this.keys,this.set)))},includes:function(c){return t(this.has,this.set,c)}},Uv=function(c){e(c);var d=+c.size;if(d!==d)throw new a(s);var h=i(d);if(h<0)throw new o(s);return new l(c,h)},Uv}var Vv,jC;function oY(){if(jC)return Vv;jC=1;var r=Tn(),e=$n(),t=Uw(),i=aa(),n=Rn(),s=oa(),o=Pn(),a=e.has,u=e.remove;return Vv=function(c){var d=r(this),h=n(c),f=t(d);return i(d)<=h.size?s(d,function(v){h.includes(v)&&u(f,v)}):o(h.getIterator(),function(v){a(f,v)&&u(f,v)}),f},Vv}var Kv,LC;function Cn(){return LC||(LC=1,Kv=function(){return!1}),Kv}var zC;function aY(){if(zC)return xC;zC=1;var r=ye(),e=oY(),t=ke(),i=Cn(),n=!i("difference",function(o){return o.size===0}),s=n||t(function(){var o={size:1,has:function(){return!0},keys:function(){var u=0;return{next:function(){var l=u++>1;return a.has(1)&&a.clear(),{done:l,value:2}}}}},a=new Set([1,2,3,4]);return a.difference(o).size!==3});return r({target:"Set",proto:!0,real:!0,forced:s},{difference:e}),xC}var HC={},Gv,WC;function uY(){if(WC)return Gv;WC=1;var r=Tn(),e=$n(),t=aa(),i=Rn(),n=oa(),s=Pn(),o=e.Set,a=e.add,u=e.has;return Gv=function(c){var d=r(this),h=i(c),f=new o;return t(d)>h.size?s(h.getIterator(),function(v){u(d,v)&&a(f,v)}):n(d,function(v){h.includes(v)&&a(f,v)}),f},Gv}var UC;function lY(){if(UC)return HC;UC=1;var r=ye(),e=ke(),t=uY(),i=Cn(),n=!i("intersection",function(s){return s.size===2&&s.has(1)&&s.has(2)})||e(function(){return String(Array.from(new Set([1,2,3]).intersection(new Set([3,2]))))!=="3,2"});return r({target:"Set",proto:!0,real:!0,forced:n},{intersection:t}),HC}var VC={},Yv,KC;function cY(){if(KC)return Yv;KC=1;var r=Tn(),e=$n().has,t=aa(),i=Rn(),n=oa(),s=Pn(),o=zw();return Yv=function(u){var l=r(this),c=i(u);if(t(l)<=c.size)return n(l,function(h){if(c.includes(h))return!1},!0)!==!1;var d=c.getIterator();return s(d,function(h){if(e(l,h))return o(d,"normal",!1)})!==!1},Yv}var GC;function dY(){if(GC)return VC;GC=1;var r=ye(),e=cY(),t=Cn(),i=!t("isDisjointFrom",function(n){return!n});return r({target:"Set",proto:!0,real:!0,forced:i},{isDisjointFrom:e}),VC}var YC={},Xv,XC;function hY(){if(XC)return Xv;XC=1;var r=Tn(),e=aa(),t=oa(),i=Rn();return Xv=function(s){var o=r(this),a=i(s);return e(o)>a.size?!1:t(o,function(u){if(!a.includes(u))return!1},!0)!==!1},Xv}var JC;function fY(){if(JC)return YC;JC=1;var r=ye(),e=hY(),t=Cn(),i=!t("isSubsetOf",function(n){return n});return r({target:"Set",proto:!0,real:!0,forced:i},{isSubsetOf:e}),YC}var QC={},Jv,ZC;function vY(){if(ZC)return Jv;ZC=1;var r=Tn(),e=$n().has,t=aa(),i=Rn(),n=Pn(),s=zw();return Jv=function(a){var u=r(this),l=i(a);if(t(u)t[0])}toItemArray(){var e;return mr(e=[...this._pairs]).call(e,t=>t[1])}toEntryArray(){return[...this._pairs]}toObjectMap(){const e=E6(null);for(const[t,i]of this._pairs)e[t]=i;return e}toMap(){return new l3(this._pairs)}toIdSet(){return new np(this.toIdArray())}toItemSet(){return new np(this.toItemArray())}cache(){return new Zi([...this._pairs])}distinct(e){const t=new np;for(const[i,n]of this._pairs)t.add(e(n,i));return t}filter(e){const t=this._pairs;return new Zi({*[Qn](){for(const[i,n]of t)e(n,i)&&(yield[i,n])}})}forEach(e){for(const[t,i]of this._pairs)e(i,t)}map(e){const t=this._pairs;return new Zi({*[Qn](){for(const[i,n]of t)yield[i,e(n,i)]}})}max(e){const t=dp(this._pairs);let i=t.next();if(i.done)return null;let n=i.value[1],s=e(i.value[1],i.value[0]);for(;!(i=t.next()).done;){const[o,a]=i.value,u=e(a,o);u>s&&(s=u,n=a)}return n}min(e){const t=dp(this._pairs);let i=t.next();if(i.done)return null;let n=i.value[1],s=e(i.value[1],i.value[0]);for(;!(i=t.next()).done;){const[o,a]=i.value,u=e(a,o);u{var t;return dp(j_(t=[...this._pairs]).call(t,(i,n)=>{let[s,o]=i,[a,u]=n;return e(o,u,s,a)}))}})}}function mx(r,e){var t=Aw(r);if(oR){var i=oR(r);e&&(i=Yn(i).call(i,function(n){return t3(r,n).enumerable})),t.push.apply(t,i)}return t}function yx(r){for(var e=1;eo[this._idProp]);if(E9(s).call(s,o=>this._data.has(o)))throw new Error("A duplicate id was found in the parameter array.");for(let o=0,a=e.length;o{const c=l[a];if(c!=null&&this._data.has(c)){const d=l,h=c6({},this._data.get(c)),f=this._updateItem(d);n.push(f),o.push(d),s.push(h)}else{const d=this._addItem(l);i.push(d)}};if(Cr(e))for(let l=0,c=e.length;l{const o=this._data.get(s[this._idProp]);if(o==null)throw new Error("Updating non-existent items is not allowed.");return{oldData:o,update:s}})).call(i,s=>{let{oldData:o,update:a}=s;const u=o[this._idProp],l=R8(o,a);return this._data.set(u,l),{id:u,oldData:o,updatedData:l}});if(n.length){const s={items:mr(n).call(n,o=>o.id),oldData:mr(n).call(n,o=>o.oldData),data:mr(n).call(n,o=>o.updatedData)};return this._trigger("update",s,t),s.items}else return[]}get(e,t){let i,n,s;TC(e)?(i=e,s=t):Cr(e)?(n=e,s=t):s=e;const o=s&&s.returnType==="Object"?"Object":"Array",a=s&&Yn(s),u=[];let l,c,d;if(i!=null)l=this._data.get(i),l&&a&&!a(l)&&(l=void 0);else if(n!=null)for(let f=0,v=n.length;f(n[s]=e[s],n),{})}_sort(e,t){if(typeof t=="string"){const i=t;j_(e).call(e,(n,s)=>{const o=n[i],a=s[i];return o>a?1:oi)&&(t=s,i=o)}return t||null}min(e){let t=null,i=null;for(const s of bC(n=this._data).call(n)){var n;const o=s[e];typeof o=="number"&&(i==null||o"u"&&r!==void 0?function(e){return typeof e=="function"||e===r}:function(e){return typeof e=="function"},yp}var bp={},_p,Rx;function it(){if(Rx)return _p;Rx=1;var r=$e();return _p=!r(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7}),_p}var wp,Cx;function Xt(){if(Cx)return wp;Cx=1;var r=ua(),e=Function.prototype.call;return wp=r?e.bind(e):function(){return e.apply(e,arguments)},wp}var Ep={},xx;function Uu(){if(xx)return Ep;xx=1;var r={}.propertyIsEnumerable,e=Object.getOwnPropertyDescriptor,t=e&&!r.call({1:2},1);return Ep.f=t?function(n){var s=e(this,n);return!!s&&s.enumerable}:r,Ep}var Sp,qx;function la(){return qx||(qx=1,Sp=function(r,e){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:e}}),Sp}var Op,Dx;function Vu(){if(Dx)return Op;Dx=1;var r=Ce(),e=$e(),t=Lr(),i=Object,n=r("".split);return Op=e(function(){return!i("z").propertyIsEnumerable(0)})?function(s){return t(s)==="String"?n(s,""):i(s)}:i,Op}var Ip,Ax;function Ds(){return Ax||(Ax=1,Ip=function(r){return r==null}),Ip}var Tp,Mx;function ci(){if(Mx)return Tp;Mx=1;var r=Ds(),e=TypeError;return Tp=function(t){if(r(t))throw new e("Can't call method on "+t);return t},Tp}var $p,Nx;function Tr(){if(Nx)return $p;Nx=1;var r=Vu(),e=ci();return $p=function(t){return r(e(t))},$p}var Pp,Fx;function Ot(){if(Fx)return Pp;Fx=1;var r=St();return Pp=function(e){return typeof e=="object"?e!==null:r(e)},Pp}var Rp,kx;function Be(){return kx||(kx=1,Rp={}),Rp}var Cp,Bx;function rr(){if(Bx)return Cp;Bx=1;var r=Be(),e=Ye(),t=St(),i=function(n){return t(n)?n:void 0};return Cp=function(n,s){return arguments.length<2?i(r[n])||i(e[n]):r[n]&&r[n][s]||e[n]&&e[n][s]},Cp}var xp,jx;function ht(){if(jx)return xp;jx=1;var r=Ce();return xp=r({}.isPrototypeOf),xp}var qp,Lx;function As(){if(Lx)return qp;Lx=1;var r=Ye(),e=r.navigator,t=e&&e.userAgent;return qp=t?String(t):"",qp}var Dp,zx;function ca(){if(zx)return Dp;zx=1;var r=Ye(),e=As(),t=r.process,i=r.Deno,n=t&&t.versions||i&&i.version,s=n&&n.v8,o,a;return s&&(o=s.split("."),a=o[0]>0&&o[0]<4?1:+(o[0]+o[1])),!a&&e&&(o=e.match(/Edge\/(\d+)/),(!o||o[1]>=74)&&(o=e.match(/Chrome\/(\d+)/),o&&(a=+o[1]))),Dp=a,Dp}var Ap,Hx;function Ms(){if(Hx)return Ap;Hx=1;var r=ca(),e=$e(),t=Ye(),i=t.String;return Ap=!!Object.getOwnPropertySymbols&&!e(function(){var n=Symbol("symbol detection");return!i(n)||!(Object(n)instanceof Symbol)||!Symbol.sham&&r&&r<41}),Ap}var Mp,Wx;function c3(){if(Wx)return Mp;Wx=1;var r=Ms();return Mp=r&&!Symbol.sham&&typeof Symbol.iterator=="symbol",Mp}var Np,Ux;function da(){if(Ux)return Np;Ux=1;var r=rr(),e=St(),t=ht(),i=c3(),n=Object;return Np=i?function(s){return typeof s=="symbol"}:function(s){var o=r("Symbol");return e(o)&&t(o.prototype,n(s))},Np}var Fp,Vx;function Ns(){if(Vx)return Fp;Vx=1;var r=String;return Fp=function(e){try{return r(e)}catch{return"Object"}},Fp}var kp,Kx;function di(){if(Kx)return kp;Kx=1;var r=St(),e=Ns(),t=TypeError;return kp=function(i){if(r(i))return i;throw new t(e(i)+" is not a function")},kp}var Bp,Gx;function Kw(){if(Gx)return Bp;Gx=1;var r=di(),e=Ds();return Bp=function(t,i){var n=t[i];return e(n)?void 0:r(n)},Bp}var jp,Yx;function qY(){if(Yx)return jp;Yx=1;var r=Xt(),e=St(),t=Ot(),i=TypeError;return jp=function(n,s){var o,a;if(s==="string"&&e(o=n.toString)&&!t(a=r(o,n))||e(o=n.valueOf)&&!t(a=r(o,n))||s!=="string"&&e(o=n.toString)&&!t(a=r(o,n)))return a;throw new i("Can't convert object to primitive value")},jp}var Lp={exports:{}},zp,Xx;function Fs(){return Xx||(Xx=1,zp=!0),zp}var Hp,Jx;function DY(){if(Jx)return Hp;Jx=1;var r=Ye(),e=Object.defineProperty;return Hp=function(t,i){try{e(r,t,{value:i,configurable:!0,writable:!0})}catch{r[t]=i}return i},Hp}var Qx;function Gw(){if(Qx)return Lp.exports;Qx=1;var r=Fs(),e=Ye(),t=DY(),i="__core-js_shared__",n=Lp.exports=e[i]||t(i,{});return(n.versions||(n.versions=[])).push({version:"3.44.0",mode:r?"pure":"global",copyright:"© 2014-2025 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.44.0/LICENSE",source:"https://github.com/zloirock/core-js"}),Lp.exports}var Wp,Zx;function ks(){if(Zx)return Wp;Zx=1;var r=Gw();return Wp=function(e,t){return r[e]||(r[e]=t||{})},Wp}var Up,eq;function ir(){if(eq)return Up;eq=1;var r=ci(),e=Object;return Up=function(t){return e(r(t))},Up}var Vp,tq;function $t(){if(tq)return Vp;tq=1;var r=Ce(),e=ir(),t=r({}.hasOwnProperty);return Vp=Object.hasOwn||function(n,s){return t(e(n),s)},Vp}var Kp,rq;function Ku(){if(rq)return Kp;rq=1;var r=Ce(),e=0,t=Math.random(),i=r(1.1.toString);return Kp=function(n){return"Symbol("+(n===void 0?"":n)+")_"+i(++e+t,36)},Kp}var Gp,iq;function ft(){if(iq)return Gp;iq=1;var r=Ye(),e=ks(),t=$t(),i=Ku(),n=Ms(),s=c3(),o=r.Symbol,a=e("wks"),u=s?o.for||o:o&&o.withoutSetter||i;return Gp=function(l){return t(a,l)||(a[l]=n&&t(o,l)?o[l]:u("Symbol."+l)),a[l]},Gp}var Yp,nq;function d3(){if(nq)return Yp;nq=1;var r=Xt(),e=Ot(),t=da(),i=Kw(),n=qY(),s=ft(),o=TypeError,a=s("toPrimitive");return Yp=function(u,l){if(!e(u)||t(u))return u;var c=i(u,a),d;if(c){if(l===void 0&&(l="default"),d=r(c,u,l),!e(d)||t(d))return d;throw new o("Can't convert object to primitive value")}return l===void 0&&(l="number"),n(u,l)},Yp}var Xp,sq;function Yw(){if(sq)return Xp;sq=1;var r=d3(),e=da();return Xp=function(t){var i=r(t,"string");return e(i)?i:i+""},Xp}var Jp,oq;function h3(){if(oq)return Jp;oq=1;var r=Ye(),e=Ot(),t=r.document,i=e(t)&&e(t.createElement);return Jp=function(n){return i?t.createElement(n):{}},Jp}var Qp,aq;function f3(){if(aq)return Qp;aq=1;var r=it(),e=$e(),t=h3();return Qp=!r&&!e(function(){return Object.defineProperty(t("div"),"a",{get:function(){return 7}}).a!==7}),Qp}var uq;function Gu(){if(uq)return bp;uq=1;var r=it(),e=Xt(),t=Uu(),i=la(),n=Tr(),s=Yw(),o=$t(),a=f3(),u=Object.getOwnPropertyDescriptor;return bp.f=r?u:function(c,d){if(c=n(c),d=s(d),a)try{return u(c,d)}catch{}if(o(c,d))return i(!e(t.f,c,d),c[d])},bp}var Zp,lq;function AY(){if(lq)return Zp;lq=1;var r=$e(),e=St(),t=/#|\.prototype\./,i=function(u,l){var c=s[n(u)];return c===a?!0:c===o?!1:e(l)?r(l):!!l},n=i.normalize=function(u){return String(u).replace(t,".").toLowerCase()},s=i.data={},o=i.NATIVE="N",a=i.POLYFILL="P";return Zp=i,Zp}var eg,cq;function Yu(){if(cq)return eg;cq=1;var r=Vw(),e=di(),t=ua(),i=r(r.bind);return eg=function(n,s){return e(n),s===void 0?n:t?i(n,s):function(){return n.apply(s,arguments)}},eg}var tg={},rg,dq;function v3(){if(dq)return rg;dq=1;var r=it(),e=$e();return rg=r&&e(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42}),rg}var ig,hq;function zr(){if(hq)return ig;hq=1;var r=Ot(),e=String,t=TypeError;return ig=function(i){if(r(i))return i;throw new t(e(i)+" is not an object")},ig}var fq;function fr(){if(fq)return tg;fq=1;var r=it(),e=f3(),t=v3(),i=zr(),n=Yw(),s=TypeError,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,u="enumerable",l="configurable",c="writable";return tg.f=r?t?function(h,f,v){if(i(h),f=n(f),i(v),typeof h=="function"&&f==="prototype"&&"value"in v&&c in v&&!v[c]){var p=a(h,f);p&&p[c]&&(h[f]=v.value,v={configurable:l in v?v[l]:p[l],enumerable:u in v?v[u]:p[u],writable:!1})}return o(h,f,v)}:o:function(h,f,v){if(i(h),f=n(f),i(v),e)try{return o(h,f,v)}catch{}if("get"in v||"set"in v)throw new s("Accessors not supported");return"value"in v&&(h[f]=v.value),h},tg}var ng,vq;function Bs(){if(vq)return ng;vq=1;var r=it(),e=fr(),t=la();return ng=r?function(i,n,s){return e.f(i,n,t(1,s))}:function(i,n,s){return i[n]=s,i},ng}var sg,pq;function ce(){if(pq)return sg;pq=1;var r=Ye(),e=Wu(),t=Vw(),i=St(),n=Gu().f,s=AY(),o=Be(),a=Yu(),u=Bs(),l=$t(),c=function(d){var h=function(f,v,p){if(this instanceof h){switch(arguments.length){case 0:return new d;case 1:return new d(f);case 2:return new d(f,v)}return new d(f,v,p)}return e(d,this,arguments)};return h.prototype=d.prototype,h};return sg=function(d,h){var f=d.target,v=d.global,p=d.stat,b=d.proto,m=v?r:p?r[f]:r[f]&&r[f].prototype,g=v?o:o[f]||u(o,f,{})[f],w=g.prototype,y,S,O,I,_,E,T,R,x;for(I in h)y=s(v?I:f+(p?".":"#")+I,d.forced),S=!y&&m&&l(m,I),E=g[I],S&&(d.dontCallGetSet?(x=n(m,I),T=x&&x.value):T=m[I]),_=S&&T?T:h[I],!(!y&&!b&&typeof E==typeof _)&&(d.bind&&S?R=a(_,r):d.wrap&&S?R=c(_):b&&i(_)?R=t(_):R=_,(d.sham||_&&_.sham||E&&E.sham)&&u(R,"sham",!0),u(g,I,R),b&&(O=f+"Prototype",l(o,O)||u(o,O,{}),u(o[O],I,_),d.real&&w&&(y||!w[I])&&u(w,I,_)))},sg}var og,gq;function MY(){if(gq)return og;gq=1;var r=Math.ceil,e=Math.floor;return og=Math.trunc||function(i){var n=+i;return(n>0?e:r)(n)},og}var ag,mq;function js(){if(mq)return ag;mq=1;var r=MY();return ag=function(e){var t=+e;return t!==t||t===0?0:r(t)},ag}var ug,yq;function Xu(){if(yq)return ug;yq=1;var r=js(),e=Math.max,t=Math.min;return ug=function(i,n){var s=r(i);return s<0?e(s+n,0):t(s,n)},ug}var lg,bq;function p3(){if(bq)return lg;bq=1;var r=js(),e=Math.min;return lg=function(t){var i=r(t);return i>0?e(i,9007199254740991):0},lg}var cg,_q;function hi(){if(_q)return cg;_q=1;var r=p3();return cg=function(e){return r(e.length)},cg}var dg,wq;function Xw(){if(wq)return dg;wq=1;var r=Tr(),e=Xu(),t=hi(),i=function(n){return function(s,o,a){var u=r(s),l=t(u);if(l===0)return!n&&-1;var c=e(a,l),d;if(n&&o!==o){for(;l>c;)if(d=u[c++],d!==d)return!0}else for(;l>c;c++)if((n||c in u)&&u[c]===o)return n||c||0;return!n&&-1}};return dg={includes:i(!0),indexOf:i(!1)},dg}var hg,Eq;function ha(){return Eq||(Eq=1,hg={}),hg}var fg,Sq;function g3(){if(Sq)return fg;Sq=1;var r=Ce(),e=$t(),t=Tr(),i=Xw().indexOf,n=ha(),s=r([].push);return fg=function(o,a){var u=t(o),l=0,c=[],d;for(d in u)!e(n,d)&&e(u,d)&&s(c,d);for(;a.length>l;)e(u,d=a[l++])&&(~i(c,d)||s(c,d));return c},fg}var vg,Oq;function Jw(){return Oq||(Oq=1,vg=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]),vg}var pg,Iq;function fa(){if(Iq)return pg;Iq=1;var r=g3(),e=Jw();return pg=Object.keys||function(i){return r(i,e)},pg}var gg={},Tq;function Ju(){return Tq||(Tq=1,gg.f=Object.getOwnPropertySymbols),gg}var mg,$q;function NY(){if($q)return mg;$q=1;var r=it(),e=Ce(),t=Xt(),i=$e(),n=fa(),s=Ju(),o=Uu(),a=ir(),u=Vu(),l=Object.assign,c=Object.defineProperty,d=e([].concat);return mg=!l||i(function(){if(r&&l({b:1},l(c({},"a",{enumerable:!0,get:function(){c(this,"b",{value:3,enumerable:!1})}}),{b:2})).b!==1)return!0;var h={},f={},v=Symbol("assign detection"),p="abcdefghijklmnopqrst";return h[v]=7,p.split("").forEach(function(b){f[b]=b}),l({},h)[v]!==7||n(l({},f)).join("")!==p})?function(f,v){for(var p=a(f),b=arguments.length,m=1,g=s.f,w=o.f;b>m;)for(var y=u(arguments[m++]),S=g?d(n(y),g(y)):n(y),O=S.length,I=0,_;O>I;)_=S[I++],(!r||t(w,y,_))&&(p[_]=y[_]);return p}:l,mg}var Pq;function FY(){if(Pq)return _x;Pq=1;var r=ce(),e=NY();return r({target:"Object",stat:!0,arity:2,forced:Object.assign!==e},{assign:e}),_x}var yg,Rq;function kY(){if(Rq)return yg;Rq=1,FY();var r=Be();return yg=r.Object.assign,yg}var bg,Cq;function BY(){if(Cq)return bg;Cq=1;var r=kY();return bg=r,bg}var _g,xq;function jY(){return xq||(xq=1,_g=BY()),_g}var LY=jY(),at=pe(LY),qq={},wg,Dq;function Ls(){if(Dq)return wg;Dq=1;var r=Ce();return wg=r([].slice),wg}var Eg,Aq;function zY(){if(Aq)return Eg;Aq=1;var r=Ce(),e=di(),t=Ot(),i=$t(),n=Ls(),s=ua(),o=Function,a=r([].concat),u=r([].join),l={},c=function(d,h,f){if(!i(l,h)){for(var v=[],p=0;p=.1;)v=+s[d++%o],v>c&&(v=c),f=Math.sqrt(v*v/(1+l*l)),f=a<0?-f:f,e+=f,t+=l*f,h===!0?r.lineTo(e,t):r.moveTo(e,t),c-=v,h=!h}function e7(r,e,t,i){r.beginPath();const n=6,s=Math.PI*2/n;r.moveTo(e+i,t);for(let o=1;o1?t-1:0),n=1;ne)throw r("Maximum allowed index exceeded");return t},Cg}var xg,Vq;function Qu(){if(Vq)return xg;Vq=1;var r=it(),e=fr(),t=la();return xg=function(i,n,s){r?e.f(i,n,t(0,s)):i[n]=s},xg}var qg,Kq;function Zw(){if(Kq)return qg;Kq=1;var r=ft(),e=r("toStringTag"),t={};return t[e]="z",qg=String(t)==="[object z]",qg}var Dg,Gq;function zs(){if(Gq)return Dg;Gq=1;var r=Zw(),e=St(),t=Lr(),i=ft(),n=i("toStringTag"),s=Object,o=t(function(){return arguments}())==="Arguments",a=function(u,l){try{return u[l]}catch{}};return Dg=r?t:function(u){var l,c,d;return u===void 0?"Undefined":u===null?"Null":typeof(c=a(l=s(u),n))=="string"?c:o?t(l):(d=t(l))==="Object"&&e(l.callee)?"Arguments":d},Dg}var Ag,Yq;function n7(){if(Yq)return Ag;Yq=1;var r=Ce(),e=St(),t=Gw(),i=r(Function.toString);return e(t.inspectSource)||(t.inspectSource=function(n){return i(n)}),Ag=t.inspectSource,Ag}var Mg,Xq;function E3(){if(Xq)return Mg;Xq=1;var r=Ce(),e=$e(),t=St(),i=zs(),n=rr(),s=n7(),o=function(){},a=n("Reflect","construct"),u=/^\s*(?:class|function)\b/,l=r(u.exec),c=!u.test(o),d=function(v){if(!t(v))return!1;try{return a(o,[],v),!0}catch{return!1}},h=function(v){if(!t(v))return!1;switch(i(v)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return c||!!l(u,s(v))}catch{return!0}};return h.sham=!0,Mg=!a||e(function(){var f;return d(d.call)||!d(Object)||!d(function(){f=!0})||f})?h:d,Mg}var Ng,Jq;function s7(){if(Jq)return Ng;Jq=1;var r=xn(),e=E3(),t=Ot(),i=ft(),n=i("species"),s=Array;return Ng=function(o){var a;return r(o)&&(a=o.constructor,e(a)&&(a===s||r(a.prototype))?a=void 0:t(a)&&(a=a[n],a===null&&(a=void 0))),a===void 0?s:a},Ng}var Fg,Qq;function e0(){if(Qq)return Fg;Qq=1;var r=s7();return Fg=function(e,t){return new(r(e))(t===0?0:t)},Fg}var kg,Zq;function va(){if(Zq)return kg;Zq=1;var r=$e(),e=ft(),t=ca(),i=e("species");return kg=function(n){return t>=51||!r(function(){var s=[],o=s.constructor={};return o[i]=function(){return{foo:1}},s[n](Boolean).foo!==1})},kg}var eD;function S3(){if(eD)return Hq;eD=1;var r=ce(),e=$e(),t=xn(),i=Ot(),n=ir(),s=hi(),o=w3(),a=Qu(),u=e0(),l=va(),c=ft(),d=ca(),h=c("isConcatSpreadable"),f=d>=51||!e(function(){var b=[];return b[h]=!1,b.concat()[0]!==b}),v=function(b){if(!i(b))return!1;var m=b[h];return m!==void 0?!!m:t(b)},p=!f||!l("concat");return r({target:"Array",proto:!0,arity:1,forced:p},{concat:function(m){var g=n(this),w=u(g,0),y=0,S,O,I,_,E;for(S=-1,I=arguments.length;Sh;)t.f(a,f=c[h++],l[f]);return a},jg}var Lg,sD;function o7(){if(sD)return Lg;sD=1;var r=rr();return Lg=r("document","documentElement"),Lg}var zg,oD;function Zu(){if(oD)return zg;oD=1;var r=ks(),e=Ku(),t=r("keys");return zg=function(i){return t[i]||(t[i]=e(i))},zg}var Hg,aD;function pa(){if(aD)return Hg;aD=1;var r=zr(),e=t0(),t=Jw(),i=ha(),n=o7(),s=h3(),o=Zu(),a=">",u="<",l="prototype",c="script",d=o("IE_PROTO"),h=function(){},f=function(g){return u+c+a+g+u+"/"+c+a},v=function(g){g.write(f("")),g.close();var w=g.parentWindow.Object;return g=null,w},p=function(){var g=s("iframe"),w="java"+c+":",y;return g.style.display="none",n.appendChild(g),g.src=String(w),y=g.contentWindow.document,y.open(),y.write(f("document.F=Object")),y.close(),y.F},b,m=function(){try{b=new ActiveXObject("htmlfile")}catch{}m=typeof document<"u"?document.domain&&b?v(b):p():v(b);for(var g=t.length;g--;)delete m[l][t[g]];return m()};return i[d]=!0,Hg=Object.create||function(w,y){var S;return w!==null?(h[l]=r(w),S=new h,h[l]=null,S[d]=w):S=m(),y===void 0?S:e.f(S,y)},Hg}var Wg={},uD;function el(){if(uD)return Wg;uD=1;var r=g3(),e=Jw(),t=e.concat("length","prototype");return Wg.f=Object.getOwnPropertyNames||function(n){return r(n,t)},Wg}var Ug={},lD;function r0(){if(lD)return Ug;lD=1;var r=Lr(),e=Tr(),t=el().f,i=Ls(),n=typeof window=="object"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(o){try{return t(o)}catch{return i(n)}};return Ug.f=function(a){return n&&r(a)==="Window"?s(a):t(e(a))},Ug}var Vg,cD;function ga(){if(cD)return Vg;cD=1;var r=Bs();return Vg=function(e,t,i,n){return n&&n.enumerable?e[t]=i:r(e,t,i),e},Vg}var Kg,dD;function i0(){if(dD)return Kg;dD=1;var r=fr();return Kg=function(e,t,i){return r.f(e,t,i)},Kg}var Gg={},hD;function tl(){if(hD)return Gg;hD=1;var r=ft();return Gg.f=r,Gg}var Yg,fD;function Je(){if(fD)return Yg;fD=1;var r=Be(),e=$t(),t=tl(),i=fr().f;return Yg=function(n){var s=r.Symbol||(r.Symbol={});e(s,n)||i(s,n,{value:t.f(n)})},Yg}var Xg,vD;function O3(){if(vD)return Xg;vD=1;var r=Xt(),e=rr(),t=ft(),i=ga();return Xg=function(){var n=e("Symbol"),s=n&&n.prototype,o=s&&s.valueOf,a=t("toPrimitive");s&&!s[a]&&i(s,a,function(u){return r(o,this)},{arity:1})},Xg}var Jg,pD;function a7(){if(pD)return Jg;pD=1;var r=Zw(),e=zs();return Jg=r?{}.toString:function(){return"[object "+e(this)+"]"},Jg}var Qg,gD;function qn(){if(gD)return Qg;gD=1;var r=Zw(),e=fr().f,t=Bs(),i=$t(),n=a7(),s=ft(),o=s("toStringTag");return Qg=function(a,u,l,c){var d=l?a:a&&a.prototype;d&&(i(d,o)||e(d,o,{configurable:!0,value:u}),c&&!r&&t(d,"toString",n))},Qg}var Zg,mD;function I3(){if(mD)return Zg;mD=1;var r=Ye(),e=St(),t=r.WeakMap;return Zg=e(t)&&/native code/.test(String(t)),Zg}var em,yD;function Dn(){if(yD)return em;yD=1;var r=I3(),e=Ye(),t=Ot(),i=Bs(),n=$t(),s=Gw(),o=Zu(),a=ha(),u="Object already initialized",l=e.TypeError,c=e.WeakMap,d,h,f,v=function(g){return f(g)?h(g):d(g,{})},p=function(g){return function(w){var y;if(!t(w)||(y=h(w)).type!==g)throw new l("Incompatible receiver, "+g+" required");return y}};if(r||s.state){var b=s.state||(s.state=new c);b.get=b.get,b.has=b.has,b.set=b.set,d=function(g,w){if(b.has(g))throw new l(u);return w.facade=g,b.set(g,w),w},h=function(g){return b.get(g)||{}},f=function(g){return b.has(g)}}else{var m=o("state");a[m]=!0,d=function(g,w){if(n(g,m))throw new l(u);return w.facade=g,i(g,m,w),w},h=function(g){return n(g,m)?g[m]:{}},f=function(g){return n(g,m)}}return em={set:d,get:h,has:f,enforce:v,getterFor:p},em}var tm,bD;function Wi(){if(bD)return tm;bD=1;var r=Yu(),e=Ce(),t=Vu(),i=ir(),n=hi(),s=e0(),o=e([].push),a=function(u){var l=u===1,c=u===2,d=u===3,h=u===4,f=u===6,v=u===7,p=u===5||f;return function(b,m,g,w){for(var y=i(b),S=t(y),O=n(S),I=r(m,g),_=0,E=w||s,T=l?E(b,O):c||v?E(b,0):void 0,R,x;O>_;_++)if((p||_ in S)&&(R=S[_],x=I(R,_,y),u))if(l)T[_]=x;else if(x)switch(u){case 3:return!0;case 5:return R;case 6:return _;case 2:o(T,R)}else switch(u){case 4:return!1;case 7:o(T,R)}return f?-1:d||h?h:T}};return tm={forEach:a(0),map:a(1),filter:a(2),some:a(3),every:a(4),find:a(5),findIndex:a(6),filterReject:a(7)},tm}var _D;function u7(){if(_D)return rD;_D=1;var r=ce(),e=Ye(),t=Xt(),i=Ce(),n=Fs(),s=it(),o=Ms(),a=$e(),u=$t(),l=ht(),c=zr(),d=Tr(),h=Yw(),f=vr(),v=la(),p=pa(),b=fa(),m=el(),g=r0(),w=Ju(),y=Gu(),S=fr(),O=t0(),I=Uu(),_=ga(),E=i0(),T=ks(),R=Zu(),x=ha(),C=Ku(),D=ft(),j=tl(),ee=Je(),H=O3(),Z=qn(),fe=Dn(),we=Wi().forEach,te=R("hidden"),me="Symbol",xe="prototype",De=fe.set,nt=fe.getterFor(me),_e=Object[xe],A=e.Symbol,W=A&&A[xe],Y=e.RangeError,ie=e.TypeError,Pe=e.QObject,$=y.f,P=S.f,q=g.f,F=I.f,k=i([].push),N=T("symbols"),K=T("op-symbols"),X=T("wks"),U=!Pe||!Pe[xe]||!Pe[xe].findChild,B=function(oe,V,Q){var re=$(_e,V);re&&delete _e[V],P(oe,V,Q),re&&oe!==_e&&P(_e,V,re)},le=s&&a(function(){return p(P({},"a",{get:function(){return P(this,"a",{value:7}).a}})).a!==7})?B:P,J=function(oe,V){var Q=N[oe]=p(W);return De(Q,{type:me,tag:oe,description:V}),s||(Q.description=V),Q},se=function(V,Q,re){V===_e&&se(K,Q,re),c(V);var ne=h(Q);return c(re),u(N,ne)?(re.enumerable?(u(V,te)&&V[te][ne]&&(V[te][ne]=!1),re=p(re,{enumerable:v(0,!1)})):(u(V,te)||P(V,te,v(1,p(null))),V[te][ne]=!0),le(V,ne,re)):P(V,ne,re)},de=function(V,Q){c(V);var re=d(Q),ne=b(re).concat(st(re));return we(ne,function(Ee){(!s||t(qe,re,Ee))&&se(V,Ee,re[Ee])}),V},Oe=function(V,Q){return Q===void 0?p(V):de(p(V),Q)},qe=function(V){var Q=h(V),re=t(F,this,Q);return this===_e&&u(N,Q)&&!u(K,Q)?!1:re||!u(this,Q)||!u(N,Q)||u(this,te)&&this[te][Q]?re:!0},Re=function(V,Q){var re=d(V),ne=h(Q);if(!(re===_e&&u(N,ne)&&!u(K,ne))){var Ee=$(re,ne);return Ee&&u(N,ne)&&!(u(re,te)&&re[te][ne])&&(Ee.enumerable=!0),Ee}},vt=function(V){var Q=q(d(V)),re=[];return we(Q,function(ne){!u(N,ne)&&!u(x,ne)&&k(re,ne)}),re},st=function(oe){var V=oe===_e,Q=q(V?K:d(oe)),re=[];return we(Q,function(ne){u(N,ne)&&(!V||u(_e,ne))&&k(re,N[ne])}),re};return o||(A=function(){if(l(W,this))throw new ie("Symbol is not a constructor");var V=!arguments.length||arguments[0]===void 0?void 0:f(arguments[0]),Q=C(V),re=function(ne){var Ee=this===void 0?e:this;Ee===_e&&t(re,K,ne),u(Ee,te)&&u(Ee[te],Q)&&(Ee[te][Q]=!1);var fi=v(1,ne);try{le(Ee,Q,fi)}catch(Ys){if(!(Ys instanceof Y))throw Ys;B(Ee,Q,fi)}};return s&&U&&le(_e,Q,{configurable:!0,set:re}),J(Q,V)},W=A[xe],_(W,"toString",function(){return nt(this).tag}),_(A,"withoutSetter",function(oe){return J(C(oe),oe)}),I.f=qe,S.f=se,O.f=de,y.f=Re,m.f=g.f=vt,w.f=st,j.f=function(oe){return J(D(oe),oe)},s&&(E(W,"description",{configurable:!0,get:function(){return nt(this).description}}),n||_(_e,"propertyIsEnumerable",qe,{unsafe:!0}))),r({global:!0,constructor:!0,wrap:!0,forced:!o,sham:!o},{Symbol:A}),we(b(X),function(oe){ee(oe)}),r({target:me,stat:!0,forced:!o},{useSetter:function(){U=!0},useSimple:function(){U=!1}}),r({target:"Object",stat:!0,forced:!o,sham:!s},{create:Oe,defineProperty:se,defineProperties:de,getOwnPropertyDescriptor:Re}),r({target:"Object",stat:!0,forced:!o},{getOwnPropertyNames:vt}),H(),Z(A,me),x[te]=!0,rD}var wD={},rm,ED;function T3(){if(ED)return rm;ED=1;var r=Ms();return rm=r&&!!Symbol.for&&!!Symbol.keyFor,rm}var SD;function l7(){if(SD)return wD;SD=1;var r=ce(),e=rr(),t=$t(),i=vr(),n=ks(),s=T3(),o=n("string-to-symbol-registry"),a=n("symbol-to-string-registry");return r({target:"Symbol",stat:!0,forced:!s},{for:function(u){var l=i(u);if(t(o,l))return o[l];var c=e("Symbol")(l);return o[l]=c,a[c]=l,c}}),wD}var OD={},ID;function c7(){if(ID)return OD;ID=1;var r=ce(),e=$t(),t=da(),i=Ns(),n=ks(),s=T3(),o=n("symbol-to-string-registry");return r({target:"Symbol",stat:!0,forced:!s},{keyFor:function(u){if(!t(u))throw new TypeError(i(u)+" is not a symbol");if(e(o,u))return o[u]}}),OD}var TD={},im,$D;function d7(){if($D)return im;$D=1;var r=Ce(),e=xn(),t=St(),i=Lr(),n=vr(),s=r([].push);return im=function(o){if(t(o))return o;if(e(o)){for(var a=o.length,u=[],l=0;l=v.length)return f.target=null,o(void 0,!0);switch(f.kind){case"keys":return o(p,!1);case"values":return o(v[p],!1)}return o([p,v[p]],!1)},"values");var h=t.Arguments=t.Array;if(e("keys"),e("values"),e("entries"),!a&&u&&h.name!=="values")try{n(h,"name",{value:"values"})}catch{}return ym}var bm,TA;function q7(){return TA||(TA=1,bm={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}),bm}var $A;function Us(){if($A)return dA;$A=1,Ws();var r=q7(),e=Ye(),t=qn(),i=Hs();for(var n in r)t(e[n],n),i[n]=i.Array;return dA}var _m,PA;function M3(){if(PA)return _m;PA=1;var r=I7();return Us(),_m=r,_m}var wm,RA;function D7(){return RA||(RA=1,wm=M3()),wm}var A7=D7(),M7=pe(A7),CA={},xA;function N7(){if(xA)return CA;xA=1;var r=ce(),e=xn(),t=E3(),i=Ot(),n=Xu(),s=hi(),o=Tr(),a=Qu(),u=ft(),l=va(),c=Ls(),d=l("slice"),h=u("species"),f=Array,v=Math.max;return r({target:"Array",proto:!0,forced:!d},{slice:function(b,m){var g=o(this),w=s(g),y=n(b,w),S=n(m===void 0?w:m,w),O,I,_;if(e(g)&&(O=g.constructor,t(O)&&(O===f||e(O.prototype))?O=void 0:i(O)&&(O=O[h],O===null&&(O=void 0)),O===f||O===void 0))return c(g,y,S);for(I=new(O===void 0?f:O)(v(S-y,0)),_=0;y1?arguments[1]:void 0)}}),zA}var Cm,WA;function Y7(){if(WA)return Cm;WA=1,G7();var r=Pt();return Cm=r("Array","map"),Cm}var xm,UA;function X7(){if(UA)return xm;UA=1;var r=ht(),e=Y7(),t=Array.prototype;return xm=function(i){var n=i.map;return i===t||r(t,i)&&n===t.map?e:n},xm}var qm,VA;function J7(){if(VA)return qm;VA=1;var r=X7();return qm=r,qm}var Dm,KA;function Q7(){return KA||(KA=1,Dm=J7()),Dm}var Z7=Q7(),ms=pe(Z7),GA={},YA;function eX(){if(YA)return GA;YA=1;var r=ce(),e=ir(),t=fa(),i=$e(),n=i(function(){t(1)});return r({target:"Object",stat:!0,forced:n},{keys:function(o){return t(e(o))}}),GA}var Am,XA;function tX(){if(XA)return Am;XA=1,eX();var r=Be();return Am=r.Object.keys,Am}var Mm,JA;function rX(){if(JA)return Mm;JA=1;var r=tX();return Mm=r,Mm}var Nm,QA;function iX(){return QA||(QA=1,Nm=rX()),Nm}var nX=iX(),Ze=pe(nX),ZA={},eM;function sX(){if(eM)return ZA;eM=1;var r=ce(),e=Ce(),t=Date,i=e(t.prototype.getTime);return r({target:"Date",stat:!0},{now:function(){return i(new t)}}),ZA}var Fm,tM;function oX(){if(tM)return Fm;tM=1,sX();var r=Be();return Fm=r.Date.now,Fm}var km,rM;function aX(){if(rM)return km;rM=1;var r=oX();return km=r,km}var Bm,iM;function uX(){return iM||(iM=1,Bm=aX()),Bm}var lX=uX(),ou=pe(lX),nM={},jm,sM;function Vs(){if(sM)return jm;sM=1;var r=$e();return jm=function(e,t){var i=[][e];return!!i&&r(function(){i.call(null,t||function(){return 1},1)})},jm}var Lm,oM;function cX(){if(oM)return Lm;oM=1;var r=Wi().forEach,e=Vs(),t=e("forEach");return Lm=t?[].forEach:function(n){return r(this,n,arguments.length>1?arguments[1]:void 0)},Lm}var aM;function dX(){if(aM)return nM;aM=1;var r=ce(),e=cX();return r({target:"Array",proto:!0,forced:[].forEach!==e},{forEach:e}),nM}var zm,uM;function hX(){if(uM)return zm;uM=1,dX();var r=Pt();return zm=r("Array","forEach"),zm}var Hm,lM;function fX(){if(lM)return Hm;lM=1;var r=hX();return Hm=r,Hm}var Wm,cM;function vX(){if(cM)return Wm;cM=1;var r=zs(),e=$t(),t=ht(),i=fX(),n=Array.prototype,s={DOMTokenList:!0,NodeList:!0};return Wm=function(o){var a=o.forEach;return o===n||t(n,o)&&a===n.forEach||e(s,r(o))?i:a},Wm}var Um,dM;function pX(){return dM||(dM=1,Um=vX()),Um}var gX=pX(),Le=pe(gX),hM={},fM;function mX(){if(fM)return hM;fM=1;var r=ce(),e=Ce(),t=xn(),i=e([].reverse),n=[1,2];return r({target:"Array",proto:!0,forced:String(n)===String(n.reverse())},{reverse:function(){return t(this)&&(this.length=this.length),i(this)}}),hM}var Vm,vM;function yX(){if(vM)return Vm;vM=1,mX();var r=Pt();return Vm=r("Array","reverse"),Vm}var Km,pM;function bX(){if(pM)return Km;pM=1;var r=ht(),e=yX(),t=Array.prototype;return Km=function(i){var n=i.reverse;return i===t||r(t,i)&&n===t.reverse?e:n},Km}var Gm,gM;function _X(){if(gM)return Gm;gM=1;var r=bX();return Gm=r,Gm}var Ym,mM;function wX(){return mM||(mM=1,Ym=_X()),Ym}var EX=wX(),on=pe(EX),yM={},Xm,bM;function SX(){if(bM)return Xm;bM=1;var r=it(),e=xn(),t=TypeError,i=Object.getOwnPropertyDescriptor,n=r&&!function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(s){return s instanceof TypeError}}();return Xm=n?function(s,o){if(e(s)&&!i(s,"length").writable)throw new t("Cannot set read only .length");return s.length=o}:function(s,o){return s.length=o},Xm}var Jm,_M;function N3(){if(_M)return Jm;_M=1;var r=Ns(),e=TypeError;return Jm=function(t,i){if(!delete t[i])throw new e("Cannot delete property "+r(i)+" of "+r(t))},Jm}var wM;function OX(){if(wM)return yM;wM=1;var r=ce(),e=ir(),t=Xu(),i=js(),n=hi(),s=SX(),o=w3(),a=e0(),u=Qu(),l=N3(),c=va(),d=c("splice"),h=Math.max,f=Math.min;return r({target:"Array",proto:!0,forced:!d},{splice:function(p,b){var m=e(this),g=n(m),w=t(p,g),y=arguments.length,S,O,I,_,E,T;for(y===0?S=O=0:y===1?(S=0,O=g-w):(S=y-2,O=f(h(i(b),0),g-w)),o(g+S-O),I=a(m,O),_=0;_g-O+S;_--)l(m,_-1)}else if(S>O)for(_=g-O;_>w;_--)E=_+O-1,T=_+S-1,E in m?m[T]=m[E]:l(m,T);for(_=0;_1?arguments[1]:void 0)}}),i("includes"),TM}var ry,PM;function xX(){if(PM)return ry;PM=1,CX();var r=Pt();return ry=r("Array","includes"),ry}var RM={},iy,CM;function qX(){if(CM)return iy;CM=1;var r=Ot(),e=Lr(),t=ft(),i=t("match");return iy=function(n){var s;return r(n)&&((s=n[i])!==void 0?!!s:e(n)==="RegExp")},iy}var ny,xM;function DX(){if(xM)return ny;xM=1;var r=qX(),e=TypeError;return ny=function(t){if(r(t))throw new e("The method doesn't accept regular expressions");return t},ny}var sy,qM;function AX(){if(qM)return sy;qM=1;var r=ft(),e=r("match");return sy=function(t){var i=/./;try{"/./"[t](i)}catch{try{return i[e]=!1,"/./"[t](i)}catch{}}return!1},sy}var DM;function MX(){if(DM)return RM;DM=1;var r=ce(),e=Ce(),t=DX(),i=ci(),n=vr(),s=AX(),o=e("".indexOf);return r({target:"String",proto:!0,forced:!s("includes")},{includes:function(u){return!!~o(n(i(this)),n(t(u)),arguments.length>1?arguments[1]:void 0)}}),RM}var oy,AM;function NX(){if(AM)return oy;AM=1,MX();var r=Pt();return oy=r("String","includes"),oy}var ay,MM;function FX(){if(MM)return ay;MM=1;var r=ht(),e=xX(),t=NX(),i=Array.prototype,n=String.prototype;return ay=function(s){var o=s.includes;return s===i||r(i,s)&&o===i.includes?e:typeof s=="string"||s===n||r(n,s)&&o===n.includes?t:o},ay}var uy,NM;function kX(){if(NM)return uy;NM=1;var r=FX();return uy=r,uy}var ly,FM;function BX(){return FM||(FM=1,ly=kX()),ly}var jX=BX(),Ti=pe(jX),kM={},BM;function LX(){if(BM)return kM;BM=1;var r=ce(),e=$e(),t=ir(),i=rl(),n=D3(),s=e(function(){i(1)});return r({target:"Object",stat:!0,forced:s,sham:!n},{getPrototypeOf:function(a){return i(t(a))}}),kM}var cy,jM;function zX(){if(jM)return cy;jM=1,LX();var r=Be();return cy=r.Object.getPrototypeOf,cy}var dy,LM;function HX(){if(LM)return dy;LM=1;var r=zX();return dy=r,dy}var hy,zM;function WX(){return zM||(zM=1,hy=HX()),hy}var UX=WX(),HM=pe(UX),fy,WM;function VX(){if(WM)return fy;WM=1,S3();var r=Pt();return fy=r("Array","concat"),fy}var vy,UM;function KX(){if(UM)return vy;UM=1;var r=ht(),e=VX(),t=Array.prototype;return vy=function(i){var n=i.concat;return i===t||r(t,i)&&n===t.concat?e:n},vy}var py,VM;function GX(){if(VM)return py;VM=1;var r=KX();return py=r,py}var gy,KM;function YX(){return KM||(KM=1,gy=GX()),gy}var XX=YX(),JX=pe(XX),GM={},YM;function QX(){if(YM)return GM;YM=1;var r=ce(),e=Wi().filter,t=va(),i=t("filter");return r({target:"Array",proto:!0,forced:!i},{filter:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),GM}var my,XM;function ZX(){if(XM)return my;XM=1,QX();var r=Pt();return my=r("Array","filter"),my}var yy,JM;function eJ(){if(JM)return yy;JM=1;var r=ht(),e=ZX(),t=Array.prototype;return yy=function(i){var n=i.filter;return i===t||r(t,i)&&n===t.filter?e:n},yy}var by,QM;function tJ(){if(QM)return by;QM=1;var r=eJ();return by=r,by}var _y,ZM;function rJ(){return ZM||(ZM=1,_y=tJ()),_y}var iJ=rJ(),Ut=pe(iJ),eN={},wy,tN;function nJ(){if(tN)return wy;tN=1;var r=it(),e=$e(),t=Ce(),i=rl(),n=fa(),s=Tr(),o=Uu().f,a=t(o),u=t([].push),l=r&&e(function(){var d=Object.create(null);return d[2]=2,!a(d,2)}),c=function(d){return function(h){for(var f=s(h),v=n(f),p=l&&i(f)===null,b=v.length,m=0,g=[],w;b>m;)w=v[m++],(!r||(p?w in f:a(f,w)))&&u(g,d?[w,f[w]]:f[w]);return g}};return wy={entries:c(!0),values:c(!1)},wy}var rN;function sJ(){if(rN)return eN;rN=1;var r=ce(),e=nJ().values;return r({target:"Object",stat:!0},{values:function(i){return e(i)}}),eN}var Ey,iN;function oJ(){if(iN)return Ey;iN=1,sJ();var r=Be();return Ey=r.Object.values,Ey}var Sy,nN;function aJ(){if(nN)return Sy;nN=1;var r=oJ();return Sy=r,Sy}var Oy,sN;function uJ(){return sN||(sN=1,Oy=aJ()),Oy}var lJ=uJ(),cJ=pe(lJ),oN={},Iy,aN;function a0(){return aN||(aN=1,Iy=` -\v\f\r                 \u2028\u2029\uFEFF`),Iy}var Ty,uN;function F3(){if(uN)return Ty;uN=1;var r=Ce(),e=ci(),t=vr(),i=a0(),n=r("".replace),s=RegExp("^["+i+"]+"),o=RegExp("(^|[^"+i+"])["+i+"]+$"),a=function(u){return function(l){var c=t(e(l));return u&1&&(c=n(c,s,"")),u&2&&(c=n(c,o,"$1")),c}};return Ty={start:a(1),end:a(2),trim:a(3)},Ty}var $y,lN;function dJ(){if(lN)return $y;lN=1;var r=Ye(),e=$e(),t=Ce(),i=vr(),n=F3().trim,s=a0(),o=r.parseInt,a=r.Symbol,u=a&&a.iterator,l=/^[+-]?0x/i,c=t(l.exec),d=o(s+"08")!==8||o(s+"0x16")!==22||u&&!e(function(){o(Object(u))});return $y=d?function(f,v){var p=n(i(f));return o(p,v>>>0||(c(l,p)?16:10))}:o,$y}var cN;function hJ(){if(cN)return oN;cN=1;var r=ce(),e=dJ();return r({global:!0,forced:parseInt!==e},{parseInt:e}),oN}var Py,dN;function fJ(){if(dN)return Py;dN=1,hJ();var r=Be();return Py=r.parseInt,Py}var Ry,hN;function vJ(){if(hN)return Ry;hN=1;var r=fJ();return Ry=r,Ry}var Cy,fN;function pJ(){return fN||(fN=1,Cy=vJ()),Cy}var gJ=pJ(),yr=pe(gJ),vN={},pN;function mJ(){if(pN)return vN;pN=1;var r=ce(),e=Vw(),t=Xw().indexOf,i=Vs(),n=e([].indexOf),s=!!n&&1/n([1],1,-0)<0,o=s||!i("indexOf");return r({target:"Array",proto:!0,forced:o},{indexOf:function(u){var l=arguments.length>1?arguments[1]:void 0;return s?n(this,u,l)||0:t(this,u,l)}}),vN}var xy,gN;function yJ(){if(gN)return xy;gN=1,mJ();var r=Pt();return xy=r("Array","indexOf"),xy}var qy,mN;function bJ(){if(mN)return qy;mN=1;var r=ht(),e=yJ(),t=Array.prototype;return qy=function(i){var n=i.indexOf;return i===t||r(t,i)&&n===t.indexOf?e:n},qy}var Dy,yN;function _J(){if(yN)return Dy;yN=1;var r=bJ();return Dy=r,Dy}var Ay,bN;function wJ(){return bN||(bN=1,Ay=_J()),Ay}var EJ=wJ(),Fe=pe(EJ),_N={},wN;function SJ(){if(wN)return _N;wN=1;var r=ce(),e=it(),t=pa();return r({target:"Object",stat:!0,sham:!e},{create:t}),_N}var My,EN;function OJ(){if(EN)return My;EN=1,SJ();var r=Be(),e=r.Object;return My=function(i,n){return e.create(i,n)},My}var Ny,SN;function IJ(){if(SN)return Ny;SN=1;var r=OJ();return Ny=r,Ny}var Fy,ON;function TJ(){return ON||(ON=1,Fy=IJ()),Fy}var $J=TJ(),an=pe($J),IN={},ky,TN;function PJ(){if(TN)return ky;TN=1;var r=js(),e=vr(),t=ci(),i=RangeError;return ky=function(s){var o=e(t(this)),a="",u=r(s);if(u<0||u===1/0)throw new i("Wrong number of repetitions");for(;u>0;(u>>>=1)&&(o+=o))u&1&&(a+=o);return a},ky}var By,$N;function RJ(){if($N)return By;$N=1;var r=Ce(),e=p3(),t=vr(),i=PJ(),n=ci(),s=r(i),o=r("".slice),a=Math.ceil,u=function(l){return function(c,d,h){var f=t(n(c)),v=e(d),p=f.length,b=h===void 0?" ":t(h),m,g;return v<=p||b===""?f:(m=v-p,g=s(b,a(m/b.length)),g.length>m&&(g=o(g,0,m)),l?f+g:g+f)}};return By={start:u(!1),end:u(!0)},By}var jy,PN;function CJ(){if(PN)return jy;PN=1;var r=Ce(),e=$e(),t=RJ().start,i=RangeError,n=isFinite,s=Math.abs,o=Date.prototype,a=o.toISOString,u=r(o.getTime),l=r(o.getUTCDate),c=r(o.getUTCFullYear),d=r(o.getUTCHours),h=r(o.getUTCMilliseconds),f=r(o.getUTCMinutes),v=r(o.getUTCMonth),p=r(o.getUTCSeconds);return jy=e(function(){return a.call(new Date(-5e13-1))!=="0385-07-25T07:06:39.999Z"})||!e(function(){a.call(new Date(NaN))})?function(){if(!n(u(this)))throw new i("Invalid time value");var m=this,g=c(m),w=h(m),y=g<0?"-":g>9999?"+":"";return y+t(s(g),y?6:4,0)+"-"+t(v(m)+1,2,0)+"-"+t(l(m),2,0)+"T"+t(d(m),2,0)+":"+t(f(m),2,0)+":"+t(p(m),2,0)+"."+t(w,3,0)+"Z"}:a,jy}var RN;function xJ(){if(RN)return IN;RN=1;var r=ce(),e=Xt(),t=ir(),i=d3(),n=CJ(),s=Lr(),o=$e(),a=o(function(){return new Date(NaN).toJSON()!==null||e(Date.prototype.toJSON,{toISOString:function(){return 1}})!==1});return r({target:"Date",proto:!0,forced:a},{toJSON:function(l){var c=t(this),d=i(c,"number");return typeof d=="number"&&!isFinite(d)?null:!("toISOString"in c)&&s(c)==="Date"?e(n,c):c.toISOString()}}),IN}var Ly,CN;function qJ(){if(CN)return Ly;CN=1,xJ(),$3();var r=Be(),e=Wu();return r.JSON||(r.JSON={stringify:JSON.stringify}),Ly=function(i,n,s){return e(r.JSON.stringify,null,arguments)},Ly}var zy,xN;function DJ(){if(xN)return zy;xN=1;var r=qJ();return zy=r,zy}var Hy,qN;function AJ(){return qN||(qN=1,Hy=DJ()),Hy}var MJ=AJ(),ma=pe(MJ),DN={},AN={},Wy,MN;function k3(){if(MN)return Wy;MN=1;var r=Ye(),e=As(),t=Lr(),i=function(n){return e.slice(0,n.length)===n};return Wy=function(){return i("Bun/")?"BUN":i("Cloudflare-Workers")?"CLOUDFLARE":i("Deno/")?"DENO":i("Node.js/")?"NODE":r.Bun&&typeof Bun.version=="string"?"BUN":r.Deno&&typeof Deno.version=="object"?"DENO":t(r.process)==="process"?"NODE":r.window&&r.document?"BROWSER":"REST"}(),Wy}var Uy,NN;function NJ(){if(NN)return Uy;NN=1;var r=TypeError;return Uy=function(e,t){if(ed,p=t(h)?h:a(h),b=v?s(arguments,d):[],m=v?function(){e(p,this,b)}:p;return c?l(m,f):l(m)}:l},Vy}var kN;function FJ(){if(kN)return AN;kN=1;var r=ce(),e=Ye(),t=B3(),i=t(e.setInterval,!0);return r({global:!0,bind:!0,forced:e.setInterval!==i},{setInterval:i}),AN}var BN={},jN;function kJ(){if(jN)return BN;jN=1;var r=ce(),e=Ye(),t=B3(),i=t(e.setTimeout,!0);return r({global:!0,bind:!0,forced:e.setTimeout!==i},{setTimeout:i}),BN}var LN;function j3(){return LN||(LN=1,FJ(),kJ()),DN}var Ky,zN;function BJ(){if(zN)return Ky;zN=1,j3();var r=Be();return Ky=r.setTimeout,Ky}var Gy,HN;function jJ(){return HN||(HN=1,Gy=BJ()),Gy}var LJ=jJ(),ti=pe(LJ),WN={},Yy,UN;function zJ(){if(UN)return Yy;UN=1;var r=ir(),e=Xu(),t=hi();return Yy=function(n){for(var s=r(this),o=t(s),a=arguments.length,u=e(a>1?arguments[1]:void 0,o),l=a>2?arguments[2]:void 0,c=l===void 0?o:e(l,o);c>u;)s[u++]=n;return s},Yy}var VN;function HJ(){if(VN)return WN;VN=1;var r=ce(),e=zJ(),t=n0();return r({target:"Array",proto:!0},{fill:e}),t("fill"),WN}var Xy,KN;function WJ(){if(KN)return Xy;KN=1,HJ();var r=Pt();return Xy=r("Array","fill"),Xy}var Jy,GN;function UJ(){if(GN)return Jy;GN=1;var r=ht(),e=WJ(),t=Array.prototype;return Jy=function(i){var n=i.fill;return i===t||r(t,i)&&n===t.fill?e:n},Jy}var Qy,YN;function VJ(){if(YN)return Qy;YN=1;var r=UJ();return Qy=r,Qy}var Zy,XN;function KJ(){return XN||(XN=1,Zy=VJ()),Zy}var GJ=KJ(),ya=pe(GJ);/*! Hammer.JS - v2.0.17-rc - 2019-12-16 + */var bx=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function pe(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var _x={},to,wx;function Ye(){if(wx)return to;wx=1;var r=function(e){return e&&e.Math===Math&&e};return to=r(typeof globalThis=="object"&&globalThis)||r(typeof window=="object"&&window)||r(typeof self=="object"&&self)||r(typeof bx=="object"&&bx)||r(typeof to=="object"&&to)||function(){return this}()||Function("return this")(),to}var hp,Ex;function $e(){return Ex||(Ex=1,hp=function(r){try{return!!r()}catch{return!0}}),hp}var fp,Sx;function ua(){if(Sx)return fp;Sx=1;var r=$e();return fp=!r(function(){var e=(function(){}).bind();return typeof e!="function"||e.hasOwnProperty("prototype")}),fp}var vp,Ox;function Wu(){if(Ox)return vp;Ox=1;var r=ua(),e=Function.prototype,t=e.apply,i=e.call;return vp=typeof Reflect=="object"&&Reflect.apply||(r?i.bind(t):function(){return i.apply(t,arguments)}),vp}var pp,Ix;function Ce(){if(Ix)return pp;Ix=1;var r=ua(),e=Function.prototype,t=e.call,i=r&&e.bind.bind(t,t);return pp=r?i:function(n){return function(){return t.apply(n,arguments)}},pp}var gp,Tx;function Lr(){if(Tx)return gp;Tx=1;var r=Ce(),e=r({}.toString),t=r("".slice);return gp=function(i){return t(e(i),8,-1)},gp}var mp,$x;function Vw(){if($x)return mp;$x=1;var r=Lr(),e=Ce();return mp=function(t){if(r(t)==="Function")return e(t)},mp}var yp,Px;function St(){if(Px)return yp;Px=1;var r=typeof document=="object"&&document.all;return yp=typeof r>"u"&&r!==void 0?function(e){return typeof e=="function"||e===r}:function(e){return typeof e=="function"},yp}var bp={},_p,Rx;function it(){if(Rx)return _p;Rx=1;var r=$e();return _p=!r(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7}),_p}var wp,Cx;function Jt(){if(Cx)return wp;Cx=1;var r=ua(),e=Function.prototype.call;return wp=r?e.bind(e):function(){return e.apply(e,arguments)},wp}var Ep={},xx;function Uu(){if(xx)return Ep;xx=1;var r={}.propertyIsEnumerable,e=Object.getOwnPropertyDescriptor,t=e&&!r.call({1:2},1);return Ep.f=t?function(n){var s=e(this,n);return!!s&&s.enumerable}:r,Ep}var Sp,qx;function la(){return qx||(qx=1,Sp=function(r,e){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:e}}),Sp}var Op,Dx;function Vu(){if(Dx)return Op;Dx=1;var r=Ce(),e=$e(),t=Lr(),i=Object,n=r("".split);return Op=e(function(){return!i("z").propertyIsEnumerable(0)})?function(s){return t(s)==="String"?n(s,""):i(s)}:i,Op}var Ip,Ax;function Ds(){return Ax||(Ax=1,Ip=function(r){return r==null}),Ip}var Tp,Mx;function di(){if(Mx)return Tp;Mx=1;var r=Ds(),e=TypeError;return Tp=function(t){if(r(t))throw new e("Can't call method on "+t);return t},Tp}var $p,Nx;function Tr(){if(Nx)return $p;Nx=1;var r=Vu(),e=di();return $p=function(t){return r(e(t))},$p}var Pp,Fx;function Ot(){if(Fx)return Pp;Fx=1;var r=St();return Pp=function(e){return typeof e=="object"?e!==null:r(e)},Pp}var Rp,kx;function Be(){return kx||(kx=1,Rp={}),Rp}var Cp,Bx;function ir(){if(Bx)return Cp;Bx=1;var r=Be(),e=Ye(),t=St(),i=function(n){return t(n)?n:void 0};return Cp=function(n,s){return arguments.length<2?i(r[n])||i(e[n]):r[n]&&r[n][s]||e[n]&&e[n][s]},Cp}var xp,jx;function ht(){if(jx)return xp;jx=1;var r=Ce();return xp=r({}.isPrototypeOf),xp}var qp,Lx;function As(){if(Lx)return qp;Lx=1;var r=Ye(),e=r.navigator,t=e&&e.userAgent;return qp=t?String(t):"",qp}var Dp,zx;function ca(){if(zx)return Dp;zx=1;var r=Ye(),e=As(),t=r.process,i=r.Deno,n=t&&t.versions||i&&i.version,s=n&&n.v8,o,a;return s&&(o=s.split("."),a=o[0]>0&&o[0]<4?1:+(o[0]+o[1])),!a&&e&&(o=e.match(/Edge\/(\d+)/),(!o||o[1]>=74)&&(o=e.match(/Chrome\/(\d+)/),o&&(a=+o[1]))),Dp=a,Dp}var Ap,Hx;function Ms(){if(Hx)return Ap;Hx=1;var r=ca(),e=$e(),t=Ye(),i=t.String;return Ap=!!Object.getOwnPropertySymbols&&!e(function(){var n=Symbol("symbol detection");return!i(n)||!(Object(n)instanceof Symbol)||!Symbol.sham&&r&&r<41}),Ap}var Mp,Wx;function h3(){if(Wx)return Mp;Wx=1;var r=Ms();return Mp=r&&!Symbol.sham&&typeof Symbol.iterator=="symbol",Mp}var Np,Ux;function da(){if(Ux)return Np;Ux=1;var r=ir(),e=St(),t=ht(),i=h3(),n=Object;return Np=i?function(s){return typeof s=="symbol"}:function(s){var o=r("Symbol");return e(o)&&t(o.prototype,n(s))},Np}var Fp,Vx;function Ns(){if(Vx)return Fp;Vx=1;var r=String;return Fp=function(e){try{return r(e)}catch{return"Object"}},Fp}var kp,Kx;function hi(){if(Kx)return kp;Kx=1;var r=St(),e=Ns(),t=TypeError;return kp=function(i){if(r(i))return i;throw new t(e(i)+" is not a function")},kp}var Bp,Gx;function Kw(){if(Gx)return Bp;Gx=1;var r=hi(),e=Ds();return Bp=function(t,i){var n=t[i];return e(n)?void 0:r(n)},Bp}var jp,Yx;function DY(){if(Yx)return jp;Yx=1;var r=Jt(),e=St(),t=Ot(),i=TypeError;return jp=function(n,s){var o,a;if(s==="string"&&e(o=n.toString)&&!t(a=r(o,n))||e(o=n.valueOf)&&!t(a=r(o,n))||s!=="string"&&e(o=n.toString)&&!t(a=r(o,n)))return a;throw new i("Can't convert object to primitive value")},jp}var Lp={exports:{}},zp,Xx;function Fs(){return Xx||(Xx=1,zp=!0),zp}var Hp,Jx;function AY(){if(Jx)return Hp;Jx=1;var r=Ye(),e=Object.defineProperty;return Hp=function(t,i){try{e(r,t,{value:i,configurable:!0,writable:!0})}catch{r[t]=i}return i},Hp}var Qx;function Gw(){if(Qx)return Lp.exports;Qx=1;var r=Fs(),e=Ye(),t=AY(),i="__core-js_shared__",n=Lp.exports=e[i]||t(i,{});return(n.versions||(n.versions=[])).push({version:"3.44.0",mode:r?"pure":"global",copyright:"© 2014-2025 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.44.0/LICENSE",source:"https://github.com/zloirock/core-js"}),Lp.exports}var Wp,Zx;function ks(){if(Zx)return Wp;Zx=1;var r=Gw();return Wp=function(e,t){return r[e]||(r[e]=t||{})},Wp}var Up,eq;function nr(){if(eq)return Up;eq=1;var r=di(),e=Object;return Up=function(t){return e(r(t))},Up}var Vp,tq;function $t(){if(tq)return Vp;tq=1;var r=Ce(),e=nr(),t=r({}.hasOwnProperty);return Vp=Object.hasOwn||function(n,s){return t(e(n),s)},Vp}var Kp,rq;function Ku(){if(rq)return Kp;rq=1;var r=Ce(),e=0,t=Math.random(),i=r(1.1.toString);return Kp=function(n){return"Symbol("+(n===void 0?"":n)+")_"+i(++e+t,36)},Kp}var Gp,iq;function ft(){if(iq)return Gp;iq=1;var r=Ye(),e=ks(),t=$t(),i=Ku(),n=Ms(),s=h3(),o=r.Symbol,a=e("wks"),u=s?o.for||o:o&&o.withoutSetter||i;return Gp=function(l){return t(a,l)||(a[l]=n&&t(o,l)?o[l]:u("Symbol."+l)),a[l]},Gp}var Yp,nq;function f3(){if(nq)return Yp;nq=1;var r=Jt(),e=Ot(),t=da(),i=Kw(),n=DY(),s=ft(),o=TypeError,a=s("toPrimitive");return Yp=function(u,l){if(!e(u)||t(u))return u;var c=i(u,a),d;if(c){if(l===void 0&&(l="default"),d=r(c,u,l),!e(d)||t(d))return d;throw new o("Can't convert object to primitive value")}return l===void 0&&(l="number"),n(u,l)},Yp}var Xp,sq;function Yw(){if(sq)return Xp;sq=1;var r=f3(),e=da();return Xp=function(t){var i=r(t,"string");return e(i)?i:i+""},Xp}var Jp,oq;function v3(){if(oq)return Jp;oq=1;var r=Ye(),e=Ot(),t=r.document,i=e(t)&&e(t.createElement);return Jp=function(n){return i?t.createElement(n):{}},Jp}var Qp,aq;function p3(){if(aq)return Qp;aq=1;var r=it(),e=$e(),t=v3();return Qp=!r&&!e(function(){return Object.defineProperty(t("div"),"a",{get:function(){return 7}}).a!==7}),Qp}var uq;function Gu(){if(uq)return bp;uq=1;var r=it(),e=Jt(),t=Uu(),i=la(),n=Tr(),s=Yw(),o=$t(),a=p3(),u=Object.getOwnPropertyDescriptor;return bp.f=r?u:function(c,d){if(c=n(c),d=s(d),a)try{return u(c,d)}catch{}if(o(c,d))return i(!e(t.f,c,d),c[d])},bp}var Zp,lq;function MY(){if(lq)return Zp;lq=1;var r=$e(),e=St(),t=/#|\.prototype\./,i=function(u,l){var c=s[n(u)];return c===a?!0:c===o?!1:e(l)?r(l):!!l},n=i.normalize=function(u){return String(u).replace(t,".").toLowerCase()},s=i.data={},o=i.NATIVE="N",a=i.POLYFILL="P";return Zp=i,Zp}var eg,cq;function Yu(){if(cq)return eg;cq=1;var r=Vw(),e=hi(),t=ua(),i=r(r.bind);return eg=function(n,s){return e(n),s===void 0?n:t?i(n,s):function(){return n.apply(s,arguments)}},eg}var tg={},rg,dq;function g3(){if(dq)return rg;dq=1;var r=it(),e=$e();return rg=r&&e(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42}),rg}var ig,hq;function zr(){if(hq)return ig;hq=1;var r=Ot(),e=String,t=TypeError;return ig=function(i){if(r(i))return i;throw new t(e(i)+" is not an object")},ig}var fq;function fr(){if(fq)return tg;fq=1;var r=it(),e=p3(),t=g3(),i=zr(),n=Yw(),s=TypeError,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,u="enumerable",l="configurable",c="writable";return tg.f=r?t?function(h,f,v){if(i(h),f=n(f),i(v),typeof h=="function"&&f==="prototype"&&"value"in v&&c in v&&!v[c]){var p=a(h,f);p&&p[c]&&(h[f]=v.value,v={configurable:l in v?v[l]:p[l],enumerable:u in v?v[u]:p[u],writable:!1})}return o(h,f,v)}:o:function(h,f,v){if(i(h),f=n(f),i(v),e)try{return o(h,f,v)}catch{}if("get"in v||"set"in v)throw new s("Accessors not supported");return"value"in v&&(h[f]=v.value),h},tg}var ng,vq;function Bs(){if(vq)return ng;vq=1;var r=it(),e=fr(),t=la();return ng=r?function(i,n,s){return e.f(i,n,t(1,s))}:function(i,n,s){return i[n]=s,i},ng}var sg,pq;function ce(){if(pq)return sg;pq=1;var r=Ye(),e=Wu(),t=Vw(),i=St(),n=Gu().f,s=MY(),o=Be(),a=Yu(),u=Bs(),l=$t(),c=function(d){var h=function(f,v,p){if(this instanceof h){switch(arguments.length){case 0:return new d;case 1:return new d(f);case 2:return new d(f,v)}return new d(f,v,p)}return e(d,this,arguments)};return h.prototype=d.prototype,h};return sg=function(d,h){var f=d.target,v=d.global,p=d.stat,b=d.proto,m=v?r:p?r[f]:r[f]&&r[f].prototype,g=v?o:o[f]||u(o,f,{})[f],w=g.prototype,y,S,O,I,_,E,T,R,x;for(I in h)y=s(v?I:f+(p?".":"#")+I,d.forced),S=!y&&m&&l(m,I),E=g[I],S&&(d.dontCallGetSet?(x=n(m,I),T=x&&x.value):T=m[I]),_=S&&T?T:h[I],!(!y&&!b&&typeof E==typeof _)&&(d.bind&&S?R=a(_,r):d.wrap&&S?R=c(_):b&&i(_)?R=t(_):R=_,(d.sham||_&&_.sham||E&&E.sham)&&u(R,"sham",!0),u(g,I,R),b&&(O=f+"Prototype",l(o,O)||u(o,O,{}),u(o[O],I,_),d.real&&w&&(y||!w[I])&&u(w,I,_)))},sg}var og,gq;function NY(){if(gq)return og;gq=1;var r=Math.ceil,e=Math.floor;return og=Math.trunc||function(i){var n=+i;return(n>0?e:r)(n)},og}var ag,mq;function js(){if(mq)return ag;mq=1;var r=NY();return ag=function(e){var t=+e;return t!==t||t===0?0:r(t)},ag}var ug,yq;function Xu(){if(yq)return ug;yq=1;var r=js(),e=Math.max,t=Math.min;return ug=function(i,n){var s=r(i);return s<0?e(s+n,0):t(s,n)},ug}var lg,bq;function m3(){if(bq)return lg;bq=1;var r=js(),e=Math.min;return lg=function(t){var i=r(t);return i>0?e(i,9007199254740991):0},lg}var cg,_q;function fi(){if(_q)return cg;_q=1;var r=m3();return cg=function(e){return r(e.length)},cg}var dg,wq;function Xw(){if(wq)return dg;wq=1;var r=Tr(),e=Xu(),t=fi(),i=function(n){return function(s,o,a){var u=r(s),l=t(u);if(l===0)return!n&&-1;var c=e(a,l),d;if(n&&o!==o){for(;l>c;)if(d=u[c++],d!==d)return!0}else for(;l>c;c++)if((n||c in u)&&u[c]===o)return n||c||0;return!n&&-1}};return dg={includes:i(!0),indexOf:i(!1)},dg}var hg,Eq;function ha(){return Eq||(Eq=1,hg={}),hg}var fg,Sq;function y3(){if(Sq)return fg;Sq=1;var r=Ce(),e=$t(),t=Tr(),i=Xw().indexOf,n=ha(),s=r([].push);return fg=function(o,a){var u=t(o),l=0,c=[],d;for(d in u)!e(n,d)&&e(u,d)&&s(c,d);for(;a.length>l;)e(u,d=a[l++])&&(~i(c,d)||s(c,d));return c},fg}var vg,Oq;function Jw(){return Oq||(Oq=1,vg=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]),vg}var pg,Iq;function fa(){if(Iq)return pg;Iq=1;var r=y3(),e=Jw();return pg=Object.keys||function(i){return r(i,e)},pg}var gg={},Tq;function Ju(){return Tq||(Tq=1,gg.f=Object.getOwnPropertySymbols),gg}var mg,$q;function FY(){if($q)return mg;$q=1;var r=it(),e=Ce(),t=Jt(),i=$e(),n=fa(),s=Ju(),o=Uu(),a=nr(),u=Vu(),l=Object.assign,c=Object.defineProperty,d=e([].concat);return mg=!l||i(function(){if(r&&l({b:1},l(c({},"a",{enumerable:!0,get:function(){c(this,"b",{value:3,enumerable:!1})}}),{b:2})).b!==1)return!0;var h={},f={},v=Symbol("assign detection"),p="abcdefghijklmnopqrst";return h[v]=7,p.split("").forEach(function(b){f[b]=b}),l({},h)[v]!==7||n(l({},f)).join("")!==p})?function(f,v){for(var p=a(f),b=arguments.length,m=1,g=s.f,w=o.f;b>m;)for(var y=u(arguments[m++]),S=g?d(n(y),g(y)):n(y),O=S.length,I=0,_;O>I;)_=S[I++],(!r||t(w,y,_))&&(p[_]=y[_]);return p}:l,mg}var Pq;function kY(){if(Pq)return _x;Pq=1;var r=ce(),e=FY();return r({target:"Object",stat:!0,arity:2,forced:Object.assign!==e},{assign:e}),_x}var yg,Rq;function BY(){if(Rq)return yg;Rq=1,kY();var r=Be();return yg=r.Object.assign,yg}var bg,Cq;function jY(){if(Cq)return bg;Cq=1;var r=BY();return bg=r,bg}var _g,xq;function LY(){return xq||(xq=1,_g=jY()),_g}var zY=LY(),at=pe(zY),qq={},wg,Dq;function Ls(){if(Dq)return wg;Dq=1;var r=Ce();return wg=r([].slice),wg}var Eg,Aq;function HY(){if(Aq)return Eg;Aq=1;var r=Ce(),e=hi(),t=Ot(),i=$t(),n=Ls(),s=ua(),o=Function,a=r([].concat),u=r([].join),l={},c=function(d,h,f){if(!i(l,h)){for(var v=[],p=0;p=.1;)v=+s[d++%o],v>c&&(v=c),f=Math.sqrt(v*v/(1+l*l)),f=a<0?-f:f,e+=f,t+=l*f,h===!0?r.lineTo(e,t):r.moveTo(e,t),c-=v,h=!h}function t7(r,e,t,i){r.beginPath();const n=6,s=Math.PI*2/n;r.moveTo(e+i,t);for(let o=1;o1?t-1:0),n=1;ne)throw r("Maximum allowed index exceeded");return t},Cg}var xg,Vq;function Qu(){if(Vq)return xg;Vq=1;var r=it(),e=fr(),t=la();return xg=function(i,n,s){r?e.f(i,n,t(0,s)):i[n]=s},xg}var qg,Kq;function Zw(){if(Kq)return qg;Kq=1;var r=ft(),e=r("toStringTag"),t={};return t[e]="z",qg=String(t)==="[object z]",qg}var Dg,Gq;function zs(){if(Gq)return Dg;Gq=1;var r=Zw(),e=St(),t=Lr(),i=ft(),n=i("toStringTag"),s=Object,o=t(function(){return arguments}())==="Arguments",a=function(u,l){try{return u[l]}catch{}};return Dg=r?t:function(u){var l,c,d;return u===void 0?"Undefined":u===null?"Null":typeof(c=a(l=s(u),n))=="string"?c:o?t(l):(d=t(l))==="Object"&&e(l.callee)?"Arguments":d},Dg}var Ag,Yq;function s7(){if(Yq)return Ag;Yq=1;var r=Ce(),e=St(),t=Gw(),i=r(Function.toString);return e(t.inspectSource)||(t.inspectSource=function(n){return i(n)}),Ag=t.inspectSource,Ag}var Mg,Xq;function O3(){if(Xq)return Mg;Xq=1;var r=Ce(),e=$e(),t=St(),i=zs(),n=ir(),s=s7(),o=function(){},a=n("Reflect","construct"),u=/^\s*(?:class|function)\b/,l=r(u.exec),c=!u.test(o),d=function(v){if(!t(v))return!1;try{return a(o,[],v),!0}catch{return!1}},h=function(v){if(!t(v))return!1;switch(i(v)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return c||!!l(u,s(v))}catch{return!0}};return h.sham=!0,Mg=!a||e(function(){var f;return d(d.call)||!d(Object)||!d(function(){f=!0})||f})?h:d,Mg}var Ng,Jq;function o7(){if(Jq)return Ng;Jq=1;var r=xn(),e=O3(),t=Ot(),i=ft(),n=i("species"),s=Array;return Ng=function(o){var a;return r(o)&&(a=o.constructor,e(a)&&(a===s||r(a.prototype))?a=void 0:t(a)&&(a=a[n],a===null&&(a=void 0))),a===void 0?s:a},Ng}var Fg,Qq;function e0(){if(Qq)return Fg;Qq=1;var r=o7();return Fg=function(e,t){return new(r(e))(t===0?0:t)},Fg}var kg,Zq;function va(){if(Zq)return kg;Zq=1;var r=$e(),e=ft(),t=ca(),i=e("species");return kg=function(n){return t>=51||!r(function(){var s=[],o=s.constructor={};return o[i]=function(){return{foo:1}},s[n](Boolean).foo!==1})},kg}var eD;function I3(){if(eD)return Hq;eD=1;var r=ce(),e=$e(),t=xn(),i=Ot(),n=nr(),s=fi(),o=S3(),a=Qu(),u=e0(),l=va(),c=ft(),d=ca(),h=c("isConcatSpreadable"),f=d>=51||!e(function(){var b=[];return b[h]=!1,b.concat()[0]!==b}),v=function(b){if(!i(b))return!1;var m=b[h];return m!==void 0?!!m:t(b)},p=!f||!l("concat");return r({target:"Array",proto:!0,arity:1,forced:p},{concat:function(m){var g=n(this),w=u(g,0),y=0,S,O,I,_,E;for(S=-1,I=arguments.length;Sh;)t.f(a,f=c[h++],l[f]);return a},jg}var Lg,sD;function a7(){if(sD)return Lg;sD=1;var r=ir();return Lg=r("document","documentElement"),Lg}var zg,oD;function Zu(){if(oD)return zg;oD=1;var r=ks(),e=Ku(),t=r("keys");return zg=function(i){return t[i]||(t[i]=e(i))},zg}var Hg,aD;function pa(){if(aD)return Hg;aD=1;var r=zr(),e=t0(),t=Jw(),i=ha(),n=a7(),s=v3(),o=Zu(),a=">",u="<",l="prototype",c="script",d=o("IE_PROTO"),h=function(){},f=function(g){return u+c+a+g+u+"/"+c+a},v=function(g){g.write(f("")),g.close();var w=g.parentWindow.Object;return g=null,w},p=function(){var g=s("iframe"),w="java"+c+":",y;return g.style.display="none",n.appendChild(g),g.src=String(w),y=g.contentWindow.document,y.open(),y.write(f("document.F=Object")),y.close(),y.F},b,m=function(){try{b=new ActiveXObject("htmlfile")}catch{}m=typeof document<"u"?document.domain&&b?v(b):p():v(b);for(var g=t.length;g--;)delete m[l][t[g]];return m()};return i[d]=!0,Hg=Object.create||function(w,y){var S;return w!==null?(h[l]=r(w),S=new h,h[l]=null,S[d]=w):S=m(),y===void 0?S:e.f(S,y)},Hg}var Wg={},uD;function el(){if(uD)return Wg;uD=1;var r=y3(),e=Jw(),t=e.concat("length","prototype");return Wg.f=Object.getOwnPropertyNames||function(n){return r(n,t)},Wg}var Ug={},lD;function r0(){if(lD)return Ug;lD=1;var r=Lr(),e=Tr(),t=el().f,i=Ls(),n=typeof window=="object"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(o){try{return t(o)}catch{return i(n)}};return Ug.f=function(a){return n&&r(a)==="Window"?s(a):t(e(a))},Ug}var Vg,cD;function ga(){if(cD)return Vg;cD=1;var r=Bs();return Vg=function(e,t,i,n){return n&&n.enumerable?e[t]=i:r(e,t,i),e},Vg}var Kg,dD;function i0(){if(dD)return Kg;dD=1;var r=fr();return Kg=function(e,t,i){return r.f(e,t,i)},Kg}var Gg={},hD;function tl(){if(hD)return Gg;hD=1;var r=ft();return Gg.f=r,Gg}var Yg,fD;function Je(){if(fD)return Yg;fD=1;var r=Be(),e=$t(),t=tl(),i=fr().f;return Yg=function(n){var s=r.Symbol||(r.Symbol={});e(s,n)||i(s,n,{value:t.f(n)})},Yg}var Xg,vD;function T3(){if(vD)return Xg;vD=1;var r=Jt(),e=ir(),t=ft(),i=ga();return Xg=function(){var n=e("Symbol"),s=n&&n.prototype,o=s&&s.valueOf,a=t("toPrimitive");s&&!s[a]&&i(s,a,function(u){return r(o,this)},{arity:1})},Xg}var Jg,pD;function u7(){if(pD)return Jg;pD=1;var r=Zw(),e=zs();return Jg=r?{}.toString:function(){return"[object "+e(this)+"]"},Jg}var Qg,gD;function qn(){if(gD)return Qg;gD=1;var r=Zw(),e=fr().f,t=Bs(),i=$t(),n=u7(),s=ft(),o=s("toStringTag");return Qg=function(a,u,l,c){var d=l?a:a&&a.prototype;d&&(i(d,o)||e(d,o,{configurable:!0,value:u}),c&&!r&&t(d,"toString",n))},Qg}var Zg,mD;function $3(){if(mD)return Zg;mD=1;var r=Ye(),e=St(),t=r.WeakMap;return Zg=e(t)&&/native code/.test(String(t)),Zg}var em,yD;function Dn(){if(yD)return em;yD=1;var r=$3(),e=Ye(),t=Ot(),i=Bs(),n=$t(),s=Gw(),o=Zu(),a=ha(),u="Object already initialized",l=e.TypeError,c=e.WeakMap,d,h,f,v=function(g){return f(g)?h(g):d(g,{})},p=function(g){return function(w){var y;if(!t(w)||(y=h(w)).type!==g)throw new l("Incompatible receiver, "+g+" required");return y}};if(r||s.state){var b=s.state||(s.state=new c);b.get=b.get,b.has=b.has,b.set=b.set,d=function(g,w){if(b.has(g))throw new l(u);return w.facade=g,b.set(g,w),w},h=function(g){return b.get(g)||{}},f=function(g){return b.has(g)}}else{var m=o("state");a[m]=!0,d=function(g,w){if(n(g,m))throw new l(u);return w.facade=g,i(g,m,w),w},h=function(g){return n(g,m)?g[m]:{}},f=function(g){return n(g,m)}}return em={set:d,get:h,has:f,enforce:v,getterFor:p},em}var tm,bD;function Wi(){if(bD)return tm;bD=1;var r=Yu(),e=Ce(),t=Vu(),i=nr(),n=fi(),s=e0(),o=e([].push),a=function(u){var l=u===1,c=u===2,d=u===3,h=u===4,f=u===6,v=u===7,p=u===5||f;return function(b,m,g,w){for(var y=i(b),S=t(y),O=n(S),I=r(m,g),_=0,E=w||s,T=l?E(b,O):c||v?E(b,0):void 0,R,x;O>_;_++)if((p||_ in S)&&(R=S[_],x=I(R,_,y),u))if(l)T[_]=x;else if(x)switch(u){case 3:return!0;case 5:return R;case 6:return _;case 2:o(T,R)}else switch(u){case 4:return!1;case 7:o(T,R)}return f?-1:d||h?h:T}};return tm={forEach:a(0),map:a(1),filter:a(2),some:a(3),every:a(4),find:a(5),findIndex:a(6),filterReject:a(7)},tm}var _D;function l7(){if(_D)return rD;_D=1;var r=ce(),e=Ye(),t=Jt(),i=Ce(),n=Fs(),s=it(),o=Ms(),a=$e(),u=$t(),l=ht(),c=zr(),d=Tr(),h=Yw(),f=vr(),v=la(),p=pa(),b=fa(),m=el(),g=r0(),w=Ju(),y=Gu(),S=fr(),O=t0(),I=Uu(),_=ga(),E=i0(),T=ks(),R=Zu(),x=ha(),C=Ku(),D=ft(),j=tl(),ee=Je(),H=T3(),Z=qn(),ve=Dn(),we=Wi().forEach,te=R("hidden"),me="Symbol",xe="prototype",De=ve.set,nt=ve.getterFor(me),_e=Object[xe],A=e.Symbol,W=A&&A[xe],Y=e.RangeError,ie=e.TypeError,Pe=e.QObject,$=y.f,P=S.f,q=g.f,F=I.f,k=i([].push),N=T("symbols"),K=T("op-symbols"),X=T("wks"),U=!Pe||!Pe[xe]||!Pe[xe].findChild,B=function(oe,V,Q){var re=$(_e,V);re&&delete _e[V],P(oe,V,Q),re&&oe!==_e&&P(_e,V,re)},le=s&&a(function(){return p(P({},"a",{get:function(){return P(this,"a",{value:7}).a}})).a!==7})?B:P,J=function(oe,V){var Q=N[oe]=p(W);return De(Q,{type:me,tag:oe,description:V}),s||(Q.description=V),Q},se=function(V,Q,re){V===_e&&se(K,Q,re),c(V);var ne=h(Q);return c(re),u(N,ne)?(re.enumerable?(u(V,te)&&V[te][ne]&&(V[te][ne]=!1),re=p(re,{enumerable:v(0,!1)})):(u(V,te)||P(V,te,v(1,p(null))),V[te][ne]=!0),le(V,ne,re)):P(V,ne,re)},he=function(V,Q){c(V);var re=d(Q),ne=b(re).concat(st(re));return we(ne,function(Ee){(!s||t(qe,re,Ee))&&se(V,Ee,re[Ee])}),V},Oe=function(V,Q){return Q===void 0?p(V):he(p(V),Q)},qe=function(V){var Q=h(V),re=t(F,this,Q);return this===_e&&u(N,Q)&&!u(K,Q)?!1:re||!u(this,Q)||!u(N,Q)||u(this,te)&&this[te][Q]?re:!0},Re=function(V,Q){var re=d(V),ne=h(Q);if(!(re===_e&&u(N,ne)&&!u(K,ne))){var Ee=$(re,ne);return Ee&&u(N,ne)&&!(u(re,te)&&re[te][ne])&&(Ee.enumerable=!0),Ee}},vt=function(V){var Q=q(d(V)),re=[];return we(Q,function(ne){!u(N,ne)&&!u(x,ne)&&k(re,ne)}),re},st=function(oe){var V=oe===_e,Q=q(V?K:d(oe)),re=[];return we(Q,function(ne){u(N,ne)&&(!V||u(_e,ne))&&k(re,N[ne])}),re};return o||(A=function(){if(l(W,this))throw new ie("Symbol is not a constructor");var V=!arguments.length||arguments[0]===void 0?void 0:f(arguments[0]),Q=C(V),re=function(ne){var Ee=this===void 0?e:this;Ee===_e&&t(re,K,ne),u(Ee,te)&&u(Ee[te],Q)&&(Ee[te][Q]=!1);var vi=v(1,ne);try{le(Ee,Q,vi)}catch(Ys){if(!(Ys instanceof Y))throw Ys;B(Ee,Q,vi)}};return s&&U&&le(_e,Q,{configurable:!0,set:re}),J(Q,V)},W=A[xe],_(W,"toString",function(){return nt(this).tag}),_(A,"withoutSetter",function(oe){return J(C(oe),oe)}),I.f=qe,S.f=se,O.f=he,y.f=Re,m.f=g.f=vt,w.f=st,j.f=function(oe){return J(D(oe),oe)},s&&(E(W,"description",{configurable:!0,get:function(){return nt(this).description}}),n||_(_e,"propertyIsEnumerable",qe,{unsafe:!0}))),r({global:!0,constructor:!0,wrap:!0,forced:!o,sham:!o},{Symbol:A}),we(b(X),function(oe){ee(oe)}),r({target:me,stat:!0,forced:!o},{useSetter:function(){U=!0},useSimple:function(){U=!1}}),r({target:"Object",stat:!0,forced:!o,sham:!s},{create:Oe,defineProperty:se,defineProperties:he,getOwnPropertyDescriptor:Re}),r({target:"Object",stat:!0,forced:!o},{getOwnPropertyNames:vt}),H(),Z(A,me),x[te]=!0,rD}var wD={},rm,ED;function P3(){if(ED)return rm;ED=1;var r=Ms();return rm=r&&!!Symbol.for&&!!Symbol.keyFor,rm}var SD;function c7(){if(SD)return wD;SD=1;var r=ce(),e=ir(),t=$t(),i=vr(),n=ks(),s=P3(),o=n("string-to-symbol-registry"),a=n("symbol-to-string-registry");return r({target:"Symbol",stat:!0,forced:!s},{for:function(u){var l=i(u);if(t(o,l))return o[l];var c=e("Symbol")(l);return o[l]=c,a[c]=l,c}}),wD}var OD={},ID;function d7(){if(ID)return OD;ID=1;var r=ce(),e=$t(),t=da(),i=Ns(),n=ks(),s=P3(),o=n("symbol-to-string-registry");return r({target:"Symbol",stat:!0,forced:!s},{keyFor:function(u){if(!t(u))throw new TypeError(i(u)+" is not a symbol");if(e(o,u))return o[u]}}),OD}var TD={},im,$D;function h7(){if($D)return im;$D=1;var r=Ce(),e=xn(),t=St(),i=Lr(),n=vr(),s=r([].push);return im=function(o){if(t(o))return o;if(e(o)){for(var a=o.length,u=[],l=0;l=v.length)return f.target=null,o(void 0,!0);switch(f.kind){case"keys":return o(p,!1);case"values":return o(v[p],!1)}return o([p,v[p]],!1)},"values");var h=t.Arguments=t.Array;if(e("keys"),e("values"),e("entries"),!a&&u&&h.name!=="values")try{n(h,"name",{value:"values"})}catch{}return ym}var bm,TA;function D7(){return TA||(TA=1,bm={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}),bm}var $A;function Us(){if($A)return dA;$A=1,Ws();var r=D7(),e=Ye(),t=qn(),i=Hs();for(var n in r)t(e[n],n),i[n]=i.Array;return dA}var _m,PA;function F3(){if(PA)return _m;PA=1;var r=T7();return Us(),_m=r,_m}var wm,RA;function A7(){return RA||(RA=1,wm=F3()),wm}var M7=A7(),N7=pe(M7),CA={},xA;function F7(){if(xA)return CA;xA=1;var r=ce(),e=xn(),t=O3(),i=Ot(),n=Xu(),s=fi(),o=Tr(),a=Qu(),u=ft(),l=va(),c=Ls(),d=l("slice"),h=u("species"),f=Array,v=Math.max;return r({target:"Array",proto:!0,forced:!d},{slice:function(b,m){var g=o(this),w=s(g),y=n(b,w),S=n(m===void 0?w:m,w),O,I,_;if(e(g)&&(O=g.constructor,t(O)&&(O===f||e(O.prototype))?O=void 0:i(O)&&(O=O[h],O===null&&(O=void 0)),O===f||O===void 0))return c(g,y,S);for(I=new(O===void 0?f:O)(v(S-y,0)),_=0;y1?arguments[1]:void 0)}}),zA}var Cm,WA;function X7(){if(WA)return Cm;WA=1,Y7();var r=Pt();return Cm=r("Array","map"),Cm}var xm,UA;function J7(){if(UA)return xm;UA=1;var r=ht(),e=X7(),t=Array.prototype;return xm=function(i){var n=i.map;return i===t||r(t,i)&&n===t.map?e:n},xm}var qm,VA;function Q7(){if(VA)return qm;VA=1;var r=J7();return qm=r,qm}var Dm,KA;function Z7(){return KA||(KA=1,Dm=Q7()),Dm}var eX=Z7(),ms=pe(eX),GA={},YA;function tX(){if(YA)return GA;YA=1;var r=ce(),e=nr(),t=fa(),i=$e(),n=i(function(){t(1)});return r({target:"Object",stat:!0,forced:n},{keys:function(o){return t(e(o))}}),GA}var Am,XA;function rX(){if(XA)return Am;XA=1,tX();var r=Be();return Am=r.Object.keys,Am}var Mm,JA;function iX(){if(JA)return Mm;JA=1;var r=rX();return Mm=r,Mm}var Nm,QA;function nX(){return QA||(QA=1,Nm=iX()),Nm}var sX=nX(),Ze=pe(sX),ZA={},eM;function oX(){if(eM)return ZA;eM=1;var r=ce(),e=Ce(),t=Date,i=e(t.prototype.getTime);return r({target:"Date",stat:!0},{now:function(){return i(new t)}}),ZA}var Fm,tM;function aX(){if(tM)return Fm;tM=1,oX();var r=Be();return Fm=r.Date.now,Fm}var km,rM;function uX(){if(rM)return km;rM=1;var r=aX();return km=r,km}var Bm,iM;function lX(){return iM||(iM=1,Bm=uX()),Bm}var cX=lX(),ou=pe(cX),nM={},jm,sM;function Vs(){if(sM)return jm;sM=1;var r=$e();return jm=function(e,t){var i=[][e];return!!i&&r(function(){i.call(null,t||function(){return 1},1)})},jm}var Lm,oM;function dX(){if(oM)return Lm;oM=1;var r=Wi().forEach,e=Vs(),t=e("forEach");return Lm=t?[].forEach:function(n){return r(this,n,arguments.length>1?arguments[1]:void 0)},Lm}var aM;function hX(){if(aM)return nM;aM=1;var r=ce(),e=dX();return r({target:"Array",proto:!0,forced:[].forEach!==e},{forEach:e}),nM}var zm,uM;function fX(){if(uM)return zm;uM=1,hX();var r=Pt();return zm=r("Array","forEach"),zm}var Hm,lM;function vX(){if(lM)return Hm;lM=1;var r=fX();return Hm=r,Hm}var Wm,cM;function pX(){if(cM)return Wm;cM=1;var r=zs(),e=$t(),t=ht(),i=vX(),n=Array.prototype,s={DOMTokenList:!0,NodeList:!0};return Wm=function(o){var a=o.forEach;return o===n||t(n,o)&&a===n.forEach||e(s,r(o))?i:a},Wm}var Um,dM;function gX(){return dM||(dM=1,Um=pX()),Um}var mX=gX(),Le=pe(mX),hM={},fM;function yX(){if(fM)return hM;fM=1;var r=ce(),e=Ce(),t=xn(),i=e([].reverse),n=[1,2];return r({target:"Array",proto:!0,forced:String(n)===String(n.reverse())},{reverse:function(){return t(this)&&(this.length=this.length),i(this)}}),hM}var Vm,vM;function bX(){if(vM)return Vm;vM=1,yX();var r=Pt();return Vm=r("Array","reverse"),Vm}var Km,pM;function _X(){if(pM)return Km;pM=1;var r=ht(),e=bX(),t=Array.prototype;return Km=function(i){var n=i.reverse;return i===t||r(t,i)&&n===t.reverse?e:n},Km}var Gm,gM;function wX(){if(gM)return Gm;gM=1;var r=_X();return Gm=r,Gm}var Ym,mM;function EX(){return mM||(mM=1,Ym=wX()),Ym}var SX=EX(),on=pe(SX),yM={},Xm,bM;function OX(){if(bM)return Xm;bM=1;var r=it(),e=xn(),t=TypeError,i=Object.getOwnPropertyDescriptor,n=r&&!function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(s){return s instanceof TypeError}}();return Xm=n?function(s,o){if(e(s)&&!i(s,"length").writable)throw new t("Cannot set read only .length");return s.length=o}:function(s,o){return s.length=o},Xm}var Jm,_M;function k3(){if(_M)return Jm;_M=1;var r=Ns(),e=TypeError;return Jm=function(t,i){if(!delete t[i])throw new e("Cannot delete property "+r(i)+" of "+r(t))},Jm}var wM;function IX(){if(wM)return yM;wM=1;var r=ce(),e=nr(),t=Xu(),i=js(),n=fi(),s=OX(),o=S3(),a=e0(),u=Qu(),l=k3(),c=va(),d=c("splice"),h=Math.max,f=Math.min;return r({target:"Array",proto:!0,forced:!d},{splice:function(p,b){var m=e(this),g=n(m),w=t(p,g),y=arguments.length,S,O,I,_,E,T;for(y===0?S=O=0:y===1?(S=0,O=g-w):(S=y-2,O=f(h(i(b),0),g-w)),o(g+S-O),I=a(m,O),_=0;_g-O+S;_--)l(m,_-1)}else if(S>O)for(_=g-O;_>w;_--)E=_+O-1,T=_+S-1,E in m?m[T]=m[E]:l(m,T);for(_=0;_1?arguments[1]:void 0)}}),i("includes"),TM}var ry,PM;function qX(){if(PM)return ry;PM=1,xX();var r=Pt();return ry=r("Array","includes"),ry}var RM={},iy,CM;function DX(){if(CM)return iy;CM=1;var r=Ot(),e=Lr(),t=ft(),i=t("match");return iy=function(n){var s;return r(n)&&((s=n[i])!==void 0?!!s:e(n)==="RegExp")},iy}var ny,xM;function AX(){if(xM)return ny;xM=1;var r=DX(),e=TypeError;return ny=function(t){if(r(t))throw new e("The method doesn't accept regular expressions");return t},ny}var sy,qM;function MX(){if(qM)return sy;qM=1;var r=ft(),e=r("match");return sy=function(t){var i=/./;try{"/./"[t](i)}catch{try{return i[e]=!1,"/./"[t](i)}catch{}}return!1},sy}var DM;function NX(){if(DM)return RM;DM=1;var r=ce(),e=Ce(),t=AX(),i=di(),n=vr(),s=MX(),o=e("".indexOf);return r({target:"String",proto:!0,forced:!s("includes")},{includes:function(u){return!!~o(n(i(this)),n(t(u)),arguments.length>1?arguments[1]:void 0)}}),RM}var oy,AM;function FX(){if(AM)return oy;AM=1,NX();var r=Pt();return oy=r("String","includes"),oy}var ay,MM;function kX(){if(MM)return ay;MM=1;var r=ht(),e=qX(),t=FX(),i=Array.prototype,n=String.prototype;return ay=function(s){var o=s.includes;return s===i||r(i,s)&&o===i.includes?e:typeof s=="string"||s===n||r(n,s)&&o===n.includes?t:o},ay}var uy,NM;function BX(){if(NM)return uy;NM=1;var r=kX();return uy=r,uy}var ly,FM;function jX(){return FM||(FM=1,ly=BX()),ly}var LX=jX(),$i=pe(LX),kM={},BM;function zX(){if(BM)return kM;BM=1;var r=ce(),e=$e(),t=nr(),i=rl(),n=M3(),s=e(function(){i(1)});return r({target:"Object",stat:!0,forced:s,sham:!n},{getPrototypeOf:function(a){return i(t(a))}}),kM}var cy,jM;function HX(){if(jM)return cy;jM=1,zX();var r=Be();return cy=r.Object.getPrototypeOf,cy}var dy,LM;function WX(){if(LM)return dy;LM=1;var r=HX();return dy=r,dy}var hy,zM;function UX(){return zM||(zM=1,hy=WX()),hy}var VX=UX(),HM=pe(VX),fy,WM;function KX(){if(WM)return fy;WM=1,I3();var r=Pt();return fy=r("Array","concat"),fy}var vy,UM;function GX(){if(UM)return vy;UM=1;var r=ht(),e=KX(),t=Array.prototype;return vy=function(i){var n=i.concat;return i===t||r(t,i)&&n===t.concat?e:n},vy}var py,VM;function YX(){if(VM)return py;VM=1;var r=GX();return py=r,py}var gy,KM;function XX(){return KM||(KM=1,gy=YX()),gy}var JX=XX(),QX=pe(JX),GM={},YM;function ZX(){if(YM)return GM;YM=1;var r=ce(),e=Wi().filter,t=va(),i=t("filter");return r({target:"Array",proto:!0,forced:!i},{filter:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),GM}var my,XM;function eJ(){if(XM)return my;XM=1,ZX();var r=Pt();return my=r("Array","filter"),my}var yy,JM;function tJ(){if(JM)return yy;JM=1;var r=ht(),e=eJ(),t=Array.prototype;return yy=function(i){var n=i.filter;return i===t||r(t,i)&&n===t.filter?e:n},yy}var by,QM;function rJ(){if(QM)return by;QM=1;var r=tJ();return by=r,by}var _y,ZM;function iJ(){return ZM||(ZM=1,_y=rJ()),_y}var nJ=iJ(),Vt=pe(nJ),eN={},wy,tN;function sJ(){if(tN)return wy;tN=1;var r=it(),e=$e(),t=Ce(),i=rl(),n=fa(),s=Tr(),o=Uu().f,a=t(o),u=t([].push),l=r&&e(function(){var d=Object.create(null);return d[2]=2,!a(d,2)}),c=function(d){return function(h){for(var f=s(h),v=n(f),p=l&&i(f)===null,b=v.length,m=0,g=[],w;b>m;)w=v[m++],(!r||(p?w in f:a(f,w)))&&u(g,d?[w,f[w]]:f[w]);return g}};return wy={entries:c(!0),values:c(!1)},wy}var rN;function oJ(){if(rN)return eN;rN=1;var r=ce(),e=sJ().values;return r({target:"Object",stat:!0},{values:function(i){return e(i)}}),eN}var Ey,iN;function aJ(){if(iN)return Ey;iN=1,oJ();var r=Be();return Ey=r.Object.values,Ey}var Sy,nN;function uJ(){if(nN)return Sy;nN=1;var r=aJ();return Sy=r,Sy}var Oy,sN;function lJ(){return sN||(sN=1,Oy=uJ()),Oy}var cJ=lJ(),dJ=pe(cJ),oN={},Iy,aN;function a0(){return aN||(aN=1,Iy=` +\v\f\r                 \u2028\u2029\uFEFF`),Iy}var Ty,uN;function B3(){if(uN)return Ty;uN=1;var r=Ce(),e=di(),t=vr(),i=a0(),n=r("".replace),s=RegExp("^["+i+"]+"),o=RegExp("(^|[^"+i+"])["+i+"]+$"),a=function(u){return function(l){var c=t(e(l));return u&1&&(c=n(c,s,"")),u&2&&(c=n(c,o,"$1")),c}};return Ty={start:a(1),end:a(2),trim:a(3)},Ty}var $y,lN;function hJ(){if(lN)return $y;lN=1;var r=Ye(),e=$e(),t=Ce(),i=vr(),n=B3().trim,s=a0(),o=r.parseInt,a=r.Symbol,u=a&&a.iterator,l=/^[+-]?0x/i,c=t(l.exec),d=o(s+"08")!==8||o(s+"0x16")!==22||u&&!e(function(){o(Object(u))});return $y=d?function(f,v){var p=n(i(f));return o(p,v>>>0||(c(l,p)?16:10))}:o,$y}var cN;function fJ(){if(cN)return oN;cN=1;var r=ce(),e=hJ();return r({global:!0,forced:parseInt!==e},{parseInt:e}),oN}var Py,dN;function vJ(){if(dN)return Py;dN=1,fJ();var r=Be();return Py=r.parseInt,Py}var Ry,hN;function pJ(){if(hN)return Ry;hN=1;var r=vJ();return Ry=r,Ry}var Cy,fN;function gJ(){return fN||(fN=1,Cy=pJ()),Cy}var mJ=gJ(),yr=pe(mJ),vN={},pN;function yJ(){if(pN)return vN;pN=1;var r=ce(),e=Vw(),t=Xw().indexOf,i=Vs(),n=e([].indexOf),s=!!n&&1/n([1],1,-0)<0,o=s||!i("indexOf");return r({target:"Array",proto:!0,forced:o},{indexOf:function(u){var l=arguments.length>1?arguments[1]:void 0;return s?n(this,u,l)||0:t(this,u,l)}}),vN}var xy,gN;function bJ(){if(gN)return xy;gN=1,yJ();var r=Pt();return xy=r("Array","indexOf"),xy}var qy,mN;function _J(){if(mN)return qy;mN=1;var r=ht(),e=bJ(),t=Array.prototype;return qy=function(i){var n=i.indexOf;return i===t||r(t,i)&&n===t.indexOf?e:n},qy}var Dy,yN;function wJ(){if(yN)return Dy;yN=1;var r=_J();return Dy=r,Dy}var Ay,bN;function EJ(){return bN||(bN=1,Ay=wJ()),Ay}var SJ=EJ(),Fe=pe(SJ),_N={},wN;function OJ(){if(wN)return _N;wN=1;var r=ce(),e=it(),t=pa();return r({target:"Object",stat:!0,sham:!e},{create:t}),_N}var My,EN;function IJ(){if(EN)return My;EN=1,OJ();var r=Be(),e=r.Object;return My=function(i,n){return e.create(i,n)},My}var Ny,SN;function TJ(){if(SN)return Ny;SN=1;var r=IJ();return Ny=r,Ny}var Fy,ON;function $J(){return ON||(ON=1,Fy=TJ()),Fy}var PJ=$J(),an=pe(PJ),IN={},ky,TN;function RJ(){if(TN)return ky;TN=1;var r=js(),e=vr(),t=di(),i=RangeError;return ky=function(s){var o=e(t(this)),a="",u=r(s);if(u<0||u===1/0)throw new i("Wrong number of repetitions");for(;u>0;(u>>>=1)&&(o+=o))u&1&&(a+=o);return a},ky}var By,$N;function CJ(){if($N)return By;$N=1;var r=Ce(),e=m3(),t=vr(),i=RJ(),n=di(),s=r(i),o=r("".slice),a=Math.ceil,u=function(l){return function(c,d,h){var f=t(n(c)),v=e(d),p=f.length,b=h===void 0?" ":t(h),m,g;return v<=p||b===""?f:(m=v-p,g=s(b,a(m/b.length)),g.length>m&&(g=o(g,0,m)),l?f+g:g+f)}};return By={start:u(!1),end:u(!0)},By}var jy,PN;function xJ(){if(PN)return jy;PN=1;var r=Ce(),e=$e(),t=CJ().start,i=RangeError,n=isFinite,s=Math.abs,o=Date.prototype,a=o.toISOString,u=r(o.getTime),l=r(o.getUTCDate),c=r(o.getUTCFullYear),d=r(o.getUTCHours),h=r(o.getUTCMilliseconds),f=r(o.getUTCMinutes),v=r(o.getUTCMonth),p=r(o.getUTCSeconds);return jy=e(function(){return a.call(new Date(-5e13-1))!=="0385-07-25T07:06:39.999Z"})||!e(function(){a.call(new Date(NaN))})?function(){if(!n(u(this)))throw new i("Invalid time value");var m=this,g=c(m),w=h(m),y=g<0?"-":g>9999?"+":"";return y+t(s(g),y?6:4,0)+"-"+t(v(m)+1,2,0)+"-"+t(l(m),2,0)+"T"+t(d(m),2,0)+":"+t(f(m),2,0)+":"+t(p(m),2,0)+"."+t(w,3,0)+"Z"}:a,jy}var RN;function qJ(){if(RN)return IN;RN=1;var r=ce(),e=Jt(),t=nr(),i=f3(),n=xJ(),s=Lr(),o=$e(),a=o(function(){return new Date(NaN).toJSON()!==null||e(Date.prototype.toJSON,{toISOString:function(){return 1}})!==1});return r({target:"Date",proto:!0,forced:a},{toJSON:function(l){var c=t(this),d=i(c,"number");return typeof d=="number"&&!isFinite(d)?null:!("toISOString"in c)&&s(c)==="Date"?e(n,c):c.toISOString()}}),IN}var Ly,CN;function DJ(){if(CN)return Ly;CN=1,qJ(),R3();var r=Be(),e=Wu();return r.JSON||(r.JSON={stringify:JSON.stringify}),Ly=function(i,n,s){return e(r.JSON.stringify,null,arguments)},Ly}var zy,xN;function AJ(){if(xN)return zy;xN=1;var r=DJ();return zy=r,zy}var Hy,qN;function MJ(){return qN||(qN=1,Hy=AJ()),Hy}var NJ=MJ(),ma=pe(NJ),DN={},AN={},Wy,MN;function j3(){if(MN)return Wy;MN=1;var r=Ye(),e=As(),t=Lr(),i=function(n){return e.slice(0,n.length)===n};return Wy=function(){return i("Bun/")?"BUN":i("Cloudflare-Workers")?"CLOUDFLARE":i("Deno/")?"DENO":i("Node.js/")?"NODE":r.Bun&&typeof Bun.version=="string"?"BUN":r.Deno&&typeof Deno.version=="object"?"DENO":t(r.process)==="process"?"NODE":r.window&&r.document?"BROWSER":"REST"}(),Wy}var Uy,NN;function FJ(){if(NN)return Uy;NN=1;var r=TypeError;return Uy=function(e,t){if(ed,p=t(h)?h:a(h),b=v?s(arguments,d):[],m=v?function(){e(p,this,b)}:p;return c?l(m,f):l(m)}:l},Vy}var kN;function kJ(){if(kN)return AN;kN=1;var r=ce(),e=Ye(),t=L3(),i=t(e.setInterval,!0);return r({global:!0,bind:!0,forced:e.setInterval!==i},{setInterval:i}),AN}var BN={},jN;function BJ(){if(jN)return BN;jN=1;var r=ce(),e=Ye(),t=L3(),i=t(e.setTimeout,!0);return r({global:!0,bind:!0,forced:e.setTimeout!==i},{setTimeout:i}),BN}var LN;function z3(){return LN||(LN=1,kJ(),BJ()),DN}var Ky,zN;function jJ(){if(zN)return Ky;zN=1,z3();var r=Be();return Ky=r.setTimeout,Ky}var Gy,HN;function LJ(){return HN||(HN=1,Gy=jJ()),Gy}var zJ=LJ(),ti=pe(zJ),WN={},Yy,UN;function HJ(){if(UN)return Yy;UN=1;var r=nr(),e=Xu(),t=fi();return Yy=function(n){for(var s=r(this),o=t(s),a=arguments.length,u=e(a>1?arguments[1]:void 0,o),l=a>2?arguments[2]:void 0,c=l===void 0?o:e(l,o);c>u;)s[u++]=n;return s},Yy}var VN;function WJ(){if(VN)return WN;VN=1;var r=ce(),e=HJ(),t=n0();return r({target:"Array",proto:!0},{fill:e}),t("fill"),WN}var Xy,KN;function UJ(){if(KN)return Xy;KN=1,WJ();var r=Pt();return Xy=r("Array","fill"),Xy}var Jy,GN;function VJ(){if(GN)return Jy;GN=1;var r=ht(),e=UJ(),t=Array.prototype;return Jy=function(i){var n=i.fill;return i===t||r(t,i)&&n===t.fill?e:n},Jy}var Qy,YN;function KJ(){if(YN)return Qy;YN=1;var r=VJ();return Qy=r,Qy}var Zy,XN;function GJ(){return XN||(XN=1,Zy=KJ()),Zy}var YJ=GJ(),ya=pe(YJ);/*! Hammer.JS - v2.0.17-rc - 2019-12-16 * http://naver.github.io/egjs * * Forked By Naver egjs * Copyright (c) hammerjs - * Licensed under the MIT license */function Sr(){return Sr=Object.assign||function(r){for(var e=1;e"u"?{style:{}}:document.createElement("div"),XJ="function",Zn=Math.round,gn=Math.abs,u0=Date.now;function il(r,e){for(var t,i,n=e[0].toUpperCase()+e.slice(1),s=0;s"u"?ri={}:ri=window;var L3=il(YJ.style,"touchAction"),z3=L3!==void 0;function JJ(){if(!z3)return!1;var r={},e=ri.CSS&&ri.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach(function(t){return r[t]=e?ri.CSS.supports("touch-action",t):!0}),r}var H3="compute",W3="auto",H_="manipulation",un="none",Fo="pan-x",ko="pan-y",Na=JJ(),QJ=/mobile|tablet|ip(ad|hone|od)|android/i,U3="ontouchstart"in ri,ZJ=il(ri,"PointerEvent")!==void 0,eQ=U3&&QJ.test(navigator.userAgent),ba="touch",tQ="pen",l0="mouse",rQ="kinect",iQ=25,Lt=1,An=2,ut=4,Kt=8,au=1,_a=2,wa=4,Ea=8,ys=16,kr=_a|wa,ln=Ea|ys,V3=kr|ln,K3=["x","y"],uu=["clientX","clientY"];function ii(r,e,t){var i;if(r)if(r.forEach)r.forEach(e,t);else if(r.length!==void 0)for(i=0;i-1}function nQ(r){if(en(r,un))return un;var e=en(r,Fo),t=en(r,ko);return e&&t?un:e||t?e?Fo:ko:en(r,H_)?H_:W3}var G3=function(){function r(t,i){this.manager=t,this.set(i)}var e=r.prototype;return e.set=function(i){i===H3&&(i=this.compute()),z3&&this.manager.element.style&&Na[i]&&(this.manager.element.style[L3]=i),this.actions=i.toLowerCase().trim()},e.update=function(){this.set(this.manager.options.touchAction)},e.compute=function(){var i=[];return ii(this.manager.recognizers,function(n){nl(n.options.enable,[n])&&(i=i.concat(n.getTouchAction()))}),nQ(i.join(" "))},e.preventDefaults=function(i){var n=i.srcEvent,s=i.offsetDirection;if(this.manager.session.prevented){n.preventDefault();return}var o=this.actions,a=en(o,un)&&!Na[un],u=en(o,ko)&&!Na[ko],l=en(o,Fo)&&!Na[Fo];if(a){var c=i.pointers.length===1,d=i.distance<2,h=i.deltaTime<250;if(c&&d&&h)return}if(!(l&&u)&&(a||u&&s&kr||l&&s&ln))return this.preventSrc(n)},e.preventSrc=function(i){this.manager.session.prevented=!0,i.preventDefault()},r}();function c0(r,e){for(;r;){if(r===e)return!0;r=r.parentNode}return!1}function Y3(r){var e=r.length;if(e===1)return{x:Zn(r[0].clientX),y:Zn(r[0].clientY)};for(var t=0,i=0,n=0;n=gn(e)?r<0?_a:wa:e<0?Ea:ys}function sQ(r,e){var t=e.center,i=r.offsetDelta||{},n=r.prevDelta||{},s=r.prevInput||{};(e.eventType===Lt||s.eventType===ut)&&(n=r.prevDelta={x:s.deltaX||0,y:s.deltaY||0},i=r.offsetDelta={x:t.x,y:t.y}),e.deltaX=n.x+(t.x-i.x),e.deltaY=n.y+(t.y-i.y)}function J3(r,e,t){return{x:e/r||0,y:t/r||0}}function oQ(r,e){return lu(e[0],e[1],uu)/lu(r[0],r[1],uu)}function aQ(r,e){return W_(e[1],e[0],uu)+W_(r[1],r[0],uu)}function uQ(r,e){var t=r.lastInterval||e,i=e.timeStamp-t.timeStamp,n,s,o,a;if(e.eventType!==Kt&&(i>iQ||t.velocity===void 0)){var u=e.deltaX-t.deltaX,l=e.deltaY-t.deltaY,c=J3(i,u,l);s=c.x,o=c.y,n=gn(c.x)>gn(c.y)?c.x:c.y,a=X3(u,l),r.lastInterval=e}else n=t.velocity,s=t.velocityX,o=t.velocityY,a=t.direction;e.velocity=n,e.velocityX=s,e.velocityY=o,e.direction=a}function lQ(r,e){var t=r.session,i=e.pointers,n=i.length;t.firstInput||(t.firstInput=QN(e)),n>1&&!t.firstMultiple?t.firstMultiple=QN(e):n===1&&(t.firstMultiple=!1);var s=t.firstInput,o=t.firstMultiple,a=o?o.center:s.center,u=e.center=Y3(i);e.timeStamp=u0(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=W_(a,u),e.distance=lu(a,u),sQ(t,e),e.offsetDirection=X3(e.deltaX,e.deltaY);var l=J3(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=l.x,e.overallVelocityY=l.y,e.overallVelocity=gn(l.x)>gn(l.y)?l.x:l.y,e.scale=o?oQ(o.pointers,i):1,e.rotation=o?aQ(o.pointers,i):0,e.maxPointers=t.prevInput?e.pointers.length>t.prevInput.maxPointers?e.pointers.length:t.prevInput.maxPointers:e.pointers.length,uQ(t,e);var c=r.element,d=e.srcEvent,h;d.composedPath?h=d.composedPath()[0]:d.path?h=d.path[0]:h=d.target,c0(h,c)&&(c=h),e.target=c}function cQ(r,e,t){var i=t.pointers.length,n=t.changedPointers.length,s=e&Lt&&i-n===0,o=e&(ut|Kt)&&i-n===0;t.isFirst=!!s,t.isFinal=!!o,s&&(r.session={}),t.eventType=e,lQ(r,t),r.emit("hammer.input",t),r.recognize(t),r.session.prevInput=t}function Bo(r){return r.trim().split(/\s+/g)}function yo(r,e,t){ii(Bo(e),function(i){r.addEventListener(i,t,!1)})}function bo(r,e,t){ii(Bo(e),function(i){r.removeEventListener(i,t,!1)})}function ZN(r){var e=r.ownerDocument||r;return e.defaultView||e.parentWindow||window}var Ks=function(){function r(t,i){var n=this;this.manager=t,this.callback=i,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(s){nl(t.options.enable,[t])&&n.handler(s)},this.init()}var e=r.prototype;return e.handler=function(){},e.init=function(){this.evEl&&yo(this.element,this.evEl,this.domHandler),this.evTarget&&yo(this.target,this.evTarget,this.domHandler),this.evWin&&yo(ZN(this.element),this.evWin,this.domHandler)},e.destroy=function(){this.evEl&&bo(this.element,this.evEl,this.domHandler),this.evTarget&&bo(this.target,this.evTarget,this.domHandler),this.evWin&&bo(ZN(this.element),this.evWin,this.domHandler)},r}();function mn(r,e,t){if(r.indexOf&&!t)return r.indexOf(e);for(var i=0;iu[e]}):i=i.sort()),i}var fQ={touchstart:Lt,touchmove:An,touchend:ut,touchcancel:Kt},vQ="touchstart touchmove touchend touchcancel",h0=function(r){pr(e,r);function e(){var i;return e.prototype.evTarget=vQ,i=r.apply(this,arguments)||this,i.targetIds={},i}var t=e.prototype;return t.handler=function(n){var s=fQ[n.type],o=pQ.call(this,n,s);o&&this.callback(this.manager,s,{pointers:o[0],changedPointers:o[1],pointerType:ba,srcEvent:n})},e}(Ks);function pQ(r,e){var t=jo(r.touches),i=this.targetIds;if(e&(Lt|An)&&t.length===1)return i[t[0].identifier]=!0,[t,t];var n,s,o=jo(r.changedTouches),a=[],u=this.target;if(s=t.filter(function(l){return c0(l.target,u)}),e===Lt)for(n=0;n-1&&n.splice(a,1)};setTimeout(s,bQ)}}function _Q(r,e){r&Lt?(this.primaryTouch=e.changedPointers[0].identifier,tF.call(this,e)):r&(ut|Kt)&&tF.call(this,e)}function wQ(r){for(var e=r.srcEvent.clientX,t=r.srcEvent.clientY,i=0;i-1&&this.requireFail.splice(n,1),this},e.hasRequireFailures=function(){return this.requireFail.length>0},e.canRecognizeWith=function(i){return!!this.simultaneous[i.id]},e.emit=function(i){var n=this,s=this.state;function o(a){n.manager.emit(a,i)}s<$i&&o(n.options.event+rF(s)),o(n.options.event),i.additionalEvent&&o(i.additionalEvent),s>=$i&&o(n.options.event+rF(s))},e.tryEmit=function(i){if(this.canEmit())return this.emit(i);this.state=Ar},e.canEmit=function(){for(var i=0;is.threshold&&u&s.direction},t.attrTest=function(n){return _s.prototype.attrTest.call(this,n)&&(this.state&cr||!(this.state&cr)&&this.directionTest(n))},t.emit=function(n){this.pX=n.deltaX,this.pY=n.deltaY;var s=r5(n.direction);s&&(n.additionalEvent=this.options.event+s),r.prototype.emit.call(this,n)},e}(_s),i5=function(r){pr(e,r);function e(i){return i===void 0&&(i={}),r.call(this,Sr({event:"swipe",threshold:10,velocity:.3,direction:kr|ln,pointers:1},i))||this}var t=e.prototype;return t.getTouchAction=function(){return v0.prototype.getTouchAction.call(this)},t.attrTest=function(n){var s=this.options.direction,o;return s&(kr|ln)?o=n.overallVelocity:s&kr?o=n.overallVelocityX:s&ln&&(o=n.overallVelocityY),r.prototype.attrTest.call(this,n)&&s&n.offsetDirection&&n.distance>this.options.threshold&&n.maxPointers===this.options.pointers&&gn(o)>this.options.velocity&&n.eventType&ut},t.emit=function(n){var s=r5(n.offsetDirection);s&&this.manager.emit(this.options.event+s,n),this.manager.emit(this.options.event,n)},e}(_s),n5=function(r){pr(e,r);function e(i){return i===void 0&&(i={}),r.call(this,Sr({event:"pinch",threshold:0,pointers:2},i))||this}var t=e.prototype;return t.getTouchAction=function(){return[un]},t.attrTest=function(n){return r.prototype.attrTest.call(this,n)&&(Math.abs(n.scale-1)>this.options.threshold||this.state&cr)},t.emit=function(n){if(n.scale!==1){var s=n.scale<1?"in":"out";n.additionalEvent=this.options.event+s}r.prototype.emit.call(this,n)},e}(_s),s5=function(r){pr(e,r);function e(i){return i===void 0&&(i={}),r.call(this,Sr({event:"rotate",threshold:0,pointers:2},i))||this}var t=e.prototype;return t.getTouchAction=function(){return[un]},t.attrTest=function(n){return r.prototype.attrTest.call(this,n)&&(Math.abs(n.rotation)>this.options.threshold||this.state&cr)},e}(_s),o5=function(r){pr(e,r);function e(i){var n;return i===void 0&&(i={}),n=r.call(this,Sr({event:"press",pointers:1,time:251,threshold:9},i))||this,n._timer=null,n._input=null,n}var t=e.prototype;return t.getTouchAction=function(){return[W3]},t.process=function(n){var s=this,o=this.options,a=n.pointers.length===o.pointers,u=n.distanceo.time;if(this._input=n,!u||!a||n.eventType&(ut|Kt)&&!l)this.reset();else if(n.eventType&Lt)this.reset(),this._timer=setTimeout(function(){s.state=ni,s.tryEmit()},o.time);else if(n.eventType&ut)return ni;return Ar},t.reset=function(){clearTimeout(this._timer)},t.emit=function(n){this.state===ni&&(n&&n.eventType&ut?this.manager.emit(this.options.event+"up",n):(this._input.timeStamp=u0(),this.manager.emit(this.options.event,this._input)))},e}(Sa),a5={domEvents:!1,touchAction:H3,enable:!0,inputTarget:null,inputClass:null,cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},iF=[[s5,{enable:!1}],[n5,{enable:!1},["rotate"]],[i5,{direction:kr}],[v0,{direction:kr},["swipe"]],[U_],[U_,{event:"doubletap",taps:2},["tap"]],[o5]],IQ=1,nF=2;function sF(r,e){var t=r.element;if(t.style){var i;ii(r.options.cssProps,function(n,s){i=il(t.style,s),e?(r.oldCssProps[i]=t.style[i],t.style[i]=n):t.style[i]=r.oldCssProps[i]||""}),e||(r.oldCssProps={})}}function TQ(r,e){var t=document.createEvent("Event");t.initEvent(r,!0,!0),t.gesture=e,e.target.dispatchEvent(t)}var oF=function(){function r(t,i){var n=this;this.options=pn({},a5,i||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=EQ(this),this.touchAction=new G3(this,this.options.touchAction),sF(this,!0),ii(this.options.recognizers,function(s){var o=n.add(new s[0](s[1]));s[2]&&o.recognizeWith(s[2]),s[3]&&o.requireFailure(s[3])},this)}var e=r.prototype;return e.set=function(i){return pn(this.options,i),i.touchAction&&this.touchAction.update(),i.inputTarget&&(this.input.destroy(),this.input.target=i.inputTarget,this.input.init()),this},e.stop=function(i){this.session.stopped=i?nF:IQ},e.recognize=function(i){var n=this.session;if(!n.stopped){this.touchAction.preventDefaults(i);var s,o=this.recognizers,a=n.curRecognizer;(!a||a&&a.state&ni)&&(n.curRecognizer=null,a=null);for(var u=0;u"u"?{style:{}}:document.createElement("div"),JJ="function",Zn=Math.round,gn=Math.abs,u0=Date.now;function il(r,e){for(var t,i,n=e[0].toUpperCase()+e.slice(1),s=0;s"u"?ri={}:ri=window;var H3=il(XJ.style,"touchAction"),W3=H3!==void 0;function QJ(){if(!W3)return!1;var r={},e=ri.CSS&&ri.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach(function(t){return r[t]=e?ri.CSS.supports("touch-action",t):!0}),r}var U3="compute",V3="auto",H_="manipulation",un="none",Fo="pan-x",ko="pan-y",Na=QJ(),ZJ=/mobile|tablet|ip(ad|hone|od)|android/i,K3="ontouchstart"in ri,eQ=il(ri,"PointerEvent")!==void 0,tQ=K3&&ZJ.test(navigator.userAgent),ba="touch",rQ="pen",l0="mouse",iQ="kinect",nQ=25,zt=1,An=2,ut=4,Gt=8,au=1,_a=2,wa=4,Ea=8,ys=16,kr=_a|wa,ln=Ea|ys,G3=kr|ln,Y3=["x","y"],uu=["clientX","clientY"];function ii(r,e,t){var i;if(r)if(r.forEach)r.forEach(e,t);else if(r.length!==void 0)for(i=0;i-1}function sQ(r){if(en(r,un))return un;var e=en(r,Fo),t=en(r,ko);return e&&t?un:e||t?e?Fo:ko:en(r,H_)?H_:V3}var X3=function(){function r(t,i){this.manager=t,this.set(i)}var e=r.prototype;return e.set=function(i){i===U3&&(i=this.compute()),W3&&this.manager.element.style&&Na[i]&&(this.manager.element.style[H3]=i),this.actions=i.toLowerCase().trim()},e.update=function(){this.set(this.manager.options.touchAction)},e.compute=function(){var i=[];return ii(this.manager.recognizers,function(n){nl(n.options.enable,[n])&&(i=i.concat(n.getTouchAction()))}),sQ(i.join(" "))},e.preventDefaults=function(i){var n=i.srcEvent,s=i.offsetDirection;if(this.manager.session.prevented){n.preventDefault();return}var o=this.actions,a=en(o,un)&&!Na[un],u=en(o,ko)&&!Na[ko],l=en(o,Fo)&&!Na[Fo];if(a){var c=i.pointers.length===1,d=i.distance<2,h=i.deltaTime<250;if(c&&d&&h)return}if(!(l&&u)&&(a||u&&s&kr||l&&s&ln))return this.preventSrc(n)},e.preventSrc=function(i){this.manager.session.prevented=!0,i.preventDefault()},r}();function c0(r,e){for(;r;){if(r===e)return!0;r=r.parentNode}return!1}function J3(r){var e=r.length;if(e===1)return{x:Zn(r[0].clientX),y:Zn(r[0].clientY)};for(var t=0,i=0,n=0;n=gn(e)?r<0?_a:wa:e<0?Ea:ys}function oQ(r,e){var t=e.center,i=r.offsetDelta||{},n=r.prevDelta||{},s=r.prevInput||{};(e.eventType===zt||s.eventType===ut)&&(n=r.prevDelta={x:s.deltaX||0,y:s.deltaY||0},i=r.offsetDelta={x:t.x,y:t.y}),e.deltaX=n.x+(t.x-i.x),e.deltaY=n.y+(t.y-i.y)}function Z3(r,e,t){return{x:e/r||0,y:t/r||0}}function aQ(r,e){return lu(e[0],e[1],uu)/lu(r[0],r[1],uu)}function uQ(r,e){return W_(e[1],e[0],uu)+W_(r[1],r[0],uu)}function lQ(r,e){var t=r.lastInterval||e,i=e.timeStamp-t.timeStamp,n,s,o,a;if(e.eventType!==Gt&&(i>nQ||t.velocity===void 0)){var u=e.deltaX-t.deltaX,l=e.deltaY-t.deltaY,c=Z3(i,u,l);s=c.x,o=c.y,n=gn(c.x)>gn(c.y)?c.x:c.y,a=Q3(u,l),r.lastInterval=e}else n=t.velocity,s=t.velocityX,o=t.velocityY,a=t.direction;e.velocity=n,e.velocityX=s,e.velocityY=o,e.direction=a}function cQ(r,e){var t=r.session,i=e.pointers,n=i.length;t.firstInput||(t.firstInput=QN(e)),n>1&&!t.firstMultiple?t.firstMultiple=QN(e):n===1&&(t.firstMultiple=!1);var s=t.firstInput,o=t.firstMultiple,a=o?o.center:s.center,u=e.center=J3(i);e.timeStamp=u0(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=W_(a,u),e.distance=lu(a,u),oQ(t,e),e.offsetDirection=Q3(e.deltaX,e.deltaY);var l=Z3(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=l.x,e.overallVelocityY=l.y,e.overallVelocity=gn(l.x)>gn(l.y)?l.x:l.y,e.scale=o?aQ(o.pointers,i):1,e.rotation=o?uQ(o.pointers,i):0,e.maxPointers=t.prevInput?e.pointers.length>t.prevInput.maxPointers?e.pointers.length:t.prevInput.maxPointers:e.pointers.length,lQ(t,e);var c=r.element,d=e.srcEvent,h;d.composedPath?h=d.composedPath()[0]:d.path?h=d.path[0]:h=d.target,c0(h,c)&&(c=h),e.target=c}function dQ(r,e,t){var i=t.pointers.length,n=t.changedPointers.length,s=e&zt&&i-n===0,o=e&(ut|Gt)&&i-n===0;t.isFirst=!!s,t.isFinal=!!o,s&&(r.session={}),t.eventType=e,cQ(r,t),r.emit("hammer.input",t),r.recognize(t),r.session.prevInput=t}function Bo(r){return r.trim().split(/\s+/g)}function yo(r,e,t){ii(Bo(e),function(i){r.addEventListener(i,t,!1)})}function bo(r,e,t){ii(Bo(e),function(i){r.removeEventListener(i,t,!1)})}function ZN(r){var e=r.ownerDocument||r;return e.defaultView||e.parentWindow||window}var Ks=function(){function r(t,i){var n=this;this.manager=t,this.callback=i,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(s){nl(t.options.enable,[t])&&n.handler(s)},this.init()}var e=r.prototype;return e.handler=function(){},e.init=function(){this.evEl&&yo(this.element,this.evEl,this.domHandler),this.evTarget&&yo(this.target,this.evTarget,this.domHandler),this.evWin&&yo(ZN(this.element),this.evWin,this.domHandler)},e.destroy=function(){this.evEl&&bo(this.element,this.evEl,this.domHandler),this.evTarget&&bo(this.target,this.evTarget,this.domHandler),this.evWin&&bo(ZN(this.element),this.evWin,this.domHandler)},r}();function mn(r,e,t){if(r.indexOf&&!t)return r.indexOf(e);for(var i=0;iu[e]}):i=i.sort()),i}var vQ={touchstart:zt,touchmove:An,touchend:ut,touchcancel:Gt},pQ="touchstart touchmove touchend touchcancel",h0=function(r){pr(e,r);function e(){var i;return e.prototype.evTarget=pQ,i=r.apply(this,arguments)||this,i.targetIds={},i}var t=e.prototype;return t.handler=function(n){var s=vQ[n.type],o=gQ.call(this,n,s);o&&this.callback(this.manager,s,{pointers:o[0],changedPointers:o[1],pointerType:ba,srcEvent:n})},e}(Ks);function gQ(r,e){var t=jo(r.touches),i=this.targetIds;if(e&(zt|An)&&t.length===1)return i[t[0].identifier]=!0,[t,t];var n,s,o=jo(r.changedTouches),a=[],u=this.target;if(s=t.filter(function(l){return c0(l.target,u)}),e===zt)for(n=0;n-1&&n.splice(a,1)};setTimeout(s,_Q)}}function wQ(r,e){r&zt?(this.primaryTouch=e.changedPointers[0].identifier,tF.call(this,e)):r&(ut|Gt)&&tF.call(this,e)}function EQ(r){for(var e=r.srcEvent.clientX,t=r.srcEvent.clientY,i=0;i-1&&this.requireFail.splice(n,1),this},e.hasRequireFailures=function(){return this.requireFail.length>0},e.canRecognizeWith=function(i){return!!this.simultaneous[i.id]},e.emit=function(i){var n=this,s=this.state;function o(a){n.manager.emit(a,i)}s=Pi&&o(n.options.event+rF(s))},e.tryEmit=function(i){if(this.canEmit())return this.emit(i);this.state=Ar},e.canEmit=function(){for(var i=0;is.threshold&&u&s.direction},t.attrTest=function(n){return _s.prototype.attrTest.call(this,n)&&(this.state&cr||!(this.state&cr)&&this.directionTest(n))},t.emit=function(n){this.pX=n.deltaX,this.pY=n.deltaY;var s=n5(n.direction);s&&(n.additionalEvent=this.options.event+s),r.prototype.emit.call(this,n)},e}(_s),s5=function(r){pr(e,r);function e(i){return i===void 0&&(i={}),r.call(this,Sr({event:"swipe",threshold:10,velocity:.3,direction:kr|ln,pointers:1},i))||this}var t=e.prototype;return t.getTouchAction=function(){return v0.prototype.getTouchAction.call(this)},t.attrTest=function(n){var s=this.options.direction,o;return s&(kr|ln)?o=n.overallVelocity:s&kr?o=n.overallVelocityX:s&ln&&(o=n.overallVelocityY),r.prototype.attrTest.call(this,n)&&s&n.offsetDirection&&n.distance>this.options.threshold&&n.maxPointers===this.options.pointers&&gn(o)>this.options.velocity&&n.eventType&ut},t.emit=function(n){var s=n5(n.offsetDirection);s&&this.manager.emit(this.options.event+s,n),this.manager.emit(this.options.event,n)},e}(_s),o5=function(r){pr(e,r);function e(i){return i===void 0&&(i={}),r.call(this,Sr({event:"pinch",threshold:0,pointers:2},i))||this}var t=e.prototype;return t.getTouchAction=function(){return[un]},t.attrTest=function(n){return r.prototype.attrTest.call(this,n)&&(Math.abs(n.scale-1)>this.options.threshold||this.state&cr)},t.emit=function(n){if(n.scale!==1){var s=n.scale<1?"in":"out";n.additionalEvent=this.options.event+s}r.prototype.emit.call(this,n)},e}(_s),a5=function(r){pr(e,r);function e(i){return i===void 0&&(i={}),r.call(this,Sr({event:"rotate",threshold:0,pointers:2},i))||this}var t=e.prototype;return t.getTouchAction=function(){return[un]},t.attrTest=function(n){return r.prototype.attrTest.call(this,n)&&(Math.abs(n.rotation)>this.options.threshold||this.state&cr)},e}(_s),u5=function(r){pr(e,r);function e(i){var n;return i===void 0&&(i={}),n=r.call(this,Sr({event:"press",pointers:1,time:251,threshold:9},i))||this,n._timer=null,n._input=null,n}var t=e.prototype;return t.getTouchAction=function(){return[V3]},t.process=function(n){var s=this,o=this.options,a=n.pointers.length===o.pointers,u=n.distanceo.time;if(this._input=n,!u||!a||n.eventType&(ut|Gt)&&!l)this.reset();else if(n.eventType&zt)this.reset(),this._timer=setTimeout(function(){s.state=ni,s.tryEmit()},o.time);else if(n.eventType&ut)return ni;return Ar},t.reset=function(){clearTimeout(this._timer)},t.emit=function(n){this.state===ni&&(n&&n.eventType&ut?this.manager.emit(this.options.event+"up",n):(this._input.timeStamp=u0(),this.manager.emit(this.options.event,this._input)))},e}(Sa),l5={domEvents:!1,touchAction:U3,enable:!0,inputTarget:null,inputClass:null,cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},iF=[[a5,{enable:!1}],[o5,{enable:!1},["rotate"]],[s5,{direction:kr}],[v0,{direction:kr},["swipe"]],[U_],[U_,{event:"doubletap",taps:2},["tap"]],[u5]],TQ=1,nF=2;function sF(r,e){var t=r.element;if(t.style){var i;ii(r.options.cssProps,function(n,s){i=il(t.style,s),e?(r.oldCssProps[i]=t.style[i],t.style[i]=n):t.style[i]=r.oldCssProps[i]||""}),e||(r.oldCssProps={})}}function $Q(r,e){var t=document.createEvent("Event");t.initEvent(r,!0,!0),t.gesture=e,e.target.dispatchEvent(t)}var oF=function(){function r(t,i){var n=this;this.options=pn({},l5,i||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=SQ(this),this.touchAction=new X3(this,this.options.touchAction),sF(this,!0),ii(this.options.recognizers,function(s){var o=n.add(new s[0](s[1]));s[2]&&o.recognizeWith(s[2]),s[3]&&o.requireFailure(s[3])},this)}var e=r.prototype;return e.set=function(i){return pn(this.options,i),i.touchAction&&this.touchAction.update(),i.inputTarget&&(this.input.destroy(),this.input.target=i.inputTarget,this.input.init()),this},e.stop=function(i){this.session.stopped=i?nF:TQ},e.recognize=function(i){var n=this.session;if(!n.stopped){this.touchAction.preventDefaults(i);var s,o=this.recognizers,a=n.curRecognizer;(!a||a&&a.state&ni)&&(n.curRecognizer=null,a=null);for(var u=0;u\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",o=window.console&&(window.console.warn||window.console.log);return o&&o.call(window.console,i,s),r.apply(this,arguments)}}var l5=u5(function(r,e,t){for(var i=Object.keys(e),n=0;n{const o=2091639*e+n*23283064365386963e-26;return e=t,t=i,i=o-(n=o|0)};return s.uint32=()=>s()*4294967296,s.fract53=()=>s()+(s()*2097152|0)*11102230246251565e-32,s.algorithm="Alea",s.seed=r,s.version="0.9",s}function MQ(){const r=NQ();let e=r(" "),t=r(" "),i=r(" ");for(let n=0;n>>0,n-=r,n*=r,r=n>>>0,n-=r,r+=n*4294967296}return(r>>>0)*23283064365386963e-26}}function FQ(){const r=()=>{};return{on:r,off:r,destroy:r,emit:r,get(){return{set:r}}}}const p0=typeof window<"u"?window.Hammer||c5:function(){return FQ()};function Mr(r){var e;this._cleanupQueue=[],this.active=!1,this._dom={container:r,overlay:document.createElement("div")},this._dom.overlay.classList.add("vis-overlay"),this._dom.container.appendChild(this._dom.overlay),this._cleanupQueue.push(()=>{this._dom.overlay.parentNode.removeChild(this._dom.overlay)});const t=p0(this._dom.overlay);t.on("tap",z(e=this._onTapOverlay).call(e,this)),this._cleanupQueue.push(()=>{t.destroy()});const i=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];Le(i).call(i,n=>{t.on(n,s=>{s.srcEvent.stopPropagation()})}),document&&document.body&&(this._onClick=n=>{kQ(n.target,r)||this.deactivate()},document.body.addEventListener("click",this._onClick),this._cleanupQueue.push(()=>{document.body.removeEventListener("click",this._onClick)})),this._escListener=n=>{("key"in n?n.key==="Escape":n.keyCode===27)&&this.deactivate()}}_3(Mr.prototype);Mr.current=null;Mr.prototype.destroy=function(){this.deactivate();for(const t of on(r=ei(e=this._cleanupQueue).call(e,0)).call(r)){var r,e;t()}};Mr.prototype.activate=function(){Mr.current&&Mr.current.deactivate(),Mr.current=this,this.active=!0,this._dom.overlay.style.display="none",this._dom.container.classList.add("vis-active"),this.emit("change"),this.emit("activate"),document.body.addEventListener("keydown",this._escListener)};Mr.prototype.deactivate=function(){this.active=!1,this._dom.overlay.style.display="block",this._dom.container.classList.remove("vis-active"),document.body.removeEventListener("keydown",this._escListener),this.emit("change"),this.emit("deactivate")};Mr.prototype._onTapOverlay=function(r){this.activate(),r.srcEvent.stopPropagation()};function kQ(r,e){for(;r;){if(r===e)return!0;r=r.parentNode}return!1}const BQ=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,jQ=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,LQ=/^rgb\( *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *(1?\d{1,2}|2[0-4]\d|25[0-5]) *\)$/i,zQ=/^rgba\( *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *([01]|0?\.\d+) *\)$/i;function bi(r){if(r)for(;r.hasChildNodes()===!0;){const e=r.firstChild;e&&(bi(e),r.removeChild(e))}}function as(r){return r instanceof String||typeof r=="string"}function uF(r){return typeof r=="object"&&r!==null}function yn(r,e,t,i){let n=!1;i===!0&&(n=e[t]===null&&r[t]!==void 0),n?delete r[t]:r[t]=e[t]}function d5(r,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;for(const i in r)if(e[i]!==void 0)if(e[i]===null||typeof e[i]!="object")yn(r,e,i,t);else{const n=r[i],s=e[i];uF(n)&&uF(s)&&d5(n,s,t)}}function Gs(r,e,t){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(tt(t))throw new TypeError("Arrays are not supported by deepExtend");for(let n=0;n3&&arguments[3]!==void 0?arguments[3]:!1;if(tt(t))throw new TypeError("Arrays are not supported by deepExtend");for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&!Ti(r).call(r,n))if(t[n]&&t[n].constructor===Object)e[n]===void 0&&(e[n]={}),e[n].constructor===Object?Ue(e[n],t[n]):yn(e,t,n,i);else if(tt(t[n])){e[n]=[];for(let s=0;s2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;for(const s in e)if(Object.prototype.hasOwnProperty.call(e,s)||t===!0)if(typeof e[s]=="object"&&e[s]!==null&&HM(e[s])===Object.prototype)r[s]===void 0?r[s]=Ue({},e[s],t):typeof r[s]=="object"&&r[s]!==null&&HM(r[s])===Object.prototype?Ue(r[s],e[s],t):yn(r,e,s,i);else if(tt(e[s])){var n;r[s]=qr(n=e[s]).call(n)}else yn(r,e,s,i);return r}function du(r,e){return[...r,e]}function HQ(r){return qr(r).call(r)}function WQ(r){return r.getBoundingClientRect().left}function UQ(r){return r.getBoundingClientRect().top}function Ie(r,e){if(tt(r)){const t=r.length;for(let i=0;i3&&arguments[3]!==void 0?arguments[3]:{};const n=function(f){return f!=null},s=function(f){return f!==null&&typeof f=="object"},o=function(f){for(const v in f)if(Object.prototype.hasOwnProperty.call(f,v))return!1;return!0};if(!s(r))throw new Error("Parameter mergeTarget must be an object");if(!s(e))throw new Error("Parameter options must be an object");if(!n(t))throw new Error("Parameter option must have a value");if(!s(i))throw new Error("Parameter globalOptions must be an object");const a=function(f,v,p){s(f[p])||(f[p]={});const b=v[p],m=f[p];for(const g in b)Object.prototype.hasOwnProperty.call(b,g)&&(m[g]=b[g])},u=e[t],c=s(i)&&!o(i)?i[t]:void 0,d=c?c.enabled:void 0;if(u===void 0)return;if(typeof u=="boolean"){s(r[t])||(r[t]={}),r[t].enabled=u;return}if(u===null&&!s(r[t]))if(n(c))r[t]=an(c);else return;if(!s(u))return;let h=!0;u.enabled!==void 0?h=u.enabled:d!==void 0&&(h=c.enabled),a(r,e,t),r[t].enabled=h}const GQ={linear(r){return r},easeInQuad(r){return r*r},easeOutQuad(r){return r*(2-r)},easeInOutQuad(r){return r<.5?2*r*r:-1+(4-2*r)*r},easeInCubic(r){return r*r*r},easeOutCubic(r){return--r*r*r+1},easeInOutCubic(r){return r<.5?4*r*r*r:(r-1)*(2*r-2)*(2*r-2)+1},easeInQuart(r){return r*r*r*r},easeOutQuart(r){return 1- --r*r*r*r},easeInOutQuart(r){return r<.5?8*r*r*r*r:1-8*--r*r*r*r},easeInQuint(r){return r*r*r*r*r},easeOutQuint(r){return 1+--r*r*r*r*r},easeInOutQuint(r){return r<.5?16*r*r*r*r*r:1+16*--r*r*r*r*r}};function _i(r,e){let t;tt(e)||(e=[e]);for(const i of r)if(i){t=i[e[0]];for(let n=1;n0&&arguments[0]!==void 0?arguments[0]:1;this.pixelRatio=e,this.generated=!1,this.centerCoordinates={x:289/2,y:289/2},this.r=289*.49,this.color={r:255,g:255,b:255,a:1},this.hueCircle=void 0,this.initialColor={r:255,g:255,b:255,a:1},this.previousColor=void 0,this.applied=!1,this.updateCallback=()=>{},this.closeCallback=()=>{},this._create()}insertTo(e){this.hammer!==void 0&&(this.hammer.destroy(),this.hammer=void 0),this.container=e,this.container.appendChild(this.frame),this._bindHammer(),this._setSize()}setUpdateCallback(e){if(typeof e=="function")this.updateCallback=e;else throw new Error("Function attempted to set as colorPicker update callback is not a function.")}setCloseCallback(e){if(typeof e=="function")this.closeCallback=e;else throw new Error("Function attempted to set as colorPicker closing callback is not a function.")}_isColorString(e){if(typeof e=="string")return YQ[e]}setColor(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e==="none")return;let i;const n=this._isColorString(e);if(n!==void 0&&(e=n),as(e)===!0){if(v5(e)===!0){const s=e.substr(4).substr(0,e.length-5).split(",");i={r:s[0],g:s[1],b:s[2],a:1}}else if(KQ(e)===!0){const s=e.substr(5).substr(0,e.length-6).split(",");i={r:s[0],g:s[1],b:s[2],a:s[3]}}else if(f5(e)===!0){const s=g0(e);i={r:s.r,g:s.g,b:s.b,a:1}}}else if(e instanceof Object&&e.r!==void 0&&e.g!==void 0&&e.b!==void 0){const s=e.a!==void 0?e.a:"1.0";i={r:e.r,g:e.g,b:e.b,a:s}}if(i===void 0)throw new Error("Unknown color passed to the colorPicker. Supported are strings: rgb, hex, rgba. Object: rgb ({r:r,g:g,b:b,[a:a]}). Supplied: "+ma(e));this._setColor(i,t)}show(){this.closeCallback!==void 0&&(this.closeCallback(),this.closeCallback=void 0),this.applied=!1,this.frame.style.display="block",this._generateHueCircle()}_hide(){(arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0)===!0&&(this.previousColor=at({},this.color)),this.applied===!0&&this.updateCallback(this.initialColor),this.frame.style.display="none",ti(()=>{this.closeCallback!==void 0&&(this.closeCallback(),this.closeCallback=void 0)},0)}_save(){this.updateCallback(this.color),this.applied=!1,this._hide()}_apply(){this.applied=!0,this.updateCallback(this.color),this._updatePicker(this.color)}_loadLast(){this.previousColor!==void 0?this.setColor(this.previousColor,!1):alert("There is no last color to load...")}_setColor(e){(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0)===!0&&(this.initialColor=at({},e)),this.color=e;const i=so(e.r,e.g,e.b),n=2*Math.PI,s=this.r*i.s,o=this.centerCoordinates.x+s*Math.sin(n*i.h),a=this.centerCoordinates.y+s*Math.cos(n*i.h);this.colorPickerSelector.style.left=o-.5*this.colorPickerSelector.clientWidth+"px",this.colorPickerSelector.style.top=a-.5*this.colorPickerSelector.clientHeight+"px",this._updatePicker(e)}_setOpacity(e){this.color.a=e/100,this._updatePicker(this.color)}_setBrightness(e){const t=so(this.color.r,this.color.g,this.color.b);t.v=e/100;const i=Va(t.h,t.s,t.v);i.a=this.color.a,this.color=i,this._updatePicker()}_updatePicker(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.color;const t=so(e.r,e.g,e.b),i=this.colorPickerCanvas.getContext("2d");this.pixelRation===void 0&&(this.pixelRatio=(window.devicePixelRatio||1)/(i.webkitBackingStorePixelRatio||i.mozBackingStorePixelRatio||i.msBackingStorePixelRatio||i.oBackingStorePixelRatio||i.backingStorePixelRatio||1)),i.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);const n=this.colorPickerCanvas.clientWidth,s=this.colorPickerCanvas.clientHeight;i.clearRect(0,0,n,s),i.putImageData(this.hueCircle,0,0),i.fillStyle="rgba(0,0,0,"+(1-t.v)+")",i.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r),ya(i).call(i),this.brightnessRange.value=100*t.v,this.opacityRange.value=100*e.a,this.initialColorDiv.style.backgroundColor="rgba("+this.initialColor.r+","+this.initialColor.g+","+this.initialColor.b+","+this.initialColor.a+")",this.newColorDiv.style.backgroundColor="rgba("+this.color.r+","+this.color.g+","+this.color.b+","+this.color.a+")"}_setSize(){this.colorPickerCanvas.style.width="100%",this.colorPickerCanvas.style.height="100%",this.colorPickerCanvas.width=289*this.pixelRatio,this.colorPickerCanvas.height=289*this.pixelRatio}_create(){var e,t,i,n;if(this.frame=document.createElement("div"),this.frame.className="vis-color-picker",this.colorPickerDiv=document.createElement("div"),this.colorPickerSelector=document.createElement("div"),this.colorPickerSelector.className="vis-selector",this.colorPickerDiv.appendChild(this.colorPickerSelector),this.colorPickerCanvas=document.createElement("canvas"),this.colorPickerDiv.appendChild(this.colorPickerCanvas),this.colorPickerCanvas.getContext){const o=this.colorPickerCanvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(o.webkitBackingStorePixelRatio||o.mozBackingStorePixelRatio||o.msBackingStorePixelRatio||o.oBackingStorePixelRatio||o.backingStorePixelRatio||1),this.colorPickerCanvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{const o=document.createElement("DIV");o.style.color="red",o.style.fontWeight="bold",o.style.padding="10px",o.innerText="Error: your browser does not support HTML canvas",this.colorPickerCanvas.appendChild(o)}this.colorPickerDiv.className="vis-color",this.opacityDiv=document.createElement("div"),this.opacityDiv.className="vis-opacity",this.brightnessDiv=document.createElement("div"),this.brightnessDiv.className="vis-brightness",this.arrowDiv=document.createElement("div"),this.arrowDiv.className="vis-arrow",this.opacityRange=document.createElement("input");try{this.opacityRange.type="range",this.opacityRange.min="0",this.opacityRange.max="100"}catch{}this.opacityRange.value="100",this.opacityRange.className="vis-range",this.brightnessRange=document.createElement("input");try{this.brightnessRange.type="range",this.brightnessRange.min="0",this.brightnessRange.max="100"}catch{}this.brightnessRange.value="100",this.brightnessRange.className="vis-range",this.opacityDiv.appendChild(this.opacityRange),this.brightnessDiv.appendChild(this.brightnessRange);const s=this;this.opacityRange.onchange=function(){s._setOpacity(this.value)},this.opacityRange.oninput=function(){s._setOpacity(this.value)},this.brightnessRange.onchange=function(){s._setBrightness(this.value)},this.brightnessRange.oninput=function(){s._setBrightness(this.value)},this.brightnessLabel=document.createElement("div"),this.brightnessLabel.className="vis-label vis-brightness",this.brightnessLabel.innerText="brightness:",this.opacityLabel=document.createElement("div"),this.opacityLabel.className="vis-label vis-opacity",this.opacityLabel.innerText="opacity:",this.newColorDiv=document.createElement("div"),this.newColorDiv.className="vis-new-color",this.newColorDiv.innerText="new",this.initialColorDiv=document.createElement("div"),this.initialColorDiv.className="vis-initial-color",this.initialColorDiv.innerText="initial",this.cancelButton=document.createElement("div"),this.cancelButton.className="vis-button vis-cancel",this.cancelButton.innerText="cancel",this.cancelButton.onclick=z(e=this._hide).call(e,this,!1),this.applyButton=document.createElement("div"),this.applyButton.className="vis-button vis-apply",this.applyButton.innerText="apply",this.applyButton.onclick=z(t=this._apply).call(t,this),this.saveButton=document.createElement("div"),this.saveButton.className="vis-button vis-save",this.saveButton.innerText="save",this.saveButton.onclick=z(i=this._save).call(i,this),this.loadButton=document.createElement("div"),this.loadButton.className="vis-button vis-load",this.loadButton.innerText="load last",this.loadButton.onclick=z(n=this._loadLast).call(n,this),this.frame.appendChild(this.colorPickerDiv),this.frame.appendChild(this.arrowDiv),this.frame.appendChild(this.brightnessLabel),this.frame.appendChild(this.brightnessDiv),this.frame.appendChild(this.opacityLabel),this.frame.appendChild(this.opacityDiv),this.frame.appendChild(this.newColorDiv),this.frame.appendChild(this.initialColorDiv),this.frame.appendChild(this.cancelButton),this.frame.appendChild(this.applyButton),this.frame.appendChild(this.saveButton),this.frame.appendChild(this.loadButton)}_bindHammer(){this.drag={},this.pinch={},this.hammer=new p0(this.colorPickerCanvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.on("hammer.input",e=>{e.isFirst&&this._moveSelector(e)}),this.hammer.on("tap",e=>{this._moveSelector(e)}),this.hammer.on("panstart",e=>{this._moveSelector(e)}),this.hammer.on("panmove",e=>{this._moveSelector(e)}),this.hammer.on("panend",e=>{this._moveSelector(e)})}_generateHueCircle(){if(this.generated===!1){const e=this.colorPickerCanvas.getContext("2d");this.pixelRation===void 0&&(this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);const t=this.colorPickerCanvas.clientWidth,i=this.colorPickerCanvas.clientHeight;e.clearRect(0,0,t,i);let n,s,o,a;this.centerCoordinates={x:t*.5,y:i*.5},this.r=.49*t;const u=2*Math.PI/360,l=1/360,c=1/this.r;let d;for(o=0;o<360;o++)for(a=0;a3&&arguments[3]!==void 0?arguments[3]:1,s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:()=>!1;this.parent=e,this.changedOptions=[],this.container=t,this.allowCreation=!1,this.hideOption=s,this.options={},this.initialized=!1,this.popupCounter=0,this.defaultOptions={enabled:!1,filter:!0,container:void 0,showButton:!0},at(this.options,this.defaultOptions),this.configureOptions=i,this.moduleOptions={},this.domElements=[],this.popupDiv={},this.popupLimit=5,this.popupHistory={},this.colorPicker=new XQ(n),this.wrapper=void 0}setOptions(e){if(e!==void 0){this.popupHistory={},this._removePopup();let t=!0;if(typeof e=="string")this.options.filter=e;else if(tt(e))this.options.filter=e.join();else if(typeof e=="object"){if(e==null)throw new TypeError("options cannot be null");e.container!==void 0&&(this.options.container=e.container),Ut(e)!==void 0&&(this.options.filter=Ut(e)),e.showButton!==void 0&&(this.options.showButton=e.showButton),e.enabled!==void 0&&(t=e.enabled)}else typeof e=="boolean"?(this.options.filter=!0,t=e):typeof e=="function"&&(this.options.filter=e,t=!0);Ut(this.options)===!1&&(t=!1),this.options.enabled=t}this._clean()}setModuleOptions(e){this.moduleOptions=e,this.options.enabled===!0&&(this._clean(),this.options.container!==void 0&&(this.container=this.options.container),this._create())}_create(){this._clean(),this.changedOptions=[];const e=Ut(this.options);let t=0,i=!1;for(const n in this.configureOptions)Object.prototype.hasOwnProperty.call(this.configureOptions,n)&&(this.allowCreation=!1,i=!1,typeof e=="function"?(i=e(n,[]),i=i||this._handleObject(this.configureOptions[n],[n],!0)):(e===!0||Fe(e).call(e,n)!==-1)&&(i=!0),i!==!1&&(this.allowCreation=!0,t>0&&this._makeItem([]),this._makeHeader(n),this._handleObject(this.configureOptions[n],[n])),t++);this._makeButton(),this._push()}_push(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-configuration-wrapper",this.container.appendChild(this.wrapper);for(let e=0;e1?t-1:0),n=1;n{s.appendChild(o)}),this.domElements.push(s),this.domElements.length}return 0}_makeHeader(e){const t=document.createElement("div");t.className="vis-configuration vis-config-header",t.innerText=e,this._makeItem([],t)}_makeLabel(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;const n=document.createElement("div");if(n.className="vis-configuration vis-config-label vis-config-s"+t.length,i===!0){for(;n.firstChild;)n.removeChild(n.firstChild);n.appendChild(G_("i","b",e))}else n.innerText=e+":";return n}_makeDropdown(e,t,i){const n=document.createElement("select");n.className="vis-configuration vis-config-select";let s=0;t!==void 0&&Fe(e).call(e,t)!==-1&&(s=Fe(e).call(e,t));for(let u=0;uo&&o!==1&&(u.max=Math.ceil(t*1.2),c=u.max,l="range increased"),u.value=t):u.value=n;const d=document.createElement("input");d.className="vis-configuration vis-config-rangeinput",d.value=u.value;const h=this;u.onchange=function(){d.value=this.value,h._update(Number(this.value),i)},u.oninput=function(){d.value=this.value};const f=this._makeLabel(i[i.length-1],i),v=this._makeItem(i,f,u,d);l!==""&&this.popupHistory[v]!==c&&(this.popupHistory[v]=c,this._setupPopup(l,v))}_makeButton(){if(this.options.showButton===!0){const e=document.createElement("div");e.className="vis-configuration vis-config-button",e.innerText="generate options",e.onclick=()=>{this._printOptions()},e.onmouseover=()=>{e.className="vis-configuration vis-config-button hover"},e.onmouseout=()=>{e.className="vis-configuration vis-config-button"},this.optionsContainer=document.createElement("div"),this.optionsContainer.className="vis-configuration vis-config-option-container",this.domElements.push(this.optionsContainer),this.domElements.push(e)}}_setupPopup(e,t){if(this.initialized===!0&&this.allowCreation===!0&&this.popupCounter{this._removePopup()},this.popupCounter+=1,this.popupDiv={html:i,index:t}}}_removePopup(){this.popupDiv.html!==void 0&&(this.popupDiv.html.parentNode.removeChild(this.popupDiv.html),clearTimeout(this.popupDiv.hideTimeout),clearTimeout(this.popupDiv.deleteTimeout),this.popupDiv={})}_showPopupIfNeeded(){if(this.popupDiv.html!==void 0){const t=this.domElements[this.popupDiv.index].getBoundingClientRect();this.popupDiv.html.style.left=t.left+"px",this.popupDiv.html.style.top=t.top-30+"px",document.body.appendChild(this.popupDiv.html),this.popupDiv.hideTimeout=ti(()=>{this.popupDiv.html.style.opacity=0},1500),this.popupDiv.deleteTimeout=ti(()=>{this._removePopup()},1800)}}_makeCheckbox(e,t,i){const n=document.createElement("input");n.type="checkbox",n.className="vis-configuration vis-config-checkbox",n.checked=e,t!==void 0&&(n.checked=t,t!==e&&(typeof e=="object"?t!==e.enabled&&this.changedOptions.push({path:i,value:t}):this.changedOptions.push({path:i,value:t})));const s=this;n.onchange=function(){s._update(this.checked,i)};const o=this._makeLabel(i[i.length-1],i);this._makeItem(i,o,n)}_makeTextInput(e,t,i){const n=document.createElement("input");n.type="text",n.className="vis-configuration vis-config-text",n.value=t,t!==e&&this.changedOptions.push({path:i,value:t});const s=this;n.onchange=function(){s._update(this.value,i)};const o=this._makeLabel(i[i.length-1],i);this._makeItem(i,o,n)}_makeColorField(e,t,i){const n=e[1],s=document.createElement("div");t=t===void 0?n:t,t!=="none"?(s.className="vis-configuration vis-config-colorBlock",s.style.backgroundColor=t):s.className="vis-configuration vis-config-colorBlock none",t=t===void 0?n:t,s.onclick=()=>{this._showColorPicker(t,s,i)};const o=this._makeLabel(i[i.length-1],i);this._makeItem(i,o,s)}_showColorPicker(e,t,i){t.onclick=function(){},this.colorPicker.insertTo(t),this.colorPicker.show(),this.colorPicker.setColor(e),this.colorPicker.setUpdateCallback(n=>{const s="rgba("+n.r+","+n.g+","+n.b+","+n.a+")";t.style.backgroundColor=s,this._update(s,i)}),this.colorPicker.setCloseCallback(()=>{t.onclick=()=>{this._showColorPicker(e,t,i)}})}_handleObject(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,n=!1;const s=Ut(this.options);let o=!1;for(const a in e)if(Object.prototype.hasOwnProperty.call(e,a)){n=!0;const u=e[a],l=du(t,a);if(typeof s=="function"&&(n=s(a,t),n===!1&&!tt(u)&&typeof u!="string"&&typeof u!="boolean"&&u instanceof Object&&(this.allowCreation=!1,n=this._handleObject(u,l,!0),this.allowCreation=i===!1)),n!==!1){o=!0;const c=this._getValue(l);if(tt(u))this._handleArray(u,c,l);else if(typeof u=="string")this._makeTextInput(u,c,l);else if(typeof u=="boolean")this._makeCheckbox(u,c,l);else if(u instanceof Object){if(!this.hideOption(t,a,this.moduleOptions))if(u.enabled!==void 0){const d=du(l,"enabled"),h=this._getValue(d);if(h===!0){const f=this._makeLabel(a,l,!0);this._makeItem(l,f),o=this._handleObject(u,l)||o}else this._makeCheckbox(u,h,l)}else{const d=this._makeLabel(a,l,!0);this._makeItem(l,d),o=this._handleObject(u,l)||o}}else console.error("dont know how to handle",u,a,l)}}return o}_handleArray(e,t,i){typeof e[0]=="string"&&e[0]==="color"?(this._makeColorField(e,t,i),e[1]!==t&&this.changedOptions.push({path:i,value:t})):typeof e[0]=="string"?(this._makeDropdown(e,t,i),e[0]!==t&&this.changedOptions.push({path:i,value:t})):typeof e[0]=="number"&&(this._makeRange(e,t,i),e[0]!==t&&this.changedOptions.push({path:i,value:Number(t)}))}_update(e,t){const i=this._constructOptions(e,t);this.parent.body&&this.parent.body.emitter&&this.parent.body.emitter.emit&&this.parent.body.emitter.emit("configChange",i),this.initialized=!0,this.parent.setOptions(i)}_constructOptions(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=i;e=e==="true"?!0:e,e=e==="false"?!1:e;for(let s=0;ss-this.padding&&(u=!0),u?o=this.x-i:o=this.x,l?a=this.y-t:a=this.y}else a=this.y-t,a+t+this.padding>n&&(a=n-t-this.padding),as&&(o=s-i-this.padding),o\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",o=window.console&&(window.console.warn||window.console.log);return o&&o.call(window.console,i,s),r.apply(this,arguments)}}var d5=c5(function(r,e,t){for(var i=Object.keys(e),n=0;n{const o=2091639*e+n*23283064365386963e-26;return e=t,t=i,i=o-(n=o|0)};return s.uint32=()=>s()*4294967296,s.fract53=()=>s()+(s()*2097152|0)*11102230246251565e-32,s.algorithm="Alea",s.seed=r,s.version="0.9",s}function NQ(){const r=FQ();let e=r(" "),t=r(" "),i=r(" ");for(let n=0;n>>0,n-=r,n*=r,r=n>>>0,n-=r,r+=n*4294967296}return(r>>>0)*23283064365386963e-26}}function kQ(){const r=()=>{};return{on:r,off:r,destroy:r,emit:r,get(){return{set:r}}}}const p0=typeof window<"u"?window.Hammer||h5:function(){return kQ()};function Mr(r){var e;this._cleanupQueue=[],this.active=!1,this._dom={container:r,overlay:document.createElement("div")},this._dom.overlay.classList.add("vis-overlay"),this._dom.container.appendChild(this._dom.overlay),this._cleanupQueue.push(()=>{this._dom.overlay.parentNode.removeChild(this._dom.overlay)});const t=p0(this._dom.overlay);t.on("tap",z(e=this._onTapOverlay).call(e,this)),this._cleanupQueue.push(()=>{t.destroy()});const i=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];Le(i).call(i,n=>{t.on(n,s=>{s.srcEvent.stopPropagation()})}),document&&document.body&&(this._onClick=n=>{BQ(n.target,r)||this.deactivate()},document.body.addEventListener("click",this._onClick),this._cleanupQueue.push(()=>{document.body.removeEventListener("click",this._onClick)})),this._escListener=n=>{("key"in n?n.key==="Escape":n.keyCode===27)&&this.deactivate()}}E3(Mr.prototype);Mr.current=null;Mr.prototype.destroy=function(){this.deactivate();for(const t of on(r=ei(e=this._cleanupQueue).call(e,0)).call(r)){var r,e;t()}};Mr.prototype.activate=function(){Mr.current&&Mr.current.deactivate(),Mr.current=this,this.active=!0,this._dom.overlay.style.display="none",this._dom.container.classList.add("vis-active"),this.emit("change"),this.emit("activate"),document.body.addEventListener("keydown",this._escListener)};Mr.prototype.deactivate=function(){this.active=!1,this._dom.overlay.style.display="block",this._dom.container.classList.remove("vis-active"),document.body.removeEventListener("keydown",this._escListener),this.emit("change"),this.emit("deactivate")};Mr.prototype._onTapOverlay=function(r){this.activate(),r.srcEvent.stopPropagation()};function BQ(r,e){for(;r;){if(r===e)return!0;r=r.parentNode}return!1}const jQ=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,LQ=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,zQ=/^rgb\( *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *(1?\d{1,2}|2[0-4]\d|25[0-5]) *\)$/i,HQ=/^rgba\( *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *([01]|0?\.\d+) *\)$/i;function _i(r){if(r)for(;r.hasChildNodes()===!0;){const e=r.firstChild;e&&(_i(e),r.removeChild(e))}}function as(r){return r instanceof String||typeof r=="string"}function uF(r){return typeof r=="object"&&r!==null}function yn(r,e,t,i){let n=!1;i===!0&&(n=e[t]===null&&r[t]!==void 0),n?delete r[t]:r[t]=e[t]}function f5(r,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;for(const i in r)if(e[i]!==void 0)if(e[i]===null||typeof e[i]!="object")yn(r,e,i,t);else{const n=r[i],s=e[i];uF(n)&&uF(s)&&f5(n,s,t)}}function Gs(r,e,t){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(tt(t))throw new TypeError("Arrays are not supported by deepExtend");for(let n=0;n3&&arguments[3]!==void 0?arguments[3]:!1;if(tt(t))throw new TypeError("Arrays are not supported by deepExtend");for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&!$i(r).call(r,n))if(t[n]&&t[n].constructor===Object)e[n]===void 0&&(e[n]={}),e[n].constructor===Object?Ue(e[n],t[n]):yn(e,t,n,i);else if(tt(t[n])){e[n]=[];for(let s=0;s2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;for(const s in e)if(Object.prototype.hasOwnProperty.call(e,s)||t===!0)if(typeof e[s]=="object"&&e[s]!==null&&HM(e[s])===Object.prototype)r[s]===void 0?r[s]=Ue({},e[s],t):typeof r[s]=="object"&&r[s]!==null&&HM(r[s])===Object.prototype?Ue(r[s],e[s],t):yn(r,e,s,i);else if(tt(e[s])){var n;r[s]=qr(n=e[s]).call(n)}else yn(r,e,s,i);return r}function du(r,e){return[...r,e]}function WQ(r){return qr(r).call(r)}function UQ(r){return r.getBoundingClientRect().left}function VQ(r){return r.getBoundingClientRect().top}function Ie(r,e){if(tt(r)){const t=r.length;for(let i=0;i3&&arguments[3]!==void 0?arguments[3]:{};const n=function(f){return f!=null},s=function(f){return f!==null&&typeof f=="object"},o=function(f){for(const v in f)if(Object.prototype.hasOwnProperty.call(f,v))return!1;return!0};if(!s(r))throw new Error("Parameter mergeTarget must be an object");if(!s(e))throw new Error("Parameter options must be an object");if(!n(t))throw new Error("Parameter option must have a value");if(!s(i))throw new Error("Parameter globalOptions must be an object");const a=function(f,v,p){s(f[p])||(f[p]={});const b=v[p],m=f[p];for(const g in b)Object.prototype.hasOwnProperty.call(b,g)&&(m[g]=b[g])},u=e[t],c=s(i)&&!o(i)?i[t]:void 0,d=c?c.enabled:void 0;if(u===void 0)return;if(typeof u=="boolean"){s(r[t])||(r[t]={}),r[t].enabled=u;return}if(u===null&&!s(r[t]))if(n(c))r[t]=an(c);else return;if(!s(u))return;let h=!0;u.enabled!==void 0?h=u.enabled:d!==void 0&&(h=c.enabled),a(r,e,t),r[t].enabled=h}const YQ={linear(r){return r},easeInQuad(r){return r*r},easeOutQuad(r){return r*(2-r)},easeInOutQuad(r){return r<.5?2*r*r:-1+(4-2*r)*r},easeInCubic(r){return r*r*r},easeOutCubic(r){return--r*r*r+1},easeInOutCubic(r){return r<.5?4*r*r*r:(r-1)*(2*r-2)*(2*r-2)+1},easeInQuart(r){return r*r*r*r},easeOutQuart(r){return 1- --r*r*r*r},easeInOutQuart(r){return r<.5?8*r*r*r*r:1-8*--r*r*r*r},easeInQuint(r){return r*r*r*r*r},easeOutQuint(r){return 1+--r*r*r*r*r},easeInOutQuint(r){return r<.5?16*r*r*r*r*r:1+16*--r*r*r*r*r}};function wi(r,e){let t;tt(e)||(e=[e]);for(const i of r)if(i){t=i[e[0]];for(let n=1;n0&&arguments[0]!==void 0?arguments[0]:1;this.pixelRatio=e,this.generated=!1,this.centerCoordinates={x:289/2,y:289/2},this.r=289*.49,this.color={r:255,g:255,b:255,a:1},this.hueCircle=void 0,this.initialColor={r:255,g:255,b:255,a:1},this.previousColor=void 0,this.applied=!1,this.updateCallback=()=>{},this.closeCallback=()=>{},this._create()}insertTo(e){this.hammer!==void 0&&(this.hammer.destroy(),this.hammer=void 0),this.container=e,this.container.appendChild(this.frame),this._bindHammer(),this._setSize()}setUpdateCallback(e){if(typeof e=="function")this.updateCallback=e;else throw new Error("Function attempted to set as colorPicker update callback is not a function.")}setCloseCallback(e){if(typeof e=="function")this.closeCallback=e;else throw new Error("Function attempted to set as colorPicker closing callback is not a function.")}_isColorString(e){if(typeof e=="string")return XQ[e]}setColor(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e==="none")return;let i;const n=this._isColorString(e);if(n!==void 0&&(e=n),as(e)===!0){if(g5(e)===!0){const s=e.substr(4).substr(0,e.length-5).split(",");i={r:s[0],g:s[1],b:s[2],a:1}}else if(GQ(e)===!0){const s=e.substr(5).substr(0,e.length-6).split(",");i={r:s[0],g:s[1],b:s[2],a:s[3]}}else if(p5(e)===!0){const s=g0(e);i={r:s.r,g:s.g,b:s.b,a:1}}}else if(e instanceof Object&&e.r!==void 0&&e.g!==void 0&&e.b!==void 0){const s=e.a!==void 0?e.a:"1.0";i={r:e.r,g:e.g,b:e.b,a:s}}if(i===void 0)throw new Error("Unknown color passed to the colorPicker. Supported are strings: rgb, hex, rgba. Object: rgb ({r:r,g:g,b:b,[a:a]}). Supplied: "+ma(e));this._setColor(i,t)}show(){this.closeCallback!==void 0&&(this.closeCallback(),this.closeCallback=void 0),this.applied=!1,this.frame.style.display="block",this._generateHueCircle()}_hide(){(arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0)===!0&&(this.previousColor=at({},this.color)),this.applied===!0&&this.updateCallback(this.initialColor),this.frame.style.display="none",ti(()=>{this.closeCallback!==void 0&&(this.closeCallback(),this.closeCallback=void 0)},0)}_save(){this.updateCallback(this.color),this.applied=!1,this._hide()}_apply(){this.applied=!0,this.updateCallback(this.color),this._updatePicker(this.color)}_loadLast(){this.previousColor!==void 0?this.setColor(this.previousColor,!1):alert("There is no last color to load...")}_setColor(e){(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0)===!0&&(this.initialColor=at({},e)),this.color=e;const i=so(e.r,e.g,e.b),n=2*Math.PI,s=this.r*i.s,o=this.centerCoordinates.x+s*Math.sin(n*i.h),a=this.centerCoordinates.y+s*Math.cos(n*i.h);this.colorPickerSelector.style.left=o-.5*this.colorPickerSelector.clientWidth+"px",this.colorPickerSelector.style.top=a-.5*this.colorPickerSelector.clientHeight+"px",this._updatePicker(e)}_setOpacity(e){this.color.a=e/100,this._updatePicker(this.color)}_setBrightness(e){const t=so(this.color.r,this.color.g,this.color.b);t.v=e/100;const i=Va(t.h,t.s,t.v);i.a=this.color.a,this.color=i,this._updatePicker()}_updatePicker(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.color;const t=so(e.r,e.g,e.b),i=this.colorPickerCanvas.getContext("2d");this.pixelRation===void 0&&(this.pixelRatio=(window.devicePixelRatio||1)/(i.webkitBackingStorePixelRatio||i.mozBackingStorePixelRatio||i.msBackingStorePixelRatio||i.oBackingStorePixelRatio||i.backingStorePixelRatio||1)),i.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);const n=this.colorPickerCanvas.clientWidth,s=this.colorPickerCanvas.clientHeight;i.clearRect(0,0,n,s),i.putImageData(this.hueCircle,0,0),i.fillStyle="rgba(0,0,0,"+(1-t.v)+")",i.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r),ya(i).call(i),this.brightnessRange.value=100*t.v,this.opacityRange.value=100*e.a,this.initialColorDiv.style.backgroundColor="rgba("+this.initialColor.r+","+this.initialColor.g+","+this.initialColor.b+","+this.initialColor.a+")",this.newColorDiv.style.backgroundColor="rgba("+this.color.r+","+this.color.g+","+this.color.b+","+this.color.a+")"}_setSize(){this.colorPickerCanvas.style.width="100%",this.colorPickerCanvas.style.height="100%",this.colorPickerCanvas.width=289*this.pixelRatio,this.colorPickerCanvas.height=289*this.pixelRatio}_create(){var e,t,i,n;if(this.frame=document.createElement("div"),this.frame.className="vis-color-picker",this.colorPickerDiv=document.createElement("div"),this.colorPickerSelector=document.createElement("div"),this.colorPickerSelector.className="vis-selector",this.colorPickerDiv.appendChild(this.colorPickerSelector),this.colorPickerCanvas=document.createElement("canvas"),this.colorPickerDiv.appendChild(this.colorPickerCanvas),this.colorPickerCanvas.getContext){const o=this.colorPickerCanvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(o.webkitBackingStorePixelRatio||o.mozBackingStorePixelRatio||o.msBackingStorePixelRatio||o.oBackingStorePixelRatio||o.backingStorePixelRatio||1),this.colorPickerCanvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{const o=document.createElement("DIV");o.style.color="red",o.style.fontWeight="bold",o.style.padding="10px",o.innerText="Error: your browser does not support HTML canvas",this.colorPickerCanvas.appendChild(o)}this.colorPickerDiv.className="vis-color",this.opacityDiv=document.createElement("div"),this.opacityDiv.className="vis-opacity",this.brightnessDiv=document.createElement("div"),this.brightnessDiv.className="vis-brightness",this.arrowDiv=document.createElement("div"),this.arrowDiv.className="vis-arrow",this.opacityRange=document.createElement("input");try{this.opacityRange.type="range",this.opacityRange.min="0",this.opacityRange.max="100"}catch{}this.opacityRange.value="100",this.opacityRange.className="vis-range",this.brightnessRange=document.createElement("input");try{this.brightnessRange.type="range",this.brightnessRange.min="0",this.brightnessRange.max="100"}catch{}this.brightnessRange.value="100",this.brightnessRange.className="vis-range",this.opacityDiv.appendChild(this.opacityRange),this.brightnessDiv.appendChild(this.brightnessRange);const s=this;this.opacityRange.onchange=function(){s._setOpacity(this.value)},this.opacityRange.oninput=function(){s._setOpacity(this.value)},this.brightnessRange.onchange=function(){s._setBrightness(this.value)},this.brightnessRange.oninput=function(){s._setBrightness(this.value)},this.brightnessLabel=document.createElement("div"),this.brightnessLabel.className="vis-label vis-brightness",this.brightnessLabel.innerText="brightness:",this.opacityLabel=document.createElement("div"),this.opacityLabel.className="vis-label vis-opacity",this.opacityLabel.innerText="opacity:",this.newColorDiv=document.createElement("div"),this.newColorDiv.className="vis-new-color",this.newColorDiv.innerText="new",this.initialColorDiv=document.createElement("div"),this.initialColorDiv.className="vis-initial-color",this.initialColorDiv.innerText="initial",this.cancelButton=document.createElement("div"),this.cancelButton.className="vis-button vis-cancel",this.cancelButton.innerText="cancel",this.cancelButton.onclick=z(e=this._hide).call(e,this,!1),this.applyButton=document.createElement("div"),this.applyButton.className="vis-button vis-apply",this.applyButton.innerText="apply",this.applyButton.onclick=z(t=this._apply).call(t,this),this.saveButton=document.createElement("div"),this.saveButton.className="vis-button vis-save",this.saveButton.innerText="save",this.saveButton.onclick=z(i=this._save).call(i,this),this.loadButton=document.createElement("div"),this.loadButton.className="vis-button vis-load",this.loadButton.innerText="load last",this.loadButton.onclick=z(n=this._loadLast).call(n,this),this.frame.appendChild(this.colorPickerDiv),this.frame.appendChild(this.arrowDiv),this.frame.appendChild(this.brightnessLabel),this.frame.appendChild(this.brightnessDiv),this.frame.appendChild(this.opacityLabel),this.frame.appendChild(this.opacityDiv),this.frame.appendChild(this.newColorDiv),this.frame.appendChild(this.initialColorDiv),this.frame.appendChild(this.cancelButton),this.frame.appendChild(this.applyButton),this.frame.appendChild(this.saveButton),this.frame.appendChild(this.loadButton)}_bindHammer(){this.drag={},this.pinch={},this.hammer=new p0(this.colorPickerCanvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.on("hammer.input",e=>{e.isFirst&&this._moveSelector(e)}),this.hammer.on("tap",e=>{this._moveSelector(e)}),this.hammer.on("panstart",e=>{this._moveSelector(e)}),this.hammer.on("panmove",e=>{this._moveSelector(e)}),this.hammer.on("panend",e=>{this._moveSelector(e)})}_generateHueCircle(){if(this.generated===!1){const e=this.colorPickerCanvas.getContext("2d");this.pixelRation===void 0&&(this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);const t=this.colorPickerCanvas.clientWidth,i=this.colorPickerCanvas.clientHeight;e.clearRect(0,0,t,i);let n,s,o,a;this.centerCoordinates={x:t*.5,y:i*.5},this.r=.49*t;const u=2*Math.PI/360,l=1/360,c=1/this.r;let d;for(o=0;o<360;o++)for(a=0;a3&&arguments[3]!==void 0?arguments[3]:1,s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:()=>!1;this.parent=e,this.changedOptions=[],this.container=t,this.allowCreation=!1,this.hideOption=s,this.options={},this.initialized=!1,this.popupCounter=0,this.defaultOptions={enabled:!1,filter:!0,container:void 0,showButton:!0},at(this.options,this.defaultOptions),this.configureOptions=i,this.moduleOptions={},this.domElements=[],this.popupDiv={},this.popupLimit=5,this.popupHistory={},this.colorPicker=new JQ(n),this.wrapper=void 0}setOptions(e){if(e!==void 0){this.popupHistory={},this._removePopup();let t=!0;if(typeof e=="string")this.options.filter=e;else if(tt(e))this.options.filter=e.join();else if(typeof e=="object"){if(e==null)throw new TypeError("options cannot be null");e.container!==void 0&&(this.options.container=e.container),Vt(e)!==void 0&&(this.options.filter=Vt(e)),e.showButton!==void 0&&(this.options.showButton=e.showButton),e.enabled!==void 0&&(t=e.enabled)}else typeof e=="boolean"?(this.options.filter=!0,t=e):typeof e=="function"&&(this.options.filter=e,t=!0);Vt(this.options)===!1&&(t=!1),this.options.enabled=t}this._clean()}setModuleOptions(e){this.moduleOptions=e,this.options.enabled===!0&&(this._clean(),this.options.container!==void 0&&(this.container=this.options.container),this._create())}_create(){this._clean(),this.changedOptions=[];const e=Vt(this.options);let t=0,i=!1;for(const n in this.configureOptions)Object.prototype.hasOwnProperty.call(this.configureOptions,n)&&(this.allowCreation=!1,i=!1,typeof e=="function"?(i=e(n,[]),i=i||this._handleObject(this.configureOptions[n],[n],!0)):(e===!0||Fe(e).call(e,n)!==-1)&&(i=!0),i!==!1&&(this.allowCreation=!0,t>0&&this._makeItem([]),this._makeHeader(n),this._handleObject(this.configureOptions[n],[n])),t++);this._makeButton(),this._push()}_push(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-configuration-wrapper",this.container.appendChild(this.wrapper);for(let e=0;e1?t-1:0),n=1;n{s.appendChild(o)}),this.domElements.push(s),this.domElements.length}return 0}_makeHeader(e){const t=document.createElement("div");t.className="vis-configuration vis-config-header",t.innerText=e,this._makeItem([],t)}_makeLabel(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;const n=document.createElement("div");if(n.className="vis-configuration vis-config-label vis-config-s"+t.length,i===!0){for(;n.firstChild;)n.removeChild(n.firstChild);n.appendChild(G_("i","b",e))}else n.innerText=e+":";return n}_makeDropdown(e,t,i){const n=document.createElement("select");n.className="vis-configuration vis-config-select";let s=0;t!==void 0&&Fe(e).call(e,t)!==-1&&(s=Fe(e).call(e,t));for(let u=0;uo&&o!==1&&(u.max=Math.ceil(t*1.2),c=u.max,l="range increased"),u.value=t):u.value=n;const d=document.createElement("input");d.className="vis-configuration vis-config-rangeinput",d.value=u.value;const h=this;u.onchange=function(){d.value=this.value,h._update(Number(this.value),i)},u.oninput=function(){d.value=this.value};const f=this._makeLabel(i[i.length-1],i),v=this._makeItem(i,f,u,d);l!==""&&this.popupHistory[v]!==c&&(this.popupHistory[v]=c,this._setupPopup(l,v))}_makeButton(){if(this.options.showButton===!0){const e=document.createElement("div");e.className="vis-configuration vis-config-button",e.innerText="generate options",e.onclick=()=>{this._printOptions()},e.onmouseover=()=>{e.className="vis-configuration vis-config-button hover"},e.onmouseout=()=>{e.className="vis-configuration vis-config-button"},this.optionsContainer=document.createElement("div"),this.optionsContainer.className="vis-configuration vis-config-option-container",this.domElements.push(this.optionsContainer),this.domElements.push(e)}}_setupPopup(e,t){if(this.initialized===!0&&this.allowCreation===!0&&this.popupCounter{this._removePopup()},this.popupCounter+=1,this.popupDiv={html:i,index:t}}}_removePopup(){this.popupDiv.html!==void 0&&(this.popupDiv.html.parentNode.removeChild(this.popupDiv.html),clearTimeout(this.popupDiv.hideTimeout),clearTimeout(this.popupDiv.deleteTimeout),this.popupDiv={})}_showPopupIfNeeded(){if(this.popupDiv.html!==void 0){const t=this.domElements[this.popupDiv.index].getBoundingClientRect();this.popupDiv.html.style.left=t.left+"px",this.popupDiv.html.style.top=t.top-30+"px",document.body.appendChild(this.popupDiv.html),this.popupDiv.hideTimeout=ti(()=>{this.popupDiv.html.style.opacity=0},1500),this.popupDiv.deleteTimeout=ti(()=>{this._removePopup()},1800)}}_makeCheckbox(e,t,i){const n=document.createElement("input");n.type="checkbox",n.className="vis-configuration vis-config-checkbox",n.checked=e,t!==void 0&&(n.checked=t,t!==e&&(typeof e=="object"?t!==e.enabled&&this.changedOptions.push({path:i,value:t}):this.changedOptions.push({path:i,value:t})));const s=this;n.onchange=function(){s._update(this.checked,i)};const o=this._makeLabel(i[i.length-1],i);this._makeItem(i,o,n)}_makeTextInput(e,t,i){const n=document.createElement("input");n.type="text",n.className="vis-configuration vis-config-text",n.value=t,t!==e&&this.changedOptions.push({path:i,value:t});const s=this;n.onchange=function(){s._update(this.value,i)};const o=this._makeLabel(i[i.length-1],i);this._makeItem(i,o,n)}_makeColorField(e,t,i){const n=e[1],s=document.createElement("div");t=t===void 0?n:t,t!=="none"?(s.className="vis-configuration vis-config-colorBlock",s.style.backgroundColor=t):s.className="vis-configuration vis-config-colorBlock none",t=t===void 0?n:t,s.onclick=()=>{this._showColorPicker(t,s,i)};const o=this._makeLabel(i[i.length-1],i);this._makeItem(i,o,s)}_showColorPicker(e,t,i){t.onclick=function(){},this.colorPicker.insertTo(t),this.colorPicker.show(),this.colorPicker.setColor(e),this.colorPicker.setUpdateCallback(n=>{const s="rgba("+n.r+","+n.g+","+n.b+","+n.a+")";t.style.backgroundColor=s,this._update(s,i)}),this.colorPicker.setCloseCallback(()=>{t.onclick=()=>{this._showColorPicker(e,t,i)}})}_handleObject(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,n=!1;const s=Vt(this.options);let o=!1;for(const a in e)if(Object.prototype.hasOwnProperty.call(e,a)){n=!0;const u=e[a],l=du(t,a);if(typeof s=="function"&&(n=s(a,t),n===!1&&!tt(u)&&typeof u!="string"&&typeof u!="boolean"&&u instanceof Object&&(this.allowCreation=!1,n=this._handleObject(u,l,!0),this.allowCreation=i===!1)),n!==!1){o=!0;const c=this._getValue(l);if(tt(u))this._handleArray(u,c,l);else if(typeof u=="string")this._makeTextInput(u,c,l);else if(typeof u=="boolean")this._makeCheckbox(u,c,l);else if(u instanceof Object){if(!this.hideOption(t,a,this.moduleOptions))if(u.enabled!==void 0){const d=du(l,"enabled"),h=this._getValue(d);if(h===!0){const f=this._makeLabel(a,l,!0);this._makeItem(l,f),o=this._handleObject(u,l)||o}else this._makeCheckbox(u,h,l)}else{const d=this._makeLabel(a,l,!0);this._makeItem(l,d),o=this._handleObject(u,l)||o}}else console.error("dont know how to handle",u,a,l)}}return o}_handleArray(e,t,i){typeof e[0]=="string"&&e[0]==="color"?(this._makeColorField(e,t,i),e[1]!==t&&this.changedOptions.push({path:i,value:t})):typeof e[0]=="string"?(this._makeDropdown(e,t,i),e[0]!==t&&this.changedOptions.push({path:i,value:t})):typeof e[0]=="number"&&(this._makeRange(e,t,i),e[0]!==t&&this.changedOptions.push({path:i,value:Number(t)}))}_update(e,t){const i=this._constructOptions(e,t);this.parent.body&&this.parent.body.emitter&&this.parent.body.emitter.emit&&this.parent.body.emitter.emit("configChange",i),this.initialized=!0,this.parent.setOptions(i)}_constructOptions(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=i;e=e==="true"?!0:e,e=e==="false"?!1:e;for(let s=0;ss-this.padding&&(u=!0),u?o=this.x-i:o=this.x,l?a=this.y-t:a=this.y}else a=this.y-t,a+t+this.padding>n&&(a=n-t-this.padding),as&&(o=s-i-this.padding),os.distance?u=" in "+Qe.printLocation(n.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+Qe.printLocation(s.path,s.closestMatch,""):n.distance<=o?u='. Did you mean "'+n.closestMatch+'"?'+Qe.printLocation(n.path,e):u=". Did you mean one of these: "+Qe.print(Ze(t))+Qe.printLocation(i,e),console.error('%cUnknown option detected: "'+e+'"'+u,Y_),ro=!0}static findInOptions(e,t,i){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,s=1e9,o="",a=[];const u=e.toLowerCase();let l;for(const d in t){let h;if(t[d].__type__!==void 0&&n===!0){const f=Qe.findInOptions(e,t[d],du(i,d));s>f.distance&&(o=f.closestMatch,a=f.path,s=f.distance,l=f.indexMatch)}else{var c;Fe(c=d.toLowerCase()).call(c,u)!==-1&&(l=d),h=Qe.levenshteinDistance(e,d),s>h&&(o=d,a=HQ(i),s=h)}}return{closestMatch:o,path:a,distance:s,indexMatch:l}}static printLocation(e,t){let n=` +`:s.distance<=a&&n.distance>s.distance?u=" in "+Qe.printLocation(n.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+Qe.printLocation(s.path,s.closestMatch,""):n.distance<=o?u='. Did you mean "'+n.closestMatch+'"?'+Qe.printLocation(n.path,e):u=". Did you mean one of these: "+Qe.print(Ze(t))+Qe.printLocation(i,e),console.error('%cUnknown option detected: "'+e+'"'+u,Y_),ro=!0}static findInOptions(e,t,i){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,s=1e9,o="",a=[];const u=e.toLowerCase();let l;for(const d in t){let h;if(t[d].__type__!==void 0&&n===!0){const f=Qe.findInOptions(e,t[d],du(i,d));s>f.distance&&(o=f.closestMatch,a=f.path,s=f.distance,l=f.indexMatch)}else{var c;Fe(c=d.toLowerCase()).call(c,u)!==-1&&(l=d),h=Qe.levenshteinDistance(e,d),s>h&&(o=d,a=WQ(i),s=h)}}return{closestMatch:o,path:a,distance:s,indexMatch:l}}static printLocation(e,t){let n=` `+(arguments.length>2&&arguments[2]!==void 0?arguments[2]:`Problem value found at: `)+`options = { @@ -103,13 +103,13 @@ Minimum version required to store current data is: `+R+`. `;for(let s=0;s":!0,"--":!0},Ei="",ws=0,Se="",he="",Wt=Mt.NULL;function sZ(){ws=0,Se=Ei.charAt(0)}function mt(){ws++,Se=Ei.charAt(ws)}function Wn(){return Ei.charAt(ws+1)}function dF(r){var e=r.charCodeAt(0);return e<47?e===35||e===46:e<59?e>47:e<91?e>64:e<96?e===95:e<123?e>96:!1}function Di(r,e){if(r||(r={}),e)for(var t in e)e.hasOwnProperty(t)&&(r[t]=e[t]);return r}function oZ(r,e,t){for(var i=e.split("."),n=r;i.length;){var s=i.shift();i.length?(n[s]||(n[s]={}),n=n[s]):n[s]=t}}function m5(r,e){for(var t,i,n=null,s=[r],o=r;o.parent;)s.push(o.parent),o=o.parent;if(o.nodes){for(t=0,i=o.nodes.length;t=0;t--){var a,u=s[t];u.nodes||(u.nodes=[]),Fe(a=u.nodes).call(a,n)===-1&&u.nodes.push(n)}e.attr&&(n.attr=Di(n.attr,e.attr))}function aZ(r,e){if(r.edges||(r.edges=[]),r.edges.push(e),r.edge){var t=Di({},r.edge);e.attr=Di(t,e.attr)}}function y5(r,e,t,i,n){var s={from:e,to:t,type:i};return r.edge&&(s.attr=Di({},r.edge)),s.attr=Di(s.attr||{},n),n!=null&&n.hasOwnProperty("arrows")&&n.arrows!=null&&(s.arrows={to:{enabled:!0,type:n.arrows.type}},n.arrows=null),s}function Ve(){for(Wt=Mt.NULL,he="";Se===" "||Se===" "||Se===` -`||Se==="\r";)mt();do{var r=!1;if(Se==="#"){for(var e=ws-1;Ei.charAt(e)===" "||Ei.charAt(e)===" ";)e--;if(Ei.charAt(e)===` -`||Ei.charAt(e)===""){for(;Se!=""&&Se!=` +`}static print(e){return ma(e).replace(/(")|(\[)|(\])|(,"__type__")/g,"").replace(/(,)/g,", ")}static levenshteinDistance(e,t){if(e.length===0)return t.length;if(t.length===0)return e.length;const i=[];let n;for(n=0;n<=t.length;n++)i[n]=[n];let s;for(s=0;s<=e.length;s++)i[0][s]=s;for(n=1;n<=t.length;n++)for(s=1;s<=e.length;s++)t.charAt(n-1)==e.charAt(s-1)?i[n][s]=i[n-1][s-1]:i[n][s]=Math.min(i[n-1][s-1]+1,Math.min(i[n][s-1]+1,i[n-1][s]+1));return i[t.length][e.length]}};const tZ=Mr,rZ=QQ,us=p0,iZ=ZQ,m5=Y_,nZ=eZ;function sZ(r){return Si=r,lZ()}var y5={fontsize:"font.size",fontcolor:"font.color",labelfontcolor:"font.color",fontname:"font.face",color:["color.border","color.background"],fillcolor:"color.background",tooltip:"title",labeltooltip:"title"},m0=an(y5);m0.color="color.color";m0.style="dashes";var Nt={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3},cF={"{":!0,"}":!0,"[":!0,"]":!0,";":!0,"=":!0,",":!0,"->":!0,"--":!0},Si="",ws=0,Se="",fe="",Ut=Nt.NULL;function oZ(){ws=0,Se=Si.charAt(0)}function mt(){ws++,Se=Si.charAt(ws)}function Wn(){return Si.charAt(ws+1)}function dF(r){var e=r.charCodeAt(0);return e<47?e===35||e===46:e<59?e>47:e<91?e>64:e<96?e===95:e<123?e>96:!1}function Ai(r,e){if(r||(r={}),e)for(var t in e)e.hasOwnProperty(t)&&(r[t]=e[t]);return r}function aZ(r,e,t){for(var i=e.split("."),n=r;i.length;){var s=i.shift();i.length?(n[s]||(n[s]={}),n=n[s]):n[s]=t}}function b5(r,e){for(var t,i,n=null,s=[r],o=r;o.parent;)s.push(o.parent),o=o.parent;if(o.nodes){for(t=0,i=o.nodes.length;t=0;t--){var a,u=s[t];u.nodes||(u.nodes=[]),Fe(a=u.nodes).call(a,n)===-1&&u.nodes.push(n)}e.attr&&(n.attr=Ai(n.attr,e.attr))}function uZ(r,e){if(r.edges||(r.edges=[]),r.edges.push(e),r.edge){var t=Ai({},r.edge);e.attr=Ai(t,e.attr)}}function _5(r,e,t,i,n){var s={from:e,to:t,type:i};return r.edge&&(s.attr=Ai({},r.edge)),s.attr=Ai(s.attr||{},n),n!=null&&n.hasOwnProperty("arrows")&&n.arrows!=null&&(s.arrows={to:{enabled:!0,type:n.arrows.type}},n.arrows=null),s}function Ve(){for(Ut=Nt.NULL,fe="";Se===" "||Se===" "||Se===` +`||Se==="\r";)mt();do{var r=!1;if(Se==="#"){for(var e=ws-1;Si.charAt(e)===" "||Si.charAt(e)===" ";)e--;if(Si.charAt(e)===` +`||Si.charAt(e)===""){for(;Se!=""&&Se!=` `;)mt();r=!0}}if(Se==="/"&&Wn()==="/"){for(;Se!=""&&Se!=` `;)mt();r=!0}if(Se==="/"&&Wn()==="*"){for(;Se!="";)if(Se==="*"&&Wn()==="/"){mt(),mt();break}else mt();r=!0}for(;Se===" "||Se===" "||Se===` -`||Se==="\r";)mt()}while(r);if(Se===""){Wt=Mt.DELIMITER;return}var t=Se+Wn();if(cF[t]){Wt=Mt.DELIMITER,he=t,mt(),mt();return}if(cF[Se]){Wt=Mt.DELIMITER,he=Se,mt();return}if(dF(Se)||Se==="-"){for(he+=Se,mt();dF(Se);)he+=Se,mt();he==="false"?he=!1:he==="true"?he=!0:isNaN(Number(he))||(he=Number(he)),Wt=Mt.IDENTIFIER;return}if(Se==='"'){for(mt();Se!=""&&(Se!='"'||Se==='"'&&Wn()==='"');)Se==='"'?(he+=Se,mt()):Se==="\\"&&Wn()==="n"?(he+=` -`,mt()):he+=Se,mt();if(Se!='"')throw Nt('End of string " expected');mt(),Wt=Mt.IDENTIFIER;return}for(Wt=Mt.UNKNOWN;Se!="";)he+=Se,mt();throw new SyntaxError('Syntax error in part "'+E5(he,30)+'"')}function uZ(){var r={};if(sZ(),Ve(),he==="strict"&&(r.strict=!0,Ve()),(he==="graph"||he==="digraph")&&(r.type=he,Ve()),Wt===Mt.IDENTIFIER&&(r.id=he,Ve()),he!="{")throw Nt("Angle bracket { expected");if(Ve(),b5(r),he!="}")throw Nt("Angle bracket } expected");if(Ve(),he!=="")throw Nt("End of file expected");return Ve(),delete r.node,delete r.edge,delete r.graph,r}function b5(r){for(;he!==""&&he!="}";)lZ(r),he===";"&&Ve()}function lZ(r){var e=_5(r);if(e){w5(r,e);return}var t=cZ(r);if(!t){if(Wt!=Mt.IDENTIFIER)throw Nt("Identifier expected");var i=he;if(Ve(),he==="="){if(Ve(),Wt!=Mt.IDENTIFIER)throw Nt("Identifier expected");r[i]=he,Ve()}else dZ(r,i)}}function _5(r){var e=null;if(he==="subgraph"&&(e={},e.type="subgraph",Ve(),Wt===Mt.IDENTIFIER&&(e.id=he,Ve())),he==="{"){if(Ve(),e||(e={}),e.parent=r,e.node=r.node,e.edge=r.edge,e.graph=r.graph,b5(e),he!="}")throw Nt("Angle bracket } expected");Ve(),delete e.node,delete e.edge,delete e.graph,delete e.parent,r.subgraphs||(r.subgraphs=[]),r.subgraphs.push(e)}return e}function cZ(r){return he==="node"?(Ve(),r.node=_o(),"node"):he==="edge"?(Ve(),r.edge=_o(),"edge"):he==="graph"?(Ve(),r.graph=_o(),"graph"):null}function dZ(r,e){var t={id:e},i=_o();i&&(t.attr=i),m5(r,t),w5(r,e)}function w5(r,e){for(;he==="->"||he==="--";){var t,i=he;Ve();var n=_5(r);if(n)t=n;else{if(Wt!=Mt.IDENTIFIER)throw Nt("Identifier or subgraph expected");t=he,m5(r,{id:t}),Ve()}var s=_o(),o=y5(r,e,t,i,s);aZ(r,o),e=t}}function _o(){for(var r,e=null,t={dashed:!0,solid:!1,dotted:[1,5]},i={dot:"circle",box:"box",crow:"crow",curve:"curve",icurve:"inv_curve",normal:"triangle",inv:"inv_triangle",diamond:"diamond",tee:"bar",vee:"vee"},n=new Array,s=new Array;he==="[";){for(Ve(),e={};he!==""&&he!="]";){if(Wt!=Mt.IDENTIFIER)throw Nt("Attribute name expected");var o=he;if(Ve(),he!="=")throw Nt("Equal sign = expected");if(Ve(),Wt!=Mt.IDENTIFIER)throw Nt("Attribute value expected");var a=he;o==="style"&&(a=t[a]);var u;o==="arrowhead"&&(u=i[a],o="arrows",a={to:{enabled:!0,type:u}}),o==="arrowtail"&&(u=i[a],o="arrows",a={from:{enabled:!0,type:u}}),n.push({attr:e,name:o,value:a}),s.push(o),Ve(),he==","&&Ve()}if(he!="]")throw Nt("Bracket ] expected");Ve()}if(Ti(s).call(s,"dir")){var l={};for(l.arrows={},r=0;r"&&(a.arrows="to"),a};Le(n=e.edges).call(n,function(o){var a,u;if(o.from instanceof Object?a=o.from.nodes:a={id:o.from},o.to instanceof Object?u=o.to.nodes:u={id:o.to},o.from instanceof Object&&o.from.edges){var l;Le(l=o.from.edges).call(l,function(d){var h=s(d);t.edges.push(h)})}if(hZ(a,u,function(d,h){var f=y5(t,d.id,h.id,o.type,o.attr),v=s(f);t.edges.push(v)}),o.to instanceof Object&&o.to.edges){var c;Le(c=o.to.edges).call(c,function(d){var h=s(d);t.edges.push(h)})}})}return e.attr&&(t.options=e.attr),t}function vZ(r,e){var t;const i={edges:{inheritColor:!1},nodes:{fixed:!1,parseColor:!1}};e!=null&&(e.fixed!=null&&(i.nodes.fixed=e.fixed),e.parseColor!=null&&(i.nodes.parseColor=e.parseColor),e.inheritColor!=null&&(i.edges.inheritColor=e.inheritColor));const n=r.edges,s=ms(n).call(n,a=>{const u={from:a.source,id:a.id,to:a.target};return a.attributes!=null&&(u.attributes=a.attributes),a.label!=null&&(u.label=a.label),a.attributes!=null&&a.attributes.title!=null&&(u.title=a.attributes.title),a.type==="Directed"&&(u.arrows="to"),a.color&&i.edges.inheritColor===!1&&(u.color=a.color),u});return{nodes:ms(t=r.nodes).call(t,a=>{const u={id:a.id,fixed:i.nodes.fixed&&a.x!=null&&a.y!=null};return a.attributes!=null&&(u.attributes=a.attributes),a.label!=null&&(u.label=a.label),a.size!=null&&(u.size=a.size),a.attributes!=null&&a.attributes.title!=null&&(u.title=a.attributes.title),a.title!=null&&(u.title=a.title),a.x!=null&&(u.x=a.x),a.y!=null&&(u.y=a.y),a.color!=null&&(i.nodes.parseColor===!0?u.color=a.color:u.color={background:a.color,border:a.color,highlight:{background:a.color,border:a.color},hover:{background:a.color,border:a.color}}),u}),edges:s}}const pZ={addDescription:"Click in an empty space to place a new node.",addEdge:"Add Edge",addNode:"Add Node",back:"Back",close:"Close",createEdgeError:"Cannot link edges to a cluster.",del:"Delete selected",deleteClusterError:"Clusters cannot be deleted.",edgeDescription:"Click on a node and drag the edge to another node to connect them.",edit:"Edit",editClusterError:"Clusters cannot be edited.",editEdge:"Edit Edge",editEdgeDescription:"Click on the control points and drag them to a node to connect to it.",editNode:"Edit Node"},gZ={addDescription:"Klicke auf eine freie Stelle, um einen neuen Knoten zu plazieren.",addEdge:"Kante hinzufügen",addNode:"Knoten hinzufügen",back:"Zurück",close:"Schließen",createEdgeError:"Es ist nicht möglich, Kanten mit Clustern zu verbinden.",del:"Lösche Auswahl",deleteClusterError:"Cluster können nicht gelöscht werden.",edgeDescription:"Klicke auf einen Knoten und ziehe die Kante zu einem anderen Knoten, um diese zu verbinden.",edit:"Editieren",editClusterError:"Cluster können nicht editiert werden.",editEdge:"Kante editieren",editEdgeDescription:"Klicke auf die Verbindungspunkte und ziehe diese auf einen Knoten, um sie zu verbinden.",editNode:"Knoten editieren"},mZ={addDescription:"Haga clic en un lugar vacío para colocar un nuevo nodo.",addEdge:"Añadir arista",addNode:"Añadir nodo",back:"Atrás",close:"Cerrar",createEdgeError:"No se puede conectar una arista a un grupo.",del:"Eliminar selección",deleteClusterError:"No es posible eliminar grupos.",edgeDescription:"Haga clic en un nodo y arrastre la arista hacia otro nodo para conectarlos.",edit:"Editar",editClusterError:"No es posible editar grupos.",editEdge:"Editar arista",editEdgeDescription:"Haga clic en un punto de control y arrastrelo a un nodo para conectarlo.",editNode:"Editar nodo"},yZ={addDescription:"Clicca per aggiungere un nuovo nodo",addEdge:"Aggiungi un vertice",addNode:"Aggiungi un nodo",back:"Indietro",close:"Chiudere",createEdgeError:"Non si possono collegare vertici ad un cluster",del:"Cancella la selezione",deleteClusterError:"I cluster non possono essere cancellati",edgeDescription:"Clicca su un nodo e trascinalo ad un altro nodo per connetterli.",edit:"Modifica",editClusterError:"I clusters non possono essere modificati.",editEdge:"Modifica il vertice",editEdgeDescription:"Clicca sui Punti di controllo e trascinali ad un nodo per connetterli.",editNode:"Modifica il nodo"},bZ={addDescription:"Klik op een leeg gebied om een nieuwe node te maken.",addEdge:"Link toevoegen",addNode:"Node toevoegen",back:"Terug",close:"Sluiten",createEdgeError:"Kan geen link maken naar een cluster.",del:"Selectie verwijderen",deleteClusterError:"Clusters kunnen niet worden verwijderd.",edgeDescription:"Klik op een node en sleep de link naar een andere node om ze te verbinden.",edit:"Wijzigen",editClusterError:"Clusters kunnen niet worden aangepast.",editEdge:"Link wijzigen",editEdgeDescription:"Klik op de verbindingspunten en sleep ze naar een node om daarmee te verbinden.",editNode:"Node wijzigen"},_Z={addDescription:"Clique em um espaço em branco para adicionar um novo nó",addEdge:"Adicionar aresta",addNode:"Adicionar nó",back:"Voltar",close:"Fechar",createEdgeError:"Não foi possível linkar arestas a um cluster.",del:"Remover selecionado",deleteClusterError:"Clusters não puderam ser removidos.",edgeDescription:"Clique em um nó e arraste a aresta até outro nó para conectá-los",edit:"Editar",editClusterError:"Clusters não puderam ser editados.",editEdge:"Editar aresta",editEdgeDescription:"Clique nos pontos de controle e os arraste para um nó para conectá-los",editNode:"Editar nó"},wZ={addDescription:"Кликните в свободное место, чтобы добавить новый узел.",addEdge:"Добавить ребро",addNode:"Добавить узел",back:"Назад",close:"Закрывать",createEdgeError:"Невозможно соединить ребра в кластер.",del:"Удалить выбранное",deleteClusterError:"Кластеры не могут быть удалены",edgeDescription:"Кликните на узел и протяните ребро к другому узлу, чтобы соединить их.",edit:"Редактировать",editClusterError:"Кластеры недоступны для редактирования.",editEdge:"Редактировать ребро",editEdgeDescription:"Кликните на контрольные точки и перетащите их в узел, чтобы подключиться к нему.",editNode:"Редактировать узел"},EZ={addDescription:"单击空白处放置新节点。",addEdge:"添加连接线",addNode:"添加节点",back:"返回",close:"關閉",createEdgeError:"无法将连接线连接到群集。",del:"删除选定",deleteClusterError:"无法删除群集。",edgeDescription:"单击某个节点并将该连接线拖动到另一个节点以连接它们。",edit:"编辑",editClusterError:"无法编辑群集。",editEdge:"编辑连接线",editEdgeDescription:"单击控制节点并将它们拖到节点上连接。",editNode:"编辑节点"},SZ={addDescription:"Kлікніть на вільне місце, щоб додати новий вузол.",addEdge:"Додати край",addNode:"Додати вузол",back:"Назад",close:"Закрити",createEdgeError:"Не можливо об'єднати краї в групу.",del:"Видалити обране",deleteClusterError:"Групи не можуть бути видалені.",edgeDescription:"Клікніть на вузол і перетягніть край до іншого вузла, щоб їх з'єднати.",edit:"Редагувати",editClusterError:"Групи недоступні для редагування.",editEdge:"Редагувати край",editEdgeDescription:"Клікніть на контрольні точки і перетягніть їх у вузол, щоб підключитися до нього.",editNode:"Редагувати вузол"},OZ={addDescription:"Cliquez dans un endroit vide pour placer un nœud.",addEdge:"Ajouter un lien",addNode:"Ajouter un nœud",back:"Retour",close:"Fermer",createEdgeError:"Impossible de créer un lien vers un cluster.",del:"Effacer la sélection",deleteClusterError:"Les clusters ne peuvent pas être effacés.",edgeDescription:"Cliquez sur un nœud et glissez le lien vers un autre nœud pour les connecter.",edit:"Éditer",editClusterError:"Les clusters ne peuvent pas être édités.",editEdge:"Éditer le lien",editEdgeDescription:"Cliquez sur les points de contrôle et glissez-les pour connecter un nœud.",editNode:"Éditer le nœud"},IZ={addDescription:"Kluknutím do prázdného prostoru můžete přidat nový vrchol.",addEdge:"Přidat hranu",addNode:"Přidat vrchol",back:"Zpět",close:"Zavřít",createEdgeError:"Nelze připojit hranu ke shluku.",del:"Smazat výběr",deleteClusterError:"Nelze mazat shluky.",edgeDescription:"Přetažením z jednoho vrcholu do druhého můžete spojit tyto vrcholy novou hranou.",edit:"Upravit",editClusterError:"Nelze upravovat shluky.",editEdge:"Upravit hranu",editEdgeDescription:"Přetažením kontrolního vrcholu hrany ji můžete připojit k jinému vrcholu.",editNode:"Upravit vrchol"};var TZ=Object.freeze({__proto__:null,cn:EZ,cs:IZ,de:gZ,en:pZ,es:mZ,fr:OZ,it:yZ,nl:bZ,pt:_Z,ru:wZ,uk:SZ});function $Z(r,e){try{const[i,n]=e.split(/[-_ /]/,2),s=i!=null?i.toLowerCase():null,o=n!=null?n.toUpperCase():null;if(s&&o){const a=s+"-"+o;if(Object.prototype.hasOwnProperty.call(r,a))return a;var t;console.warn(JX(t="Unknown variant ".concat(o," of language ")).call(t,s,"."))}if(s){const a=s;if(Object.prototype.hasOwnProperty.call(r,a))return a;console.warn("Unknown language ".concat(s))}return console.warn("Unknown locale ".concat(e,", falling back to English.")),"en"}catch(i){return console.error(i),console.warn("Unexpected error while normalizing locale ".concat(e,", falling back to English.")),"en"}}class PZ{constructor(){this.NUM_ITERATIONS=4,this.image=new Image,this.canvas=document.createElement("canvas")}init(){if(this.initialized())return;this.src=this.image.src;const e=this.image.width,t=this.image.height;this.width=e,this.height=t;const i=Math.floor(t/2),n=Math.floor(t/4),s=Math.floor(t/8),o=Math.floor(t/16),a=Math.floor(e/2),u=Math.floor(e/4),l=Math.floor(e/8),c=Math.floor(e/16);this.canvas.width=3*u,this.canvas.height=i,this.coordinates=[[0,0,a,i],[a,0,u,n],[a,n,l,s],[5*l,n,c,o]],this._fillMipMap()}initialized(){return this.coordinates!==void 0}_fillMipMap(){const e=this.canvas.getContext("2d"),t=this.coordinates[0];e.drawImage(this.image,t[0],t[1],t[2],t[3]);for(let i=1;i2){t*=.5;let a=0;for(;t>2&&a=this.NUM_ITERATIONS&&(a=this.NUM_ITERATIONS-1);const u=this.coordinates[a];e.drawImage(this.canvas,u[0],u[1],u[2],u[3],i,n,s,o)}else e.drawImage(this.image,i,n,s,o)}}class RZ{constructor(e){this.images={},this.imageBroken={},this.callback=e}_tryloadBrokenUrl(e,t,i){if(!(e===void 0||i===void 0)){if(t===void 0){console.warn("No broken url image defined");return}i.image.onerror=()=>{console.error("Could not load brokenImage:",t)},i.image.src=t}}_redrawWithImage(e){this.callback&&this.callback(e)}load(e,t){const i=this.images[e];if(i)return i;const n=new PZ;return this.images[e]=n,n.image.onload=()=>{this._fixImageCoordinates(n.image),n.init(),this._redrawWithImage(n)},n.image.onerror=()=>{console.error("Could not load image:",e),this._tryloadBrokenUrl(e,t,n)},n.image.src=e,n}_fixImageCoordinates(e){e.width===0&&(document.body.appendChild(e),e.width=e.offsetWidth,e.height=e.offsetHeight,document.body.removeChild(e))}}var fF={},vF={},tb={exports:{}},rb,pF;function CZ(){if(pF)return rb;pF=1;var r=$e();return rb=r(function(){if(typeof ArrayBuffer=="function"){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}),rb}var ib,gF;function xZ(){if(gF)return ib;gF=1;var r=$e(),e=Ot(),t=Lr(),i=CZ(),n=Object.isExtensible,s=r(function(){});return ib=s||i?function(a){return!e(a)||i&&t(a)==="ArrayBuffer"?!1:n?n(a):!0}:n,ib}var nb,mF;function S5(){if(mF)return nb;mF=1;var r=$e();return nb=!r(function(){return Object.isExtensible(Object.preventExtensions({}))}),nb}var yF;function ol(){if(yF)return tb.exports;yF=1;var r=ce(),e=Ce(),t=ha(),i=Ot(),n=$t(),s=fr().f,o=el(),a=r0(),u=xZ(),l=Ku(),c=S5(),d=!1,h=l("meta"),f=0,v=function(y){s(y,h,{value:{objectID:"O"+f++,weakData:{}}})},p=function(y,S){if(!i(y))return typeof y=="symbol"?y:(typeof y=="string"?"S":"P")+y;if(!n(y,h)){if(!u(y))return"F";if(!S)return"E";v(y)}return y[h].objectID},b=function(y,S){if(!n(y,h)){if(!u(y))return!0;if(!S)return!1;v(y)}return y[h].weakData},m=function(y){return c&&d&&u(y)&&!n(y,h)&&v(y),y},g=function(){w.enable=function(){},d=!0;var y=o.f,S=e([].splice),O={};O[h]=1,y(O).length&&(o.f=function(I){for(var _=y(I),E=0,T=_.length;E_;_++)if(T=D(f[_]),T&&o(h,T))return T;return new d(!1)}O=a(f,I)}for(R=g?f.next:O.next;!(x=e(R,O)).done;){try{T=D(x.value)}catch(j){l(O,"throw",j)}if(typeof T=="object"&&T&&o(h,T))return T}return new d(!1)},lb}var cb,OF;function b0(){if(OF)return cb;OF=1;var r=ht(),e=TypeError;return cb=function(t,i){if(r(i,t))return t;throw new e("Incorrect invocation")},cb}var db,IF;function _0(){if(IF)return db;IF=1;var r=ce(),e=Ye(),t=ol(),i=$e(),n=Bs(),s=al(),o=b0(),a=St(),u=Ot(),l=Ds(),c=qn(),d=fr().f,h=Wi().forEach,f=it(),v=Dn(),p=v.set,b=v.getterFor;return db=function(m,g,w){var y=m.indexOf("Map")!==-1,S=m.indexOf("Weak")!==-1,O=y?"set":"add",I=e[m],_=I&&I.prototype,E={},T;if(!f||!a(I)||!(S||_.forEach&&!i(function(){new I().entries().next()})))T=w.getConstructor(g,m,y,O),t.enable();else{T=g(function(C,D){p(o(C,R),{type:m,collection:new I}),l(D)||s(D,C[O],{that:C,AS_ENTRIES:y})});var R=T.prototype,x=b(m);h(["add","clear","delete","forEach","get","has","set","keys","values","entries"],function(C){var D=C==="add"||C==="set";C in _&&!(S&&C==="clear")&&n(R,C,function(j,ee){var H=x(this).collection;if(!D&&S&&!u(j))return C==="get"?void 0:!1;var Z=H[C](j===0?0:j,ee);return D?this:Z})}),S||d(R,"size",{configurable:!0,get:function(){return x(this).collection.size}})}return c(T,m,!1,!0),E[m]=T,r({global:!0,forced:!0},E),S||w.setStrong(T,m,y),T},db}var hb,TF;function w0(){if(TF)return hb;TF=1;var r=ga();return hb=function(e,t,i){for(var n in t)i&&i.unsafe&&e[n]?e[n]=t[n]:r(e,n,t[n],i);return e},hb}var fb,$F;function AZ(){if($F)return fb;$F=1;var r=rr(),e=i0(),t=ft(),i=it(),n=t("species");return fb=function(s){var o=r(s);i&&o&&!o[n]&&e(o,n,{configurable:!0,get:function(){return this}})},fb}var vb,PF;function I5(){if(PF)return vb;PF=1;var r=pa(),e=i0(),t=w0(),i=Yu(),n=b0(),s=Ds(),o=al(),a=s0(),u=o0(),l=AZ(),c=it(),d=ol().fastKey,h=Dn(),f=h.set,v=h.getterFor;return vb={getConstructor:function(p,b,m,g){var w=p(function(_,E){n(_,y),f(_,{type:b,index:r(null),first:null,last:null,size:0}),c||(_.size=0),s(E)||o(E,_[g],{that:_,AS_ENTRIES:m})}),y=w.prototype,S=v(b),O=function(_,E,T){var R=S(_),x=I(_,E),C,D;return x?x.value=T:(R.last=x={index:D=d(E,!0),key:E,value:T,previous:C=R.last,next:null,removed:!1},R.first||(R.first=x),C&&(C.next=x),c?R.size++:_.size++,D!=="F"&&(R.index[D]=x)),_},I=function(_,E){var T=S(_),R=d(E),x;if(R!=="F")return T.index[R];for(x=T.first;x;x=x.next)if(x.key===E)return x};return t(y,{clear:function(){for(var E=this,T=S(E),R=T.first;R;)R.removed=!0,R.previous&&(R.previous=R.previous.next=null),R=R.next;T.first=T.last=null,T.index=r(null),c?T.size=0:E.size=0},delete:function(_){var E=this,T=S(E),R=I(E,_);if(R){var x=R.next,C=R.previous;delete T.index[R.index],R.removed=!0,C&&(C.next=x),x&&(x.previous=C),T.first===R&&(T.first=x),T.last===R&&(T.last=C),c?T.size--:E.size--}return!!R},forEach:function(E){for(var T=S(this),R=i(E,arguments.length>1?arguments[1]:void 0),x;x=x?x.next:T.first;)for(R(x.value,x.key,this);x&&x.removed;)x=x.previous},has:function(E){return!!I(this,E)}}),t(y,m?{get:function(E){var T=I(this,E);return T&&T.value},set:function(E,T){return O(this,E===0?0:E,T)}}:{add:function(E){return O(this,E=E===0?0:E,E)}}),c&&e(y,"size",{configurable:!0,get:function(){return S(this).size}}),w},setStrong:function(p,b,m){var g=b+" Iterator",w=v(b),y=v(g);a(p,b,function(S,O){f(this,{type:g,target:S,state:w(S),kind:O,last:null})},function(){for(var S=y(this),O=S.kind,I=S.last;I&&I.removed;)I=I.previous;return!S.target||!(S.last=I=I?I.next:S.state.first)?(S.target=null,u(void 0,!0)):u(O==="keys"?I.key:O==="values"?I.value:[I.key,I.value],!1)},m?"entries":"values",!m,!0),l(b)}},vb}var RF;function MZ(){if(RF)return vF;RF=1;var r=_0(),e=I5();return r("Map",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),vF}var CF;function NZ(){return CF||(CF=1,MZ()),fF}var xF={},pb,qF;function T5(){return qF||(qF=1,pb=function(r,e){return e===1?function(t,i){return t[r](i)}:function(t,i,n){return t[r](i,n)}}),pb}var gb,DF;function FZ(){if(DF)return gb;DF=1;var r=rr(),e=T5(),t=r("Map");return gb={Map:t,set:e("set",2),get:e("get",1),has:e("has",1),remove:e("delete",1),proto:t.prototype},gb}var AF;function kZ(){if(AF)return xF;AF=1;var r=ce(),e=Ce(),t=di(),i=ci(),n=al(),s=FZ(),o=Fs(),a=$e(),u=s.Map,l=s.has,c=s.get,d=s.set,h=e([].push),f=o||a(function(){return u.groupBy("ab",function(v){return v}).get("a").length!==1});return r({target:"Map",stat:!0,forced:o||f},{groupBy:function(p,b){i(p),t(b);var m=new u,g=0;return n(p,function(w){var y=b(w,g++);l(m,y)?h(c(m,y),w):d(m,y,[w])}),m}}),xF}var MF={},mb,NF;function BZ(){if(NF)return mb;NF=1;var r=Ce(),e=js(),t=vr(),i=ci(),n=r("".charAt),s=r("".charCodeAt),o=r("".slice),a=function(u){return function(l,c){var d=t(i(l)),h=e(c),f=d.length,v,p;return h<0||h>=f?u?"":void 0:(v=s(d,h),v<55296||v>56319||h+1===f||(p=s(d,h+1))<56320||p>57343?u?n(d,h):v:u?o(d,h,h+2):(v-55296<<10)+(p-56320)+65536)}};return mb={codeAt:a(!1),charAt:a(!0)},mb}var FF;function E0(){if(FF)return MF;FF=1;var r=BZ().charAt,e=vr(),t=Dn(),i=s0(),n=o0(),s="String Iterator",o=t.set,a=t.getterFor(s);return i(String,"String",function(u){o(this,{type:s,string:e(u),index:0})},function(){var l=a(this),c=l.string,d=l.index,h;return d>=c.length?n(void 0,!0):(h=r(c,d),l.index+=h.length,n(h,!1))}),MF}var yb,kF;function jZ(){if(kF)return yb;kF=1,Ws(),NZ(),kZ(),E0();var r=Be();return yb=r.Map,yb}var bb,BF;function LZ(){if(BF)return bb;BF=1;var r=jZ();return Us(),bb=r,bb}var _b,jF;function zZ(){return jF||(jF=1,_b=LZ()),_b}var HZ=zZ(),S0=pe(HZ);class WZ{constructor(){this.clear(),this._defaultIndex=0,this._groupIndex=0,this._defaultGroups=[{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},{border:"#FFA500",background:"#FFFF00",highlight:{border:"#FFA500",background:"#FFFFA3"},hover:{border:"#FFA500",background:"#FFFFA3"}},{border:"#FA0A10",background:"#FB7E81",highlight:{border:"#FA0A10",background:"#FFAFB1"},hover:{border:"#FA0A10",background:"#FFAFB1"}},{border:"#41A906",background:"#7BE141",highlight:{border:"#41A906",background:"#A1EC76"},hover:{border:"#41A906",background:"#A1EC76"}},{border:"#E129F0",background:"#EB7DF4",highlight:{border:"#E129F0",background:"#F0B3F5"},hover:{border:"#E129F0",background:"#F0B3F5"}},{border:"#7C29F0",background:"#AD85E4",highlight:{border:"#7C29F0",background:"#D3BDF0"},hover:{border:"#7C29F0",background:"#D3BDF0"}},{border:"#C37F00",background:"#FFA807",highlight:{border:"#C37F00",background:"#FFCA66"},hover:{border:"#C37F00",background:"#FFCA66"}},{border:"#4220FB",background:"#6E6EFD",highlight:{border:"#4220FB",background:"#9B9BFD"},hover:{border:"#4220FB",background:"#9B9BFD"}},{border:"#FD5A77",background:"#FFC0CB",highlight:{border:"#FD5A77",background:"#FFD1D9"},hover:{border:"#FD5A77",background:"#FFD1D9"}},{border:"#4AD63A",background:"#C2FABC",highlight:{border:"#4AD63A",background:"#E6FFE3"},hover:{border:"#4AD63A",background:"#E6FFE3"}},{border:"#990000",background:"#EE0000",highlight:{border:"#BB0000",background:"#FF3333"},hover:{border:"#BB0000",background:"#FF3333"}},{border:"#FF6000",background:"#FF6000",highlight:{border:"#FF6000",background:"#FF6000"},hover:{border:"#FF6000",background:"#FF6000"}},{border:"#97C2FC",background:"#2B7CE9",highlight:{border:"#D2E5FF",background:"#2B7CE9"},hover:{border:"#D2E5FF",background:"#2B7CE9"}},{border:"#399605",background:"#255C03",highlight:{border:"#399605",background:"#255C03"},hover:{border:"#399605",background:"#255C03"}},{border:"#B70054",background:"#FF007E",highlight:{border:"#B70054",background:"#FF007E"},hover:{border:"#B70054",background:"#FF007E"}},{border:"#AD85E4",background:"#7C29F0",highlight:{border:"#D3BDF0",background:"#7C29F0"},hover:{border:"#D3BDF0",background:"#7C29F0"}},{border:"#4557FA",background:"#000EA1",highlight:{border:"#6E6EFD",background:"#000EA1"},hover:{border:"#6E6EFD",background:"#000EA1"}},{border:"#FFC0CB",background:"#FD5A77",highlight:{border:"#FFD1D9",background:"#FD5A77"},hover:{border:"#FFD1D9",background:"#FD5A77"}},{border:"#C2FABC",background:"#74D66A",highlight:{border:"#E6FFE3",background:"#74D66A"},hover:{border:"#E6FFE3",background:"#74D66A"}},{border:"#EE0000",background:"#990000",highlight:{border:"#FF3333",background:"#BB0000"},hover:{border:"#FF3333",background:"#BB0000"}}],this.options={},this.defaultOptions={useDefaultGroups:!0},at(this.options,this.defaultOptions)}setOptions(e){const t=["useDefaultGroups"];if(e!==void 0){for(const i in e)if(Object.prototype.hasOwnProperty.call(e,i)&&Fe(t).call(t,i)===-1){const n=e[i];this.add(i,n)}}}clear(){this._groups=new S0,this._groupNames=[]}get(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,i=this._groups.get(e);if(i===void 0&&t)if(this.options.useDefaultGroups===!1&&this._groupNames.length>0){const n=this._groupIndex%this._groupNames.length;++this._groupIndex,i={},i.color=this._groups.get(this._groupNames[n]),this._groups.set(e,i)}else{const n=this._defaultIndex%this._defaultGroups.length;this._defaultIndex++,i={},i.color=this._defaultGroups[n],this._groups.set(e,i)}return i}add(e,t){return this._groups.has(e)||this._groupNames.push(e),this._groups.set(e,t),t}}var LF={},zF;function UZ(){if(zF)return LF;zF=1;var r=ce();return r({target:"Number",stat:!0},{isNaN:function(t){return t!==t}}),LF}var wb,HF;function VZ(){if(HF)return wb;HF=1,UZ();var r=Be();return wb=r.Number.isNaN,wb}var Eb,WF;function KZ(){if(WF)return Eb;WF=1;var r=VZ();return Eb=r,Eb}var Sb,UF;function GZ(){return UF||(UF=1,Sb=KZ()),Sb}var YZ=GZ(),X_=pe(YZ),VF={},Ob,KF;function XZ(){if(KF)return Ob;KF=1;var r=Ye(),e=r.isFinite;return Ob=Number.isFinite||function(i){return typeof i=="number"&&e(i)},Ob}var GF;function JZ(){if(GF)return VF;GF=1;var r=ce(),e=XZ();return r({target:"Number",stat:!0},{isFinite:e}),VF}var Ib,YF;function QZ(){if(YF)return Ib;YF=1,JZ();var r=Be();return Ib=r.Number.isFinite,Ib}var Tb,XF;function ZZ(){if(XF)return Tb;XF=1;var r=QZ();return Tb=r,Tb}var $b,JF;function eee(){return JF||(JF=1,$b=ZZ()),$b}var tee=eee(),tn=pe(tee),QF={},ZF;function ree(){if(ZF)return QF;ZF=1;var r=ce(),e=Wi().some,t=Vs(),i=t("some");return r({target:"Array",proto:!0,forced:!i},{some:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),QF}var Pb,ek;function iee(){if(ek)return Pb;ek=1,ree();var r=Pt();return Pb=r("Array","some"),Pb}var Rb,tk;function nee(){if(tk)return Rb;tk=1;var r=ht(),e=iee(),t=Array.prototype;return Rb=function(i){var n=i.some;return i===t||r(t,i)&&n===t.some?e:n},Rb}var Cb,rk;function see(){if(rk)return Cb;rk=1;var r=nee();return Cb=r,Cb}var xb,ik;function oee(){return ik||(ik=1,xb=see()),xb}var aee=oee(),uee=pe(aee),qb={exports:{}},nk={},sk;function lee(){if(sk)return nk;sk=1;var r=ce(),e=it(),t=fr().f;return r({target:"Object",stat:!0,forced:Object.defineProperty!==t,sham:!e},{defineProperty:t}),nk}var ok;function cee(){if(ok)return qb.exports;ok=1,lee();var r=Be(),e=r.Object,t=qb.exports=function(n,s,o){return e.defineProperty(n,s,o)};return e.defineProperty.sham&&(t.sham=!0),qb.exports}var Db,ak;function $5(){if(ak)return Db;ak=1;var r=cee();return Db=r,Db}var Ab,uk;function dee(){if(uk)return Ab;uk=1;var r=$5();return Ab=r,Ab}var Mb,lk;function hee(){if(lk)return Mb;lk=1;var r=dee();return Mb=r,Mb}var Nb,ck;function fee(){return ck||(ck=1,Nb=hee()),Nb}var vee=fee(),pee=pe(vee),dk={},hk;function gee(){if(hk)return dk;hk=1;var r=ft(),e=fr().f,t=r("metadata"),i=Function.prototype;return i[t]===void 0&&e(i,t,{value:null}),dk}var fk={},vk;function mee(){return vk||(vk=1,R3()),fk}var pk={},gk;function yee(){return gk||(gk=1,C3()),pk}var mk={},yk;function bee(){if(yk)return mk;yk=1;var r=Je();return r("metadata"),mk}var Fb,bk;function _ee(){if(bk)return Fb;bk=1;var r=M3();return gee(),mee(),yee(),bee(),Fb=r,Fb}var _k={},kb,wk;function P5(){if(wk)return kb;wk=1;var r=rr(),e=Ce(),t=r("Symbol"),i=t.keyFor,n=e(t.prototype.valueOf);return kb=t.isRegisteredSymbol||function(o){try{return i(n(o))!==void 0}catch{return!1}},kb}var Ek;function wee(){if(Ek)return _k;Ek=1;var r=ce(),e=P5();return r({target:"Symbol",stat:!0},{isRegisteredSymbol:e}),_k}var Sk={},Bb,Ok;function R5(){if(Ok)return Bb;Ok=1;for(var r=ks(),e=rr(),t=Ce(),i=da(),n=ft(),s=e("Symbol"),o=s.isWellKnownSymbol,a=e("Object","getOwnPropertyNames"),u=t(s.prototype.valueOf),l=r("wks"),c=0,d=a(s),h=d.length;ch;)v=l(u,f=c[h++]),v!==void 0&&s(d,f,v);return d}}),b2}var d1,w2;function yte(){if(w2)return d1;w2=1,mte();var r=Be();return d1=r.Object.getOwnPropertyDescriptors,d1}var h1,E2;function bte(){if(E2)return h1;E2=1;var r=yte();return h1=r,h1}var f1,S2;function _te(){return S2||(S2=1,f1=bte()),f1}var wte=_te(),Mi=pe(wte),v1={exports:{}},O2={},I2;function Ete(){if(I2)return O2;I2=1;var r=ce(),e=it(),t=t0().f;return r({target:"Object",stat:!0,forced:Object.defineProperties!==t,sham:!e},{defineProperties:t}),O2}var T2;function Ste(){if(T2)return v1.exports;T2=1,Ete();var r=Be(),e=r.Object,t=v1.exports=function(n,s){return e.defineProperties(n,s)};return e.defineProperties.sham&&(t.sham=!0),v1.exports}var p1,$2;function Ote(){if($2)return p1;$2=1;var r=Ste();return p1=r,p1}var g1,P2;function Ite(){return P2||(P2=1,g1=Ote()),g1}var Tte=Ite(),ul=pe(Tte),m1,R2;function $te(){return R2||(R2=1,m1=$5()),m1}var Pte=$te(),ll=pe(Pte);function O0(r,e){const t=["node","edge","label"];let i=!0;const n=_i(e,"chosen");if(typeof n=="boolean")i=n;else if(typeof n=="object"){if(Fe(t).call(t,r)===-1)throw new Error("choosify: subOption '"+r+"' should be one of '"+t.join("', '")+"'");const s=_i(e,["chosen",r]);(typeof s=="boolean"||typeof s=="function")&&(i=s)}return i}function J_(r,e,t){if(r.width<=0||r.height<=0)return!1;if(t!==void 0){const s={x:e.x-t.x,y:e.y-t.y};if(t.angle!==0){const o=-t.angle;e={x:Math.cos(o)*s.x-Math.sin(o)*s.y,y:Math.sin(o)*s.x+Math.cos(o)*s.y}}else e=s}const i=r.x+r.width,n=r.y+r.width;return r.lefte.x&&r.tope.y}function hu(r){return typeof r=="string"&&r!==""}function x5(r,e,t,i){let n=i.x,s=i.y;if(typeof i.distanceToBorder=="function"){const o=i.distanceToBorder(r,e),a=Math.sin(e)*o,u=Math.cos(e)*o;u===o?(n+=o,s=i.y):a===o?(n=i.x,s-=o):(n+=u,s-=a)}else i.shape.width>i.shape.height?(n=i.x+i.shape.width*.5,s=i.y-t):(n=i.x+t,s=i.y-i.shape.height*.5);return{x:n,y:s}}var y1,C2;function Rte(){if(C2)return y1;C2=1,Ws();var r=Pt();return y1=r("Array","values"),y1}var b1,x2;function Cte(){if(x2)return b1;x2=1;var r=Rte();return b1=r,b1}var _1,q2;function xte(){if(q2)return _1;q2=1,Us();var r=zs(),e=$t(),t=ht(),i=Cte(),n=Array.prototype,s={DOMTokenList:!0,NodeList:!0};return _1=function(o){var a=o.values;return o===n||t(n,o)&&a===n.values||e(s,r(o))?i:a},_1}var w1,D2;function qte(){return D2||(D2=1,w1=xte()),w1}var Dte=qte(),q5=pe(Dte);class Ate{constructor(e){this.measureText=e,this.current=0,this.width=0,this.height=0,this.lines=[]}_add(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"normal";this.lines[e]===void 0&&(this.lines[e]={width:0,height:0,blocks:[]});let n=t;(t===void 0||t==="")&&(n=" ");const s=this.measureText(n,i),o=at({},q5(s));o.text=t,o.width=s.width,o.mod=i,(t===void 0||t==="")&&(o.width=0),this.lines[e].blocks.push(o),this.lines[e].width+=o.width}curWidth(){const e=this.lines[this.current];return e===void 0?0:e.width}append(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"normal";this._add(this.current,e,t)}newLine(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"normal";this._add(this.current,e,t),this.current++}determineLineHeights(){for(let e=0;ee&&(e=n.width),t+=n.height}this.width=e,this.height=t}removeEmptyBlocks(){const e=[];for(let t=0;t"://,""://,""://,"":/<\/b>/,"":/<\/i>/,"":/<\/code>/,"*":/\*/,_:/_/,"`":/`/,afterBold:/[^*]/,afterItal:/[^_]/,afterMono:/[^`]/};class A2{constructor(e){this.text=e,this.bold=!1,this.ital=!1,this.mono=!1,this.spacing=!1,this.position=0,this.buffer="",this.modStack=[],this.blocks=[]}mod(){return this.modStack.length===0?"normal":this.modStack[0]}modName(){if(this.modStack.length===0)return"normal";if(this.modStack[0]==="mono")return"mono";if(this.bold&&this.ital)return"boldital";if(this.bold)return"bold";if(this.ital)return"ital"}emitBlock(){this.spacing&&(this.add(" "),this.spacing=!1),this.buffer.length>0&&(this.blocks.push({text:this.buffer,mod:this.modName()}),this.buffer="")}add(e){e===" "&&(this.spacing=!0),this.spacing&&(this.buffer+=" ",this.spacing=!1),e!=" "&&(this.buffer+=e)}parseWS(e){return/[ \t]/.test(e)?(this.mono?this.add(e):this.spacing=!0,!0):!1}setTag(e){this.emitBlock(),this[e]=!0,this.modStack.unshift(e)}unsetTag(e){this.emitBlock(),this[e]=!1,this.modStack.shift()}parseStartTag(e,t){return!this.mono&&!this[e]&&this.match(t)?(this.setTag(e),!0):!1}match(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const[i,n]=this.prepareRegExp(e),s=i.test(this.text.substr(this.position,n));return s&&t&&(this.position+=n-1),s}parseEndTag(e,t,i){let n=this.mod()===e;return e==="mono"?n=n&&this.mono:n=n&&!this.mono,n&&this.match(t)?(i!==void 0?(this.position===this.text.length-1||this.match(i,!1))&&this.unsetTag(e):this.unsetTag(e),!0):!1}replace(e,t){return this.match(e)?(this.add(t),this.position+=length-1,!0):!1}prepareRegExp(e){let t,i;if(e instanceof RegExp)i=e,t=1;else{const n=Mte[e];n!==void 0?i=n:i=new RegExp(e),t=e.length}return[i,t]}}class Nte{constructor(e,t,i,n){this.ctx=e,this.parent=t,this.selected=i,this.hover=n;const s=(o,a)=>{if(o===void 0)return 0;const u=this.parent.getFormattingValues(e,i,n,a);let l=0;return o!==""&&(l=this.ctx.measureText(o).width),{width:l,values:u}};this.lines=new Ate(s)}process(e){if(!hu(e))return this.lines.finalize();const t=this.parent.fontOptions;e=e.replace(/\r\n/g,` +`||Se==="\r";)mt()}while(r);if(Se===""){Ut=Nt.DELIMITER;return}var t=Se+Wn();if(cF[t]){Ut=Nt.DELIMITER,fe=t,mt(),mt();return}if(cF[Se]){Ut=Nt.DELIMITER,fe=Se,mt();return}if(dF(Se)||Se==="-"){for(fe+=Se,mt();dF(Se);)fe+=Se,mt();fe==="false"?fe=!1:fe==="true"?fe=!0:isNaN(Number(fe))||(fe=Number(fe)),Ut=Nt.IDENTIFIER;return}if(Se==='"'){for(mt();Se!=""&&(Se!='"'||Se==='"'&&Wn()==='"');)Se==='"'?(fe+=Se,mt()):Se==="\\"&&Wn()==="n"?(fe+=` +`,mt()):fe+=Se,mt();if(Se!='"')throw Ft('End of string " expected');mt(),Ut=Nt.IDENTIFIER;return}for(Ut=Nt.UNKNOWN;Se!="";)fe+=Se,mt();throw new SyntaxError('Syntax error in part "'+O5(fe,30)+'"')}function lZ(){var r={};if(oZ(),Ve(),fe==="strict"&&(r.strict=!0,Ve()),(fe==="graph"||fe==="digraph")&&(r.type=fe,Ve()),Ut===Nt.IDENTIFIER&&(r.id=fe,Ve()),fe!="{")throw Ft("Angle bracket { expected");if(Ve(),w5(r),fe!="}")throw Ft("Angle bracket } expected");if(Ve(),fe!=="")throw Ft("End of file expected");return Ve(),delete r.node,delete r.edge,delete r.graph,r}function w5(r){for(;fe!==""&&fe!="}";)cZ(r),fe===";"&&Ve()}function cZ(r){var e=E5(r);if(e){S5(r,e);return}var t=dZ(r);if(!t){if(Ut!=Nt.IDENTIFIER)throw Ft("Identifier expected");var i=fe;if(Ve(),fe==="="){if(Ve(),Ut!=Nt.IDENTIFIER)throw Ft("Identifier expected");r[i]=fe,Ve()}else hZ(r,i)}}function E5(r){var e=null;if(fe==="subgraph"&&(e={},e.type="subgraph",Ve(),Ut===Nt.IDENTIFIER&&(e.id=fe,Ve())),fe==="{"){if(Ve(),e||(e={}),e.parent=r,e.node=r.node,e.edge=r.edge,e.graph=r.graph,w5(e),fe!="}")throw Ft("Angle bracket } expected");Ve(),delete e.node,delete e.edge,delete e.graph,delete e.parent,r.subgraphs||(r.subgraphs=[]),r.subgraphs.push(e)}return e}function dZ(r){return fe==="node"?(Ve(),r.node=_o(),"node"):fe==="edge"?(Ve(),r.edge=_o(),"edge"):fe==="graph"?(Ve(),r.graph=_o(),"graph"):null}function hZ(r,e){var t={id:e},i=_o();i&&(t.attr=i),b5(r,t),S5(r,e)}function S5(r,e){for(;fe==="->"||fe==="--";){var t,i=fe;Ve();var n=E5(r);if(n)t=n;else{if(Ut!=Nt.IDENTIFIER)throw Ft("Identifier or subgraph expected");t=fe,b5(r,{id:t}),Ve()}var s=_o(),o=_5(r,e,t,i,s);uZ(r,o),e=t}}function _o(){for(var r,e=null,t={dashed:!0,solid:!1,dotted:[1,5]},i={dot:"circle",box:"box",crow:"crow",curve:"curve",icurve:"inv_curve",normal:"triangle",inv:"inv_triangle",diamond:"diamond",tee:"bar",vee:"vee"},n=new Array,s=new Array;fe==="[";){for(Ve(),e={};fe!==""&&fe!="]";){if(Ut!=Nt.IDENTIFIER)throw Ft("Attribute name expected");var o=fe;if(Ve(),fe!="=")throw Ft("Equal sign = expected");if(Ve(),Ut!=Nt.IDENTIFIER)throw Ft("Attribute value expected");var a=fe;o==="style"&&(a=t[a]);var u;o==="arrowhead"&&(u=i[a],o="arrows",a={to:{enabled:!0,type:u}}),o==="arrowtail"&&(u=i[a],o="arrows",a={from:{enabled:!0,type:u}}),n.push({attr:e,name:o,value:a}),s.push(o),Ve(),fe==","&&Ve()}if(fe!="]")throw Ft("Bracket ] expected");Ve()}if($i(s).call(s,"dir")){var l={};for(l.arrows={},r=0;r"&&(a.arrows="to"),a};Le(n=e.edges).call(n,function(o){var a,u;if(o.from instanceof Object?a=o.from.nodes:a={id:o.from},o.to instanceof Object?u=o.to.nodes:u={id:o.to},o.from instanceof Object&&o.from.edges){var l;Le(l=o.from.edges).call(l,function(d){var h=s(d);t.edges.push(h)})}if(fZ(a,u,function(d,h){var f=_5(t,d.id,h.id,o.type,o.attr),v=s(f);t.edges.push(v)}),o.to instanceof Object&&o.to.edges){var c;Le(c=o.to.edges).call(c,function(d){var h=s(d);t.edges.push(h)})}})}return e.attr&&(t.options=e.attr),t}function pZ(r,e){var t;const i={edges:{inheritColor:!1},nodes:{fixed:!1,parseColor:!1}};e!=null&&(e.fixed!=null&&(i.nodes.fixed=e.fixed),e.parseColor!=null&&(i.nodes.parseColor=e.parseColor),e.inheritColor!=null&&(i.edges.inheritColor=e.inheritColor));const n=r.edges,s=ms(n).call(n,a=>{const u={from:a.source,id:a.id,to:a.target};return a.attributes!=null&&(u.attributes=a.attributes),a.label!=null&&(u.label=a.label),a.attributes!=null&&a.attributes.title!=null&&(u.title=a.attributes.title),a.type==="Directed"&&(u.arrows="to"),a.color&&i.edges.inheritColor===!1&&(u.color=a.color),u});return{nodes:ms(t=r.nodes).call(t,a=>{const u={id:a.id,fixed:i.nodes.fixed&&a.x!=null&&a.y!=null};return a.attributes!=null&&(u.attributes=a.attributes),a.label!=null&&(u.label=a.label),a.size!=null&&(u.size=a.size),a.attributes!=null&&a.attributes.title!=null&&(u.title=a.attributes.title),a.title!=null&&(u.title=a.title),a.x!=null&&(u.x=a.x),a.y!=null&&(u.y=a.y),a.color!=null&&(i.nodes.parseColor===!0?u.color=a.color:u.color={background:a.color,border:a.color,highlight:{background:a.color,border:a.color},hover:{background:a.color,border:a.color}}),u}),edges:s}}const gZ={addDescription:"Click in an empty space to place a new node.",addEdge:"Add Edge",addNode:"Add Node",back:"Back",close:"Close",createEdgeError:"Cannot link edges to a cluster.",del:"Delete selected",deleteClusterError:"Clusters cannot be deleted.",edgeDescription:"Click on a node and drag the edge to another node to connect them.",edit:"Edit",editClusterError:"Clusters cannot be edited.",editEdge:"Edit Edge",editEdgeDescription:"Click on the control points and drag them to a node to connect to it.",editNode:"Edit Node"},mZ={addDescription:"Klicke auf eine freie Stelle, um einen neuen Knoten zu plazieren.",addEdge:"Kante hinzufügen",addNode:"Knoten hinzufügen",back:"Zurück",close:"Schließen",createEdgeError:"Es ist nicht möglich, Kanten mit Clustern zu verbinden.",del:"Lösche Auswahl",deleteClusterError:"Cluster können nicht gelöscht werden.",edgeDescription:"Klicke auf einen Knoten und ziehe die Kante zu einem anderen Knoten, um diese zu verbinden.",edit:"Editieren",editClusterError:"Cluster können nicht editiert werden.",editEdge:"Kante editieren",editEdgeDescription:"Klicke auf die Verbindungspunkte und ziehe diese auf einen Knoten, um sie zu verbinden.",editNode:"Knoten editieren"},yZ={addDescription:"Haga clic en un lugar vacío para colocar un nuevo nodo.",addEdge:"Añadir arista",addNode:"Añadir nodo",back:"Atrás",close:"Cerrar",createEdgeError:"No se puede conectar una arista a un grupo.",del:"Eliminar selección",deleteClusterError:"No es posible eliminar grupos.",edgeDescription:"Haga clic en un nodo y arrastre la arista hacia otro nodo para conectarlos.",edit:"Editar",editClusterError:"No es posible editar grupos.",editEdge:"Editar arista",editEdgeDescription:"Haga clic en un punto de control y arrastrelo a un nodo para conectarlo.",editNode:"Editar nodo"},bZ={addDescription:"Clicca per aggiungere un nuovo nodo",addEdge:"Aggiungi un vertice",addNode:"Aggiungi un nodo",back:"Indietro",close:"Chiudere",createEdgeError:"Non si possono collegare vertici ad un cluster",del:"Cancella la selezione",deleteClusterError:"I cluster non possono essere cancellati",edgeDescription:"Clicca su un nodo e trascinalo ad un altro nodo per connetterli.",edit:"Modifica",editClusterError:"I clusters non possono essere modificati.",editEdge:"Modifica il vertice",editEdgeDescription:"Clicca sui Punti di controllo e trascinali ad un nodo per connetterli.",editNode:"Modifica il nodo"},_Z={addDescription:"Klik op een leeg gebied om een nieuwe node te maken.",addEdge:"Link toevoegen",addNode:"Node toevoegen",back:"Terug",close:"Sluiten",createEdgeError:"Kan geen link maken naar een cluster.",del:"Selectie verwijderen",deleteClusterError:"Clusters kunnen niet worden verwijderd.",edgeDescription:"Klik op een node en sleep de link naar een andere node om ze te verbinden.",edit:"Wijzigen",editClusterError:"Clusters kunnen niet worden aangepast.",editEdge:"Link wijzigen",editEdgeDescription:"Klik op de verbindingspunten en sleep ze naar een node om daarmee te verbinden.",editNode:"Node wijzigen"},wZ={addDescription:"Clique em um espaço em branco para adicionar um novo nó",addEdge:"Adicionar aresta",addNode:"Adicionar nó",back:"Voltar",close:"Fechar",createEdgeError:"Não foi possível linkar arestas a um cluster.",del:"Remover selecionado",deleteClusterError:"Clusters não puderam ser removidos.",edgeDescription:"Clique em um nó e arraste a aresta até outro nó para conectá-los",edit:"Editar",editClusterError:"Clusters não puderam ser editados.",editEdge:"Editar aresta",editEdgeDescription:"Clique nos pontos de controle e os arraste para um nó para conectá-los",editNode:"Editar nó"},EZ={addDescription:"Кликните в свободное место, чтобы добавить новый узел.",addEdge:"Добавить ребро",addNode:"Добавить узел",back:"Назад",close:"Закрывать",createEdgeError:"Невозможно соединить ребра в кластер.",del:"Удалить выбранное",deleteClusterError:"Кластеры не могут быть удалены",edgeDescription:"Кликните на узел и протяните ребро к другому узлу, чтобы соединить их.",edit:"Редактировать",editClusterError:"Кластеры недоступны для редактирования.",editEdge:"Редактировать ребро",editEdgeDescription:"Кликните на контрольные точки и перетащите их в узел, чтобы подключиться к нему.",editNode:"Редактировать узел"},SZ={addDescription:"单击空白处放置新节点。",addEdge:"添加连接线",addNode:"添加节点",back:"返回",close:"關閉",createEdgeError:"无法将连接线连接到群集。",del:"删除选定",deleteClusterError:"无法删除群集。",edgeDescription:"单击某个节点并将该连接线拖动到另一个节点以连接它们。",edit:"编辑",editClusterError:"无法编辑群集。",editEdge:"编辑连接线",editEdgeDescription:"单击控制节点并将它们拖到节点上连接。",editNode:"编辑节点"},OZ={addDescription:"Kлікніть на вільне місце, щоб додати новий вузол.",addEdge:"Додати край",addNode:"Додати вузол",back:"Назад",close:"Закрити",createEdgeError:"Не можливо об'єднати краї в групу.",del:"Видалити обране",deleteClusterError:"Групи не можуть бути видалені.",edgeDescription:"Клікніть на вузол і перетягніть край до іншого вузла, щоб їх з'єднати.",edit:"Редагувати",editClusterError:"Групи недоступні для редагування.",editEdge:"Редагувати край",editEdgeDescription:"Клікніть на контрольні точки і перетягніть їх у вузол, щоб підключитися до нього.",editNode:"Редагувати вузол"},IZ={addDescription:"Cliquez dans un endroit vide pour placer un nœud.",addEdge:"Ajouter un lien",addNode:"Ajouter un nœud",back:"Retour",close:"Fermer",createEdgeError:"Impossible de créer un lien vers un cluster.",del:"Effacer la sélection",deleteClusterError:"Les clusters ne peuvent pas être effacés.",edgeDescription:"Cliquez sur un nœud et glissez le lien vers un autre nœud pour les connecter.",edit:"Éditer",editClusterError:"Les clusters ne peuvent pas être édités.",editEdge:"Éditer le lien",editEdgeDescription:"Cliquez sur les points de contrôle et glissez-les pour connecter un nœud.",editNode:"Éditer le nœud"},TZ={addDescription:"Kluknutím do prázdného prostoru můžete přidat nový vrchol.",addEdge:"Přidat hranu",addNode:"Přidat vrchol",back:"Zpět",close:"Zavřít",createEdgeError:"Nelze připojit hranu ke shluku.",del:"Smazat výběr",deleteClusterError:"Nelze mazat shluky.",edgeDescription:"Přetažením z jednoho vrcholu do druhého můžete spojit tyto vrcholy novou hranou.",edit:"Upravit",editClusterError:"Nelze upravovat shluky.",editEdge:"Upravit hranu",editEdgeDescription:"Přetažením kontrolního vrcholu hrany ji můžete připojit k jinému vrcholu.",editNode:"Upravit vrchol"};var $Z=Object.freeze({__proto__:null,cn:SZ,cs:TZ,de:mZ,en:gZ,es:yZ,fr:IZ,it:bZ,nl:_Z,pt:wZ,ru:EZ,uk:OZ});function PZ(r,e){try{const[i,n]=e.split(/[-_ /]/,2),s=i!=null?i.toLowerCase():null,o=n!=null?n.toUpperCase():null;if(s&&o){const a=s+"-"+o;if(Object.prototype.hasOwnProperty.call(r,a))return a;var t;console.warn(QX(t="Unknown variant ".concat(o," of language ")).call(t,s,"."))}if(s){const a=s;if(Object.prototype.hasOwnProperty.call(r,a))return a;console.warn("Unknown language ".concat(s))}return console.warn("Unknown locale ".concat(e,", falling back to English.")),"en"}catch(i){return console.error(i),console.warn("Unexpected error while normalizing locale ".concat(e,", falling back to English.")),"en"}}class RZ{constructor(){this.NUM_ITERATIONS=4,this.image=new Image,this.canvas=document.createElement("canvas")}init(){if(this.initialized())return;this.src=this.image.src;const e=this.image.width,t=this.image.height;this.width=e,this.height=t;const i=Math.floor(t/2),n=Math.floor(t/4),s=Math.floor(t/8),o=Math.floor(t/16),a=Math.floor(e/2),u=Math.floor(e/4),l=Math.floor(e/8),c=Math.floor(e/16);this.canvas.width=3*u,this.canvas.height=i,this.coordinates=[[0,0,a,i],[a,0,u,n],[a,n,l,s],[5*l,n,c,o]],this._fillMipMap()}initialized(){return this.coordinates!==void 0}_fillMipMap(){const e=this.canvas.getContext("2d"),t=this.coordinates[0];e.drawImage(this.image,t[0],t[1],t[2],t[3]);for(let i=1;i2){t*=.5;let a=0;for(;t>2&&a=this.NUM_ITERATIONS&&(a=this.NUM_ITERATIONS-1);const u=this.coordinates[a];e.drawImage(this.canvas,u[0],u[1],u[2],u[3],i,n,s,o)}else e.drawImage(this.image,i,n,s,o)}}class CZ{constructor(e){this.images={},this.imageBroken={},this.callback=e}_tryloadBrokenUrl(e,t,i){if(!(e===void 0||i===void 0)){if(t===void 0){console.warn("No broken url image defined");return}i.image.onerror=()=>{console.error("Could not load brokenImage:",t)},i.image.src=t}}_redrawWithImage(e){this.callback&&this.callback(e)}load(e,t){const i=this.images[e];if(i)return i;const n=new RZ;return this.images[e]=n,n.image.onload=()=>{this._fixImageCoordinates(n.image),n.init(),this._redrawWithImage(n)},n.image.onerror=()=>{console.error("Could not load image:",e),this._tryloadBrokenUrl(e,t,n)},n.image.src=e,n}_fixImageCoordinates(e){e.width===0&&(document.body.appendChild(e),e.width=e.offsetWidth,e.height=e.offsetHeight,document.body.removeChild(e))}}var fF={},vF={},tb={exports:{}},rb,pF;function xZ(){if(pF)return rb;pF=1;var r=$e();return rb=r(function(){if(typeof ArrayBuffer=="function"){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}),rb}var ib,gF;function qZ(){if(gF)return ib;gF=1;var r=$e(),e=Ot(),t=Lr(),i=xZ(),n=Object.isExtensible,s=r(function(){});return ib=s||i?function(a){return!e(a)||i&&t(a)==="ArrayBuffer"?!1:n?n(a):!0}:n,ib}var nb,mF;function I5(){if(mF)return nb;mF=1;var r=$e();return nb=!r(function(){return Object.isExtensible(Object.preventExtensions({}))}),nb}var yF;function ol(){if(yF)return tb.exports;yF=1;var r=ce(),e=Ce(),t=ha(),i=Ot(),n=$t(),s=fr().f,o=el(),a=r0(),u=qZ(),l=Ku(),c=I5(),d=!1,h=l("meta"),f=0,v=function(y){s(y,h,{value:{objectID:"O"+f++,weakData:{}}})},p=function(y,S){if(!i(y))return typeof y=="symbol"?y:(typeof y=="string"?"S":"P")+y;if(!n(y,h)){if(!u(y))return"F";if(!S)return"E";v(y)}return y[h].objectID},b=function(y,S){if(!n(y,h)){if(!u(y))return!0;if(!S)return!1;v(y)}return y[h].weakData},m=function(y){return c&&d&&u(y)&&!n(y,h)&&v(y),y},g=function(){w.enable=function(){},d=!0;var y=o.f,S=e([].splice),O={};O[h]=1,y(O).length&&(o.f=function(I){for(var _=y(I),E=0,T=_.length;E_;_++)if(T=D(f[_]),T&&o(h,T))return T;return new d(!1)}O=a(f,I)}for(R=g?f.next:O.next;!(x=e(R,O)).done;){try{T=D(x.value)}catch(j){l(O,"throw",j)}if(typeof T=="object"&&T&&o(h,T))return T}return new d(!1)},lb}var cb,OF;function b0(){if(OF)return cb;OF=1;var r=ht(),e=TypeError;return cb=function(t,i){if(r(i,t))return t;throw new e("Incorrect invocation")},cb}var db,IF;function _0(){if(IF)return db;IF=1;var r=ce(),e=Ye(),t=ol(),i=$e(),n=Bs(),s=al(),o=b0(),a=St(),u=Ot(),l=Ds(),c=qn(),d=fr().f,h=Wi().forEach,f=it(),v=Dn(),p=v.set,b=v.getterFor;return db=function(m,g,w){var y=m.indexOf("Map")!==-1,S=m.indexOf("Weak")!==-1,O=y?"set":"add",I=e[m],_=I&&I.prototype,E={},T;if(!f||!a(I)||!(S||_.forEach&&!i(function(){new I().entries().next()})))T=w.getConstructor(g,m,y,O),t.enable();else{T=g(function(C,D){p(o(C,R),{type:m,collection:new I}),l(D)||s(D,C[O],{that:C,AS_ENTRIES:y})});var R=T.prototype,x=b(m);h(["add","clear","delete","forEach","get","has","set","keys","values","entries"],function(C){var D=C==="add"||C==="set";C in _&&!(S&&C==="clear")&&n(R,C,function(j,ee){var H=x(this).collection;if(!D&&S&&!u(j))return C==="get"?void 0:!1;var Z=H[C](j===0?0:j,ee);return D?this:Z})}),S||d(R,"size",{configurable:!0,get:function(){return x(this).collection.size}})}return c(T,m,!1,!0),E[m]=T,r({global:!0,forced:!0},E),S||w.setStrong(T,m,y),T},db}var hb,TF;function w0(){if(TF)return hb;TF=1;var r=ga();return hb=function(e,t,i){for(var n in t)i&&i.unsafe&&e[n]?e[n]=t[n]:r(e,n,t[n],i);return e},hb}var fb,$F;function MZ(){if($F)return fb;$F=1;var r=ir(),e=i0(),t=ft(),i=it(),n=t("species");return fb=function(s){var o=r(s);i&&o&&!o[n]&&e(o,n,{configurable:!0,get:function(){return this}})},fb}var vb,PF;function $5(){if(PF)return vb;PF=1;var r=pa(),e=i0(),t=w0(),i=Yu(),n=b0(),s=Ds(),o=al(),a=s0(),u=o0(),l=MZ(),c=it(),d=ol().fastKey,h=Dn(),f=h.set,v=h.getterFor;return vb={getConstructor:function(p,b,m,g){var w=p(function(_,E){n(_,y),f(_,{type:b,index:r(null),first:null,last:null,size:0}),c||(_.size=0),s(E)||o(E,_[g],{that:_,AS_ENTRIES:m})}),y=w.prototype,S=v(b),O=function(_,E,T){var R=S(_),x=I(_,E),C,D;return x?x.value=T:(R.last=x={index:D=d(E,!0),key:E,value:T,previous:C=R.last,next:null,removed:!1},R.first||(R.first=x),C&&(C.next=x),c?R.size++:_.size++,D!=="F"&&(R.index[D]=x)),_},I=function(_,E){var T=S(_),R=d(E),x;if(R!=="F")return T.index[R];for(x=T.first;x;x=x.next)if(x.key===E)return x};return t(y,{clear:function(){for(var E=this,T=S(E),R=T.first;R;)R.removed=!0,R.previous&&(R.previous=R.previous.next=null),R=R.next;T.first=T.last=null,T.index=r(null),c?T.size=0:E.size=0},delete:function(_){var E=this,T=S(E),R=I(E,_);if(R){var x=R.next,C=R.previous;delete T.index[R.index],R.removed=!0,C&&(C.next=x),x&&(x.previous=C),T.first===R&&(T.first=x),T.last===R&&(T.last=C),c?T.size--:E.size--}return!!R},forEach:function(E){for(var T=S(this),R=i(E,arguments.length>1?arguments[1]:void 0),x;x=x?x.next:T.first;)for(R(x.value,x.key,this);x&&x.removed;)x=x.previous},has:function(E){return!!I(this,E)}}),t(y,m?{get:function(E){var T=I(this,E);return T&&T.value},set:function(E,T){return O(this,E===0?0:E,T)}}:{add:function(E){return O(this,E=E===0?0:E,E)}}),c&&e(y,"size",{configurable:!0,get:function(){return S(this).size}}),w},setStrong:function(p,b,m){var g=b+" Iterator",w=v(b),y=v(g);a(p,b,function(S,O){f(this,{type:g,target:S,state:w(S),kind:O,last:null})},function(){for(var S=y(this),O=S.kind,I=S.last;I&&I.removed;)I=I.previous;return!S.target||!(S.last=I=I?I.next:S.state.first)?(S.target=null,u(void 0,!0)):u(O==="keys"?I.key:O==="values"?I.value:[I.key,I.value],!1)},m?"entries":"values",!m,!0),l(b)}},vb}var RF;function NZ(){if(RF)return vF;RF=1;var r=_0(),e=$5();return r("Map",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),vF}var CF;function FZ(){return CF||(CF=1,NZ()),fF}var xF={},pb,qF;function P5(){return qF||(qF=1,pb=function(r,e){return e===1?function(t,i){return t[r](i)}:function(t,i,n){return t[r](i,n)}}),pb}var gb,DF;function kZ(){if(DF)return gb;DF=1;var r=ir(),e=P5(),t=r("Map");return gb={Map:t,set:e("set",2),get:e("get",1),has:e("has",1),remove:e("delete",1),proto:t.prototype},gb}var AF;function BZ(){if(AF)return xF;AF=1;var r=ce(),e=Ce(),t=hi(),i=di(),n=al(),s=kZ(),o=Fs(),a=$e(),u=s.Map,l=s.has,c=s.get,d=s.set,h=e([].push),f=o||a(function(){return u.groupBy("ab",function(v){return v}).get("a").length!==1});return r({target:"Map",stat:!0,forced:o||f},{groupBy:function(p,b){i(p),t(b);var m=new u,g=0;return n(p,function(w){var y=b(w,g++);l(m,y)?h(c(m,y),w):d(m,y,[w])}),m}}),xF}var MF={},mb,NF;function jZ(){if(NF)return mb;NF=1;var r=Ce(),e=js(),t=vr(),i=di(),n=r("".charAt),s=r("".charCodeAt),o=r("".slice),a=function(u){return function(l,c){var d=t(i(l)),h=e(c),f=d.length,v,p;return h<0||h>=f?u?"":void 0:(v=s(d,h),v<55296||v>56319||h+1===f||(p=s(d,h+1))<56320||p>57343?u?n(d,h):v:u?o(d,h,h+2):(v-55296<<10)+(p-56320)+65536)}};return mb={codeAt:a(!1),charAt:a(!0)},mb}var FF;function E0(){if(FF)return MF;FF=1;var r=jZ().charAt,e=vr(),t=Dn(),i=s0(),n=o0(),s="String Iterator",o=t.set,a=t.getterFor(s);return i(String,"String",function(u){o(this,{type:s,string:e(u),index:0})},function(){var l=a(this),c=l.string,d=l.index,h;return d>=c.length?n(void 0,!0):(h=r(c,d),l.index+=h.length,n(h,!1))}),MF}var yb,kF;function LZ(){if(kF)return yb;kF=1,Ws(),FZ(),BZ(),E0();var r=Be();return yb=r.Map,yb}var bb,BF;function zZ(){if(BF)return bb;BF=1;var r=LZ();return Us(),bb=r,bb}var _b,jF;function HZ(){return jF||(jF=1,_b=zZ()),_b}var WZ=HZ(),S0=pe(WZ);class UZ{constructor(){this.clear(),this._defaultIndex=0,this._groupIndex=0,this._defaultGroups=[{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},{border:"#FFA500",background:"#FFFF00",highlight:{border:"#FFA500",background:"#FFFFA3"},hover:{border:"#FFA500",background:"#FFFFA3"}},{border:"#FA0A10",background:"#FB7E81",highlight:{border:"#FA0A10",background:"#FFAFB1"},hover:{border:"#FA0A10",background:"#FFAFB1"}},{border:"#41A906",background:"#7BE141",highlight:{border:"#41A906",background:"#A1EC76"},hover:{border:"#41A906",background:"#A1EC76"}},{border:"#E129F0",background:"#EB7DF4",highlight:{border:"#E129F0",background:"#F0B3F5"},hover:{border:"#E129F0",background:"#F0B3F5"}},{border:"#7C29F0",background:"#AD85E4",highlight:{border:"#7C29F0",background:"#D3BDF0"},hover:{border:"#7C29F0",background:"#D3BDF0"}},{border:"#C37F00",background:"#FFA807",highlight:{border:"#C37F00",background:"#FFCA66"},hover:{border:"#C37F00",background:"#FFCA66"}},{border:"#4220FB",background:"#6E6EFD",highlight:{border:"#4220FB",background:"#9B9BFD"},hover:{border:"#4220FB",background:"#9B9BFD"}},{border:"#FD5A77",background:"#FFC0CB",highlight:{border:"#FD5A77",background:"#FFD1D9"},hover:{border:"#FD5A77",background:"#FFD1D9"}},{border:"#4AD63A",background:"#C2FABC",highlight:{border:"#4AD63A",background:"#E6FFE3"},hover:{border:"#4AD63A",background:"#E6FFE3"}},{border:"#990000",background:"#EE0000",highlight:{border:"#BB0000",background:"#FF3333"},hover:{border:"#BB0000",background:"#FF3333"}},{border:"#FF6000",background:"#FF6000",highlight:{border:"#FF6000",background:"#FF6000"},hover:{border:"#FF6000",background:"#FF6000"}},{border:"#97C2FC",background:"#2B7CE9",highlight:{border:"#D2E5FF",background:"#2B7CE9"},hover:{border:"#D2E5FF",background:"#2B7CE9"}},{border:"#399605",background:"#255C03",highlight:{border:"#399605",background:"#255C03"},hover:{border:"#399605",background:"#255C03"}},{border:"#B70054",background:"#FF007E",highlight:{border:"#B70054",background:"#FF007E"},hover:{border:"#B70054",background:"#FF007E"}},{border:"#AD85E4",background:"#7C29F0",highlight:{border:"#D3BDF0",background:"#7C29F0"},hover:{border:"#D3BDF0",background:"#7C29F0"}},{border:"#4557FA",background:"#000EA1",highlight:{border:"#6E6EFD",background:"#000EA1"},hover:{border:"#6E6EFD",background:"#000EA1"}},{border:"#FFC0CB",background:"#FD5A77",highlight:{border:"#FFD1D9",background:"#FD5A77"},hover:{border:"#FFD1D9",background:"#FD5A77"}},{border:"#C2FABC",background:"#74D66A",highlight:{border:"#E6FFE3",background:"#74D66A"},hover:{border:"#E6FFE3",background:"#74D66A"}},{border:"#EE0000",background:"#990000",highlight:{border:"#FF3333",background:"#BB0000"},hover:{border:"#FF3333",background:"#BB0000"}}],this.options={},this.defaultOptions={useDefaultGroups:!0},at(this.options,this.defaultOptions)}setOptions(e){const t=["useDefaultGroups"];if(e!==void 0){for(const i in e)if(Object.prototype.hasOwnProperty.call(e,i)&&Fe(t).call(t,i)===-1){const n=e[i];this.add(i,n)}}}clear(){this._groups=new S0,this._groupNames=[]}get(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,i=this._groups.get(e);if(i===void 0&&t)if(this.options.useDefaultGroups===!1&&this._groupNames.length>0){const n=this._groupIndex%this._groupNames.length;++this._groupIndex,i={},i.color=this._groups.get(this._groupNames[n]),this._groups.set(e,i)}else{const n=this._defaultIndex%this._defaultGroups.length;this._defaultIndex++,i={},i.color=this._defaultGroups[n],this._groups.set(e,i)}return i}add(e,t){return this._groups.has(e)||this._groupNames.push(e),this._groups.set(e,t),t}}var LF={},zF;function VZ(){if(zF)return LF;zF=1;var r=ce();return r({target:"Number",stat:!0},{isNaN:function(t){return t!==t}}),LF}var wb,HF;function KZ(){if(HF)return wb;HF=1,VZ();var r=Be();return wb=r.Number.isNaN,wb}var Eb,WF;function GZ(){if(WF)return Eb;WF=1;var r=KZ();return Eb=r,Eb}var Sb,UF;function YZ(){return UF||(UF=1,Sb=GZ()),Sb}var XZ=YZ(),X_=pe(XZ),VF={},Ob,KF;function JZ(){if(KF)return Ob;KF=1;var r=Ye(),e=r.isFinite;return Ob=Number.isFinite||function(i){return typeof i=="number"&&e(i)},Ob}var GF;function QZ(){if(GF)return VF;GF=1;var r=ce(),e=JZ();return r({target:"Number",stat:!0},{isFinite:e}),VF}var Ib,YF;function ZZ(){if(YF)return Ib;YF=1,QZ();var r=Be();return Ib=r.Number.isFinite,Ib}var Tb,XF;function eee(){if(XF)return Tb;XF=1;var r=ZZ();return Tb=r,Tb}var $b,JF;function tee(){return JF||(JF=1,$b=eee()),$b}var ree=tee(),tn=pe(ree),QF={},ZF;function iee(){if(ZF)return QF;ZF=1;var r=ce(),e=Wi().some,t=Vs(),i=t("some");return r({target:"Array",proto:!0,forced:!i},{some:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),QF}var Pb,ek;function nee(){if(ek)return Pb;ek=1,iee();var r=Pt();return Pb=r("Array","some"),Pb}var Rb,tk;function see(){if(tk)return Rb;tk=1;var r=ht(),e=nee(),t=Array.prototype;return Rb=function(i){var n=i.some;return i===t||r(t,i)&&n===t.some?e:n},Rb}var Cb,rk;function oee(){if(rk)return Cb;rk=1;var r=see();return Cb=r,Cb}var xb,ik;function aee(){return ik||(ik=1,xb=oee()),xb}var uee=aee(),lee=pe(uee),qb={exports:{}},nk={},sk;function cee(){if(sk)return nk;sk=1;var r=ce(),e=it(),t=fr().f;return r({target:"Object",stat:!0,forced:Object.defineProperty!==t,sham:!e},{defineProperty:t}),nk}var ok;function dee(){if(ok)return qb.exports;ok=1,cee();var r=Be(),e=r.Object,t=qb.exports=function(n,s,o){return e.defineProperty(n,s,o)};return e.defineProperty.sham&&(t.sham=!0),qb.exports}var Db,ak;function R5(){if(ak)return Db;ak=1;var r=dee();return Db=r,Db}var Ab,uk;function hee(){if(uk)return Ab;uk=1;var r=R5();return Ab=r,Ab}var Mb,lk;function fee(){if(lk)return Mb;lk=1;var r=hee();return Mb=r,Mb}var Nb,ck;function vee(){return ck||(ck=1,Nb=fee()),Nb}var pee=vee(),gee=pe(pee),dk={},hk;function mee(){if(hk)return dk;hk=1;var r=ft(),e=fr().f,t=r("metadata"),i=Function.prototype;return i[t]===void 0&&e(i,t,{value:null}),dk}var fk={},vk;function yee(){return vk||(vk=1,x3()),fk}var pk={},gk;function bee(){return gk||(gk=1,q3()),pk}var mk={},yk;function _ee(){if(yk)return mk;yk=1;var r=Je();return r("metadata"),mk}var Fb,bk;function wee(){if(bk)return Fb;bk=1;var r=F3();return mee(),yee(),bee(),_ee(),Fb=r,Fb}var _k={},kb,wk;function C5(){if(wk)return kb;wk=1;var r=ir(),e=Ce(),t=r("Symbol"),i=t.keyFor,n=e(t.prototype.valueOf);return kb=t.isRegisteredSymbol||function(o){try{return i(n(o))!==void 0}catch{return!1}},kb}var Ek;function Eee(){if(Ek)return _k;Ek=1;var r=ce(),e=C5();return r({target:"Symbol",stat:!0},{isRegisteredSymbol:e}),_k}var Sk={},Bb,Ok;function x5(){if(Ok)return Bb;Ok=1;for(var r=ks(),e=ir(),t=Ce(),i=da(),n=ft(),s=e("Symbol"),o=s.isWellKnownSymbol,a=e("Object","getOwnPropertyNames"),u=t(s.prototype.valueOf),l=r("wks"),c=0,d=a(s),h=d.length;ch;)v=l(u,f=c[h++]),v!==void 0&&s(d,f,v);return d}}),b2}var d1,w2;function bte(){if(w2)return d1;w2=1,yte();var r=Be();return d1=r.Object.getOwnPropertyDescriptors,d1}var h1,E2;function _te(){if(E2)return h1;E2=1;var r=bte();return h1=r,h1}var f1,S2;function wte(){return S2||(S2=1,f1=_te()),f1}var Ete=wte(),Ni=pe(Ete),v1={exports:{}},O2={},I2;function Ste(){if(I2)return O2;I2=1;var r=ce(),e=it(),t=t0().f;return r({target:"Object",stat:!0,forced:Object.defineProperties!==t,sham:!e},{defineProperties:t}),O2}var T2;function Ote(){if(T2)return v1.exports;T2=1,Ste();var r=Be(),e=r.Object,t=v1.exports=function(n,s){return e.defineProperties(n,s)};return e.defineProperties.sham&&(t.sham=!0),v1.exports}var p1,$2;function Ite(){if($2)return p1;$2=1;var r=Ote();return p1=r,p1}var g1,P2;function Tte(){return P2||(P2=1,g1=Ite()),g1}var $te=Tte(),ul=pe($te),m1,R2;function Pte(){return R2||(R2=1,m1=R5()),m1}var Rte=Pte(),ll=pe(Rte);function O0(r,e){const t=["node","edge","label"];let i=!0;const n=wi(e,"chosen");if(typeof n=="boolean")i=n;else if(typeof n=="object"){if(Fe(t).call(t,r)===-1)throw new Error("choosify: subOption '"+r+"' should be one of '"+t.join("', '")+"'");const s=wi(e,["chosen",r]);(typeof s=="boolean"||typeof s=="function")&&(i=s)}return i}function J_(r,e,t){if(r.width<=0||r.height<=0)return!1;if(t!==void 0){const s={x:e.x-t.x,y:e.y-t.y};if(t.angle!==0){const o=-t.angle;e={x:Math.cos(o)*s.x-Math.sin(o)*s.y,y:Math.sin(o)*s.x+Math.cos(o)*s.y}}else e=s}const i=r.x+r.width,n=r.y+r.width;return r.lefte.x&&r.tope.y}function hu(r){return typeof r=="string"&&r!==""}function D5(r,e,t,i){let n=i.x,s=i.y;if(typeof i.distanceToBorder=="function"){const o=i.distanceToBorder(r,e),a=Math.sin(e)*o,u=Math.cos(e)*o;u===o?(n+=o,s=i.y):a===o?(n=i.x,s-=o):(n+=u,s-=a)}else i.shape.width>i.shape.height?(n=i.x+i.shape.width*.5,s=i.y-t):(n=i.x+t,s=i.y-i.shape.height*.5);return{x:n,y:s}}var y1,C2;function Cte(){if(C2)return y1;C2=1,Ws();var r=Pt();return y1=r("Array","values"),y1}var b1,x2;function xte(){if(x2)return b1;x2=1;var r=Cte();return b1=r,b1}var _1,q2;function qte(){if(q2)return _1;q2=1,Us();var r=zs(),e=$t(),t=ht(),i=xte(),n=Array.prototype,s={DOMTokenList:!0,NodeList:!0};return _1=function(o){var a=o.values;return o===n||t(n,o)&&a===n.values||e(s,r(o))?i:a},_1}var w1,D2;function Dte(){return D2||(D2=1,w1=qte()),w1}var Ate=Dte(),A5=pe(Ate);class Mte{constructor(e){this.measureText=e,this.current=0,this.width=0,this.height=0,this.lines=[]}_add(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"normal";this.lines[e]===void 0&&(this.lines[e]={width:0,height:0,blocks:[]});let n=t;(t===void 0||t==="")&&(n=" ");const s=this.measureText(n,i),o=at({},A5(s));o.text=t,o.width=s.width,o.mod=i,(t===void 0||t==="")&&(o.width=0),this.lines[e].blocks.push(o),this.lines[e].width+=o.width}curWidth(){const e=this.lines[this.current];return e===void 0?0:e.width}append(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"normal";this._add(this.current,e,t)}newLine(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"normal";this._add(this.current,e,t),this.current++}determineLineHeights(){for(let e=0;ee&&(e=n.width),t+=n.height}this.width=e,this.height=t}removeEmptyBlocks(){const e=[];for(let t=0;t"://,""://,""://,"":/<\/b>/,"":/<\/i>/,"":/<\/code>/,"*":/\*/,_:/_/,"`":/`/,afterBold:/[^*]/,afterItal:/[^_]/,afterMono:/[^`]/};class A2{constructor(e){this.text=e,this.bold=!1,this.ital=!1,this.mono=!1,this.spacing=!1,this.position=0,this.buffer="",this.modStack=[],this.blocks=[]}mod(){return this.modStack.length===0?"normal":this.modStack[0]}modName(){if(this.modStack.length===0)return"normal";if(this.modStack[0]==="mono")return"mono";if(this.bold&&this.ital)return"boldital";if(this.bold)return"bold";if(this.ital)return"ital"}emitBlock(){this.spacing&&(this.add(" "),this.spacing=!1),this.buffer.length>0&&(this.blocks.push({text:this.buffer,mod:this.modName()}),this.buffer="")}add(e){e===" "&&(this.spacing=!0),this.spacing&&(this.buffer+=" ",this.spacing=!1),e!=" "&&(this.buffer+=e)}parseWS(e){return/[ \t]/.test(e)?(this.mono?this.add(e):this.spacing=!0,!0):!1}setTag(e){this.emitBlock(),this[e]=!0,this.modStack.unshift(e)}unsetTag(e){this.emitBlock(),this[e]=!1,this.modStack.shift()}parseStartTag(e,t){return!this.mono&&!this[e]&&this.match(t)?(this.setTag(e),!0):!1}match(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const[i,n]=this.prepareRegExp(e),s=i.test(this.text.substr(this.position,n));return s&&t&&(this.position+=n-1),s}parseEndTag(e,t,i){let n=this.mod()===e;return e==="mono"?n=n&&this.mono:n=n&&!this.mono,n&&this.match(t)?(i!==void 0?(this.position===this.text.length-1||this.match(i,!1))&&this.unsetTag(e):this.unsetTag(e),!0):!1}replace(e,t){return this.match(e)?(this.add(t),this.position+=length-1,!0):!1}prepareRegExp(e){let t,i;if(e instanceof RegExp)i=e,t=1;else{const n=Nte[e];n!==void 0?i=n:i=new RegExp(e),t=e.length}return[i,t]}}class Fte{constructor(e,t,i,n){this.ctx=e,this.parent=t,this.selected=i,this.hover=n;const s=(o,a)=>{if(o===void 0)return 0;const u=this.parent.getFormattingValues(e,i,n,a);let l=0;return o!==""&&(l=this.ctx.measureText(o).width),{width:l,values:u}};this.lines=new Mte(s)}process(e){if(!hu(e))return this.lines.finalize();const t=this.parent.fontOptions;e=e.replace(/\r\n/g,` `),e=e.replace(/\r/g,` `);const i=String(e).split(` -`),n=i.length;if(t.multi)for(let s=0;s0)for(let a=0;a0)for(let s=0;s/&/.test(n)?(t.replace(t.text,"<","<")||t.replace(t.text,"&","&")||t.add("&"),!0):!1;for(;t.position")||t.parseStartTag("ital","")||t.parseStartTag("mono","")||t.parseEndTag("bold","")||t.parseEndTag("ital","")||t.parseEndTag("mono",""))||i(n)||t.add(n),t.position++}return t.emitBlock(),t.blocks}splitMarkdownBlocks(e){const t=new A2(e);let i=!0;const n=s=>/\\/.test(s)?(t.positionthis.parent.fontOptions.maxWdt}getLongestFit(e){let t="",i=0;for(;i1&&arguments[1]!==void 0?arguments[1]:"normal",i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.parent.getFormattingValues(this.ctx,this.selected,this.hover,t),e=e.replace(/^( +)/g,"$1\r"),e=e.replace(/([^\r][^ ]*)( +)/g,"$1\r$2\r");let n=e.split("\r");for(;n.length>0;){let s=this.getLongestFit(n);if(s===0){const o=n[0],a=this.getLongestFitWord(o);this.lines.newLine(qr(o).call(o,0,a),t),n[0]=qr(o).call(o,a)}else{let o=s;n[s-1]===" "?s--:n[o]===" "&&o++;const a=qr(n).call(n,0,s).join("");s==n.length&&i?this.lines.append(a,t):this.lines.newLine(a,t),n=qr(n).call(n,o)}}}}const io=["bold","ital","boldital","mono"];class ls{constructor(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.body=e,this.pointToSelf=!1,this.baseSize=void 0,this.fontOptions={},this.setOptions(t),this.size={top:0,left:0,width:0,height:0,yLine:0},this.isEdgeLabel=i}setOptions(e){if(this.elementOptions=e,this.initFontOptions(e.font),hu(e.label)?this.labelDirty=!0:e.label=void 0,e.font!==void 0&&e.font!==null){if(typeof e.font=="string")this.baseSize=this.fontOptions.size;else if(typeof e.font=="object"){const t=e.font.size;t!==void 0&&(this.baseSize=t)}}}initFontOptions(e){if(Ie(io,t=>{this.fontOptions[t]={}}),ls.parseFontString(this.fontOptions,e)){this.fontOptions.vadjust=0;return}Ie(e,(t,i)=>{t!=null&&typeof t!="object"&&(this.fontOptions[i]=t)})}static parseFontString(e,t){if(!t||typeof t!="string")return!1;const i=t.split(" ");return e.size=+i[0].replace("px",""),e.face=i[1],e.color=i[2],!0}constrain(e){const t={constrainWidth:!1,maxWdt:-1,minWdt:-1,constrainHeight:!1,minHgt:-1,valign:"middle"},i=_i(e,"widthConstraint");if(typeof i=="number")t.maxWdt=Number(i),t.minWdt=Number(i);else if(typeof i=="object"){const s=_i(e,["widthConstraint","maximum"]);typeof s=="number"&&(t.maxWdt=Number(s));const o=_i(e,["widthConstraint","minimum"]);typeof o=="number"&&(t.minWdt=Number(o))}const n=_i(e,"heightConstraint");if(typeof n=="number")t.minHgt=Number(n);else if(typeof n=="object"){const s=_i(e,["heightConstraint","minimum"]);typeof s=="number"&&(t.minHgt=Number(s));const o=_i(e,["heightConstraint","valign"]);typeof o=="string"&&(o==="top"||o==="bottom")&&(t.valign=o)}return t}update(e,t){this.setOptions(e,!0),this.propagateFonts(t),Ue(this.fontOptions,this.constrain(t)),this.fontOptions.chooser=O0("label",t)}adjustSizes(e){const t=e?e.right+e.left:0;this.fontOptions.constrainWidth&&(this.fontOptions.maxWdt-=t,this.fontOptions.minWdt-=t);const i=e?e.top+e.bottom:0;this.fontOptions.constrainHeight&&(this.fontOptions.minHgt-=i)}addFontOptionsToPile(e,t){for(let i=0;i{o!==void 0&&(Object.prototype.hasOwnProperty.call(t,a)||(Fe(io).call(io,a)!==-1?t[a]={}:t[a]=o))})}return t}getFontOption(e,t,i){let n;for(let s=0;s{s[u]=a}),s.size=Number(s.size),s.vadjust=Number(s.vadjust)}}draw(e,t,i,n,s){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:"middle";if(this.elementOptions.label===void 0)return;let a=this.fontOptions.size*this.body.view.scale;this.elementOptions.label&&a=this.elementOptions.scaling.label.maxVisible&&(a=Number(this.elementOptions.scaling.label.maxVisible)/this.body.view.scale),this.calculateLabelSize(e,n,s,t,i,o),this._drawBackground(e),this._drawText(e,t,this.size.yLine,o,a))}_drawBackground(e){if(this.fontOptions.background!==void 0&&this.fontOptions.background!=="none"){e.fillStyle=this.fontOptions.background;const t=this.getSize();e.fillRect(t.left,t.top,t.width,t.height)}}_drawText(e,t,i){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"middle",s=arguments.length>4?arguments[4]:void 0;[t,i]=this._setAlignment(e,t,i,n),e.textAlign="left",t=t-this.size.width/2,this.fontOptions.valign&&this.size.height>this.size.labelHeight&&(this.fontOptions.valign==="top"&&(i-=(this.size.height-this.size.labelHeight)/2),this.fontOptions.valign==="bottom"&&(i+=(this.size.height-this.size.labelHeight)/2));for(let o=0;o0&&(e.lineWidth=c.strokeWidth,e.strokeStyle=h,e.lineJoin="round"),e.fillStyle=d,c.strokeWidth>0&&e.strokeText(c.text,t+u,i+c.vadjust),e.fillText(c.text,t+u,i+c.vadjust),u+=c.width}i+=a.height}}}_setAlignment(e,t,i,n){if(this.isEdgeLabel&&this.fontOptions.align!=="horizontal"&&this.pointToSelf===!1){t=0,i=0;const s=2;this.fontOptions.align==="top"?(e.textBaseline="alphabetic",i-=2*s):this.fontOptions.align==="bottom"?(e.textBaseline="hanging",i+=2*s):e.textBaseline="middle"}else e.textBaseline=n;return[t,i]}_getColor(e,t,i){let n=e||"#000000",s=i||"#ffffff";if(t<=this.elementOptions.scaling.label.drawThreshold){const o=Math.max(0,Math.min(1,1-(this.elementOptions.scaling.label.drawThreshold-t)));n=ar(n,o),s=ar(s,o)}return[n,s]}getTextSize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return this._processLabel(e,t,i),{width:this.size.width,height:this.size.height,lineCount:this.lineCount}}getSize(){let t=this.size.left,i=this.size.top-.5*2;if(this.isEdgeLabel){const s=-this.size.width*.5;switch(this.fontOptions.align){case"middle":t=s,i=-this.size.height*.5;break;case"top":t=s,i=-(this.size.height+2);break;case"bottom":t=s,i=2;break}}return{left:t,top:i,width:this.size.width,height:this.size.height}}calculateLabelSize(e,t,i){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:"middle";this._processLabel(e,t,i),this.size.left=n-this.size.width*.5,this.size.top=s-this.size.height*.5,this.size.yLine=s+(1-this.lineCount)*.5*this.fontOptions.size,o==="hanging"&&(this.size.top+=.5*this.fontOptions.size,this.size.top+=4,this.size.yLine+=4)}getFormattingValues(e,t,i,n){const s=function(u,l,c){return l==="normal"?c==="mod"?"":u[c]:u[l][c]!==void 0?u[l][c]:u[c]},o={color:s(this.fontOptions,n,"color"),size:s(this.fontOptions,n,"size"),face:s(this.fontOptions,n,"face"),mod:s(this.fontOptions,n,"mod"),vadjust:s(this.fontOptions,n,"vadjust"),strokeWidth:this.fontOptions.strokeWidth,strokeColor:this.fontOptions.strokeColor};(t||i)&&(n==="normal"&&this.fontOptions.chooser===!0&&this.elementOptions.labelHighlightBold?o.mod="bold":typeof this.fontOptions.chooser=="function"&&this.fontOptions.chooser(o,this.elementOptions.id,t,i));let a="";return o.mod!==void 0&&o.mod!==""&&(a+=o.mod+" "),a+=o.size+"px "+o.face,e.font=a.replace(/"/g,""),o.font=e.font,o.height=o.size,o}differentState(e,t){return e!==this.selectedState||t!==this.hoverState}_processLabelText(e,t,i,n){return new Nte(e,this,t,i).process(n)}_processLabel(e,t,i){if(this.labelDirty===!1&&!this.differentState(t,i))return;const n=this._processLabelText(e,t,i,this.elementOptions.label);this.fontOptions.minWdt>0&&n.width0&&n.height0&&(this.enableBorderDashes(e,t),e.stroke(),this.disableBorderDashes(e,t)),e.restore()}performFill(e,t){e.save(),e.fillStyle=t.color,this.enableShadow(e,t),ya(e).call(e),this.disableShadow(e,t),e.restore(),this.performStroke(e,t)}_addBoundingBoxMargin(e){this.boundingBox.left-=e,this.boundingBox.top-=e,this.boundingBox.bottom+=e,this.boundingBox.right+=e}_updateBoundingBox(e,t,i,n,s){i!==void 0&&this.resize(i,n,s),this.left=e-this.width/2,this.top=t-this.height/2,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}updateBoundingBox(e,t,i,n,s){this._updateBoundingBox(e,t,i,n,s)}getDimensionsFromLabel(e,t,i){this.textSize=this.labelModule.getTextSize(e,t,i);let n=this.textSize.width,s=this.textSize.height;const o=14;return n===0&&(n=o,s=o),{width:n,height:s}}}let Fte=class extends Mn{constructor(e,t,i){super(e,t,i),this._setMargins(i)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.needsRefresh(t,i)){const n=this.getDimensionsFromLabel(e,t,i);this.width=n.width+this.margin.right+this.margin.left,this.height=n.height+this.margin.top+this.margin.bottom,this.radius=this.width/2}}draw(e,t,i,n,s,o){this.resize(e,n,s),this.left=t-this.width/2,this.top=i-this.height/2,this.initContextForDraw(e,o),m3(e,this.left,this.top,this.width,this.height,o.borderRadius),this.performFill(e,o),this.updateBoundingBox(t,i,e,n,s),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,n,s)}updateBoundingBox(e,t,i,n,s){this._updateBoundingBox(e,t,i,n,s);const o=this.options.shapeProperties.borderRadius;this._addBoundingBoxMargin(o)}distanceToBorder(e,t){e&&this.resize(e);const i=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(t)),Math.abs(this.height/2/Math.sin(t)))+i}};class I0 extends Mn{constructor(e,t,i){super(e,t,i),this.labelOffset=0,this.selected=!1}setOptions(e,t,i){this.options=e,t===void 0&&i===void 0||this.setImages(t,i)}setImages(e,t){t&&this.selected?(this.imageObj=t,this.imageObjAlt=e):(this.imageObj=e,this.imageObjAlt=t)}switchImages(e){const t=e&&!this.selected||!e&&this.selected;if(this.selected=e,this.imageObjAlt!==void 0&&t){const i=this.imageObj;this.imageObj=this.imageObjAlt,this.imageObjAlt=i}}_getImagePadding(){const e={top:0,right:0,bottom:0,left:0};if(this.options.imagePadding){const t=this.options.imagePadding;typeof t=="object"?(e.top=t.top,e.right=t.right,e.bottom=t.bottom,e.left=t.left):(e.top=t,e.right=t,e.bottom=t,e.left=t)}return e}_resizeImage(){let e,t;if(this.options.shapeProperties.useImageSize===!1){let i=1,n=1;this.imageObj.width&&this.imageObj.height&&(this.imageObj.width>this.imageObj.height?i=this.imageObj.width/this.imageObj.height:n=this.imageObj.height/this.imageObj.width),e=this.options.size*2*i,t=this.options.size*2*n}else{const i=this._getImagePadding();e=this.imageObj.width+i.left+i.right,t=this.imageObj.height+i.top+i.bottom}this.width=e,this.height=t,this.radius=.5*this.width}_drawRawCircle(e,t,i,n){this.initContextForDraw(e,n),Qw(e,t,i,n.size),this.performFill(e,n)}_drawImageAtPosition(e,t){if(this.imageObj.width!=0){e.globalAlpha=t.opacity!==void 0?t.opacity:1,this.enableShadow(e,t);let i=1;this.options.shapeProperties.interpolation===!0&&(i=this.imageObj.width/this.width/this.body.view.scale);const n=this._getImagePadding(),s=this.left+n.left,o=this.top+n.top,a=this.width-n.left-n.right,u=this.height-n.top-n.bottom;this.imageObj.drawImageAtPosition(e,i,s,o,a,u),this.disableShadow(e,t)}}_drawImageLabel(e,t,i,n,s){let o=0;if(this.height!==void 0){o=this.height*.5;const u=this.labelModule.getTextSize(e,n,s);u.lineCount>=1&&(o+=u.height/2)}const a=i+o;this.options.label&&(this.labelOffset=o),this.labelModule.draw(e,t,a,n,s,"hanging")}}let kte=class extends I0{constructor(e,t,i){super(e,t,i),this._setMargins(i)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.needsRefresh(t,i)){const n=this.getDimensionsFromLabel(e,t,i),s=Math.max(n.width+this.margin.right+this.margin.left,n.height+this.margin.top+this.margin.bottom);this.options.size=s/2,this.width=s,this.height=s,this.radius=this.width/2}}draw(e,t,i,n,s,o){this.resize(e,n,s),this.left=t-this.width/2,this.top=i-this.height/2,this._drawRawCircle(e,t,i,o),this.updateBoundingBox(t,i),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,i,n,s)}updateBoundingBox(e,t){this.boundingBox.top=t-this.options.size,this.boundingBox.left=e-this.options.size,this.boundingBox.right=e+this.options.size,this.boundingBox.bottom=t+this.options.size}distanceToBorder(e){return e&&this.resize(e),this.width*.5}};class Bte extends I0{constructor(e,t,i,n,s){super(e,t,i),this.setImages(n,s)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.imageObj.src===void 0||this.imageObj.width===void 0||this.imageObj.height===void 0){const s=this.options.size*2;this.width=s,this.height=s,this.radius=.5*this.width;return}this.needsRefresh(t,i)&&this._resizeImage()}draw(e,t,i,n,s,o){this.switchImages(n),this.resize();let a=t,u=i;this.options.shapeProperties.coordinateOrigin==="top-left"?(this.left=t,this.top=i,a+=this.width/2,u+=this.height/2):(this.left=t-this.width/2,this.top=i-this.height/2),this._drawRawCircle(e,a,u,o),e.save(),e.clip(),this._drawImageAtPosition(e,o),e.restore(),this._drawImageLabel(e,a,u,n,s),this.updateBoundingBox(t,i)}updateBoundingBox(e,t){this.options.shapeProperties.coordinateOrigin==="top-left"?(this.boundingBox.top=t,this.boundingBox.left=e,this.boundingBox.right=e+this.options.size*2,this.boundingBox.bottom=t+this.options.size*2):(this.boundingBox.top=t-this.options.size,this.boundingBox.left=e-this.options.size,this.boundingBox.right=e+this.options.size,this.boundingBox.bottom=t+this.options.size),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}distanceToBorder(e){return e&&this.resize(e),this.width*.5}}class Vi extends Mn{constructor(e,t,i){super(e,t,i)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{size:this.options.size};if(this.needsRefresh(t,i)){var s,o;this.labelModule.getTextSize(e,t,i);const a=2*n.size;this.width=(s=this.customSizeWidth)!==null&&s!==void 0?s:a,this.height=(o=this.customSizeHeight)!==null&&o!==void 0?o:a,this.radius=.5*this.width}}_drawShape(e,t,i,n,s,o,a,u){return this.resize(e,o,a,u),this.left=n-this.width/2,this.top=s-this.height/2,this.initContextForDraw(e,u),t7(t)(e,n,s,u.size),this.performFill(e,u),this.options.icon!==void 0&&this.options.icon.code!==void 0&&(e.font=(o?"bold ":"")+this.height/2+"px "+(this.options.icon.face||"FontAwesome"),e.fillStyle=this.options.icon.color||"black",e.textAlign="center",e.textBaseline="middle",e.fillText(this.options.icon.code,n,s)),{drawExternalLabel:()=>{if(this.options.label!==void 0){this.labelModule.calculateLabelSize(e,o,a,n,s,"hanging");const l=s+.5*this.height+.5*this.labelModule.size.height;this.labelModule.draw(e,n,l,o,a,"hanging")}this.updateBoundingBox(n,s)}}}updateBoundingBox(e,t){this.boundingBox.top=t-this.options.size,this.boundingBox.left=e-this.options.size,this.boundingBox.right=e+this.options.size,this.boundingBox.bottom=t+this.options.size,this.options.label!==void 0&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height))}}function M2(r,e){var t=Ze(r);if(Ai){var i=Ai(r);e&&(i=Ut(i).call(i,function(n){return Ui(r,n).enumerable})),t.push.apply(t,i)}return t}function jte(r){for(var e=1;e{e.save(),u(),e.restore()}}return a.nodeDimensions&&(this.customSizeWidth=a.nodeDimensions.width,this.customSizeHeight=a.nodeDimensions.height),a}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}class zte extends Mn{constructor(e,t,i){super(e,t,i),this._setMargins(i)}resize(e,t,i){if(this.needsRefresh(t,i)){const s=this.getDimensionsFromLabel(e,t,i).width+this.margin.right+this.margin.left;this.width=s,this.height=s,this.radius=this.width/2}}draw(e,t,i,n,s,o){this.resize(e,n,s),this.left=t-this.width/2,this.top=i-this.height/2,this.initContextForDraw(e,o),y3(e,t-this.width/2,i-this.height/2,this.width,this.height),this.performFill(e,o),this.updateBoundingBox(t,i,e,n,s),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,n,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}let Hte=class extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"diamond",4,t,i,n,s,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}};class Wte extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"circle",2,t,i,n,s,o)}distanceToBorder(e){return e&&this.resize(e),this.options.size}}class N2 extends Mn{constructor(e,t,i){super(e,t,i)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.needsRefresh(t,i)){const n=this.getDimensionsFromLabel(e,t,i);this.height=n.height*2,this.width=n.width+n.height,this.radius=.5*this.width}}draw(e,t,i,n,s,o){this.resize(e,n,s),this.left=t-this.width*.5,this.top=i-this.height*.5,this.initContextForDraw(e,o),L_(e,this.left,this.top,this.width,this.height),this.performFill(e,o),this.updateBoundingBox(t,i,e,n,s),this.labelModule.draw(e,t,i,n,s)}distanceToBorder(e,t){e&&this.resize(e);const i=this.width*.5,n=this.height*.5,s=Math.sin(t)*i,o=Math.cos(t)*n;return i*n/Math.sqrt(s*s+o*o)}}class Ute extends Mn{constructor(e,t,i){super(e,t,i),this._setMargins(i)}resize(e,t,i){this.needsRefresh(t,i)&&(this.iconSize={width:Number(this.options.icon.size),height:Number(this.options.icon.size)},this.width=this.iconSize.width+this.margin.right+this.margin.left,this.height=this.iconSize.height+this.margin.top+this.margin.bottom,this.radius=.5*this.width)}draw(e,t,i,n,s,o){return this.resize(e,n,s),this.options.icon.size=this.options.icon.size||50,this.left=t-this.width/2,this.top=i-this.height/2,this._icon(e,t,i,n,s,o),{drawExternalLabel:()=>{this.options.label!==void 0&&this.labelModule.draw(e,this.left+this.iconSize.width/2+this.margin.left,i+this.height/2+5,n),this.updateBoundingBox(t,i)}}}updateBoundingBox(e,t){this.boundingBox.top=t-this.options.icon.size*.5,this.boundingBox.left=e-this.options.icon.size*.5,this.boundingBox.right=e+this.options.icon.size*.5,this.boundingBox.bottom=t+this.options.icon.size*.5,this.options.label!==void 0&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+5))}_icon(e,t,i,n,s,o){const a=Number(this.options.icon.size);this.options.icon.code!==void 0?(e.font=[this.options.icon.weight!=null?this.options.icon.weight:n?"bold":"",(this.options.icon.weight!=null&&n?5:0)+a+"px",this.options.icon.face].join(" "),e.fillStyle=this.options.icon.color||"black",e.textAlign="center",e.textBaseline="middle",this.enableShadow(e,o),e.fillText(this.options.icon.code,t,i),this.disableShadow(e,o)):console.error("When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.")}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}let Vte=class extends I0{constructor(e,t,i,n,s){super(e,t,i),this.setImages(n,s)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.imageObj.src===void 0||this.imageObj.width===void 0||this.imageObj.height===void 0){const s=this.options.size*2;this.width=s,this.height=s;return}this.needsRefresh(t,i)&&this._resizeImage()}draw(e,t,i,n,s,o){e.save(),this.switchImages(n),this.resize();let a=t,u=i;if(this.options.shapeProperties.coordinateOrigin==="top-left"?(this.left=t,this.top=i,a+=this.width/2,u+=this.height/2):(this.left=t-this.width/2,this.top=i-this.height/2),this.options.shapeProperties.useBorderWithImage===!0){const l=this.options.borderWidth,c=this.options.borderWidthSelected||2*this.options.borderWidth,d=(n?c:l)/this.body.view.scale;e.lineWidth=Math.min(this.width,d),e.beginPath();let h=n?this.options.color.highlight.border:s?this.options.color.hover.border:this.options.color.border,f=n?this.options.color.highlight.background:s?this.options.color.hover.background:this.options.color.background;o.opacity!==void 0&&(h=ar(h,o.opacity),f=ar(f,o.opacity)),e.strokeStyle=h,e.fillStyle=f,e.rect(this.left-.5*e.lineWidth,this.top-.5*e.lineWidth,this.width+e.lineWidth,this.height+e.lineWidth),ya(e).call(e),this.performStroke(e,o),e.closePath()}this._drawImageAtPosition(e,o),this._drawImageLabel(e,a,u,n,s),this.updateBoundingBox(t,i),e.restore()}updateBoundingBox(e,t){this.resize(),this.options.shapeProperties.coordinateOrigin==="top-left"?(this.left=e,this.top=t):(this.left=e-this.width/2,this.top=t-this.height/2),this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width,this.options.label!==void 0&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset))}distanceToBorder(e,t){return this._distanceToBorder(e,t)}};class Kte extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"square",2,t,i,n,s,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}class Gte extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"hexagon",4,t,i,n,s,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}class Yte extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"star",4,t,i,n,s,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}class Xte extends Mn{constructor(e,t,i){super(e,t,i),this._setMargins(i)}resize(e,t,i){this.needsRefresh(t,i)&&(this.textSize=this.labelModule.getTextSize(e,t,i),this.width=this.textSize.width+this.margin.right+this.margin.left,this.height=this.textSize.height+this.margin.top+this.margin.bottom,this.radius=.5*this.width)}draw(e,t,i,n,s,o){this.resize(e,n,s),this.left=t-this.width/2,this.top=i-this.height/2,this.enableShadow(e,o),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,n,s),this.disableShadow(e,o),this.updateBoundingBox(t,i,e,n,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}let Jte=class extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"triangle",3,t,i,n,s,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}};class Qte extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"triangleDown",3,t,i,n,s,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}function F2(r,e){var t=Ze(r);if(Ai){var i=Ai(r);e&&(i=Ut(i).call(i,function(n){return Ui(r,n).enumerable})),t.push.apply(t,i)}return t}function k2(r){for(var e=1;et[l]!=null);u.push("font"),cu(u,e,a),e.color=V_(e.color)}static parseOptions(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},s=arguments.length>4?arguments[4]:void 0;if(cu(["color","fixed","shadow"],e,t,i),Ke.checkMass(t),e.opacity!==void 0&&(Ke.checkOpacity(e.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+e.opacity),e.opacity=void 0)),t.opacity!==void 0&&(Ke.checkOpacity(t.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+t.opacity),t.opacity=void 0)),t.shapeProperties&&!Ke.checkCoordinateOrigin(t.shapeProperties.coordinateOrigin)&&console.error("Invalid option for node coordinateOrigin, found: "+t.shapeProperties.coordinateOrigin),nr(e,t,"shadow",n),t.color!==void 0&&t.color!==null){const a=V_(t.color);d5(e.color,a)}else i===!0&&t.color===null&&(e.color=Pi(n.color));t.fixed!==void 0&&t.fixed!==null&&(typeof t.fixed=="boolean"?(e.fixed.x=t.fixed,e.fixed.y=t.fixed):(t.fixed.x!==void 0&&typeof t.fixed.x=="boolean"&&(e.fixed.x=t.fixed.x),t.fixed.y!==void 0&&typeof t.fixed.y=="boolean"&&(e.fixed.y=t.fixed.y))),i===!0&&t.font===null&&(e.font=Pi(n.font)),Ke.updateGroupOptions(e,t,s),t.scaling!==void 0&&nr(e.scaling,t.scaling,"label",n.scaling)}getFormattingValues(){const e={color:this.options.color.background,opacity:this.options.opacity,borderWidth:this.options.borderWidth,borderColor:this.options.color.border,size:this.options.size,borderDashes:this.options.shapeProperties.borderDashes,borderRadius:this.options.shapeProperties.borderRadius,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y};if(this.selected||this.hover?this.chooser===!0?this.selected?(this.options.borderWidthSelected!=null?e.borderWidth=this.options.borderWidthSelected:e.borderWidth*=2,e.color=this.options.color.highlight.background,e.borderColor=this.options.color.highlight.border,e.shadow=this.options.shadow.enabled):this.hover&&(e.color=this.options.color.hover.background,e.borderColor=this.options.color.hover.border,e.shadow=this.options.shadow.enabled):typeof this.chooser=="function"&&(this.chooser(e,this.options.id,this.selected,this.hover),e.shadow===!1&&(e.shadowColor!==this.options.shadow.color||e.shadowSize!==this.options.shadow.size||e.shadowX!==this.options.shadow.x||e.shadowY!==this.options.shadow.y)&&(e.shadow=!0)):e.shadow=this.options.shadow.enabled,this.options.opacity!==void 0){const t=this.options.opacity;e.borderColor=ar(e.borderColor,t),e.color=ar(e.color,t),e.shadowColor=ar(e.shadowColor,t)}return e}updateLabelModule(e){(this.options.label===void 0||this.options.label===null)&&(this.options.label=""),Ke.updateGroupOptions(this.options,k2(k2({},e),{},{color:e&&e.color||this._localColor||void 0}),this.grouplist);const t=this.grouplist.get(this.options.group,!1),i=[e,this.options,t,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,i),this.labelModule.baseSize!==void 0&&(this.baseFontSize=this.labelModule.baseSize)}updateShape(e){if(e===this.options.shape&&this.shape)this.shape.setOptions(this.options,this.imageObj,this.imageObjAlt);else switch(this.options.shape){case"box":this.shape=new Fte(this.options,this.body,this.labelModule);break;case"circle":this.shape=new kte(this.options,this.body,this.labelModule);break;case"circularImage":this.shape=new Bte(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case"custom":this.shape=new Lte(this.options,this.body,this.labelModule,this.options.ctxRenderer);break;case"database":this.shape=new zte(this.options,this.body,this.labelModule);break;case"diamond":this.shape=new Hte(this.options,this.body,this.labelModule);break;case"dot":this.shape=new Wte(this.options,this.body,this.labelModule);break;case"ellipse":this.shape=new N2(this.options,this.body,this.labelModule);break;case"icon":this.shape=new Ute(this.options,this.body,this.labelModule);break;case"image":this.shape=new Vte(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case"square":this.shape=new Kte(this.options,this.body,this.labelModule);break;case"hexagon":this.shape=new Gte(this.options,this.body,this.labelModule);break;case"star":this.shape=new Yte(this.options,this.body,this.labelModule);break;case"text":this.shape=new Xte(this.options,this.body,this.labelModule);break;case"triangle":this.shape=new Jte(this.options,this.body,this.labelModule);break;case"triangleDown":this.shape=new Qte(this.options,this.body,this.labelModule);break;default:this.shape=new N2(this.options,this.body,this.labelModule);break}this.needsRefresh()}select(){this.selected=!0,this.needsRefresh()}unselect(){this.selected=!1,this.needsRefresh()}needsRefresh(){this.shape.refreshNeeded=!0}getTitle(){return this.options.title}distanceToBorder(e,t){return this.shape.distanceToBorder(e,t)}isFixed(){return this.options.fixed.x&&this.options.fixed.y}isSelected(){return this.selected}getValue(){return this.options.value}getLabelSize(){return this.labelModule.size()}setValueRange(e,t,i){if(this.options.value!==void 0){const n=this.options.scaling.customScalingFunction(e,t,i,this.options.value),s=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===!0){const o=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+n*o}this.options.size=this.options.scaling.min+n*s}else this.options.size=this.baseSize,this.options.font.size=this.baseFontSize;this.updateLabelModule()}draw(e){const t=this.getFormattingValues();return this.shape.draw(e,this.x,this.y,this.selected,this.hover,t)||{}}updateBoundingBox(e){this.shape.updateBoundingBox(this.x,this.y,e)}resize(e){const t=this.getFormattingValues();this.shape.resize(e,this.selected,this.hover,t)}getItemsOnPoint(e){const t=[];return this.labelModule.visible()&&J_(this.labelModule.getSize(),e)&&t.push({nodeId:this.id,labelId:0}),J_(this.shape.boundingBox,e)&&t.push({nodeId:this.id}),t}isOverlappingWith(e){return this.shape.lefte.left&&this.shape.tope.top}isBoundingBoxOverlappingWith(e){return this.shape.boundingBox.lefte.left&&this.shape.boundingBox.tope.top}static checkMass(e,t){if(e.mass!==void 0&&e.mass<=0){let i="";t!==void 0&&(i=" in node id: "+t),console.error("%cNegative or zero mass disallowed"+i+", setting mass to 1.",p5),e.mass=1}}}class Zte{constructor(e,t,i,n){var s;if(this.body=e,this.images=t,this.groups=i,this.layoutEngine=n,this.body.functions.createNode=z(s=this.create).call(s,this),this.nodesListeners={add:(o,a)=>{this.add(a.items)},update:(o,a)=>{this.update(a.items,a.data,a.oldData)},remove:(o,a)=>{this.remove(a.items)}},this.defaultOptions={borderWidth:1,borderWidthSelected:void 0,brokenImage:void 0,color:{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},opacity:void 0,fixed:{x:!1,y:!1},font:{color:"#343434",size:14,face:"arial",background:"none",strokeWidth:0,strokeColor:"#ffffff",align:"center",vadjust:0,multi:!1,bold:{mod:"bold"},boldital:{mod:"bold italic"},ital:{mod:"italic"},mono:{mod:"",size:15,face:"monospace",vadjust:2}},group:void 0,hidden:!1,icon:{face:"FontAwesome",code:void 0,size:50,color:"#2B7CE9"},image:void 0,imagePadding:{top:0,right:0,bottom:0,left:0},label:void 0,labelHighlightBold:!0,level:void 0,margin:{top:5,right:5,bottom:5,left:5},mass:1,physics:!0,scaling:{min:10,max:30,label:{enabled:!1,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function(o,a,u,l){if(a===o)return .5;{const c=1/(a-o);return Math.max(0,(l-o)*c)}}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:10,x:5,y:5},shape:"ellipse",shapeProperties:{borderDashes:!1,borderRadius:6,interpolation:!0,useImageSize:!1,useBorderWithImage:!1,coordinateOrigin:"center"},size:25,title:void 0,value:void 0,x:void 0,y:void 0},this.defaultOptions.mass<=0)throw"Internal error: mass in defaultOptions of NodesHandler may not be zero or negative";this.options=Pi(this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e,t;this.body.emitter.on("refreshNodes",z(e=this.refresh).call(e,this)),this.body.emitter.on("refresh",z(t=this.refresh).call(t,this)),this.body.emitter.on("destroy",()=>{Ie(this.nodesListeners,(i,n)=>{this.body.data.nodes&&this.body.data.nodes.off(n,i)}),delete this.body.functions.createNode,delete this.nodesListeners.add,delete this.nodesListeners.update,delete this.nodesListeners.remove,delete this.nodesListeners})}setOptions(e){if(e!==void 0){if(Ke.parseOptions(this.options,e),e.opacity!==void 0&&(X_(e.opacity)||!tn(e.opacity)||e.opacity<0||e.opacity>1?console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+e.opacity):this.options.opacity=e.opacity),e.shape!==void 0)for(const t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&this.body.nodes[t].updateShape();if(typeof e.font<"u"||typeof e.widthConstraint<"u"||typeof e.heightConstraint<"u")for(const t of Ze(this.body.nodes))this.body.nodes[t].updateLabelModule(),this.body.nodes[t].needsRefresh();if(e.size!==void 0)for(const t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&this.body.nodes[t].needsRefresh();(e.hidden!==void 0||e.physics!==void 0)&&this.body.emitter.emit("_dataChanged")}}setData(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const i=this.body.data.nodes;if(l3("id",e))this.body.data.nodes=e;else if(tt(e))this.body.data.nodes=new su,this.body.data.nodes.add(e);else if(!e)this.body.data.nodes=new su;else throw new TypeError("Array or DataSet expected");if(i&&Ie(this.nodesListeners,function(n,s){i.off(s,n)}),this.body.nodes={},this.body.data.nodes){const n=this;Ie(this.nodesListeners,function(o,a){n.body.data.nodes.on(a,o)});const s=this.body.data.nodes.getIds();this.add(s,!0)}t===!1&&this.body.emitter.emit("_dataChanged")}add(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,i;const n=[];for(let s=0;s1&&arguments[1]!==void 0?arguments[1]:Ke;return new t(e,this.body,this.images,this.groups,this.options,this.defaultOptions)}refresh(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;Ie(this.body.nodes,(t,i)=>{const n=this.body.data.nodes.get(i);n!==void 0&&(e===!0&&t.setOptions({x:null,y:null}),t.setOptions({fixed:!1}),t.setOptions(n))})}getPositions(e){const t={};if(e!==void 0){if(tt(e)===!0){for(let i=0;i{this.body.emitter.emit("startSimulation")},0)):console.error("Node id supplied to moveNode does not exist. Provided: ",e)}}var B2={},j2;function ere(){if(j2)return B2;j2=1;var r=ce(),e=Math.hypot,t=Math.abs,i=Math.sqrt,n=!!e&&e(1/0,NaN)!==1/0;return r({target:"Math",stat:!0,arity:2,forced:n},{hypot:function(o,a){for(var u=0,l=0,c=arguments.length,d=0,h,f;l0?(f=h/d,u+=f*f):u+=h;return d===1/0?1/0:d*i(u)}}),B2}var E1,L2;function tre(){if(L2)return E1;L2=1,ere();var r=Be();return E1=r.Math.hypot,E1}var S1,z2;function rre(){if(z2)return S1;z2=1;var r=tre();return S1=r,S1}var O1,H2;function ire(){return H2||(H2=1,O1=rre()),O1}var nre=ire(),sre=pe(nre);class rt{static transform(e,t){tt(e)||(e=[e]);const i=t.point.x,n=t.point.y,s=t.angle,o=t.length;for(let a=0;a4&&arguments[4]!==void 0?arguments[4]:this.getViaNode();e.strokeStyle=this.getColor(e,t),e.lineWidth=t.width,t.dashes!==!1?this._drawDashedLine(e,t,s):this._drawLine(e,t,s)}_drawLine(e,t,i,n,s){if(this.from!=this.to)this._line(e,t,i,n,s);else{const[o,a,u]=this._getCircleData(e);this._circle(e,t,o,a,u)}}_drawDashedLine(e,t,i,n,s){e.lineCap="round";const o=tt(t.dashes)?t.dashes:[5,5];if(e.setLineDash!==void 0){if(e.save(),e.setLineDash(o),e.lineDashOffset=0,this.from!=this.to)this._line(e,t,i);else{const[a,u,l]=this._getCircleData(e);this._circle(e,t,a,u,l)}e.setLineDash([0]),e.lineDashOffset=0,e.restore()}else{if(this.from!=this.to)b3(e,this.from.x,this.from.y,this.to.x,this.to.y,o);else{const[a,u,l]=this._getCircleData(e);this._circle(e,t,a,u,l)}this.enableShadow(e,t),e.stroke(),this.disableShadow(e,t)}}findBorderPosition(e,t,i){return this.from!=this.to?this._findBorderPosition(e,t,i):this._findBorderPositionCircle(e,t,i)}findBorderPositions(e){if(this.from!=this.to)return{from:this._findBorderPosition(this.from,e),to:this._findBorderPosition(this.to,e)};{var t;const[i,n]=qr(t=this._getCircleData(e)).call(t,0,2);return{from:this._findBorderPositionCircle(this.from,e,{x:i,y:n,low:.25,high:.6,direction:-1}),to:this._findBorderPositionCircle(this.from,e,{x:i,y:n,low:.6,high:.8,direction:1})}}}_getCircleData(e){const t=this.options.selfReference.size;e!==void 0&&this.from.shape.width===void 0&&this.from.shape.resize(e);const i=x5(e,this.options.selfReference.angle,t,this.from);return[i.x,i.y,t]}_pointOnCircle(e,t,i,n){const s=n*2*Math.PI;return{x:e+i*Math.cos(s),y:t-i*Math.sin(s)}}_findBorderPositionCircle(e,t,i){const n=i.x,s=i.y;let o=i.low,a=i.high;const u=i.direction,l=10,c=this.options.selfReference.size,d=.05;let h,f=(o+a)*.5,v=0;this.options.arrowStrikethrough===!0&&(u===-1?v=this.options.endPointOffset.from:u===1&&(v=this.options.endPointOffset.to));let p=0;do{f=(o+a)*.5,h=this._pointOnCircle(n,s,c,f);const b=Math.atan2(e.y-h.y,e.x-h.x),m=e.distanceToBorder(t,b)+v,g=Math.sqrt(Math.pow(h.x-e.x,2)+Math.pow(h.y-e.y,2)),w=m-g;if(Math.abs(w)0?u>0?o=f:a=f:u>0?a=f:o=f,++p}while(o<=a&&p1?c=1:c<0&&(c=0);const d=e+c*a,h=t+c*u,f=d-s,v=h-o;return Math.sqrt(f*f+v*v)}getArrowData(e,t,i,n,s,o){let a,u,l,c,d,h,f;const v=o.width;t==="from"?(l=this.from,c=this.to,d=o.fromArrowScale<0,h=Math.abs(o.fromArrowScale),f=o.fromArrowType):t==="to"?(l=this.to,c=this.from,d=o.toArrowScale<0,h=Math.abs(o.toArrowScale),f=o.toArrowType):(l=this.to,c=this.from,d=o.middleArrowScale<0,h=Math.abs(o.middleArrowScale),f=o.middleArrowType);const p=15*h+3*v;if(l!=c){const w=sre(l.x-c.x,l.y-c.y),y=p/w;if(t!=="middle")if(this.options.smooth.enabled===!0){const S=this._findBorderPosition(l,e,{via:i}),O=this.getPoint(S.t+y*(t==="from"?1:-1),i);a=Math.atan2(S.y-O.y,S.x-O.x),u=S}else a=Math.atan2(l.y-c.y,l.x-c.x),u=this._findBorderPosition(l,e);else{const S=(d?-y:y)/2,O=this.getPoint(.5+S,i),I=this.getPoint(.5-S,i);a=Math.atan2(O.y-I.y,O.x-I.x),u=this.getPoint(.5,i)}}else{const[w,y,S]=this._getCircleData(e);if(t==="from"){const O=this.options.selfReference.angle,I=this.options.selfReference.angle+Math.PI,_=this._findBorderPositionCircle(this.from,e,{x:w,y,low:O,high:I,direction:-1});a=_.t*-2*Math.PI+1.5*Math.PI+.1*Math.PI,u=_}else if(t==="to"){const O=this.options.selfReference.angle,I=this.options.selfReference.angle+Math.PI,_=this._findBorderPositionCircle(this.from,e,{x:w,y,low:O,high:I,direction:1});a=_.t*-2*Math.PI+1.5*Math.PI-1.1*Math.PI,u=_}else{const O=this.options.selfReference.angle/(2*Math.PI);u=this._pointOnCircle(w,y,S,O),a=O*-2*Math.PI+1.5*Math.PI+.1*Math.PI}}const b=u.x-p*.9*Math.cos(a),m=u.y-p*.9*Math.sin(a);return{point:u,core:{x:b,y:m},angle:a,length:p,type:f}}drawArrowHead(e,t,i,n,s){e.strokeStyle=this.getColor(e,t),e.fillStyle=e.strokeStyle,e.lineWidth=t.width,D5.draw(e,s)&&(this.enableShadow(e,t),ya(e).call(e),this.disableShadow(e,t))}enableShadow(e,t){t.shadow===!0&&(e.shadowColor=t.shadowColor,e.shadowBlur=t.shadowSize,e.shadowOffsetX=t.shadowX,e.shadowOffsetY=t.shadowY)}disableShadow(e,t){t.shadow===!0&&(e.shadowColor="rgba(0,0,0,0)",e.shadowBlur=0,e.shadowOffsetX=0,e.shadowOffsetY=0)}drawBackground(e,t){if(t.background!==!1){const i={strokeStyle:e.strokeStyle,lineWidth:e.lineWidth,dashes:e.dashes};e.strokeStyle=t.backgroundColor,e.lineWidth=t.backgroundSize,this.setStrokeDashed(e,t.backgroundDashes),e.stroke(),e.strokeStyle=i.strokeStyle,e.lineWidth=i.lineWidth,e.dashes=i.dashes,this.setStrokeDashed(e,t.dashes)}}setStrokeDashed(e,t){if(t!==!1)if(e.setLineDash!==void 0){const i=tt(t)?t:[5,5];e.setLineDash(i)}else console.warn("setLineDash is not supported in this browser. The dashed stroke cannot be used.");else e.setLineDash!==void 0?e.setLineDash([]):console.warn("setLineDash is not supported in this browser. The dashed stroke cannot be used.")}}function V2(r,e){var t=Ze(r);if(Ai){var i=Ai(r);e&&(i=Ut(i).call(i,function(n){return Ui(r,n).enumerable})),t.push.apply(t,i)}return t}function K2(r){for(var e=1;e2&&arguments[2]!==void 0?arguments[2]:this._getViaCoordinates();const n=10,s=.2;let o=!1,a=1,u=0,l=this.to,c,d,h=this.options.endPointOffset?this.options.endPointOffset.to:0;e.id===this.from.id&&(l=this.from,o=!0,h=this.options.endPointOffset?this.options.endPointOffset.from:0),this.options.arrowStrikethrough===!1&&(h=0);let f=0;do{d=(u+a)*.5,c=this.getPoint(d,i);const v=Math.atan2(l.y-c.y,l.x-c.x),p=l.distanceToBorder(t,v)+h,b=Math.sqrt(Math.pow(c.x-l.x,2)+Math.pow(c.y-l.y,2)),m=p-b;if(Math.abs(m)0&&(l=this._getDistanceToLine(v,p,h,f,s,o),u=l{this.positionBezierNode()},this._body.emitter.on("_repositionBezierNodes",this._boundFunction)}setOptions(e){super.setOptions(e);let t=!1;this.options.physics!==e.physics&&(t=!0),this.options=e,this.id=this.options.id,this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to],this.setupSupportNode(),this.connect(),t===!0&&(this.via.setOptions({physics:this.options.physics}),this.positionBezierNode())}connect(){this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to],this.from===void 0||this.to===void 0||this.options.physics===!1?this.via.setOptions({physics:!1}):this.from.id===this.to.id?this.via.setOptions({physics:!1}):this.via.setOptions({physics:!0})}cleanup(){return this._body.emitter.off("_repositionBezierNodes",this._boundFunction),this.via!==void 0?(delete this._body.nodes[this.via.id],this.via=void 0,!0):!1}setupSupportNode(){if(this.via===void 0){const e="edgeId:"+this.id,t=this._body.functions.createNode({id:e,shape:"circle",physics:!0,hidden:!0});this._body.nodes[e]=t,this.via=t,this.via.parentEdgeId=this.id,this.positionBezierNode()}}positionBezierNode(){this.via!==void 0&&this.from!==void 0&&this.to!==void 0?(this.via.x=.5*(this.from.x+this.to.x),this.via.y=.5*(this.from.y+this.to.y)):this.via!==void 0&&(this.via.x=0,this.via.y=0)}_line(e,t,i){this._bezierCurve(e,t,i)}_getViaCoordinates(){return this.via}getViaNode(){return this.via}getPoint(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.via;if(this.from===this.to){const[i,n,s]=this._getCircleData(),o=2*Math.PI*(1-e);return{x:i+s*Math.sin(o),y:n+s-s*(1-Math.cos(o))}}else return{x:Math.pow(1-e,2)*this.fromPoint.x+2*e*(1-e)*t.x+Math.pow(e,2)*this.toPoint.x,y:Math.pow(1-e,2)*this.fromPoint.y+2*e*(1-e)*t.y+Math.pow(e,2)*this.toPoint.y}}_findBorderPosition(e,t){return this._findBorderPositionBezier(e,t,this.via)}_getDistanceToEdge(e,t,i,n,s,o){return this._getDistanceToBezierEdge(e,t,i,n,s,o,this.via)}}class Y2 extends T0{constructor(e,t,i){super(e,t,i)}_line(e,t,i){this._bezierCurve(e,t,i)}getViaNode(){return this._getViaCoordinates()}_getViaCoordinates(){const e=this.options.smooth.roundness,t=this.options.smooth.type;let i=Math.abs(this.from.x-this.to.x),n=Math.abs(this.from.y-this.to.y);if(t==="discrete"||t==="diagonalCross"){let s,o;i<=n?s=o=e*n:s=o=e*i,this.from.x>this.to.x&&(s=-s),this.from.y>=this.to.y&&(o=-o);let a=this.from.x+s,u=this.from.y+o;return t==="discrete"&&(i<=n?a=ithis.to.x&&(s=-s),this.from.y>=this.to.y&&(o=-o);let a=this.from.x+s,u=this.from.y+o;return i<=n?this.from.x<=this.to.x?a=this.to.xa?this.to.x:a:this.from.y>=this.to.y?u=this.to.y>u?this.to.y:u:u=this.to.y2&&arguments[2]!==void 0?arguments[2]:{};return this._findBorderPositionBezier(e,t,i.via)}_getDistanceToEdge(e,t,i,n,s,o){let a=arguments.length>6&&arguments[6]!==void 0?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge(e,t,i,n,s,o,a)}getPoint(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this._getViaCoordinates();const i=e,n=Math.pow(1-i,2)*this.fromPoint.x+2*i*(1-i)*t.x+Math.pow(i,2)*this.toPoint.x,s=Math.pow(1-i,2)*this.fromPoint.y+2*i*(1-i)*t.y+Math.pow(i,2)*this.toPoint.y;return{x:n,y:s}}}class yre extends T0{constructor(e,t,i){super(e,t,i)}_getDistanceToBezierEdge2(e,t,i,n,s,o,a,u){let l=1e9,c=e,d=t;const h=[0,0,0,0];for(let f=1;f<10;f++){const v=.1*f;h[0]=Math.pow(1-v,3),h[1]=3*v*Math.pow(1-v,2),h[2]=3*Math.pow(v,2)*(1-v),h[3]=Math.pow(v,3);const p=h[0]*e+h[1]*a.x+h[2]*u.x+h[3]*i,b=h[0]*t+h[1]*a.y+h[2]*u.y+h[3]*n;if(f>0){const m=this._getDistanceToLine(c,d,p,b,s,o);l=mMath.abs(t)||this.options.smooth.forceDirection===!0||this.options.smooth.forceDirection==="horizontal")&&this.options.smooth.forceDirection!=="vertical"?(n=this.from.y,o=this.to.y,i=this.from.x-a*e,s=this.to.x+a*e):(n=this.from.y-a*t,o=this.to.y+a*t,i=this.from.x,s=this.to.x),[{x:i,y:n},{x:s,y:o}]}getViaNode(){return this._getViaCoordinates()}_findBorderPosition(e,t){return this._findBorderPositionBezier(e,t)}_getDistanceToEdge(e,t,i,n,s,o){let[a,u]=arguments.length>6&&arguments[6]!==void 0?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge2(e,t,i,n,s,o,a,u)}getPoint(e){let[t,i]=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this._getViaCoordinates();const n=e,s=[Math.pow(1-n,3),3*n*Math.pow(1-n,2),3*Math.pow(n,2)*(1-n),Math.pow(n,3)],o=s[0]*this.fromPoint.x+s[1]*t.x+s[2]*i.x+s[3]*this.toPoint.x,a=s[0]*this.fromPoint.y+s[1]*t.y+s[2]*i.y+s[3]*this.toPoint.y;return{x:o,y:a}}}class J2 extends A5{constructor(e,t,i){super(e,t,i)}_line(e,t){e.beginPath(),e.moveTo(this.fromPoint.x,this.fromPoint.y),e.lineTo(this.toPoint.x,this.toPoint.y),this.enableShadow(e,t),e.stroke(),this.disableShadow(e,t)}getViaNode(){}getPoint(e){return{x:(1-e)*this.fromPoint.x+e*this.toPoint.x,y:(1-e)*this.fromPoint.y+e*this.toPoint.y}}_findBorderPosition(e,t){let i=this.to,n=this.from;e.id===this.from.id&&(i=this.from,n=this.to);const s=Math.atan2(i.y-n.y,i.x-n.x),o=i.x-n.x,a=i.y-n.y,u=Math.sqrt(o*o+a*a),l=e.distanceToBorder(t,s),c=(u-l)/u;return{x:(1-c)*n.x+c*i.x,y:(1-c)*n.y+c*i.y,t:0}}_getDistanceToEdge(e,t,i,n,s,o){return this._getDistanceToLine(e,t,i,n,s,o)}}class Ri{constructor(e,t,i,n,s){if(t===void 0)throw new Error("No body provided");this.options=Pi(n),this.globalOptions=n,this.defaultOptions=s,this.body=t,this.imagelist=i,this.id=void 0,this.fromId=void 0,this.toId=void 0,this.selected=!1,this.hover=!1,this.labelDirty=!0,this.baseWidth=this.options.width,this.baseFontSize=this.options.font.size,this.from=void 0,this.to=void 0,this.edgeType=void 0,this.connected=!1,this.labelModule=new ls(this.body,this.options,!0),this.setOptions(e)}setOptions(e){if(!e)return;let t=typeof e.physics<"u"&&this.options.physics!==e.physics||typeof e.hidden<"u"&&(this.options.hidden||!1)!==(e.hidden||!1)||typeof e.from<"u"&&this.options.from!==e.from||typeof e.to<"u"&&this.options.to!==e.to;Ri.parseOptions(this.options,e,!0,this.globalOptions),e.id!==void 0&&(this.id=e.id),e.from!==void 0&&(this.fromId=e.from),e.to!==void 0&&(this.toId=e.to),e.title!==void 0&&(this.title=e.title),e.value!==void 0&&(e.value=C5(e.value));const i=[e,this.options,this.defaultOptions];return this.chooser=O0("edge",i),this.updateLabelModule(e),t=this.updateEdgeType()||t,this._setInteractionWidths(),this.connect(),t}static parseOptions(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;if(Gs(["endPointOffset","arrowStrikethrough","id","from","hidden","hoverWidth","labelHighlightBold","length","line","opacity","physics","scaling","selectionWidth","selfReferenceSize","selfReference","to","title","value","width","font","chosen","widthConstraint"],e,t,i),t.endPointOffset!==void 0&&t.endPointOffset.from!==void 0&&(tn(t.endPointOffset.from)?e.endPointOffset.from=t.endPointOffset.from:(e.endPointOffset.from=n.endPointOffset.from!==void 0?n.endPointOffset.from:0,console.error("endPointOffset.from is not a valid number"))),t.endPointOffset!==void 0&&t.endPointOffset.to!==void 0&&(tn(t.endPointOffset.to)?e.endPointOffset.to=t.endPointOffset.to:(e.endPointOffset.to=n.endPointOffset.to!==void 0?n.endPointOffset.to:0,console.error("endPointOffset.to is not a valid number"))),hu(t.label)?e.label=t.label:hu(e.label)||(e.label=void 0),nr(e,t,"smooth",n),nr(e,t,"shadow",n),nr(e,t,"background",n),t.dashes!==void 0&&t.dashes!==null?e.dashes=t.dashes:i===!0&&t.dashes===null&&(e.dashes=an(n.dashes)),t.scaling!==void 0&&t.scaling!==null?(t.scaling.min!==void 0&&(e.scaling.min=t.scaling.min),t.scaling.max!==void 0&&(e.scaling.max=t.scaling.max),nr(e.scaling,t.scaling,"label",n.scaling)):i===!0&&t.scaling===null&&(e.scaling=an(n.scaling)),t.arrows!==void 0&&t.arrows!==null)if(typeof t.arrows=="string"){const a=t.arrows.toLowerCase();e.arrows.to.enabled=Fe(a).call(a,"to")!=-1,e.arrows.middle.enabled=Fe(a).call(a,"middle")!=-1,e.arrows.from.enabled=Fe(a).call(a,"from")!=-1}else if(typeof t.arrows=="object")nr(e.arrows,t.arrows,"to",n.arrows),nr(e.arrows,t.arrows,"middle",n.arrows),nr(e.arrows,t.arrows,"from",n.arrows);else throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+ma(t.arrows));else i===!0&&t.arrows===null&&(e.arrows=an(n.arrows));if(t.color!==void 0&&t.color!==null){const a=as(t.color)?{color:t.color,highlight:t.color,hover:t.color,inherit:!1,opacity:1}:t.color,u=e.color;if(s)Ue(u,n.color,!1,i);else for(const l in u)Object.prototype.hasOwnProperty.call(u,l)&&delete u[l];if(as(u))u.color=u,u.highlight=u,u.hover=u,u.inherit=!1,a.opacity===void 0&&(u.opacity=1);else{let l=!1;a.color!==void 0&&(u.color=a.color,l=!0),a.highlight!==void 0&&(u.highlight=a.highlight,l=!0),a.hover!==void 0&&(u.hover=a.hover,l=!0),a.inherit!==void 0&&(u.inherit=a.inherit),a.opacity!==void 0&&(u.opacity=Math.min(1,Math.max(0,a.opacity))),l===!0?u.inherit=!1:u.inherit===void 0&&(u.inherit="from")}}else i===!0&&t.color===null&&(e.color=Pi(n.color));i===!0&&t.font===null&&(e.font=Pi(n.font)),Object.prototype.hasOwnProperty.call(t,"selfReferenceSize")&&(console.warn("The selfReferenceSize property has been deprecated. Please use selfReference property instead. The selfReference can be set like thise selfReference:{size:30, angle:Math.PI / 4}"),e.selfReference.size=t.selfReferenceSize)}getFormattingValues(){const e=this.options.arrows.to===!0||this.options.arrows.to.enabled===!0,t=this.options.arrows.from===!0||this.options.arrows.from.enabled===!0,i=this.options.arrows.middle===!0||this.options.arrows.middle.enabled===!0,n=this.options.color.inherit,s={toArrow:e,toArrowScale:this.options.arrows.to.scaleFactor,toArrowType:this.options.arrows.to.type,toArrowSrc:this.options.arrows.to.src,toArrowImageWidth:this.options.arrows.to.imageWidth,toArrowImageHeight:this.options.arrows.to.imageHeight,middleArrow:i,middleArrowScale:this.options.arrows.middle.scaleFactor,middleArrowType:this.options.arrows.middle.type,middleArrowSrc:this.options.arrows.middle.src,middleArrowImageWidth:this.options.arrows.middle.imageWidth,middleArrowImageHeight:this.options.arrows.middle.imageHeight,fromArrow:t,fromArrowScale:this.options.arrows.from.scaleFactor,fromArrowType:this.options.arrows.from.type,fromArrowSrc:this.options.arrows.from.src,fromArrowImageWidth:this.options.arrows.from.imageWidth,fromArrowImageHeight:this.options.arrows.from.imageHeight,arrowStrikethrough:this.options.arrowStrikethrough,color:n?void 0:this.options.color.color,inheritsColor:n,opacity:this.options.color.opacity,hidden:this.options.hidden,length:this.options.length,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y,dashes:this.options.dashes,width:this.options.width,background:this.options.background.enabled,backgroundColor:this.options.background.color,backgroundSize:this.options.background.size,backgroundDashes:this.options.background.dashes};if(this.selected||this.hover)if(this.chooser===!0){if(this.selected){const o=this.options.selectionWidth;typeof o=="function"?s.width=o(s.width):typeof o=="number"&&(s.width+=o),s.width=Math.max(s.width,.3/this.body.view.scale),s.color=this.options.color.highlight,s.shadow=this.options.shadow.enabled}else if(this.hover){const o=this.options.hoverWidth;typeof o=="function"?s.width=o(s.width):typeof o=="number"&&(s.width+=o),s.width=Math.max(s.width,.3/this.body.view.scale),s.color=this.options.color.hover,s.shadow=this.options.shadow.enabled}}else typeof this.chooser=="function"&&(this.chooser(s,this.options.id,this.selected,this.hover),s.color!==void 0&&(s.inheritsColor=!1),s.shadow===!1&&(s.shadowColor!==this.options.shadow.color||s.shadowSize!==this.options.shadow.size||s.shadowX!==this.options.shadow.x||s.shadowY!==this.options.shadow.y)&&(s.shadow=!0));else s.shadow=this.options.shadow.enabled,s.width=Math.max(s.width,.3/this.body.view.scale);return s}updateLabelModule(e){const t=[e,this.options,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,t),this.labelModule.baseSize!==void 0&&(this.baseFontSize=this.labelModule.baseSize)}updateEdgeType(){const e=this.options.smooth;let t=!1,i=!0;return this.edgeType!==void 0&&((this.edgeType instanceof G2&&e.enabled===!0&&e.type==="dynamic"||this.edgeType instanceof X2&&e.enabled===!0&&e.type==="cubicBezier"||this.edgeType instanceof Y2&&e.enabled===!0&&e.type!=="dynamic"&&e.type!=="cubicBezier"||this.edgeType instanceof J2&&e.type.enabled===!1)&&(i=!1),i===!0&&(t=this.cleanup())),i===!0?e.enabled===!0?e.type==="dynamic"?(t=!0,this.edgeType=new G2(this.options,this.body,this.labelModule)):e.type==="cubicBezier"?this.edgeType=new X2(this.options,this.body,this.labelModule):this.edgeType=new Y2(this.options,this.body,this.labelModule):this.edgeType=new J2(this.options,this.body,this.labelModule):this.edgeType.setOptions(this.options),t}connect(){this.disconnect(),this.from=this.body.nodes[this.fromId]||void 0,this.to=this.body.nodes[this.toId]||void 0,this.connected=this.from!==void 0&&this.to!==void 0,this.connected===!0?(this.from.attachEdge(this),this.to.attachEdge(this)):(this.from&&this.from.detachEdge(this),this.to&&this.to.detachEdge(this)),this.edgeType.connect()}disconnect(){this.from&&(this.from.detachEdge(this),this.from=void 0),this.to&&(this.to.detachEdge(this),this.to=void 0),this.connected=!1}getTitle(){return this.title}isSelected(){return this.selected}getValue(){return this.options.value}setValueRange(e,t,i){if(this.options.value!==void 0){const n=this.options.scaling.customScalingFunction(e,t,i,this.options.value),s=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===!0){const o=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+n*o}this.options.width=this.options.scaling.min+n*s}else this.options.width=this.baseWidth,this.options.font.size=this.baseFontSize;this._setInteractionWidths(),this.updateLabelModule()}_setInteractionWidths(){typeof this.options.hoverWidth=="function"?this.edgeType.hoverWidth=this.options.hoverWidth(this.options.width):this.edgeType.hoverWidth=this.options.hoverWidth+this.options.width,typeof this.options.selectionWidth=="function"?this.edgeType.selectionWidth=this.options.selectionWidth(this.options.width):this.edgeType.selectionWidth=this.options.selectionWidth+this.options.width}draw(e){const t=this.getFormattingValues();if(t.hidden)return;const i=this.edgeType.getViaNode();this.edgeType.drawLine(e,t,this.selected,this.hover,i),this.drawLabel(e,i)}drawArrows(e){const t=this.getFormattingValues();if(t.hidden)return;const i=this.edgeType.getViaNode(),n={};this.edgeType.fromPoint=this.edgeType.from,this.edgeType.toPoint=this.edgeType.to,t.fromArrow&&(n.from=this.edgeType.getArrowData(e,"from",i,this.selected,this.hover,t),t.arrowStrikethrough===!1&&(this.edgeType.fromPoint=n.from.core),t.fromArrowSrc&&(n.from.image=this.imagelist.load(t.fromArrowSrc)),t.fromArrowImageWidth&&(n.from.imageWidth=t.fromArrowImageWidth),t.fromArrowImageHeight&&(n.from.imageHeight=t.fromArrowImageHeight)),t.toArrow&&(n.to=this.edgeType.getArrowData(e,"to",i,this.selected,this.hover,t),t.arrowStrikethrough===!1&&(this.edgeType.toPoint=n.to.core),t.toArrowSrc&&(n.to.image=this.imagelist.load(t.toArrowSrc)),t.toArrowImageWidth&&(n.to.imageWidth=t.toArrowImageWidth),t.toArrowImageHeight&&(n.to.imageHeight=t.toArrowImageHeight)),t.middleArrow&&(n.middle=this.edgeType.getArrowData(e,"middle",i,this.selected,this.hover,t),t.middleArrowSrc&&(n.middle.image=this.imagelist.load(t.middleArrowSrc)),t.middleArrowImageWidth&&(n.middle.imageWidth=t.middleArrowImageWidth),t.middleArrowImageHeight&&(n.middle.imageHeight=t.middleArrowImageHeight)),t.fromArrow&&this.edgeType.drawArrowHead(e,t,this.selected,this.hover,n.from),t.middleArrow&&this.edgeType.drawArrowHead(e,t,this.selected,this.hover,n.middle),t.toArrow&&this.edgeType.drawArrowHead(e,t,this.selected,this.hover,n.to)}drawLabel(e,t){if(this.options.label!==void 0){const i=this.from,n=this.to;this.labelModule.differentState(this.selected,this.hover)&&this.labelModule.getTextSize(e,this.selected,this.hover);let s;if(i.id!=n.id){this.labelModule.pointToSelf=!1,s=this.edgeType.getPoint(.5,t),e.save();const o=this._getRotation(e);o.angle!=0&&(e.translate(o.x,o.y),e.rotate(o.angle)),this.labelModule.draw(e,s.x,s.y,this.selected,this.hover),e.restore()}else{this.labelModule.pointToSelf=!0;const o=x5(e,this.options.selfReference.angle,this.options.selfReference.size,i);s=this._pointOnCircle(o.x,o.y,this.options.selfReference.size,this.options.selfReference.angle),this.labelModule.draw(e,s.x,s.y,this.selected,this.hover)}}}getItemsOnPoint(e){const t=[];if(this.labelModule.visible()){const n=this._getRotation();J_(this.labelModule.getSize(),e,n)&&t.push({edgeId:this.id,labelId:0})}const i={left:e.x,top:e.y};return this.isOverlappingWith(i)&&t.push({edgeId:this.id}),t}isOverlappingWith(e){if(this.connected){const i=this.from.x,n=this.from.y,s=this.to.x,o=this.to.y,a=e.left,u=e.top;return this.edgeType.getDistanceToEdge(i,n,s,o,a,u)<10}else return!1}_getRotation(e){const t=this.edgeType.getViaNode(),i=this.edgeType.getPoint(.5,t);e!==void 0&&this.labelModule.calculateLabelSize(e,this.selected,this.hover,i.x,i.y);const n={x:i.x,y:this.labelModule.size.yLine,angle:0};if(!this.labelModule.visible()||this.options.font.align==="horizontal")return n;const s=this.from.y-this.to.y,o=this.from.x-this.to.x;let a=Math.atan2(s,o);return(a<-1&&o<0||a>0&&o<0)&&(a+=Math.PI),n.angle=a,n}_pointOnCircle(e,t,i,n){return{x:e+i*Math.cos(n),y:t-i*Math.sin(n)}}select(){this.selected=!0}unselect(){this.selected=!1}cleanup(){return this.edgeType.cleanup()}remove(){this.cleanup(),this.disconnect(),delete this.body.edges[this.id]}endPointsValid(){return this.body.nodes[this.fromId]!==void 0&&this.body.nodes[this.toId]!==void 0}}class bre{constructor(e,t,i){var n;this.body=e,this.images=t,this.groups=i,this.body.functions.createEdge=z(n=this.create).call(n,this),this.edgesListeners={add:(s,o)=>{this.add(o.items)},update:(s,o)=>{this.update(o.items)},remove:(s,o)=>{this.remove(o.items)}},this.options={},this.defaultOptions={arrows:{to:{enabled:!1,scaleFactor:1,type:"arrow"},middle:{enabled:!1,scaleFactor:1,type:"arrow"},from:{enabled:!1,scaleFactor:1,type:"arrow"}},endPointOffset:{from:0,to:0},arrowStrikethrough:!0,color:{color:"#848484",highlight:"#848484",hover:"#848484",inherit:"from",opacity:1},dashes:!1,font:{color:"#343434",size:14,face:"arial",background:"none",strokeWidth:2,strokeColor:"#ffffff",align:"horizontal",multi:!1,vadjust:0,bold:{mod:"bold"},boldital:{mod:"bold italic"},ital:{mod:"italic"},mono:{mod:"",size:15,face:"courier new",vadjust:2}},hidden:!1,hoverWidth:1.5,label:void 0,labelHighlightBold:!0,length:void 0,physics:!0,scaling:{min:1,max:15,label:{enabled:!0,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function(s,o,a,u){if(o===s)return .5;{const l=1/(o-s);return Math.max(0,(u-s)*l)}}},selectionWidth:1.5,selfReference:{size:20,angle:Math.PI/4,renderBehindTheNode:!0},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:10,x:5,y:5},background:{enabled:!1,color:"rgba(111,111,111,1)",size:10,dashes:!1},smooth:{enabled:!0,type:"dynamic",forceDirection:"none",roundness:.5},title:void 0,width:1,value:void 0},Ue(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e=this,t,i;this.body.emitter.on("_forceDisableDynamicCurves",function(n){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;n==="dynamic"&&(n="continuous");let o=!1;for(const a in e.body.edges)if(Object.prototype.hasOwnProperty.call(e.body.edges,a)){const u=e.body.edges[a],l=e.body.data.edges.get(a);if(l!=null){const c=l.smooth;c!==void 0&&c.enabled===!0&&c.type==="dynamic"&&(n===void 0?u.setOptions({smooth:!1}):u.setOptions({smooth:{type:n}}),o=!0)}}s===!0&&o===!0&&e.body.emitter.emit("_dataChanged")}),this.body.emitter.on("_dataUpdated",()=>{this.reconnectEdges()}),this.body.emitter.on("refreshEdges",z(t=this.refresh).call(t,this)),this.body.emitter.on("refresh",z(i=this.refresh).call(i,this)),this.body.emitter.on("destroy",()=>{Ie(this.edgesListeners,(n,s)=>{this.body.data.edges&&this.body.data.edges.off(s,n)}),delete this.body.functions.createEdge,delete this.edgesListeners.add,delete this.edgesListeners.update,delete this.edgesListeners.remove,delete this.edgesListeners})}setOptions(e){if(e!==void 0){Ri.parseOptions(this.options,e,!0,this.defaultOptions,!0);let t=!1;if(e.smooth!==void 0)for(const i in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,i)&&(t=this.body.edges[i].updateEdgeType()||t);if(e.font!==void 0)for(const i in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,i)&&this.body.edges[i].updateLabelModule();(e.hidden!==void 0||e.physics!==void 0||t===!0)&&this.body.emitter.emit("_dataChanged")}}setData(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const i=this.body.data.edges;if(l3("id",e))this.body.data.edges=e;else if(tt(e))this.body.data.edges=new su,this.body.data.edges.add(e);else if(!e)this.body.data.edges=new su;else throw new TypeError("Array or DataSet expected");if(i&&Ie(this.edgesListeners,(n,s)=>{i.off(s,n)}),this.body.edges={},this.body.data.edges){Ie(this.edgesListeners,(s,o)=>{this.body.data.edges.on(o,s)});const n=this.body.data.edges.getIds();this.add(n,!0)}this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),t===!1&&this.body.emitter.emit("_dataChanged")}add(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const i=this.body.edges,n=this.body.data.edges;for(let s=0;s1&&arguments[1]!==void 0?arguments[1]:!0;if(e.length===0)return;const i=this.body.edges;Ie(e,n=>{const s=i[n];s!==void 0&&s.remove()}),t&&this.body.emitter.emit("_dataChanged")}refresh(){Ie(this.body.edges,(e,t)=>{const i=this.body.data.edges.get(t);i!==void 0&&e.setOptions(i)})}create(e){return new Ri(e,this.body,this.images,this.options,this.defaultOptions)}reconnectEdges(){let e;const t=this.body.nodes,i=this.body.edges;for(e in t)Object.prototype.hasOwnProperty.call(t,e)&&(t[e].edges=[]);for(e in i)if(Object.prototype.hasOwnProperty.call(i,e)){const n=i[e];n.from=null,n.to=null,n.connect()}}getConnectedNodes(e){const t=[];if(this.body.edges[e]!==void 0){const i=this.body.edges[e];i.fromId!==void 0&&t.push(i.fromId),i.toId!==void 0&&t.push(i.toId)}return t}_updateState(){this._addMissingEdges(),this._removeInvalidEdges()}_removeInvalidEdges(){const e=[];Ie(this.body.edges,(t,i)=>{const n=this.body.nodes[t.toId],s=this.body.nodes[t.fromId];n!==void 0&&n.isCluster===!0||s!==void 0&&s.isCluster===!0||(n===void 0||s===void 0)&&e.push(i)}),this.remove(e,!1)}_addMissingEdges(){const e=this.body.data.edges;if(e==null)return;const t=this.body.edges,i=[];Le(e).call(e,(n,s)=>{t[s]===void 0&&i.push(s)}),this.add(i,!0)}}class M5{constructor(e,t,i){this.body=e,this.physicsBody=t,this.barnesHutTree,this.setOptions(i),this._rng=sl("BARNES HUT SOLVER")}setOptions(e){this.options=e,this.thetaInversed=1/this.options.theta,this.overlapAvoidanceFactor=1-Math.max(0,Math.min(1,this.options.avoidOverlap))}solve(){if(this.options.gravitationalConstant!==0&&this.physicsBody.physicsNodeIndices.length>0){let e;const t=this.body.nodes,i=this.physicsBody.physicsNodeIndices,n=i.length,s=this._formBarnesHutTree(t,i);this.barnesHutTree=s;for(let o=0;o0&&this._getForceContributions(s.root,e)}}_getForceContributions(e,t){this._getForceContribution(e.children.NW,t),this._getForceContribution(e.children.NE,t),this._getForceContribution(e.children.SW,t),this._getForceContribution(e.children.SE,t)}_getForceContribution(e,t){if(e.childrenCount>0){const i=e.centerOfMass.x-t.x,n=e.centerOfMass.y-t.y,s=Math.sqrt(i*i+n*n);s*e.calcSize>this.thetaInversed?this._calculateForces(s,i,n,t,e):e.childrenCount===4?this._getForceContributions(e,t):e.children.data.id!=t.id&&this._calculateForces(s,i,n,t,e)}}_calculateForces(e,t,i,n,s){e===0&&(e=.1,t=e),this.overlapAvoidanceFactor<1&&n.shape.radius&&(e=Math.max(.1+this.overlapAvoidanceFactor*n.shape.radius,e-n.shape.radius));const o=this.options.gravitationalConstant*s.mass*n.options.mass/Math.pow(e,3),a=t*o,u=i*o;this.physicsBody.forces[n.id].x+=a,this.physicsBody.forces[n.id].y+=u}_formBarnesHutTree(e,t){let i;const n=t.length;let s=e[t[0]].x,o=e[t[0]].y,a=e[t[0]].x,u=e[t[0]].y;for(let b=1;b0&&(ga&&(a=g),wu&&(u=w))}const l=Math.abs(a-s)-Math.abs(u-o);l>0?(o-=.5*l,u+=.5*l):(s+=.5*l,a-=.5*l);const d=Math.max(1e-5,Math.abs(a-s)),h=.5*d,f=.5*(s+a),v=.5*(o+u),p={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:f-h,maxX:f+h,minY:v-h,maxY:v+h},size:d,calcSize:1/d,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(p.root);for(let b=0;b0&&this._placeInTree(p.root,i);return p}_updateBranchMass(e,t){const i=e.centerOfMass,n=e.mass+t.options.mass,s=1/n;i.x=i.x*e.mass+t.x*t.options.mass,i.x*=s,i.y=i.y*e.mass+t.y*t.options.mass,i.y*=s,e.mass=n;const o=Math.max(Math.max(t.height,t.radius),t.width);e.maxWidth=e.maxWidtht.x?n.maxY>t.y?s="NW":s="SW":n.maxY>t.y?s="NE":s="SE",this._placeInRegion(e,t,s)}_placeInRegion(e,t,i){const n=e.children[i];switch(n.childrenCount){case 0:n.children.data=t,n.childrenCount=1,this._updateBranchMass(n,t);break;case 1:n.children.data.x===t.x&&n.children.data.y===t.y?(t.x+=this._rng(),t.y+=this._rng()):(this._splitBranch(n),this._placeInTree(n,t));break;case 4:this._placeInTree(n,t);break}}_splitBranch(e){let t=null;e.childrenCount===1&&(t=e.children.data,e.mass=0,e.centerOfMass.x=0,e.centerOfMass.y=0),e.childrenCount=4,e.children.data=null,this._insertRegion(e,"NW"),this._insertRegion(e,"NE"),this._insertRegion(e,"SW"),this._insertRegion(e,"SE"),t!=null&&this._placeInTree(e,t)}_insertRegion(e,t){let i,n,s,o;const a=.5*e.size;switch(t){case"NW":i=e.range.minX,n=e.range.minX+a,s=e.range.minY,o=e.range.minY+a;break;case"NE":i=e.range.minX+a,n=e.range.maxX,s=e.range.minY,o=e.range.minY+a;break;case"SW":i=e.range.minX,n=e.range.minX+a,s=e.range.minY+a,o=e.range.maxY;break;case"SE":i=e.range.minX+a,n=e.range.maxX,s=e.range.minY+a,o=e.range.maxY;break}e.children[t]={centerOfMass:{x:0,y:0},mass:0,range:{minX:i,maxX:n,minY:s,maxY:o},size:.5*e.size,calcSize:2*e.calcSize,children:{data:null},maxWidth:0,level:e.level+1,childrenCount:0}}_debug(e,t){this.barnesHutTree!==void 0&&(e.lineWidth=1,this._drawBranch(this.barnesHutTree.root,e,t))}_drawBranch(e,t,i){i===void 0&&(i="#FF0000"),e.childrenCount===4&&(this._drawBranch(e.children.NW,t),this._drawBranch(e.children.NE,t),this._drawBranch(e.children.SE,t),this._drawBranch(e.children.SW,t)),t.strokeStyle=i,t.beginPath(),t.moveTo(e.range.minX,e.range.minY),t.lineTo(e.range.maxX,e.range.minY),t.stroke(),t.beginPath(),t.moveTo(e.range.maxX,e.range.minY),t.lineTo(e.range.maxX,e.range.maxY),t.stroke(),t.beginPath(),t.moveTo(e.range.maxX,e.range.maxY),t.lineTo(e.range.minX,e.range.maxY),t.stroke(),t.beginPath(),t.moveTo(e.range.minX,e.range.maxY),t.lineTo(e.range.minX,e.range.minY),t.stroke()}}class _re{constructor(e,t,i){this._rng=sl("REPULSION SOLVER"),this.body=e,this.physicsBody=t,this.setOptions(i)}setOptions(e){this.options=e}solve(){let e,t,i,n,s,o,a,u;const l=this.body.nodes,c=this.physicsBody.physicsNodeIndices,d=this.physicsBody.forces,h=this.options.nodeDistance,f=-2/3/h,v=4/3;for(let p=0;p0){const o=s.edges.length+1,a=this.options.centralGravity*o*s.options.mass;n[s.id].x=t*a,n[s.id].y=i*a}}}class Ire{constructor(e){this.body=e,this.physicsBody={physicsNodeIndices:[],physicsEdgeIndices:[],forces:{},velocities:{}},this.physicsEnabled=!0,this.simulationInterval=1e3/60,this.requiresTimeout=!0,this.previousStates={},this.referenceState={},this.freezeCache={},this.renderTimer=void 0,this.adaptiveTimestep=!1,this.adaptiveTimestepEnabled=!1,this.adaptiveCounter=0,this.adaptiveInterval=3,this.stabilized=!1,this.startedStabilization=!1,this.stabilizationIterations=0,this.ready=!1,this.options={},this.defaultOptions={enabled:!0,barnesHut:{theta:.5,gravitationalConstant:-2e3,centralGravity:.3,springLength:95,springConstant:.04,damping:.09,avoidOverlap:0},forceAtlas2Based:{theta:.5,gravitationalConstant:-50,centralGravity:.01,springConstant:.08,springLength:100,damping:.4,avoidOverlap:0},repulsion:{centralGravity:.2,springLength:200,springConstant:.05,nodeDistance:100,damping:.09,avoidOverlap:0},hierarchicalRepulsion:{centralGravity:0,springLength:100,springConstant:.01,nodeDistance:120,damping:.09},maxVelocity:50,minVelocity:.75,solver:"barnesHut",stabilization:{enabled:!0,iterations:1e3,updateInterval:50,onlyDynamicEdges:!1,fit:!0},timestep:.5,adaptiveTimestep:!0,wind:{x:0,y:0}},at(this.options,this.defaultOptions),this.timestep=.5,this.layoutFailed=!1,this.bindEventListeners()}bindEventListeners(){this.body.emitter.on("initPhysics",()=>{this.initPhysics()}),this.body.emitter.on("_layoutFailed",()=>{this.layoutFailed=!0}),this.body.emitter.on("resetPhysics",()=>{this.stopSimulation(),this.ready=!1}),this.body.emitter.on("disablePhysics",()=>{this.physicsEnabled=!1,this.stopSimulation()}),this.body.emitter.on("restorePhysics",()=>{this.setOptions(this.options),this.ready===!0&&this.startSimulation()}),this.body.emitter.on("startSimulation",()=>{this.ready===!0&&this.startSimulation()}),this.body.emitter.on("stopSimulation",()=>{this.stopSimulation()}),this.body.emitter.on("destroy",()=>{this.stopSimulation(!1),this.body.emitter.off()}),this.body.emitter.on("_dataChanged",()=>{this.updatePhysicsData()})}setOptions(e){if(e!==void 0)if(e===!1)this.options.enabled=!1,this.physicsEnabled=!1,this.stopSimulation();else if(e===!0)this.options.enabled=!0,this.physicsEnabled=!0,this.startSimulation();else{this.physicsEnabled=!0,cu(["stabilization"],this.options,e),nr(this.options,e,"stabilization"),e.enabled===void 0&&(this.options.enabled=!0),this.options.enabled===!1&&(this.physicsEnabled=!1,this.stopSimulation());const t=this.options.wind;t&&((typeof t.x!="number"||X_(t.x))&&(t.x=0),(typeof t.y!="number"||X_(t.y))&&(t.y=0)),this.timestep=this.options.timestep}this.init()}init(){let e;this.options.solver==="forceAtlas2Based"?(e=this.options.forceAtlas2Based,this.nodesSolver=new Sre(this.body,this.physicsBody,e),this.edgesSolver=new I1(this.body,this.physicsBody,e),this.gravitySolver=new Ore(this.body,this.physicsBody,e)):this.options.solver==="repulsion"?(e=this.options.repulsion,this.nodesSolver=new _re(this.body,this.physicsBody,e),this.edgesSolver=new I1(this.body,this.physicsBody,e),this.gravitySolver=new Ka(this.body,this.physicsBody,e)):this.options.solver==="hierarchicalRepulsion"?(e=this.options.hierarchicalRepulsion,this.nodesSolver=new wre(this.body,this.physicsBody,e),this.edgesSolver=new Ere(this.body,this.physicsBody,e),this.gravitySolver=new Ka(this.body,this.physicsBody,e)):(e=this.options.barnesHut,this.nodesSolver=new M5(this.body,this.physicsBody,e),this.edgesSolver=new I1(this.body,this.physicsBody,e),this.gravitySolver=new Ka(this.body,this.physicsBody,e)),this.modelOptions=e}initPhysics(){this.physicsEnabled===!0&&this.options.enabled===!0?this.options.stabilization.enabled===!0?this.stabilize():(this.stabilized=!1,this.ready=!0,this.body.emitter.emit("fit",{},this.layoutFailed),this.startSimulation()):(this.ready=!0,this.body.emitter.emit("fit"))}startSimulation(){if(this.physicsEnabled===!0&&this.options.enabled===!0){if(this.stabilized=!1,this.adaptiveTimestep=!1,this.body.emitter.emit("_resizeNodes"),this.viewFunction===void 0){var e;this.viewFunction=z(e=this.simulationStep).call(e,this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering")}}else this.body.emitter.emit("_redraw")}stopSimulation(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.stabilized=!0,e===!0&&this._emitStabilized(),this.viewFunction!==void 0&&(this.body.emitter.off("initRedraw",this.viewFunction),this.viewFunction=void 0,e===!0&&this.body.emitter.emit("_stopRendering"))}simulationStep(){const e=ou();this.physicsTick(),(ou()-e<.4*this.simulationInterval||this.runDoubleSpeed===!0)&&this.stabilized===!1&&(this.physicsTick(),this.runDoubleSpeed=!0),this.stabilized===!0&&this.stopSimulation()}_emitStabilized(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.stabilizationIterations;(this.stabilizationIterations>1||this.startedStabilization===!0)&&ti(()=>{this.body.emitter.emit("stabilized",{iterations:e}),this.startedStabilization=!1,this.stabilizationIterations=0},0)}physicsStep(){this.gravitySolver.solve(),this.nodesSolver.solve(),this.edgesSolver.solve(),this.moveNodes()}adjustTimeStep(){this._evaluateStepQuality()===!0?this.timestep=1.2*this.timestep:this.timestep/1.2o))return!1;return!0}moveNodes(){const e=this.physicsBody.physicsNodeIndices;let t=0,i=0;const n=5;for(let s=0;so&&(e=e>0?o:-o),e}_performStep(e){const t=this.body.nodes[e],i=this.physicsBody.forces[e];this.options.wind&&(i.x+=this.options.wind.x,i.y+=this.options.wind.y);const n=this.physicsBody.velocities[e];return this.previousStates[e]={x:t.x,y:t.y,vx:n.x,vy:n.y},t.options.fixed.x===!1?(n.x=this.calculateComponentVelocity(n.x,i.x,t.options.mass),t.x+=n.x*this.timestep):(i.x=0,n.x=0),t.options.fixed.y===!1?(n.y=this.calculateComponentVelocity(n.y,i.y,t.options.mass),t.y+=n.y*this.timestep):(i.y=0,n.y=0),Math.sqrt(Math.pow(n.x,2)+Math.pow(n.y,2))}_freezeNodes(){const e=this.body.nodes;for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&e[t].x&&e[t].y){const i=e[t].options.fixed;this.freezeCache[t]={x:i.x,y:i.y},i.x=!0,i.y=!0}}_restoreFrozenNodes(){const e=this.body.nodes;for(const t in e)Object.prototype.hasOwnProperty.call(e,t)&&this.freezeCache[t]!==void 0&&(e[t].options.fixed.x=this.freezeCache[t].x,e[t].options.fixed.y=this.freezeCache[t].y);this.freezeCache={}}stabilize(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.stabilization.iterations;if(typeof e!="number"&&(e=this.options.stabilization.iterations,console.error("The stabilize method needs a numeric amount of iterations. Switching to default: ",e)),this.physicsBody.physicsNodeIndices.length===0){this.ready=!0;return}this.adaptiveTimestep=this.options.adaptiveTimestep,this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,ti(()=>this._stabilizationBatch(),0)}_startStabilizing(){return this.startedStabilization===!0?!1:(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0,!0)}_stabilizationBatch(){const e=()=>this.stabilized===!1&&this.stabilizationIterations{this.body.emitter.emit("stabilizationProgress",{iterations:this.stabilizationIterations,total:this.targetIterations})};this._startStabilizing()&&t();let i=0;for(;e()&&i"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");T1=crypto.getRandomValues.bind(crypto)}return T1($re)}const Rre=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var Q2={randomUUID:Rre};function Cre(r,e,t){var n;r=r||{};const i=r.random??((n=r.rng)==null?void 0:n.call(r))??Pre();if(i.length<16)throw new Error("Random bytes length must be >= 16");return i[6]=i[6]&15|64,i[8]=i[8]&63|128,Tre(i)}function wo(r,e,t){return Q2.randomUUID?Q2.randomUUID():Cre(r)}class kt{constructor(){}static getRange(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],i=1e9,n=-1e9,s=1e9,o=-1e9,a;if(t.length>0)for(let u=0;ua.shape.boundingBox.left&&(s=a.shape.boundingBox.left),oa.shape.boundingBox.top&&(i=a.shape.boundingBox.top),n1&&arguments[1]!==void 0?arguments[1]:[],i=1e9,n=-1e9,s=1e9,o=-1e9,a;if(t.length>0)for(let u=0;ua.x&&(s=a.x),oa.y&&(i=a.y),n{delete this.containedEdges[i.id]}),Ie(t.containedNodes,(i,n)=>{this.containedNodes[n]=i}),t.containedNodes={},Ie(t.containedEdges,(i,n)=>{this.containedEdges[n]=i}),t.containedEdges={},Ie(t.edges,i=>{Ie(this.edges,n=>{var s,o;const a=Fe(s=n.clusteringEdgeReplacingIds).call(s,i.id);a!==-1&&(Ie(i.clusteringEdgeReplacingIds,u=>{n.clusteringEdgeReplacingIds.push(u),this.body.edges[u].edgeReplacedById=n.id}),ei(o=n.clusteringEdgeReplacingIds).call(o,a,1))})}),t.edges=[]}}class qre{constructor(e){this.body=e,this.clusteredNodes={},this.clusteredEdges={},this.options={},this.defaultOptions={},at(this.options,this.defaultOptions),this.body.emitter.on("_resetData",()=>{this.clusteredNodes={},this.clusteredEdges={}})}clusterByHubsize(e,t){e===void 0?e=this._getHubSize():typeof e=="object"&&(t=this._checkOptions(e),e=this._getHubSize());const i=[];for(let n=0;n=e&&i.push(s.id)}for(let n=0;n0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e.joinCondition===void 0)throw new Error("Cannot call clusterByNodeData without a joinCondition function in the options.");e=this._checkOptions(e);const i={},n={};Ie(this.body.nodes,(s,o)=>{s.options&&e.joinCondition(s.options)===!0&&(i[o]=s,Ie(s.edges,a=>{this.clusteredEdges[a.id]===void 0&&(n[a.id]=a)}))}),this._cluster(i,n,e,t)}clusterByEdgeCount(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;t=this._checkOptions(t);const n=[],s={};let o,a,u;for(let l=0;l0&&Ze(d).length>0&&p===!0){const m=function(){for(let g=0;g1&&arguments[1]!==void 0?arguments[1]:!0;this.clusterByEdgeCount(1,e,t)}clusterBridges(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.clusterByEdgeCount(2,e,t)}clusterByConnection(e,t){var i;let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0)throw new Error("No nodeId supplied to clusterByConnection!");if(this.body.nodes[e]===void 0)throw new Error("The nodeId given to clusterByConnection does not exist!");const s=this.body.nodes[e];t=this._checkOptions(t,s),t.clusterNodeProperties.x===void 0&&(t.clusterNodeProperties.x=s.x),t.clusterNodeProperties.y===void 0&&(t.clusterNodeProperties.y=s.y),t.clusterNodeProperties.fixed===void 0&&(t.clusterNodeProperties.fixed={},t.clusterNodeProperties.fixed.x=s.options.fixed.x,t.clusterNodeProperties.fixed.y=s.options.fixed.y);const o={},a={},u=s.id,l=kt.cloneOptions(s);o[u]=s;for(let d=0;d-1&&(a[v.id]=v)}}this._cluster(o,a,t,n)}_createClusterEdges(e,t,i,n){let s,o,a,u,l,c;const d=Ze(e),h=[];for(let p=0;p0&&arguments[0]!==void 0?arguments[0]:{};return e.clusterEdgeProperties===void 0&&(e.clusterEdgeProperties={}),e.clusterNodeProperties===void 0&&(e.clusterNodeProperties={}),e}_cluster(e,t,i){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;const s=[];for(const c in e)Object.prototype.hasOwnProperty.call(e,c)&&this.clusteredNodes[c]!==void 0&&s.push(c);for(let c=0;cn?a.x:n,s=a.yo?a.y:o;return{x:.5*(i+n),y:.5*(s+o)}}openCluster(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0)throw new Error("No clusterNodeId supplied to openCluster.");const n=this.body.nodes[e];if(n===void 0)throw new Error("The clusterNodeId supplied to openCluster does not exist.");if(n.isCluster!==!0||n.containedNodes===void 0||n.containedEdges===void 0)throw new Error("The node:"+e+" is not a valid cluster.");const s=this.findNode(e),o=Fe(s).call(s,e)-1;if(o>=0){const c=s[o];this.body.nodes[c]._openChildCluster(e),delete this.body.nodes[e],i===!0&&this.body.emitter.emit("_dataChanged");return}const a=n.containedNodes,u=n.containedEdges;if(t!==void 0&&t.releaseFunction!==void 0&&typeof t.releaseFunction=="function"){const c={},d={x:n.x,y:n.y};for(const f in a)if(Object.prototype.hasOwnProperty.call(a,f)){const v=this.body.nodes[f];c[f]={x:v.x,y:v.y}}const h=t.releaseFunction(d,c);for(const f in a)if(Object.prototype.hasOwnProperty.call(a,f)){const v=this.body.nodes[f];h[f]!==void 0&&(v.x=h[f].x===void 0?n.x:h[f].x,v.y=h[f].y===void 0?n.y:h[f].y)}}else Ie(a,function(c){c.options.fixed.x===!1&&(c.x=n.x),c.options.fixed.y===!1&&(c.y=n.y)});for(const c in a)if(Object.prototype.hasOwnProperty.call(a,c)){const d=this.body.nodes[c];d.vx=n.vx,d.vy=n.vy,d.setOptions({physics:!0}),delete this.clusteredNodes[c]}const l=[];for(let c=0;c0&&on&&(n=l.edges.length),e+=l.edges.length,t+=Math.pow(l.edges.length,2),i+=1}e=e/i,t=t/i;const s=t-Math.pow(e,2),o=Math.sqrt(s);let a=Math.floor(e+2*o);return a>n&&(a=n),a}_createClusteredEdge(e,t,i,n,s){const o=kt.cloneOptions(i,"edge");Ue(o,n),o.from=e,o.to=t,o.id="clusterEdge:"+wo(),s!==void 0&&Ue(o,s);const a=this.body.functions.createEdge(o);return a.clusteringEdgeReplacingIds=[i.id],a.connect(),this.body.edges[a.id]=a,a}_clusterEdges(e,t,i,n){if(t instanceof Ri){const s=t,o={};o[s.id]=s,t=o}if(e instanceof Ke){const s=e,o={};o[s.id]=s,e=o}if(i==null)throw new Error("_clusterEdges: parameter clusterNode required");n===void 0&&(n=i.clusterEdgeProperties),this._createClusterEdges(e,t,i,n);for(const s in t)if(Object.prototype.hasOwnProperty.call(t,s)&&this.body.edges[s]!==void 0){const o=this.body.edges[s];this._backupEdgeOptions(o),o.setOptions({physics:!1})}for(const s in e)Object.prototype.hasOwnProperty.call(e,s)&&(this.clusteredNodes[s]={clusterId:i.id,node:this.body.nodes[s]},this.body.nodes[s].setOptions({physics:!1}))}_getClusterNodeForNode(e){if(e===void 0)return;const t=this.clusteredNodes[e];if(t===void 0)return;const i=t.clusterId;if(i!==void 0)return this.body.nodes[i]}_filter(e,t){const i=[];return Ie(e,n=>{t(n)&&i.push(n)}),i}_updateState(){let e;const t=[],i={},n=u=>{Ie(this.body.nodes,l=>{l.isCluster===!0&&u(l)})};for(e in this.clusteredNodes){if(!Object.prototype.hasOwnProperty.call(this.clusteredNodes,e))continue;this.body.nodes[e]===void 0&&t.push(e)}n(function(u){for(let l=0;l{const l=this.body.edges[u];(l===void 0||!l.endPointsValid())&&(i[u]=u)}),n(function(u){Ie(u.containedEdges,(l,c)=>{!l.endPointsValid()&&!i[c]&&(i[c]=c)})}),Ie(this.body.edges,(u,l)=>{let c=!0;const d=u.clusteringEdgeReplacingIds;if(d!==void 0){let h=0;Ie(d,f=>{const v=this.body.edges[f];v!==void 0&&v.endPointsValid()&&(h+=1)}),c=h>0}(!u.endPointsValid()||!c)&&(i[l]=l)}),n(u=>{Ie(i,l=>{delete u.containedEdges[l],Ie(u.edges,(c,d)=>{if(c.id===l){u.edges[d]=null;return}c.clusteringEdgeReplacingIds=this._filter(c.clusteringEdgeReplacingIds,function(h){return!i[h]})}),u.edges=this._filter(u.edges,function(c){return c!==null})})}),Ie(i,u=>{delete this.clusteredEdges[u]}),Ie(i,u=>{delete this.body.edges[u]});const s=Ze(this.body.edges);Ie(s,u=>{const l=this.body.edges[u],c=this._isClusteredNode(l.fromId)||this._isClusteredNode(l.toId);if(c!==this._isClusteredEdge(l.id))if(c){const d=this._getClusterNodeForNode(l.fromId);d!==void 0&&this._clusterEdges(this.body.nodes[l.fromId],l,d);const h=this._getClusterNodeForNode(l.toId);h!==void 0&&this._clusterEdges(this.body.nodes[l.toId],l,h)}else delete this._clusterEdges[u],this._restoreEdge(l)});let o=!1,a=!0;for(;a;){const u=[];n(function(l){const c=Ze(l.containedNodes).length,d=l.options.allowSingleNodeCluster===!0;(d&&c<1||!d&&c<2)&&u.push(l.id)});for(let l=0;l0,o=o||a}o&&this._updateState()}_isClusteredNode(e){return this.clusteredNodes[e]!==void 0}_isClusteredEdge(e){return this.clusteredEdges[e]!==void 0}}class Dre{constructor(e,t){this.body=e,this.canvas=t,this.redrawRequested=!1,this.requestAnimationFrameRequestId=void 0,this.renderingActive=!1,this.renderRequests=0,this.allowRedraw=!0,this.dragging=!1,this.zooming=!1,this.options={},this.defaultOptions={hideEdgesOnDrag:!1,hideEdgesOnZoom:!1,hideNodesOnDrag:!1},at(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e;this.body.emitter.on("dragStart",()=>{this.dragging=!0}),this.body.emitter.on("dragEnd",()=>{this.dragging=!1}),this.body.emitter.on("zoom",()=>{this.zooming=!0,window.clearTimeout(this.zoomTimeoutId),this.zoomTimeoutId=ti(()=>{var t;this.zooming=!1,z(t=this._requestRedraw).call(t,this)()},250)}),this.body.emitter.on("_resizeNodes",()=>{this._resizeNodes()}),this.body.emitter.on("_redraw",()=>{this.renderingActive===!1&&this._redraw()}),this.body.emitter.on("_blockRedraw",()=>{this.allowRedraw=!1}),this.body.emitter.on("_allowRedraw",()=>{this.allowRedraw=!0,this.redrawRequested=!1}),this.body.emitter.on("_requestRedraw",z(e=this._requestRedraw).call(e,this)),this.body.emitter.on("_startRendering",()=>{this.renderRequests+=1,this.renderingActive=!0,this._startRendering()}),this.body.emitter.on("_stopRendering",()=>{this.renderRequests-=1,this.renderingActive=this.renderRequests>0,this.requestAnimationFrameRequestId=void 0}),this.body.emitter.on("destroy",()=>{this.renderRequests=0,this.allowRedraw=!1,this.renderingActive=!1,window.cancelAnimationFrame(this.requestAnimationFrameRequestId),this.body.emitter.off()})}setOptions(e){e!==void 0&&Gs(["hideEdgesOnDrag","hideEdgesOnZoom","hideNodesOnDrag"],this.options,e)}_startRendering(){if(this.renderingActive===!0&&this.requestAnimationFrameRequestId===void 0){var e;this.requestAnimationFrameRequestId=window.requestAnimationFrame(z(e=this._renderStep).call(e,this),this.simulationInterval)}}_renderStep(){this.renderingActive===!0&&(this.requestAnimationFrameRequestId=void 0,this._startRendering(),this._redraw())}redraw(){this.body.emitter.emit("setSize"),this._redraw()}_requestRedraw(){this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedraw===!0&&(this.redrawRequested=!0,window.requestAnimationFrame(()=>{this._redraw(!1)}))}_redraw(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;if(this.allowRedraw===!0){this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;const t={drawExternalLabels:null};(this.canvas.frame.canvas.width===0||this.canvas.frame.canvas.height===0)&&this.canvas.setSize(),this.canvas.setTransform();const i=this.canvas.getContext(),n=this.canvas.frame.canvas.clientWidth,s=this.canvas.frame.canvas.clientHeight;if(i.clearRect(0,0,n,s),this.canvas.frame.clientWidth===0)return;if(i.save(),i.translate(this.body.view.translation.x,this.body.view.translation.y),i.scale(this.body.view.scale,this.body.view.scale),i.beginPath(),this.body.emitter.emit("beforeDrawing",i),i.closePath(),e===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&(this.zooming===!1||this.zooming===!0&&this.options.hideEdgesOnZoom===!1)&&this._drawEdges(i),this.dragging===!1||this.dragging===!0&&this.options.hideNodesOnDrag===!1){const{drawExternalLabels:o}=this._drawNodes(i,e);t.drawExternalLabels=o}e===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&(this.zooming===!1||this.zooming===!0&&this.options.hideEdgesOnZoom===!1)&&this._drawArrows(i),t.drawExternalLabels!=null&&t.drawExternalLabels(),e===!1&&this._drawSelectionBox(i),i.beginPath(),this.body.emitter.emit("afterDrawing",i),i.closePath(),i.restore(),e===!0&&i.clearRect(0,0,n,s)}}_resizeNodes(){this.canvas.setTransform();const e=this.canvas.getContext();e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale);const t=this.body.nodes;let i;for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&(i=t[n],i.resize(e),i.updateBoundingBox(e,i.selected));e.restore()}_drawNodes(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const i=this.body.nodes,n=this.body.nodeIndices;let s;const o=[],a=[],u=20,l=this.canvas.DOMtoCanvas({x:-20,y:-20}),c=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+u,y:this.canvas.frame.canvas.clientHeight+u}),d={top:l.y,left:l.x,bottom:c.y,right:c.x},h=[];for(let b=0;b{for(const b of h)b()}}}_drawEdges(e){const t=this.body.edges,i=this.body.edgeIndices;for(let n=0;n{t.width!==0&&(this.body.view.translation.x=t.width*.5),t.height!==0&&(this.body.view.translation.y=t.height*.5)}),this.body.emitter.on("setSize",z(e=this.setSize).call(e,this)),this.body.emitter.on("destroy",()=>{this.hammerFrame.destroy(),this.hammer.destroy(),this._cleanUp()})}setOptions(e){if(e!==void 0&&Gs(["width","height","autoResize"],this.options,e),this._cleanUp(),this.options.autoResize===!0){var t;if(window.ResizeObserver){const n=new ResizeObserver(()=>{this.setSize()===!0&&this.body.emitter.emit("_requestRedraw")}),{frame:s}=this;n.observe(s),this._cleanupCallbacks.push(()=>{n.unobserve(s)})}else{const n=Fre(()=>{this.setSize()===!0&&this.body.emitter.emit("_requestRedraw")},1e3);this._cleanupCallbacks.push(()=>{clearInterval(n)})}const i=z(t=this._onResize).call(t,this);window.addEventListener("resize",i),this._cleanupCallbacks.push(()=>{window.removeEventListener("resize",i)})}}_cleanUp(){var e,t,i;Le(e=on(t=ei(i=this._cleanupCallbacks).call(i,0)).call(t)).call(e,n=>{try{n()}catch(s){console.error(s)}})}_onResize(){this.setSize(),this.body.emitter.emit("_redraw")}_getCameraState(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.pixelRatio;this.initialized===!0&&(this.cameraState.previousWidth=this.frame.canvas.width/e,this.cameraState.previousHeight=this.frame.canvas.height/e,this.cameraState.scale=this.body.view.scale,this.cameraState.position=this.DOMtoCanvas({x:.5*this.frame.canvas.width/e,y:.5*this.frame.canvas.height/e}))}_setCameraState(){if(this.cameraState.scale!==void 0&&this.frame.canvas.clientWidth!==0&&this.frame.canvas.clientHeight!==0&&this.pixelRatio!==0&&this.cameraState.previousWidth>0&&this.cameraState.previousHeight>0){const e=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth,t=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight;let i=this.cameraState.scale;e!=1&&t!=1?i=this.cameraState.scale*.5*(e+t):e!=1?i=this.cameraState.scale*e:t!=1&&(i=this.cameraState.scale*t),this.body.view.scale=i;const n=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),s={x:n.x-this.cameraState.position.x,y:n.y-this.cameraState.position.y};this.body.view.translation.x+=s.x*this.body.view.scale,this.body.view.translation.y+=s.y*this.body.view.scale}}_prepareValue(e){if(typeof e=="number")return e+"px";if(typeof e=="string"){if(Fe(e).call(e,"%")!==-1||Fe(e).call(e,"px")!==-1)return e;if(Fe(e).call(e,"%")===-1)return e+"px"}throw new Error("Could not use the value supplied for width or height:"+e)}_create(){for(;this.body.container.hasChildNodes();)this.body.container.removeChild(this.body.container.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis-network",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.tabIndex=0,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext)this._setPixelRatio(),this.setTransform();else{const e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerText="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}this.body.container.appendChild(this.frame),this.body.view.scale=1,this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight},this._bindHammer()}_bindHammer(){this.hammer!==void 0&&this.hammer.destroy(),this.drag={},this.pinch={},this.hammer=new us(this.frame.canvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:us.DIRECTION_ALL}),fu(this.hammer,e=>{this.body.eventListeners.onTouch(e)}),this.hammer.on("tap",e=>{this.body.eventListeners.onTap(e)}),this.hammer.on("doubletap",e=>{this.body.eventListeners.onDoubleTap(e)}),this.hammer.on("press",e=>{this.body.eventListeners.onHold(e)}),this.hammer.on("panstart",e=>{this.body.eventListeners.onDragStart(e)}),this.hammer.on("panmove",e=>{this.body.eventListeners.onDrag(e)}),this.hammer.on("panend",e=>{this.body.eventListeners.onDragEnd(e)}),this.hammer.on("pinch",e=>{this.body.eventListeners.onPinch(e)}),this.frame.canvas.addEventListener("wheel",e=>{this.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("mousemove",e=>{this.body.eventListeners.onMouseMove(e)}),this.frame.canvas.addEventListener("contextmenu",e=>{this.body.eventListeners.onContext(e)}),this.hammerFrame=new us(this.frame),N5(this.hammerFrame,e=>{this.body.eventListeners.onRelease(e)})}setSize(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.width,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.options.height;e=this._prepareValue(e),t=this._prepareValue(t);let i=!1;const n=this.frame.canvas.width,s=this.frame.canvas.height,o=this.pixelRatio;if(this._setPixelRatio(),e!=this.options.width||t!=this.options.height||this.frame.style.width!=e||this.frame.style.height!=t)this._getCameraState(o),this.frame.style.width=e,this.frame.style.height=t,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),this.options.width=e,this.options.height=t,this.canvasViewCenter={x:.5*this.frame.clientWidth,y:.5*this.frame.clientHeight},i=!0;else{const a=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),u=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);(this.frame.canvas.width!==a||this.frame.canvas.height!==u)&&this._getCameraState(o),this.frame.canvas.width!==a&&(this.frame.canvas.width=a,i=!0),this.frame.canvas.height!==u&&(this.frame.canvas.height=u,i=!0)}return i===!0&&(this.body.emitter.emit("resize",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(n/this.pixelRatio),oldHeight:Math.round(s/this.pixelRatio)}),this._setCameraState()),this.initialized=!0,i}getContext(){return this.frame.canvas.getContext("2d")}_determinePixelRatio(){const e=this.getContext();if(e===void 0)throw new Error("Could not get canvax context");let t=1;typeof window<"u"&&(t=window.devicePixelRatio||1);const i=e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return t/i}_setPixelRatio(){this.pixelRatio=this._determinePixelRatio()}setTransform(){const e=this.getContext();if(e===void 0)throw new Error("Could not get canvax context");e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}_XconvertDOMtoCanvas(e){return(e-this.body.view.translation.x)/this.body.view.scale}_XconvertCanvasToDOM(e){return e*this.body.view.scale+this.body.view.translation.x}_YconvertDOMtoCanvas(e){return(e-this.body.view.translation.y)/this.body.view.scale}_YconvertCanvasToDOM(e){return e*this.body.view.scale+this.body.view.translation.y}canvasToDOM(e){return{x:this._XconvertCanvasToDOM(e.x),y:this._YconvertCanvasToDOM(e.y)}}DOMtoCanvas(e){return{x:this._XconvertDOMtoCanvas(e.x),y:this._YconvertDOMtoCanvas(e.y)}}}function Bre(r,e){const t=at({nodes:e,minZoomLevel:Number.MIN_VALUE,maxZoomLevel:1},r??{});if(!tt(t.nodes))throw new TypeError("Nodes has to be an array of ids.");if(t.nodes.length===0&&(t.nodes=e),!(typeof t.minZoomLevel=="number"&&t.minZoomLevel>0))throw new TypeError("Min zoom level has to be a number higher than zero.");if(!(typeof t.maxZoomLevel=="number"&&t.minZoomLevel<=t.maxZoomLevel))throw new TypeError("Max zoom level has to be a number higher than min zoom level.");return t}class jre{constructor(e,t){var i,n;this.body=e,this.canvas=t,this.animationSpeed=1/this.renderRefreshRate,this.animationEasingFunction="easeInOutQuint",this.easingTime=0,this.sourceScale=0,this.targetScale=0,this.sourceTranslation=0,this.targetTranslation=0,this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0,this.touchTime=0,this.viewFunction=void 0,this.body.emitter.on("fit",z(i=this.fit).call(i,this)),this.body.emitter.on("animationFinished",()=>{this.body.emitter.emit("_stopRendering")}),this.body.emitter.on("unlockNode",z(n=this.releaseNode).call(n,this))}setOptions(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.options=e}fit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;e=Bre(e,this.body.nodeIndices);const i=this.canvas.frame.canvas.clientWidth,n=this.canvas.frame.canvas.clientHeight;let s,o;if(i===0||n===0)o=1,s=kt.getRange(this.body.nodes,e.nodes);else if(t===!0){let l=0;for(const h in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,h)&&this.body.nodes[h].predefinedPosition===!0&&(l+=1);if(l>.5*this.body.nodeIndices.length){this.fit(e,!1);return}s=kt.getRange(this.body.nodes,e.nodes),o=12.662/(this.body.nodeIndices.length+7.4147)+.0964822;const d=Math.min(i/600,n/600);o*=d}else{this.body.emitter.emit("_resizeNodes"),s=kt.getRange(this.body.nodes,e.nodes);const l=Math.abs(s.maxX-s.minX)*1.1,c=Math.abs(s.maxY-s.minY)*1.1,d=i/l,h=n/c;o=d<=h?d:h}o>e.maxZoomLevel?o=e.maxZoomLevel:o1&&arguments[1]!==void 0?arguments[1]:{};if(this.body.nodes[e]!==void 0){const i={x:this.body.nodes[e].x,y:this.body.nodes[e].y};t.position=i,t.lockedOnNode=e,this.moveTo(t)}else console.error("Node: "+e+" cannot be found.")}moveTo(e){if(e===void 0){e={};return}if(e.offset!=null){if(e.offset.x!=null){if(e.offset.x=+e.offset.x,!tn(e.offset.x))throw new TypeError('The option "offset.x" has to be a finite number.')}else e.offset.x=0;if(e.offset.y!=null){if(e.offset.y=+e.offset.y,!tn(e.offset.y))throw new TypeError('The option "offset.y" has to be a finite number.')}else e.offset.x=0}else e.offset={x:0,y:0};if(e.position!=null){if(e.position.x!=null){if(e.position.x=+e.position.x,!tn(e.position.x))throw new TypeError('The option "position.x" has to be a finite number.')}else e.position.x=0;if(e.position.y!=null){if(e.position.y=+e.position.y,!tn(e.position.y))throw new TypeError('The option "position.y" has to be a finite number.')}else e.position.x=0}else e.position=this.getViewPosition();if(e.scale!=null){if(e.scale=+e.scale,!(e.scale>0))throw new TypeError('The option "scale" has to be a number greater than zero.')}else e.scale=this.body.view.scale;e.animation===void 0&&(e.animation={duration:0}),e.animation===!1&&(e.animation={duration:0}),e.animation===!0&&(e.animation={}),e.animation.duration===void 0&&(e.animation.duration=1e3),e.animation.easingFunction===void 0&&(e.animation.easingFunction="easeInOutQuad"),this.animateView(e)}animateView(e){if(e===void 0)return;this.animationEasingFunction=e.animation.easingFunction,this.releaseNode(),e.locked===!0&&(this.lockedOnNodeId=e.lockedOnNode,this.lockedOnNodeOffset=e.offset),this.easingTime!=0&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=e.scale,this.body.view.scale=this.targetScale;const t=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:t.x-e.position.x,y:t.y-e.position.y};if(this.targetTranslation={x:this.sourceTranslation.x+i.x*this.targetScale+e.offset.x,y:this.sourceTranslation.y+i.y*this.targetScale+e.offset.y},e.animation.duration===0)if(this.lockedOnNodeId!=null){var n;this.viewFunction=z(n=this._lockedRedraw).call(n,this),this.body.emitter.on("initRedraw",this.viewFunction)}else this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw");else{var s;this.animationSpeed=1/(60*e.animation.duration*.001)||1/60,this.animationEasingFunction=e.animation.easingFunction,this.viewFunction=z(s=this._transitionRedraw).call(s,this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering")}}_lockedRedraw(){const e={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},t=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:t.x-e.x,y:t.y-e.y},n=this.body.view.translation,s={x:n.x+i.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:n.y+i.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=s}releaseNode(){this.lockedOnNodeId!==void 0&&this.viewFunction!==void 0&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}_transitionRedraw(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.easingTime+=this.animationSpeed,this.easingTime=e===!0?1:this.easingTime;const t=GQ[this.animationEasingFunction](this.easingTime);if(this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*t,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*t,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*t},this.easingTime>=1){if(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,this.lockedOnNodeId!=null){var i;this.viewFunction=z(i=this._lockedRedraw).call(i,this),this.body.emitter.on("initRedraw",this.viewFunction)}this.body.emitter.emit("animationFinished")}}getScale(){return this.body.view.scale}getViewPosition(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}function tB(r){var e=r&&r.preventDefault||!1,t=r&&r.container||window,i={},n={keydown:{},keyup:{}},s={},o;for(o=97;o<=122;o++)s[String.fromCharCode(o)]={code:65+(o-97),shift:!1};for(o=65;o<=90;o++)s[String.fromCharCode(o)]={code:o,shift:!0};for(o=0;o<=9;o++)s[""+o]={code:48+o,shift:!1};for(o=1;o<=12;o++)s["F"+o]={code:111+o,shift:!1};for(o=0;o<=9;o++)s["num"+o]={code:96+o,shift:!1};s["num*"]={code:106,shift:!1},s["num+"]={code:107,shift:!1},s["num-"]={code:109,shift:!1},s["num/"]={code:111,shift:!1},s["num."]={code:110,shift:!1},s.left={code:37,shift:!1},s.up={code:38,shift:!1},s.right={code:39,shift:!1},s.down={code:40,shift:!1},s.space={code:32,shift:!1},s.enter={code:13,shift:!1},s.shift={code:16,shift:void 0},s.esc={code:27,shift:!1},s.backspace={code:8,shift:!1},s.tab={code:9,shift:!1},s.ctrl={code:17,shift:!1},s.alt={code:18,shift:!1},s.delete={code:46,shift:!1},s.pageup={code:33,shift:!1},s.pagedown={code:34,shift:!1},s["="]={code:187,shift:!1},s["-"]={code:189,shift:!1},s["]"]={code:221,shift:!1},s["["]={code:219,shift:!1};var a=function(c){l(c,"keydown")},u=function(c){l(c,"keyup")},l=function(c,d){if(n[d][c.keyCode]!==void 0){for(var h=n[d][c.keyCode],f=0;f{this.activated=!0,this.configureKeyboardBindings()}),this.body.emitter.on("deactivate",()=>{this.activated=!1,this.configureKeyboardBindings()}),this.body.emitter.on("destroy",()=>{this.keycharm!==void 0&&this.keycharm.destroy()}),this.options={}}setOptions(e){e!==void 0&&(this.options=e,this.create())}create(){this.options.navigationButtons===!0?this.iconsCreated===!1&&this.loadNavigationElements():this.iconsCreated===!0&&this.cleanNavigation(),this.configureKeyboardBindings()}cleanNavigation(){if(this.navigationHammers.length!=0){for(let e=0;e{this._stopMovement()}),this.navigationHammers.push(s),this.iconsCreated=!0}bindToRedraw(e){if(this.boundFunctions[e]===void 0){var t;this.boundFunctions[e]=z(t=this[e]).call(t,this),this.body.emitter.on("initRedraw",this.boundFunctions[e]),this.body.emitter.emit("_startRendering")}}unbindFromRedraw(e){this.boundFunctions[e]!==void 0&&(this.body.emitter.off("initRedraw",this.boundFunctions[e]),this.body.emitter.emit("_stopRendering"),delete this.boundFunctions[e])}_fit(){new Date().valueOf()-this.touchTime>700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=new Date().valueOf())}_stopMovement(){for(const e in this.boundFunctions)Object.prototype.hasOwnProperty.call(this.boundFunctions,e)&&(this.body.emitter.off("initRedraw",this.boundFunctions[e]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}_moveUp(){this.body.view.translation.y+=this.options.keyboard.speed.y}_moveDown(){this.body.view.translation.y-=this.options.keyboard.speed.y}_moveLeft(){this.body.view.translation.x+=this.options.keyboard.speed.x}_moveRight(){this.body.view.translation.x-=this.options.keyboard.speed.x}_zoomIn(){const e=this.body.view.scale,t=this.body.view.scale*(1+this.options.keyboard.speed.zoom),i=this.body.view.translation,n=t/e,s=(1-n)*this.canvas.canvasViewCenter.x+i.x*n,o=(1-n)*this.canvas.canvasViewCenter.y+i.y*n;this.body.view.scale=t,this.body.view.translation={x:s,y:o},this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale,pointer:null})}_zoomOut(){const e=this.body.view.scale,t=this.body.view.scale/(1+this.options.keyboard.speed.zoom),i=this.body.view.translation,n=t/e,s=(1-n)*this.canvas.canvasViewCenter.x+i.x*n,o=(1-n)*this.canvas.canvasViewCenter.y+i.y*n;this.body.view.scale=t,this.body.view.translation={x:s,y:o},this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale,pointer:null})}configureKeyboardBindings(){if(this.keycharm!==void 0&&this.keycharm.destroy(),this.options.keyboard.enabled===!0&&(this.options.keyboard.bindToWindow===!0?this.keycharm=tB({container:window,preventDefault:!0}):this.keycharm=tB({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),this.activated===!0)){var e,t,i,n,s,o,a,u,l,c,d,h,f,v,p,b,m,g,w,y,S,O,I,_;z(e=this.keycharm).call(e,"up",()=>{this.bindToRedraw("_moveUp")},"keydown"),z(t=this.keycharm).call(t,"down",()=>{this.bindToRedraw("_moveDown")},"keydown"),z(i=this.keycharm).call(i,"left",()=>{this.bindToRedraw("_moveLeft")},"keydown"),z(n=this.keycharm).call(n,"right",()=>{this.bindToRedraw("_moveRight")},"keydown"),z(s=this.keycharm).call(s,"=",()=>{this.bindToRedraw("_zoomIn")},"keydown"),z(o=this.keycharm).call(o,"num+",()=>{this.bindToRedraw("_zoomIn")},"keydown"),z(a=this.keycharm).call(a,"num-",()=>{this.bindToRedraw("_zoomOut")},"keydown"),z(u=this.keycharm).call(u,"-",()=>{this.bindToRedraw("_zoomOut")},"keydown"),z(l=this.keycharm).call(l,"[",()=>{this.bindToRedraw("_zoomOut")},"keydown"),z(c=this.keycharm).call(c,"]",()=>{this.bindToRedraw("_zoomIn")},"keydown"),z(d=this.keycharm).call(d,"pageup",()=>{this.bindToRedraw("_zoomIn")},"keydown"),z(h=this.keycharm).call(h,"pagedown",()=>{this.bindToRedraw("_zoomOut")},"keydown"),z(f=this.keycharm).call(f,"up",()=>{this.unbindFromRedraw("_moveUp")},"keyup"),z(v=this.keycharm).call(v,"down",()=>{this.unbindFromRedraw("_moveDown")},"keyup"),z(p=this.keycharm).call(p,"left",()=>{this.unbindFromRedraw("_moveLeft")},"keyup"),z(b=this.keycharm).call(b,"right",()=>{this.unbindFromRedraw("_moveRight")},"keyup"),z(m=this.keycharm).call(m,"=",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),z(g=this.keycharm).call(g,"num+",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),z(w=this.keycharm).call(w,"num-",()=>{this.unbindFromRedraw("_zoomOut")},"keyup"),z(y=this.keycharm).call(y,"-",()=>{this.unbindFromRedraw("_zoomOut")},"keyup"),z(S=this.keycharm).call(S,"[",()=>{this.unbindFromRedraw("_zoomOut")},"keyup"),z(O=this.keycharm).call(O,"]",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),z(I=this.keycharm).call(I,"pageup",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),z(_=this.keycharm).call(_,"pagedown",()=>{this.unbindFromRedraw("_zoomOut")},"keyup")}}}class zre{constructor(e,t,i){var n,s,o,a,u,l,c,d,h,f,v,p,b;this.body=e,this.canvas=t,this.selectionHandler=i,this.navigationHandler=new Lre(e,t),this.body.eventListeners.onTap=z(n=this.onTap).call(n,this),this.body.eventListeners.onTouch=z(s=this.onTouch).call(s,this),this.body.eventListeners.onDoubleTap=z(o=this.onDoubleTap).call(o,this),this.body.eventListeners.onHold=z(a=this.onHold).call(a,this),this.body.eventListeners.onDragStart=z(u=this.onDragStart).call(u,this),this.body.eventListeners.onDrag=z(l=this.onDrag).call(l,this),this.body.eventListeners.onDragEnd=z(c=this.onDragEnd).call(c,this),this.body.eventListeners.onMouseWheel=z(d=this.onMouseWheel).call(d,this),this.body.eventListeners.onPinch=z(h=this.onPinch).call(h,this),this.body.eventListeners.onMouseMove=z(f=this.onMouseMove).call(f,this),this.body.eventListeners.onRelease=z(v=this.onRelease).call(v,this),this.body.eventListeners.onContext=z(p=this.onContext).call(p,this),this.touchTime=0,this.drag={},this.pinch={},this.popup=void 0,this.popupObj=void 0,this.popupTimer=void 0,this.body.functions.getPointer=z(b=this.getPointer).call(b,this),this.options={},this.defaultOptions={dragNodes:!0,dragView:!0,hover:!1,keyboard:{enabled:!1,speed:{x:10,y:10,zoom:.02},bindToWindow:!0,autoFocus:!0},navigationButtons:!1,tooltipDelay:300,zoomView:!0,zoomSpeed:1},at(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){this.body.emitter.on("destroy",()=>{clearTimeout(this.popupTimer),delete this.body.functions.getPointer})}setOptions(e){e!==void 0&&(cu(["hideEdgesOnDrag","hideEdgesOnZoom","hideNodesOnDrag","keyboard","multiselect","selectable","selectConnectedEdges"],this.options,e),nr(this.options,e,"keyboard"),e.tooltip&&(at(this.options.tooltip,e.tooltip),e.tooltip.color&&(this.options.tooltip.color=V_(e.tooltip.color)))),this.navigationHandler.setOptions(this.options)}getPointer(e){return{x:e.x-WQ(this.canvas.frame.canvas),y:e.y-UQ(this.canvas.frame.canvas)}}onTouch(e){new Date().valueOf()-this.touchTime>50&&(this.drag.pointer=this.getPointer(e.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=new Date().valueOf())}onTap(e){const t=this.getPointer(e.center),i=this.selectionHandler.options.multiselect&&(e.changedPointers[0].ctrlKey||e.changedPointers[0].metaKey);this.checkSelectionChanges(t,i),this.selectionHandler.commitAndEmit(t,e),this.selectionHandler.generateClickEvent("click",e,t)}onDoubleTap(e){const t=this.getPointer(e.center);this.selectionHandler.generateClickEvent("doubleClick",e,t)}onHold(e){const t=this.getPointer(e.center),i=this.selectionHandler.options.multiselect;this.checkSelectionChanges(t,i),this.selectionHandler.commitAndEmit(t,e),this.selectionHandler.generateClickEvent("click",e,t),this.selectionHandler.generateClickEvent("hold",e,t)}onRelease(e){if(new Date().valueOf()-this.touchTime>10){const t=this.getPointer(e.center);this.selectionHandler.generateClickEvent("release",e,t),this.touchTime=new Date().valueOf()}}onContext(e){const t=this.getPointer({x:e.clientX,y:e.clientY});this.selectionHandler.generateClickEvent("oncontext",e,t)}checkSelectionChanges(e){(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1)===!0?this.selectionHandler.selectAdditionalOnPoint(e):this.selectionHandler.selectOnPoint(e)}_determineDifference(e,t){const i=function(n,s){const o=[];for(let a=0;a{const a=o.node;o.xFixed===!1&&(a.x=this.canvas._XconvertDOMtoCanvas(this.canvas._XconvertCanvasToDOM(o.x)+n)),o.yFixed===!1&&(a.y=this.canvas._YconvertDOMtoCanvas(this.canvas._YconvertCanvasToDOM(o.y)+s))}),this.body.emitter.emit("startSimulation")}else{if(e.srcEvent.shiftKey){if(this.selectionHandler.generateClickEvent("dragging",e,t,void 0,!0),this.drag.pointer===void 0){this.onDragStart(e);return}this.body.selectionBox.position.end={x:this.canvas._XconvertDOMtoCanvas(t.x),y:this.canvas._YconvertDOMtoCanvas(t.y)},this.body.emitter.emit("_requestRedraw")}if(this.options.dragView===!0&&!e.srcEvent.shiftKey){if(this.selectionHandler.generateClickEvent("dragging",e,t,void 0,!0),this.drag.pointer===void 0){this.onDragStart(e);return}const n=t.x-this.drag.pointer.x,s=t.y-this.drag.pointer.y;this.body.view.translation={x:this.drag.translation.x+n,y:this.drag.translation.y+s},this.body.emitter.emit("_requestRedraw")}}}onDragEnd(e){if(this.drag.dragging=!1,this.body.selectionBox.show){var t;this.body.selectionBox.show=!1;const i=this.body.selectionBox.position,n={minX:Math.min(i.start.x,i.end.x),minY:Math.min(i.start.y,i.end.y),maxX:Math.max(i.start.x,i.end.x),maxY:Math.max(i.start.y,i.end.y)},s=Ut(t=this.body.nodeIndices).call(t,a=>{const u=this.body.nodes[a];return u.x>=n.minX&&u.x<=n.maxX&&u.y>=n.minY&&u.y<=n.maxY});Le(s).call(s,a=>this.selectionHandler.selectObject(this.body.nodes[a]));const o=this.getPointer(e.center);this.selectionHandler.commitAndEmit(o,e),this.selectionHandler.generateClickEvent("dragEnd",e,this.getPointer(e.center),void 0,!0),this.body.emitter.emit("_requestRedraw")}else{const i=this.drag.selection;i&&i.length?(Le(i).call(i,function(n){n.node.options.fixed.x=n.xFixed,n.node.options.fixed.y=n.yFixed}),this.selectionHandler.generateClickEvent("dragEnd",e,this.getPointer(e.center)),this.body.emitter.emit("startSimulation")):(this.selectionHandler.generateClickEvent("dragEnd",e,this.getPointer(e.center),void 0,!0),this.body.emitter.emit("_requestRedraw"))}}onPinch(e){const t=this.getPointer(e.center);this.drag.pinched=!0,this.pinch.scale===void 0&&(this.pinch.scale=1);const i=this.pinch.scale*e.scale;this.zoom(i,t)}zoom(e,t){if(this.options.zoomView===!0){const i=this.body.view.scale;e<1e-5&&(e=1e-5),e>10&&(e=10);let n;this.drag!==void 0&&this.drag.dragging===!0&&(n=this.canvas.DOMtoCanvas(this.drag.pointer));const s=this.body.view.translation,o=e/i,a=(1-o)*t.x+s.x*o,u=(1-o)*t.y+s.y*o;if(this.body.view.scale=e,this.body.view.translation={x:a,y:u},n!=null){const l=this.canvas.canvasToDOM(n);this.drag.pointer.x=l.x,this.drag.pointer.y=l.y}this.body.emitter.emit("_requestRedraw"),ithis._checkShowPopup(t),this.options.tooltipDelay))),this.options.hover===!0&&this.selectionHandler.hoverObject(e,t)}_checkShowPopup(e){const t=this.canvas._XconvertDOMtoCanvas(e.x),i=this.canvas._YconvertDOMtoCanvas(e.y),n={left:t,top:i,right:t,bottom:i},s=this.popupObj===void 0?void 0:this.popupObj.id;let o=!1,a="node";if(this.popupObj===void 0){const u=this.body.nodeIndices,l=this.body.nodes;let c;const d=[];for(let h=0;h0&&(this.popupObj=l[d[d.length-1]],o=!0)}if(this.popupObj===void 0&&o===!1){const u=this.body.edgeIndices,l=this.body.edges;let c;const d=[];for(let h=0;h0&&(this.popupObj=l[d[d.length-1]],a="edge")}this.popupObj!==void 0?this.popupObj.id!==s&&(this.popup===void 0&&(this.popup=new rZ(this.canvas.frame)),this.popup.popupTargetType=a,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(e.x+3,e.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show(),this.body.emitter.emit("showPopup",this.popupObj.id)):this.popup!==void 0&&(this.popup.hide(),this.body.emitter.emit("hidePopup"))}_checkHidePopup(e){const t=this.selectionHandler._pointerToPositionObject(e);let i=!1;if(this.popup.popupTargetType==="node"){if(this.body.nodes[this.popup.popupTargetId]!==void 0&&(i=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(t),i===!0)){const n=this.selectionHandler.getNodeAt(e);i=n===void 0?!1:n.id===this.popup.popupTargetId}}else this.selectionHandler.getNodeAt(e)===void 0&&this.body.edges[this.popup.popupTargetId]!==void 0&&(i=this.body.edges[this.popup.popupTargetId].isOverlappingWith(t));i===!1&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}var rB={},iB={},nB;function Hre(){if(nB)return iB;nB=1;var r=_0(),e=I5();return r("Set",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),iB}var sB;function Wre(){return sB||(sB=1,Hre()),rB}var oB={},R1,aB;function Nn(){if(aB)return R1;aB=1;var r=Ns(),e=TypeError;return R1=function(t){if(typeof t=="object"&&"size"in t&&"has"in t&&"add"in t&&"delete"in t&&"keys"in t)return t;throw new e(r(t)+" is not a set")},R1}var C1,uB;function Fn(){if(uB)return C1;uB=1;var r=rr(),e=T5(),t=r("Set"),i=t.prototype;return C1={Set:t,add:e("add",1),has:e("has",1),remove:e("delete",1),proto:i},C1}var x1,lB;function kn(){if(lB)return x1;lB=1;var r=Xt();return x1=function(e,t,i){for(var n=i?e:e.iterator,s=e.next,o,a;!(o=r(s,n)).done;)if(a=t(o.value),a!==void 0)return a},x1}var q1,cB;function Oa(){if(cB)return q1;cB=1;var r=kn();return q1=function(e,t,i){return i?r(e.keys(),t,!0):e.forEach(t)},q1}var D1,dB;function $0(){if(dB)return D1;dB=1;var r=Fn(),e=Oa(),t=r.Set,i=r.add;return D1=function(n){var s=new t;return e(n,function(o){i(s,o)}),s},D1}var A1,hB;function Ia(){return hB||(hB=1,A1=function(r){return r.size}),A1}var M1,fB;function Ure(){return fB||(fB=1,M1=function(r){return{iterator:r,next:r.next,done:!1}}),M1}var N1,vB;function Bn(){if(vB)return N1;vB=1;var r=di(),e=zr(),t=Xt(),i=js(),n=Ure(),s="Invalid size",o=RangeError,a=TypeError,u=Math.max,l=function(c,d){this.set=c,this.size=u(d,0),this.has=r(c.has),this.keys=r(c.keys)};return l.prototype={getIterator:function(){return n(e(t(this.keys,this.set)))},includes:function(c){return t(this.has,this.set,c)}},N1=function(c){e(c);var d=+c.size;if(d!==d)throw new a(s);var h=i(d);if(h<0)throw new o(s);return new l(c,h)},N1}var F1,pB;function Vre(){if(pB)return F1;pB=1;var r=Nn(),e=Fn(),t=$0(),i=Ia(),n=Bn(),s=Oa(),o=kn(),a=e.has,u=e.remove;return F1=function(c){var d=r(this),h=n(c),f=t(d);return i(d)<=h.size?s(d,function(v){h.includes(v)&&u(f,v)}):o(h.getIterator(),function(v){a(f,v)&&u(f,v)}),f},F1}var k1,gB;function jn(){return gB||(gB=1,k1=function(){return!1}),k1}var mB;function Kre(){if(mB)return oB;mB=1;var r=ce(),e=Vre(),t=$e(),i=jn(),n=!i("difference",function(o){return o.size===0}),s=n||t(function(){var o={size:1,has:function(){return!0},keys:function(){var u=0;return{next:function(){var l=u++>1;return a.has(1)&&a.clear(),{done:l,value:2}}}}},a=new Set([1,2,3,4]);return a.difference(o).size!==3});return r({target:"Set",proto:!0,real:!0,forced:s},{difference:e}),oB}var yB={},B1,bB;function Gre(){if(bB)return B1;bB=1;var r=Nn(),e=Fn(),t=Ia(),i=Bn(),n=Oa(),s=kn(),o=e.Set,a=e.add,u=e.has;return B1=function(c){var d=r(this),h=i(c),f=new o;return t(d)>h.size?s(h.getIterator(),function(v){u(d,v)&&a(f,v)}):n(d,function(v){h.includes(v)&&a(f,v)}),f},B1}var _B;function Yre(){if(_B)return yB;_B=1;var r=ce(),e=$e(),t=Gre(),i=jn(),n=!i("intersection",function(s){return s.size===2&&s.has(1)&&s.has(2)})||e(function(){return String(Array.from(new Set([1,2,3]).intersection(new Set([3,2]))))!=="3,2"});return r({target:"Set",proto:!0,real:!0,forced:n},{intersection:t}),yB}var wB={},j1,EB;function Xre(){if(EB)return j1;EB=1;var r=Nn(),e=Fn().has,t=Ia(),i=Bn(),n=Oa(),s=kn(),o=y0();return j1=function(u){var l=r(this),c=i(u);if(t(l)<=c.size)return n(l,function(h){if(c.includes(h))return!1},!0)!==!1;var d=c.getIterator();return s(d,function(h){if(e(l,h))return o(d,"normal",!1)})!==!1},j1}var SB;function Jre(){if(SB)return wB;SB=1;var r=ce(),e=Xre(),t=jn(),i=!t("isDisjointFrom",function(n){return!n});return r({target:"Set",proto:!0,real:!0,forced:i},{isDisjointFrom:e}),wB}var OB={},L1,IB;function Qre(){if(IB)return L1;IB=1;var r=Nn(),e=Ia(),t=Oa(),i=Bn();return L1=function(s){var o=r(this),a=i(s);return e(o)>a.size?!1:t(o,function(u){if(!a.includes(u))return!1},!0)!==!1},L1}var TB;function Zre(){if(TB)return OB;TB=1;var r=ce(),e=Qre(),t=jn(),i=!t("isSubsetOf",function(n){return n});return r({target:"Set",proto:!0,real:!0,forced:i},{isSubsetOf:e}),OB}var $B={},z1,PB;function eie(){if(PB)return z1;PB=1;var r=Nn(),e=Fn().has,t=Ia(),i=Bn(),n=kn(),s=y0();return z1=function(a){var u=r(this),l=i(a);if(t(u)0&&arguments[0]!==void 0?arguments[0]:()=>{};Eo(this,Yi,new YB),Eo(this,Xi,new YB),Eo(this,Z1,void 0),Q_(Z1,this,e)}get sizeNodes(){return We(Yi,this).size}get sizeEdges(){return We(Xi,this).size}getNodes(){return We(Yi,this).getSelection()}getEdges(){return We(Xi,this).getSelection()}addNodes(){We(Yi,this).add(...arguments)}addEdges(){We(Xi,this).add(...arguments)}deleteNodes(e){We(Yi,this).delete(e)}deleteEdges(e){We(Xi,this).delete(e)}clear(){We(Yi,this).clear(),We(Xi,this).clear()}commit(){const e={nodes:We(Yi,this).commit(),edges:We(Xi,this).commit()};for(var t=arguments.length,i=new Array(t),n=0;n{this.updateSelection()})}setOptions(e){e!==void 0&&Gs(["multiselect","hoverConnectedEdges","selectable","selectConnectedEdges"],this.options,e)}selectOnPoint(e){let t=!1;if(this.options.selectable===!0){const i=this.getNodeAt(e)||this.getEdgeAt(e);this.unselectAll(),i!==void 0&&(t=this.selectObject(i)),this.body.emitter.emit("_requestRedraw")}return t}selectAdditionalOnPoint(e){let t=!1;if(this.options.selectable===!0){const i=this.getNodeAt(e)||this.getEdgeAt(e);i!==void 0&&(t=!0,i.isSelected()===!0?this.deselectObject(i):this.selectObject(i),this.body.emitter.emit("_requestRedraw"))}return t}_initBaseEvent(e,t){const i={};return i.pointer={DOM:{x:t.x,y:t.y},canvas:this.canvas.DOMtoCanvas(t)},i.event=e,i}generateClickEvent(e,t,i,n){let s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;const o=this._initBaseEvent(t,i);if(s===!0)o.nodes=[],o.edges=[];else{const a=this.getSelection();o.nodes=a.nodes,o.edges=a.edges}n!==void 0&&(o.previousSelection=n),e=="click"&&(o.items=this.getClickedItems(i)),t.controlEdge!==void 0&&(o.controlEdge=t.controlEdge),this.body.emitter.emit(e,o)}selectObject(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.options.selectConnectedEdges;return e!==void 0?(e instanceof Ke?(t===!0&&this._selectionAccumulator.addEdges(...e.edges),this._selectionAccumulator.addNodes(e)):this._selectionAccumulator.addEdges(e),!0):!1}deselectObject(e){e.isSelected()===!0&&(e.selected=!1,this._removeFromSelection(e))}_getAllNodesOverlappingWith(e){const t=[],i=this.body.nodes;for(let n=0;n1&&arguments[1]!==void 0?arguments[1]:!0;const i=this._pointerToPositionObject(e),n=this._getAllNodesOverlappingWith(i);if(n.length>0)return t===!0?this.body.nodes[n[n.length-1]]:n[n.length-1]}_getEdgesOverlappingWith(e,t){const i=this.body.edges;for(let n=0;n1&&arguments[1]!==void 0?arguments[1]:!0;const i=this.canvas.DOMtoCanvas(e);let n=10,s=null;const o=this.body.edges;for(let a=0;a0&&(this.generateClickEvent("deselectEdge",t,e,s),i=!0),n.nodes.deleted.length>0&&(this.generateClickEvent("deselectNode",t,e,s),i=!0),n.nodes.added.length>0&&(this.generateClickEvent("selectNode",t,e),i=!0),n.edges.added.length>0&&(this.generateClickEvent("selectEdge",t,e),i=!0),i===!0&&this.generateClickEvent("select",t,e)}getSelection(){return{nodes:this.getSelectedNodeIds(),edges:this.getSelectedEdgeIds()}}getSelectedNodes(){return this._selectionAccumulator.getNodes()}getSelectedEdges(){return this._selectionAccumulator.getEdges()}getSelectedNodeIds(){var e;return ms(e=this._selectionAccumulator.getNodes()).call(e,t=>t.id)}getSelectedEdgeIds(){var e;return ms(e=this._selectionAccumulator.getEdges()).call(e,t=>t.id)}setSelection(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!e||!e.nodes&&!e.edges)throw new TypeError("Selection must be an object with nodes and/or edges properties");if((t.unselectAll||t.unselectAll===void 0)&&this.unselectAll(),e.nodes)for(const i of e.nodes){const n=this.body.nodes[i];if(!n)throw new RangeError('Node with id "'+i+'" not found');this.selectObject(n,t.highlightEdges)}if(e.edges)for(const i of e.edges){const n=this.body.edges[i];if(!n)throw new RangeError('Edge with id "'+i+'" not found');this.selectObject(n)}this.body.emitter.emit("_requestRedraw"),this._selectionAccumulator.commit()}selectNodes(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!e||e.length===void 0)throw"Selection must be an array with ids";this.setSelection({nodes:e},{highlightEdges:t})}selectEdges(e){if(!e||e.length===void 0)throw"Selection must be an array with ids";this.setSelection({edges:e})}updateSelection(){for(const e in this._selectionAccumulator.getNodes())Object.prototype.hasOwnProperty.call(this.body.nodes,e.id)||this._selectionAccumulator.deleteNodes(e);for(const e in this._selectionAccumulator.getEdges())Object.prototype.hasOwnProperty.call(this.body.edges,e.id)||this._selectionAccumulator.deleteEdges(e)}getClickedItems(e){const t=this.canvas.DOMtoCanvas(e),i=[],n=this.body.nodeIndices,s=this.body.nodes;for(let u=n.length-1;u>=0;u--){const c=s[n[u]].getItemsOnPoint(t);i.push.apply(i,c)}const o=this.body.edgeIndices,a=this.body.edges;for(let u=o.length-1;u>=0;u--){const c=a[o[u]].getItemsOnPoint(t);i.push.apply(i,c)}return i}}var XB={},e_,JB;function _ie(){if(JB)return e_;JB=1;var r=Ls(),e=Math.floor,t=function(i,n){var s=i.length;if(s<8)for(var o=1,a,u;o0;)i[u]=i[--u];u!==o++&&(i[u]=a)}else for(var l=e(s/2),c=t(r(i,0,l),n),d=t(r(i,l),n),h=c.length,f=d.length,v=0,p=0;v3)){if(d)return!0;if(f)return f<603;var I="",_,E,T,R;for(_=65;_<76;_++){switch(E=String.fromCharCode(_),_){case 66:case 69:case 70:case 72:T=3;break;case 68:case 71:T=4;break;default:T=2}for(R=0;R<47;R++)v.push({k:E+R,v:T})}for(v.sort(function(x,C){return C.v-x.v}),R=0;Ro(E)?1:-1}};return r({target:"Array",proto:!0,forced:S},{sort:function(_){_!==void 0&&t(_);var E=i(this);if(y)return _===void 0?p(E):p(E,_);var T=[],R=n(E),x,C;for(C=0;C=0:v>p;p+=b)p in f&&(d=l(d,f[p],p,h));return d}};return u_={left:o(!1),right:o(!0)},u_}var l_,uj;function xie(){if(uj)return l_;uj=1;var r=k3();return l_=r==="NODE",l_}var lj;function qie(){if(lj)return oj;lj=1;var r=ce(),e=Cie().left,t=Vs(),i=ca(),n=xie(),s=!n&&i>79&&i<83,o=s||!t("reduce");return r({target:"Array",proto:!0,forced:o},{reduce:function(u){var l=arguments.length;return e(this,u,l,l>1?arguments[1]:void 0)}}),oj}var c_,cj;function Die(){if(cj)return c_;cj=1,qie();var r=Pt();return c_=r("Array","reduce"),c_}var d_,dj;function Aie(){if(dj)return d_;dj=1;var r=ht(),e=Die(),t=Array.prototype;return d_=function(i){var n=i.reduce;return i===t||r(t,i)&&n===t.reduce?e:n},d_}var h_,hj;function Mie(){if(hj)return h_;hj=1;var r=Aie();return h_=r,h_}var f_,fj;function Nie(){return fj||(fj=1,f_=Mie()),f_}var Fie=Nie(),B5=pe(Fie);class j5{abstract(){throw new Error("Can't instantiate abstract class!")}fake_use(){}curveType(){return this.abstract()}getPosition(e){return this.fake_use(e),this.abstract()}setPosition(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;this.fake_use(e,t,i),this.abstract()}getTreeSize(e){return this.fake_use(e),this.abstract()}sort(e){this.fake_use(e),this.abstract()}fix(e,t){this.fake_use(e,t),this.abstract()}shift(e,t){this.fake_use(e,t),this.abstract()}}class kie extends j5{constructor(e){super(),this.layout=e}curveType(){return"horizontal"}getPosition(e){return e.x}setPosition(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;i!==void 0&&this.layout.hierarchical.addToOrdering(e,i),e.x=t}getTreeSize(e){const t=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,e);return{min:t.min_x,max:t.max_x}}sort(e){cs(e).call(e,function(t,i){return t.x-i.x})}fix(e,t){e.y=this.layout.options.hierarchical.levelSeparation*t,e.options.fixed.y=!0}shift(e,t){this.layout.body.nodes[e].x+=t}}class Bie extends j5{constructor(e){super(),this.layout=e}curveType(){return"vertical"}getPosition(e){return e.y}setPosition(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;i!==void 0&&this.layout.hierarchical.addToOrdering(e,i),e.y=t}getTreeSize(e){const t=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,e);return{min:t.min_y,max:t.max_y}}sort(e){cs(e).call(e,function(t,i){return t.y-i.y})}fix(e,t){e.x=this.layout.options.hierarchical.levelSeparation*t,e.options.fixed.x=!0}shift(e,t){this.layout.body.nodes[e].y+=t}}var vj={},pj;function jie(){if(pj)return vj;pj=1;var r=ce(),e=Wi().every,t=Vs(),i=t("every");return r({target:"Array",proto:!0,forced:!i},{every:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),vj}var v_,gj;function Lie(){if(gj)return v_;gj=1,jie();var r=Pt();return v_=r("Array","every"),v_}var p_,mj;function zie(){if(mj)return p_;mj=1;var r=ht(),e=Lie(),t=Array.prototype;return p_=function(i){var n=i.every;return i===t||r(t,i)&&n===t.every?e:n},p_}var g_,yj;function Hie(){if(yj)return g_;yj=1;var r=zie();return g_=r,g_}var m_,bj;function Wie(){return bj||(bj=1,m_=Hie()),m_}var Uie=Wie(),L5=pe(Uie);function Vie(r,e){const t=new wi;return Le(r).call(r,i=>{var n;Le(n=i.edges).call(n,s=>{s.connected&&t.add(s)})}),Le(t).call(t,i=>{const n=i.from.id,s=i.to.id;e[n]==null&&(e[n]=0),(e[s]==null||e[n]>=e[s])&&(e[s]=e[n]+1)}),e}function Kie(r){return z5(e=>{var t,i;return L5(t=Ut(i=e.edges).call(i,n=>r.has(n.toId))).call(t,n=>n.to===e)},(e,t)=>t>e,"from",r)}function Gie(r){return z5(e=>{var t,i;return L5(t=Ut(i=e.edges).call(i,n=>r.has(n.toId))).call(t,n=>n.from===e)},(e,t)=>td+1+h.edges.length,0),a=t+"Id",u=t==="to"?1:-1;for(const[d,h]of i){if(!i.has(d)||!r(h))continue;s[d]=0;const f=[h];let v=0,p;for(;p=f.pop();){var l,c;if(!i.has(d))continue;const b=s[p.id]+u;if(Le(l=Ut(c=p.edges).call(c,m=>m.connected&&m.to!==m.from&&m[t]!==p&&i.has(m.toId)&&i.has(m.fromId))).call(l,m=>{const g=m[a],w=s[g];(w==null||e(b,w))&&(s[g]=b,f.push(m[t]))}),v>o)return Vie(i,s);++v}}return s}class Yie{constructor(){this.childrenReference={},this.parentReference={},this.trees={},this.distributionOrdering={},this.levels={},this.distributionIndex={},this.isTree=!1,this.treeIndex=-1}addRelation(e,t){this.childrenReference[e]===void 0&&(this.childrenReference[e]=[]),this.childrenReference[e].push(t),this.parentReference[t]===void 0&&(this.parentReference[t]=[]),this.parentReference[t].push(e)}checkIfTree(){for(const e in this.parentReference)if(this.parentReference[e].length>1){this.isTree=!1;return}this.isTree=!0}numTrees(){return this.treeIndex+1}setTreeIndex(e,t){t!==void 0&&this.trees[e.id]===void 0&&(this.trees[e.id]=t,this.treeIndex=Math.max(t,this.treeIndex))}ensureLevel(e){this.levels[e]===void 0&&(this.levels[e]=0)}getMaxLevel(e){const t={},i=n=>{if(t[n]!==void 0)return t[n];let s=this.levels[n];if(this.childrenReference[n]){const o=this.childrenReference[n];if(o.length>0)for(let a=0;as-o);for(const s of n)t.set(s,i++);for(const s in this.levels)Object.prototype.hasOwnProperty.call(this.levels,s)&&(this.levels[s]=t.get(this.levels[s]))}getTreeSize(e,t){let i=1e9,n=-1e9,s=1e9,o=-1e9;for(const a in this.trees)if(Object.prototype.hasOwnProperty.call(this.trees,a)&&this.trees[a]===t){const u=e[a];i=Math.min(u.x,i),n=Math.max(u.x,n),s=Math.min(u.y,s),o=Math.max(u.y,o)}return{min_x:i,max_x:n,min_y:s,max_y:o}}hasSameParent(e,t){const i=this.parentReference[e.id],n=this.parentReference[t.id];if(i===void 0||n===void 0)return!1;for(let s=0;s{this.setupHierarchicalLayout()}),this.body.emitter.on("_dataLoaded",()=>{this.layoutNetwork()}),this.body.emitter.on("_resetHierarchicalLayout",()=>{this.setupHierarchicalLayout()}),this.body.emitter.on("_adjustEdgesForHierarchicalLayout",()=>{if(this.options.hierarchical.enabled!==!0)return;const e=this.direction.curveType();this.body.emitter.emit("_forceDisableDynamicCurves",e,!1)})}setOptions(e,t){if(e!==void 0){const i=this.options.hierarchical,n=i.enabled;if(Gs(["randomSeed","improvedLayout","clusterThreshold"],this.options,e),nr(this.options,e,"hierarchical"),e.randomSeed!==void 0&&this._resetRNG(e.randomSeed),i.enabled===!0)return n===!0&&this.body.emitter.emit("refresh",!0),i.direction==="RL"||i.direction==="DU"?i.levelSeparation>0&&(i.levelSeparation*=-1):i.levelSeparation<0&&(i.levelSeparation*=-1),this.setDirectionStrategy(),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptionsForHierarchicalLayout(t);if(n===!0)return this.body.emitter.emit("refresh"),Ue(t,this.optionsBackup)}return t}_resetRNG(e){this.initialRandomSeed=e,this._rng=sl(this.initialRandomSeed)}adaptAllOptionsForHierarchicalLayout(e){if(this.options.hierarchical.enabled===!0){const t=this.optionsBackup.physics;e.physics===void 0||e.physics===!0?(e.physics={enabled:t.enabled===void 0?!0:t.enabled,solver:"hierarchicalRepulsion"},t.enabled=t.enabled===void 0?!0:t.enabled,t.solver=t.solver||"barnesHut"):typeof e.physics=="object"?(t.enabled=e.physics.enabled===void 0?!0:e.physics.enabled,t.solver=e.physics.solver||"barnesHut",e.physics.solver="hierarchicalRepulsion"):e.physics!==!1&&(t.solver="barnesHut",e.physics={solver:"hierarchicalRepulsion"});let i=this.direction.curveType();if(e.edges===void 0)this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},e.edges={smooth:!1};else if(e.edges.smooth===void 0)this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},e.edges.smooth=!1;else if(typeof e.edges.smooth=="boolean")this.optionsBackup.edges={smooth:e.edges.smooth},e.edges.smooth={enabled:e.edges.smooth,type:i};else{const n=e.edges.smooth;n.type!==void 0&&n.type!=="dynamic"&&(i=n.type),this.optionsBackup.edges={smooth:{enabled:n.enabled===void 0?!0:n.enabled,type:n.type===void 0?"dynamic":n.type,roundness:n.roundness===void 0?.5:n.roundness,forceDirection:n.forceDirection===void 0?!1:n.forceDirection}},e.edges.smooth={enabled:n.enabled===void 0?!0:n.enabled,type:i,roundness:n.roundness===void 0?.5:n.roundness,forceDirection:n.forceDirection===void 0?!1:n.forceDirection}}this.body.emitter.emit("_forceDisableDynamicCurves",i)}return e}positionInitially(e){if(this.options.hierarchical.enabled!==!0){this._resetRNG(this.initialRandomSeed);const t=e.length+50;for(let i=0;is){const u=e.length;for(;e.length>s&&n<=10;){n+=1;const l=e.length;n%3===0?this.body.modules.clustering.clusterBridges(o):this.body.modules.clustering.clusterOutliers(o);const c=e.length;if(l==c&&n%3!==0){this._declusterAll(),this.body.emitter.emit("_layoutFailed"),console.info("This network could not be positioned by this version of the improved layout algorithm. Please disable improvedLayout for better performance.");return}}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*u)})}n>10&&console.info("The clustering didn't succeed within the amount of interations allowed, progressing with partial result."),this.body.modules.kamadaKawai.solve(e,this.body.edgeIndices,!0),this._shiftToCenter();const a=70;for(let u=0;u0){let e,t,i=!1,n=!1;this.lastNodeOnLevel={},this.hierarchical=new Yie;for(t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&(e=this.body.nodes[t],e.options.level!==void 0?(i=!0,this.hierarchical.levels[t]=e.options.level):n=!0);if(n===!0&&i===!0)throw new Error("To use the hierarchical layout, nodes require either no predefined levels or levels have to be defined for all nodes.");{if(n===!0){const o=this.options.hierarchical.sortMethod;o==="hubsize"?this._determineLevelsByHubsize():o==="directed"?this._determineLevelsDirected():o==="custom"&&this._determineLevelsCustomCallback()}for(const o in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,o)&&this.hierarchical.ensureLevel(o);const s=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(s),this._condenseHierarchy(),this._shiftToCenter()}}}_condenseHierarchy(){var e=this;let t=!1;const i={},n=()=>{const m=o();let g=0;for(let w=0;w{const w=this.hierarchical.trees;for(const y in w)Object.prototype.hasOwnProperty.call(w,y)&&w[y]===m&&this.direction.shift(y,g)},o=()=>{const m=[];for(let g=0;g{if(!g[m.id]&&(g[m.id]=!0,this.hierarchical.childrenReference[m.id])){const w=this.hierarchical.childrenReference[m.id];if(w.length>0)for(let y=0;y1&&arguments[1]!==void 0?arguments[1]:1e9,w=1e9,y=1e9,S=1e9,O=-1e9;for(const I in m)if(Object.prototype.hasOwnProperty.call(m,I)){const _=e.body.nodes[I],E=e.hierarchical.levels[_.id],T=e.direction.getPosition(_),[R,x]=e._getSpaceAroundNode(_,m);w=Math.min(R,w),y=Math.min(x,y),E<=g&&(S=Math.min(T,S),O=Math.max(T,O))}return[S,O,w,y]},l=(m,g)=>{const w=this.hierarchical.getMaxLevel(m.id),y=this.hierarchical.getMaxLevel(g.id);return Math.min(w,y)},c=(m,g,w)=>{const y=this.hierarchical;for(let S=0;S1)for(let _=0;_2&&arguments[2]!==void 0?arguments[2]:!1;const y=e.direction.getPosition(m),S=e.direction.getPosition(g),O=Math.abs(S-y),I=e.options.hierarchical.nodeSpacing;if(O>I){const _={},E={};a(m,_),a(g,E);const T=l(m,g),R=u(_,T),x=u(E,T),C=R[1],D=x[0],j=x[2];if(Math.abs(C-D)>I){let H=C-D+I;H<-j+I&&(H=-j+I),H<0&&(e._shiftBlock(g.id,H),t=!0,w===!0&&e._centerParent(g))}}},h=(m,g)=>{const w=g.id,y=g.edges,S=this.hierarchical.levels[g.id],O=this.options.hierarchical.levelSeparation*this.options.hierarchical.levelSeparation,I={},_=[];for(let j=0;j{let H=0;for(let Z=0;Z{let H=0;for(let Z=0;Z{let H=this.direction.getPosition(g);const Z={};for(let fe=0;fe{const ee=this.direction.getPosition(g);if(i[g.id]===void 0){const me={};a(g,me),i[g.id]=me}const H=u(i[g.id]),Z=H[2],fe=H[3],we=j-ee;let te=0;we>0?te=Math.min(we,fe-this.options.hierarchical.nodeSpacing):we<0&&(te=-Math.min(-we,Z-this.options.hierarchical.nodeSpacing)),te!=0&&(this._shiftBlock(g.id,te),t=!0)},C=j=>{const ee=this.direction.getPosition(g),[H,Z]=this._getSpaceAroundNode(g),fe=j-ee;let we=ee;fe>0?we=Math.min(ee+(Z-this.options.hierarchical.nodeSpacing),j):fe<0&&(we=Math.max(ee-(H-this.options.hierarchical.nodeSpacing),j)),we!==ee&&(this.direction.setPosition(g,we),t=!0)};let D=R(m,_);x(D),D=R(m,y),C(D)},f=m=>{let g=this.hierarchical.getLevels();g=on(g).call(g);for(let w=0;w{let g=this.hierarchical.getLevels();g=on(g).call(g);for(let w=0;w{for(const m in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,m)&&this._centerParent(this.body.nodes[m])},b=()=>{let m=this.hierarchical.getLevels();m=on(m).call(m);for(let g=0;g0&&Math.abs(d)0&&(l=this.direction.getPosition(n[o-1])+u),this.direction.setPosition(a,l,i),this._validatePositionAndContinue(a,i,l),s++}}}}_placeBranchNodes(e,t){var i;const n=this.hierarchical.childrenReference[e];if(n===void 0)return;const s=[];for(let a=0;at&&this.positionedNodes[u.id]===void 0){const c=this.options.hierarchical.nodeSpacing;let d;a===0?d=this.direction.getPosition(this.body.nodes[e]):d=this.direction.getPosition(s[a-1])+c,this.direction.setPosition(u,d,l),this._validatePositionAndContinue(u,l,d)}else return}const o=this._getCenterPosition(s);this.direction.setPosition(this.body.nodes[e],o,t)}_validatePositionAndContinue(e,t,i){if(this.hierarchical.isTree){if(this.lastNodeOnLevel[t]!==void 0){const n=this.direction.getPosition(this.body.nodes[this.lastNodeOnLevel[t]]);if(i-n{var n;Fe(n=this.body.edgeIndices).call(n,i.id)!==-1&&t.push(i)}),t}_getHubSizes(){const e={},t=this.body.nodeIndices;Ie(t,n=>{const s=this.body.nodes[n],o=this._getActiveEdges(s).length;e[o]=!0});const i=[];return Ie(e,n=>{i.push(Number(n))}),cs(i).call(i,function(n,s){return s-n}),i}_determineLevelsByHubsize(){const e=(i,n)=>{this.hierarchical.levelDownstream(i,n)},t=this._getHubSizes();for(let i=0;i{const o=this.body.nodes[s];n===this._getActiveEdges(o).length&&this._crawlNetwork(e,s)})}}_determineLevelsCustomCallback(){const t=function(n,s,o){},i=(n,s,o)=>{let a=this.hierarchical.levels[n.id];a===void 0&&(a=this.hierarchical.levels[n.id]=1e5);const u=t(kt.cloneOptions(n,"node"),kt.cloneOptions(s,"node"),kt.cloneOptions(o,"edge"));this.hierarchical.levels[s.id]=a+u};this._crawlNetwork(i),this.hierarchical.setMinLevelToZero()}_determineLevelsDirected(){var e;const t=B5(e=this.body.nodeIndices).call(e,(i,n)=>(i.set(n,this.body.nodes[n]),i),new S0);this.options.hierarchical.shakeTowards==="roots"?this.hierarchical.levels=Gie(t):this.hierarchical.levels=Kie(t),this.hierarchical.setMinLevelToZero()}_generateMap(){const e=(t,i)=>{this.hierarchical.levels[i.id]>this.hierarchical.levels[t.id]&&this.hierarchical.addRelation(t.id,i.id)};this._crawlNetwork(e),this.hierarchical.checkIfTree()}_crawlNetwork(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){},t=arguments.length>1?arguments[1]:void 0;const i={},n=(s,o)=>{if(i[s.id]===void 0){this.hierarchical.setTreeIndex(s,o),i[s.id]=!0;let a;const u=this._getActiveEdges(s);for(let l=0;l{if(i[s])return;i[s]=!0,this.direction.shift(s,t);const o=this.hierarchical.childrenReference[s];if(o!==void 0)for(let a=0;a{const u=this.hierarchical.parentReference[a];if(u!==void 0)for(let l=0;l{const u=this.hierarchical.parentReference[a];if(u!==void 0)for(let l=0;l{this._clean()}),this.body.emitter.on("_dataChanged",z(s=this._restore).call(s,this)),this.body.emitter.on("_resetData",z(o=this._restore).call(o,this))}_restore(){this.inMode!==!1&&(this.options.initiallyActive===!0?this.enableEditMode():this.disableEditMode())}setOptions(e,t,i){t!==void 0&&(t.locale!==void 0?this.options.locale=t.locale:this.options.locale=i.locale,t.locales!==void 0?this.options.locales=t.locales:this.options.locales=i.locales),e!==void 0&&(typeof e=="boolean"?this.options.enabled=e:(this.options.enabled=!0,Ue(this.options,e)),this.options.initiallyActive===!0&&(this.editMode=!0),this._setup())}toggleEditMode(){this.editMode===!0?this.disableEditMode():this.enableEditMode()}enableEditMode(){this.editMode=!0,this._clean(),this.guiEnabled===!0&&(this.manipulationDiv.style.display="block",this.closeDiv.style.display="block",this.editModeDiv.style.display="none",this.showManipulatorToolbar())}disableEditMode(){this.editMode=!1,this._clean(),this.guiEnabled===!0&&(this.manipulationDiv.style.display="none",this.closeDiv.style.display="none",this.editModeDiv.style.display="block",this._createEditButton())}showManipulatorToolbar(){if(this._clean(),this.manipulationDOM={},this.guiEnabled===!0){var e,t;this.editMode=!0,this.manipulationDiv.style.display="block",this.closeDiv.style.display="block";const i=this.selectionHandler.getSelectedNodeCount(),n=this.selectionHandler.getSelectedEdgeCount(),s=i+n,o=this.options.locales[this.options.locale];let a=!1;this.options.addNode!==!1&&(this._createAddNodeButton(o),a=!0),this.options.addEdge!==!1&&(a===!0?this._createSeperator(1):a=!0,this._createAddEdgeButton(o)),i===1&&typeof this.options.editNode=="function"?(a===!0?this._createSeperator(2):a=!0,this._createEditNodeButton(o)):n===1&&i===0&&this.options.editEdge!==!1&&(a===!0?this._createSeperator(3):a=!0,this._createEditEdgeButton(o)),s!==0&&(i>0&&this.options.deleteNode!==!1?(a===!0&&this._createSeperator(4),this._createDeleteButton(o)):i===0&&this.options.deleteEdge!==!1&&(a===!0&&this._createSeperator(4),this._createDeleteButton(o))),this._bindElementEvents(this.closeDiv,z(e=this.toggleEditMode).call(e,this)),this._temporaryBindEvent("select",z(t=this.showManipulatorToolbar).call(t,this))}this.body.emitter.emit("_redraw")}addNodeMode(){var e;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addNode",this.guiEnabled===!0){var t;const i=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(i),this._createSeperator(),this._createDescription(i.addDescription||this.options.locales.en.addDescription),this._bindElementEvents(this.closeDiv,z(t=this.toggleEditMode).call(t,this))}this._temporaryBindEvent("click",z(e=this._performAddNode).call(e,this))}editNode(){this.editMode!==!0&&this.enableEditMode(),this._clean();const e=this.selectionHandler.getSelectedNodes()[0];if(e!==void 0)if(this.inMode="editNode",typeof this.options.editNode=="function")if(e.isCluster!==!0){const t=Ue({},e.options,!1);if(t.x=e.x,t.y=e.y,this.options.editNode.length===2)this.options.editNode(t,i=>{i!=null&&this.inMode==="editNode"&&this.body.data.nodes.getDataSet().update(i),this.showManipulatorToolbar()});else throw new Error("The function for edit does not support two arguments (data, callback)")}else alert(this.options.locales[this.options.locale].editClusterError||this.options.locales.en.editClusterError);else throw new Error("No function has been configured to handle the editing of nodes.");else this.showManipulatorToolbar()}addEdgeMode(){var e,t,i,n,s;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addEdge",this.guiEnabled===!0){var o;const a=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(a),this._createSeperator(),this._createDescription(a.edgeDescription||this.options.locales.en.edgeDescription),this._bindElementEvents(this.closeDiv,z(o=this.toggleEditMode).call(o,this))}this._temporaryBindUI("onTouch",z(e=this._handleConnect).call(e,this)),this._temporaryBindUI("onDragEnd",z(t=this._finishConnect).call(t,this)),this._temporaryBindUI("onDrag",z(i=this._dragControlNode).call(i,this)),this._temporaryBindUI("onRelease",z(n=this._finishConnect).call(n,this)),this._temporaryBindUI("onDragStart",z(s=this._dragStartEdge).call(s,this)),this._temporaryBindUI("onHold",()=>{})}editEdgeMode(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="editEdge",typeof this.options.editEdge=="object"&&typeof this.options.editEdge.editWithoutDrag=="function"&&(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],this.edgeBeingEditedId!==void 0)){const o=this.body.edges[this.edgeBeingEditedId];this._performEditEdge(o.from.id,o.to.id);return}if(this.guiEnabled===!0){var e;const o=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(o),this._createSeperator(),this._createDescription(o.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindElementEvents(this.closeDiv,z(e=this.toggleEditMode).call(e,this))}if(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],this.edgeBeingEditedId!==void 0){var t,i,n,s;const o=this.body.edges[this.edgeBeingEditedId],a=this._getNewTargetNode(o.from.x,o.from.y),u=this._getNewTargetNode(o.to.x,o.to.y);this.temporaryIds.nodes.push(a.id),this.temporaryIds.nodes.push(u.id),this.body.nodes[a.id]=a,this.body.nodeIndices.push(a.id),this.body.nodes[u.id]=u,this.body.nodeIndices.push(u.id),this._temporaryBindUI("onTouch",z(t=this._controlNodeTouch).call(t,this)),this._temporaryBindUI("onTap",()=>{}),this._temporaryBindUI("onHold",()=>{}),this._temporaryBindUI("onDragStart",z(i=this._controlNodeDragStart).call(i,this)),this._temporaryBindUI("onDrag",z(n=this._controlNodeDrag).call(n,this)),this._temporaryBindUI("onDragEnd",z(s=this._controlNodeDragEnd).call(s,this)),this._temporaryBindUI("onMouseMove",()=>{}),this._temporaryBindEvent("beforeDrawing",l=>{const c=o.edgeType.findBorderPositions(l);a.selected===!1&&(a.x=c.from.x,a.y=c.from.y),u.selected===!1&&(u.x=c.to.x,u.y=c.to.y)}),this.body.emitter.emit("_redraw")}else this.showManipulatorToolbar()}deleteSelected(){this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="delete";const e=this.selectionHandler.getSelectedNodeIds(),t=this.selectionHandler.getSelectedEdgeIds();let i;if(e.length>0){for(let n=0;n0&&typeof this.options.deleteEdge=="function"&&(i=this.options.deleteEdge);if(typeof i=="function"){const n={nodes:e,edges:t};if(i.length===2)i(n,s=>{s!=null&&this.inMode==="delete"?(this.body.data.edges.getDataSet().remove(s.edges),this.body.data.nodes.getDataSet().remove(s.nodes),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()):(this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar())});else throw new Error("The function for delete does not support two arguments (data, callback)")}else this.body.data.edges.getDataSet().remove(t),this.body.data.nodes.getDataSet().remove(e),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}_setup(){this.options.enabled===!0?(this.guiEnabled=!0,this._createWrappers(),this.editMode===!1?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}_createWrappers(){if(this.manipulationDiv===void 0&&(this.manipulationDiv=document.createElement("div"),this.manipulationDiv.className="vis-manipulation",this.editMode===!0?this.manipulationDiv.style.display="block":this.manipulationDiv.style.display="none",this.canvas.frame.appendChild(this.manipulationDiv)),this.editModeDiv===void 0&&(this.editModeDiv=document.createElement("div"),this.editModeDiv.className="vis-edit-mode",this.editMode===!0?this.editModeDiv.style.display="none":this.editModeDiv.style.display="block",this.canvas.frame.appendChild(this.editModeDiv)),this.closeDiv===void 0){var e,t;this.closeDiv=document.createElement("button"),this.closeDiv.className="vis-close",this.closeDiv.setAttribute("aria-label",(e=(t=this.options.locales[this.options.locale])===null||t===void 0?void 0:t.close)!==null&&e!==void 0?e:this.options.locales.en.close),this.closeDiv.style.display=this.manipulationDiv.style.display,this.canvas.frame.appendChild(this.closeDiv)}}_getNewTargetNode(e,t){const i=Ue({},this.options.controlNodeStyle);i.id="targetNode"+wo(),i.hidden=!1,i.physics=!1,i.x=e,i.y=t;const n=this.body.functions.createNode(i);return n.shape.boundingBox={left:e,right:e,top:t,bottom:t},n}_createEditButton(){var e;this._clean(),this.manipulationDOM={},bi(this.editModeDiv);const t=this.options.locales[this.options.locale],i=this._createButton("editMode","vis-edit vis-edit-mode",t.edit||this.options.locales.en.edit);this.editModeDiv.appendChild(i),this._bindElementEvents(i,z(e=this.toggleEditMode).call(e,this))}_clean(){this.inMode=!1,this.guiEnabled===!0&&(bi(this.editModeDiv),bi(this.manipulationDiv),this._cleanupDOMEventListeners()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}_cleanupDOMEventListeners(){for(const t of ei(e=this._domEventListenerCleanupQueue).call(e,0)){var e;t()}}_removeManipulationDOM(){this._clean(),bi(this.manipulationDiv),bi(this.editModeDiv),bi(this.closeDiv),this.manipulationDiv&&this.canvas.frame.removeChild(this.manipulationDiv),this.editModeDiv&&this.canvas.frame.removeChild(this.editModeDiv),this.closeDiv&&this.canvas.frame.removeChild(this.closeDiv),this.manipulationDiv=void 0,this.editModeDiv=void 0,this.closeDiv=void 0}_createSeperator(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1;this.manipulationDOM["seperatorLineDiv"+e]=document.createElement("div"),this.manipulationDOM["seperatorLineDiv"+e].className="vis-separator-line",this.manipulationDiv.appendChild(this.manipulationDOM["seperatorLineDiv"+e])}_createAddNodeButton(e){var t;const i=this._createButton("addNode","vis-add",e.addNode||this.options.locales.en.addNode);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,z(t=this.addNodeMode).call(t,this))}_createAddEdgeButton(e){var t;const i=this._createButton("addEdge","vis-connect",e.addEdge||this.options.locales.en.addEdge);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,z(t=this.addEdgeMode).call(t,this))}_createEditNodeButton(e){var t;const i=this._createButton("editNode","vis-edit",e.editNode||this.options.locales.en.editNode);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,z(t=this.editNode).call(t,this))}_createEditEdgeButton(e){var t;const i=this._createButton("editEdge","vis-edit",e.editEdge||this.options.locales.en.editEdge);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,z(t=this.editEdgeMode).call(t,this))}_createDeleteButton(e){var t;let i;this.options.rtl?i="vis-delete-rtl":i="vis-delete";const n=this._createButton("delete",i,e.del||this.options.locales.en.del);this.manipulationDiv.appendChild(n),this._bindElementEvents(n,z(t=this.deleteSelected).call(t,this))}_createBackButton(e){var t;const i=this._createButton("back","vis-back",e.back||this.options.locales.en.back);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,z(t=this.showManipulatorToolbar).call(t,this))}_createButton(e,t,i){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"vis-label";return this.manipulationDOM[e+"Div"]=document.createElement("button"),this.manipulationDOM[e+"Div"].className="vis-button "+t,this.manipulationDOM[e+"Label"]=document.createElement("div"),this.manipulationDOM[e+"Label"].className=n,this.manipulationDOM[e+"Label"].innerText=i,this.manipulationDOM[e+"Div"].appendChild(this.manipulationDOM[e+"Label"]),this.manipulationDOM[e+"Div"]}_createDescription(e){this.manipulationDOM.descriptionLabel=document.createElement("div"),this.manipulationDOM.descriptionLabel.className="vis-none",this.manipulationDOM.descriptionLabel.innerText=e,this.manipulationDiv.appendChild(this.manipulationDOM.descriptionLabel)}_temporaryBindEvent(e,t){this.temporaryEventFunctions.push({event:e,boundFunction:t}),this.body.emitter.on(e,t)}_temporaryBindUI(e,t){if(this.body.eventListeners[e]!==void 0)this.temporaryUIFunctions[e]=this.body.eventListeners[e],this.body.eventListeners[e]=t;else throw new Error("This UI function does not exist. Typo? You tried: "+e+" possible are: "+ma(Ze(this.body.eventListeners)))}_unbindTemporaryUIs(){for(const e in this.temporaryUIFunctions)Object.prototype.hasOwnProperty.call(this.temporaryUIFunctions,e)&&(this.body.eventListeners[e]=this.temporaryUIFunctions[e],delete this.temporaryUIFunctions[e]);this.temporaryUIFunctions={}}_unbindTemporaryEvents(){for(let e=0;e{i.destroy()});const n=s=>{let{keyCode:o,key:a}=s;(a==="Enter"||a===" "||o===13||o===32)&&t()};e.addEventListener("keyup",n,!1),this._domEventListenerCleanupQueue.push(()=>{e.removeEventListener("keyup",n,!1)})}_cleanupTemporaryNodesAndEdges(){for(let s=0;s=0;a--)if(s[a]!==this.selectedControlNode.id){o=this.body.nodes[s[a]];break}if(o!==void 0&&this.selectedControlNode!==void 0)if(o.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{const a=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===a.id?this._performEditEdge(o.id,n.to.id):this._performEditEdge(n.from.id,o.id)}else n.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}_handleConnect(e){if(new Date().valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(e.center),this.lastTouch.translation=at({},this.body.view.translation),this.interactionHandler.drag.pointer=this.lastTouch,this.interactionHandler.drag.translation=this.lastTouch.translation;const t=this.lastTouch,i=this.selectionHandler.getNodeAt(t);if(i!==void 0)if(i.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{const n=this._getNewTargetNode(i.x,i.y);this.body.nodes[n.id]=n,this.body.nodeIndices.push(n.id);const s=this.body.functions.createEdge({id:"connectionEdge"+wo(),from:i.id,to:n.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[s.id]=s,this.body.edgeIndices.push(s.id),this.temporaryIds.nodes.push(n.id),this.temporaryIds.edges.push(s.id)}this.touchTime=new Date().valueOf()}}_dragControlNode(e){const t=this.body.functions.getPointer(e.center),i=this.selectionHandler._pointerToPositionObject(t);let n;this.temporaryIds.edges[0]!==void 0&&(n=this.body.edges[this.temporaryIds.edges[0]].fromId);const s=this.selectionHandler._getAllNodesOverlappingWith(i);let o;for(let u=s.length-1;u>=0;u--){var a;if(Fe(a=this.temporaryIds.nodes).call(a,s[u])===-1){o=this.body.nodes[s[u]];break}}if(e.controlEdge={from:n,to:o?o.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragging",e,t),this.temporaryIds.nodes[0]!==void 0){const u=this.body.nodes[this.temporaryIds.nodes[0]];u.x=this.canvas._XconvertDOMtoCanvas(t.x),u.y=this.canvas._YconvertDOMtoCanvas(t.y),this.body.emitter.emit("_redraw")}else this.interactionHandler.onDrag(e)}_finishConnect(e){const t=this.body.functions.getPointer(e.center),i=this.selectionHandler._pointerToPositionObject(t);let n;this.temporaryIds.edges[0]!==void 0&&(n=this.body.edges[this.temporaryIds.edges[0]].fromId);const s=this.selectionHandler._getAllNodesOverlappingWith(i);let o;for(let u=s.length-1;u>=0;u--){var a;if(Fe(a=this.temporaryIds.nodes).call(a,s[u])===-1){o=this.body.nodes[s[u]];break}}this._cleanupTemporaryNodesAndEdges(),o!==void 0&&(o.isCluster===!0?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):this.body.nodes[n]!==void 0&&this.body.nodes[o.id]!==void 0&&this._performAddEdge(n,o.id)),e.controlEdge={from:n,to:o?o.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragEnd",e,t),this.body.emitter.emit("_redraw")}_dragStartEdge(e){const t=this.lastTouch;this.selectionHandler.generateClickEvent("dragStart",e,t,void 0,!0)}_performAddNode(e){const t={id:wo(),x:e.pointer.canvas.x,y:e.pointer.canvas.y,label:"new"};if(typeof this.options.addNode=="function")if(this.options.addNode.length===2)this.options.addNode(t,i=>{i!=null&&this.inMode==="addNode"&&this.body.data.nodes.getDataSet().add(i),this.showManipulatorToolbar()});else throw this.showManipulatorToolbar(),new Error("The function for add does not support two arguments (data,callback)");else this.body.data.nodes.getDataSet().add(t),this.showManipulatorToolbar()}_performAddEdge(e,t){const i={from:e,to:t};if(typeof this.options.addEdge=="function")if(this.options.addEdge.length===2)this.options.addEdge(i,n=>{n!=null&&this.inMode==="addEdge"&&(this.body.data.edges.getDataSet().add(n),this.selectionHandler.unselectAll(),this.showManipulatorToolbar())});else throw new Error("The function for connect does not support two arguments (data,callback)");else this.body.data.edges.getDataSet().add(i),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}_performEditEdge(e,t){const i={id:this.edgeBeingEditedId,from:e,to:t,label:this.body.data.edges.get(this.edgeBeingEditedId).label};let n=this.options.editEdge;if(typeof n=="object"&&(n=n.editWithoutDrag),typeof n=="function")if(n.length===2)n(i,s=>{s==null||this.inMode!=="editEdge"?(this.body.edges[i.id].updateEdgeType(),this.body.emitter.emit("_redraw"),this.showManipulatorToolbar()):(this.body.data.edges.getDataSet().update(s),this.selectionHandler.unselectAll(),this.showManipulatorToolbar())});else throw new Error("The function for edit does not support two arguments (data, callback)");else this.body.data.edges.getDataSet().update(i),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}const G="string",L="boolean",M="number",oo="array",ue="object",H5="dom",Qie="any",y_=["arrow","bar","box","circle","crow","curve","diamond","image","inv_curve","inv_triangle","triangle","vee"],b_={borderWidth:{number:M},borderWidthSelected:{number:M,undefined:"undefined"},brokenImage:{string:G,undefined:"undefined"},chosen:{label:{boolean:L,function:"function"},node:{boolean:L,function:"function"},__type__:{object:ue,boolean:L}},color:{border:{string:G},background:{string:G},highlight:{border:{string:G},background:{string:G},__type__:{object:ue,string:G}},hover:{border:{string:G},background:{string:G},__type__:{object:ue,string:G}},__type__:{object:ue,string:G}},opacity:{number:M,undefined:"undefined"},fixed:{x:{boolean:L},y:{boolean:L},__type__:{object:ue,boolean:L}},font:{align:{string:G},color:{string:G},size:{number:M},face:{string:G},background:{string:G},strokeWidth:{number:M},strokeColor:{string:G},vadjust:{number:M},multi:{boolean:L,string:G},bold:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},boldital:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},ital:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},mono:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},__type__:{object:ue,string:G}},group:{string:G,number:M,undefined:"undefined"},heightConstraint:{minimum:{number:M},valign:{string:G},__type__:{object:ue,boolean:L,number:M}},hidden:{boolean:L},icon:{face:{string:G},code:{string:G},size:{number:M},color:{string:G},weight:{string:G,number:M},__type__:{object:ue}},id:{string:G,number:M},image:{selected:{string:G,undefined:"undefined"},unselected:{string:G,undefined:"undefined"},__type__:{object:ue,string:G}},imagePadding:{top:{number:M},right:{number:M},bottom:{number:M},left:{number:M},__type__:{object:ue,number:M}},label:{string:G,undefined:"undefined"},labelHighlightBold:{boolean:L},level:{number:M,undefined:"undefined"},margin:{top:{number:M},right:{number:M},bottom:{number:M},left:{number:M},__type__:{object:ue,number:M}},mass:{number:M},physics:{boolean:L},scaling:{min:{number:M},max:{number:M},label:{enabled:{boolean:L},min:{number:M},max:{number:M},maxVisible:{number:M},drawThreshold:{number:M},__type__:{object:ue,boolean:L}},customScalingFunction:{function:"function"},__type__:{object:ue}},shadow:{enabled:{boolean:L},color:{string:G},size:{number:M},x:{number:M},y:{number:M},__type__:{object:ue,boolean:L}},shape:{string:["custom","ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon","hexagon"]},ctxRenderer:{function:"function"},shapeProperties:{borderDashes:{boolean:L,array:oo},borderRadius:{number:M},interpolation:{boolean:L},useImageSize:{boolean:L},useBorderWithImage:{boolean:L},coordinateOrigin:{string:["center","top-left"]},__type__:{object:ue}},size:{number:M},title:{string:G,dom:H5,undefined:"undefined"},value:{number:M,undefined:"undefined"},widthConstraint:{minimum:{number:M},maximum:{number:M},__type__:{object:ue,boolean:L,number:M}},x:{number:M},y:{number:M},__type__:{object:ue}},Zie={configure:{enabled:{boolean:L},filter:{boolean:L,string:G,array:oo,function:"function"},container:{dom:H5},showButton:{boolean:L},__type__:{object:ue,boolean:L,string:G,array:oo,function:"function"}},edges:{arrows:{to:{enabled:{boolean:L},scaleFactor:{number:M},type:{string:y_},imageHeight:{number:M},imageWidth:{number:M},src:{string:G},__type__:{object:ue,boolean:L}},middle:{enabled:{boolean:L},scaleFactor:{number:M},type:{string:y_},imageWidth:{number:M},imageHeight:{number:M},src:{string:G},__type__:{object:ue,boolean:L}},from:{enabled:{boolean:L},scaleFactor:{number:M},type:{string:y_},imageWidth:{number:M},imageHeight:{number:M},src:{string:G},__type__:{object:ue,boolean:L}},__type__:{string:["from","to","middle"],object:ue}},endPointOffset:{from:{number:M},to:{number:M},__type__:{object:ue,number:M}},arrowStrikethrough:{boolean:L},background:{enabled:{boolean:L},color:{string:G},size:{number:M},dashes:{boolean:L,array:oo},__type__:{object:ue,boolean:L}},chosen:{label:{boolean:L,function:"function"},edge:{boolean:L,function:"function"},__type__:{object:ue,boolean:L}},color:{color:{string:G},highlight:{string:G},hover:{string:G},inherit:{string:["from","to","both"],boolean:L},opacity:{number:M},__type__:{object:ue,string:G}},dashes:{boolean:L,array:oo},font:{color:{string:G},size:{number:M},face:{string:G},background:{string:G},strokeWidth:{number:M},strokeColor:{string:G},align:{string:["horizontal","top","middle","bottom"]},vadjust:{number:M},multi:{boolean:L,string:G},bold:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},boldital:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},ital:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},mono:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},__type__:{object:ue,string:G}},hidden:{boolean:L},hoverWidth:{function:"function",number:M},label:{string:G,undefined:"undefined"},labelHighlightBold:{boolean:L},length:{number:M,undefined:"undefined"},physics:{boolean:L},scaling:{min:{number:M},max:{number:M},label:{enabled:{boolean:L},min:{number:M},max:{number:M},maxVisible:{number:M},drawThreshold:{number:M},__type__:{object:ue,boolean:L}},customScalingFunction:{function:"function"},__type__:{object:ue}},selectionWidth:{function:"function",number:M},selfReferenceSize:{number:M},selfReference:{size:{number:M},angle:{number:M},renderBehindTheNode:{boolean:L},__type__:{object:ue}},shadow:{enabled:{boolean:L},color:{string:G},size:{number:M},x:{number:M},y:{number:M},__type__:{object:ue,boolean:L}},smooth:{enabled:{boolean:L},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"]},roundness:{number:M},forceDirection:{string:["horizontal","vertical","none"],boolean:L},__type__:{object:ue,boolean:L}},title:{string:G,undefined:"undefined"},width:{number:M},widthConstraint:{maximum:{number:M},__type__:{object:ue,boolean:L,number:M}},value:{number:M,undefined:"undefined"},__type__:{object:ue}},groups:{useDefaultGroups:{boolean:L},__any__:b_,__type__:{object:ue}},interaction:{dragNodes:{boolean:L},dragView:{boolean:L},hideEdgesOnDrag:{boolean:L},hideEdgesOnZoom:{boolean:L},hideNodesOnDrag:{boolean:L},hover:{boolean:L},keyboard:{enabled:{boolean:L},speed:{x:{number:M},y:{number:M},zoom:{number:M},__type__:{object:ue}},bindToWindow:{boolean:L},autoFocus:{boolean:L},__type__:{object:ue,boolean:L}},multiselect:{boolean:L},navigationButtons:{boolean:L},selectable:{boolean:L},selectConnectedEdges:{boolean:L},hoverConnectedEdges:{boolean:L},tooltipDelay:{number:M},zoomView:{boolean:L},zoomSpeed:{number:M},__type__:{object:ue}},layout:{randomSeed:{undefined:"undefined",number:M,string:G},improvedLayout:{boolean:L},clusterThreshold:{number:M},hierarchical:{enabled:{boolean:L},levelSeparation:{number:M},nodeSpacing:{number:M},treeSpacing:{number:M},blockShifting:{boolean:L},edgeMinimization:{boolean:L},parentCentralization:{boolean:L},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},shakeTowards:{string:["leaves","roots"]},__type__:{object:ue,boolean:L}},__type__:{object:ue}},manipulation:{enabled:{boolean:L},initiallyActive:{boolean:L},addNode:{boolean:L,function:"function"},addEdge:{boolean:L,function:"function"},editNode:{function:"function"},editEdge:{editWithoutDrag:{function:"function"},__type__:{object:ue,boolean:L,function:"function"}},deleteNode:{boolean:L,function:"function"},deleteEdge:{boolean:L,function:"function"},controlNodeStyle:b_,__type__:{object:ue,boolean:L}},nodes:b_,physics:{enabled:{boolean:L},barnesHut:{theta:{number:M},gravitationalConstant:{number:M},centralGravity:{number:M},springLength:{number:M},springConstant:{number:M},damping:{number:M},avoidOverlap:{number:M},__type__:{object:ue}},forceAtlas2Based:{theta:{number:M},gravitationalConstant:{number:M},centralGravity:{number:M},springLength:{number:M},springConstant:{number:M},damping:{number:M},avoidOverlap:{number:M},__type__:{object:ue}},repulsion:{centralGravity:{number:M},springLength:{number:M},springConstant:{number:M},nodeDistance:{number:M},damping:{number:M},__type__:{object:ue}},hierarchicalRepulsion:{centralGravity:{number:M},springLength:{number:M},springConstant:{number:M},nodeDistance:{number:M},damping:{number:M},avoidOverlap:{number:M},__type__:{object:ue}},maxVelocity:{number:M},minVelocity:{number:M},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{boolean:L},iterations:{number:M},updateInterval:{number:M},onlyDynamicEdges:{boolean:L},fit:{boolean:L},__type__:{object:ue,boolean:L}},timestep:{number:M},adaptiveTimestep:{boolean:L},wind:{x:{number:M},y:{number:M},__type__:{object:ue}},__type__:{object:ue,boolean:L}},autoResize:{boolean:L},clickToUse:{boolean:L},locale:{string:G},locales:{__any__:{any:Qie},__type__:{object:ue}},height:{string:G},width:{string:G},__type__:{object:ue}},W5={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},opacity:[0,0,1,.1],fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,labelHighlightBold:!0,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown","hexagon"],shapeProperties:{borderDashes:!1,borderRadius:[6,0,20,1],interpolation:!0,useImageSize:!1},size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"},middle:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"},from:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"}},endPointOffset:{from:[0,-10,10,1],to:[0,-10,10,1]},arrowStrikethrough:!0,color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],labelHighlightBold:!0,physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],selfReference:{size:[20,0,200,1],angle:[Math.PI/2,-6*Math.PI,6*Math.PI,Math.PI/8],renderBehindTheNode:!0},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:!0,type:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"],forceDirection:["horizontal","vertical","none"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:!0,edgeMinimization:!0,parentCentralization:!0,direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"],shakeTowards:["leaves","roots"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideEdgesOnZoom:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0,autoFocus:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0,zoomSpeed:[1,.1,2,.1]},manipulation:{enabled:!1,initiallyActive:!1},physics:{enabled:!0,barnesHut:{theta:[.5,.1,1,.05],gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{theta:[.5,.1,1,.05],gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:["barnesHut","forceAtlas2Based","repulsion","hierarchicalRepulsion"],timestep:[.5,.01,1,.01],wind:{x:[0,-10,10,.1],y:[0,-10,10,.1]}}},ene=(r,e,t)=>{var i;return!!(Ti(r).call(r,"physics")&&Ti(i=W5.physics.solver).call(i,e)&&t.physics.solver!==e&&e!=="wind")};class tne{constructor(){}getDistances(e,t,i){const n={},s=e.edges;for(let a=0;a2&&arguments[2]!==void 0?arguments[2]:!1;const n=this.distanceSolver.getDistances(this.body,e,t);this._createL_matrix(n),this._createK_matrix(n),this._createE_matrix();const s=.01,o=1;let a=0;const u=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3)),l=5;let c=1e9,d=0,h=0,f=0,v=0,p=0;for(;c>s&&ao&&pthis.body.emitter.emit("_requestRedraw")),this.groups=new WZ,this.canvas=new kre(this.body),this.selectionHandler=new bie(this.body,this.canvas),this.interactionHandler=new zre(this.body,this.canvas,this.selectionHandler),this.view=new jre(this.body,this.canvas),this.renderer=new Dre(this.body,this.canvas),this.physics=new Ire(this.body),this.layoutEngine=new Xie(this.body),this.clustering=new qre(this.body),this.manipulation=new Jie(this.body,this.canvas,this.selectionHandler,this.interactionHandler),this.nodesHandler=new Zte(this.body,this.images,this.groups,this.layoutEngine),this.edgesHandler=new bre(this.body,this.images,this.groups),this.body.modules.kamadaKawai=new rne(this.body,150,.05),this.body.modules.clustering=this.clustering,this.canvas._create(),this.setOptions(t),this.setData(e)}_3(ae.prototype);ae.prototype.setOptions=function(r){if(r===null&&(r=void 0),r!==void 0){if(iZ.validate(r,Zie)===!0&&console.error("%cErrors have been found in the supplied options object.",p5),Gs(["locale","locales","clickToUse"],this.options,r),r.locale!==void 0&&(r.locale=$Z(r.locales||this.options.locales,r.locale)),r=this.layoutEngine.setOptions(r.layout,r),this.canvas.setOptions(r),this.groups.setOptions(r.groups),this.nodesHandler.setOptions(r.nodes),this.edgesHandler.setOptions(r.edges),this.physics.setOptions(r.physics),this.manipulation.setOptions(r.manipulation,r,this.options),this.interactionHandler.setOptions(r.interaction),this.renderer.setOptions(r.interaction),this.selectionHandler.setOptions(r.interaction),r.groups!==void 0&&this.body.emitter.emit("refreshNodes"),"configure"in r&&(this.configurator||(this.configurator=new tZ(this,this.body.container,W5,this.canvas.pixelRatio,ene)),this.configurator.setOptions(r.configure)),this.configurator&&this.configurator.options.enabled===!0){const i={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};Ue(i.nodes,this.nodesHandler.options),Ue(i.edges,this.edgesHandler.options),Ue(i.layout,this.layoutEngine.options),Ue(i.interaction,this.selectionHandler.options),Ue(i.interaction,this.renderer.options),Ue(i.interaction,this.interactionHandler.options),Ue(i.manipulation,this.manipulation.options),Ue(i.physics,this.physics.options),Ue(i.global,this.canvas.options),Ue(i.global,this.options),this.configurator.setModuleOptions(i)}r.clickToUse!==void 0?r.clickToUse===!0?this.activator===void 0&&(this.activator=new eZ(this.canvas.frame),this.activator.on("change",()=>{this.body.emitter.emit("activate")})):(this.activator!==void 0&&(this.activator.destroy(),delete this.activator),this.body.emitter.emit("activate")):this.body.emitter.emit("activate"),this.canvas.setSize(),this.body.emitter.emit("startSimulation")}};ae.prototype._updateVisibleIndices=function(){const r=this.body.nodes,e=this.body.edges;this.body.nodeIndices=[],this.body.edgeIndices=[];for(const t in r)Object.prototype.hasOwnProperty.call(r,t)&&!this.clustering._isClusteredNode(t)&&r[t].options.hidden===!1&&this.body.nodeIndices.push(r[t].id);for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)){const i=e[t],n=r[i.fromId],s=r[i.toId],o=n!==void 0&&s!==void 0;!this.clustering._isClusteredEdge(t)&&i.options.hidden===!1&&o&&n.options.hidden===!1&&s.options.hidden===!1&&this.body.edgeIndices.push(i.id)}};ae.prototype.bindEventListeners=function(){this.body.emitter.on("_dataChanged",()=>{this.edgesHandler._updateState(),this.body.emitter.emit("_dataUpdated")}),this.body.emitter.on("_dataUpdated",()=>{this.clustering._updateState(),this._updateVisibleIndices(),this._updateValueRange(this.body.nodes),this._updateValueRange(this.body.edges),this.body.emitter.emit("startSimulation"),this.body.emitter.emit("_requestRedraw")})};ae.prototype.setData=function(r){if(this.body.emitter.emit("resetPhysics"),this.body.emitter.emit("_resetData"),this.selectionHandler.unselectAll(),r&&r.dot&&(r.nodes||r.edges))throw new SyntaxError('Data must contain either parameter "dot" or parameter pair "nodes" and "edges", but not both.');if(this.setOptions(r&&r.options),r&&r.dot){console.warn("The dot property has been deprecated. Please use the static convertDot method to convert DOT into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertDot(dotString);");const e=fZ(r.dot);this.setData(e);return}else if(r&&r.gephi){console.warn("The gephi property has been deprecated. Please use the static convertGephi method to convert gephi into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertGephi(gephiJson);");const e=vZ(r.gephi);this.setData(e);return}else this.nodesHandler.setData(r&&r.nodes,!0),this.edgesHandler.setData(r&&r.edges,!0);this.body.emitter.emit("_dataChanged"),this.body.emitter.emit("_dataLoaded"),this.body.emitter.emit("initPhysics")};ae.prototype.destroy=function(){this.body.emitter.emit("destroy"),this.body.emitter.off(),this.off(),delete this.groups,delete this.canvas,delete this.selectionHandler,delete this.interactionHandler,delete this.view,delete this.renderer,delete this.physics,delete this.layoutEngine,delete this.clustering,delete this.manipulation,delete this.nodesHandler,delete this.edgesHandler,delete this.configurator,delete this.images;for(const r in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,r)&&delete this.body.nodes[r];for(const r in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,r)&&delete this.body.edges[r];bi(this.body.container)};ae.prototype._updateValueRange=function(r){let e,t,i,n=0;for(e in r)if(Object.prototype.hasOwnProperty.call(r,e)){const s=r[e].getValue();s!==void 0&&(t=t===void 0?s:Math.min(s,t),i=i===void 0?s:Math.max(s,i),n+=s)}if(t!==void 0&&i!==void 0)for(e in r)Object.prototype.hasOwnProperty.call(r,e)&&r[e].setValueRange(t,i,n)};ae.prototype.isActive=function(){return!this.activator||this.activator.active};ae.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)};ae.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)};ae.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)};ae.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)};ae.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)};ae.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)};ae.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)};ae.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)};ae.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)};ae.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)};ae.prototype.updateClusteredNode=function(){return this.clustering.updateClusteredNode.apply(this.clustering,arguments)};ae.prototype.getClusteredEdges=function(){return this.clustering.getClusteredEdges.apply(this.clustering,arguments)};ae.prototype.getBaseEdge=function(){return this.clustering.getBaseEdge.apply(this.clustering,arguments)};ae.prototype.getBaseEdges=function(){return this.clustering.getBaseEdges.apply(this.clustering,arguments)};ae.prototype.updateEdge=function(){return this.clustering.updateEdge.apply(this.clustering,arguments)};ae.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)};ae.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)};ae.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)};ae.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)};ae.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)};ae.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)};ae.prototype.editNodeMode=function(){return console.warn("Deprecated: Please use editNode instead of editNodeMode."),this.manipulation.editNode.apply(this.manipulation,arguments)};ae.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)};ae.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)};ae.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)};ae.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)};ae.prototype.getPosition=function(){return this.nodesHandler.getPosition.apply(this.nodesHandler,arguments)};ae.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)};ae.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)};ae.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)};ae.prototype.getConnectedNodes=function(r){return this.body.nodes[r]!==void 0?this.nodesHandler.getConnectedNodes.apply(this.nodesHandler,arguments):this.edgesHandler.getConnectedNodes.apply(this.edgesHandler,arguments)};ae.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)};ae.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)};ae.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)};ae.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)};ae.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)};ae.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)};ae.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodeIds.apply(this.selectionHandler,arguments)};ae.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdgeIds.apply(this.selectionHandler,arguments)};ae.prototype.getNodeAt=function(){const r=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);return r!==void 0&&r.id!==void 0?r.id:r};ae.prototype.getEdgeAt=function(){const r=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);return r!==void 0&&r.id!==void 0?r.id:r};ae.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)};ae.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)};ae.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments),this.selectionHandler.commitWithoutEmitting.apply(this.selectionHandler),this.redraw()};ae.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)};ae.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)};ae.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)};ae.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)};ae.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)};ae.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)};ae.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)};ae.prototype.getOptionsFromConfigurator=function(){let r={};return this.configurator&&(r=this.configurator.getOptions.apply(this.configurator)),r};const ine={class:"nodes-container"},nne=["onClick"],sne={class:"edit-node-container"},one=["onClick"],ane=Or({__name:"EditorWindow",setup(r){const e=sr(),t=sr({nodes:[],edges:[]}),i=sr({id:0,label:"",name:"",text:"",applications:[],links:[]});let n={};vw(async()=>{if(!e.value)return;t.value=await IU();const a={nodes:t.value.nodes,edges:t.value.edges},u={interaction:{selectable:!0},nodes:{color:{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#960000",background:"#ff9494"},hover:{border:"#2B7CE9",background:"#D2E5FF"}}}};n=new ae(e.value,a,u),n.on("click",function(l){l.nodes.length>0?s(t.value.nodes[l.nodes[0]]):l.edges.length>0&&console.log("Clicked edge:",l.edges[0])}),s(t.value.nodes[0])});function s(a){console.log("Select node:",a.id),i.value=a;const u=t.value.edges.filter(function(l){return l.from==a.id}).map(function(l){const c=l.to;return t.value.nodes.filter(function(h){return h.id==c})[0]});i.value.links=u,n.selectNodes([i.value.id])}function o(a){return"["+a.label+"] - "+a.name}return(a,u)=>(et(),Ht(pt,null,[yt(ww,null,{default:Eu(()=>u[0]||(u[0]=[ve("div",null," Редактор сценариев ",-1)])),_:1}),ve("div",{ref_key:"network",ref:e,class:"graph-container"},null,512),ve("div",ine,[u[1]||(u[1]=ve("h2",null,"Точки",-1)),(et(!0),Ht(pt,null,co(t.value.nodes,l=>(et(),Ht("div",{key:l.id},[ve("div",{class:yu([[l.id==i.value.id?"selected-node":""],"node-select-button"]),onClick:c=>s(l)},or(o(l)),11,nne)]))),128))]),ve("div",sne,[u[4]||(u[4]=ve("h2",null,"Редактирование точки",-1)),ve("div",null,or(o(i.value)),1),ve("div",null,or(i.value.text),1),ve("div",null,[u[2]||(u[2]=ve("h3",null,"Приложения",-1)),(et(!0),Ht(pt,null,co(i.value.applications,l=>(et(),Ht("div",{key:l.name},or(l.name),1))),128))]),ve("div",null,[u[3]||(u[3]=ve("h3",null,"Ссылки",-1)),(et(!0),Ht(pt,null,co(i.value.links,l=>(et(),Ht("div",{key:l.id},[ve("div",{class:"node-select-button",onClick:c=>s(l)},or(o(l)),9,one)]))),128))])])],64))}}),une=Pu(ane,[["__scopeId","data-v-22fb1d18"]]),lne=Or({__name:"EditorView",setup(r){return(e,t)=>(et(),qi(une))}}),cne=Or({__name:"GamesWindow",setup(r){return(e,t)=>(et(),qi(ww,null,{default:Eu(()=>t[0]||(t[0]=[ve("div",null," Каталог игр ",-1)])),_:1}))}}),dne=Or({__name:"GamesView",setup(r){return(e,t)=>(et(),qi(cne))}}),Z_=fU({history:H4("/"),routes:[{path:"/",name:"home",component:dV},{path:"/editor",name:"editor",component:lne},{path:"/games",name:"games",component:dne}]}),P0=u4(pU);P0.use(h4());P0.use(Z_);P0.mount("#app"); +`),n=i.length;if(t.multi)for(let s=0;s0)for(let a=0;a0)for(let s=0;s/&/.test(n)?(t.replace(t.text,"<","<")||t.replace(t.text,"&","&")||t.add("&"),!0):!1;for(;t.position")||t.parseStartTag("ital","")||t.parseStartTag("mono","")||t.parseEndTag("bold","")||t.parseEndTag("ital","")||t.parseEndTag("mono",""))||i(n)||t.add(n),t.position++}return t.emitBlock(),t.blocks}splitMarkdownBlocks(e){const t=new A2(e);let i=!0;const n=s=>/\\/.test(s)?(t.positionthis.parent.fontOptions.maxWdt}getLongestFit(e){let t="",i=0;for(;i1&&arguments[1]!==void 0?arguments[1]:"normal",i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.parent.getFormattingValues(this.ctx,this.selected,this.hover,t),e=e.replace(/^( +)/g,"$1\r"),e=e.replace(/([^\r][^ ]*)( +)/g,"$1\r$2\r");let n=e.split("\r");for(;n.length>0;){let s=this.getLongestFit(n);if(s===0){const o=n[0],a=this.getLongestFitWord(o);this.lines.newLine(qr(o).call(o,0,a),t),n[0]=qr(o).call(o,a)}else{let o=s;n[s-1]===" "?s--:n[o]===" "&&o++;const a=qr(n).call(n,0,s).join("");s==n.length&&i?this.lines.append(a,t):this.lines.newLine(a,t),n=qr(n).call(n,o)}}}}const io=["bold","ital","boldital","mono"];class ls{constructor(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.body=e,this.pointToSelf=!1,this.baseSize=void 0,this.fontOptions={},this.setOptions(t),this.size={top:0,left:0,width:0,height:0,yLine:0},this.isEdgeLabel=i}setOptions(e){if(this.elementOptions=e,this.initFontOptions(e.font),hu(e.label)?this.labelDirty=!0:e.label=void 0,e.font!==void 0&&e.font!==null){if(typeof e.font=="string")this.baseSize=this.fontOptions.size;else if(typeof e.font=="object"){const t=e.font.size;t!==void 0&&(this.baseSize=t)}}}initFontOptions(e){if(Ie(io,t=>{this.fontOptions[t]={}}),ls.parseFontString(this.fontOptions,e)){this.fontOptions.vadjust=0;return}Ie(e,(t,i)=>{t!=null&&typeof t!="object"&&(this.fontOptions[i]=t)})}static parseFontString(e,t){if(!t||typeof t!="string")return!1;const i=t.split(" ");return e.size=+i[0].replace("px",""),e.face=i[1],e.color=i[2],!0}constrain(e){const t={constrainWidth:!1,maxWdt:-1,minWdt:-1,constrainHeight:!1,minHgt:-1,valign:"middle"},i=wi(e,"widthConstraint");if(typeof i=="number")t.maxWdt=Number(i),t.minWdt=Number(i);else if(typeof i=="object"){const s=wi(e,["widthConstraint","maximum"]);typeof s=="number"&&(t.maxWdt=Number(s));const o=wi(e,["widthConstraint","minimum"]);typeof o=="number"&&(t.minWdt=Number(o))}const n=wi(e,"heightConstraint");if(typeof n=="number")t.minHgt=Number(n);else if(typeof n=="object"){const s=wi(e,["heightConstraint","minimum"]);typeof s=="number"&&(t.minHgt=Number(s));const o=wi(e,["heightConstraint","valign"]);typeof o=="string"&&(o==="top"||o==="bottom")&&(t.valign=o)}return t}update(e,t){this.setOptions(e,!0),this.propagateFonts(t),Ue(this.fontOptions,this.constrain(t)),this.fontOptions.chooser=O0("label",t)}adjustSizes(e){const t=e?e.right+e.left:0;this.fontOptions.constrainWidth&&(this.fontOptions.maxWdt-=t,this.fontOptions.minWdt-=t);const i=e?e.top+e.bottom:0;this.fontOptions.constrainHeight&&(this.fontOptions.minHgt-=i)}addFontOptionsToPile(e,t){for(let i=0;i{o!==void 0&&(Object.prototype.hasOwnProperty.call(t,a)||(Fe(io).call(io,a)!==-1?t[a]={}:t[a]=o))})}return t}getFontOption(e,t,i){let n;for(let s=0;s{s[u]=a}),s.size=Number(s.size),s.vadjust=Number(s.vadjust)}}draw(e,t,i,n,s){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:"middle";if(this.elementOptions.label===void 0)return;let a=this.fontOptions.size*this.body.view.scale;this.elementOptions.label&&a=this.elementOptions.scaling.label.maxVisible&&(a=Number(this.elementOptions.scaling.label.maxVisible)/this.body.view.scale),this.calculateLabelSize(e,n,s,t,i,o),this._drawBackground(e),this._drawText(e,t,this.size.yLine,o,a))}_drawBackground(e){if(this.fontOptions.background!==void 0&&this.fontOptions.background!=="none"){e.fillStyle=this.fontOptions.background;const t=this.getSize();e.fillRect(t.left,t.top,t.width,t.height)}}_drawText(e,t,i){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"middle",s=arguments.length>4?arguments[4]:void 0;[t,i]=this._setAlignment(e,t,i,n),e.textAlign="left",t=t-this.size.width/2,this.fontOptions.valign&&this.size.height>this.size.labelHeight&&(this.fontOptions.valign==="top"&&(i-=(this.size.height-this.size.labelHeight)/2),this.fontOptions.valign==="bottom"&&(i+=(this.size.height-this.size.labelHeight)/2));for(let o=0;o0&&(e.lineWidth=c.strokeWidth,e.strokeStyle=h,e.lineJoin="round"),e.fillStyle=d,c.strokeWidth>0&&e.strokeText(c.text,t+u,i+c.vadjust),e.fillText(c.text,t+u,i+c.vadjust),u+=c.width}i+=a.height}}}_setAlignment(e,t,i,n){if(this.isEdgeLabel&&this.fontOptions.align!=="horizontal"&&this.pointToSelf===!1){t=0,i=0;const s=2;this.fontOptions.align==="top"?(e.textBaseline="alphabetic",i-=2*s):this.fontOptions.align==="bottom"?(e.textBaseline="hanging",i+=2*s):e.textBaseline="middle"}else e.textBaseline=n;return[t,i]}_getColor(e,t,i){let n=e||"#000000",s=i||"#ffffff";if(t<=this.elementOptions.scaling.label.drawThreshold){const o=Math.max(0,Math.min(1,1-(this.elementOptions.scaling.label.drawThreshold-t)));n=ar(n,o),s=ar(s,o)}return[n,s]}getTextSize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return this._processLabel(e,t,i),{width:this.size.width,height:this.size.height,lineCount:this.lineCount}}getSize(){let t=this.size.left,i=this.size.top-.5*2;if(this.isEdgeLabel){const s=-this.size.width*.5;switch(this.fontOptions.align){case"middle":t=s,i=-this.size.height*.5;break;case"top":t=s,i=-(this.size.height+2);break;case"bottom":t=s,i=2;break}}return{left:t,top:i,width:this.size.width,height:this.size.height}}calculateLabelSize(e,t,i){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:"middle";this._processLabel(e,t,i),this.size.left=n-this.size.width*.5,this.size.top=s-this.size.height*.5,this.size.yLine=s+(1-this.lineCount)*.5*this.fontOptions.size,o==="hanging"&&(this.size.top+=.5*this.fontOptions.size,this.size.top+=4,this.size.yLine+=4)}getFormattingValues(e,t,i,n){const s=function(u,l,c){return l==="normal"?c==="mod"?"":u[c]:u[l][c]!==void 0?u[l][c]:u[c]},o={color:s(this.fontOptions,n,"color"),size:s(this.fontOptions,n,"size"),face:s(this.fontOptions,n,"face"),mod:s(this.fontOptions,n,"mod"),vadjust:s(this.fontOptions,n,"vadjust"),strokeWidth:this.fontOptions.strokeWidth,strokeColor:this.fontOptions.strokeColor};(t||i)&&(n==="normal"&&this.fontOptions.chooser===!0&&this.elementOptions.labelHighlightBold?o.mod="bold":typeof this.fontOptions.chooser=="function"&&this.fontOptions.chooser(o,this.elementOptions.id,t,i));let a="";return o.mod!==void 0&&o.mod!==""&&(a+=o.mod+" "),a+=o.size+"px "+o.face,e.font=a.replace(/"/g,""),o.font=e.font,o.height=o.size,o}differentState(e,t){return e!==this.selectedState||t!==this.hoverState}_processLabelText(e,t,i,n){return new Fte(e,this,t,i).process(n)}_processLabel(e,t,i){if(this.labelDirty===!1&&!this.differentState(t,i))return;const n=this._processLabelText(e,t,i,this.elementOptions.label);this.fontOptions.minWdt>0&&n.width0&&n.height0&&(this.enableBorderDashes(e,t),e.stroke(),this.disableBorderDashes(e,t)),e.restore()}performFill(e,t){e.save(),e.fillStyle=t.color,this.enableShadow(e,t),ya(e).call(e),this.disableShadow(e,t),e.restore(),this.performStroke(e,t)}_addBoundingBoxMargin(e){this.boundingBox.left-=e,this.boundingBox.top-=e,this.boundingBox.bottom+=e,this.boundingBox.right+=e}_updateBoundingBox(e,t,i,n,s){i!==void 0&&this.resize(i,n,s),this.left=e-this.width/2,this.top=t-this.height/2,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}updateBoundingBox(e,t,i,n,s){this._updateBoundingBox(e,t,i,n,s)}getDimensionsFromLabel(e,t,i){this.textSize=this.labelModule.getTextSize(e,t,i);let n=this.textSize.width,s=this.textSize.height;const o=14;return n===0&&(n=o,s=o),{width:n,height:s}}}let kte=class extends Mn{constructor(e,t,i){super(e,t,i),this._setMargins(i)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.needsRefresh(t,i)){const n=this.getDimensionsFromLabel(e,t,i);this.width=n.width+this.margin.right+this.margin.left,this.height=n.height+this.margin.top+this.margin.bottom,this.radius=this.width/2}}draw(e,t,i,n,s,o){this.resize(e,n,s),this.left=t-this.width/2,this.top=i-this.height/2,this.initContextForDraw(e,o),b3(e,this.left,this.top,this.width,this.height,o.borderRadius),this.performFill(e,o),this.updateBoundingBox(t,i,e,n,s),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,n,s)}updateBoundingBox(e,t,i,n,s){this._updateBoundingBox(e,t,i,n,s);const o=this.options.shapeProperties.borderRadius;this._addBoundingBoxMargin(o)}distanceToBorder(e,t){e&&this.resize(e);const i=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(t)),Math.abs(this.height/2/Math.sin(t)))+i}};class I0 extends Mn{constructor(e,t,i){super(e,t,i),this.labelOffset=0,this.selected=!1}setOptions(e,t,i){this.options=e,t===void 0&&i===void 0||this.setImages(t,i)}setImages(e,t){t&&this.selected?(this.imageObj=t,this.imageObjAlt=e):(this.imageObj=e,this.imageObjAlt=t)}switchImages(e){const t=e&&!this.selected||!e&&this.selected;if(this.selected=e,this.imageObjAlt!==void 0&&t){const i=this.imageObj;this.imageObj=this.imageObjAlt,this.imageObjAlt=i}}_getImagePadding(){const e={top:0,right:0,bottom:0,left:0};if(this.options.imagePadding){const t=this.options.imagePadding;typeof t=="object"?(e.top=t.top,e.right=t.right,e.bottom=t.bottom,e.left=t.left):(e.top=t,e.right=t,e.bottom=t,e.left=t)}return e}_resizeImage(){let e,t;if(this.options.shapeProperties.useImageSize===!1){let i=1,n=1;this.imageObj.width&&this.imageObj.height&&(this.imageObj.width>this.imageObj.height?i=this.imageObj.width/this.imageObj.height:n=this.imageObj.height/this.imageObj.width),e=this.options.size*2*i,t=this.options.size*2*n}else{const i=this._getImagePadding();e=this.imageObj.width+i.left+i.right,t=this.imageObj.height+i.top+i.bottom}this.width=e,this.height=t,this.radius=.5*this.width}_drawRawCircle(e,t,i,n){this.initContextForDraw(e,n),Qw(e,t,i,n.size),this.performFill(e,n)}_drawImageAtPosition(e,t){if(this.imageObj.width!=0){e.globalAlpha=t.opacity!==void 0?t.opacity:1,this.enableShadow(e,t);let i=1;this.options.shapeProperties.interpolation===!0&&(i=this.imageObj.width/this.width/this.body.view.scale);const n=this._getImagePadding(),s=this.left+n.left,o=this.top+n.top,a=this.width-n.left-n.right,u=this.height-n.top-n.bottom;this.imageObj.drawImageAtPosition(e,i,s,o,a,u),this.disableShadow(e,t)}}_drawImageLabel(e,t,i,n,s){let o=0;if(this.height!==void 0){o=this.height*.5;const u=this.labelModule.getTextSize(e,n,s);u.lineCount>=1&&(o+=u.height/2)}const a=i+o;this.options.label&&(this.labelOffset=o),this.labelModule.draw(e,t,a,n,s,"hanging")}}let Bte=class extends I0{constructor(e,t,i){super(e,t,i),this._setMargins(i)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.needsRefresh(t,i)){const n=this.getDimensionsFromLabel(e,t,i),s=Math.max(n.width+this.margin.right+this.margin.left,n.height+this.margin.top+this.margin.bottom);this.options.size=s/2,this.width=s,this.height=s,this.radius=this.width/2}}draw(e,t,i,n,s,o){this.resize(e,n,s),this.left=t-this.width/2,this.top=i-this.height/2,this._drawRawCircle(e,t,i,o),this.updateBoundingBox(t,i),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,i,n,s)}updateBoundingBox(e,t){this.boundingBox.top=t-this.options.size,this.boundingBox.left=e-this.options.size,this.boundingBox.right=e+this.options.size,this.boundingBox.bottom=t+this.options.size}distanceToBorder(e){return e&&this.resize(e),this.width*.5}};class jte extends I0{constructor(e,t,i,n,s){super(e,t,i),this.setImages(n,s)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.imageObj.src===void 0||this.imageObj.width===void 0||this.imageObj.height===void 0){const s=this.options.size*2;this.width=s,this.height=s,this.radius=.5*this.width;return}this.needsRefresh(t,i)&&this._resizeImage()}draw(e,t,i,n,s,o){this.switchImages(n),this.resize();let a=t,u=i;this.options.shapeProperties.coordinateOrigin==="top-left"?(this.left=t,this.top=i,a+=this.width/2,u+=this.height/2):(this.left=t-this.width/2,this.top=i-this.height/2),this._drawRawCircle(e,a,u,o),e.save(),e.clip(),this._drawImageAtPosition(e,o),e.restore(),this._drawImageLabel(e,a,u,n,s),this.updateBoundingBox(t,i)}updateBoundingBox(e,t){this.options.shapeProperties.coordinateOrigin==="top-left"?(this.boundingBox.top=t,this.boundingBox.left=e,this.boundingBox.right=e+this.options.size*2,this.boundingBox.bottom=t+this.options.size*2):(this.boundingBox.top=t-this.options.size,this.boundingBox.left=e-this.options.size,this.boundingBox.right=e+this.options.size,this.boundingBox.bottom=t+this.options.size),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}distanceToBorder(e){return e&&this.resize(e),this.width*.5}}class Vi extends Mn{constructor(e,t,i){super(e,t,i)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{size:this.options.size};if(this.needsRefresh(t,i)){var s,o;this.labelModule.getTextSize(e,t,i);const a=2*n.size;this.width=(s=this.customSizeWidth)!==null&&s!==void 0?s:a,this.height=(o=this.customSizeHeight)!==null&&o!==void 0?o:a,this.radius=.5*this.width}}_drawShape(e,t,i,n,s,o,a,u){return this.resize(e,o,a,u),this.left=n-this.width/2,this.top=s-this.height/2,this.initContextForDraw(e,u),r7(t)(e,n,s,u.size),this.performFill(e,u),this.options.icon!==void 0&&this.options.icon.code!==void 0&&(e.font=(o?"bold ":"")+this.height/2+"px "+(this.options.icon.face||"FontAwesome"),e.fillStyle=this.options.icon.color||"black",e.textAlign="center",e.textBaseline="middle",e.fillText(this.options.icon.code,n,s)),{drawExternalLabel:()=>{if(this.options.label!==void 0){this.labelModule.calculateLabelSize(e,o,a,n,s,"hanging");const l=s+.5*this.height+.5*this.labelModule.size.height;this.labelModule.draw(e,n,l,o,a,"hanging")}this.updateBoundingBox(n,s)}}}updateBoundingBox(e,t){this.boundingBox.top=t-this.options.size,this.boundingBox.left=e-this.options.size,this.boundingBox.right=e+this.options.size,this.boundingBox.bottom=t+this.options.size,this.options.label!==void 0&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height))}}function M2(r,e){var t=Ze(r);if(Mi){var i=Mi(r);e&&(i=Vt(i).call(i,function(n){return Ui(r,n).enumerable})),t.push.apply(t,i)}return t}function Lte(r){for(var e=1;e{e.save(),u(),e.restore()}}return a.nodeDimensions&&(this.customSizeWidth=a.nodeDimensions.width,this.customSizeHeight=a.nodeDimensions.height),a}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}class Hte extends Mn{constructor(e,t,i){super(e,t,i),this._setMargins(i)}resize(e,t,i){if(this.needsRefresh(t,i)){const s=this.getDimensionsFromLabel(e,t,i).width+this.margin.right+this.margin.left;this.width=s,this.height=s,this.radius=this.width/2}}draw(e,t,i,n,s,o){this.resize(e,n,s),this.left=t-this.width/2,this.top=i-this.height/2,this.initContextForDraw(e,o),_3(e,t-this.width/2,i-this.height/2,this.width,this.height),this.performFill(e,o),this.updateBoundingBox(t,i,e,n,s),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,n,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}let Wte=class extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"diamond",4,t,i,n,s,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}};class Ute extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"circle",2,t,i,n,s,o)}distanceToBorder(e){return e&&this.resize(e),this.options.size}}class N2 extends Mn{constructor(e,t,i){super(e,t,i)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.needsRefresh(t,i)){const n=this.getDimensionsFromLabel(e,t,i);this.height=n.height*2,this.width=n.width+n.height,this.radius=.5*this.width}}draw(e,t,i,n,s,o){this.resize(e,n,s),this.left=t-this.width*.5,this.top=i-this.height*.5,this.initContextForDraw(e,o),L_(e,this.left,this.top,this.width,this.height),this.performFill(e,o),this.updateBoundingBox(t,i,e,n,s),this.labelModule.draw(e,t,i,n,s)}distanceToBorder(e,t){e&&this.resize(e);const i=this.width*.5,n=this.height*.5,s=Math.sin(t)*i,o=Math.cos(t)*n;return i*n/Math.sqrt(s*s+o*o)}}class Vte extends Mn{constructor(e,t,i){super(e,t,i),this._setMargins(i)}resize(e,t,i){this.needsRefresh(t,i)&&(this.iconSize={width:Number(this.options.icon.size),height:Number(this.options.icon.size)},this.width=this.iconSize.width+this.margin.right+this.margin.left,this.height=this.iconSize.height+this.margin.top+this.margin.bottom,this.radius=.5*this.width)}draw(e,t,i,n,s,o){return this.resize(e,n,s),this.options.icon.size=this.options.icon.size||50,this.left=t-this.width/2,this.top=i-this.height/2,this._icon(e,t,i,n,s,o),{drawExternalLabel:()=>{this.options.label!==void 0&&this.labelModule.draw(e,this.left+this.iconSize.width/2+this.margin.left,i+this.height/2+5,n),this.updateBoundingBox(t,i)}}}updateBoundingBox(e,t){this.boundingBox.top=t-this.options.icon.size*.5,this.boundingBox.left=e-this.options.icon.size*.5,this.boundingBox.right=e+this.options.icon.size*.5,this.boundingBox.bottom=t+this.options.icon.size*.5,this.options.label!==void 0&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+5))}_icon(e,t,i,n,s,o){const a=Number(this.options.icon.size);this.options.icon.code!==void 0?(e.font=[this.options.icon.weight!=null?this.options.icon.weight:n?"bold":"",(this.options.icon.weight!=null&&n?5:0)+a+"px",this.options.icon.face].join(" "),e.fillStyle=this.options.icon.color||"black",e.textAlign="center",e.textBaseline="middle",this.enableShadow(e,o),e.fillText(this.options.icon.code,t,i),this.disableShadow(e,o)):console.error("When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.")}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}let Kte=class extends I0{constructor(e,t,i,n,s){super(e,t,i),this.setImages(n,s)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.imageObj.src===void 0||this.imageObj.width===void 0||this.imageObj.height===void 0){const s=this.options.size*2;this.width=s,this.height=s;return}this.needsRefresh(t,i)&&this._resizeImage()}draw(e,t,i,n,s,o){e.save(),this.switchImages(n),this.resize();let a=t,u=i;if(this.options.shapeProperties.coordinateOrigin==="top-left"?(this.left=t,this.top=i,a+=this.width/2,u+=this.height/2):(this.left=t-this.width/2,this.top=i-this.height/2),this.options.shapeProperties.useBorderWithImage===!0){const l=this.options.borderWidth,c=this.options.borderWidthSelected||2*this.options.borderWidth,d=(n?c:l)/this.body.view.scale;e.lineWidth=Math.min(this.width,d),e.beginPath();let h=n?this.options.color.highlight.border:s?this.options.color.hover.border:this.options.color.border,f=n?this.options.color.highlight.background:s?this.options.color.hover.background:this.options.color.background;o.opacity!==void 0&&(h=ar(h,o.opacity),f=ar(f,o.opacity)),e.strokeStyle=h,e.fillStyle=f,e.rect(this.left-.5*e.lineWidth,this.top-.5*e.lineWidth,this.width+e.lineWidth,this.height+e.lineWidth),ya(e).call(e),this.performStroke(e,o),e.closePath()}this._drawImageAtPosition(e,o),this._drawImageLabel(e,a,u,n,s),this.updateBoundingBox(t,i),e.restore()}updateBoundingBox(e,t){this.resize(),this.options.shapeProperties.coordinateOrigin==="top-left"?(this.left=e,this.top=t):(this.left=e-this.width/2,this.top=t-this.height/2),this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width,this.options.label!==void 0&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset))}distanceToBorder(e,t){return this._distanceToBorder(e,t)}};class Gte extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"square",2,t,i,n,s,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}class Yte extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"hexagon",4,t,i,n,s,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}class Xte extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"star",4,t,i,n,s,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}class Jte extends Mn{constructor(e,t,i){super(e,t,i),this._setMargins(i)}resize(e,t,i){this.needsRefresh(t,i)&&(this.textSize=this.labelModule.getTextSize(e,t,i),this.width=this.textSize.width+this.margin.right+this.margin.left,this.height=this.textSize.height+this.margin.top+this.margin.bottom,this.radius=.5*this.width)}draw(e,t,i,n,s,o){this.resize(e,n,s),this.left=t-this.width/2,this.top=i-this.height/2,this.enableShadow(e,o),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,n,s),this.disableShadow(e,o),this.updateBoundingBox(t,i,e,n,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}let Qte=class extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"triangle",3,t,i,n,s,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}};class Zte extends Vi{constructor(e,t,i){super(e,t,i)}draw(e,t,i,n,s,o){return this._drawShape(e,"triangleDown",3,t,i,n,s,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}function F2(r,e){var t=Ze(r);if(Mi){var i=Mi(r);e&&(i=Vt(i).call(i,function(n){return Ui(r,n).enumerable})),t.push.apply(t,i)}return t}function k2(r){for(var e=1;et[l]!=null);u.push("font"),cu(u,e,a),e.color=V_(e.color)}static parseOptions(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},s=arguments.length>4?arguments[4]:void 0;if(cu(["color","fixed","shadow"],e,t,i),Ke.checkMass(t),e.opacity!==void 0&&(Ke.checkOpacity(e.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+e.opacity),e.opacity=void 0)),t.opacity!==void 0&&(Ke.checkOpacity(t.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+t.opacity),t.opacity=void 0)),t.shapeProperties&&!Ke.checkCoordinateOrigin(t.shapeProperties.coordinateOrigin)&&console.error("Invalid option for node coordinateOrigin, found: "+t.shapeProperties.coordinateOrigin),sr(e,t,"shadow",n),t.color!==void 0&&t.color!==null){const a=V_(t.color);f5(e.color,a)}else i===!0&&t.color===null&&(e.color=Ri(n.color));t.fixed!==void 0&&t.fixed!==null&&(typeof t.fixed=="boolean"?(e.fixed.x=t.fixed,e.fixed.y=t.fixed):(t.fixed.x!==void 0&&typeof t.fixed.x=="boolean"&&(e.fixed.x=t.fixed.x),t.fixed.y!==void 0&&typeof t.fixed.y=="boolean"&&(e.fixed.y=t.fixed.y))),i===!0&&t.font===null&&(e.font=Ri(n.font)),Ke.updateGroupOptions(e,t,s),t.scaling!==void 0&&sr(e.scaling,t.scaling,"label",n.scaling)}getFormattingValues(){const e={color:this.options.color.background,opacity:this.options.opacity,borderWidth:this.options.borderWidth,borderColor:this.options.color.border,size:this.options.size,borderDashes:this.options.shapeProperties.borderDashes,borderRadius:this.options.shapeProperties.borderRadius,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y};if(this.selected||this.hover?this.chooser===!0?this.selected?(this.options.borderWidthSelected!=null?e.borderWidth=this.options.borderWidthSelected:e.borderWidth*=2,e.color=this.options.color.highlight.background,e.borderColor=this.options.color.highlight.border,e.shadow=this.options.shadow.enabled):this.hover&&(e.color=this.options.color.hover.background,e.borderColor=this.options.color.hover.border,e.shadow=this.options.shadow.enabled):typeof this.chooser=="function"&&(this.chooser(e,this.options.id,this.selected,this.hover),e.shadow===!1&&(e.shadowColor!==this.options.shadow.color||e.shadowSize!==this.options.shadow.size||e.shadowX!==this.options.shadow.x||e.shadowY!==this.options.shadow.y)&&(e.shadow=!0)):e.shadow=this.options.shadow.enabled,this.options.opacity!==void 0){const t=this.options.opacity;e.borderColor=ar(e.borderColor,t),e.color=ar(e.color,t),e.shadowColor=ar(e.shadowColor,t)}return e}updateLabelModule(e){(this.options.label===void 0||this.options.label===null)&&(this.options.label=""),Ke.updateGroupOptions(this.options,k2(k2({},e),{},{color:e&&e.color||this._localColor||void 0}),this.grouplist);const t=this.grouplist.get(this.options.group,!1),i=[e,this.options,t,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,i),this.labelModule.baseSize!==void 0&&(this.baseFontSize=this.labelModule.baseSize)}updateShape(e){if(e===this.options.shape&&this.shape)this.shape.setOptions(this.options,this.imageObj,this.imageObjAlt);else switch(this.options.shape){case"box":this.shape=new kte(this.options,this.body,this.labelModule);break;case"circle":this.shape=new Bte(this.options,this.body,this.labelModule);break;case"circularImage":this.shape=new jte(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case"custom":this.shape=new zte(this.options,this.body,this.labelModule,this.options.ctxRenderer);break;case"database":this.shape=new Hte(this.options,this.body,this.labelModule);break;case"diamond":this.shape=new Wte(this.options,this.body,this.labelModule);break;case"dot":this.shape=new Ute(this.options,this.body,this.labelModule);break;case"ellipse":this.shape=new N2(this.options,this.body,this.labelModule);break;case"icon":this.shape=new Vte(this.options,this.body,this.labelModule);break;case"image":this.shape=new Kte(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case"square":this.shape=new Gte(this.options,this.body,this.labelModule);break;case"hexagon":this.shape=new Yte(this.options,this.body,this.labelModule);break;case"star":this.shape=new Xte(this.options,this.body,this.labelModule);break;case"text":this.shape=new Jte(this.options,this.body,this.labelModule);break;case"triangle":this.shape=new Qte(this.options,this.body,this.labelModule);break;case"triangleDown":this.shape=new Zte(this.options,this.body,this.labelModule);break;default:this.shape=new N2(this.options,this.body,this.labelModule);break}this.needsRefresh()}select(){this.selected=!0,this.needsRefresh()}unselect(){this.selected=!1,this.needsRefresh()}needsRefresh(){this.shape.refreshNeeded=!0}getTitle(){return this.options.title}distanceToBorder(e,t){return this.shape.distanceToBorder(e,t)}isFixed(){return this.options.fixed.x&&this.options.fixed.y}isSelected(){return this.selected}getValue(){return this.options.value}getLabelSize(){return this.labelModule.size()}setValueRange(e,t,i){if(this.options.value!==void 0){const n=this.options.scaling.customScalingFunction(e,t,i,this.options.value),s=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===!0){const o=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+n*o}this.options.size=this.options.scaling.min+n*s}else this.options.size=this.baseSize,this.options.font.size=this.baseFontSize;this.updateLabelModule()}draw(e){const t=this.getFormattingValues();return this.shape.draw(e,this.x,this.y,this.selected,this.hover,t)||{}}updateBoundingBox(e){this.shape.updateBoundingBox(this.x,this.y,e)}resize(e){const t=this.getFormattingValues();this.shape.resize(e,this.selected,this.hover,t)}getItemsOnPoint(e){const t=[];return this.labelModule.visible()&&J_(this.labelModule.getSize(),e)&&t.push({nodeId:this.id,labelId:0}),J_(this.shape.boundingBox,e)&&t.push({nodeId:this.id}),t}isOverlappingWith(e){return this.shape.lefte.left&&this.shape.tope.top}isBoundingBoxOverlappingWith(e){return this.shape.boundingBox.lefte.left&&this.shape.boundingBox.tope.top}static checkMass(e,t){if(e.mass!==void 0&&e.mass<=0){let i="";t!==void 0&&(i=" in node id: "+t),console.error("%cNegative or zero mass disallowed"+i+", setting mass to 1.",m5),e.mass=1}}}class ere{constructor(e,t,i,n){var s;if(this.body=e,this.images=t,this.groups=i,this.layoutEngine=n,this.body.functions.createNode=z(s=this.create).call(s,this),this.nodesListeners={add:(o,a)=>{this.add(a.items)},update:(o,a)=>{this.update(a.items,a.data,a.oldData)},remove:(o,a)=>{this.remove(a.items)}},this.defaultOptions={borderWidth:1,borderWidthSelected:void 0,brokenImage:void 0,color:{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},opacity:void 0,fixed:{x:!1,y:!1},font:{color:"#343434",size:14,face:"arial",background:"none",strokeWidth:0,strokeColor:"#ffffff",align:"center",vadjust:0,multi:!1,bold:{mod:"bold"},boldital:{mod:"bold italic"},ital:{mod:"italic"},mono:{mod:"",size:15,face:"monospace",vadjust:2}},group:void 0,hidden:!1,icon:{face:"FontAwesome",code:void 0,size:50,color:"#2B7CE9"},image:void 0,imagePadding:{top:0,right:0,bottom:0,left:0},label:void 0,labelHighlightBold:!0,level:void 0,margin:{top:5,right:5,bottom:5,left:5},mass:1,physics:!0,scaling:{min:10,max:30,label:{enabled:!1,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function(o,a,u,l){if(a===o)return .5;{const c=1/(a-o);return Math.max(0,(l-o)*c)}}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:10,x:5,y:5},shape:"ellipse",shapeProperties:{borderDashes:!1,borderRadius:6,interpolation:!0,useImageSize:!1,useBorderWithImage:!1,coordinateOrigin:"center"},size:25,title:void 0,value:void 0,x:void 0,y:void 0},this.defaultOptions.mass<=0)throw"Internal error: mass in defaultOptions of NodesHandler may not be zero or negative";this.options=Ri(this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e,t;this.body.emitter.on("refreshNodes",z(e=this.refresh).call(e,this)),this.body.emitter.on("refresh",z(t=this.refresh).call(t,this)),this.body.emitter.on("destroy",()=>{Ie(this.nodesListeners,(i,n)=>{this.body.data.nodes&&this.body.data.nodes.off(n,i)}),delete this.body.functions.createNode,delete this.nodesListeners.add,delete this.nodesListeners.update,delete this.nodesListeners.remove,delete this.nodesListeners})}setOptions(e){if(e!==void 0){if(Ke.parseOptions(this.options,e),e.opacity!==void 0&&(X_(e.opacity)||!tn(e.opacity)||e.opacity<0||e.opacity>1?console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+e.opacity):this.options.opacity=e.opacity),e.shape!==void 0)for(const t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&this.body.nodes[t].updateShape();if(typeof e.font<"u"||typeof e.widthConstraint<"u"||typeof e.heightConstraint<"u")for(const t of Ze(this.body.nodes))this.body.nodes[t].updateLabelModule(),this.body.nodes[t].needsRefresh();if(e.size!==void 0)for(const t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&this.body.nodes[t].needsRefresh();(e.hidden!==void 0||e.physics!==void 0)&&this.body.emitter.emit("_dataChanged")}}setData(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const i=this.body.data.nodes;if(d3("id",e))this.body.data.nodes=e;else if(tt(e))this.body.data.nodes=new su,this.body.data.nodes.add(e);else if(!e)this.body.data.nodes=new su;else throw new TypeError("Array or DataSet expected");if(i&&Ie(this.nodesListeners,function(n,s){i.off(s,n)}),this.body.nodes={},this.body.data.nodes){const n=this;Ie(this.nodesListeners,function(o,a){n.body.data.nodes.on(a,o)});const s=this.body.data.nodes.getIds();this.add(s,!0)}t===!1&&this.body.emitter.emit("_dataChanged")}add(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,i;const n=[];for(let s=0;s1&&arguments[1]!==void 0?arguments[1]:Ke;return new t(e,this.body,this.images,this.groups,this.options,this.defaultOptions)}refresh(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;Ie(this.body.nodes,(t,i)=>{const n=this.body.data.nodes.get(i);n!==void 0&&(e===!0&&t.setOptions({x:null,y:null}),t.setOptions({fixed:!1}),t.setOptions(n))})}getPositions(e){const t={};if(e!==void 0){if(tt(e)===!0){for(let i=0;i{this.body.emitter.emit("startSimulation")},0)):console.error("Node id supplied to moveNode does not exist. Provided: ",e)}}var B2={},j2;function tre(){if(j2)return B2;j2=1;var r=ce(),e=Math.hypot,t=Math.abs,i=Math.sqrt,n=!!e&&e(1/0,NaN)!==1/0;return r({target:"Math",stat:!0,arity:2,forced:n},{hypot:function(o,a){for(var u=0,l=0,c=arguments.length,d=0,h,f;l0?(f=h/d,u+=f*f):u+=h;return d===1/0?1/0:d*i(u)}}),B2}var E1,L2;function rre(){if(L2)return E1;L2=1,tre();var r=Be();return E1=r.Math.hypot,E1}var S1,z2;function ire(){if(z2)return S1;z2=1;var r=rre();return S1=r,S1}var O1,H2;function nre(){return H2||(H2=1,O1=ire()),O1}var sre=nre(),ore=pe(sre);class rt{static transform(e,t){tt(e)||(e=[e]);const i=t.point.x,n=t.point.y,s=t.angle,o=t.length;for(let a=0;a4&&arguments[4]!==void 0?arguments[4]:this.getViaNode();e.strokeStyle=this.getColor(e,t),e.lineWidth=t.width,t.dashes!==!1?this._drawDashedLine(e,t,s):this._drawLine(e,t,s)}_drawLine(e,t,i,n,s){if(this.from!=this.to)this._line(e,t,i,n,s);else{const[o,a,u]=this._getCircleData(e);this._circle(e,t,o,a,u)}}_drawDashedLine(e,t,i,n,s){e.lineCap="round";const o=tt(t.dashes)?t.dashes:[5,5];if(e.setLineDash!==void 0){if(e.save(),e.setLineDash(o),e.lineDashOffset=0,this.from!=this.to)this._line(e,t,i);else{const[a,u,l]=this._getCircleData(e);this._circle(e,t,a,u,l)}e.setLineDash([0]),e.lineDashOffset=0,e.restore()}else{if(this.from!=this.to)w3(e,this.from.x,this.from.y,this.to.x,this.to.y,o);else{const[a,u,l]=this._getCircleData(e);this._circle(e,t,a,u,l)}this.enableShadow(e,t),e.stroke(),this.disableShadow(e,t)}}findBorderPosition(e,t,i){return this.from!=this.to?this._findBorderPosition(e,t,i):this._findBorderPositionCircle(e,t,i)}findBorderPositions(e){if(this.from!=this.to)return{from:this._findBorderPosition(this.from,e),to:this._findBorderPosition(this.to,e)};{var t;const[i,n]=qr(t=this._getCircleData(e)).call(t,0,2);return{from:this._findBorderPositionCircle(this.from,e,{x:i,y:n,low:.25,high:.6,direction:-1}),to:this._findBorderPositionCircle(this.from,e,{x:i,y:n,low:.6,high:.8,direction:1})}}}_getCircleData(e){const t=this.options.selfReference.size;e!==void 0&&this.from.shape.width===void 0&&this.from.shape.resize(e);const i=D5(e,this.options.selfReference.angle,t,this.from);return[i.x,i.y,t]}_pointOnCircle(e,t,i,n){const s=n*2*Math.PI;return{x:e+i*Math.cos(s),y:t-i*Math.sin(s)}}_findBorderPositionCircle(e,t,i){const n=i.x,s=i.y;let o=i.low,a=i.high;const u=i.direction,l=10,c=this.options.selfReference.size,d=.05;let h,f=(o+a)*.5,v=0;this.options.arrowStrikethrough===!0&&(u===-1?v=this.options.endPointOffset.from:u===1&&(v=this.options.endPointOffset.to));let p=0;do{f=(o+a)*.5,h=this._pointOnCircle(n,s,c,f);const b=Math.atan2(e.y-h.y,e.x-h.x),m=e.distanceToBorder(t,b)+v,g=Math.sqrt(Math.pow(h.x-e.x,2)+Math.pow(h.y-e.y,2)),w=m-g;if(Math.abs(w)0?u>0?o=f:a=f:u>0?a=f:o=f,++p}while(o<=a&&p1?c=1:c<0&&(c=0);const d=e+c*a,h=t+c*u,f=d-s,v=h-o;return Math.sqrt(f*f+v*v)}getArrowData(e,t,i,n,s,o){let a,u,l,c,d,h,f;const v=o.width;t==="from"?(l=this.from,c=this.to,d=o.fromArrowScale<0,h=Math.abs(o.fromArrowScale),f=o.fromArrowType):t==="to"?(l=this.to,c=this.from,d=o.toArrowScale<0,h=Math.abs(o.toArrowScale),f=o.toArrowType):(l=this.to,c=this.from,d=o.middleArrowScale<0,h=Math.abs(o.middleArrowScale),f=o.middleArrowType);const p=15*h+3*v;if(l!=c){const w=ore(l.x-c.x,l.y-c.y),y=p/w;if(t!=="middle")if(this.options.smooth.enabled===!0){const S=this._findBorderPosition(l,e,{via:i}),O=this.getPoint(S.t+y*(t==="from"?1:-1),i);a=Math.atan2(S.y-O.y,S.x-O.x),u=S}else a=Math.atan2(l.y-c.y,l.x-c.x),u=this._findBorderPosition(l,e);else{const S=(d?-y:y)/2,O=this.getPoint(.5+S,i),I=this.getPoint(.5-S,i);a=Math.atan2(O.y-I.y,O.x-I.x),u=this.getPoint(.5,i)}}else{const[w,y,S]=this._getCircleData(e);if(t==="from"){const O=this.options.selfReference.angle,I=this.options.selfReference.angle+Math.PI,_=this._findBorderPositionCircle(this.from,e,{x:w,y,low:O,high:I,direction:-1});a=_.t*-2*Math.PI+1.5*Math.PI+.1*Math.PI,u=_}else if(t==="to"){const O=this.options.selfReference.angle,I=this.options.selfReference.angle+Math.PI,_=this._findBorderPositionCircle(this.from,e,{x:w,y,low:O,high:I,direction:1});a=_.t*-2*Math.PI+1.5*Math.PI-1.1*Math.PI,u=_}else{const O=this.options.selfReference.angle/(2*Math.PI);u=this._pointOnCircle(w,y,S,O),a=O*-2*Math.PI+1.5*Math.PI+.1*Math.PI}}const b=u.x-p*.9*Math.cos(a),m=u.y-p*.9*Math.sin(a);return{point:u,core:{x:b,y:m},angle:a,length:p,type:f}}drawArrowHead(e,t,i,n,s){e.strokeStyle=this.getColor(e,t),e.fillStyle=e.strokeStyle,e.lineWidth=t.width,M5.draw(e,s)&&(this.enableShadow(e,t),ya(e).call(e),this.disableShadow(e,t))}enableShadow(e,t){t.shadow===!0&&(e.shadowColor=t.shadowColor,e.shadowBlur=t.shadowSize,e.shadowOffsetX=t.shadowX,e.shadowOffsetY=t.shadowY)}disableShadow(e,t){t.shadow===!0&&(e.shadowColor="rgba(0,0,0,0)",e.shadowBlur=0,e.shadowOffsetX=0,e.shadowOffsetY=0)}drawBackground(e,t){if(t.background!==!1){const i={strokeStyle:e.strokeStyle,lineWidth:e.lineWidth,dashes:e.dashes};e.strokeStyle=t.backgroundColor,e.lineWidth=t.backgroundSize,this.setStrokeDashed(e,t.backgroundDashes),e.stroke(),e.strokeStyle=i.strokeStyle,e.lineWidth=i.lineWidth,e.dashes=i.dashes,this.setStrokeDashed(e,t.dashes)}}setStrokeDashed(e,t){if(t!==!1)if(e.setLineDash!==void 0){const i=tt(t)?t:[5,5];e.setLineDash(i)}else console.warn("setLineDash is not supported in this browser. The dashed stroke cannot be used.");else e.setLineDash!==void 0?e.setLineDash([]):console.warn("setLineDash is not supported in this browser. The dashed stroke cannot be used.")}}function V2(r,e){var t=Ze(r);if(Mi){var i=Mi(r);e&&(i=Vt(i).call(i,function(n){return Ui(r,n).enumerable})),t.push.apply(t,i)}return t}function K2(r){for(var e=1;e2&&arguments[2]!==void 0?arguments[2]:this._getViaCoordinates();const n=10,s=.2;let o=!1,a=1,u=0,l=this.to,c,d,h=this.options.endPointOffset?this.options.endPointOffset.to:0;e.id===this.from.id&&(l=this.from,o=!0,h=this.options.endPointOffset?this.options.endPointOffset.from:0),this.options.arrowStrikethrough===!1&&(h=0);let f=0;do{d=(u+a)*.5,c=this.getPoint(d,i);const v=Math.atan2(l.y-c.y,l.x-c.x),p=l.distanceToBorder(t,v)+h,b=Math.sqrt(Math.pow(c.x-l.x,2)+Math.pow(c.y-l.y,2)),m=p-b;if(Math.abs(m)0&&(l=this._getDistanceToLine(v,p,h,f,s,o),u=l{this.positionBezierNode()},this._body.emitter.on("_repositionBezierNodes",this._boundFunction)}setOptions(e){super.setOptions(e);let t=!1;this.options.physics!==e.physics&&(t=!0),this.options=e,this.id=this.options.id,this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to],this.setupSupportNode(),this.connect(),t===!0&&(this.via.setOptions({physics:this.options.physics}),this.positionBezierNode())}connect(){this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to],this.from===void 0||this.to===void 0||this.options.physics===!1?this.via.setOptions({physics:!1}):this.from.id===this.to.id?this.via.setOptions({physics:!1}):this.via.setOptions({physics:!0})}cleanup(){return this._body.emitter.off("_repositionBezierNodes",this._boundFunction),this.via!==void 0?(delete this._body.nodes[this.via.id],this.via=void 0,!0):!1}setupSupportNode(){if(this.via===void 0){const e="edgeId:"+this.id,t=this._body.functions.createNode({id:e,shape:"circle",physics:!0,hidden:!0});this._body.nodes[e]=t,this.via=t,this.via.parentEdgeId=this.id,this.positionBezierNode()}}positionBezierNode(){this.via!==void 0&&this.from!==void 0&&this.to!==void 0?(this.via.x=.5*(this.from.x+this.to.x),this.via.y=.5*(this.from.y+this.to.y)):this.via!==void 0&&(this.via.x=0,this.via.y=0)}_line(e,t,i){this._bezierCurve(e,t,i)}_getViaCoordinates(){return this.via}getViaNode(){return this.via}getPoint(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.via;if(this.from===this.to){const[i,n,s]=this._getCircleData(),o=2*Math.PI*(1-e);return{x:i+s*Math.sin(o),y:n+s-s*(1-Math.cos(o))}}else return{x:Math.pow(1-e,2)*this.fromPoint.x+2*e*(1-e)*t.x+Math.pow(e,2)*this.toPoint.x,y:Math.pow(1-e,2)*this.fromPoint.y+2*e*(1-e)*t.y+Math.pow(e,2)*this.toPoint.y}}_findBorderPosition(e,t){return this._findBorderPositionBezier(e,t,this.via)}_getDistanceToEdge(e,t,i,n,s,o){return this._getDistanceToBezierEdge(e,t,i,n,s,o,this.via)}}class Y2 extends T0{constructor(e,t,i){super(e,t,i)}_line(e,t,i){this._bezierCurve(e,t,i)}getViaNode(){return this._getViaCoordinates()}_getViaCoordinates(){const e=this.options.smooth.roundness,t=this.options.smooth.type;let i=Math.abs(this.from.x-this.to.x),n=Math.abs(this.from.y-this.to.y);if(t==="discrete"||t==="diagonalCross"){let s,o;i<=n?s=o=e*n:s=o=e*i,this.from.x>this.to.x&&(s=-s),this.from.y>=this.to.y&&(o=-o);let a=this.from.x+s,u=this.from.y+o;return t==="discrete"&&(i<=n?a=ithis.to.x&&(s=-s),this.from.y>=this.to.y&&(o=-o);let a=this.from.x+s,u=this.from.y+o;return i<=n?this.from.x<=this.to.x?a=this.to.xa?this.to.x:a:this.from.y>=this.to.y?u=this.to.y>u?this.to.y:u:u=this.to.y2&&arguments[2]!==void 0?arguments[2]:{};return this._findBorderPositionBezier(e,t,i.via)}_getDistanceToEdge(e,t,i,n,s,o){let a=arguments.length>6&&arguments[6]!==void 0?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge(e,t,i,n,s,o,a)}getPoint(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this._getViaCoordinates();const i=e,n=Math.pow(1-i,2)*this.fromPoint.x+2*i*(1-i)*t.x+Math.pow(i,2)*this.toPoint.x,s=Math.pow(1-i,2)*this.fromPoint.y+2*i*(1-i)*t.y+Math.pow(i,2)*this.toPoint.y;return{x:n,y:s}}}class bre extends T0{constructor(e,t,i){super(e,t,i)}_getDistanceToBezierEdge2(e,t,i,n,s,o,a,u){let l=1e9,c=e,d=t;const h=[0,0,0,0];for(let f=1;f<10;f++){const v=.1*f;h[0]=Math.pow(1-v,3),h[1]=3*v*Math.pow(1-v,2),h[2]=3*Math.pow(v,2)*(1-v),h[3]=Math.pow(v,3);const p=h[0]*e+h[1]*a.x+h[2]*u.x+h[3]*i,b=h[0]*t+h[1]*a.y+h[2]*u.y+h[3]*n;if(f>0){const m=this._getDistanceToLine(c,d,p,b,s,o);l=mMath.abs(t)||this.options.smooth.forceDirection===!0||this.options.smooth.forceDirection==="horizontal")&&this.options.smooth.forceDirection!=="vertical"?(n=this.from.y,o=this.to.y,i=this.from.x-a*e,s=this.to.x+a*e):(n=this.from.y-a*t,o=this.to.y+a*t,i=this.from.x,s=this.to.x),[{x:i,y:n},{x:s,y:o}]}getViaNode(){return this._getViaCoordinates()}_findBorderPosition(e,t){return this._findBorderPositionBezier(e,t)}_getDistanceToEdge(e,t,i,n,s,o){let[a,u]=arguments.length>6&&arguments[6]!==void 0?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge2(e,t,i,n,s,o,a,u)}getPoint(e){let[t,i]=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this._getViaCoordinates();const n=e,s=[Math.pow(1-n,3),3*n*Math.pow(1-n,2),3*Math.pow(n,2)*(1-n),Math.pow(n,3)],o=s[0]*this.fromPoint.x+s[1]*t.x+s[2]*i.x+s[3]*this.toPoint.x,a=s[0]*this.fromPoint.y+s[1]*t.y+s[2]*i.y+s[3]*this.toPoint.y;return{x:o,y:a}}}class J2 extends N5{constructor(e,t,i){super(e,t,i)}_line(e,t){e.beginPath(),e.moveTo(this.fromPoint.x,this.fromPoint.y),e.lineTo(this.toPoint.x,this.toPoint.y),this.enableShadow(e,t),e.stroke(),this.disableShadow(e,t)}getViaNode(){}getPoint(e){return{x:(1-e)*this.fromPoint.x+e*this.toPoint.x,y:(1-e)*this.fromPoint.y+e*this.toPoint.y}}_findBorderPosition(e,t){let i=this.to,n=this.from;e.id===this.from.id&&(i=this.from,n=this.to);const s=Math.atan2(i.y-n.y,i.x-n.x),o=i.x-n.x,a=i.y-n.y,u=Math.sqrt(o*o+a*a),l=e.distanceToBorder(t,s),c=(u-l)/u;return{x:(1-c)*n.x+c*i.x,y:(1-c)*n.y+c*i.y,t:0}}_getDistanceToEdge(e,t,i,n,s,o){return this._getDistanceToLine(e,t,i,n,s,o)}}class Ci{constructor(e,t,i,n,s){if(t===void 0)throw new Error("No body provided");this.options=Ri(n),this.globalOptions=n,this.defaultOptions=s,this.body=t,this.imagelist=i,this.id=void 0,this.fromId=void 0,this.toId=void 0,this.selected=!1,this.hover=!1,this.labelDirty=!0,this.baseWidth=this.options.width,this.baseFontSize=this.options.font.size,this.from=void 0,this.to=void 0,this.edgeType=void 0,this.connected=!1,this.labelModule=new ls(this.body,this.options,!0),this.setOptions(e)}setOptions(e){if(!e)return;let t=typeof e.physics<"u"&&this.options.physics!==e.physics||typeof e.hidden<"u"&&(this.options.hidden||!1)!==(e.hidden||!1)||typeof e.from<"u"&&this.options.from!==e.from||typeof e.to<"u"&&this.options.to!==e.to;Ci.parseOptions(this.options,e,!0,this.globalOptions),e.id!==void 0&&(this.id=e.id),e.from!==void 0&&(this.fromId=e.from),e.to!==void 0&&(this.toId=e.to),e.title!==void 0&&(this.title=e.title),e.value!==void 0&&(e.value=q5(e.value));const i=[e,this.options,this.defaultOptions];return this.chooser=O0("edge",i),this.updateLabelModule(e),t=this.updateEdgeType()||t,this._setInteractionWidths(),this.connect(),t}static parseOptions(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;if(Gs(["endPointOffset","arrowStrikethrough","id","from","hidden","hoverWidth","labelHighlightBold","length","line","opacity","physics","scaling","selectionWidth","selfReferenceSize","selfReference","to","title","value","width","font","chosen","widthConstraint"],e,t,i),t.endPointOffset!==void 0&&t.endPointOffset.from!==void 0&&(tn(t.endPointOffset.from)?e.endPointOffset.from=t.endPointOffset.from:(e.endPointOffset.from=n.endPointOffset.from!==void 0?n.endPointOffset.from:0,console.error("endPointOffset.from is not a valid number"))),t.endPointOffset!==void 0&&t.endPointOffset.to!==void 0&&(tn(t.endPointOffset.to)?e.endPointOffset.to=t.endPointOffset.to:(e.endPointOffset.to=n.endPointOffset.to!==void 0?n.endPointOffset.to:0,console.error("endPointOffset.to is not a valid number"))),hu(t.label)?e.label=t.label:hu(e.label)||(e.label=void 0),sr(e,t,"smooth",n),sr(e,t,"shadow",n),sr(e,t,"background",n),t.dashes!==void 0&&t.dashes!==null?e.dashes=t.dashes:i===!0&&t.dashes===null&&(e.dashes=an(n.dashes)),t.scaling!==void 0&&t.scaling!==null?(t.scaling.min!==void 0&&(e.scaling.min=t.scaling.min),t.scaling.max!==void 0&&(e.scaling.max=t.scaling.max),sr(e.scaling,t.scaling,"label",n.scaling)):i===!0&&t.scaling===null&&(e.scaling=an(n.scaling)),t.arrows!==void 0&&t.arrows!==null)if(typeof t.arrows=="string"){const a=t.arrows.toLowerCase();e.arrows.to.enabled=Fe(a).call(a,"to")!=-1,e.arrows.middle.enabled=Fe(a).call(a,"middle")!=-1,e.arrows.from.enabled=Fe(a).call(a,"from")!=-1}else if(typeof t.arrows=="object")sr(e.arrows,t.arrows,"to",n.arrows),sr(e.arrows,t.arrows,"middle",n.arrows),sr(e.arrows,t.arrows,"from",n.arrows);else throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+ma(t.arrows));else i===!0&&t.arrows===null&&(e.arrows=an(n.arrows));if(t.color!==void 0&&t.color!==null){const a=as(t.color)?{color:t.color,highlight:t.color,hover:t.color,inherit:!1,opacity:1}:t.color,u=e.color;if(s)Ue(u,n.color,!1,i);else for(const l in u)Object.prototype.hasOwnProperty.call(u,l)&&delete u[l];if(as(u))u.color=u,u.highlight=u,u.hover=u,u.inherit=!1,a.opacity===void 0&&(u.opacity=1);else{let l=!1;a.color!==void 0&&(u.color=a.color,l=!0),a.highlight!==void 0&&(u.highlight=a.highlight,l=!0),a.hover!==void 0&&(u.hover=a.hover,l=!0),a.inherit!==void 0&&(u.inherit=a.inherit),a.opacity!==void 0&&(u.opacity=Math.min(1,Math.max(0,a.opacity))),l===!0?u.inherit=!1:u.inherit===void 0&&(u.inherit="from")}}else i===!0&&t.color===null&&(e.color=Ri(n.color));i===!0&&t.font===null&&(e.font=Ri(n.font)),Object.prototype.hasOwnProperty.call(t,"selfReferenceSize")&&(console.warn("The selfReferenceSize property has been deprecated. Please use selfReference property instead. The selfReference can be set like thise selfReference:{size:30, angle:Math.PI / 4}"),e.selfReference.size=t.selfReferenceSize)}getFormattingValues(){const e=this.options.arrows.to===!0||this.options.arrows.to.enabled===!0,t=this.options.arrows.from===!0||this.options.arrows.from.enabled===!0,i=this.options.arrows.middle===!0||this.options.arrows.middle.enabled===!0,n=this.options.color.inherit,s={toArrow:e,toArrowScale:this.options.arrows.to.scaleFactor,toArrowType:this.options.arrows.to.type,toArrowSrc:this.options.arrows.to.src,toArrowImageWidth:this.options.arrows.to.imageWidth,toArrowImageHeight:this.options.arrows.to.imageHeight,middleArrow:i,middleArrowScale:this.options.arrows.middle.scaleFactor,middleArrowType:this.options.arrows.middle.type,middleArrowSrc:this.options.arrows.middle.src,middleArrowImageWidth:this.options.arrows.middle.imageWidth,middleArrowImageHeight:this.options.arrows.middle.imageHeight,fromArrow:t,fromArrowScale:this.options.arrows.from.scaleFactor,fromArrowType:this.options.arrows.from.type,fromArrowSrc:this.options.arrows.from.src,fromArrowImageWidth:this.options.arrows.from.imageWidth,fromArrowImageHeight:this.options.arrows.from.imageHeight,arrowStrikethrough:this.options.arrowStrikethrough,color:n?void 0:this.options.color.color,inheritsColor:n,opacity:this.options.color.opacity,hidden:this.options.hidden,length:this.options.length,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y,dashes:this.options.dashes,width:this.options.width,background:this.options.background.enabled,backgroundColor:this.options.background.color,backgroundSize:this.options.background.size,backgroundDashes:this.options.background.dashes};if(this.selected||this.hover)if(this.chooser===!0){if(this.selected){const o=this.options.selectionWidth;typeof o=="function"?s.width=o(s.width):typeof o=="number"&&(s.width+=o),s.width=Math.max(s.width,.3/this.body.view.scale),s.color=this.options.color.highlight,s.shadow=this.options.shadow.enabled}else if(this.hover){const o=this.options.hoverWidth;typeof o=="function"?s.width=o(s.width):typeof o=="number"&&(s.width+=o),s.width=Math.max(s.width,.3/this.body.view.scale),s.color=this.options.color.hover,s.shadow=this.options.shadow.enabled}}else typeof this.chooser=="function"&&(this.chooser(s,this.options.id,this.selected,this.hover),s.color!==void 0&&(s.inheritsColor=!1),s.shadow===!1&&(s.shadowColor!==this.options.shadow.color||s.shadowSize!==this.options.shadow.size||s.shadowX!==this.options.shadow.x||s.shadowY!==this.options.shadow.y)&&(s.shadow=!0));else s.shadow=this.options.shadow.enabled,s.width=Math.max(s.width,.3/this.body.view.scale);return s}updateLabelModule(e){const t=[e,this.options,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,t),this.labelModule.baseSize!==void 0&&(this.baseFontSize=this.labelModule.baseSize)}updateEdgeType(){const e=this.options.smooth;let t=!1,i=!0;return this.edgeType!==void 0&&((this.edgeType instanceof G2&&e.enabled===!0&&e.type==="dynamic"||this.edgeType instanceof X2&&e.enabled===!0&&e.type==="cubicBezier"||this.edgeType instanceof Y2&&e.enabled===!0&&e.type!=="dynamic"&&e.type!=="cubicBezier"||this.edgeType instanceof J2&&e.type.enabled===!1)&&(i=!1),i===!0&&(t=this.cleanup())),i===!0?e.enabled===!0?e.type==="dynamic"?(t=!0,this.edgeType=new G2(this.options,this.body,this.labelModule)):e.type==="cubicBezier"?this.edgeType=new X2(this.options,this.body,this.labelModule):this.edgeType=new Y2(this.options,this.body,this.labelModule):this.edgeType=new J2(this.options,this.body,this.labelModule):this.edgeType.setOptions(this.options),t}connect(){this.disconnect(),this.from=this.body.nodes[this.fromId]||void 0,this.to=this.body.nodes[this.toId]||void 0,this.connected=this.from!==void 0&&this.to!==void 0,this.connected===!0?(this.from.attachEdge(this),this.to.attachEdge(this)):(this.from&&this.from.detachEdge(this),this.to&&this.to.detachEdge(this)),this.edgeType.connect()}disconnect(){this.from&&(this.from.detachEdge(this),this.from=void 0),this.to&&(this.to.detachEdge(this),this.to=void 0),this.connected=!1}getTitle(){return this.title}isSelected(){return this.selected}getValue(){return this.options.value}setValueRange(e,t,i){if(this.options.value!==void 0){const n=this.options.scaling.customScalingFunction(e,t,i,this.options.value),s=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===!0){const o=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+n*o}this.options.width=this.options.scaling.min+n*s}else this.options.width=this.baseWidth,this.options.font.size=this.baseFontSize;this._setInteractionWidths(),this.updateLabelModule()}_setInteractionWidths(){typeof this.options.hoverWidth=="function"?this.edgeType.hoverWidth=this.options.hoverWidth(this.options.width):this.edgeType.hoverWidth=this.options.hoverWidth+this.options.width,typeof this.options.selectionWidth=="function"?this.edgeType.selectionWidth=this.options.selectionWidth(this.options.width):this.edgeType.selectionWidth=this.options.selectionWidth+this.options.width}draw(e){const t=this.getFormattingValues();if(t.hidden)return;const i=this.edgeType.getViaNode();this.edgeType.drawLine(e,t,this.selected,this.hover,i),this.drawLabel(e,i)}drawArrows(e){const t=this.getFormattingValues();if(t.hidden)return;const i=this.edgeType.getViaNode(),n={};this.edgeType.fromPoint=this.edgeType.from,this.edgeType.toPoint=this.edgeType.to,t.fromArrow&&(n.from=this.edgeType.getArrowData(e,"from",i,this.selected,this.hover,t),t.arrowStrikethrough===!1&&(this.edgeType.fromPoint=n.from.core),t.fromArrowSrc&&(n.from.image=this.imagelist.load(t.fromArrowSrc)),t.fromArrowImageWidth&&(n.from.imageWidth=t.fromArrowImageWidth),t.fromArrowImageHeight&&(n.from.imageHeight=t.fromArrowImageHeight)),t.toArrow&&(n.to=this.edgeType.getArrowData(e,"to",i,this.selected,this.hover,t),t.arrowStrikethrough===!1&&(this.edgeType.toPoint=n.to.core),t.toArrowSrc&&(n.to.image=this.imagelist.load(t.toArrowSrc)),t.toArrowImageWidth&&(n.to.imageWidth=t.toArrowImageWidth),t.toArrowImageHeight&&(n.to.imageHeight=t.toArrowImageHeight)),t.middleArrow&&(n.middle=this.edgeType.getArrowData(e,"middle",i,this.selected,this.hover,t),t.middleArrowSrc&&(n.middle.image=this.imagelist.load(t.middleArrowSrc)),t.middleArrowImageWidth&&(n.middle.imageWidth=t.middleArrowImageWidth),t.middleArrowImageHeight&&(n.middle.imageHeight=t.middleArrowImageHeight)),t.fromArrow&&this.edgeType.drawArrowHead(e,t,this.selected,this.hover,n.from),t.middleArrow&&this.edgeType.drawArrowHead(e,t,this.selected,this.hover,n.middle),t.toArrow&&this.edgeType.drawArrowHead(e,t,this.selected,this.hover,n.to)}drawLabel(e,t){if(this.options.label!==void 0){const i=this.from,n=this.to;this.labelModule.differentState(this.selected,this.hover)&&this.labelModule.getTextSize(e,this.selected,this.hover);let s;if(i.id!=n.id){this.labelModule.pointToSelf=!1,s=this.edgeType.getPoint(.5,t),e.save();const o=this._getRotation(e);o.angle!=0&&(e.translate(o.x,o.y),e.rotate(o.angle)),this.labelModule.draw(e,s.x,s.y,this.selected,this.hover),e.restore()}else{this.labelModule.pointToSelf=!0;const o=D5(e,this.options.selfReference.angle,this.options.selfReference.size,i);s=this._pointOnCircle(o.x,o.y,this.options.selfReference.size,this.options.selfReference.angle),this.labelModule.draw(e,s.x,s.y,this.selected,this.hover)}}}getItemsOnPoint(e){const t=[];if(this.labelModule.visible()){const n=this._getRotation();J_(this.labelModule.getSize(),e,n)&&t.push({edgeId:this.id,labelId:0})}const i={left:e.x,top:e.y};return this.isOverlappingWith(i)&&t.push({edgeId:this.id}),t}isOverlappingWith(e){if(this.connected){const i=this.from.x,n=this.from.y,s=this.to.x,o=this.to.y,a=e.left,u=e.top;return this.edgeType.getDistanceToEdge(i,n,s,o,a,u)<10}else return!1}_getRotation(e){const t=this.edgeType.getViaNode(),i=this.edgeType.getPoint(.5,t);e!==void 0&&this.labelModule.calculateLabelSize(e,this.selected,this.hover,i.x,i.y);const n={x:i.x,y:this.labelModule.size.yLine,angle:0};if(!this.labelModule.visible()||this.options.font.align==="horizontal")return n;const s=this.from.y-this.to.y,o=this.from.x-this.to.x;let a=Math.atan2(s,o);return(a<-1&&o<0||a>0&&o<0)&&(a+=Math.PI),n.angle=a,n}_pointOnCircle(e,t,i,n){return{x:e+i*Math.cos(n),y:t-i*Math.sin(n)}}select(){this.selected=!0}unselect(){this.selected=!1}cleanup(){return this.edgeType.cleanup()}remove(){this.cleanup(),this.disconnect(),delete this.body.edges[this.id]}endPointsValid(){return this.body.nodes[this.fromId]!==void 0&&this.body.nodes[this.toId]!==void 0}}class _re{constructor(e,t,i){var n;this.body=e,this.images=t,this.groups=i,this.body.functions.createEdge=z(n=this.create).call(n,this),this.edgesListeners={add:(s,o)=>{this.add(o.items)},update:(s,o)=>{this.update(o.items)},remove:(s,o)=>{this.remove(o.items)}},this.options={},this.defaultOptions={arrows:{to:{enabled:!1,scaleFactor:1,type:"arrow"},middle:{enabled:!1,scaleFactor:1,type:"arrow"},from:{enabled:!1,scaleFactor:1,type:"arrow"}},endPointOffset:{from:0,to:0},arrowStrikethrough:!0,color:{color:"#848484",highlight:"#848484",hover:"#848484",inherit:"from",opacity:1},dashes:!1,font:{color:"#343434",size:14,face:"arial",background:"none",strokeWidth:2,strokeColor:"#ffffff",align:"horizontal",multi:!1,vadjust:0,bold:{mod:"bold"},boldital:{mod:"bold italic"},ital:{mod:"italic"},mono:{mod:"",size:15,face:"courier new",vadjust:2}},hidden:!1,hoverWidth:1.5,label:void 0,labelHighlightBold:!0,length:void 0,physics:!0,scaling:{min:1,max:15,label:{enabled:!0,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function(s,o,a,u){if(o===s)return .5;{const l=1/(o-s);return Math.max(0,(u-s)*l)}}},selectionWidth:1.5,selfReference:{size:20,angle:Math.PI/4,renderBehindTheNode:!0},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:10,x:5,y:5},background:{enabled:!1,color:"rgba(111,111,111,1)",size:10,dashes:!1},smooth:{enabled:!0,type:"dynamic",forceDirection:"none",roundness:.5},title:void 0,width:1,value:void 0},Ue(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e=this,t,i;this.body.emitter.on("_forceDisableDynamicCurves",function(n){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;n==="dynamic"&&(n="continuous");let o=!1;for(const a in e.body.edges)if(Object.prototype.hasOwnProperty.call(e.body.edges,a)){const u=e.body.edges[a],l=e.body.data.edges.get(a);if(l!=null){const c=l.smooth;c!==void 0&&c.enabled===!0&&c.type==="dynamic"&&(n===void 0?u.setOptions({smooth:!1}):u.setOptions({smooth:{type:n}}),o=!0)}}s===!0&&o===!0&&e.body.emitter.emit("_dataChanged")}),this.body.emitter.on("_dataUpdated",()=>{this.reconnectEdges()}),this.body.emitter.on("refreshEdges",z(t=this.refresh).call(t,this)),this.body.emitter.on("refresh",z(i=this.refresh).call(i,this)),this.body.emitter.on("destroy",()=>{Ie(this.edgesListeners,(n,s)=>{this.body.data.edges&&this.body.data.edges.off(s,n)}),delete this.body.functions.createEdge,delete this.edgesListeners.add,delete this.edgesListeners.update,delete this.edgesListeners.remove,delete this.edgesListeners})}setOptions(e){if(e!==void 0){Ci.parseOptions(this.options,e,!0,this.defaultOptions,!0);let t=!1;if(e.smooth!==void 0)for(const i in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,i)&&(t=this.body.edges[i].updateEdgeType()||t);if(e.font!==void 0)for(const i in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,i)&&this.body.edges[i].updateLabelModule();(e.hidden!==void 0||e.physics!==void 0||t===!0)&&this.body.emitter.emit("_dataChanged")}}setData(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const i=this.body.data.edges;if(d3("id",e))this.body.data.edges=e;else if(tt(e))this.body.data.edges=new su,this.body.data.edges.add(e);else if(!e)this.body.data.edges=new su;else throw new TypeError("Array or DataSet expected");if(i&&Ie(this.edgesListeners,(n,s)=>{i.off(s,n)}),this.body.edges={},this.body.data.edges){Ie(this.edgesListeners,(s,o)=>{this.body.data.edges.on(o,s)});const n=this.body.data.edges.getIds();this.add(n,!0)}this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),t===!1&&this.body.emitter.emit("_dataChanged")}add(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const i=this.body.edges,n=this.body.data.edges;for(let s=0;s1&&arguments[1]!==void 0?arguments[1]:!0;if(e.length===0)return;const i=this.body.edges;Ie(e,n=>{const s=i[n];s!==void 0&&s.remove()}),t&&this.body.emitter.emit("_dataChanged")}refresh(){Ie(this.body.edges,(e,t)=>{const i=this.body.data.edges.get(t);i!==void 0&&e.setOptions(i)})}create(e){return new Ci(e,this.body,this.images,this.options,this.defaultOptions)}reconnectEdges(){let e;const t=this.body.nodes,i=this.body.edges;for(e in t)Object.prototype.hasOwnProperty.call(t,e)&&(t[e].edges=[]);for(e in i)if(Object.prototype.hasOwnProperty.call(i,e)){const n=i[e];n.from=null,n.to=null,n.connect()}}getConnectedNodes(e){const t=[];if(this.body.edges[e]!==void 0){const i=this.body.edges[e];i.fromId!==void 0&&t.push(i.fromId),i.toId!==void 0&&t.push(i.toId)}return t}_updateState(){this._addMissingEdges(),this._removeInvalidEdges()}_removeInvalidEdges(){const e=[];Ie(this.body.edges,(t,i)=>{const n=this.body.nodes[t.toId],s=this.body.nodes[t.fromId];n!==void 0&&n.isCluster===!0||s!==void 0&&s.isCluster===!0||(n===void 0||s===void 0)&&e.push(i)}),this.remove(e,!1)}_addMissingEdges(){const e=this.body.data.edges;if(e==null)return;const t=this.body.edges,i=[];Le(e).call(e,(n,s)=>{t[s]===void 0&&i.push(s)}),this.add(i,!0)}}class F5{constructor(e,t,i){this.body=e,this.physicsBody=t,this.barnesHutTree,this.setOptions(i),this._rng=sl("BARNES HUT SOLVER")}setOptions(e){this.options=e,this.thetaInversed=1/this.options.theta,this.overlapAvoidanceFactor=1-Math.max(0,Math.min(1,this.options.avoidOverlap))}solve(){if(this.options.gravitationalConstant!==0&&this.physicsBody.physicsNodeIndices.length>0){let e;const t=this.body.nodes,i=this.physicsBody.physicsNodeIndices,n=i.length,s=this._formBarnesHutTree(t,i);this.barnesHutTree=s;for(let o=0;o0&&this._getForceContributions(s.root,e)}}_getForceContributions(e,t){this._getForceContribution(e.children.NW,t),this._getForceContribution(e.children.NE,t),this._getForceContribution(e.children.SW,t),this._getForceContribution(e.children.SE,t)}_getForceContribution(e,t){if(e.childrenCount>0){const i=e.centerOfMass.x-t.x,n=e.centerOfMass.y-t.y,s=Math.sqrt(i*i+n*n);s*e.calcSize>this.thetaInversed?this._calculateForces(s,i,n,t,e):e.childrenCount===4?this._getForceContributions(e,t):e.children.data.id!=t.id&&this._calculateForces(s,i,n,t,e)}}_calculateForces(e,t,i,n,s){e===0&&(e=.1,t=e),this.overlapAvoidanceFactor<1&&n.shape.radius&&(e=Math.max(.1+this.overlapAvoidanceFactor*n.shape.radius,e-n.shape.radius));const o=this.options.gravitationalConstant*s.mass*n.options.mass/Math.pow(e,3),a=t*o,u=i*o;this.physicsBody.forces[n.id].x+=a,this.physicsBody.forces[n.id].y+=u}_formBarnesHutTree(e,t){let i;const n=t.length;let s=e[t[0]].x,o=e[t[0]].y,a=e[t[0]].x,u=e[t[0]].y;for(let b=1;b0&&(ga&&(a=g),wu&&(u=w))}const l=Math.abs(a-s)-Math.abs(u-o);l>0?(o-=.5*l,u+=.5*l):(s+=.5*l,a-=.5*l);const d=Math.max(1e-5,Math.abs(a-s)),h=.5*d,f=.5*(s+a),v=.5*(o+u),p={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:f-h,maxX:f+h,minY:v-h,maxY:v+h},size:d,calcSize:1/d,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(p.root);for(let b=0;b0&&this._placeInTree(p.root,i);return p}_updateBranchMass(e,t){const i=e.centerOfMass,n=e.mass+t.options.mass,s=1/n;i.x=i.x*e.mass+t.x*t.options.mass,i.x*=s,i.y=i.y*e.mass+t.y*t.options.mass,i.y*=s,e.mass=n;const o=Math.max(Math.max(t.height,t.radius),t.width);e.maxWidth=e.maxWidtht.x?n.maxY>t.y?s="NW":s="SW":n.maxY>t.y?s="NE":s="SE",this._placeInRegion(e,t,s)}_placeInRegion(e,t,i){const n=e.children[i];switch(n.childrenCount){case 0:n.children.data=t,n.childrenCount=1,this._updateBranchMass(n,t);break;case 1:n.children.data.x===t.x&&n.children.data.y===t.y?(t.x+=this._rng(),t.y+=this._rng()):(this._splitBranch(n),this._placeInTree(n,t));break;case 4:this._placeInTree(n,t);break}}_splitBranch(e){let t=null;e.childrenCount===1&&(t=e.children.data,e.mass=0,e.centerOfMass.x=0,e.centerOfMass.y=0),e.childrenCount=4,e.children.data=null,this._insertRegion(e,"NW"),this._insertRegion(e,"NE"),this._insertRegion(e,"SW"),this._insertRegion(e,"SE"),t!=null&&this._placeInTree(e,t)}_insertRegion(e,t){let i,n,s,o;const a=.5*e.size;switch(t){case"NW":i=e.range.minX,n=e.range.minX+a,s=e.range.minY,o=e.range.minY+a;break;case"NE":i=e.range.minX+a,n=e.range.maxX,s=e.range.minY,o=e.range.minY+a;break;case"SW":i=e.range.minX,n=e.range.minX+a,s=e.range.minY+a,o=e.range.maxY;break;case"SE":i=e.range.minX+a,n=e.range.maxX,s=e.range.minY+a,o=e.range.maxY;break}e.children[t]={centerOfMass:{x:0,y:0},mass:0,range:{minX:i,maxX:n,minY:s,maxY:o},size:.5*e.size,calcSize:2*e.calcSize,children:{data:null},maxWidth:0,level:e.level+1,childrenCount:0}}_debug(e,t){this.barnesHutTree!==void 0&&(e.lineWidth=1,this._drawBranch(this.barnesHutTree.root,e,t))}_drawBranch(e,t,i){i===void 0&&(i="#FF0000"),e.childrenCount===4&&(this._drawBranch(e.children.NW,t),this._drawBranch(e.children.NE,t),this._drawBranch(e.children.SE,t),this._drawBranch(e.children.SW,t)),t.strokeStyle=i,t.beginPath(),t.moveTo(e.range.minX,e.range.minY),t.lineTo(e.range.maxX,e.range.minY),t.stroke(),t.beginPath(),t.moveTo(e.range.maxX,e.range.minY),t.lineTo(e.range.maxX,e.range.maxY),t.stroke(),t.beginPath(),t.moveTo(e.range.maxX,e.range.maxY),t.lineTo(e.range.minX,e.range.maxY),t.stroke(),t.beginPath(),t.moveTo(e.range.minX,e.range.maxY),t.lineTo(e.range.minX,e.range.minY),t.stroke()}}class wre{constructor(e,t,i){this._rng=sl("REPULSION SOLVER"),this.body=e,this.physicsBody=t,this.setOptions(i)}setOptions(e){this.options=e}solve(){let e,t,i,n,s,o,a,u;const l=this.body.nodes,c=this.physicsBody.physicsNodeIndices,d=this.physicsBody.forces,h=this.options.nodeDistance,f=-2/3/h,v=4/3;for(let p=0;p0){const o=s.edges.length+1,a=this.options.centralGravity*o*s.options.mass;n[s.id].x=t*a,n[s.id].y=i*a}}}class Tre{constructor(e){this.body=e,this.physicsBody={physicsNodeIndices:[],physicsEdgeIndices:[],forces:{},velocities:{}},this.physicsEnabled=!0,this.simulationInterval=1e3/60,this.requiresTimeout=!0,this.previousStates={},this.referenceState={},this.freezeCache={},this.renderTimer=void 0,this.adaptiveTimestep=!1,this.adaptiveTimestepEnabled=!1,this.adaptiveCounter=0,this.adaptiveInterval=3,this.stabilized=!1,this.startedStabilization=!1,this.stabilizationIterations=0,this.ready=!1,this.options={},this.defaultOptions={enabled:!0,barnesHut:{theta:.5,gravitationalConstant:-2e3,centralGravity:.3,springLength:95,springConstant:.04,damping:.09,avoidOverlap:0},forceAtlas2Based:{theta:.5,gravitationalConstant:-50,centralGravity:.01,springConstant:.08,springLength:100,damping:.4,avoidOverlap:0},repulsion:{centralGravity:.2,springLength:200,springConstant:.05,nodeDistance:100,damping:.09,avoidOverlap:0},hierarchicalRepulsion:{centralGravity:0,springLength:100,springConstant:.01,nodeDistance:120,damping:.09},maxVelocity:50,minVelocity:.75,solver:"barnesHut",stabilization:{enabled:!0,iterations:1e3,updateInterval:50,onlyDynamicEdges:!1,fit:!0},timestep:.5,adaptiveTimestep:!0,wind:{x:0,y:0}},at(this.options,this.defaultOptions),this.timestep=.5,this.layoutFailed=!1,this.bindEventListeners()}bindEventListeners(){this.body.emitter.on("initPhysics",()=>{this.initPhysics()}),this.body.emitter.on("_layoutFailed",()=>{this.layoutFailed=!0}),this.body.emitter.on("resetPhysics",()=>{this.stopSimulation(),this.ready=!1}),this.body.emitter.on("disablePhysics",()=>{this.physicsEnabled=!1,this.stopSimulation()}),this.body.emitter.on("restorePhysics",()=>{this.setOptions(this.options),this.ready===!0&&this.startSimulation()}),this.body.emitter.on("startSimulation",()=>{this.ready===!0&&this.startSimulation()}),this.body.emitter.on("stopSimulation",()=>{this.stopSimulation()}),this.body.emitter.on("destroy",()=>{this.stopSimulation(!1),this.body.emitter.off()}),this.body.emitter.on("_dataChanged",()=>{this.updatePhysicsData()})}setOptions(e){if(e!==void 0)if(e===!1)this.options.enabled=!1,this.physicsEnabled=!1,this.stopSimulation();else if(e===!0)this.options.enabled=!0,this.physicsEnabled=!0,this.startSimulation();else{this.physicsEnabled=!0,cu(["stabilization"],this.options,e),sr(this.options,e,"stabilization"),e.enabled===void 0&&(this.options.enabled=!0),this.options.enabled===!1&&(this.physicsEnabled=!1,this.stopSimulation());const t=this.options.wind;t&&((typeof t.x!="number"||X_(t.x))&&(t.x=0),(typeof t.y!="number"||X_(t.y))&&(t.y=0)),this.timestep=this.options.timestep}this.init()}init(){let e;this.options.solver==="forceAtlas2Based"?(e=this.options.forceAtlas2Based,this.nodesSolver=new Ore(this.body,this.physicsBody,e),this.edgesSolver=new I1(this.body,this.physicsBody,e),this.gravitySolver=new Ire(this.body,this.physicsBody,e)):this.options.solver==="repulsion"?(e=this.options.repulsion,this.nodesSolver=new wre(this.body,this.physicsBody,e),this.edgesSolver=new I1(this.body,this.physicsBody,e),this.gravitySolver=new Ka(this.body,this.physicsBody,e)):this.options.solver==="hierarchicalRepulsion"?(e=this.options.hierarchicalRepulsion,this.nodesSolver=new Ere(this.body,this.physicsBody,e),this.edgesSolver=new Sre(this.body,this.physicsBody,e),this.gravitySolver=new Ka(this.body,this.physicsBody,e)):(e=this.options.barnesHut,this.nodesSolver=new F5(this.body,this.physicsBody,e),this.edgesSolver=new I1(this.body,this.physicsBody,e),this.gravitySolver=new Ka(this.body,this.physicsBody,e)),this.modelOptions=e}initPhysics(){this.physicsEnabled===!0&&this.options.enabled===!0?this.options.stabilization.enabled===!0?this.stabilize():(this.stabilized=!1,this.ready=!0,this.body.emitter.emit("fit",{},this.layoutFailed),this.startSimulation()):(this.ready=!0,this.body.emitter.emit("fit"))}startSimulation(){if(this.physicsEnabled===!0&&this.options.enabled===!0){if(this.stabilized=!1,this.adaptiveTimestep=!1,this.body.emitter.emit("_resizeNodes"),this.viewFunction===void 0){var e;this.viewFunction=z(e=this.simulationStep).call(e,this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering")}}else this.body.emitter.emit("_redraw")}stopSimulation(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.stabilized=!0,e===!0&&this._emitStabilized(),this.viewFunction!==void 0&&(this.body.emitter.off("initRedraw",this.viewFunction),this.viewFunction=void 0,e===!0&&this.body.emitter.emit("_stopRendering"))}simulationStep(){const e=ou();this.physicsTick(),(ou()-e<.4*this.simulationInterval||this.runDoubleSpeed===!0)&&this.stabilized===!1&&(this.physicsTick(),this.runDoubleSpeed=!0),this.stabilized===!0&&this.stopSimulation()}_emitStabilized(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.stabilizationIterations;(this.stabilizationIterations>1||this.startedStabilization===!0)&&ti(()=>{this.body.emitter.emit("stabilized",{iterations:e}),this.startedStabilization=!1,this.stabilizationIterations=0},0)}physicsStep(){this.gravitySolver.solve(),this.nodesSolver.solve(),this.edgesSolver.solve(),this.moveNodes()}adjustTimeStep(){this._evaluateStepQuality()===!0?this.timestep=1.2*this.timestep:this.timestep/1.2o))return!1;return!0}moveNodes(){const e=this.physicsBody.physicsNodeIndices;let t=0,i=0;const n=5;for(let s=0;so&&(e=e>0?o:-o),e}_performStep(e){const t=this.body.nodes[e],i=this.physicsBody.forces[e];this.options.wind&&(i.x+=this.options.wind.x,i.y+=this.options.wind.y);const n=this.physicsBody.velocities[e];return this.previousStates[e]={x:t.x,y:t.y,vx:n.x,vy:n.y},t.options.fixed.x===!1?(n.x=this.calculateComponentVelocity(n.x,i.x,t.options.mass),t.x+=n.x*this.timestep):(i.x=0,n.x=0),t.options.fixed.y===!1?(n.y=this.calculateComponentVelocity(n.y,i.y,t.options.mass),t.y+=n.y*this.timestep):(i.y=0,n.y=0),Math.sqrt(Math.pow(n.x,2)+Math.pow(n.y,2))}_freezeNodes(){const e=this.body.nodes;for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&e[t].x&&e[t].y){const i=e[t].options.fixed;this.freezeCache[t]={x:i.x,y:i.y},i.x=!0,i.y=!0}}_restoreFrozenNodes(){const e=this.body.nodes;for(const t in e)Object.prototype.hasOwnProperty.call(e,t)&&this.freezeCache[t]!==void 0&&(e[t].options.fixed.x=this.freezeCache[t].x,e[t].options.fixed.y=this.freezeCache[t].y);this.freezeCache={}}stabilize(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.stabilization.iterations;if(typeof e!="number"&&(e=this.options.stabilization.iterations,console.error("The stabilize method needs a numeric amount of iterations. Switching to default: ",e)),this.physicsBody.physicsNodeIndices.length===0){this.ready=!0;return}this.adaptiveTimestep=this.options.adaptiveTimestep,this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,ti(()=>this._stabilizationBatch(),0)}_startStabilizing(){return this.startedStabilization===!0?!1:(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0,!0)}_stabilizationBatch(){const e=()=>this.stabilized===!1&&this.stabilizationIterations{this.body.emitter.emit("stabilizationProgress",{iterations:this.stabilizationIterations,total:this.targetIterations})};this._startStabilizing()&&t();let i=0;for(;e()&&i"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");T1=crypto.getRandomValues.bind(crypto)}return T1(Pre)}const Cre=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var Q2={randomUUID:Cre};function xre(r,e,t){var n;r=r||{};const i=r.random??((n=r.rng)==null?void 0:n.call(r))??Rre();if(i.length<16)throw new Error("Random bytes length must be >= 16");return i[6]=i[6]&15|64,i[8]=i[8]&63|128,$re(i)}function wo(r,e,t){return Q2.randomUUID?Q2.randomUUID():xre(r)}class Bt{constructor(){}static getRange(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],i=1e9,n=-1e9,s=1e9,o=-1e9,a;if(t.length>0)for(let u=0;ua.shape.boundingBox.left&&(s=a.shape.boundingBox.left),oa.shape.boundingBox.top&&(i=a.shape.boundingBox.top),n1&&arguments[1]!==void 0?arguments[1]:[],i=1e9,n=-1e9,s=1e9,o=-1e9,a;if(t.length>0)for(let u=0;ua.x&&(s=a.x),oa.y&&(i=a.y),n{delete this.containedEdges[i.id]}),Ie(t.containedNodes,(i,n)=>{this.containedNodes[n]=i}),t.containedNodes={},Ie(t.containedEdges,(i,n)=>{this.containedEdges[n]=i}),t.containedEdges={},Ie(t.edges,i=>{Ie(this.edges,n=>{var s,o;const a=Fe(s=n.clusteringEdgeReplacingIds).call(s,i.id);a!==-1&&(Ie(i.clusteringEdgeReplacingIds,u=>{n.clusteringEdgeReplacingIds.push(u),this.body.edges[u].edgeReplacedById=n.id}),ei(o=n.clusteringEdgeReplacingIds).call(o,a,1))})}),t.edges=[]}}class Dre{constructor(e){this.body=e,this.clusteredNodes={},this.clusteredEdges={},this.options={},this.defaultOptions={},at(this.options,this.defaultOptions),this.body.emitter.on("_resetData",()=>{this.clusteredNodes={},this.clusteredEdges={}})}clusterByHubsize(e,t){e===void 0?e=this._getHubSize():typeof e=="object"&&(t=this._checkOptions(e),e=this._getHubSize());const i=[];for(let n=0;n=e&&i.push(s.id)}for(let n=0;n0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e.joinCondition===void 0)throw new Error("Cannot call clusterByNodeData without a joinCondition function in the options.");e=this._checkOptions(e);const i={},n={};Ie(this.body.nodes,(s,o)=>{s.options&&e.joinCondition(s.options)===!0&&(i[o]=s,Ie(s.edges,a=>{this.clusteredEdges[a.id]===void 0&&(n[a.id]=a)}))}),this._cluster(i,n,e,t)}clusterByEdgeCount(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;t=this._checkOptions(t);const n=[],s={};let o,a,u;for(let l=0;l0&&Ze(d).length>0&&p===!0){const m=function(){for(let g=0;g1&&arguments[1]!==void 0?arguments[1]:!0;this.clusterByEdgeCount(1,e,t)}clusterBridges(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.clusterByEdgeCount(2,e,t)}clusterByConnection(e,t){var i;let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0)throw new Error("No nodeId supplied to clusterByConnection!");if(this.body.nodes[e]===void 0)throw new Error("The nodeId given to clusterByConnection does not exist!");const s=this.body.nodes[e];t=this._checkOptions(t,s),t.clusterNodeProperties.x===void 0&&(t.clusterNodeProperties.x=s.x),t.clusterNodeProperties.y===void 0&&(t.clusterNodeProperties.y=s.y),t.clusterNodeProperties.fixed===void 0&&(t.clusterNodeProperties.fixed={},t.clusterNodeProperties.fixed.x=s.options.fixed.x,t.clusterNodeProperties.fixed.y=s.options.fixed.y);const o={},a={},u=s.id,l=Bt.cloneOptions(s);o[u]=s;for(let d=0;d-1&&(a[v.id]=v)}}this._cluster(o,a,t,n)}_createClusterEdges(e,t,i,n){let s,o,a,u,l,c;const d=Ze(e),h=[];for(let p=0;p0&&arguments[0]!==void 0?arguments[0]:{};return e.clusterEdgeProperties===void 0&&(e.clusterEdgeProperties={}),e.clusterNodeProperties===void 0&&(e.clusterNodeProperties={}),e}_cluster(e,t,i){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;const s=[];for(const c in e)Object.prototype.hasOwnProperty.call(e,c)&&this.clusteredNodes[c]!==void 0&&s.push(c);for(let c=0;cn?a.x:n,s=a.yo?a.y:o;return{x:.5*(i+n),y:.5*(s+o)}}openCluster(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0)throw new Error("No clusterNodeId supplied to openCluster.");const n=this.body.nodes[e];if(n===void 0)throw new Error("The clusterNodeId supplied to openCluster does not exist.");if(n.isCluster!==!0||n.containedNodes===void 0||n.containedEdges===void 0)throw new Error("The node:"+e+" is not a valid cluster.");const s=this.findNode(e),o=Fe(s).call(s,e)-1;if(o>=0){const c=s[o];this.body.nodes[c]._openChildCluster(e),delete this.body.nodes[e],i===!0&&this.body.emitter.emit("_dataChanged");return}const a=n.containedNodes,u=n.containedEdges;if(t!==void 0&&t.releaseFunction!==void 0&&typeof t.releaseFunction=="function"){const c={},d={x:n.x,y:n.y};for(const f in a)if(Object.prototype.hasOwnProperty.call(a,f)){const v=this.body.nodes[f];c[f]={x:v.x,y:v.y}}const h=t.releaseFunction(d,c);for(const f in a)if(Object.prototype.hasOwnProperty.call(a,f)){const v=this.body.nodes[f];h[f]!==void 0&&(v.x=h[f].x===void 0?n.x:h[f].x,v.y=h[f].y===void 0?n.y:h[f].y)}}else Ie(a,function(c){c.options.fixed.x===!1&&(c.x=n.x),c.options.fixed.y===!1&&(c.y=n.y)});for(const c in a)if(Object.prototype.hasOwnProperty.call(a,c)){const d=this.body.nodes[c];d.vx=n.vx,d.vy=n.vy,d.setOptions({physics:!0}),delete this.clusteredNodes[c]}const l=[];for(let c=0;c0&&on&&(n=l.edges.length),e+=l.edges.length,t+=Math.pow(l.edges.length,2),i+=1}e=e/i,t=t/i;const s=t-Math.pow(e,2),o=Math.sqrt(s);let a=Math.floor(e+2*o);return a>n&&(a=n),a}_createClusteredEdge(e,t,i,n,s){const o=Bt.cloneOptions(i,"edge");Ue(o,n),o.from=e,o.to=t,o.id="clusterEdge:"+wo(),s!==void 0&&Ue(o,s);const a=this.body.functions.createEdge(o);return a.clusteringEdgeReplacingIds=[i.id],a.connect(),this.body.edges[a.id]=a,a}_clusterEdges(e,t,i,n){if(t instanceof Ci){const s=t,o={};o[s.id]=s,t=o}if(e instanceof Ke){const s=e,o={};o[s.id]=s,e=o}if(i==null)throw new Error("_clusterEdges: parameter clusterNode required");n===void 0&&(n=i.clusterEdgeProperties),this._createClusterEdges(e,t,i,n);for(const s in t)if(Object.prototype.hasOwnProperty.call(t,s)&&this.body.edges[s]!==void 0){const o=this.body.edges[s];this._backupEdgeOptions(o),o.setOptions({physics:!1})}for(const s in e)Object.prototype.hasOwnProperty.call(e,s)&&(this.clusteredNodes[s]={clusterId:i.id,node:this.body.nodes[s]},this.body.nodes[s].setOptions({physics:!1}))}_getClusterNodeForNode(e){if(e===void 0)return;const t=this.clusteredNodes[e];if(t===void 0)return;const i=t.clusterId;if(i!==void 0)return this.body.nodes[i]}_filter(e,t){const i=[];return Ie(e,n=>{t(n)&&i.push(n)}),i}_updateState(){let e;const t=[],i={},n=u=>{Ie(this.body.nodes,l=>{l.isCluster===!0&&u(l)})};for(e in this.clusteredNodes){if(!Object.prototype.hasOwnProperty.call(this.clusteredNodes,e))continue;this.body.nodes[e]===void 0&&t.push(e)}n(function(u){for(let l=0;l{const l=this.body.edges[u];(l===void 0||!l.endPointsValid())&&(i[u]=u)}),n(function(u){Ie(u.containedEdges,(l,c)=>{!l.endPointsValid()&&!i[c]&&(i[c]=c)})}),Ie(this.body.edges,(u,l)=>{let c=!0;const d=u.clusteringEdgeReplacingIds;if(d!==void 0){let h=0;Ie(d,f=>{const v=this.body.edges[f];v!==void 0&&v.endPointsValid()&&(h+=1)}),c=h>0}(!u.endPointsValid()||!c)&&(i[l]=l)}),n(u=>{Ie(i,l=>{delete u.containedEdges[l],Ie(u.edges,(c,d)=>{if(c.id===l){u.edges[d]=null;return}c.clusteringEdgeReplacingIds=this._filter(c.clusteringEdgeReplacingIds,function(h){return!i[h]})}),u.edges=this._filter(u.edges,function(c){return c!==null})})}),Ie(i,u=>{delete this.clusteredEdges[u]}),Ie(i,u=>{delete this.body.edges[u]});const s=Ze(this.body.edges);Ie(s,u=>{const l=this.body.edges[u],c=this._isClusteredNode(l.fromId)||this._isClusteredNode(l.toId);if(c!==this._isClusteredEdge(l.id))if(c){const d=this._getClusterNodeForNode(l.fromId);d!==void 0&&this._clusterEdges(this.body.nodes[l.fromId],l,d);const h=this._getClusterNodeForNode(l.toId);h!==void 0&&this._clusterEdges(this.body.nodes[l.toId],l,h)}else delete this._clusterEdges[u],this._restoreEdge(l)});let o=!1,a=!0;for(;a;){const u=[];n(function(l){const c=Ze(l.containedNodes).length,d=l.options.allowSingleNodeCluster===!0;(d&&c<1||!d&&c<2)&&u.push(l.id)});for(let l=0;l0,o=o||a}o&&this._updateState()}_isClusteredNode(e){return this.clusteredNodes[e]!==void 0}_isClusteredEdge(e){return this.clusteredEdges[e]!==void 0}}class Are{constructor(e,t){this.body=e,this.canvas=t,this.redrawRequested=!1,this.requestAnimationFrameRequestId=void 0,this.renderingActive=!1,this.renderRequests=0,this.allowRedraw=!0,this.dragging=!1,this.zooming=!1,this.options={},this.defaultOptions={hideEdgesOnDrag:!1,hideEdgesOnZoom:!1,hideNodesOnDrag:!1},at(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e;this.body.emitter.on("dragStart",()=>{this.dragging=!0}),this.body.emitter.on("dragEnd",()=>{this.dragging=!1}),this.body.emitter.on("zoom",()=>{this.zooming=!0,window.clearTimeout(this.zoomTimeoutId),this.zoomTimeoutId=ti(()=>{var t;this.zooming=!1,z(t=this._requestRedraw).call(t,this)()},250)}),this.body.emitter.on("_resizeNodes",()=>{this._resizeNodes()}),this.body.emitter.on("_redraw",()=>{this.renderingActive===!1&&this._redraw()}),this.body.emitter.on("_blockRedraw",()=>{this.allowRedraw=!1}),this.body.emitter.on("_allowRedraw",()=>{this.allowRedraw=!0,this.redrawRequested=!1}),this.body.emitter.on("_requestRedraw",z(e=this._requestRedraw).call(e,this)),this.body.emitter.on("_startRendering",()=>{this.renderRequests+=1,this.renderingActive=!0,this._startRendering()}),this.body.emitter.on("_stopRendering",()=>{this.renderRequests-=1,this.renderingActive=this.renderRequests>0,this.requestAnimationFrameRequestId=void 0}),this.body.emitter.on("destroy",()=>{this.renderRequests=0,this.allowRedraw=!1,this.renderingActive=!1,window.cancelAnimationFrame(this.requestAnimationFrameRequestId),this.body.emitter.off()})}setOptions(e){e!==void 0&&Gs(["hideEdgesOnDrag","hideEdgesOnZoom","hideNodesOnDrag"],this.options,e)}_startRendering(){if(this.renderingActive===!0&&this.requestAnimationFrameRequestId===void 0){var e;this.requestAnimationFrameRequestId=window.requestAnimationFrame(z(e=this._renderStep).call(e,this),this.simulationInterval)}}_renderStep(){this.renderingActive===!0&&(this.requestAnimationFrameRequestId=void 0,this._startRendering(),this._redraw())}redraw(){this.body.emitter.emit("setSize"),this._redraw()}_requestRedraw(){this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedraw===!0&&(this.redrawRequested=!0,window.requestAnimationFrame(()=>{this._redraw(!1)}))}_redraw(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;if(this.allowRedraw===!0){this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;const t={drawExternalLabels:null};(this.canvas.frame.canvas.width===0||this.canvas.frame.canvas.height===0)&&this.canvas.setSize(),this.canvas.setTransform();const i=this.canvas.getContext(),n=this.canvas.frame.canvas.clientWidth,s=this.canvas.frame.canvas.clientHeight;if(i.clearRect(0,0,n,s),this.canvas.frame.clientWidth===0)return;if(i.save(),i.translate(this.body.view.translation.x,this.body.view.translation.y),i.scale(this.body.view.scale,this.body.view.scale),i.beginPath(),this.body.emitter.emit("beforeDrawing",i),i.closePath(),e===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&(this.zooming===!1||this.zooming===!0&&this.options.hideEdgesOnZoom===!1)&&this._drawEdges(i),this.dragging===!1||this.dragging===!0&&this.options.hideNodesOnDrag===!1){const{drawExternalLabels:o}=this._drawNodes(i,e);t.drawExternalLabels=o}e===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&(this.zooming===!1||this.zooming===!0&&this.options.hideEdgesOnZoom===!1)&&this._drawArrows(i),t.drawExternalLabels!=null&&t.drawExternalLabels(),e===!1&&this._drawSelectionBox(i),i.beginPath(),this.body.emitter.emit("afterDrawing",i),i.closePath(),i.restore(),e===!0&&i.clearRect(0,0,n,s)}}_resizeNodes(){this.canvas.setTransform();const e=this.canvas.getContext();e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale);const t=this.body.nodes;let i;for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&(i=t[n],i.resize(e),i.updateBoundingBox(e,i.selected));e.restore()}_drawNodes(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const i=this.body.nodes,n=this.body.nodeIndices;let s;const o=[],a=[],u=20,l=this.canvas.DOMtoCanvas({x:-20,y:-20}),c=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+u,y:this.canvas.frame.canvas.clientHeight+u}),d={top:l.y,left:l.x,bottom:c.y,right:c.x},h=[];for(let b=0;b{for(const b of h)b()}}}_drawEdges(e){const t=this.body.edges,i=this.body.edgeIndices;for(let n=0;n{t.width!==0&&(this.body.view.translation.x=t.width*.5),t.height!==0&&(this.body.view.translation.y=t.height*.5)}),this.body.emitter.on("setSize",z(e=this.setSize).call(e,this)),this.body.emitter.on("destroy",()=>{this.hammerFrame.destroy(),this.hammer.destroy(),this._cleanUp()})}setOptions(e){if(e!==void 0&&Gs(["width","height","autoResize"],this.options,e),this._cleanUp(),this.options.autoResize===!0){var t;if(window.ResizeObserver){const n=new ResizeObserver(()=>{this.setSize()===!0&&this.body.emitter.emit("_requestRedraw")}),{frame:s}=this;n.observe(s),this._cleanupCallbacks.push(()=>{n.unobserve(s)})}else{const n=kre(()=>{this.setSize()===!0&&this.body.emitter.emit("_requestRedraw")},1e3);this._cleanupCallbacks.push(()=>{clearInterval(n)})}const i=z(t=this._onResize).call(t,this);window.addEventListener("resize",i),this._cleanupCallbacks.push(()=>{window.removeEventListener("resize",i)})}}_cleanUp(){var e,t,i;Le(e=on(t=ei(i=this._cleanupCallbacks).call(i,0)).call(t)).call(e,n=>{try{n()}catch(s){console.error(s)}})}_onResize(){this.setSize(),this.body.emitter.emit("_redraw")}_getCameraState(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.pixelRatio;this.initialized===!0&&(this.cameraState.previousWidth=this.frame.canvas.width/e,this.cameraState.previousHeight=this.frame.canvas.height/e,this.cameraState.scale=this.body.view.scale,this.cameraState.position=this.DOMtoCanvas({x:.5*this.frame.canvas.width/e,y:.5*this.frame.canvas.height/e}))}_setCameraState(){if(this.cameraState.scale!==void 0&&this.frame.canvas.clientWidth!==0&&this.frame.canvas.clientHeight!==0&&this.pixelRatio!==0&&this.cameraState.previousWidth>0&&this.cameraState.previousHeight>0){const e=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth,t=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight;let i=this.cameraState.scale;e!=1&&t!=1?i=this.cameraState.scale*.5*(e+t):e!=1?i=this.cameraState.scale*e:t!=1&&(i=this.cameraState.scale*t),this.body.view.scale=i;const n=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),s={x:n.x-this.cameraState.position.x,y:n.y-this.cameraState.position.y};this.body.view.translation.x+=s.x*this.body.view.scale,this.body.view.translation.y+=s.y*this.body.view.scale}}_prepareValue(e){if(typeof e=="number")return e+"px";if(typeof e=="string"){if(Fe(e).call(e,"%")!==-1||Fe(e).call(e,"px")!==-1)return e;if(Fe(e).call(e,"%")===-1)return e+"px"}throw new Error("Could not use the value supplied for width or height:"+e)}_create(){for(;this.body.container.hasChildNodes();)this.body.container.removeChild(this.body.container.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis-network",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.tabIndex=0,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext)this._setPixelRatio(),this.setTransform();else{const e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerText="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}this.body.container.appendChild(this.frame),this.body.view.scale=1,this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight},this._bindHammer()}_bindHammer(){this.hammer!==void 0&&this.hammer.destroy(),this.drag={},this.pinch={},this.hammer=new us(this.frame.canvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:us.DIRECTION_ALL}),fu(this.hammer,e=>{this.body.eventListeners.onTouch(e)}),this.hammer.on("tap",e=>{this.body.eventListeners.onTap(e)}),this.hammer.on("doubletap",e=>{this.body.eventListeners.onDoubleTap(e)}),this.hammer.on("press",e=>{this.body.eventListeners.onHold(e)}),this.hammer.on("panstart",e=>{this.body.eventListeners.onDragStart(e)}),this.hammer.on("panmove",e=>{this.body.eventListeners.onDrag(e)}),this.hammer.on("panend",e=>{this.body.eventListeners.onDragEnd(e)}),this.hammer.on("pinch",e=>{this.body.eventListeners.onPinch(e)}),this.frame.canvas.addEventListener("wheel",e=>{this.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("mousemove",e=>{this.body.eventListeners.onMouseMove(e)}),this.frame.canvas.addEventListener("contextmenu",e=>{this.body.eventListeners.onContext(e)}),this.hammerFrame=new us(this.frame),k5(this.hammerFrame,e=>{this.body.eventListeners.onRelease(e)})}setSize(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.width,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.options.height;e=this._prepareValue(e),t=this._prepareValue(t);let i=!1;const n=this.frame.canvas.width,s=this.frame.canvas.height,o=this.pixelRatio;if(this._setPixelRatio(),e!=this.options.width||t!=this.options.height||this.frame.style.width!=e||this.frame.style.height!=t)this._getCameraState(o),this.frame.style.width=e,this.frame.style.height=t,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),this.options.width=e,this.options.height=t,this.canvasViewCenter={x:.5*this.frame.clientWidth,y:.5*this.frame.clientHeight},i=!0;else{const a=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),u=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);(this.frame.canvas.width!==a||this.frame.canvas.height!==u)&&this._getCameraState(o),this.frame.canvas.width!==a&&(this.frame.canvas.width=a,i=!0),this.frame.canvas.height!==u&&(this.frame.canvas.height=u,i=!0)}return i===!0&&(this.body.emitter.emit("resize",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(n/this.pixelRatio),oldHeight:Math.round(s/this.pixelRatio)}),this._setCameraState()),this.initialized=!0,i}getContext(){return this.frame.canvas.getContext("2d")}_determinePixelRatio(){const e=this.getContext();if(e===void 0)throw new Error("Could not get canvax context");let t=1;typeof window<"u"&&(t=window.devicePixelRatio||1);const i=e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return t/i}_setPixelRatio(){this.pixelRatio=this._determinePixelRatio()}setTransform(){const e=this.getContext();if(e===void 0)throw new Error("Could not get canvax context");e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}_XconvertDOMtoCanvas(e){return(e-this.body.view.translation.x)/this.body.view.scale}_XconvertCanvasToDOM(e){return e*this.body.view.scale+this.body.view.translation.x}_YconvertDOMtoCanvas(e){return(e-this.body.view.translation.y)/this.body.view.scale}_YconvertCanvasToDOM(e){return e*this.body.view.scale+this.body.view.translation.y}canvasToDOM(e){return{x:this._XconvertCanvasToDOM(e.x),y:this._YconvertCanvasToDOM(e.y)}}DOMtoCanvas(e){return{x:this._XconvertDOMtoCanvas(e.x),y:this._YconvertDOMtoCanvas(e.y)}}}function jre(r,e){const t=at({nodes:e,minZoomLevel:Number.MIN_VALUE,maxZoomLevel:1},r??{});if(!tt(t.nodes))throw new TypeError("Nodes has to be an array of ids.");if(t.nodes.length===0&&(t.nodes=e),!(typeof t.minZoomLevel=="number"&&t.minZoomLevel>0))throw new TypeError("Min zoom level has to be a number higher than zero.");if(!(typeof t.maxZoomLevel=="number"&&t.minZoomLevel<=t.maxZoomLevel))throw new TypeError("Max zoom level has to be a number higher than min zoom level.");return t}class Lre{constructor(e,t){var i,n;this.body=e,this.canvas=t,this.animationSpeed=1/this.renderRefreshRate,this.animationEasingFunction="easeInOutQuint",this.easingTime=0,this.sourceScale=0,this.targetScale=0,this.sourceTranslation=0,this.targetTranslation=0,this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0,this.touchTime=0,this.viewFunction=void 0,this.body.emitter.on("fit",z(i=this.fit).call(i,this)),this.body.emitter.on("animationFinished",()=>{this.body.emitter.emit("_stopRendering")}),this.body.emitter.on("unlockNode",z(n=this.releaseNode).call(n,this))}setOptions(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.options=e}fit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;e=jre(e,this.body.nodeIndices);const i=this.canvas.frame.canvas.clientWidth,n=this.canvas.frame.canvas.clientHeight;let s,o;if(i===0||n===0)o=1,s=Bt.getRange(this.body.nodes,e.nodes);else if(t===!0){let l=0;for(const h in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,h)&&this.body.nodes[h].predefinedPosition===!0&&(l+=1);if(l>.5*this.body.nodeIndices.length){this.fit(e,!1);return}s=Bt.getRange(this.body.nodes,e.nodes),o=12.662/(this.body.nodeIndices.length+7.4147)+.0964822;const d=Math.min(i/600,n/600);o*=d}else{this.body.emitter.emit("_resizeNodes"),s=Bt.getRange(this.body.nodes,e.nodes);const l=Math.abs(s.maxX-s.minX)*1.1,c=Math.abs(s.maxY-s.minY)*1.1,d=i/l,h=n/c;o=d<=h?d:h}o>e.maxZoomLevel?o=e.maxZoomLevel:o1&&arguments[1]!==void 0?arguments[1]:{};if(this.body.nodes[e]!==void 0){const i={x:this.body.nodes[e].x,y:this.body.nodes[e].y};t.position=i,t.lockedOnNode=e,this.moveTo(t)}else console.error("Node: "+e+" cannot be found.")}moveTo(e){if(e===void 0){e={};return}if(e.offset!=null){if(e.offset.x!=null){if(e.offset.x=+e.offset.x,!tn(e.offset.x))throw new TypeError('The option "offset.x" has to be a finite number.')}else e.offset.x=0;if(e.offset.y!=null){if(e.offset.y=+e.offset.y,!tn(e.offset.y))throw new TypeError('The option "offset.y" has to be a finite number.')}else e.offset.x=0}else e.offset={x:0,y:0};if(e.position!=null){if(e.position.x!=null){if(e.position.x=+e.position.x,!tn(e.position.x))throw new TypeError('The option "position.x" has to be a finite number.')}else e.position.x=0;if(e.position.y!=null){if(e.position.y=+e.position.y,!tn(e.position.y))throw new TypeError('The option "position.y" has to be a finite number.')}else e.position.x=0}else e.position=this.getViewPosition();if(e.scale!=null){if(e.scale=+e.scale,!(e.scale>0))throw new TypeError('The option "scale" has to be a number greater than zero.')}else e.scale=this.body.view.scale;e.animation===void 0&&(e.animation={duration:0}),e.animation===!1&&(e.animation={duration:0}),e.animation===!0&&(e.animation={}),e.animation.duration===void 0&&(e.animation.duration=1e3),e.animation.easingFunction===void 0&&(e.animation.easingFunction="easeInOutQuad"),this.animateView(e)}animateView(e){if(e===void 0)return;this.animationEasingFunction=e.animation.easingFunction,this.releaseNode(),e.locked===!0&&(this.lockedOnNodeId=e.lockedOnNode,this.lockedOnNodeOffset=e.offset),this.easingTime!=0&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=e.scale,this.body.view.scale=this.targetScale;const t=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:t.x-e.position.x,y:t.y-e.position.y};if(this.targetTranslation={x:this.sourceTranslation.x+i.x*this.targetScale+e.offset.x,y:this.sourceTranslation.y+i.y*this.targetScale+e.offset.y},e.animation.duration===0)if(this.lockedOnNodeId!=null){var n;this.viewFunction=z(n=this._lockedRedraw).call(n,this),this.body.emitter.on("initRedraw",this.viewFunction)}else this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw");else{var s;this.animationSpeed=1/(60*e.animation.duration*.001)||1/60,this.animationEasingFunction=e.animation.easingFunction,this.viewFunction=z(s=this._transitionRedraw).call(s,this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering")}}_lockedRedraw(){const e={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},t=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:t.x-e.x,y:t.y-e.y},n=this.body.view.translation,s={x:n.x+i.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:n.y+i.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=s}releaseNode(){this.lockedOnNodeId!==void 0&&this.viewFunction!==void 0&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}_transitionRedraw(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.easingTime+=this.animationSpeed,this.easingTime=e===!0?1:this.easingTime;const t=YQ[this.animationEasingFunction](this.easingTime);if(this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*t,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*t,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*t},this.easingTime>=1){if(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,this.lockedOnNodeId!=null){var i;this.viewFunction=z(i=this._lockedRedraw).call(i,this),this.body.emitter.on("initRedraw",this.viewFunction)}this.body.emitter.emit("animationFinished")}}getScale(){return this.body.view.scale}getViewPosition(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}function tB(r){var e=r&&r.preventDefault||!1,t=r&&r.container||window,i={},n={keydown:{},keyup:{}},s={},o;for(o=97;o<=122;o++)s[String.fromCharCode(o)]={code:65+(o-97),shift:!1};for(o=65;o<=90;o++)s[String.fromCharCode(o)]={code:o,shift:!0};for(o=0;o<=9;o++)s[""+o]={code:48+o,shift:!1};for(o=1;o<=12;o++)s["F"+o]={code:111+o,shift:!1};for(o=0;o<=9;o++)s["num"+o]={code:96+o,shift:!1};s["num*"]={code:106,shift:!1},s["num+"]={code:107,shift:!1},s["num-"]={code:109,shift:!1},s["num/"]={code:111,shift:!1},s["num."]={code:110,shift:!1},s.left={code:37,shift:!1},s.up={code:38,shift:!1},s.right={code:39,shift:!1},s.down={code:40,shift:!1},s.space={code:32,shift:!1},s.enter={code:13,shift:!1},s.shift={code:16,shift:void 0},s.esc={code:27,shift:!1},s.backspace={code:8,shift:!1},s.tab={code:9,shift:!1},s.ctrl={code:17,shift:!1},s.alt={code:18,shift:!1},s.delete={code:46,shift:!1},s.pageup={code:33,shift:!1},s.pagedown={code:34,shift:!1},s["="]={code:187,shift:!1},s["-"]={code:189,shift:!1},s["]"]={code:221,shift:!1},s["["]={code:219,shift:!1};var a=function(c){l(c,"keydown")},u=function(c){l(c,"keyup")},l=function(c,d){if(n[d][c.keyCode]!==void 0){for(var h=n[d][c.keyCode],f=0;f{this.activated=!0,this.configureKeyboardBindings()}),this.body.emitter.on("deactivate",()=>{this.activated=!1,this.configureKeyboardBindings()}),this.body.emitter.on("destroy",()=>{this.keycharm!==void 0&&this.keycharm.destroy()}),this.options={}}setOptions(e){e!==void 0&&(this.options=e,this.create())}create(){this.options.navigationButtons===!0?this.iconsCreated===!1&&this.loadNavigationElements():this.iconsCreated===!0&&this.cleanNavigation(),this.configureKeyboardBindings()}cleanNavigation(){if(this.navigationHammers.length!=0){for(let e=0;e{this._stopMovement()}),this.navigationHammers.push(s),this.iconsCreated=!0}bindToRedraw(e){if(this.boundFunctions[e]===void 0){var t;this.boundFunctions[e]=z(t=this[e]).call(t,this),this.body.emitter.on("initRedraw",this.boundFunctions[e]),this.body.emitter.emit("_startRendering")}}unbindFromRedraw(e){this.boundFunctions[e]!==void 0&&(this.body.emitter.off("initRedraw",this.boundFunctions[e]),this.body.emitter.emit("_stopRendering"),delete this.boundFunctions[e])}_fit(){new Date().valueOf()-this.touchTime>700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=new Date().valueOf())}_stopMovement(){for(const e in this.boundFunctions)Object.prototype.hasOwnProperty.call(this.boundFunctions,e)&&(this.body.emitter.off("initRedraw",this.boundFunctions[e]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}_moveUp(){this.body.view.translation.y+=this.options.keyboard.speed.y}_moveDown(){this.body.view.translation.y-=this.options.keyboard.speed.y}_moveLeft(){this.body.view.translation.x+=this.options.keyboard.speed.x}_moveRight(){this.body.view.translation.x-=this.options.keyboard.speed.x}_zoomIn(){const e=this.body.view.scale,t=this.body.view.scale*(1+this.options.keyboard.speed.zoom),i=this.body.view.translation,n=t/e,s=(1-n)*this.canvas.canvasViewCenter.x+i.x*n,o=(1-n)*this.canvas.canvasViewCenter.y+i.y*n;this.body.view.scale=t,this.body.view.translation={x:s,y:o},this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale,pointer:null})}_zoomOut(){const e=this.body.view.scale,t=this.body.view.scale/(1+this.options.keyboard.speed.zoom),i=this.body.view.translation,n=t/e,s=(1-n)*this.canvas.canvasViewCenter.x+i.x*n,o=(1-n)*this.canvas.canvasViewCenter.y+i.y*n;this.body.view.scale=t,this.body.view.translation={x:s,y:o},this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale,pointer:null})}configureKeyboardBindings(){if(this.keycharm!==void 0&&this.keycharm.destroy(),this.options.keyboard.enabled===!0&&(this.options.keyboard.bindToWindow===!0?this.keycharm=tB({container:window,preventDefault:!0}):this.keycharm=tB({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),this.activated===!0)){var e,t,i,n,s,o,a,u,l,c,d,h,f,v,p,b,m,g,w,y,S,O,I,_;z(e=this.keycharm).call(e,"up",()=>{this.bindToRedraw("_moveUp")},"keydown"),z(t=this.keycharm).call(t,"down",()=>{this.bindToRedraw("_moveDown")},"keydown"),z(i=this.keycharm).call(i,"left",()=>{this.bindToRedraw("_moveLeft")},"keydown"),z(n=this.keycharm).call(n,"right",()=>{this.bindToRedraw("_moveRight")},"keydown"),z(s=this.keycharm).call(s,"=",()=>{this.bindToRedraw("_zoomIn")},"keydown"),z(o=this.keycharm).call(o,"num+",()=>{this.bindToRedraw("_zoomIn")},"keydown"),z(a=this.keycharm).call(a,"num-",()=>{this.bindToRedraw("_zoomOut")},"keydown"),z(u=this.keycharm).call(u,"-",()=>{this.bindToRedraw("_zoomOut")},"keydown"),z(l=this.keycharm).call(l,"[",()=>{this.bindToRedraw("_zoomOut")},"keydown"),z(c=this.keycharm).call(c,"]",()=>{this.bindToRedraw("_zoomIn")},"keydown"),z(d=this.keycharm).call(d,"pageup",()=>{this.bindToRedraw("_zoomIn")},"keydown"),z(h=this.keycharm).call(h,"pagedown",()=>{this.bindToRedraw("_zoomOut")},"keydown"),z(f=this.keycharm).call(f,"up",()=>{this.unbindFromRedraw("_moveUp")},"keyup"),z(v=this.keycharm).call(v,"down",()=>{this.unbindFromRedraw("_moveDown")},"keyup"),z(p=this.keycharm).call(p,"left",()=>{this.unbindFromRedraw("_moveLeft")},"keyup"),z(b=this.keycharm).call(b,"right",()=>{this.unbindFromRedraw("_moveRight")},"keyup"),z(m=this.keycharm).call(m,"=",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),z(g=this.keycharm).call(g,"num+",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),z(w=this.keycharm).call(w,"num-",()=>{this.unbindFromRedraw("_zoomOut")},"keyup"),z(y=this.keycharm).call(y,"-",()=>{this.unbindFromRedraw("_zoomOut")},"keyup"),z(S=this.keycharm).call(S,"[",()=>{this.unbindFromRedraw("_zoomOut")},"keyup"),z(O=this.keycharm).call(O,"]",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),z(I=this.keycharm).call(I,"pageup",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),z(_=this.keycharm).call(_,"pagedown",()=>{this.unbindFromRedraw("_zoomOut")},"keyup")}}}class Hre{constructor(e,t,i){var n,s,o,a,u,l,c,d,h,f,v,p,b;this.body=e,this.canvas=t,this.selectionHandler=i,this.navigationHandler=new zre(e,t),this.body.eventListeners.onTap=z(n=this.onTap).call(n,this),this.body.eventListeners.onTouch=z(s=this.onTouch).call(s,this),this.body.eventListeners.onDoubleTap=z(o=this.onDoubleTap).call(o,this),this.body.eventListeners.onHold=z(a=this.onHold).call(a,this),this.body.eventListeners.onDragStart=z(u=this.onDragStart).call(u,this),this.body.eventListeners.onDrag=z(l=this.onDrag).call(l,this),this.body.eventListeners.onDragEnd=z(c=this.onDragEnd).call(c,this),this.body.eventListeners.onMouseWheel=z(d=this.onMouseWheel).call(d,this),this.body.eventListeners.onPinch=z(h=this.onPinch).call(h,this),this.body.eventListeners.onMouseMove=z(f=this.onMouseMove).call(f,this),this.body.eventListeners.onRelease=z(v=this.onRelease).call(v,this),this.body.eventListeners.onContext=z(p=this.onContext).call(p,this),this.touchTime=0,this.drag={},this.pinch={},this.popup=void 0,this.popupObj=void 0,this.popupTimer=void 0,this.body.functions.getPointer=z(b=this.getPointer).call(b,this),this.options={},this.defaultOptions={dragNodes:!0,dragView:!0,hover:!1,keyboard:{enabled:!1,speed:{x:10,y:10,zoom:.02},bindToWindow:!0,autoFocus:!0},navigationButtons:!1,tooltipDelay:300,zoomView:!0,zoomSpeed:1},at(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){this.body.emitter.on("destroy",()=>{clearTimeout(this.popupTimer),delete this.body.functions.getPointer})}setOptions(e){e!==void 0&&(cu(["hideEdgesOnDrag","hideEdgesOnZoom","hideNodesOnDrag","keyboard","multiselect","selectable","selectConnectedEdges"],this.options,e),sr(this.options,e,"keyboard"),e.tooltip&&(at(this.options.tooltip,e.tooltip),e.tooltip.color&&(this.options.tooltip.color=V_(e.tooltip.color)))),this.navigationHandler.setOptions(this.options)}getPointer(e){return{x:e.x-UQ(this.canvas.frame.canvas),y:e.y-VQ(this.canvas.frame.canvas)}}onTouch(e){new Date().valueOf()-this.touchTime>50&&(this.drag.pointer=this.getPointer(e.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=new Date().valueOf())}onTap(e){const t=this.getPointer(e.center),i=this.selectionHandler.options.multiselect&&(e.changedPointers[0].ctrlKey||e.changedPointers[0].metaKey);this.checkSelectionChanges(t,i),this.selectionHandler.commitAndEmit(t,e),this.selectionHandler.generateClickEvent("click",e,t)}onDoubleTap(e){const t=this.getPointer(e.center);this.selectionHandler.generateClickEvent("doubleClick",e,t)}onHold(e){const t=this.getPointer(e.center),i=this.selectionHandler.options.multiselect;this.checkSelectionChanges(t,i),this.selectionHandler.commitAndEmit(t,e),this.selectionHandler.generateClickEvent("click",e,t),this.selectionHandler.generateClickEvent("hold",e,t)}onRelease(e){if(new Date().valueOf()-this.touchTime>10){const t=this.getPointer(e.center);this.selectionHandler.generateClickEvent("release",e,t),this.touchTime=new Date().valueOf()}}onContext(e){const t=this.getPointer({x:e.clientX,y:e.clientY});this.selectionHandler.generateClickEvent("oncontext",e,t)}checkSelectionChanges(e){(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1)===!0?this.selectionHandler.selectAdditionalOnPoint(e):this.selectionHandler.selectOnPoint(e)}_determineDifference(e,t){const i=function(n,s){const o=[];for(let a=0;a{const a=o.node;o.xFixed===!1&&(a.x=this.canvas._XconvertDOMtoCanvas(this.canvas._XconvertCanvasToDOM(o.x)+n)),o.yFixed===!1&&(a.y=this.canvas._YconvertDOMtoCanvas(this.canvas._YconvertCanvasToDOM(o.y)+s))}),this.body.emitter.emit("startSimulation")}else{if(e.srcEvent.shiftKey){if(this.selectionHandler.generateClickEvent("dragging",e,t,void 0,!0),this.drag.pointer===void 0){this.onDragStart(e);return}this.body.selectionBox.position.end={x:this.canvas._XconvertDOMtoCanvas(t.x),y:this.canvas._YconvertDOMtoCanvas(t.y)},this.body.emitter.emit("_requestRedraw")}if(this.options.dragView===!0&&!e.srcEvent.shiftKey){if(this.selectionHandler.generateClickEvent("dragging",e,t,void 0,!0),this.drag.pointer===void 0){this.onDragStart(e);return}const n=t.x-this.drag.pointer.x,s=t.y-this.drag.pointer.y;this.body.view.translation={x:this.drag.translation.x+n,y:this.drag.translation.y+s},this.body.emitter.emit("_requestRedraw")}}}onDragEnd(e){if(this.drag.dragging=!1,this.body.selectionBox.show){var t;this.body.selectionBox.show=!1;const i=this.body.selectionBox.position,n={minX:Math.min(i.start.x,i.end.x),minY:Math.min(i.start.y,i.end.y),maxX:Math.max(i.start.x,i.end.x),maxY:Math.max(i.start.y,i.end.y)},s=Vt(t=this.body.nodeIndices).call(t,a=>{const u=this.body.nodes[a];return u.x>=n.minX&&u.x<=n.maxX&&u.y>=n.minY&&u.y<=n.maxY});Le(s).call(s,a=>this.selectionHandler.selectObject(this.body.nodes[a]));const o=this.getPointer(e.center);this.selectionHandler.commitAndEmit(o,e),this.selectionHandler.generateClickEvent("dragEnd",e,this.getPointer(e.center),void 0,!0),this.body.emitter.emit("_requestRedraw")}else{const i=this.drag.selection;i&&i.length?(Le(i).call(i,function(n){n.node.options.fixed.x=n.xFixed,n.node.options.fixed.y=n.yFixed}),this.selectionHandler.generateClickEvent("dragEnd",e,this.getPointer(e.center)),this.body.emitter.emit("startSimulation")):(this.selectionHandler.generateClickEvent("dragEnd",e,this.getPointer(e.center),void 0,!0),this.body.emitter.emit("_requestRedraw"))}}onPinch(e){const t=this.getPointer(e.center);this.drag.pinched=!0,this.pinch.scale===void 0&&(this.pinch.scale=1);const i=this.pinch.scale*e.scale;this.zoom(i,t)}zoom(e,t){if(this.options.zoomView===!0){const i=this.body.view.scale;e<1e-5&&(e=1e-5),e>10&&(e=10);let n;this.drag!==void 0&&this.drag.dragging===!0&&(n=this.canvas.DOMtoCanvas(this.drag.pointer));const s=this.body.view.translation,o=e/i,a=(1-o)*t.x+s.x*o,u=(1-o)*t.y+s.y*o;if(this.body.view.scale=e,this.body.view.translation={x:a,y:u},n!=null){const l=this.canvas.canvasToDOM(n);this.drag.pointer.x=l.x,this.drag.pointer.y=l.y}this.body.emitter.emit("_requestRedraw"),ithis._checkShowPopup(t),this.options.tooltipDelay))),this.options.hover===!0&&this.selectionHandler.hoverObject(e,t)}_checkShowPopup(e){const t=this.canvas._XconvertDOMtoCanvas(e.x),i=this.canvas._YconvertDOMtoCanvas(e.y),n={left:t,top:i,right:t,bottom:i},s=this.popupObj===void 0?void 0:this.popupObj.id;let o=!1,a="node";if(this.popupObj===void 0){const u=this.body.nodeIndices,l=this.body.nodes;let c;const d=[];for(let h=0;h0&&(this.popupObj=l[d[d.length-1]],o=!0)}if(this.popupObj===void 0&&o===!1){const u=this.body.edgeIndices,l=this.body.edges;let c;const d=[];for(let h=0;h0&&(this.popupObj=l[d[d.length-1]],a="edge")}this.popupObj!==void 0?this.popupObj.id!==s&&(this.popup===void 0&&(this.popup=new iZ(this.canvas.frame)),this.popup.popupTargetType=a,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(e.x+3,e.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show(),this.body.emitter.emit("showPopup",this.popupObj.id)):this.popup!==void 0&&(this.popup.hide(),this.body.emitter.emit("hidePopup"))}_checkHidePopup(e){const t=this.selectionHandler._pointerToPositionObject(e);let i=!1;if(this.popup.popupTargetType==="node"){if(this.body.nodes[this.popup.popupTargetId]!==void 0&&(i=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(t),i===!0)){const n=this.selectionHandler.getNodeAt(e);i=n===void 0?!1:n.id===this.popup.popupTargetId}}else this.selectionHandler.getNodeAt(e)===void 0&&this.body.edges[this.popup.popupTargetId]!==void 0&&(i=this.body.edges[this.popup.popupTargetId].isOverlappingWith(t));i===!1&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}var rB={},iB={},nB;function Wre(){if(nB)return iB;nB=1;var r=_0(),e=$5();return r("Set",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),iB}var sB;function Ure(){return sB||(sB=1,Wre()),rB}var oB={},R1,aB;function Nn(){if(aB)return R1;aB=1;var r=Ns(),e=TypeError;return R1=function(t){if(typeof t=="object"&&"size"in t&&"has"in t&&"add"in t&&"delete"in t&&"keys"in t)return t;throw new e(r(t)+" is not a set")},R1}var C1,uB;function Fn(){if(uB)return C1;uB=1;var r=ir(),e=P5(),t=r("Set"),i=t.prototype;return C1={Set:t,add:e("add",1),has:e("has",1),remove:e("delete",1),proto:i},C1}var x1,lB;function kn(){if(lB)return x1;lB=1;var r=Jt();return x1=function(e,t,i){for(var n=i?e:e.iterator,s=e.next,o,a;!(o=r(s,n)).done;)if(a=t(o.value),a!==void 0)return a},x1}var q1,cB;function Oa(){if(cB)return q1;cB=1;var r=kn();return q1=function(e,t,i){return i?r(e.keys(),t,!0):e.forEach(t)},q1}var D1,dB;function $0(){if(dB)return D1;dB=1;var r=Fn(),e=Oa(),t=r.Set,i=r.add;return D1=function(n){var s=new t;return e(n,function(o){i(s,o)}),s},D1}var A1,hB;function Ia(){return hB||(hB=1,A1=function(r){return r.size}),A1}var M1,fB;function Vre(){return fB||(fB=1,M1=function(r){return{iterator:r,next:r.next,done:!1}}),M1}var N1,vB;function Bn(){if(vB)return N1;vB=1;var r=hi(),e=zr(),t=Jt(),i=js(),n=Vre(),s="Invalid size",o=RangeError,a=TypeError,u=Math.max,l=function(c,d){this.set=c,this.size=u(d,0),this.has=r(c.has),this.keys=r(c.keys)};return l.prototype={getIterator:function(){return n(e(t(this.keys,this.set)))},includes:function(c){return t(this.has,this.set,c)}},N1=function(c){e(c);var d=+c.size;if(d!==d)throw new a(s);var h=i(d);if(h<0)throw new o(s);return new l(c,h)},N1}var F1,pB;function Kre(){if(pB)return F1;pB=1;var r=Nn(),e=Fn(),t=$0(),i=Ia(),n=Bn(),s=Oa(),o=kn(),a=e.has,u=e.remove;return F1=function(c){var d=r(this),h=n(c),f=t(d);return i(d)<=h.size?s(d,function(v){h.includes(v)&&u(f,v)}):o(h.getIterator(),function(v){a(f,v)&&u(f,v)}),f},F1}var k1,gB;function jn(){return gB||(gB=1,k1=function(){return!1}),k1}var mB;function Gre(){if(mB)return oB;mB=1;var r=ce(),e=Kre(),t=$e(),i=jn(),n=!i("difference",function(o){return o.size===0}),s=n||t(function(){var o={size:1,has:function(){return!0},keys:function(){var u=0;return{next:function(){var l=u++>1;return a.has(1)&&a.clear(),{done:l,value:2}}}}},a=new Set([1,2,3,4]);return a.difference(o).size!==3});return r({target:"Set",proto:!0,real:!0,forced:s},{difference:e}),oB}var yB={},B1,bB;function Yre(){if(bB)return B1;bB=1;var r=Nn(),e=Fn(),t=Ia(),i=Bn(),n=Oa(),s=kn(),o=e.Set,a=e.add,u=e.has;return B1=function(c){var d=r(this),h=i(c),f=new o;return t(d)>h.size?s(h.getIterator(),function(v){u(d,v)&&a(f,v)}):n(d,function(v){h.includes(v)&&a(f,v)}),f},B1}var _B;function Xre(){if(_B)return yB;_B=1;var r=ce(),e=$e(),t=Yre(),i=jn(),n=!i("intersection",function(s){return s.size===2&&s.has(1)&&s.has(2)})||e(function(){return String(Array.from(new Set([1,2,3]).intersection(new Set([3,2]))))!=="3,2"});return r({target:"Set",proto:!0,real:!0,forced:n},{intersection:t}),yB}var wB={},j1,EB;function Jre(){if(EB)return j1;EB=1;var r=Nn(),e=Fn().has,t=Ia(),i=Bn(),n=Oa(),s=kn(),o=y0();return j1=function(u){var l=r(this),c=i(u);if(t(l)<=c.size)return n(l,function(h){if(c.includes(h))return!1},!0)!==!1;var d=c.getIterator();return s(d,function(h){if(e(l,h))return o(d,"normal",!1)})!==!1},j1}var SB;function Qre(){if(SB)return wB;SB=1;var r=ce(),e=Jre(),t=jn(),i=!t("isDisjointFrom",function(n){return!n});return r({target:"Set",proto:!0,real:!0,forced:i},{isDisjointFrom:e}),wB}var OB={},L1,IB;function Zre(){if(IB)return L1;IB=1;var r=Nn(),e=Ia(),t=Oa(),i=Bn();return L1=function(s){var o=r(this),a=i(s);return e(o)>a.size?!1:t(o,function(u){if(!a.includes(u))return!1},!0)!==!1},L1}var TB;function eie(){if(TB)return OB;TB=1;var r=ce(),e=Zre(),t=jn(),i=!t("isSubsetOf",function(n){return n});return r({target:"Set",proto:!0,real:!0,forced:i},{isSubsetOf:e}),OB}var $B={},z1,PB;function tie(){if(PB)return z1;PB=1;var r=Nn(),e=Fn().has,t=Ia(),i=Bn(),n=kn(),s=y0();return z1=function(a){var u=r(this),l=i(a);if(t(u)0&&arguments[0]!==void 0?arguments[0]:()=>{};Eo(this,Yi,new YB),Eo(this,Xi,new YB),Eo(this,Z1,void 0),Q_(Z1,this,e)}get sizeNodes(){return We(Yi,this).size}get sizeEdges(){return We(Xi,this).size}getNodes(){return We(Yi,this).getSelection()}getEdges(){return We(Xi,this).getSelection()}addNodes(){We(Yi,this).add(...arguments)}addEdges(){We(Xi,this).add(...arguments)}deleteNodes(e){We(Yi,this).delete(e)}deleteEdges(e){We(Xi,this).delete(e)}clear(){We(Yi,this).clear(),We(Xi,this).clear()}commit(){const e={nodes:We(Yi,this).commit(),edges:We(Xi,this).commit()};for(var t=arguments.length,i=new Array(t),n=0;n{this.updateSelection()})}setOptions(e){e!==void 0&&Gs(["multiselect","hoverConnectedEdges","selectable","selectConnectedEdges"],this.options,e)}selectOnPoint(e){let t=!1;if(this.options.selectable===!0){const i=this.getNodeAt(e)||this.getEdgeAt(e);this.unselectAll(),i!==void 0&&(t=this.selectObject(i)),this.body.emitter.emit("_requestRedraw")}return t}selectAdditionalOnPoint(e){let t=!1;if(this.options.selectable===!0){const i=this.getNodeAt(e)||this.getEdgeAt(e);i!==void 0&&(t=!0,i.isSelected()===!0?this.deselectObject(i):this.selectObject(i),this.body.emitter.emit("_requestRedraw"))}return t}_initBaseEvent(e,t){const i={};return i.pointer={DOM:{x:t.x,y:t.y},canvas:this.canvas.DOMtoCanvas(t)},i.event=e,i}generateClickEvent(e,t,i,n){let s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;const o=this._initBaseEvent(t,i);if(s===!0)o.nodes=[],o.edges=[];else{const a=this.getSelection();o.nodes=a.nodes,o.edges=a.edges}n!==void 0&&(o.previousSelection=n),e=="click"&&(o.items=this.getClickedItems(i)),t.controlEdge!==void 0&&(o.controlEdge=t.controlEdge),this.body.emitter.emit(e,o)}selectObject(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.options.selectConnectedEdges;return e!==void 0?(e instanceof Ke?(t===!0&&this._selectionAccumulator.addEdges(...e.edges),this._selectionAccumulator.addNodes(e)):this._selectionAccumulator.addEdges(e),!0):!1}deselectObject(e){e.isSelected()===!0&&(e.selected=!1,this._removeFromSelection(e))}_getAllNodesOverlappingWith(e){const t=[],i=this.body.nodes;for(let n=0;n1&&arguments[1]!==void 0?arguments[1]:!0;const i=this._pointerToPositionObject(e),n=this._getAllNodesOverlappingWith(i);if(n.length>0)return t===!0?this.body.nodes[n[n.length-1]]:n[n.length-1]}_getEdgesOverlappingWith(e,t){const i=this.body.edges;for(let n=0;n1&&arguments[1]!==void 0?arguments[1]:!0;const i=this.canvas.DOMtoCanvas(e);let n=10,s=null;const o=this.body.edges;for(let a=0;a0&&(this.generateClickEvent("deselectEdge",t,e,s),i=!0),n.nodes.deleted.length>0&&(this.generateClickEvent("deselectNode",t,e,s),i=!0),n.nodes.added.length>0&&(this.generateClickEvent("selectNode",t,e),i=!0),n.edges.added.length>0&&(this.generateClickEvent("selectEdge",t,e),i=!0),i===!0&&this.generateClickEvent("select",t,e)}getSelection(){return{nodes:this.getSelectedNodeIds(),edges:this.getSelectedEdgeIds()}}getSelectedNodes(){return this._selectionAccumulator.getNodes()}getSelectedEdges(){return this._selectionAccumulator.getEdges()}getSelectedNodeIds(){var e;return ms(e=this._selectionAccumulator.getNodes()).call(e,t=>t.id)}getSelectedEdgeIds(){var e;return ms(e=this._selectionAccumulator.getEdges()).call(e,t=>t.id)}setSelection(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!e||!e.nodes&&!e.edges)throw new TypeError("Selection must be an object with nodes and/or edges properties");if((t.unselectAll||t.unselectAll===void 0)&&this.unselectAll(),e.nodes)for(const i of e.nodes){const n=this.body.nodes[i];if(!n)throw new RangeError('Node with id "'+i+'" not found');this.selectObject(n,t.highlightEdges)}if(e.edges)for(const i of e.edges){const n=this.body.edges[i];if(!n)throw new RangeError('Edge with id "'+i+'" not found');this.selectObject(n)}this.body.emitter.emit("_requestRedraw"),this._selectionAccumulator.commit()}selectNodes(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!e||e.length===void 0)throw"Selection must be an array with ids";this.setSelection({nodes:e},{highlightEdges:t})}selectEdges(e){if(!e||e.length===void 0)throw"Selection must be an array with ids";this.setSelection({edges:e})}updateSelection(){for(const e in this._selectionAccumulator.getNodes())Object.prototype.hasOwnProperty.call(this.body.nodes,e.id)||this._selectionAccumulator.deleteNodes(e);for(const e in this._selectionAccumulator.getEdges())Object.prototype.hasOwnProperty.call(this.body.edges,e.id)||this._selectionAccumulator.deleteEdges(e)}getClickedItems(e){const t=this.canvas.DOMtoCanvas(e),i=[],n=this.body.nodeIndices,s=this.body.nodes;for(let u=n.length-1;u>=0;u--){const c=s[n[u]].getItemsOnPoint(t);i.push.apply(i,c)}const o=this.body.edgeIndices,a=this.body.edges;for(let u=o.length-1;u>=0;u--){const c=a[o[u]].getItemsOnPoint(t);i.push.apply(i,c)}return i}}var XB={},e_,JB;function wie(){if(JB)return e_;JB=1;var r=Ls(),e=Math.floor,t=function(i,n){var s=i.length;if(s<8)for(var o=1,a,u;o0;)i[u]=i[--u];u!==o++&&(i[u]=a)}else for(var l=e(s/2),c=t(r(i,0,l),n),d=t(r(i,l),n),h=c.length,f=d.length,v=0,p=0;v3)){if(d)return!0;if(f)return f<603;var I="",_,E,T,R;for(_=65;_<76;_++){switch(E=String.fromCharCode(_),_){case 66:case 69:case 70:case 72:T=3;break;case 68:case 71:T=4;break;default:T=2}for(R=0;R<47;R++)v.push({k:E+R,v:T})}for(v.sort(function(x,C){return C.v-x.v}),R=0;Ro(E)?1:-1}};return r({target:"Array",proto:!0,forced:S},{sort:function(_){_!==void 0&&t(_);var E=i(this);if(y)return _===void 0?p(E):p(E,_);var T=[],R=n(E),x,C;for(C=0;C=0:v>p;p+=b)p in f&&(d=l(d,f[p],p,h));return d}};return u_={left:o(!1),right:o(!0)},u_}var l_,uj;function qie(){if(uj)return l_;uj=1;var r=j3();return l_=r==="NODE",l_}var lj;function Die(){if(lj)return oj;lj=1;var r=ce(),e=xie().left,t=Vs(),i=ca(),n=qie(),s=!n&&i>79&&i<83,o=s||!t("reduce");return r({target:"Array",proto:!0,forced:o},{reduce:function(u){var l=arguments.length;return e(this,u,l,l>1?arguments[1]:void 0)}}),oj}var c_,cj;function Aie(){if(cj)return c_;cj=1,Die();var r=Pt();return c_=r("Array","reduce"),c_}var d_,dj;function Mie(){if(dj)return d_;dj=1;var r=ht(),e=Aie(),t=Array.prototype;return d_=function(i){var n=i.reduce;return i===t||r(t,i)&&n===t.reduce?e:n},d_}var h_,hj;function Nie(){if(hj)return h_;hj=1;var r=Mie();return h_=r,h_}var f_,fj;function Fie(){return fj||(fj=1,f_=Nie()),f_}var kie=Fie(),L5=pe(kie);class z5{abstract(){throw new Error("Can't instantiate abstract class!")}fake_use(){}curveType(){return this.abstract()}getPosition(e){return this.fake_use(e),this.abstract()}setPosition(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;this.fake_use(e,t,i),this.abstract()}getTreeSize(e){return this.fake_use(e),this.abstract()}sort(e){this.fake_use(e),this.abstract()}fix(e,t){this.fake_use(e,t),this.abstract()}shift(e,t){this.fake_use(e,t),this.abstract()}}class Bie extends z5{constructor(e){super(),this.layout=e}curveType(){return"horizontal"}getPosition(e){return e.x}setPosition(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;i!==void 0&&this.layout.hierarchical.addToOrdering(e,i),e.x=t}getTreeSize(e){const t=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,e);return{min:t.min_x,max:t.max_x}}sort(e){cs(e).call(e,function(t,i){return t.x-i.x})}fix(e,t){e.y=this.layout.options.hierarchical.levelSeparation*t,e.options.fixed.y=!0}shift(e,t){this.layout.body.nodes[e].x+=t}}class jie extends z5{constructor(e){super(),this.layout=e}curveType(){return"vertical"}getPosition(e){return e.y}setPosition(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;i!==void 0&&this.layout.hierarchical.addToOrdering(e,i),e.y=t}getTreeSize(e){const t=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,e);return{min:t.min_y,max:t.max_y}}sort(e){cs(e).call(e,function(t,i){return t.y-i.y})}fix(e,t){e.x=this.layout.options.hierarchical.levelSeparation*t,e.options.fixed.x=!0}shift(e,t){this.layout.body.nodes[e].y+=t}}var vj={},pj;function Lie(){if(pj)return vj;pj=1;var r=ce(),e=Wi().every,t=Vs(),i=t("every");return r({target:"Array",proto:!0,forced:!i},{every:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),vj}var v_,gj;function zie(){if(gj)return v_;gj=1,Lie();var r=Pt();return v_=r("Array","every"),v_}var p_,mj;function Hie(){if(mj)return p_;mj=1;var r=ht(),e=zie(),t=Array.prototype;return p_=function(i){var n=i.every;return i===t||r(t,i)&&n===t.every?e:n},p_}var g_,yj;function Wie(){if(yj)return g_;yj=1;var r=Hie();return g_=r,g_}var m_,bj;function Uie(){return bj||(bj=1,m_=Wie()),m_}var Vie=Uie(),H5=pe(Vie);function Kie(r,e){const t=new Ei;return Le(r).call(r,i=>{var n;Le(n=i.edges).call(n,s=>{s.connected&&t.add(s)})}),Le(t).call(t,i=>{const n=i.from.id,s=i.to.id;e[n]==null&&(e[n]=0),(e[s]==null||e[n]>=e[s])&&(e[s]=e[n]+1)}),e}function Gie(r){return W5(e=>{var t,i;return H5(t=Vt(i=e.edges).call(i,n=>r.has(n.toId))).call(t,n=>n.to===e)},(e,t)=>t>e,"from",r)}function Yie(r){return W5(e=>{var t,i;return H5(t=Vt(i=e.edges).call(i,n=>r.has(n.toId))).call(t,n=>n.from===e)},(e,t)=>td+1+h.edges.length,0),a=t+"Id",u=t==="to"?1:-1;for(const[d,h]of i){if(!i.has(d)||!r(h))continue;s[d]=0;const f=[h];let v=0,p;for(;p=f.pop();){var l,c;if(!i.has(d))continue;const b=s[p.id]+u;if(Le(l=Vt(c=p.edges).call(c,m=>m.connected&&m.to!==m.from&&m[t]!==p&&i.has(m.toId)&&i.has(m.fromId))).call(l,m=>{const g=m[a],w=s[g];(w==null||e(b,w))&&(s[g]=b,f.push(m[t]))}),v>o)return Kie(i,s);++v}}return s}class Xie{constructor(){this.childrenReference={},this.parentReference={},this.trees={},this.distributionOrdering={},this.levels={},this.distributionIndex={},this.isTree=!1,this.treeIndex=-1}addRelation(e,t){this.childrenReference[e]===void 0&&(this.childrenReference[e]=[]),this.childrenReference[e].push(t),this.parentReference[t]===void 0&&(this.parentReference[t]=[]),this.parentReference[t].push(e)}checkIfTree(){for(const e in this.parentReference)if(this.parentReference[e].length>1){this.isTree=!1;return}this.isTree=!0}numTrees(){return this.treeIndex+1}setTreeIndex(e,t){t!==void 0&&this.trees[e.id]===void 0&&(this.trees[e.id]=t,this.treeIndex=Math.max(t,this.treeIndex))}ensureLevel(e){this.levels[e]===void 0&&(this.levels[e]=0)}getMaxLevel(e){const t={},i=n=>{if(t[n]!==void 0)return t[n];let s=this.levels[n];if(this.childrenReference[n]){const o=this.childrenReference[n];if(o.length>0)for(let a=0;as-o);for(const s of n)t.set(s,i++);for(const s in this.levels)Object.prototype.hasOwnProperty.call(this.levels,s)&&(this.levels[s]=t.get(this.levels[s]))}getTreeSize(e,t){let i=1e9,n=-1e9,s=1e9,o=-1e9;for(const a in this.trees)if(Object.prototype.hasOwnProperty.call(this.trees,a)&&this.trees[a]===t){const u=e[a];i=Math.min(u.x,i),n=Math.max(u.x,n),s=Math.min(u.y,s),o=Math.max(u.y,o)}return{min_x:i,max_x:n,min_y:s,max_y:o}}hasSameParent(e,t){const i=this.parentReference[e.id],n=this.parentReference[t.id];if(i===void 0||n===void 0)return!1;for(let s=0;s{this.setupHierarchicalLayout()}),this.body.emitter.on("_dataLoaded",()=>{this.layoutNetwork()}),this.body.emitter.on("_resetHierarchicalLayout",()=>{this.setupHierarchicalLayout()}),this.body.emitter.on("_adjustEdgesForHierarchicalLayout",()=>{if(this.options.hierarchical.enabled!==!0)return;const e=this.direction.curveType();this.body.emitter.emit("_forceDisableDynamicCurves",e,!1)})}setOptions(e,t){if(e!==void 0){const i=this.options.hierarchical,n=i.enabled;if(Gs(["randomSeed","improvedLayout","clusterThreshold"],this.options,e),sr(this.options,e,"hierarchical"),e.randomSeed!==void 0&&this._resetRNG(e.randomSeed),i.enabled===!0)return n===!0&&this.body.emitter.emit("refresh",!0),i.direction==="RL"||i.direction==="DU"?i.levelSeparation>0&&(i.levelSeparation*=-1):i.levelSeparation<0&&(i.levelSeparation*=-1),this.setDirectionStrategy(),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptionsForHierarchicalLayout(t);if(n===!0)return this.body.emitter.emit("refresh"),Ue(t,this.optionsBackup)}return t}_resetRNG(e){this.initialRandomSeed=e,this._rng=sl(this.initialRandomSeed)}adaptAllOptionsForHierarchicalLayout(e){if(this.options.hierarchical.enabled===!0){const t=this.optionsBackup.physics;e.physics===void 0||e.physics===!0?(e.physics={enabled:t.enabled===void 0?!0:t.enabled,solver:"hierarchicalRepulsion"},t.enabled=t.enabled===void 0?!0:t.enabled,t.solver=t.solver||"barnesHut"):typeof e.physics=="object"?(t.enabled=e.physics.enabled===void 0?!0:e.physics.enabled,t.solver=e.physics.solver||"barnesHut",e.physics.solver="hierarchicalRepulsion"):e.physics!==!1&&(t.solver="barnesHut",e.physics={solver:"hierarchicalRepulsion"});let i=this.direction.curveType();if(e.edges===void 0)this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},e.edges={smooth:!1};else if(e.edges.smooth===void 0)this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},e.edges.smooth=!1;else if(typeof e.edges.smooth=="boolean")this.optionsBackup.edges={smooth:e.edges.smooth},e.edges.smooth={enabled:e.edges.smooth,type:i};else{const n=e.edges.smooth;n.type!==void 0&&n.type!=="dynamic"&&(i=n.type),this.optionsBackup.edges={smooth:{enabled:n.enabled===void 0?!0:n.enabled,type:n.type===void 0?"dynamic":n.type,roundness:n.roundness===void 0?.5:n.roundness,forceDirection:n.forceDirection===void 0?!1:n.forceDirection}},e.edges.smooth={enabled:n.enabled===void 0?!0:n.enabled,type:i,roundness:n.roundness===void 0?.5:n.roundness,forceDirection:n.forceDirection===void 0?!1:n.forceDirection}}this.body.emitter.emit("_forceDisableDynamicCurves",i)}return e}positionInitially(e){if(this.options.hierarchical.enabled!==!0){this._resetRNG(this.initialRandomSeed);const t=e.length+50;for(let i=0;is){const u=e.length;for(;e.length>s&&n<=10;){n+=1;const l=e.length;n%3===0?this.body.modules.clustering.clusterBridges(o):this.body.modules.clustering.clusterOutliers(o);const c=e.length;if(l==c&&n%3!==0){this._declusterAll(),this.body.emitter.emit("_layoutFailed"),console.info("This network could not be positioned by this version of the improved layout algorithm. Please disable improvedLayout for better performance.");return}}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*u)})}n>10&&console.info("The clustering didn't succeed within the amount of interations allowed, progressing with partial result."),this.body.modules.kamadaKawai.solve(e,this.body.edgeIndices,!0),this._shiftToCenter();const a=70;for(let u=0;u0){let e,t,i=!1,n=!1;this.lastNodeOnLevel={},this.hierarchical=new Xie;for(t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&(e=this.body.nodes[t],e.options.level!==void 0?(i=!0,this.hierarchical.levels[t]=e.options.level):n=!0);if(n===!0&&i===!0)throw new Error("To use the hierarchical layout, nodes require either no predefined levels or levels have to be defined for all nodes.");{if(n===!0){const o=this.options.hierarchical.sortMethod;o==="hubsize"?this._determineLevelsByHubsize():o==="directed"?this._determineLevelsDirected():o==="custom"&&this._determineLevelsCustomCallback()}for(const o in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,o)&&this.hierarchical.ensureLevel(o);const s=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(s),this._condenseHierarchy(),this._shiftToCenter()}}}_condenseHierarchy(){var e=this;let t=!1;const i={},n=()=>{const m=o();let g=0;for(let w=0;w{const w=this.hierarchical.trees;for(const y in w)Object.prototype.hasOwnProperty.call(w,y)&&w[y]===m&&this.direction.shift(y,g)},o=()=>{const m=[];for(let g=0;g{if(!g[m.id]&&(g[m.id]=!0,this.hierarchical.childrenReference[m.id])){const w=this.hierarchical.childrenReference[m.id];if(w.length>0)for(let y=0;y1&&arguments[1]!==void 0?arguments[1]:1e9,w=1e9,y=1e9,S=1e9,O=-1e9;for(const I in m)if(Object.prototype.hasOwnProperty.call(m,I)){const _=e.body.nodes[I],E=e.hierarchical.levels[_.id],T=e.direction.getPosition(_),[R,x]=e._getSpaceAroundNode(_,m);w=Math.min(R,w),y=Math.min(x,y),E<=g&&(S=Math.min(T,S),O=Math.max(T,O))}return[S,O,w,y]},l=(m,g)=>{const w=this.hierarchical.getMaxLevel(m.id),y=this.hierarchical.getMaxLevel(g.id);return Math.min(w,y)},c=(m,g,w)=>{const y=this.hierarchical;for(let S=0;S1)for(let _=0;_2&&arguments[2]!==void 0?arguments[2]:!1;const y=e.direction.getPosition(m),S=e.direction.getPosition(g),O=Math.abs(S-y),I=e.options.hierarchical.nodeSpacing;if(O>I){const _={},E={};a(m,_),a(g,E);const T=l(m,g),R=u(_,T),x=u(E,T),C=R[1],D=x[0],j=x[2];if(Math.abs(C-D)>I){let H=C-D+I;H<-j+I&&(H=-j+I),H<0&&(e._shiftBlock(g.id,H),t=!0,w===!0&&e._centerParent(g))}}},h=(m,g)=>{const w=g.id,y=g.edges,S=this.hierarchical.levels[g.id],O=this.options.hierarchical.levelSeparation*this.options.hierarchical.levelSeparation,I={},_=[];for(let j=0;j{let H=0;for(let Z=0;Z{let H=0;for(let Z=0;Z{let H=this.direction.getPosition(g);const Z={};for(let ve=0;ve{const ee=this.direction.getPosition(g);if(i[g.id]===void 0){const me={};a(g,me),i[g.id]=me}const H=u(i[g.id]),Z=H[2],ve=H[3],we=j-ee;let te=0;we>0?te=Math.min(we,ve-this.options.hierarchical.nodeSpacing):we<0&&(te=-Math.min(-we,Z-this.options.hierarchical.nodeSpacing)),te!=0&&(this._shiftBlock(g.id,te),t=!0)},C=j=>{const ee=this.direction.getPosition(g),[H,Z]=this._getSpaceAroundNode(g),ve=j-ee;let we=ee;ve>0?we=Math.min(ee+(Z-this.options.hierarchical.nodeSpacing),j):ve<0&&(we=Math.max(ee-(H-this.options.hierarchical.nodeSpacing),j)),we!==ee&&(this.direction.setPosition(g,we),t=!0)};let D=R(m,_);x(D),D=R(m,y),C(D)},f=m=>{let g=this.hierarchical.getLevels();g=on(g).call(g);for(let w=0;w{let g=this.hierarchical.getLevels();g=on(g).call(g);for(let w=0;w{for(const m in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,m)&&this._centerParent(this.body.nodes[m])},b=()=>{let m=this.hierarchical.getLevels();m=on(m).call(m);for(let g=0;g0&&Math.abs(d)0&&(l=this.direction.getPosition(n[o-1])+u),this.direction.setPosition(a,l,i),this._validatePositionAndContinue(a,i,l),s++}}}}_placeBranchNodes(e,t){var i;const n=this.hierarchical.childrenReference[e];if(n===void 0)return;const s=[];for(let a=0;at&&this.positionedNodes[u.id]===void 0){const c=this.options.hierarchical.nodeSpacing;let d;a===0?d=this.direction.getPosition(this.body.nodes[e]):d=this.direction.getPosition(s[a-1])+c,this.direction.setPosition(u,d,l),this._validatePositionAndContinue(u,l,d)}else return}const o=this._getCenterPosition(s);this.direction.setPosition(this.body.nodes[e],o,t)}_validatePositionAndContinue(e,t,i){if(this.hierarchical.isTree){if(this.lastNodeOnLevel[t]!==void 0){const n=this.direction.getPosition(this.body.nodes[this.lastNodeOnLevel[t]]);if(i-n{var n;Fe(n=this.body.edgeIndices).call(n,i.id)!==-1&&t.push(i)}),t}_getHubSizes(){const e={},t=this.body.nodeIndices;Ie(t,n=>{const s=this.body.nodes[n],o=this._getActiveEdges(s).length;e[o]=!0});const i=[];return Ie(e,n=>{i.push(Number(n))}),cs(i).call(i,function(n,s){return s-n}),i}_determineLevelsByHubsize(){const e=(i,n)=>{this.hierarchical.levelDownstream(i,n)},t=this._getHubSizes();for(let i=0;i{const o=this.body.nodes[s];n===this._getActiveEdges(o).length&&this._crawlNetwork(e,s)})}}_determineLevelsCustomCallback(){const t=function(n,s,o){},i=(n,s,o)=>{let a=this.hierarchical.levels[n.id];a===void 0&&(a=this.hierarchical.levels[n.id]=1e5);const u=t(Bt.cloneOptions(n,"node"),Bt.cloneOptions(s,"node"),Bt.cloneOptions(o,"edge"));this.hierarchical.levels[s.id]=a+u};this._crawlNetwork(i),this.hierarchical.setMinLevelToZero()}_determineLevelsDirected(){var e;const t=L5(e=this.body.nodeIndices).call(e,(i,n)=>(i.set(n,this.body.nodes[n]),i),new S0);this.options.hierarchical.shakeTowards==="roots"?this.hierarchical.levels=Yie(t):this.hierarchical.levels=Gie(t),this.hierarchical.setMinLevelToZero()}_generateMap(){const e=(t,i)=>{this.hierarchical.levels[i.id]>this.hierarchical.levels[t.id]&&this.hierarchical.addRelation(t.id,i.id)};this._crawlNetwork(e),this.hierarchical.checkIfTree()}_crawlNetwork(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){},t=arguments.length>1?arguments[1]:void 0;const i={},n=(s,o)=>{if(i[s.id]===void 0){this.hierarchical.setTreeIndex(s,o),i[s.id]=!0;let a;const u=this._getActiveEdges(s);for(let l=0;l{if(i[s])return;i[s]=!0,this.direction.shift(s,t);const o=this.hierarchical.childrenReference[s];if(o!==void 0)for(let a=0;a{const u=this.hierarchical.parentReference[a];if(u!==void 0)for(let l=0;l{const u=this.hierarchical.parentReference[a];if(u!==void 0)for(let l=0;l{this._clean()}),this.body.emitter.on("_dataChanged",z(s=this._restore).call(s,this)),this.body.emitter.on("_resetData",z(o=this._restore).call(o,this))}_restore(){this.inMode!==!1&&(this.options.initiallyActive===!0?this.enableEditMode():this.disableEditMode())}setOptions(e,t,i){t!==void 0&&(t.locale!==void 0?this.options.locale=t.locale:this.options.locale=i.locale,t.locales!==void 0?this.options.locales=t.locales:this.options.locales=i.locales),e!==void 0&&(typeof e=="boolean"?this.options.enabled=e:(this.options.enabled=!0,Ue(this.options,e)),this.options.initiallyActive===!0&&(this.editMode=!0),this._setup())}toggleEditMode(){this.editMode===!0?this.disableEditMode():this.enableEditMode()}enableEditMode(){this.editMode=!0,this._clean(),this.guiEnabled===!0&&(this.manipulationDiv.style.display="block",this.closeDiv.style.display="block",this.editModeDiv.style.display="none",this.showManipulatorToolbar())}disableEditMode(){this.editMode=!1,this._clean(),this.guiEnabled===!0&&(this.manipulationDiv.style.display="none",this.closeDiv.style.display="none",this.editModeDiv.style.display="block",this._createEditButton())}showManipulatorToolbar(){if(this._clean(),this.manipulationDOM={},this.guiEnabled===!0){var e,t;this.editMode=!0,this.manipulationDiv.style.display="block",this.closeDiv.style.display="block";const i=this.selectionHandler.getSelectedNodeCount(),n=this.selectionHandler.getSelectedEdgeCount(),s=i+n,o=this.options.locales[this.options.locale];let a=!1;this.options.addNode!==!1&&(this._createAddNodeButton(o),a=!0),this.options.addEdge!==!1&&(a===!0?this._createSeperator(1):a=!0,this._createAddEdgeButton(o)),i===1&&typeof this.options.editNode=="function"?(a===!0?this._createSeperator(2):a=!0,this._createEditNodeButton(o)):n===1&&i===0&&this.options.editEdge!==!1&&(a===!0?this._createSeperator(3):a=!0,this._createEditEdgeButton(o)),s!==0&&(i>0&&this.options.deleteNode!==!1?(a===!0&&this._createSeperator(4),this._createDeleteButton(o)):i===0&&this.options.deleteEdge!==!1&&(a===!0&&this._createSeperator(4),this._createDeleteButton(o))),this._bindElementEvents(this.closeDiv,z(e=this.toggleEditMode).call(e,this)),this._temporaryBindEvent("select",z(t=this.showManipulatorToolbar).call(t,this))}this.body.emitter.emit("_redraw")}addNodeMode(){var e;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addNode",this.guiEnabled===!0){var t;const i=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(i),this._createSeperator(),this._createDescription(i.addDescription||this.options.locales.en.addDescription),this._bindElementEvents(this.closeDiv,z(t=this.toggleEditMode).call(t,this))}this._temporaryBindEvent("click",z(e=this._performAddNode).call(e,this))}editNode(){this.editMode!==!0&&this.enableEditMode(),this._clean();const e=this.selectionHandler.getSelectedNodes()[0];if(e!==void 0)if(this.inMode="editNode",typeof this.options.editNode=="function")if(e.isCluster!==!0){const t=Ue({},e.options,!1);if(t.x=e.x,t.y=e.y,this.options.editNode.length===2)this.options.editNode(t,i=>{i!=null&&this.inMode==="editNode"&&this.body.data.nodes.getDataSet().update(i),this.showManipulatorToolbar()});else throw new Error("The function for edit does not support two arguments (data, callback)")}else alert(this.options.locales[this.options.locale].editClusterError||this.options.locales.en.editClusterError);else throw new Error("No function has been configured to handle the editing of nodes.");else this.showManipulatorToolbar()}addEdgeMode(){var e,t,i,n,s;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addEdge",this.guiEnabled===!0){var o;const a=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(a),this._createSeperator(),this._createDescription(a.edgeDescription||this.options.locales.en.edgeDescription),this._bindElementEvents(this.closeDiv,z(o=this.toggleEditMode).call(o,this))}this._temporaryBindUI("onTouch",z(e=this._handleConnect).call(e,this)),this._temporaryBindUI("onDragEnd",z(t=this._finishConnect).call(t,this)),this._temporaryBindUI("onDrag",z(i=this._dragControlNode).call(i,this)),this._temporaryBindUI("onRelease",z(n=this._finishConnect).call(n,this)),this._temporaryBindUI("onDragStart",z(s=this._dragStartEdge).call(s,this)),this._temporaryBindUI("onHold",()=>{})}editEdgeMode(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="editEdge",typeof this.options.editEdge=="object"&&typeof this.options.editEdge.editWithoutDrag=="function"&&(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],this.edgeBeingEditedId!==void 0)){const o=this.body.edges[this.edgeBeingEditedId];this._performEditEdge(o.from.id,o.to.id);return}if(this.guiEnabled===!0){var e;const o=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(o),this._createSeperator(),this._createDescription(o.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindElementEvents(this.closeDiv,z(e=this.toggleEditMode).call(e,this))}if(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],this.edgeBeingEditedId!==void 0){var t,i,n,s;const o=this.body.edges[this.edgeBeingEditedId],a=this._getNewTargetNode(o.from.x,o.from.y),u=this._getNewTargetNode(o.to.x,o.to.y);this.temporaryIds.nodes.push(a.id),this.temporaryIds.nodes.push(u.id),this.body.nodes[a.id]=a,this.body.nodeIndices.push(a.id),this.body.nodes[u.id]=u,this.body.nodeIndices.push(u.id),this._temporaryBindUI("onTouch",z(t=this._controlNodeTouch).call(t,this)),this._temporaryBindUI("onTap",()=>{}),this._temporaryBindUI("onHold",()=>{}),this._temporaryBindUI("onDragStart",z(i=this._controlNodeDragStart).call(i,this)),this._temporaryBindUI("onDrag",z(n=this._controlNodeDrag).call(n,this)),this._temporaryBindUI("onDragEnd",z(s=this._controlNodeDragEnd).call(s,this)),this._temporaryBindUI("onMouseMove",()=>{}),this._temporaryBindEvent("beforeDrawing",l=>{const c=o.edgeType.findBorderPositions(l);a.selected===!1&&(a.x=c.from.x,a.y=c.from.y),u.selected===!1&&(u.x=c.to.x,u.y=c.to.y)}),this.body.emitter.emit("_redraw")}else this.showManipulatorToolbar()}deleteSelected(){this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="delete";const e=this.selectionHandler.getSelectedNodeIds(),t=this.selectionHandler.getSelectedEdgeIds();let i;if(e.length>0){for(let n=0;n0&&typeof this.options.deleteEdge=="function"&&(i=this.options.deleteEdge);if(typeof i=="function"){const n={nodes:e,edges:t};if(i.length===2)i(n,s=>{s!=null&&this.inMode==="delete"?(this.body.data.edges.getDataSet().remove(s.edges),this.body.data.nodes.getDataSet().remove(s.nodes),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()):(this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar())});else throw new Error("The function for delete does not support two arguments (data, callback)")}else this.body.data.edges.getDataSet().remove(t),this.body.data.nodes.getDataSet().remove(e),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}_setup(){this.options.enabled===!0?(this.guiEnabled=!0,this._createWrappers(),this.editMode===!1?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}_createWrappers(){if(this.manipulationDiv===void 0&&(this.manipulationDiv=document.createElement("div"),this.manipulationDiv.className="vis-manipulation",this.editMode===!0?this.manipulationDiv.style.display="block":this.manipulationDiv.style.display="none",this.canvas.frame.appendChild(this.manipulationDiv)),this.editModeDiv===void 0&&(this.editModeDiv=document.createElement("div"),this.editModeDiv.className="vis-edit-mode",this.editMode===!0?this.editModeDiv.style.display="none":this.editModeDiv.style.display="block",this.canvas.frame.appendChild(this.editModeDiv)),this.closeDiv===void 0){var e,t;this.closeDiv=document.createElement("button"),this.closeDiv.className="vis-close",this.closeDiv.setAttribute("aria-label",(e=(t=this.options.locales[this.options.locale])===null||t===void 0?void 0:t.close)!==null&&e!==void 0?e:this.options.locales.en.close),this.closeDiv.style.display=this.manipulationDiv.style.display,this.canvas.frame.appendChild(this.closeDiv)}}_getNewTargetNode(e,t){const i=Ue({},this.options.controlNodeStyle);i.id="targetNode"+wo(),i.hidden=!1,i.physics=!1,i.x=e,i.y=t;const n=this.body.functions.createNode(i);return n.shape.boundingBox={left:e,right:e,top:t,bottom:t},n}_createEditButton(){var e;this._clean(),this.manipulationDOM={},_i(this.editModeDiv);const t=this.options.locales[this.options.locale],i=this._createButton("editMode","vis-edit vis-edit-mode",t.edit||this.options.locales.en.edit);this.editModeDiv.appendChild(i),this._bindElementEvents(i,z(e=this.toggleEditMode).call(e,this))}_clean(){this.inMode=!1,this.guiEnabled===!0&&(_i(this.editModeDiv),_i(this.manipulationDiv),this._cleanupDOMEventListeners()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}_cleanupDOMEventListeners(){for(const t of ei(e=this._domEventListenerCleanupQueue).call(e,0)){var e;t()}}_removeManipulationDOM(){this._clean(),_i(this.manipulationDiv),_i(this.editModeDiv),_i(this.closeDiv),this.manipulationDiv&&this.canvas.frame.removeChild(this.manipulationDiv),this.editModeDiv&&this.canvas.frame.removeChild(this.editModeDiv),this.closeDiv&&this.canvas.frame.removeChild(this.closeDiv),this.manipulationDiv=void 0,this.editModeDiv=void 0,this.closeDiv=void 0}_createSeperator(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1;this.manipulationDOM["seperatorLineDiv"+e]=document.createElement("div"),this.manipulationDOM["seperatorLineDiv"+e].className="vis-separator-line",this.manipulationDiv.appendChild(this.manipulationDOM["seperatorLineDiv"+e])}_createAddNodeButton(e){var t;const i=this._createButton("addNode","vis-add",e.addNode||this.options.locales.en.addNode);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,z(t=this.addNodeMode).call(t,this))}_createAddEdgeButton(e){var t;const i=this._createButton("addEdge","vis-connect",e.addEdge||this.options.locales.en.addEdge);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,z(t=this.addEdgeMode).call(t,this))}_createEditNodeButton(e){var t;const i=this._createButton("editNode","vis-edit",e.editNode||this.options.locales.en.editNode);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,z(t=this.editNode).call(t,this))}_createEditEdgeButton(e){var t;const i=this._createButton("editEdge","vis-edit",e.editEdge||this.options.locales.en.editEdge);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,z(t=this.editEdgeMode).call(t,this))}_createDeleteButton(e){var t;let i;this.options.rtl?i="vis-delete-rtl":i="vis-delete";const n=this._createButton("delete",i,e.del||this.options.locales.en.del);this.manipulationDiv.appendChild(n),this._bindElementEvents(n,z(t=this.deleteSelected).call(t,this))}_createBackButton(e){var t;const i=this._createButton("back","vis-back",e.back||this.options.locales.en.back);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,z(t=this.showManipulatorToolbar).call(t,this))}_createButton(e,t,i){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"vis-label";return this.manipulationDOM[e+"Div"]=document.createElement("button"),this.manipulationDOM[e+"Div"].className="vis-button "+t,this.manipulationDOM[e+"Label"]=document.createElement("div"),this.manipulationDOM[e+"Label"].className=n,this.manipulationDOM[e+"Label"].innerText=i,this.manipulationDOM[e+"Div"].appendChild(this.manipulationDOM[e+"Label"]),this.manipulationDOM[e+"Div"]}_createDescription(e){this.manipulationDOM.descriptionLabel=document.createElement("div"),this.manipulationDOM.descriptionLabel.className="vis-none",this.manipulationDOM.descriptionLabel.innerText=e,this.manipulationDiv.appendChild(this.manipulationDOM.descriptionLabel)}_temporaryBindEvent(e,t){this.temporaryEventFunctions.push({event:e,boundFunction:t}),this.body.emitter.on(e,t)}_temporaryBindUI(e,t){if(this.body.eventListeners[e]!==void 0)this.temporaryUIFunctions[e]=this.body.eventListeners[e],this.body.eventListeners[e]=t;else throw new Error("This UI function does not exist. Typo? You tried: "+e+" possible are: "+ma(Ze(this.body.eventListeners)))}_unbindTemporaryUIs(){for(const e in this.temporaryUIFunctions)Object.prototype.hasOwnProperty.call(this.temporaryUIFunctions,e)&&(this.body.eventListeners[e]=this.temporaryUIFunctions[e],delete this.temporaryUIFunctions[e]);this.temporaryUIFunctions={}}_unbindTemporaryEvents(){for(let e=0;e{i.destroy()});const n=s=>{let{keyCode:o,key:a}=s;(a==="Enter"||a===" "||o===13||o===32)&&t()};e.addEventListener("keyup",n,!1),this._domEventListenerCleanupQueue.push(()=>{e.removeEventListener("keyup",n,!1)})}_cleanupTemporaryNodesAndEdges(){for(let s=0;s=0;a--)if(s[a]!==this.selectedControlNode.id){o=this.body.nodes[s[a]];break}if(o!==void 0&&this.selectedControlNode!==void 0)if(o.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{const a=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===a.id?this._performEditEdge(o.id,n.to.id):this._performEditEdge(n.from.id,o.id)}else n.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}_handleConnect(e){if(new Date().valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(e.center),this.lastTouch.translation=at({},this.body.view.translation),this.interactionHandler.drag.pointer=this.lastTouch,this.interactionHandler.drag.translation=this.lastTouch.translation;const t=this.lastTouch,i=this.selectionHandler.getNodeAt(t);if(i!==void 0)if(i.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{const n=this._getNewTargetNode(i.x,i.y);this.body.nodes[n.id]=n,this.body.nodeIndices.push(n.id);const s=this.body.functions.createEdge({id:"connectionEdge"+wo(),from:i.id,to:n.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[s.id]=s,this.body.edgeIndices.push(s.id),this.temporaryIds.nodes.push(n.id),this.temporaryIds.edges.push(s.id)}this.touchTime=new Date().valueOf()}}_dragControlNode(e){const t=this.body.functions.getPointer(e.center),i=this.selectionHandler._pointerToPositionObject(t);let n;this.temporaryIds.edges[0]!==void 0&&(n=this.body.edges[this.temporaryIds.edges[0]].fromId);const s=this.selectionHandler._getAllNodesOverlappingWith(i);let o;for(let u=s.length-1;u>=0;u--){var a;if(Fe(a=this.temporaryIds.nodes).call(a,s[u])===-1){o=this.body.nodes[s[u]];break}}if(e.controlEdge={from:n,to:o?o.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragging",e,t),this.temporaryIds.nodes[0]!==void 0){const u=this.body.nodes[this.temporaryIds.nodes[0]];u.x=this.canvas._XconvertDOMtoCanvas(t.x),u.y=this.canvas._YconvertDOMtoCanvas(t.y),this.body.emitter.emit("_redraw")}else this.interactionHandler.onDrag(e)}_finishConnect(e){const t=this.body.functions.getPointer(e.center),i=this.selectionHandler._pointerToPositionObject(t);let n;this.temporaryIds.edges[0]!==void 0&&(n=this.body.edges[this.temporaryIds.edges[0]].fromId);const s=this.selectionHandler._getAllNodesOverlappingWith(i);let o;for(let u=s.length-1;u>=0;u--){var a;if(Fe(a=this.temporaryIds.nodes).call(a,s[u])===-1){o=this.body.nodes[s[u]];break}}this._cleanupTemporaryNodesAndEdges(),o!==void 0&&(o.isCluster===!0?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):this.body.nodes[n]!==void 0&&this.body.nodes[o.id]!==void 0&&this._performAddEdge(n,o.id)),e.controlEdge={from:n,to:o?o.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragEnd",e,t),this.body.emitter.emit("_redraw")}_dragStartEdge(e){const t=this.lastTouch;this.selectionHandler.generateClickEvent("dragStart",e,t,void 0,!0)}_performAddNode(e){const t={id:wo(),x:e.pointer.canvas.x,y:e.pointer.canvas.y,label:"new"};if(typeof this.options.addNode=="function")if(this.options.addNode.length===2)this.options.addNode(t,i=>{i!=null&&this.inMode==="addNode"&&this.body.data.nodes.getDataSet().add(i),this.showManipulatorToolbar()});else throw this.showManipulatorToolbar(),new Error("The function for add does not support two arguments (data,callback)");else this.body.data.nodes.getDataSet().add(t),this.showManipulatorToolbar()}_performAddEdge(e,t){const i={from:e,to:t};if(typeof this.options.addEdge=="function")if(this.options.addEdge.length===2)this.options.addEdge(i,n=>{n!=null&&this.inMode==="addEdge"&&(this.body.data.edges.getDataSet().add(n),this.selectionHandler.unselectAll(),this.showManipulatorToolbar())});else throw new Error("The function for connect does not support two arguments (data,callback)");else this.body.data.edges.getDataSet().add(i),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}_performEditEdge(e,t){const i={id:this.edgeBeingEditedId,from:e,to:t,label:this.body.data.edges.get(this.edgeBeingEditedId).label};let n=this.options.editEdge;if(typeof n=="object"&&(n=n.editWithoutDrag),typeof n=="function")if(n.length===2)n(i,s=>{s==null||this.inMode!=="editEdge"?(this.body.edges[i.id].updateEdgeType(),this.body.emitter.emit("_redraw"),this.showManipulatorToolbar()):(this.body.data.edges.getDataSet().update(s),this.selectionHandler.unselectAll(),this.showManipulatorToolbar())});else throw new Error("The function for edit does not support two arguments (data, callback)");else this.body.data.edges.getDataSet().update(i),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}const G="string",L="boolean",M="number",oo="array",ue="object",U5="dom",Zie="any",y_=["arrow","bar","box","circle","crow","curve","diamond","image","inv_curve","inv_triangle","triangle","vee"],b_={borderWidth:{number:M},borderWidthSelected:{number:M,undefined:"undefined"},brokenImage:{string:G,undefined:"undefined"},chosen:{label:{boolean:L,function:"function"},node:{boolean:L,function:"function"},__type__:{object:ue,boolean:L}},color:{border:{string:G},background:{string:G},highlight:{border:{string:G},background:{string:G},__type__:{object:ue,string:G}},hover:{border:{string:G},background:{string:G},__type__:{object:ue,string:G}},__type__:{object:ue,string:G}},opacity:{number:M,undefined:"undefined"},fixed:{x:{boolean:L},y:{boolean:L},__type__:{object:ue,boolean:L}},font:{align:{string:G},color:{string:G},size:{number:M},face:{string:G},background:{string:G},strokeWidth:{number:M},strokeColor:{string:G},vadjust:{number:M},multi:{boolean:L,string:G},bold:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},boldital:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},ital:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},mono:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},__type__:{object:ue,string:G}},group:{string:G,number:M,undefined:"undefined"},heightConstraint:{minimum:{number:M},valign:{string:G},__type__:{object:ue,boolean:L,number:M}},hidden:{boolean:L},icon:{face:{string:G},code:{string:G},size:{number:M},color:{string:G},weight:{string:G,number:M},__type__:{object:ue}},id:{string:G,number:M},image:{selected:{string:G,undefined:"undefined"},unselected:{string:G,undefined:"undefined"},__type__:{object:ue,string:G}},imagePadding:{top:{number:M},right:{number:M},bottom:{number:M},left:{number:M},__type__:{object:ue,number:M}},label:{string:G,undefined:"undefined"},labelHighlightBold:{boolean:L},level:{number:M,undefined:"undefined"},margin:{top:{number:M},right:{number:M},bottom:{number:M},left:{number:M},__type__:{object:ue,number:M}},mass:{number:M},physics:{boolean:L},scaling:{min:{number:M},max:{number:M},label:{enabled:{boolean:L},min:{number:M},max:{number:M},maxVisible:{number:M},drawThreshold:{number:M},__type__:{object:ue,boolean:L}},customScalingFunction:{function:"function"},__type__:{object:ue}},shadow:{enabled:{boolean:L},color:{string:G},size:{number:M},x:{number:M},y:{number:M},__type__:{object:ue,boolean:L}},shape:{string:["custom","ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon","hexagon"]},ctxRenderer:{function:"function"},shapeProperties:{borderDashes:{boolean:L,array:oo},borderRadius:{number:M},interpolation:{boolean:L},useImageSize:{boolean:L},useBorderWithImage:{boolean:L},coordinateOrigin:{string:["center","top-left"]},__type__:{object:ue}},size:{number:M},title:{string:G,dom:U5,undefined:"undefined"},value:{number:M,undefined:"undefined"},widthConstraint:{minimum:{number:M},maximum:{number:M},__type__:{object:ue,boolean:L,number:M}},x:{number:M},y:{number:M},__type__:{object:ue}},ene={configure:{enabled:{boolean:L},filter:{boolean:L,string:G,array:oo,function:"function"},container:{dom:U5},showButton:{boolean:L},__type__:{object:ue,boolean:L,string:G,array:oo,function:"function"}},edges:{arrows:{to:{enabled:{boolean:L},scaleFactor:{number:M},type:{string:y_},imageHeight:{number:M},imageWidth:{number:M},src:{string:G},__type__:{object:ue,boolean:L}},middle:{enabled:{boolean:L},scaleFactor:{number:M},type:{string:y_},imageWidth:{number:M},imageHeight:{number:M},src:{string:G},__type__:{object:ue,boolean:L}},from:{enabled:{boolean:L},scaleFactor:{number:M},type:{string:y_},imageWidth:{number:M},imageHeight:{number:M},src:{string:G},__type__:{object:ue,boolean:L}},__type__:{string:["from","to","middle"],object:ue}},endPointOffset:{from:{number:M},to:{number:M},__type__:{object:ue,number:M}},arrowStrikethrough:{boolean:L},background:{enabled:{boolean:L},color:{string:G},size:{number:M},dashes:{boolean:L,array:oo},__type__:{object:ue,boolean:L}},chosen:{label:{boolean:L,function:"function"},edge:{boolean:L,function:"function"},__type__:{object:ue,boolean:L}},color:{color:{string:G},highlight:{string:G},hover:{string:G},inherit:{string:["from","to","both"],boolean:L},opacity:{number:M},__type__:{object:ue,string:G}},dashes:{boolean:L,array:oo},font:{color:{string:G},size:{number:M},face:{string:G},background:{string:G},strokeWidth:{number:M},strokeColor:{string:G},align:{string:["horizontal","top","middle","bottom"]},vadjust:{number:M},multi:{boolean:L,string:G},bold:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},boldital:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},ital:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},mono:{color:{string:G},size:{number:M},face:{string:G},mod:{string:G},vadjust:{number:M},__type__:{object:ue,string:G}},__type__:{object:ue,string:G}},hidden:{boolean:L},hoverWidth:{function:"function",number:M},label:{string:G,undefined:"undefined"},labelHighlightBold:{boolean:L},length:{number:M,undefined:"undefined"},physics:{boolean:L},scaling:{min:{number:M},max:{number:M},label:{enabled:{boolean:L},min:{number:M},max:{number:M},maxVisible:{number:M},drawThreshold:{number:M},__type__:{object:ue,boolean:L}},customScalingFunction:{function:"function"},__type__:{object:ue}},selectionWidth:{function:"function",number:M},selfReferenceSize:{number:M},selfReference:{size:{number:M},angle:{number:M},renderBehindTheNode:{boolean:L},__type__:{object:ue}},shadow:{enabled:{boolean:L},color:{string:G},size:{number:M},x:{number:M},y:{number:M},__type__:{object:ue,boolean:L}},smooth:{enabled:{boolean:L},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"]},roundness:{number:M},forceDirection:{string:["horizontal","vertical","none"],boolean:L},__type__:{object:ue,boolean:L}},title:{string:G,undefined:"undefined"},width:{number:M},widthConstraint:{maximum:{number:M},__type__:{object:ue,boolean:L,number:M}},value:{number:M,undefined:"undefined"},__type__:{object:ue}},groups:{useDefaultGroups:{boolean:L},__any__:b_,__type__:{object:ue}},interaction:{dragNodes:{boolean:L},dragView:{boolean:L},hideEdgesOnDrag:{boolean:L},hideEdgesOnZoom:{boolean:L},hideNodesOnDrag:{boolean:L},hover:{boolean:L},keyboard:{enabled:{boolean:L},speed:{x:{number:M},y:{number:M},zoom:{number:M},__type__:{object:ue}},bindToWindow:{boolean:L},autoFocus:{boolean:L},__type__:{object:ue,boolean:L}},multiselect:{boolean:L},navigationButtons:{boolean:L},selectable:{boolean:L},selectConnectedEdges:{boolean:L},hoverConnectedEdges:{boolean:L},tooltipDelay:{number:M},zoomView:{boolean:L},zoomSpeed:{number:M},__type__:{object:ue}},layout:{randomSeed:{undefined:"undefined",number:M,string:G},improvedLayout:{boolean:L},clusterThreshold:{number:M},hierarchical:{enabled:{boolean:L},levelSeparation:{number:M},nodeSpacing:{number:M},treeSpacing:{number:M},blockShifting:{boolean:L},edgeMinimization:{boolean:L},parentCentralization:{boolean:L},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},shakeTowards:{string:["leaves","roots"]},__type__:{object:ue,boolean:L}},__type__:{object:ue}},manipulation:{enabled:{boolean:L},initiallyActive:{boolean:L},addNode:{boolean:L,function:"function"},addEdge:{boolean:L,function:"function"},editNode:{function:"function"},editEdge:{editWithoutDrag:{function:"function"},__type__:{object:ue,boolean:L,function:"function"}},deleteNode:{boolean:L,function:"function"},deleteEdge:{boolean:L,function:"function"},controlNodeStyle:b_,__type__:{object:ue,boolean:L}},nodes:b_,physics:{enabled:{boolean:L},barnesHut:{theta:{number:M},gravitationalConstant:{number:M},centralGravity:{number:M},springLength:{number:M},springConstant:{number:M},damping:{number:M},avoidOverlap:{number:M},__type__:{object:ue}},forceAtlas2Based:{theta:{number:M},gravitationalConstant:{number:M},centralGravity:{number:M},springLength:{number:M},springConstant:{number:M},damping:{number:M},avoidOverlap:{number:M},__type__:{object:ue}},repulsion:{centralGravity:{number:M},springLength:{number:M},springConstant:{number:M},nodeDistance:{number:M},damping:{number:M},__type__:{object:ue}},hierarchicalRepulsion:{centralGravity:{number:M},springLength:{number:M},springConstant:{number:M},nodeDistance:{number:M},damping:{number:M},avoidOverlap:{number:M},__type__:{object:ue}},maxVelocity:{number:M},minVelocity:{number:M},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{boolean:L},iterations:{number:M},updateInterval:{number:M},onlyDynamicEdges:{boolean:L},fit:{boolean:L},__type__:{object:ue,boolean:L}},timestep:{number:M},adaptiveTimestep:{boolean:L},wind:{x:{number:M},y:{number:M},__type__:{object:ue}},__type__:{object:ue,boolean:L}},autoResize:{boolean:L},clickToUse:{boolean:L},locale:{string:G},locales:{__any__:{any:Zie},__type__:{object:ue}},height:{string:G},width:{string:G},__type__:{object:ue}},V5={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},opacity:[0,0,1,.1],fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,labelHighlightBold:!0,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown","hexagon"],shapeProperties:{borderDashes:!1,borderRadius:[6,0,20,1],interpolation:!0,useImageSize:!1},size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"},middle:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"},from:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"}},endPointOffset:{from:[0,-10,10,1],to:[0,-10,10,1]},arrowStrikethrough:!0,color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],labelHighlightBold:!0,physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],selfReference:{size:[20,0,200,1],angle:[Math.PI/2,-6*Math.PI,6*Math.PI,Math.PI/8],renderBehindTheNode:!0},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:!0,type:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"],forceDirection:["horizontal","vertical","none"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:!0,edgeMinimization:!0,parentCentralization:!0,direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"],shakeTowards:["leaves","roots"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideEdgesOnZoom:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0,autoFocus:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0,zoomSpeed:[1,.1,2,.1]},manipulation:{enabled:!1,initiallyActive:!1},physics:{enabled:!0,barnesHut:{theta:[.5,.1,1,.05],gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{theta:[.5,.1,1,.05],gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:["barnesHut","forceAtlas2Based","repulsion","hierarchicalRepulsion"],timestep:[.5,.01,1,.01],wind:{x:[0,-10,10,.1],y:[0,-10,10,.1]}}},tne=(r,e,t)=>{var i;return!!($i(r).call(r,"physics")&&$i(i=V5.physics.solver).call(i,e)&&t.physics.solver!==e&&e!=="wind")};class rne{constructor(){}getDistances(e,t,i){const n={},s=e.edges;for(let a=0;a2&&arguments[2]!==void 0?arguments[2]:!1;const n=this.distanceSolver.getDistances(this.body,e,t);this._createL_matrix(n),this._createK_matrix(n),this._createE_matrix();const s=.01,o=1;let a=0;const u=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3)),l=5;let c=1e9,d=0,h=0,f=0,v=0,p=0;for(;c>s&&ao&&pthis.body.emitter.emit("_requestRedraw")),this.groups=new UZ,this.canvas=new Bre(this.body),this.selectionHandler=new _ie(this.body,this.canvas),this.interactionHandler=new Hre(this.body,this.canvas,this.selectionHandler),this.view=new Lre(this.body,this.canvas),this.renderer=new Are(this.body,this.canvas),this.physics=new Tre(this.body),this.layoutEngine=new Jie(this.body),this.clustering=new Dre(this.body),this.manipulation=new Qie(this.body,this.canvas,this.selectionHandler,this.interactionHandler),this.nodesHandler=new ere(this.body,this.images,this.groups,this.layoutEngine),this.edgesHandler=new _re(this.body,this.images,this.groups),this.body.modules.kamadaKawai=new ine(this.body,150,.05),this.body.modules.clustering=this.clustering,this.canvas._create(),this.setOptions(t),this.setData(e)}E3(ae.prototype);ae.prototype.setOptions=function(r){if(r===null&&(r=void 0),r!==void 0){if(nZ.validate(r,ene)===!0&&console.error("%cErrors have been found in the supplied options object.",m5),Gs(["locale","locales","clickToUse"],this.options,r),r.locale!==void 0&&(r.locale=PZ(r.locales||this.options.locales,r.locale)),r=this.layoutEngine.setOptions(r.layout,r),this.canvas.setOptions(r),this.groups.setOptions(r.groups),this.nodesHandler.setOptions(r.nodes),this.edgesHandler.setOptions(r.edges),this.physics.setOptions(r.physics),this.manipulation.setOptions(r.manipulation,r,this.options),this.interactionHandler.setOptions(r.interaction),this.renderer.setOptions(r.interaction),this.selectionHandler.setOptions(r.interaction),r.groups!==void 0&&this.body.emitter.emit("refreshNodes"),"configure"in r&&(this.configurator||(this.configurator=new rZ(this,this.body.container,V5,this.canvas.pixelRatio,tne)),this.configurator.setOptions(r.configure)),this.configurator&&this.configurator.options.enabled===!0){const i={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};Ue(i.nodes,this.nodesHandler.options),Ue(i.edges,this.edgesHandler.options),Ue(i.layout,this.layoutEngine.options),Ue(i.interaction,this.selectionHandler.options),Ue(i.interaction,this.renderer.options),Ue(i.interaction,this.interactionHandler.options),Ue(i.manipulation,this.manipulation.options),Ue(i.physics,this.physics.options),Ue(i.global,this.canvas.options),Ue(i.global,this.options),this.configurator.setModuleOptions(i)}r.clickToUse!==void 0?r.clickToUse===!0?this.activator===void 0&&(this.activator=new tZ(this.canvas.frame),this.activator.on("change",()=>{this.body.emitter.emit("activate")})):(this.activator!==void 0&&(this.activator.destroy(),delete this.activator),this.body.emitter.emit("activate")):this.body.emitter.emit("activate"),this.canvas.setSize(),this.body.emitter.emit("startSimulation")}};ae.prototype._updateVisibleIndices=function(){const r=this.body.nodes,e=this.body.edges;this.body.nodeIndices=[],this.body.edgeIndices=[];for(const t in r)Object.prototype.hasOwnProperty.call(r,t)&&!this.clustering._isClusteredNode(t)&&r[t].options.hidden===!1&&this.body.nodeIndices.push(r[t].id);for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)){const i=e[t],n=r[i.fromId],s=r[i.toId],o=n!==void 0&&s!==void 0;!this.clustering._isClusteredEdge(t)&&i.options.hidden===!1&&o&&n.options.hidden===!1&&s.options.hidden===!1&&this.body.edgeIndices.push(i.id)}};ae.prototype.bindEventListeners=function(){this.body.emitter.on("_dataChanged",()=>{this.edgesHandler._updateState(),this.body.emitter.emit("_dataUpdated")}),this.body.emitter.on("_dataUpdated",()=>{this.clustering._updateState(),this._updateVisibleIndices(),this._updateValueRange(this.body.nodes),this._updateValueRange(this.body.edges),this.body.emitter.emit("startSimulation"),this.body.emitter.emit("_requestRedraw")})};ae.prototype.setData=function(r){if(this.body.emitter.emit("resetPhysics"),this.body.emitter.emit("_resetData"),this.selectionHandler.unselectAll(),r&&r.dot&&(r.nodes||r.edges))throw new SyntaxError('Data must contain either parameter "dot" or parameter pair "nodes" and "edges", but not both.');if(this.setOptions(r&&r.options),r&&r.dot){console.warn("The dot property has been deprecated. Please use the static convertDot method to convert DOT into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertDot(dotString);");const e=vZ(r.dot);this.setData(e);return}else if(r&&r.gephi){console.warn("The gephi property has been deprecated. Please use the static convertGephi method to convert gephi into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertGephi(gephiJson);");const e=pZ(r.gephi);this.setData(e);return}else this.nodesHandler.setData(r&&r.nodes,!0),this.edgesHandler.setData(r&&r.edges,!0);this.body.emitter.emit("_dataChanged"),this.body.emitter.emit("_dataLoaded"),this.body.emitter.emit("initPhysics")};ae.prototype.destroy=function(){this.body.emitter.emit("destroy"),this.body.emitter.off(),this.off(),delete this.groups,delete this.canvas,delete this.selectionHandler,delete this.interactionHandler,delete this.view,delete this.renderer,delete this.physics,delete this.layoutEngine,delete this.clustering,delete this.manipulation,delete this.nodesHandler,delete this.edgesHandler,delete this.configurator,delete this.images;for(const r in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,r)&&delete this.body.nodes[r];for(const r in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,r)&&delete this.body.edges[r];_i(this.body.container)};ae.prototype._updateValueRange=function(r){let e,t,i,n=0;for(e in r)if(Object.prototype.hasOwnProperty.call(r,e)){const s=r[e].getValue();s!==void 0&&(t=t===void 0?s:Math.min(s,t),i=i===void 0?s:Math.max(s,i),n+=s)}if(t!==void 0&&i!==void 0)for(e in r)Object.prototype.hasOwnProperty.call(r,e)&&r[e].setValueRange(t,i,n)};ae.prototype.isActive=function(){return!this.activator||this.activator.active};ae.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)};ae.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)};ae.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)};ae.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)};ae.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)};ae.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)};ae.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)};ae.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)};ae.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)};ae.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)};ae.prototype.updateClusteredNode=function(){return this.clustering.updateClusteredNode.apply(this.clustering,arguments)};ae.prototype.getClusteredEdges=function(){return this.clustering.getClusteredEdges.apply(this.clustering,arguments)};ae.prototype.getBaseEdge=function(){return this.clustering.getBaseEdge.apply(this.clustering,arguments)};ae.prototype.getBaseEdges=function(){return this.clustering.getBaseEdges.apply(this.clustering,arguments)};ae.prototype.updateEdge=function(){return this.clustering.updateEdge.apply(this.clustering,arguments)};ae.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)};ae.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)};ae.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)};ae.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)};ae.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)};ae.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)};ae.prototype.editNodeMode=function(){return console.warn("Deprecated: Please use editNode instead of editNodeMode."),this.manipulation.editNode.apply(this.manipulation,arguments)};ae.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)};ae.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)};ae.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)};ae.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)};ae.prototype.getPosition=function(){return this.nodesHandler.getPosition.apply(this.nodesHandler,arguments)};ae.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)};ae.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)};ae.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)};ae.prototype.getConnectedNodes=function(r){return this.body.nodes[r]!==void 0?this.nodesHandler.getConnectedNodes.apply(this.nodesHandler,arguments):this.edgesHandler.getConnectedNodes.apply(this.edgesHandler,arguments)};ae.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)};ae.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)};ae.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)};ae.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)};ae.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)};ae.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)};ae.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodeIds.apply(this.selectionHandler,arguments)};ae.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdgeIds.apply(this.selectionHandler,arguments)};ae.prototype.getNodeAt=function(){const r=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);return r!==void 0&&r.id!==void 0?r.id:r};ae.prototype.getEdgeAt=function(){const r=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);return r!==void 0&&r.id!==void 0?r.id:r};ae.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)};ae.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)};ae.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments),this.selectionHandler.commitWithoutEmitting.apply(this.selectionHandler),this.redraw()};ae.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)};ae.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)};ae.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)};ae.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)};ae.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)};ae.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)};ae.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)};ae.prototype.getOptionsFromConfigurator=function(){let r={};return this.configurator&&(r=this.configurator.getOptions.apply(this.configurator)),r};const nne={class:"nodes-container"},sne=["onClick"],one={class:"edit-node-container"},ane=["onClick"],une=Or({__name:"EditorWindow",setup(r){const e=or(),t=or({nodes:[],edges:[]}),i=or({id:0,label:"",name:"",text:"",applications:[],links:[]});let n={},s={};async function o(){t.value=await IU(),s={nodes:t.value.nodes,edges:t.value.edges},n.setData(s)}vw(async()=>{if(!e.value)return;const c={interaction:{selectable:!0},nodes:{color:{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#960000",background:"#ff9494"},hover:{border:"#2B7CE9",background:"#D2E5FF"}}}};n=new ae(e.value,s,c),n.on("click",function(d){d.nodes.length>0?a(t.value.nodes[d.nodes[0]]):d.edges.length>0&&console.log("Clicked edge:",d.edges[0])}),await o(),a(t.value.nodes[0])});function a(c){console.log("Select node:",c.id),i.value=c;const d=t.value.edges.filter(function(h){return h.from==c.id}).map(function(h){const f=h.to;return t.value.nodes.filter(function(p){return p.id==f})[0]});i.value.links=d,n.selectNodes([i.value.id])}async function u(){console.log("Update node:",i.value),await TU(i.value),await o()}function l(c){return"["+c.label+"] - "+c.name}return(c,d)=>(et(),Wt(pt,null,[yt(ww,null,{default:Eu(()=>d[2]||(d[2]=[de("div",null," Редактор сценариев ",-1)])),_:1}),de("div",{ref_key:"network",ref:e,class:"graph-container"},null,512),de("div",nne,[d[3]||(d[3]=de("h2",null,"Точки",-1)),de("div",null,"Всего точек: "+Mt(t.value.nodes.length),1),de("div",null,"Всего связей: "+Mt(t.value.edges.length),1),d[4]||(d[4]=de("hr",{class:"hr"},null,-1)),(et(!0),Wt(pt,null,co(t.value.nodes,h=>(et(),Wt("div",{key:h.id},[de("div",{class:yu([[h.id==i.value.id?"selected-node":""],"node-select-button"]),onClick:f=>a(h)},Mt(l(h)),11,sne)]))),128))]),de("div",one,[d[5]||(d[5]=de("h2",null,"Редактирование точки",-1)),de("div",null,Mt(l(i.value)),1),de("div",null,[tL(de("textarea",{class:"node-text-edit-field",rows:"30","onUpdate:modelValue":d[0]||(d[0]=h=>i.value.text=h)},null,512),[[CL,i.value.text]])]),de("div",null,[de("h3",null,"Приложения: "+Mt(i.value.applications.length),1),(et(!0),Wt(pt,null,co(i.value.applications,h=>(et(),Wt("div",{key:h.name}," - "+Mt(h.name),1))),128))]),de("div",null,[de("h3",null,"Ссылки: "+Mt(i.value.links.length),1),(et(!0),Wt(pt,null,co(i.value.links,h=>(et(),Wt("div",{key:h.id},[de("div",{class:"node-select-button",onClick:f=>a(h)}," - "+Mt(l(h)),9,ane)]))),128))]),de("div",null,[de("button",{class:"node-edit-save-button",onClick:d[1]||(d[1]=h=>u())},"Сохранить")])])],64))}}),lne=Pu(une,[["__scopeId","data-v-06ee41bb"]]),cne=Or({__name:"EditorView",setup(r){return(e,t)=>(et(),Di(lne))}}),dne=Or({__name:"GamesWindow",setup(r){return(e,t)=>(et(),Di(ww,null,{default:Eu(()=>t[0]||(t[0]=[de("div",null," Каталог игр ",-1)])),_:1}))}}),hne=Or({__name:"GamesView",setup(r){return(e,t)=>(et(),Di(dne))}}),Z_=fU({history:H4("/"),routes:[{path:"/",name:"home",component:hV},{path:"/editor",name:"editor",component:cne},{path:"/games",name:"games",component:hne}]}),P0=u4(pU);P0.use(h4());P0.use(Z_);P0.mount("#app"); diff --git a/cmd/evening_detective/static/admin/index.html b/cmd/evening_detective/static/admin/index.html index b8c07fa..63b958b 100644 --- a/cmd/evening_detective/static/admin/index.html +++ b/cmd/evening_detective/static/admin/index.html @@ -5,8 +5,8 @@ ВД Админка - - + +
diff --git a/data/story/story.json b/data/story/story.json index 159d528..dcb48c8 100644 --- a/data/story/story.json +++ b/data/story/story.json @@ -44,7 +44,7 @@ { "code": "М", "name": "Медпункт", - "text": "Небольшое побелено-голубое здание в тени сосен. Внутри – приемная с выцветшими плакатами про “чистые руки” и “опасность клещей”, изолятор с двумя койками за занавеской, а дальше – общий душ и туалет. На столе стоят 3 кружки из-под чая. Печенье “Юбилейное” в открытой пачке. Медицинская карта с последней записью: “22:30 23.08.99 – Волкова С. (отряд “Орлы”) – жалобы на температуру и тошноту. Диагноз: пищевое отравление?” В мусорном ведре вы замечаете упаковку от таблетки, 3 пакетика чая и использованный презерватив. Слабый аромат духов – дешевый, сладкий, явно не медицинский." + "text": "Небольшое побелено-голубое здание в тени сосен. Внутри – приемная с выцветшими плакатами про “чистые руки” и “опасность клещей”, изолятор с двумя койками за занавеской, а дальше – общий душ и туалет. На столе стоят 3 кружки из-под чая. Печенье “Юбилейное” в открытой пачке. Медицинская карта с последней записью: “22:30 23.08.99 – Волкова С. (отряд “Орлы”)([O-4]) – жалобы на температуру и тошноту. Диагноз: пищевое отравление?” В мусорном ведре вы замечаете упаковку от таблетки, 3 пакетика чая и использованный презерватив. Слабый аромат духов – дешевый, сладкий, явно не медицинский." }, { "code": "O-1", @@ -54,17 +54,17 @@ { "code": "O-2", "name": "Отряд 2", - "text": "Тени от сосен за окном рисуют на стенах полосатые узоры. Зайдя внутрь здания, вы замечаете одного из вожатых — Кирилла. Заведя разговор о произошедшем, вы по секрету узнаете, что его напарница Даша бегает на свиданки с вожатым первого отряда Максимом. Больше ничего необычного вы не заметили." + "text": "Тени от сосен за окном рисуют на стенах полосатые узоры. Зайдя внутрь здания, вы замечаете одного из вожатых — Кирилла([КЛ]). Заведя разговор о произошедшем, вы по секрету узнаете, что его напарница Даша([ДО]) бегает на свиданки с вожатым первого отряда Максимом([МК]). Больше ничего необычного вы не заметили." }, { "code": "O-3", "name": "Отряд 3", - "text": "Приближаясь, Вы осматриваете кирпичное здание с нарисованным сбоку здания мультяшным героем. Переводя взгляд в окно, вы видите детей, разбившихся на группки: кто-то рисует, кто-то бегает, а кто-то просто сидит в сторонке. \n«Вы тоже за тем, что пропало?» — раздаётся голос за спиной. Обернувшись, вы видите мальчика лет 12 с слишком взрослым взглядом. «Лёха говорит, что если что — искать надо в лисах. Только он не договорил... что именно.» Он нервно оглядывается и исчезает за углом, оставив вас с новой загадкой и ощущением, что за вами уже наблюдают." + "text": "Приближаясь, Вы осматриваете кирпичное здание с нарисованным сбоку здания мультяшным героем. Переводя взгляд в окно, вы видите детей, разбившихся на группки: кто-то рисует, кто-то бегает, а кто-то просто сидит в сторонке. \n«Вы тоже за тем, что пропало?» — раздаётся голос за спиной. Обернувшись, вы видите мальчика лет 12 с слишком взрослым взглядом. «Лёха говорит, что если что — искать надо в лисах([О-2]). Только он не договорил... что именно.» Он нервно оглядывается и исчезает за углом, оставив вас с новой загадкой и ощущением, что за вами уже наблюдают." }, { "code": "O-4", "name": "Отряд 4", - "text": "У входа в отряд вы видите десятки пар обуви, аккуратно выставленных в ряд. Среди них вы сразу замечаете кроссовки с характерным зигзагообразным протектором, слегка запачканные грязью и... чем-то тёмным у носка. «Это Катины!» — оживляется девочка с косичками, тыча пальцем в обувь. — «Она их всегда носит, даже когда дождь!»" + "text": "У входа в отряд вы видите десятки пар обуви, аккуратно выставленных в ряд. Среди них вы сразу замечаете кроссовки с характерным зигзагообразным протектором, слегка запачканные грязью и... чем-то тёмным у носка. «Это Катины!»([КС]) — оживляется девочка с косичками, тыча пальцем в обувь. — «Она их всегда носит, даже когда дождь!»" }, { "code": "П", @@ -79,7 +79,7 @@ { "code": "С-2", "name": "Стадион", - "text": "На стадионе вы встречаете детей 3 и 4 отрядов. Вы интересуетесь, почему они не собирают вещи. Вам рассказывают, что их вожатые самые классные на земле, они приучили их к спорту — каждое утро они даже бегали с Катей вокруг стадиона и водонапорной вышки. Но сегодня последний день и Катя почему-то отправила их играть в волейбол, а бегать запретила." + "text": "На стадионе вы встречаете детей 3([О-3]) и 4([О-4]) отрядов. Вы интересуетесь, почему они не собирают вещи. Вам рассказывают, что их вожатые самые классные на земле, они приучили их к спорту — каждое утро они даже бегали с Катей([КС]) вокруг стадиона и водонапорной вышки. Но сегодня последний день и Катя почему-то отправила их играть в волейбол, а бегать запретила." }, { "code": "Т", @@ -95,12 +95,12 @@ { "code": "МК", "name": "Макс Крутов", - "text": "Перед вами парень в рваных джинсах и черной футболке, похожий на музыканта. Говорит, что был в душе вчера во время дискотеки: «Тёма был на дискотеке, а наши все вчера на медляках отжигали. Ну, я и решил помыться. Пока в душ шёл у администрации у Лехи сигарету и стрельнул. Поговорили немного, о чем я вам не могу сказать. Потом мы заметили за туалетом какие-то шорохи, Леха решил проверить, сказал, что за одно и обход сделает, якобы лишним не будет, ответственный наш» — Пока он это рассказывал мимо проходил директор — «Смотрите наш броненосец пиджак скинул, а я думал это его кожа!»." + "text": "Перед вами парень в рваных джинсах и черной футболке, похожий на музыканта. Говорит, что был в душе вчера во время дискотеки: «Тёма([АК]) был на дискотеке, а наши все вчера на медляках отжигали. Ну, я и решил помыться. Пока в душ шёл у администрации у Лехи сигарету и стрельнул. Поговорили немного, о чем я вам не могу сказать. Потом мы заметили за туалетом какие-то шорохи, Леха решил проверить, сказал, что за одно и обход сделает, якобы лишним не будет, ответственный наш» — Пока он это рассказывал мимо проходил директор — «Смотрите наш броненосец пиджак скинул, а я думал это его кожа!»." }, { "code": "АК", "name": "Артём Ковалёв", - "text": "«Я следил за детьми в клубе, даже драку девочек разнял — ребята утром подслушали ссору Лехи с Алиной и поддерживали разные стороны, как видите очень яро. Макс отпросился в душ, с парнями вчера спортом был занят весь день»." + "text": "«Я следил за детьми в клубе, даже драку девочек разнял — ребята утром подслушали ссору Лехи с Алиной([АЗ]) и поддерживали разные стороны, как видите очень яро. Макс([МК]) отпросился в душ, с парнями вчера спортом был занят весь день»." }, { "code": "ДО", @@ -146,12 +146,12 @@ { "code": "СС", "name": "Сергей Смирнов", - "text": "Вы подошли к мужчине среднего роста в спортивном костюме: «Вечером телевизор смотрел, музыка долбила спать не давала. Петрович([ВПБ]) заходил, мы досмотрели “музыкальный ринг” да и побёг он. На дискотеки я не ходок, да и Лёха сказал помощь не нужна. За день набегался, дел много и не только своих, там помоги, сям помоги, никто ничего не может, вот и помогаю. Устаю, возраст как никак. Петрович попросил, вчера помочь с вывозом мусора, с тех пор в коморке и сидел. Лёху видел последний раз в воскресенье, он сказал зарядку не проводить пущай дети поспят»." + "text": "Вы подошли к мужчине среднего роста в спортивном костюме: «Вечером телевизор смотрел, музыка долбила спать не давала. Петрович([ВПБ]) заходил, мы досмотрели “музыкальный ринг” да и побёг он. На дискотеки я не ходок, да и Лёха сказал помощь не нужна. За день набегался, дел много и не только своих, там помоги, сям помоги, никто ничего не может, вот и помогаю. Устаю, возраст как никак. Петрович попросил, вчера помочь с вывозом мусора, с тех пор в коморке([К-3]) и сидел. Лёху видел последний раз в воскресенье, он сказал зарядку не проводить пущай дети поспят»." }, { "code": "ВПБ", "name": "Виктор Петрович Белов", - "text": "«У меня свой режим: завтрак в 9 утра, вынос мусора в 9 вечера, в 11 вечера обход. Всю дискотеку Лёха сидел в администрации, как с концерта пришел, так и не выходил. В пол десятого я до клуба отходил проверить все ли спокойно во время дискотеки, проверил все и за клубом, площадь посмотрел — минут 30 заняло. Фонари давно у клуба не работают, пришлось с фонариком везде лазить. Тело обнаружил уже на обходе — очень перепугался и сразу в администрацию побежал».", + "text": "«У меня свой режим: завтрак в 9 утра, вынос мусора в 9 вечера, в 11 вечера обход. Всю дискотеку Лёха сидел в администрации([А]), как с концерта пришел, так и не выходил. В пол десятого я до клуба([К-1]) отходил проверить все ли спокойно во время дискотеки, проверил все и за клубом, площадь посмотрел — минут 30 заняло. Фонари давно у клуба не работают, пришлось с фонариком везде лазить. Тело обнаружил уже на обходе — очень перепугался и сразу в администрацию побежал».", "applications": [{ "name": "Карта лагеря" }] } ] diff --git a/internal/app/server.go b/internal/app/server.go index 2e7cf28..93a7778 100644 --- a/internal/app/server.go +++ b/internal/app/server.go @@ -67,3 +67,7 @@ func (s *Server) DownloadTeamsQrCodesFile(ctx context.Context, req *proto.Downlo func (s *Server) GetGraph(ctx context.Context, req *proto.GetGraphReq) (*proto.GetGraphRsp, error) { return s.services.GetGraph(ctx, req) } + +func (s *Server) UpdateNode(ctx context.Context, req *proto.UpdateNodeReq) (*proto.UpdateNodeRsp, error) { + return s.services.UpdateNode(ctx, req) +} diff --git a/internal/services/services.go b/internal/services/services.go index bc4bf51..3d3ba66 100644 --- a/internal/services/services.go +++ b/internal/services/services.go @@ -187,7 +187,7 @@ func (s *Services) AddTeams(ctx context.Context, req *proto.AddTeamsReq) (*proto } func (s *Services) DownloadTeamsQrCodesFile(ctx context.Context, req *proto.DownloadTeamsQrCodesFileReq) (*proto.DownloadTeamsQrCodesFileRsp, error) { - ctx, cancel := context.WithTimeout(context.Background(), 3*time.Second) + ctx, cancel := context.WithTimeout(ctx, 3*time.Second) defer cancel() teams, err := s.repository.GetTeams(ctx) if err != nil { @@ -200,20 +200,43 @@ func (s *Services) DownloadTeamsQrCodesFile(ctx context.Context, req *proto.Down return &proto.DownloadTeamsQrCodesFileRsp{Result: b}, nil } +func (s *Services) UpdateNode(ctx context.Context, req *proto.UpdateNodeReq) (*proto.UpdateNodeRsp, error) { + applications := make([]*story_service.GraphApplication, 0, len(req.Node.Applications)) + for _, application := range req.Node.Applications { + applications = append( + applications, + &story_service.GraphApplication{ + Name: application.Name, + }, + ) + } + node := &story_service.GraphNode{ + ID: req.Node.Id, + Label: req.Node.Label, + Name: req.Node.Name, + Text: req.Node.Text, + Applications: applications, + } + if err := s.storyService.UpdatePlace(node); err != nil { + return nil, err + } + return &proto.UpdateNodeRsp{}, nil +} + func (s *Services) GetGraph(ctx context.Context, req *proto.GetGraphReq) (*proto.GetGraphRsp, error) { graph := s.storyService.GetGraph(ctx) - nodes := make([]*proto.GetGraphRsp_Node, 0, len(graph.Nodes)) + nodes := make([]*proto.GraphNode, 0, len(graph.Nodes)) for _, node := range graph.Nodes { - applications := make([]*proto.GetGraphRsp_Application, 0, len(node.Applications)) + applications := make([]*proto.GraphApplication, 0, len(node.Applications)) for _, application := range node.Applications { applications = append( applications, - &proto.GetGraphRsp_Application{ + &proto.GraphApplication{ Name: application.Name, }, ) } - nodes = append(nodes, &proto.GetGraphRsp_Node{ + nodes = append(nodes, &proto.GraphNode{ Id: node.ID, Label: node.Label, Name: node.Name, diff --git a/internal/services/story_service/service.go b/internal/services/story_service/service.go index 955fe89..b80bebd 100644 --- a/internal/services/story_service/service.go +++ b/internal/services/story_service/service.go @@ -11,23 +11,24 @@ import ( ) type StoryService struct { - story *Story + filepath string + story *Story } func NewStoryService(filepath string) (*StoryService, error) { - s := &StoryService{} - if err := s.Load(filepath); err != nil { + s := &StoryService{filepath: filepath} + if err := s.Load(); err != nil { return nil, err } return s, nil } -func (s *StoryService) Load(filepath string) error { - data, err := os.ReadFile(filepath) +func (s *StoryService) Load() error { + data, err := os.ReadFile(s.filepath) if err != nil { - return fmt.Errorf("story file %s not found", filepath) + return fmt.Errorf("story file %s not found", s.filepath) } - log.Printf("load story from: %s", filepath) + log.Printf("load story from: %s", s.filepath) story := &Story{} if err := json.Unmarshal(data, story); err != nil { return err @@ -36,19 +37,26 @@ func (s *StoryService) Load(filepath string) error { return nil } -func (s *StoryService) Save(filepath string) error { +func (s *StoryService) Save() error { story := s.story data, err := json.Marshal(story) if err != nil { return err } - if err := os.WriteFile(filepath, data, 0x777); err != nil { + if err := os.WriteFile(s.filepath, data, 0x777); err != nil { return err } - log.Printf("save story to: %s", filepath) + log.Printf("save story to: %s", s.filepath) return nil } +func (s *StoryService) Update() error { + if err := s.Save(); err != nil { + return err + } + return s.Load() +} + func (s *StoryService) GetPlace(code string) *Place { if strings.HasPrefix(code, "[") || strings.HasSuffix(code, "]") { return &Place{ @@ -77,6 +85,22 @@ func (s *StoryService) GetPlace(code string) *Place { } } +func (s *StoryService) UpdatePlace(node *GraphNode) error { + for i := range s.story.Places { + if s.story.Places[i].Code == node.Label { + s.story.Places[i] = &Place{ + Code: s.story.Places[i].Code, + Name: node.Name, + Text: node.Text, + Applications: s.story.Places[i].Applications, + } + break + } + } + s.Update() + return nil +} + func (s *StoryService) GetGraph(ctx context.Context) *Graph { m := make(map[string]int32, len(s.story.Places)) nodes := make([]*GraphNode, 0, len(s.story.Places)) diff --git a/proto/main.pb.go b/proto/main.pb.go index 19a03b7..c7a887e 100644 --- a/proto/main.pb.go +++ b/proto/main.pb.go @@ -1288,7 +1288,7 @@ func (*GetGraphReq) Descriptor() ([]byte, []int) { type GetGraphRsp struct { state protoimpl.MessageState `protogen:"open.v1"` - Nodes []*GetGraphRsp_Node `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"` + Nodes []*GraphNode `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"` Edges []*GetGraphRsp_Edge `protobuf:"bytes,2,rep,name=edges,proto3" json:"edges,omitempty"` CountNodes int32 `protobuf:"varint,3,opt,name=countNodes,proto3" json:"countNodes,omitempty"` CountEdges int32 `protobuf:"varint,4,opt,name=countEdges,proto3" json:"countEdges,omitempty"` @@ -1326,7 +1326,7 @@ func (*GetGraphRsp) Descriptor() ([]byte, []int) { return file_main_proto_rawDescGZIP(), []int{28} } -func (x *GetGraphRsp) GetNodes() []*GetGraphRsp_Node { +func (x *GetGraphRsp) GetNodes() []*GraphNode { if x != nil { return x.Nodes } @@ -1354,31 +1354,27 @@ func (x *GetGraphRsp) GetCountEdges() int32 { return 0 } -type GetGraphRsp_Node struct { - state protoimpl.MessageState `protogen:"open.v1"` - Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` - Label string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"` - Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` - Text string `protobuf:"bytes,4,opt,name=text,proto3" json:"text,omitempty"` - Applications []*GetGraphRsp_Application `protobuf:"bytes,5,rep,name=applications,proto3" json:"applications,omitempty"` +type UpdateNodeReq struct { + state protoimpl.MessageState `protogen:"open.v1"` + Node *GraphNode `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } -func (x *GetGraphRsp_Node) Reset() { - *x = GetGraphRsp_Node{} +func (x *UpdateNodeReq) Reset() { + *x = UpdateNodeReq{} mi := &file_main_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *GetGraphRsp_Node) String() string { +func (x *UpdateNodeReq) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetGraphRsp_Node) ProtoMessage() {} +func (*UpdateNodeReq) ProtoMessage() {} -func (x *GetGraphRsp_Node) ProtoReflect() protoreflect.Message { +func (x *UpdateNodeReq) ProtoReflect() protoreflect.Message { mi := &file_main_proto_msgTypes[29] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1390,46 +1386,174 @@ func (x *GetGraphRsp_Node) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetGraphRsp_Node.ProtoReflect.Descriptor instead. -func (*GetGraphRsp_Node) Descriptor() ([]byte, []int) { - return file_main_proto_rawDescGZIP(), []int{28, 0} +// Deprecated: Use UpdateNodeReq.ProtoReflect.Descriptor instead. +func (*UpdateNodeReq) Descriptor() ([]byte, []int) { + return file_main_proto_rawDescGZIP(), []int{29} } -func (x *GetGraphRsp_Node) GetId() int32 { +func (x *UpdateNodeReq) GetNode() *GraphNode { + if x != nil { + return x.Node + } + return nil +} + +type UpdateNodeRsp struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *UpdateNodeRsp) Reset() { + *x = UpdateNodeRsp{} + mi := &file_main_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *UpdateNodeRsp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateNodeRsp) ProtoMessage() {} + +func (x *UpdateNodeRsp) ProtoReflect() protoreflect.Message { + mi := &file_main_proto_msgTypes[30] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateNodeRsp.ProtoReflect.Descriptor instead. +func (*UpdateNodeRsp) Descriptor() ([]byte, []int) { + return file_main_proto_rawDescGZIP(), []int{30} +} + +type GraphNode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + Label string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"` + Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` + Text string `protobuf:"bytes,4,opt,name=text,proto3" json:"text,omitempty"` + Applications []*GraphApplication `protobuf:"bytes,5,rep,name=applications,proto3" json:"applications,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *GraphNode) Reset() { + *x = GraphNode{} + mi := &file_main_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *GraphNode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GraphNode) ProtoMessage() {} + +func (x *GraphNode) ProtoReflect() protoreflect.Message { + mi := &file_main_proto_msgTypes[31] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GraphNode.ProtoReflect.Descriptor instead. +func (*GraphNode) Descriptor() ([]byte, []int) { + return file_main_proto_rawDescGZIP(), []int{31} +} + +func (x *GraphNode) GetId() int32 { if x != nil { return x.Id } return 0 } -func (x *GetGraphRsp_Node) GetLabel() string { +func (x *GraphNode) GetLabel() string { if x != nil { return x.Label } return "" } -func (x *GetGraphRsp_Node) GetName() string { +func (x *GraphNode) GetName() string { if x != nil { return x.Name } return "" } -func (x *GetGraphRsp_Node) GetText() string { +func (x *GraphNode) GetText() string { if x != nil { return x.Text } return "" } -func (x *GetGraphRsp_Node) GetApplications() []*GetGraphRsp_Application { +func (x *GraphNode) GetApplications() []*GraphApplication { if x != nil { return x.Applications } return nil } +type GraphApplication struct { + state protoimpl.MessageState `protogen:"open.v1"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *GraphApplication) Reset() { + *x = GraphApplication{} + mi := &file_main_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *GraphApplication) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GraphApplication) ProtoMessage() {} + +func (x *GraphApplication) ProtoReflect() protoreflect.Message { + mi := &file_main_proto_msgTypes[32] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GraphApplication.ProtoReflect.Descriptor instead. +func (*GraphApplication) Descriptor() ([]byte, []int) { + return file_main_proto_rawDescGZIP(), []int{32} +} + +func (x *GraphApplication) GetName() string { + if x != nil { + return x.Name + } + return "" +} + type GetGraphRsp_Edge struct { state protoimpl.MessageState `protogen:"open.v1"` From int32 `protobuf:"varint,1,opt,name=from,proto3" json:"from,omitempty"` @@ -1441,7 +1565,7 @@ type GetGraphRsp_Edge struct { func (x *GetGraphRsp_Edge) Reset() { *x = GetGraphRsp_Edge{} - mi := &file_main_proto_msgTypes[30] + mi := &file_main_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1453,7 +1577,7 @@ func (x *GetGraphRsp_Edge) String() string { func (*GetGraphRsp_Edge) ProtoMessage() {} func (x *GetGraphRsp_Edge) ProtoReflect() protoreflect.Message { - mi := &file_main_proto_msgTypes[30] + mi := &file_main_proto_msgTypes[33] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1466,7 +1590,7 @@ func (x *GetGraphRsp_Edge) ProtoReflect() protoreflect.Message { // Deprecated: Use GetGraphRsp_Edge.ProtoReflect.Descriptor instead. func (*GetGraphRsp_Edge) Descriptor() ([]byte, []int) { - return file_main_proto_rawDescGZIP(), []int{28, 1} + return file_main_proto_rawDescGZIP(), []int{28, 0} } func (x *GetGraphRsp_Edge) GetFrom() int32 { @@ -1490,50 +1614,6 @@ func (x *GetGraphRsp_Edge) GetArrows() string { return "" } -type GetGraphRsp_Application struct { - state protoimpl.MessageState `protogen:"open.v1"` - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *GetGraphRsp_Application) Reset() { - *x = GetGraphRsp_Application{} - mi := &file_main_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *GetGraphRsp_Application) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGraphRsp_Application) ProtoMessage() {} - -func (x *GetGraphRsp_Application) ProtoReflect() protoreflect.Message { - mi := &file_main_proto_msgTypes[31] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetGraphRsp_Application.ProtoReflect.Descriptor instead. -func (*GetGraphRsp_Application) Descriptor() ([]byte, []int) { - return file_main_proto_rawDescGZIP(), []int{28, 2} -} - -func (x *GetGraphRsp_Application) GetName() string { - if x != nil { - return x.Name - } - return "" -} - var File_main_proto protoreflect.FileDescriptor const file_main_proto_rawDesc = "" + @@ -1603,29 +1683,31 @@ const file_main_proto_rawDesc = "" + "\x1bDownloadTeamsQrCodesFileReq\"5\n" + "\x1bDownloadTeamsQrCodesFileRsp\x12\x16\n" + "\x06result\x18\x01 \x01(\fR\x06result\"\r\n" + - "\vGetGraphReq\"\xe3\x03\n" + - "\vGetGraphRsp\x12?\n" + - "\x05nodes\x18\x01 \x03(\v2).crabs.evening_detective.GetGraphRsp.NodeR\x05nodes\x12?\n" + + "\vGetGraphReq\"\x8c\x02\n" + + "\vGetGraphRsp\x128\n" + + "\x05nodes\x18\x01 \x03(\v2\".crabs.evening_detective.GraphNodeR\x05nodes\x12?\n" + "\x05edges\x18\x02 \x03(\v2).crabs.evening_detective.GetGraphRsp.EdgeR\x05edges\x12\x1e\n" + "\n" + "countNodes\x18\x03 \x01(\x05R\n" + "countNodes\x12\x1e\n" + "\n" + "countEdges\x18\x04 \x01(\x05R\n" + - "countEdges\x1a\xaa\x01\n" + - "\x04Node\x12\x0e\n" + - "\x02id\x18\x01 \x01(\x05R\x02id\x12\x14\n" + - "\x05label\x18\x02 \x01(\tR\x05label\x12\x12\n" + - "\x04name\x18\x03 \x01(\tR\x04name\x12\x12\n" + - "\x04text\x18\x04 \x01(\tR\x04text\x12T\n" + - "\fapplications\x18\x05 \x03(\v20.crabs.evening_detective.GetGraphRsp.ApplicationR\fapplications\x1aB\n" + + "countEdges\x1aB\n" + "\x04Edge\x12\x12\n" + "\x04from\x18\x01 \x01(\x05R\x04from\x12\x0e\n" + "\x02to\x18\x02 \x01(\x05R\x02to\x12\x16\n" + - "\x06arrows\x18\x03 \x01(\tR\x06arrows\x1a!\n" + - "\vApplication\x12\x12\n" + - "\x04name\x18\x01 \x01(\tR\x04name2\xed\n" + - "\n" + + "\x06arrows\x18\x03 \x01(\tR\x06arrows\"G\n" + + "\rUpdateNodeReq\x126\n" + + "\x04node\x18\x01 \x01(\v2\".crabs.evening_detective.GraphNodeR\x04node\"\x0f\n" + + "\rUpdateNodeRsp\"\xa8\x01\n" + + "\tGraphNode\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x05R\x02id\x12\x14\n" + + "\x05label\x18\x02 \x01(\tR\x05label\x12\x12\n" + + "\x04name\x18\x03 \x01(\tR\x04name\x12\x12\n" + + "\x04text\x18\x04 \x01(\tR\x04text\x12M\n" + + "\fapplications\x18\x05 \x03(\v2).crabs.evening_detective.GraphApplicationR\fapplications\"&\n" + + "\x10GraphApplication\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name2\xe4\v\n" + "\x10EveningDetective\x12Y\n" + "\x04Ping\x12 .crabs.evening_detective.PingReq\x1a .crabs.evening_detective.PingRsp\"\r\x82\xd3\xe4\x93\x02\a\x12\x05/ping\x12i\n" + "\bAddTeams\x12$.crabs.evening_detective.AddTeamsReq\x1a$.crabs.evening_detective.AddTeamsRsp\"\x11\x82\xd3\xe4\x93\x02\v:\x01*\"\x06/teams\x12f\n" + @@ -1640,7 +1722,9 @@ const file_main_proto_rawDesc = "" + "\x10GiveApplications\x12,.crabs.evening_detective.GiveApplicationsReq\x1a,.crabs.evening_detective.GiveApplicationsRsp\"'\x82\xd3\xe4\x93\x02!:\x01*\"\x1c/teams/{teamId}/applications\x12\x9a\x01\n" + "\x18DownloadTeamsQrCodesFile\x124.crabs.evening_detective.DownloadTeamsQrCodesFileReq\x1a4.crabs.evening_detective.DownloadTeamsQrCodesFileRsp\"\x12\x82\xd3\xe4\x93\x02\f\x12\n" + "/teams/pdf\x12f\n" + - "\bGetGraph\x12$.crabs.evening_detective.GetGraphReq\x1a$.crabs.evening_detective.GetGraphRsp\"\x0e\x82\xd3\xe4\x93\x02\b\x12\x06/graphB\vZ\tpkg/protob\x06proto3" + "\bGetGraph\x12$.crabs.evening_detective.GetGraphReq\x1a$.crabs.evening_detective.GetGraphRsp\"\x0e\x82\xd3\xe4\x93\x02\b\x12\x06/graph\x12u\n" + + "\n" + + "UpdateNode\x12&.crabs.evening_detective.UpdateNodeReq\x1a&.crabs.evening_detective.UpdateNodeRsp\"\x17\x82\xd3\xe4\x93\x02\x11:\x01*\x1a\f/graph/nodesB\vZ\tpkg/protob\x06proto3" var ( file_main_proto_rawDescOnce sync.Once @@ -1654,7 +1738,7 @@ func file_main_proto_rawDescGZIP() []byte { return file_main_proto_rawDescData } -var file_main_proto_msgTypes = make([]protoimpl.MessageInfo, 32) +var file_main_proto_msgTypes = make([]protoimpl.MessageInfo, 34) var file_main_proto_goTypes = []any{ (*PingReq)(nil), // 0: crabs.evening_detective.PingReq (*PingRsp)(nil), // 1: crabs.evening_detective.PingRsp @@ -1685,9 +1769,11 @@ var file_main_proto_goTypes = []any{ (*DownloadTeamsQrCodesFileRsp)(nil), // 26: crabs.evening_detective.DownloadTeamsQrCodesFileRsp (*GetGraphReq)(nil), // 27: crabs.evening_detective.GetGraphReq (*GetGraphRsp)(nil), // 28: crabs.evening_detective.GetGraphRsp - (*GetGraphRsp_Node)(nil), // 29: crabs.evening_detective.GetGraphRsp.Node - (*GetGraphRsp_Edge)(nil), // 30: crabs.evening_detective.GetGraphRsp.Edge - (*GetGraphRsp_Application)(nil), // 31: crabs.evening_detective.GetGraphRsp.Application + (*UpdateNodeReq)(nil), // 29: crabs.evening_detective.UpdateNodeReq + (*UpdateNodeRsp)(nil), // 30: crabs.evening_detective.UpdateNodeRsp + (*GraphNode)(nil), // 31: crabs.evening_detective.GraphNode + (*GraphApplication)(nil), // 32: crabs.evening_detective.GraphApplication + (*GetGraphRsp_Edge)(nil), // 33: crabs.evening_detective.GetGraphRsp.Edge } var file_main_proto_depIdxs = []int32{ 3, // 0: crabs.evening_detective.AddTeamsReq.teams:type_name -> crabs.evening_detective.Team @@ -1697,38 +1783,41 @@ var file_main_proto_depIdxs = []int32{ 16, // 4: crabs.evening_detective.GetTeamRsp.actions:type_name -> crabs.evening_detective.Action 11, // 5: crabs.evening_detective.Action.applications:type_name -> crabs.evening_detective.Application 11, // 6: crabs.evening_detective.GiveApplicationsReq.applications:type_name -> crabs.evening_detective.Application - 29, // 7: crabs.evening_detective.GetGraphRsp.nodes:type_name -> crabs.evening_detective.GetGraphRsp.Node - 30, // 8: crabs.evening_detective.GetGraphRsp.edges:type_name -> crabs.evening_detective.GetGraphRsp.Edge - 31, // 9: crabs.evening_detective.GetGraphRsp.Node.applications:type_name -> crabs.evening_detective.GetGraphRsp.Application - 0, // 10: crabs.evening_detective.EveningDetective.Ping:input_type -> crabs.evening_detective.PingReq - 2, // 11: crabs.evening_detective.EveningDetective.AddTeams:input_type -> crabs.evening_detective.AddTeamsReq - 6, // 12: crabs.evening_detective.EveningDetective.GetTeams:input_type -> crabs.evening_detective.GetTeamsReq - 8, // 13: crabs.evening_detective.EveningDetective.GetTeamsCSV:input_type -> crabs.evening_detective.GetTeamsCSVReq - 12, // 14: crabs.evening_detective.EveningDetective.GetTeam:input_type -> crabs.evening_detective.GetTeamReq - 14, // 15: crabs.evening_detective.EveningDetective.AddAction:input_type -> crabs.evening_detective.AddActionReq - 17, // 16: crabs.evening_detective.EveningDetective.GetGame:input_type -> crabs.evening_detective.GetGameReq - 19, // 17: crabs.evening_detective.EveningDetective.GameStart:input_type -> crabs.evening_detective.GameStartReq - 21, // 18: crabs.evening_detective.EveningDetective.GameStop:input_type -> crabs.evening_detective.GameStopReq - 23, // 19: crabs.evening_detective.EveningDetective.GiveApplications:input_type -> crabs.evening_detective.GiveApplicationsReq - 25, // 20: crabs.evening_detective.EveningDetective.DownloadTeamsQrCodesFile:input_type -> crabs.evening_detective.DownloadTeamsQrCodesFileReq - 27, // 21: crabs.evening_detective.EveningDetective.GetGraph:input_type -> crabs.evening_detective.GetGraphReq - 1, // 22: crabs.evening_detective.EveningDetective.Ping:output_type -> crabs.evening_detective.PingRsp - 4, // 23: crabs.evening_detective.EveningDetective.AddTeams:output_type -> crabs.evening_detective.AddTeamsRsp - 7, // 24: crabs.evening_detective.EveningDetective.GetTeams:output_type -> crabs.evening_detective.GetTeamsRsp - 9, // 25: crabs.evening_detective.EveningDetective.GetTeamsCSV:output_type -> crabs.evening_detective.GetTeamsCSVRsp - 13, // 26: crabs.evening_detective.EveningDetective.GetTeam:output_type -> crabs.evening_detective.GetTeamRsp - 15, // 27: crabs.evening_detective.EveningDetective.AddAction:output_type -> crabs.evening_detective.AddActionRsp - 18, // 28: crabs.evening_detective.EveningDetective.GetGame:output_type -> crabs.evening_detective.GetGameRsp - 20, // 29: crabs.evening_detective.EveningDetective.GameStart:output_type -> crabs.evening_detective.GameStartRsp - 22, // 30: crabs.evening_detective.EveningDetective.GameStop:output_type -> crabs.evening_detective.GameStopRsp - 24, // 31: crabs.evening_detective.EveningDetective.GiveApplications:output_type -> crabs.evening_detective.GiveApplicationsRsp - 26, // 32: crabs.evening_detective.EveningDetective.DownloadTeamsQrCodesFile:output_type -> crabs.evening_detective.DownloadTeamsQrCodesFileRsp - 28, // 33: crabs.evening_detective.EveningDetective.GetGraph:output_type -> crabs.evening_detective.GetGraphRsp - 22, // [22:34] is the sub-list for method output_type - 10, // [10:22] is the sub-list for method input_type - 10, // [10:10] is the sub-list for extension type_name - 10, // [10:10] is the sub-list for extension extendee - 0, // [0:10] is the sub-list for field type_name + 31, // 7: crabs.evening_detective.GetGraphRsp.nodes:type_name -> crabs.evening_detective.GraphNode + 33, // 8: crabs.evening_detective.GetGraphRsp.edges:type_name -> crabs.evening_detective.GetGraphRsp.Edge + 31, // 9: crabs.evening_detective.UpdateNodeReq.node:type_name -> crabs.evening_detective.GraphNode + 32, // 10: crabs.evening_detective.GraphNode.applications:type_name -> crabs.evening_detective.GraphApplication + 0, // 11: crabs.evening_detective.EveningDetective.Ping:input_type -> crabs.evening_detective.PingReq + 2, // 12: crabs.evening_detective.EveningDetective.AddTeams:input_type -> crabs.evening_detective.AddTeamsReq + 6, // 13: crabs.evening_detective.EveningDetective.GetTeams:input_type -> crabs.evening_detective.GetTeamsReq + 8, // 14: crabs.evening_detective.EveningDetective.GetTeamsCSV:input_type -> crabs.evening_detective.GetTeamsCSVReq + 12, // 15: crabs.evening_detective.EveningDetective.GetTeam:input_type -> crabs.evening_detective.GetTeamReq + 14, // 16: crabs.evening_detective.EveningDetective.AddAction:input_type -> crabs.evening_detective.AddActionReq + 17, // 17: crabs.evening_detective.EveningDetective.GetGame:input_type -> crabs.evening_detective.GetGameReq + 19, // 18: crabs.evening_detective.EveningDetective.GameStart:input_type -> crabs.evening_detective.GameStartReq + 21, // 19: crabs.evening_detective.EveningDetective.GameStop:input_type -> crabs.evening_detective.GameStopReq + 23, // 20: crabs.evening_detective.EveningDetective.GiveApplications:input_type -> crabs.evening_detective.GiveApplicationsReq + 25, // 21: crabs.evening_detective.EveningDetective.DownloadTeamsQrCodesFile:input_type -> crabs.evening_detective.DownloadTeamsQrCodesFileReq + 27, // 22: crabs.evening_detective.EveningDetective.GetGraph:input_type -> crabs.evening_detective.GetGraphReq + 29, // 23: crabs.evening_detective.EveningDetective.UpdateNode:input_type -> crabs.evening_detective.UpdateNodeReq + 1, // 24: crabs.evening_detective.EveningDetective.Ping:output_type -> crabs.evening_detective.PingRsp + 4, // 25: crabs.evening_detective.EveningDetective.AddTeams:output_type -> crabs.evening_detective.AddTeamsRsp + 7, // 26: crabs.evening_detective.EveningDetective.GetTeams:output_type -> crabs.evening_detective.GetTeamsRsp + 9, // 27: crabs.evening_detective.EveningDetective.GetTeamsCSV:output_type -> crabs.evening_detective.GetTeamsCSVRsp + 13, // 28: crabs.evening_detective.EveningDetective.GetTeam:output_type -> crabs.evening_detective.GetTeamRsp + 15, // 29: crabs.evening_detective.EveningDetective.AddAction:output_type -> crabs.evening_detective.AddActionRsp + 18, // 30: crabs.evening_detective.EveningDetective.GetGame:output_type -> crabs.evening_detective.GetGameRsp + 20, // 31: crabs.evening_detective.EveningDetective.GameStart:output_type -> crabs.evening_detective.GameStartRsp + 22, // 32: crabs.evening_detective.EveningDetective.GameStop:output_type -> crabs.evening_detective.GameStopRsp + 24, // 33: crabs.evening_detective.EveningDetective.GiveApplications:output_type -> crabs.evening_detective.GiveApplicationsRsp + 26, // 34: crabs.evening_detective.EveningDetective.DownloadTeamsQrCodesFile:output_type -> crabs.evening_detective.DownloadTeamsQrCodesFileRsp + 28, // 35: crabs.evening_detective.EveningDetective.GetGraph:output_type -> crabs.evening_detective.GetGraphRsp + 30, // 36: crabs.evening_detective.EveningDetective.UpdateNode:output_type -> crabs.evening_detective.UpdateNodeRsp + 24, // [24:37] is the sub-list for method output_type + 11, // [11:24] is the sub-list for method input_type + 11, // [11:11] is the sub-list for extension type_name + 11, // [11:11] is the sub-list for extension extendee + 0, // [0:11] is the sub-list for field type_name } func init() { file_main_proto_init() } @@ -1742,7 +1831,7 @@ func file_main_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_main_proto_rawDesc), len(file_main_proto_rawDesc)), NumEnums: 0, - NumMessages: 32, + NumMessages: 34, NumExtensions: 0, NumServices: 1, }, diff --git a/proto/main.pb.gw.go b/proto/main.pb.gw.go index 9d63337..b0375fb 100644 --- a/proto/main.pb.gw.go +++ b/proto/main.pb.gw.go @@ -335,6 +335,33 @@ func local_request_EveningDetective_GetGraph_0(ctx context.Context, marshaler ru return msg, metadata, err } +func request_EveningDetective_UpdateNode_0(ctx context.Context, marshaler runtime.Marshaler, client EveningDetectiveClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var ( + protoReq UpdateNodeReq + metadata runtime.ServerMetadata + ) + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && !errors.Is(err, io.EOF) { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if req.Body != nil { + _, _ = io.Copy(io.Discard, req.Body) + } + msg, err := client.UpdateNode(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err +} + +func local_request_EveningDetective_UpdateNode_0(ctx context.Context, marshaler runtime.Marshaler, server EveningDetectiveServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var ( + protoReq UpdateNodeReq + metadata runtime.ServerMetadata + ) + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && !errors.Is(err, io.EOF) { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + msg, err := server.UpdateNode(ctx, &protoReq) + return msg, metadata, err +} + // RegisterEveningDetectiveHandlerServer registers the http handlers for service EveningDetective to "mux". // UnaryRPC :call EveningDetectiveServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. @@ -581,6 +608,26 @@ func RegisterEveningDetectiveHandlerServer(ctx context.Context, mux *runtime.Ser } forward_EveningDetective_GetGraph_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) + mux.Handle(http.MethodPut, pattern_EveningDetective_UpdateNode_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/crabs.evening_detective.EveningDetective/UpdateNode", runtime.WithHTTPPathPattern("/graph/nodes")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_EveningDetective_UpdateNode_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + forward_EveningDetective_UpdateNode_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + }) return nil } @@ -825,6 +872,23 @@ func RegisterEveningDetectiveHandlerClient(ctx context.Context, mux *runtime.Ser } forward_EveningDetective_GetGraph_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) + mux.Handle(http.MethodPut, pattern_EveningDetective_UpdateNode_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/crabs.evening_detective.EveningDetective/UpdateNode", runtime.WithHTTPPathPattern("/graph/nodes")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_EveningDetective_UpdateNode_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + forward_EveningDetective_UpdateNode_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + }) return nil } @@ -841,6 +905,7 @@ var ( pattern_EveningDetective_GiveApplications_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 1, 0, 4, 1, 5, 1, 2, 2}, []string{"teams", "teamId", "applications"}, "")) pattern_EveningDetective_DownloadTeamsQrCodesFile_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"teams", "pdf"}, "")) pattern_EveningDetective_GetGraph_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0}, []string{"graph"}, "")) + pattern_EveningDetective_UpdateNode_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"graph", "nodes"}, "")) ) var ( @@ -856,4 +921,5 @@ var ( forward_EveningDetective_GiveApplications_0 = runtime.ForwardResponseMessage forward_EveningDetective_DownloadTeamsQrCodesFile_0 = runtime.ForwardResponseMessage forward_EveningDetective_GetGraph_0 = runtime.ForwardResponseMessage + forward_EveningDetective_UpdateNode_0 = runtime.ForwardResponseMessage ) diff --git a/proto/main.swagger.json b/proto/main.swagger.json index f888180..ee962f2 100644 --- a/proto/main.swagger.json +++ b/proto/main.swagger.json @@ -141,6 +141,38 @@ ] } }, + "/graph/nodes": { + "put": { + "operationId": "EveningDetective_UpdateNode", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/evening_detectiveUpdateNodeRsp" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/runtimeError" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/evening_detectiveUpdateNodeReq" + } + } + ], + "tags": [ + "EveningDetective" + ] + } + }, "/ping": { "get": { "operationId": "EveningDetective_Ping", @@ -348,45 +380,6 @@ } } }, - "GetGraphRspNode": { - "type": "object", - "properties": { - "id": { - "type": "integer", - "format": "int32" - }, - "label": { - "type": "string" - }, - "name": { - "type": "string" - }, - "text": { - "type": "string" - }, - "applications": { - "type": "array", - "items": { - "$ref": "#/definitions/evening_detectiveGetGraphRspApplication" - } - } - } - }, - "crabsevening_detectiveApplication": { - "type": "object", - "properties": { - "id": { - "type": "string", - "format": "int64" - }, - "name": { - "type": "string" - }, - "state": { - "type": "string" - } - } - }, "evening_detectiveAction": { "type": "object", "properties": { @@ -406,7 +399,7 @@ "applications": { "type": "array", "items": { - "$ref": "#/definitions/crabsevening_detectiveApplication" + "$ref": "#/definitions/evening_detectiveApplication" } } } @@ -444,6 +437,21 @@ } } }, + "evening_detectiveApplication": { + "type": "object", + "properties": { + "id": { + "type": "string", + "format": "int64" + }, + "name": { + "type": "string" + }, + "state": { + "type": "string" + } + } + }, "evening_detectiveDownloadTeamsQrCodesFileRsp": { "type": "object", "properties": { @@ -491,7 +499,7 @@ "nodes": { "type": "array", "items": { - "$ref": "#/definitions/GetGraphRspNode" + "$ref": "#/definitions/evening_detectiveGraphNode" } }, "edges": { @@ -510,14 +518,6 @@ } } }, - "evening_detectiveGetGraphRspApplication": { - "type": "object", - "properties": { - "name": { - "type": "string" - } - } - }, "evening_detectiveGetTeamRsp": { "type": "object", "properties": { @@ -561,7 +561,7 @@ "applications": { "type": "array", "items": { - "$ref": "#/definitions/crabsevening_detectiveApplication" + "$ref": "#/definitions/evening_detectiveApplication" } } } @@ -569,6 +569,38 @@ "evening_detectiveGiveApplicationsRsp": { "type": "object" }, + "evening_detectiveGraphApplication": { + "type": "object", + "properties": { + "name": { + "type": "string" + } + } + }, + "evening_detectiveGraphNode": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int32" + }, + "label": { + "type": "string" + }, + "name": { + "type": "string" + }, + "text": { + "type": "string" + }, + "applications": { + "type": "array", + "items": { + "$ref": "#/definitions/evening_detectiveGraphApplication" + } + } + } + }, "evening_detectivePingRsp": { "type": "object" }, @@ -603,7 +635,7 @@ "applications": { "type": "array", "items": { - "$ref": "#/definitions/crabsevening_detectiveApplication" + "$ref": "#/definitions/evening_detectiveApplication" } } } @@ -623,6 +655,17 @@ } } }, + "evening_detectiveUpdateNodeReq": { + "type": "object", + "properties": { + "node": { + "$ref": "#/definitions/evening_detectiveGraphNode" + } + } + }, + "evening_detectiveUpdateNodeRsp": { + "type": "object" + }, "protobufAny": { "type": "object", "properties": { diff --git a/proto/main_grpc.pb.go b/proto/main_grpc.pb.go index 1334819..9ef3b3a 100644 --- a/proto/main_grpc.pb.go +++ b/proto/main_grpc.pb.go @@ -31,6 +31,7 @@ const ( EveningDetective_GiveApplications_FullMethodName = "/crabs.evening_detective.EveningDetective/GiveApplications" EveningDetective_DownloadTeamsQrCodesFile_FullMethodName = "/crabs.evening_detective.EveningDetective/DownloadTeamsQrCodesFile" EveningDetective_GetGraph_FullMethodName = "/crabs.evening_detective.EveningDetective/GetGraph" + EveningDetective_UpdateNode_FullMethodName = "/crabs.evening_detective.EveningDetective/UpdateNode" ) // EveningDetectiveClient is the client API for EveningDetective service. @@ -49,6 +50,7 @@ type EveningDetectiveClient interface { GiveApplications(ctx context.Context, in *GiveApplicationsReq, opts ...grpc.CallOption) (*GiveApplicationsRsp, error) DownloadTeamsQrCodesFile(ctx context.Context, in *DownloadTeamsQrCodesFileReq, opts ...grpc.CallOption) (*DownloadTeamsQrCodesFileRsp, error) GetGraph(ctx context.Context, in *GetGraphReq, opts ...grpc.CallOption) (*GetGraphRsp, error) + UpdateNode(ctx context.Context, in *UpdateNodeReq, opts ...grpc.CallOption) (*UpdateNodeRsp, error) } type eveningDetectiveClient struct { @@ -179,6 +181,16 @@ func (c *eveningDetectiveClient) GetGraph(ctx context.Context, in *GetGraphReq, return out, nil } +func (c *eveningDetectiveClient) UpdateNode(ctx context.Context, in *UpdateNodeReq, opts ...grpc.CallOption) (*UpdateNodeRsp, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(UpdateNodeRsp) + err := c.cc.Invoke(ctx, EveningDetective_UpdateNode_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + // EveningDetectiveServer is the server API for EveningDetective service. // All implementations must embed UnimplementedEveningDetectiveServer // for forward compatibility. @@ -195,6 +207,7 @@ type EveningDetectiveServer interface { GiveApplications(context.Context, *GiveApplicationsReq) (*GiveApplicationsRsp, error) DownloadTeamsQrCodesFile(context.Context, *DownloadTeamsQrCodesFileReq) (*DownloadTeamsQrCodesFileRsp, error) GetGraph(context.Context, *GetGraphReq) (*GetGraphRsp, error) + UpdateNode(context.Context, *UpdateNodeReq) (*UpdateNodeRsp, error) mustEmbedUnimplementedEveningDetectiveServer() } @@ -241,6 +254,9 @@ func (UnimplementedEveningDetectiveServer) DownloadTeamsQrCodesFile(context.Cont func (UnimplementedEveningDetectiveServer) GetGraph(context.Context, *GetGraphReq) (*GetGraphRsp, error) { return nil, status.Errorf(codes.Unimplemented, "method GetGraph not implemented") } +func (UnimplementedEveningDetectiveServer) UpdateNode(context.Context, *UpdateNodeReq) (*UpdateNodeRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateNode not implemented") +} func (UnimplementedEveningDetectiveServer) mustEmbedUnimplementedEveningDetectiveServer() {} func (UnimplementedEveningDetectiveServer) testEmbeddedByValue() {} @@ -478,6 +494,24 @@ func _EveningDetective_GetGraph_Handler(srv interface{}, ctx context.Context, de return interceptor(ctx, in, info, handler) } +func _EveningDetective_UpdateNode_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateNodeReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(EveningDetectiveServer).UpdateNode(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: EveningDetective_UpdateNode_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(EveningDetectiveServer).UpdateNode(ctx, req.(*UpdateNodeReq)) + } + return interceptor(ctx, in, info, handler) +} + // EveningDetective_ServiceDesc is the grpc.ServiceDesc for EveningDetective service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -533,6 +567,10 @@ var EveningDetective_ServiceDesc = grpc.ServiceDesc{ MethodName: "GetGraph", Handler: _EveningDetective_GetGraph_Handler, }, + { + MethodName: "UpdateNode", + Handler: _EveningDetective_UpdateNode_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "main.proto",