UNPKG

vis-network

Version:

A dynamic, browser-based visualization library.

59 lines 404 kB
/** * vis-network * https://visjs.github.io/vis-network/ * * A dynamic, browser-based visualization library. * * @version 10.0.1 * @date 2025-07-13T08:15:32.270Z * * @copyright (c) 2011-2017 Almende B.V, http://almende.com * @copyright (c) 2017-2019 visjs contributors, https://github.com/visjs * * @license * vis.js is dual licensed under both * * 1. The Apache 2.0 License * http://www.apache.org/licenses/LICENSE-2.0 * * and * * 2. The MIT License * http://opensource.org/licenses/MIT * * vis.js may be distributed under either license. */ import{isDataViewLike as t,DataSet as e}from"vis-data/peer/esm/vis-data.js";var i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function o(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var n,s,r,a,h,d,l,c,u,p,f,g,m,v,y,b,w={};function _(){if(s)return n;s=1;var t=function(t){return t&&t.Math===Math&&t};return n=t("object"==typeof globalThis&&globalThis)||t("object"==typeof window&&window)||t("object"==typeof self&&self)||t("object"==typeof i&&i)||t("object"==typeof n&&n)||function(){return this}()||Function("return this")()}function x(){return a?r:(a=1,r=function(t){try{return!!t()}catch(t){return!0}})}function E(){return d?h:(d=1,h=!x()(function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")}))}function O(){if(c)return l;c=1;var t=E(),e=Function.prototype,i=e.apply,o=e.call;return l="object"==typeof Reflect&&Reflect.apply||(t?o.bind(i):function(){return o.apply(i,arguments)}),l}function C(){if(p)return u;p=1;var t=E(),e=Function.prototype,i=e.call,o=t&&e.bind.bind(i,i);return u=t?o:function(t){return function(){return i.apply(t,arguments)}},u}function k(){if(g)return f;g=1;var t=C(),e=t({}.toString),i=t("".slice);return f=function(t){return i(e(t),8,-1)},f}function S(){if(v)return m;v=1;var t=k(),e=C();return m=function(i){if("Function"===t(i))return e(i)}}function T(){if(b)return y;b=1;var t="object"==typeof document&&document.all;return y=void 0===t&&void 0!==t?function(e){return"function"==typeof e||e===t}:function(t){return"function"==typeof t}}var M,D,I,P,B={};function z(){return D?M:(D=1,M=!x()(function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}))}function F(){if(P)return I;P=1;var t=E(),e=Function.prototype.call;return I=t?e.bind(e):function(){return e.apply(e,arguments)},I}var N,A,R,j,L,H,W,V,q,U,Y,X,K,G,Z,Q,$,J,tt,et,it,ot,nt,st,rt,at,ht,dt,lt,ct,ut,pt,ft,gt,mt,vt,yt,bt={};function wt(){if(N)return bt;N=1;var t={}.propertyIsEnumerable,e=Object.getOwnPropertyDescriptor,i=e&&!t.call({1:2},1);return bt.f=i?function(t){var i=e(this,t);return!!i&&i.enumerable}:t,bt}function _t(){return R?A:(R=1,A=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}})}function xt(){if(L)return j;L=1;var t=C(),e=x(),i=k(),o=Object,n=t("".split);return j=e(function(){return!o("z").propertyIsEnumerable(0)})?function(t){return"String"===i(t)?n(t,""):o(t)}:o,j}function Et(){return W||(W=1,H=function(t){return null==t}),H}function Ot(){if(q)return V;q=1;var t=Et(),e=TypeError;return V=function(i){if(t(i))throw new e("Can't call method on "+i);return i},V}function Ct(){if(Y)return U;Y=1;var t=xt(),e=Ot();return U=function(i){return t(e(i))},U}function kt(){if(K)return X;K=1;var t=T();return X=function(e){return"object"==typeof e?null!==e:t(e)},X}function St(){return Z?G:(Z=1,G={})}function Tt(){if($)return Q;$=1;var t=St(),e=_(),i=T(),o=function(t){return i(t)?t:void 0};return Q=function(i,n){return arguments.length<2?o(t[i])||o(e[i]):t[i]&&t[i][n]||e[i]&&e[i][n]},Q}function Mt(){return tt?J:(tt=1,J=C()({}.isPrototypeOf))}function Dt(){if(it)return et;it=1;var t=_().navigator,e=t&&t.userAgent;return et=e?String(e):""}function It(){if(nt)return ot;nt=1;var t,e,i=_(),o=Dt(),n=i.process,s=i.Deno,r=n&&n.versions||s&&s.version,a=r&&r.v8;return a&&(e=(t=a.split("."))[0]>0&&t[0]<4?1:+(t[0]+t[1])),!e&&o&&(!(t=o.match(/Edge\/(\d+)/))||t[1]>=74)&&(t=o.match(/Chrome\/(\d+)/))&&(e=+t[1]),ot=e}function Pt(){if(rt)return st;rt=1;var t=It(),e=x(),i=_().String;return st=!!Object.getOwnPropertySymbols&&!e(function(){var e=Symbol("symbol detection");return!i(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&t&&t<41}),st}function Bt(){return ht?at:(ht=1,at=Pt()&&!Symbol.sham&&"symbol"==typeof Symbol.iterator)}function zt(){if(lt)return dt;lt=1;var t=Tt(),e=T(),i=Mt(),o=Object;return dt=Bt()?function(t){return"symbol"==typeof t}:function(n){var s=t("Symbol");return e(s)&&i(s.prototype,o(n))},dt}function Ft(){if(ut)return ct;ut=1;var t=String;return ct=function(e){try{return t(e)}catch(t){return"Object"}}}function Nt(){if(ft)return pt;ft=1;var t=T(),e=Ft(),i=TypeError;return pt=function(o){if(t(o))return o;throw new i(e(o)+" is not a function")}}function At(){if(mt)return gt;mt=1;var t=Nt(),e=Et();return gt=function(i,o){var n=i[o];return e(n)?void 0:t(n)}}function Rt(){if(yt)return vt;yt=1;var t=F(),e=T(),i=kt(),o=TypeError;return vt=function(n,s){var r,a;if("string"===s&&e(r=n.toString)&&!i(a=t(r,n)))return a;if(e(r=n.valueOf)&&!i(a=t(r,n)))return a;if("string"!==s&&e(r=n.toString)&&!i(a=t(r,n)))return a;throw new o("Can't convert object to primitive value")}}var jt,Lt,Ht,Wt,Vt,qt,Ut,Yt,Xt,Kt,Gt,Zt,Qt,$t,Jt,te,ee,ie,oe,ne,se,re,ae,he,de,le,ce,ue,pe={exports:{}};function fe(){return Lt?jt:(Lt=1,jt=!0)}function ge(){if(Wt)return Ht;Wt=1;var t=_(),e=Object.defineProperty;return Ht=function(i,o){try{e(t,i,{value:o,configurable:!0,writable:!0})}catch(e){t[i]=o}return o}}function me(){if(Vt)return pe.exports;Vt=1;var t=fe(),e=_(),i=ge(),o="__core-js_shared__",n=pe.exports=e[o]||i(o,{});return(n.versions||(n.versions=[])).push({version:"3.44.0",mode:t?"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"}),pe.exports}function ve(){if(Ut)return qt;Ut=1;var t=me();return qt=function(e,i){return t[e]||(t[e]=i||{})}}function ye(){if(Xt)return Yt;Xt=1;var t=Ot(),e=Object;return Yt=function(i){return e(t(i))}}function be(){if(Gt)return Kt;Gt=1;var t=C(),e=ye(),i=t({}.hasOwnProperty);return Kt=Object.hasOwn||function(t,o){return i(e(t),o)},Kt}function we(){if(Qt)return Zt;Qt=1;var t=C(),e=0,i=Math.random(),o=t(1.1.toString);return Zt=function(t){return"Symbol("+(void 0===t?"":t)+")_"+o(++e+i,36)}}function _e(){if(Jt)return $t;Jt=1;var t=_(),e=ve(),i=be(),o=we(),n=Pt(),s=Bt(),r=t.Symbol,a=e("wks"),h=s?r.for||r:r&&r.withoutSetter||o;return $t=function(t){return i(a,t)||(a[t]=n&&i(r,t)?r[t]:h("Symbol."+t)),a[t]}}function xe(){if(ee)return te;ee=1;var t=F(),e=kt(),i=zt(),o=At(),n=Rt(),s=TypeError,r=_e()("toPrimitive");return te=function(a,h){if(!e(a)||i(a))return a;var d,l=o(a,r);if(l){if(void 0===h&&(h="default"),d=t(l,a,h),!e(d)||i(d))return d;throw new s("Can't convert object to primitive value")}return void 0===h&&(h="number"),n(a,h)}}function Ee(){if(oe)return ie;oe=1;var t=xe(),e=zt();return ie=function(i){var o=t(i,"string");return e(o)?o:o+""}}function Oe(){if(se)return ne;se=1;var t=_(),e=kt(),i=t.document,o=e(i)&&e(i.createElement);return ne=function(t){return o?i.createElement(t):{}},ne}function Ce(){if(ae)return re;ae=1;var t=z(),e=x(),i=Oe();return re=!t&&!e(function(){return 7!==Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a})}function ke(){if(he)return B;he=1;var t=z(),e=F(),i=wt(),o=_t(),n=Ct(),s=Ee(),r=be(),a=Ce(),h=Object.getOwnPropertyDescriptor;return B.f=t?h:function(t,d){if(t=n(t),d=s(d),a)try{return h(t,d)}catch(t){}if(r(t,d))return o(!e(i.f,t,d),t[d])},B}function Se(){if(le)return de;le=1;var t=x(),e=T(),i=/#|\.prototype\./,o=function(i,o){var h=s[n(i)];return h===a||h!==r&&(e(o)?t(o):!!o)},n=o.normalize=function(t){return String(t).replace(i,".").toLowerCase()},s=o.data={},r=o.NATIVE="N",a=o.POLYFILL="P";return de=o}function Te(){if(ue)return ce;ue=1;var t=S(),e=Nt(),i=E(),o=t(t.bind);return ce=function(t,n){return e(t),void 0===n?t:i?o(t,n):function(){return t.apply(n,arguments)}},ce}var Me,De,Ie,Pe,Be,ze,Fe,Ne,Ae,Re,je,Le,He,We,Ve,qe,Ue,Ye,Xe,Ke,Ge,Ze,Qe,$e,Je,ti,ei,ii,oi,ni={};function si(){return De?Me:(De=1,Me=z()&&x()(function(){return 42!==Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype}))}function ri(){if(Pe)return Ie;Pe=1;var t=kt(),e=String,i=TypeError;return Ie=function(o){if(t(o))return o;throw new i(e(o)+" is not an object")}}function ai(){if(Be)return ni;Be=1;var t=z(),e=Ce(),i=si(),o=ri(),n=Ee(),s=TypeError,r=Object.defineProperty,a=Object.getOwnPropertyDescriptor,h="enumerable",d="configurable",l="writable";return ni.f=t?i?function(t,e,i){if(o(t),e=n(e),o(i),"function"==typeof t&&"prototype"===e&&"value"in i&&l in i&&!i[l]){var s=a(t,e);s&&s[l]&&(t[e]=i.value,i={configurable:d in i?i[d]:s[d],enumerable:h in i?i[h]:s[h],writable:!1})}return r(t,e,i)}:r:function(t,i,a){if(o(t),i=n(i),o(a),e)try{return r(t,i,a)}catch(t){}if("get"in a||"set"in a)throw new s("Accessors not supported");return"value"in a&&(t[i]=a.value),t},ni}function hi(){if(Fe)return ze;Fe=1;var t=z(),e=ai(),i=_t();return ze=t?function(t,o,n){return e.f(t,o,i(1,n))}:function(t,e,i){return t[e]=i,t},ze}function di(){if(Ae)return Ne;Ae=1;var t=_(),e=O(),i=S(),o=T(),n=ke().f,s=Se(),r=St(),a=Te(),h=hi(),d=be(),l=function(t){var i=function(o,n,s){if(this instanceof i){switch(arguments.length){case 0:return new t;case 1:return new t(o);case 2:return new t(o,n)}return new t(o,n,s)}return e(t,this,arguments)};return i.prototype=t.prototype,i};return Ne=function(e,c){var u,p,f,g,m,v,y,b,w,_=e.target,x=e.global,E=e.stat,O=e.proto,C=x?t:E?t[_]:t[_]&&t[_].prototype,k=x?r:r[_]||h(r,_,{})[_],S=k.prototype;for(g in c)p=!(u=s(x?g:_+(E?".":"#")+g,e.forced))&&C&&d(C,g),v=k[g],p&&(y=e.dontCallGetSet?(w=n(C,g))&&w.value:C[g]),m=p&&y?y:c[g],(u||O||typeof v!=typeof m)&&(b=e.bind&&p?a(m,t):e.wrap&&p?l(m):O&&o(m)?i(m):m,(e.sham||m&&m.sham||v&&v.sham)&&h(b,"sham",!0),h(k,g,b),O&&(d(r,f=_+"Prototype")||h(r,f,{}),h(r[f],g,m),e.real&&S&&(u||!S[g])&&h(S,g,m)))},Ne}function li(){if(je)return Re;je=1;var t=Math.ceil,e=Math.floor;return Re=Math.trunc||function(i){var o=+i;return(o>0?e:t)(o)}}function ci(){if(He)return Le;He=1;var t=li();return Le=function(e){var i=+e;return i!=i||0===i?0:t(i)},Le}function ui(){if(Ve)return We;Ve=1;var t=ci(),e=Math.max,i=Math.min;return We=function(o,n){var s=t(o);return s<0?e(s+n,0):i(s,n)},We}function pi(){if(Ue)return qe;Ue=1;var t=ci(),e=Math.min;return qe=function(i){var o=t(i);return o>0?e(o,9007199254740991):0}}function fi(){if(Xe)return Ye;Xe=1;var t=pi();return Ye=function(e){return t(e.length)}}function gi(){if(Ge)return Ke;Ge=1;var t=Ct(),e=ui(),i=fi(),o=function(o){return function(n,s,r){var a=t(n),h=i(a);if(0===h)return!o&&-1;var d,l=e(r,h);if(o&&s!=s){for(;h>l;)if((d=a[l++])!=d)return!0}else for(;h>l;l++)if((o||l in a)&&a[l]===s)return o||l||0;return!o&&-1}};return Ke={includes:o(!0),indexOf:o(!1)}}function mi(){return Qe?Ze:(Qe=1,Ze={})}function vi(){if(Je)return $e;Je=1;var t=C(),e=be(),i=Ct(),o=gi().indexOf,n=mi(),s=t([].push);return $e=function(t,r){var a,h=i(t),d=0,l=[];for(a in h)!e(n,a)&&e(h,a)&&s(l,a);for(;r.length>d;)e(h,a=r[d++])&&(~o(l,a)||s(l,a));return l},$e}function yi(){return ei?ti:(ei=1,ti=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"])}function bi(){if(oi)return ii;oi=1;var t=vi(),e=yi();return ii=Object.keys||function(i){return t(i,e)}}var wi,_i,xi,Ei,Oi,Ci,ki,Si,Ti,Mi,Di={};function Ii(){return wi||(wi=1,Di.f=Object.getOwnPropertySymbols),Di}function Pi(){if(xi)return _i;xi=1;var t=z(),e=C(),i=F(),o=x(),n=bi(),s=Ii(),r=wt(),a=ye(),h=xt(),d=Object.assign,l=Object.defineProperty,c=e([].concat);return _i=!d||o(function(){if(t&&1!==d({b:1},d(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},i={},o=Symbol("assign detection"),s="abcdefghijklmnopqrst";return e[o]=7,s.split("").forEach(function(t){i[t]=t}),7!==d({},e)[o]||n(d({},i)).join("")!==s})?function(e,o){for(var d=a(e),l=arguments.length,u=1,p=s.f,f=r.f;l>u;)for(var g,m=h(arguments[u++]),v=p?c(n(m),p(m)):n(m),y=v.length,b=0;y>b;)g=v[b++],t&&!i(f,m,g)||(d[g]=m[g]);return d}:d,_i}function Bi(){return Ci?Oi:(Ci=1,function(){if(Ei)return w;Ei=1;var t=di(),e=Pi();t({target:"Object",stat:!0,arity:2,forced:Object.assign!==e},{assign:e})}(),Oi=St().Object.assign)}function zi(){return Si?ki:(Si=1,ki=Bi())}var Fi,Ni,Ai,Ri,ji,Li,Hi,Wi,Vi,qi,Ui,Yi,Xi,Ki,Gi,Zi=o(Mi?Ti:(Mi=1,Ti=zi())),Qi={};function $i(){return Ni?Fi:(Ni=1,Fi=C()([].slice))}function Ji(){if(Ri)return Ai;Ri=1;var t=C(),e=Nt(),i=kt(),o=be(),n=$i(),s=E(),r=Function,a=t([].concat),h=t([].join),d={};return Ai=s?r.bind:function(t){var s=e(this),l=s.prototype,c=n(arguments,1),u=function(){var e=a(c,n(arguments));return this instanceof u?function(t,e,i){if(!o(d,e)){for(var n=[],s=0;s<e;s++)n[s]="a["+s+"]";d[e]=r("C,a","return new C("+h(n,",")+")")}return d[e](t,i)}(s,e.length,e):s.apply(t,e)};return i(l)&&(u.prototype=l),u},Ai}function to(){if(Hi)return Li;Hi=1;var t=_(),e=St();return Li=function(i,o){var n=e[i+"Prototype"],s=n&&n[o];if(s)return s;var r=t[i],a=r&&r.prototype;return a&&a[o]}}function eo(){return Vi?Wi:(Vi=1,function(){if(ji)return Qi;ji=1;var t=di(),e=Ji();t({target:"Function",proto:!0,forced:Function.bind!==e},{bind:e})}(),Wi=to()("Function","bind"))}function io(){if(Ui)return qi;Ui=1;var t=Mt(),e=eo(),i=Function.prototype;return qi=function(o){var n=o.bind;return o===i||t(i,o)&&n===i.bind?e:n},qi}function oo(){return Xi?Yi:(Xi=1,Yi=io())}var no=o(Gi?Ki:(Gi=1,Ki=oo()));function so(t,e,i,o){t.beginPath(),t.arc(e,i,o,0,2*Math.PI,!1),t.closePath()}function ro(t,e,i,o,n,s){const r=Math.PI/180;o-2*s<0&&(s=o/2),n-2*s<0&&(s=n/2),t.beginPath(),t.moveTo(e+s,i),t.lineTo(e+o-s,i),t.arc(e+o-s,i+s,s,270*r,360*r,!1),t.lineTo(e+o,i+n-s),t.arc(e+o-s,i+n-s,s,0,90*r,!1),t.lineTo(e+s,i+n),t.arc(e+s,i+n-s,s,90*r,180*r,!1),t.lineTo(e,i+s),t.arc(e+s,i+s,s,180*r,270*r,!1),t.closePath()}function ao(t,e,i,o,n){const s=.5522848,r=o/2*s,a=n/2*s,h=e+o,d=i+n,l=e+o/2,c=i+n/2;t.beginPath(),t.moveTo(e,c),t.bezierCurveTo(e,c-a,l-r,i,l,i),t.bezierCurveTo(l+r,i,h,c-a,h,c),t.bezierCurveTo(h,c+a,l+r,d,l,d),t.bezierCurveTo(l-r,d,e,c+a,e,c),t.closePath()}function ho(t,e,i,o,n){const s=n*(1/3),r=.5522848,a=o/2*r,h=s/2*r,d=e+o,l=i+s,c=e+o/2,u=i+s/2,p=i+(n-s/2),f=i+n;t.beginPath(),t.moveTo(d,u),t.bezierCurveTo(d,u+h,c+a,l,c,l),t.bezierCurveTo(c-a,l,e,u+h,e,u),t.bezierCurveTo(e,u-h,c-a,i,c,i),t.bezierCurveTo(c+a,i,d,u-h,d,u),t.lineTo(d,p),t.bezierCurveTo(d,p+h,c+a,f,c,f),t.bezierCurveTo(c-a,f,e,p+h,e,p),t.lineTo(e,u)}function lo(t,e,i,o,n,s){t.beginPath(),t.moveTo(e,i);const r=s.length,a=o-e,h=n-i,d=h/a;let l=Math.sqrt(a*a+h*h),c=0,u=!0,p=0,f=+s[0];for(;l>=.1;)f=+s[c++%r],f>l&&(f=l),p=Math.sqrt(f*f/(1+d*d)),p=a<0?-p:p,e+=p,i+=d*p,!0===u?t.lineTo(e,i):t.moveTo(e,i),l-=f,u=!u}const co={circle:so,dashedLine:lo,database:ho,diamond:function(t,e,i,o){t.beginPath(),t.lineTo(e,i+o),t.lineTo(e+o,i),t.lineTo(e,i-o),t.lineTo(e-o,i),t.closePath()},ellipse:ao,ellipse_vis:ao,hexagon:function(t,e,i,o){t.beginPath();const n=2*Math.PI/6;t.moveTo(e+o,i);for(let s=1;s<6;s++)t.lineTo(e+o*Math.cos(n*s),i+o*Math.sin(n*s));t.closePath()},roundRect:ro,square:function(t,e,i,o){t.beginPath(),t.rect(e-o,i-o,2*o,2*o),t.closePath()},star:function(t,e,i,o){t.beginPath(),i+=.1*(o*=.82);for(let n=0;n<10;n++){const s=n%2==0?1.3*o:.5*o;t.lineTo(e+s*Math.sin(2*n*Math.PI/10),i-s*Math.cos(2*n*Math.PI/10))}t.closePath()},triangle:function(t,e,i,o){t.beginPath(),i+=.275*(o*=1.15);const n=2*o,s=n/2,r=Math.sqrt(3)/6*n,a=Math.sqrt(n*n-s*s);t.moveTo(e,i-(a-r)),t.lineTo(e+s,i+r),t.lineTo(e-s,i+r),t.lineTo(e,i-(a-r)),t.closePath()},triangleDown:function(t,e,i,o){t.beginPath(),i-=.275*(o*=1.15);const n=2*o,s=n/2,r=Math.sqrt(3)/6*n,a=Math.sqrt(n*n-s*s);t.moveTo(e,i+(a-r)),t.lineTo(e+s,i-r),t.lineTo(e-s,i-r),t.lineTo(e,i+(a-r)),t.closePath()}};var uo,po={exports:{}};var fo,go=(uo||(uo=1,function(){function t(e){if(e)return function(e){for(var i in t.prototype)e[i]=t.prototype[i];return e}(e)}po.exports=t,t.prototype.on=t.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+t]=this._callbacks["$"+t]||[]).push(e),this},t.prototype.once=function(t,e){function i(){this.off(t,i),e.apply(this,arguments)}return i.fn=e,this.on(t,i),this},t.prototype.off=t.prototype.removeListener=t.prototype.removeAllListeners=t.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var i,o=this._callbacks["$"+t];if(!o)return this;if(1==arguments.length)return delete this._callbacks["$"+t],this;for(var n=0;n<o.length;n++)if((i=o[n])===e||i.fn===e){o.splice(n,1);break}return 0===o.length&&delete this._callbacks["$"+t],this},t.prototype.emit=function(t){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),i=this._callbacks["$"+t],o=1;o<arguments.length;o++)e[o-1]=arguments[o];if(i){o=0;for(var n=(i=i.slice(0)).length;o<n;++o)i[o].apply(this,e)}return this},t.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks["$"+t]||[]},t.prototype.hasListeners=function(t){return!!this.listeners(t).length}}()),po.exports),mo=o(go); /*! 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 vo(){return vo=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var i=arguments[e];for(var o in i)Object.prototype.hasOwnProperty.call(i,o)&&(t[o]=i[o])}return t},vo.apply(this,arguments)}function yo(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}function bo(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}fo="function"!=typeof Object.assign?function(t){if(null==t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),i=1;i<arguments.length;i++){var o=arguments[i];if(null!=o)for(var n in o)o.hasOwnProperty(n)&&(e[n]=o[n])}return e}:Object.assign;var wo,_o=fo,xo=["","webkit","Moz","MS","ms","o"],Eo="undefined"==typeof document?{style:{}}:document.createElement("div"),Oo=Math.round,Co=Math.abs,ko=Date.now;function So(t,e){for(var i,o,n=e[0].toUpperCase()+e.slice(1),s=0;s<xo.length;){if((o=(i=xo[s])?i+n:e)in t)return o;s++}}wo="undefined"==typeof window?{}:window;var To=So(Eo.style,"touchAction"),Mo=void 0!==To;var Do="compute",Io="auto",Po="manipulation",Bo="none",zo="pan-x",Fo="pan-y",No=function(){if(!Mo)return!1;var t={},e=wo.CSS&&wo.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach(function(i){return t[i]=!e||wo.CSS.supports("touch-action",i)}),t}(),Ao="ontouchstart"in wo,Ro=void 0!==So(wo,"PointerEvent"),jo=Ao&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),Lo="touch",Ho="mouse",Wo=16,Vo=24,qo=["x","y"],Uo=["clientX","clientY"];function Yo(t,e,i){var o;if(t)if(t.forEach)t.forEach(e,i);else if(void 0!==t.length)for(o=0;o<t.length;)e.call(i,t[o],o,t),o++;else for(o in t)t.hasOwnProperty(o)&&e.call(i,t[o],o,t)}function Xo(t,e){return"function"==typeof t?t.apply(e&&e[0]||void 0,e):t}function Ko(t,e){return t.indexOf(e)>-1}var Go=function(){function t(t,e){this.manager=t,this.set(e)}var e=t.prototype;return e.set=function(t){t===Do&&(t=this.compute()),Mo&&this.manager.element.style&&No[t]&&(this.manager.element.style[To]=t),this.actions=t.toLowerCase().trim()},e.update=function(){this.set(this.manager.options.touchAction)},e.compute=function(){var t=[];return Yo(this.manager.recognizers,function(e){Xo(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))}),function(t){if(Ko(t,Bo))return Bo;var e=Ko(t,zo),i=Ko(t,Fo);return e&&i?Bo:e||i?e?zo:Fo:Ko(t,Po)?Po:Io}(t.join(" "))},e.preventDefaults=function(t){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var o=this.actions,n=Ko(o,Bo)&&!No[Bo],s=Ko(o,Fo)&&!No[Fo],r=Ko(o,zo)&&!No[zo];if(n){var a=1===t.pointers.length,h=t.distance<2,d=t.deltaTime<250;if(a&&h&&d)return}if(!r||!s)return n||s&&6&i||r&&i&Vo?this.preventSrc(e):void 0}},e.preventSrc=function(t){this.manager.session.prevented=!0,t.preventDefault()},t}();function Zo(t,e){for(;t;){if(t===e)return!0;t=t.parentNode}return!1}function Qo(t){var e=t.length;if(1===e)return{x:Oo(t[0].clientX),y:Oo(t[0].clientY)};for(var i=0,o=0,n=0;n<e;)i+=t[n].clientX,o+=t[n].clientY,n++;return{x:Oo(i/e),y:Oo(o/e)}}function $o(t){for(var e=[],i=0;i<t.pointers.length;)e[i]={clientX:Oo(t.pointers[i].clientX),clientY:Oo(t.pointers[i].clientY)},i++;return{timeStamp:ko(),pointers:e,center:Qo(e),deltaX:t.deltaX,deltaY:t.deltaY}}function Jo(t,e,i){i||(i=qo);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return Math.sqrt(o*o+n*n)}function tn(t,e,i){i||(i=qo);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return 180*Math.atan2(n,o)/Math.PI}function en(t,e){return t===e?1:Co(t)>=Co(e)?t<0?2:4:e<0?8:Wo}function on(t,e,i){return{x:e/t||0,y:i/t||0}}function nn(t,e){var i=t.session,o=e.pointers,n=o.length;i.firstInput||(i.firstInput=$o(e)),n>1&&!i.firstMultiple?i.firstMultiple=$o(e):1===n&&(i.firstMultiple=!1);var s=i.firstInput,r=i.firstMultiple,a=r?r.center:s.center,h=e.center=Qo(o);e.timeStamp=ko(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=tn(a,h),e.distance=Jo(a,h),function(t,e){var i=e.center,o=t.offsetDelta||{},n=t.prevDelta||{},s=t.prevInput||{};1!==e.eventType&&4!==s.eventType||(n=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},o=t.offsetDelta={x:i.x,y:i.y}),e.deltaX=n.x+(i.x-o.x),e.deltaY=n.y+(i.y-o.y)}(i,e),e.offsetDirection=en(e.deltaX,e.deltaY);var d,l,c=on(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=c.x,e.overallVelocityY=c.y,e.overallVelocity=Co(c.x)>Co(c.y)?c.x:c.y,e.scale=r?(d=r.pointers,Jo((l=o)[0],l[1],Uo)/Jo(d[0],d[1],Uo)):1,e.rotation=r?function(t,e){return tn(e[1],e[0],Uo)+tn(t[1],t[0],Uo)}(r.pointers,o):0,e.maxPointers=i.prevInput?e.pointers.length>i.prevInput.maxPointers?e.pointers.length:i.prevInput.maxPointers:e.pointers.length,function(t,e){var i,o,n,s,r=t.lastInterval||e,a=e.timeStamp-r.timeStamp;if(8!==e.eventType&&(a>25||void 0===r.velocity)){var h=e.deltaX-r.deltaX,d=e.deltaY-r.deltaY,l=on(a,h,d);o=l.x,n=l.y,i=Co(l.x)>Co(l.y)?l.x:l.y,s=en(h,d),t.lastInterval=e}else i=r.velocity,o=r.velocityX,n=r.velocityY,s=r.direction;e.velocity=i,e.velocityX=o,e.velocityY=n,e.direction=s}(i,e);var u,p=t.element,f=e.srcEvent;Zo(u=f.composedPath?f.composedPath()[0]:f.path?f.path[0]:f.target,p)&&(p=u),e.target=p}function sn(t,e,i){var o=i.pointers.length,n=i.changedPointers.length,s=1&e&&o-n===0,r=12&e&&o-n===0;i.isFirst=!!s,i.isFinal=!!r,s&&(t.session={}),i.eventType=e,nn(t,i),t.emit("hammer.input",i),t.recognize(i),t.session.prevInput=i}function rn(t){return t.trim().split(/\s+/g)}function an(t,e,i){Yo(rn(e),function(e){t.addEventListener(e,i,!1)})}function hn(t,e,i){Yo(rn(e),function(e){t.removeEventListener(e,i,!1)})}function dn(t){var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||window}var ln=function(){function t(t,e){var i=this;this.manager=t,this.callback=e,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(e){Xo(t.options.enable,[t])&&i.handler(e)},this.init()}var e=t.prototype;return e.handler=function(){},e.init=function(){this.evEl&&an(this.element,this.evEl,this.domHandler),this.evTarget&&an(this.target,this.evTarget,this.domHandler),this.evWin&&an(dn(this.element),this.evWin,this.domHandler)},e.destroy=function(){this.evEl&&hn(this.element,this.evEl,this.domHandler),this.evTarget&&hn(this.target,this.evTarget,this.domHandler),this.evWin&&hn(dn(this.element),this.evWin,this.domHandler)},t}();function cn(t,e,i){if(t.indexOf&&!i)return t.indexOf(e);for(var o=0;o<t.length;){if(i&&t[o][i]==e||!i&&t[o]===e)return o;o++}return-1}var un={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},pn={2:Lo,3:"pen",4:Ho,5:"kinect"},fn="pointerdown",gn="pointermove pointerup pointercancel";wo.MSPointerEvent&&!wo.PointerEvent&&(fn="MSPointerDown",gn="MSPointerMove MSPointerUp MSPointerCancel");var mn=function(t){function e(){var i,o=e.prototype;return o.evEl=fn,o.evWin=gn,(i=t.apply(this,arguments)||this).store=i.manager.session.pointerEvents=[],i}return yo(e,t),e.prototype.handler=function(t){var e=this.store,i=!1,o=t.type.toLowerCase().replace("ms",""),n=un[o],s=pn[t.pointerType]||t.pointerType,r=s===Lo,a=cn(e,t.pointerId,"pointerId");1&n&&(0===t.button||r)?a<0&&(e.push(t),a=e.length-1):12&n&&(i=!0),a<0||(e[a]=t,this.callback(this.manager,n,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),i&&e.splice(a,1))},e}(ln);function vn(t){return Array.prototype.slice.call(t,0)}function yn(t,e,i){for(var o=[],n=[],s=0;s<t.length;){var r=e?t[s][e]:t[s];cn(n,r)<0&&o.push(t[s]),n[s]=r,s++}return i&&(o=e?o.sort(function(t,i){return t[e]>i[e]}):o.sort()),o}var bn={touchstart:1,touchmove:2,touchend:4,touchcancel:8},wn=function(t){function e(){var i;return e.prototype.evTarget="touchstart touchmove touchend touchcancel",(i=t.apply(this,arguments)||this).targetIds={},i}return yo(e,t),e.prototype.handler=function(t){var e=bn[t.type],i=_n.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:Lo,srcEvent:t})},e}(ln);function _n(t,e){var i,o,n=vn(t.touches),s=this.targetIds;if(3&e&&1===n.length)return s[n[0].identifier]=!0,[n,n];var r=vn(t.changedTouches),a=[],h=this.target;if(o=n.filter(function(t){return Zo(t.target,h)}),1===e)for(i=0;i<o.length;)s[o[i].identifier]=!0,i++;for(i=0;i<r.length;)s[r[i].identifier]&&a.push(r[i]),12&e&&delete s[r[i].identifier],i++;return a.length?[yn(o.concat(a),"identifier",!0),a]:void 0}var xn={mousedown:1,mousemove:2,mouseup:4},En=function(t){function e(){var i,o=e.prototype;return o.evEl="mousedown",o.evWin="mousemove mouseup",(i=t.apply(this,arguments)||this).pressed=!1,i}return yo(e,t),e.prototype.handler=function(t){var e=xn[t.type];1&e&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:Ho,srcEvent:t}))},e}(ln);function On(t){var e=t.changedPointers[0];if(e.identifier===this.primaryTouch){var i={x:e.clientX,y:e.clientY},o=this.lastTouches;this.lastTouches.push(i);setTimeout(function(){var t=o.indexOf(i);t>-1&&o.splice(t,1)},2500)}}function Cn(t,e){1&t?(this.primaryTouch=e.changedPointers[0].identifier,On.call(this,e)):12&t&&On.call(this,e)}function kn(t){for(var e=t.srcEvent.clientX,i=t.srcEvent.clientY,o=0;o<this.lastTouches.length;o++){var n=this.lastTouches[o],s=Math.abs(e-n.x),r=Math.abs(i-n.y);if(s<=25&&r<=25)return!0}return!1}var Sn=function(){return function(t){function e(e,i){var o;return(o=t.call(this,e,i)||this).handler=function(t,e,i){var n=i.pointerType===Lo,s=i.pointerType===Ho;if(!(s&&i.sourceCapabilities&&i.sourceCapabilities.firesTouchEvents)){if(n)Cn.call(bo(bo(o)),e,i);else if(s&&kn.call(bo(bo(o)),i))return;o.callback(t,e,i)}},o.touch=new wn(o.manager,o.handler),o.mouse=new En(o.manager,o.handler),o.primaryTouch=null,o.lastTouches=[],o}return yo(e,t),e.prototype.destroy=function(){this.touch.destroy(),this.mouse.destroy()},e}(ln)}();function Tn(t,e,i){return!!Array.isArray(t)&&(Yo(t,i[e],i),!0)}var Mn=32,Dn=1;function In(t,e){var i=e.manager;return i?i.get(t):t}function Pn(t){return 16&t?"cancel":8&t?"end":4&t?"move":2&t?"start":""}var Bn=function(){function t(t){void 0===t&&(t={}),this.options=vo({enable:!0},t),this.id=Dn++,this.manager=null,this.state=1,this.simultaneous={},this.requireFail=[]}var e=t.prototype;return e.set=function(t){return _o(this.options,t),this.manager&&this.manager.touchAction.update(),this},e.recognizeWith=function(t){if(Tn(t,"recognizeWith",this))return this;var e=this.simultaneous;return e[(t=In(t,this)).id]||(e[t.id]=t,t.recognizeWith(this)),this},e.dropRecognizeWith=function(t){return Tn(t,"dropRecognizeWith",this)||(t=In(t,this),delete this.simultaneous[t.id]),this},e.requireFailure=function(t){if(Tn(t,"requireFailure",this))return this;var e=this.requireFail;return-1===cn(e,t=In(t,this))&&(e.push(t),t.requireFailure(this)),this},e.dropRequireFailure=function(t){if(Tn(t,"dropRequireFailure",this))return this;t=In(t,this);var e=cn(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},e.hasRequireFailures=function(){return this.requireFail.length>0},e.canRecognizeWith=function(t){return!!this.simultaneous[t.id]},e.emit=function(t){var e=this,i=this.state;function o(i){e.manager.emit(i,t)}i<8&&o(e.options.event+Pn(i)),o(e.options.event),t.additionalEvent&&o(t.additionalEvent),i>=8&&o(e.options.event+Pn(i))},e.tryEmit=function(t){if(this.canEmit())return this.emit(t);this.state=Mn},e.canEmit=function(){for(var t=0;t<this.requireFail.length;){if(!(33&this.requireFail[t].state))return!1;t++}return!0},e.recognize=function(t){var e=_o({},t);if(!Xo(this.options.enable,[this,e]))return this.reset(),void(this.state=Mn);56&this.state&&(this.state=1),this.state=this.process(e),30&this.state&&this.tryEmit(e)},e.process=function(t){},e.getTouchAction=function(){},e.reset=function(){},t}(),zn=function(t){function e(e){var i;return void 0===e&&(e={}),(i=t.call(this,vo({event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},e))||this).pTime=!1,i.pCenter=!1,i._timer=null,i._input=null,i.count=0,i}yo(e,t);var i=e.prototype;return i.getTouchAction=function(){return[Po]},i.process=function(t){var e=this,i=this.options,o=t.pointers.length===i.pointers,n=t.distance<i.threshold,s=t.deltaTime<i.time;if(this.reset(),1&t.eventType&&0===this.count)return this.failTimeout();if(n&&s&&o){if(4!==t.eventType)return this.failTimeout();var r=!this.pTime||t.timeStamp-this.pTime<i.interval,a=!this.pCenter||Jo(this.pCenter,t.center)<i.posThreshold;if(this.pTime=t.timeStamp,this.pCenter=t.center,a&&r?this.count+=1:this.count=1,this._input=t,0===this.count%i.taps)return this.hasRequireFailures()?(this._timer=setTimeout(function(){e.state=8,e.tryEmit()},i.interval),2):8}return Mn},i.failTimeout=function(){var t=this;return this._timer=setTimeout(function(){t.state=Mn},this.options.interval),Mn},i.reset=function(){clearTimeout(this._timer)},i.emit=function(){8===this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))},e}(Bn),Fn=function(t){function e(e){return void 0===e&&(e={}),t.call(this,vo({pointers:1},e))||this}yo(e,t);var i=e.prototype;return i.attrTest=function(t){var e=this.options.pointers;return 0===e||t.pointers.length===e},i.process=function(t){var e=this.state,i=t.eventType,o=6&e,n=this.attrTest(t);return o&&(8&i||!n)?16|e:o||n?4&i?8|e:2&e?4|e:2:Mn},e}(Bn);function Nn(t){return t===Wo?"down":8===t?"up":2===t?"left":4===t?"right":""}var An=function(t){function e(e){var i;return void 0===e&&(e={}),(i=t.call(this,vo({event:"pan",threshold:10,pointers:1,direction:30},e))||this).pX=null,i.pY=null,i}yo(e,t);var i=e.prototype;return i.getTouchAction=function(){var t=this.options.direction,e=[];return 6&t&&e.push(Fo),t&Vo&&e.push(zo),e},i.directionTest=function(t){var e=this.options,i=!0,o=t.distance,n=t.direction,s=t.deltaX,r=t.deltaY;return n&e.direction||(6&e.direction?(n=0===s?1:s<0?2:4,i=s!==this.pX,o=Math.abs(t.deltaX)):(n=0===r?1:r<0?8:Wo,i=r!==this.pY,o=Math.abs(t.deltaY))),t.direction=n,i&&o>e.threshold&&n&e.direction},i.attrTest=function(t){return Fn.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},i.emit=function(e){this.pX=e.deltaX,this.pY=e.deltaY;var i=Nn(e.direction);i&&(e.additionalEvent=this.options.event+i),t.prototype.emit.call(this,e)},e}(Fn),Rn=function(t){function e(e){return void 0===e&&(e={}),t.call(this,vo({event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},e))||this}yo(e,t);var i=e.prototype;return i.getTouchAction=function(){return An.prototype.getTouchAction.call(this)},i.attrTest=function(e){var i,o=this.options.direction;return 30&o?i=e.overallVelocity:6&o?i=e.overallVelocityX:o&Vo&&(i=e.overallVelocityY),t.prototype.attrTest.call(this,e)&&o&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers===this.options.pointers&&Co(i)>this.options.velocity&&4&e.eventType},i.emit=function(t){var e=Nn(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)},e}(Fn),jn=function(t){function e(e){return void 0===e&&(e={}),t.call(this,vo({event:"pinch",threshold:0,pointers:2},e))||this}yo(e,t);var i=e.prototype;return i.getTouchAction=function(){return[Bo]},i.attrTest=function(e){return t.prototype.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||2&this.state)},i.emit=function(e){if(1!==e.scale){var i=e.scale<1?"in":"out";e.additionalEvent=this.options.event+i}t.prototype.emit.call(this,e)},e}(Fn),Ln=function(t){function e(e){return void 0===e&&(e={}),t.call(this,vo({event:"rotate",threshold:0,pointers:2},e))||this}yo(e,t);var i=e.prototype;return i.getTouchAction=function(){return[Bo]},i.attrTest=function(e){return t.prototype.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||2&this.state)},e}(Fn),Hn=function(t){function e(e){var i;return void 0===e&&(e={}),(i=t.call(this,vo({event:"press",pointers:1,time:251,threshold:9},e))||this)._timer=null,i._input=null,i}yo(e,t);var i=e.prototype;return i.getTouchAction=function(){return[Io]},i.process=function(t){var e=this,i=this.options,o=t.pointers.length===i.pointers,n=t.distance<i.threshold,s=t.deltaTime>i.time;if(this._input=t,!n||!o||12&t.eventType&&!s)this.reset();else if(1&t.eventType)this.reset(),this._timer=setTimeout(function(){e.state=8,e.tryEmit()},i.time);else if(4&t.eventType)return 8;return Mn},i.reset=function(){clearTimeout(this._timer)},i.emit=function(t){8===this.state&&(t&&4&t.eventType?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=ko(),this.manager.emit(this.options.event,this._input)))},e}(Bn),Wn={domEvents:!1,touchAction:Do,enable:!0,inputTarget:null,inputClass:null,cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},Vn=[[Ln,{enable:!1}],[jn,{enable:!1},["rotate"]],[Rn,{direction:6}],[An,{direction:6},["swipe"]],[zn],[zn,{event:"doubletap",taps:2},["tap"]],[Hn]];function qn(t,e){var i,o=t.element;o.style&&(Yo(t.options.cssProps,function(n,s){i=So(o.style,s),e?(t.oldCssProps[i]=o.style[i],o.style[i]=n):o.style[i]=t.oldCssProps[i]||""}),e||(t.oldCssProps={}))}var Un=function(){function t(t,e){var i,o=this;this.options=_o({},Wn,e||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=new((i=this).options.inputClass||(Ro?mn:jo?wn:Ao?Sn:En))(i,sn),this.touchAction=new Go(this,this.options.touchAction),qn(this,!0),Yo(this.options.recognizers,function(t){var e=o.add(new t[0](t[1]));t[2]&&e.recognizeWith(t[2]),t[3]&&e.requireFailure(t[3])},this)}var e=t.prototype;return e.set=function(t){return _o(this.options,t),t.touchAction&&this.touchAction.update(),t.inputTarget&&(this.input.destroy(),this.input.target=t.inputTarget,this.input.init()),this},e.stop=function(t){this.session.stopped=t?2:1},e.recognize=function(t){var e=this.session;if(!e.stopped){var i;this.touchAction.preventDefaults(t);var o=this.recognizers,n=e.curRecognizer;(!n||n&&8&n.state)&&(e.curRecognizer=null,n=null);for(var s=0;s<o.length;)i=o[s],2===e.stopped||n&&i!==n&&!i.canRecognizeWith(n)?i.reset():i.recognize(t),!n&&14&i.state&&(e.curRecognizer=i,n=i),s++}},e.get=function(t){if(t instanceof Bn)return t;for(var e=this.recognizers,i=0;i<e.length;i++)if(e[i].options.event===t)return e[i];return null},e.add=function(t){if(Tn(t,"add",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),t.manager=this,this.touchAction.update(),t},e.remove=function(t){if(Tn(t,"remove",this))return this;var e=this.get(t);if(t){var i=this.recognizers,o=cn(i,e);-1!==o&&(i.splice(o,1),this.touchAction.update())}return this},e.on=function(t,e){if(void 0===t||void 0===e)return this;var i=this.handlers;return Yo(rn(t),function(t){i[t]=i[t]||[],i[t].push(e)}),this},e.off=function(t,e){if(void 0===t)return this;var i=this.handlers;return Yo(rn(t),function(t){e?i[t]&&i[t].splice(cn(i[t],e),1):delete i[t]}),this},e.emit=function(t,e){this.options.domEvents&&function(t,e){var i=document.createEvent("Event");i.initEvent(t,!0,!0),i.gesture=e,e.target.dispatchEvent(i)}(t,e);var i=this.handlers[t]&&this.handlers[t].slice();if(i&&i.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var o=0;o<i.length;)i[o](e),o++}},e.destroy=function(){this.element&&qn(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null},t}(),Yn={touchstart:1,touchmove:2,touchend:4,touchcancel:8},Xn=function(t){function e(){var i,o=e.prototype;return o.evTarget="touchstart",o.evWin="touchstart touchmove touchend touchcancel",(i=t.apply(this,arguments)||this).started=!1,i}return yo(e,t),e.prototype.handler=function(t){var e=Yn[t.type];if(1===e&&(this.started=!0),this.started){var i=Kn.call(this,t,e);12&e&&i[0].length-i[1].length===0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:Lo,srcEvent:t})}},e}(ln);function Kn(t,e){var i=vn(t.touches),o=vn(t.changedTouches);return 12&e&&(i=yn(i.concat(o),"identifier",!0)),[i,o]}function Gn(t,e,i){var o="DEPRECATED METHOD: "+e+"\n"+i+" AT \n";return function(){var e=new Error("get-stack-trace"),i=e&&e.stack?e.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",n=window.console&&(window.console.warn||window.console.log);return n&&n.call(window.console,o,i),t.apply(this,arguments)}}var Zn=Gn(function(t,e,i){for(var o=Object.keys(e),n=0;n<o.length;)(!i||i&&void 0===t[o[n]])&&(t[o[n]]=e[o[n]]),n++;return t},"extend","Use `assign`."),Qn=Gn(function(t,e){return Zn(t,e,!0)},"merge","Use `assign`.");function $n(t,e,i){var o,n=e.prototype;(o=t.prototype=Object.create(n)).constructor=t,o._super=n,i&&_o(o,i)}function Jn(t,e){return function(){return t.apply(e,arguments)}}var ts=function(){var t=function(t,e){return void 0===e&&(e={}),new Un(t,vo({recognizers:Vn.concat()},e))};return t.VERSION="2.0.17-rc",t.DIRECTION_ALL=30,t.DIRECTION_DOWN=Wo,t.DIRECTION_LEFT=2,t.DIRECTION_RIGHT=4,t.DIRECTION_UP=8,t.DIRECTION_HORIZONTAL=6,t.DIRECTION_VERTICAL=Vo,t.DIRECTION_NONE=1,t.DIRECTION_DOWN=Wo,t.INPUT_START=1,t.INPUT_MOVE=2,t.INPUT_END=4,t.INPUT_CANCEL=8,t.STATE_POSSIBLE=1,t.STATE_BEGAN=2,t.STATE_CHANGED=4,t.STATE_ENDED=8,t.STATE_RECOGNIZED=8,t.STATE_CANCELLED=16,t.STATE_FAILED=Mn,t.Manager=Un,t.Input=ln,t.TouchAction=Go,t.TouchInput=wn,t.MouseInput=En,t.PointerEventInput=mn,t.TouchMouseInput=Sn,t.SingleTouchInput=Xn,t.Recognizer=Bn,t.AttrRecognizer=Fn,t.Tap=zn,t.Pan=An,t.Swipe=Rn,t.Pinch=jn,t.Rotate=Ln,t.Press=Hn,t.on=an,t.off=hn,t.each=Yo,t.merge=Qn,t.extend=Zn,t.bindFn=Jn,t.assign=_o,t.inherit=$n,t.bindFn=Jn,t.prefixed=So,t.toArray=vn,t.inArray=cn,t.uniqueArray=yn,t.splitStr=rn,t.boolOrFn=Xo,t.hasParent=Zo,t.addEventListeners=an,t.removeEventListeners=hn,t.defaults=_o({},Wn,{preset:Vn}),t}(); /** * vis-util * https://github.com/visjs/vis-util * * utilitie collection for visjs * * @version 6.0.0 * @date 2025-07-12T18:02:43.836Z * * @copyright (c) 2011-2017 Almende B.V, http://almende.com * @copyright (c) 2017-2019 visjs contributors, https://github.com/visjs * * @license * vis.js is dual licensed under both * * 1. The Apache 2.0 License * http://www.apache.org/licenses/LICENSE-2.0 * * and * * 2. The MIT License * http://opensource.org/licenses/MIT * * vis.js may be distributed under either license. */ function es(...t){return function(t){let[e,i,o]=function(...t){const e=function(){let t=4022871197;return function(e){const i=e.toString();for(let e=0;e<i.length;e++){t+=i.charCodeAt(e);let o=.02519603282416938*t;t=o>>>0,o-=t,o*=t,t=o>>>0,o-=t,t+=4294967296*o}return 2.3283064365386963e-10*(t>>>0)}}();let i=e(" "),o=e(" "),n=e(" ");for(let s=0;s<t.length;s++)i-=e(t[s]),i<0&&(i+=1),o-=e(t[s]),o<0&&(o+=1),n-=e(t[s]),n<0&&(n+=1);return[i,o,n]}(t),n=1;const s=()=>{const t=2091639*e+2.3283064365386963e-10*n;return e=i,i=o,o=t-(n=0|t)};return s.uint32=()=>4294967296*s(),s.fract53=()=>s()+11102230246251565e-32*(2097152*s()|0),s.algorithm="Alea",s.seed=t,s.version="0.9",s}(t.length?t:[Date.now()])}ts.defaults;const is="undefined"!=typeof window?window.Hammer||ts:function(){return function(){const t=()=>{};return{on:t,off:t,destroy:t,emit:t,get:()=>({set:t})}}()};function os(t){this._cleanupQueue=[],this.active=!1,this._dom={container:t,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 e=is(this._dom.overlay);e.on("tap",this._onTapOverlay.bind(this)),this._cleanupQueue.push(()=>{e.destroy()});["tap","doubletap","press","pinch","pan","panstart","panmove","panend"].forEach(t=>{e.on(t,t=>{t.srcEvent.stopPropagation()})}),document&&document.body&&(this._onClick=e=>{(function(t,e){for(;t;){if(t===e)return!0;t=t.parentNode}return!1})(e.target,t)||this.deactivate()},document.body.addEventListener("click",this._onClick),this._cleanupQueue.push(()=>{document.body.removeEventListener("click",this._onClick)})),this._escListener=t=>{("key"in t?"Escape"===t.key:27===t.keyCode)&&this.deactivate()}}mo(os.prototype),os.current=null,os.prototype.destroy=function(){this.deactivate();for(const t of this._cleanupQueue.splice(0).reverse())t()},os.prototype.activate=function(){os.current&&os.current.deactivate(),os.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)},os.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")},os.prototype._onTapOverlay=function(t){this.activate(),t.srcEvent.stopPropagation()};const ns=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,ss=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,rs=/^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,as=/^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 hs(t){if(t)for(;!0===t.hasChildNodes();){const e=t.firstChild;e&&(hs(e),t.removeChild(e))}}function ds(t){return t instanceof String||"string"==typeof t}function ls(t){return"object"==typeof t&&null!==t}function cs(t,e,i,o){let n=!1;!0===o&&(n=null===e[i]&&void 0!==t[i]),n?delete t[i]:t[i]=e[i]}function us(t,e,i=!1){for(const o in t)if(void 0!==e[o])if(null===e[o]||"object"!=typeof e[o])cs(t,e,o,i);else{const n=t[o],s=e[o];ls(n)&&ls(s)&&us(n,s,i)}}function ps(t,e,i,o=!1){if(Array.isArray(i))throw new TypeError("Arrays are not supported by deepExtend");for(let n=0;n<t.length;n++){const s=t[n];if(Object.prototype.hasOwnProperty.call(i,s))if(i[s]&&i[s].constructor===Object)void 0===e[s]&&(e[s]={}),e[s].constructor===Object?gs(e[s],i[s],!1,o):cs(e,i,s,o);else{if(Array.isArray(i[s]))throw new TypeError("Arrays are not supported by deepExtend");cs(e,i,s,o)}}return e}function fs(t,e,i,o=!1){if(Array.isArray(i))throw new TypeError("Arrays are not supported by deepExtend");for(const n in i)if(Object.prototype.hasOwnProperty.call(i,n)&&!t.includes(n))if(i[n]&&i[n].constructor===Object)void 0===e[n]&&(e[n]={}),e[n].constructor===Object?gs(e[n],i[n]):cs(e,i,n,o);else if(Array.isArray(i[n])){e[n]=[];for(let t=0;t<i[n].length;t++)e[n].push(i[n][t])}else cs(e,i,n,o);return e}function gs(t,e,i=!1,o=!1){for(const n in e)(Object.prototype.hasOwnProperty.call(e,n)||!0===i)&&("object"==typeof e[n]&&null!==e[n]&&Object.getPrototypeOf(e[n])===Object.prototype?void 0===t[n]?t[n]=gs({},e[n],i):"object"==typeof t[n]&&null!==t[n]&&Object.getPrototypeOf(t[n])===Object.prototype?gs(t[n],e[n],i):cs(t,e,n,o):Array.isArray(e[n])?t[n]=e[n].slice():cs(t,e,n,o));return t}function ms(t,e){return[...t,e]}function vs(t){return t.slice()}function ys(t){return t.getBoundingClientRect().top}function bs(t,e){if(Array.isArray(t)){const i=t.length;for(let o=0;o<i;o++)e(t[o],o,t)}else for(const i in t)Object.prototype.hasOwnProperty.call(t,i)&&e(t[i],i,t)}function ws(t){let e;switch(t.length){case 3:case 4:return e=ss.exec(t),e?{r:parseInt(e[1]+e[1],16),g:parseInt(e[2]+e[2],16),b:parseInt(e[3]+e[3],16)}:null;case 6:case 7:return e=ns.exec(t),e?{r:parseInt(e[1],16),g:parseInt(e[2],16),b:parseInt(e[3],16)}:null;default:return null}}function _s(t,e){if(t.includes("rgba"))return t;if(t.includes("rgb")){const i=t.substr(t.indexOf("(")+1).replace(")","").split(",");return"rgba("+i[0]+","+i[1]+","+i[2]+","+e+")"}{const i=ws(t);return null==i?t:"rgba("+i.r+","+i.g+","+i.b+","+e+")"}}function xs(t,e,i){return"#"+((1<<24)+(t<<16)+(e<<8)+i).toString(16).slice(1)}function Es(t,e){if(ds(t)){let e=t;if(Ts(e)){const t=e.substr(4).substr(0,e.length-5).split(",").map(function(t){return parseInt(t)});e=xs(t[0],t[1],t[2])}if(!0===Ss(e)){const t=function(t){const e=ws(t);if(!e)throw new TypeError(`'${t}' is not a valid color.`);return Os(e.r,e.g,e.b)}(e),i={h:t.h,s:.8*t.s,v:Math.min(1,1.02*t.v)},o={h:t.h,s:Math.min(1,1.25*t.s),v:.8*t.v},n=ks(o.h,o.s,o.v),s=ks(i.h,i.s,i.v);return{background:e,border:n,highlight:{background:s,border:n},hover:{background:s,border:n}}}return{background:e,border:e,highlight:{background:e,border:e},hover:{background:e,border:e}}}return{background:t.background||void 0,border:t.border||void 0,highlight:ds(t.highlight)?{border:t.highlight,background:t.highlight}:{background:t.highlight&&t.highlight.background||void 0,border:t.highlight&&t.highlight.border||void 0},hover:ds(t.hover)?{border:t.hover,background:t.hover}:{border:t.hover&&t.hover.border||void 0,background:t.hover&&t.hover.background||void 0}}}function Os(t,e,i){t/=255,e/=255,i/=255;const o=Math.min(t,Math.min(e,i)),n=Math.max(t,Math.max(e,i));if(o===n)return{h:0,s:0,v:o};return{h:60*((t===o?3:i===o?1:5)-(t===o?e-i:i===o?t-e:i-t)/(n-o))/360,s:(n-o)/n,v:n}}function Cs(t,e,i){let o,n,s;const r=Math.floor(6*t),a=6*t-r,h=i*(1-e),d=i*(1-a*e),l=i*(1-(1-a)*e);switch(r%6){case 0:o=i,n=l,s=h;break;case 1:o=d,n=i,s=h;break;case 2:o=h,n=i,s=l;break;case 3:o=h,n=d,s=i;break;case 4:o=l,n=h,s=i;break;case 5:o=i,n=h,s=d}return{r:Math.floor(255*o),g:Math.floor(255*n),b:Math.floor(255*s)}}function ks(t,e,i){const o=Cs(t,e,i);return xs(o.r,o.g,o.b)}function Ss(t){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(t)}function Ts(t){return rs.test(t)}function Ms(t){if(null===t||"object"!=typeof t)return null;if(t instanceof Element)return t;const e=Object.create(t);for(const i in t)Object.prototype.hasOwnProperty.call(t,i)&&"object"==typeof t[i]&&(e[i]=Ms(t[i]));return e}function Ds(t,e,i,o={}){const n=function(t){return null!=t},s=function(t){return null!==t&&"object"==typeof t};if(!s(t))throw new Error("Parameter mergeTarget must be an object");if(!s(e))throw new Error("Parameter options must be an object");if(!n(i))throw new Error("Parameter option must have a value");if(!s(o))throw new Error("Parameter globalOptions must be an object");const r=e[i],a=s(o)&&!function(t){for(const e in t)if(Object.prototype.hasOwnProperty.call(t,e))return!1;return!0}(o)?o[i]:void 0,h=a?a.enabled:void 0;if(void 0===r)return;if("boolean"==typeof r)return s(t[i])||(t[i]={}),void(t[i].enabled=r);if(null===r&&!s(t[i])){if(!n(a))return;t[i]=Object.create(a)}if(!s(r))return;let d=!0;void 0!==r.enabled?d=r.enabled:void 0!==h&&(d=a.enabled),function(t,e,i){s(t[i])||(t[i]={});const o=e[i],n=t[i];for(const t in o)Object.prototype.hasOwnProperty.call(o,t)&&(n[t]=o[t])}(t,e,i),t[i].enabled=d}const Is={linear:t=>t,easeInQuad:t=>t*t,easeOutQuad:t=>t*(2-t),easeInOutQuad:t=>t<.5?2*t*t:(4-2*t)*t-1,easeInCubic:t=>t*t*t,easeOutCubic:t=>--t*t*t+1,easeInOutCubic:t=>t<.5?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1,easeInQuart:t=>t*t*t*t,easeOutQuart:t=>1- --t*t*t*t,easeInOutQuart:t=>t<.5?8*t*t*t*t:1-8*--t*t*t*t,easeInQuint:t=>t*t*t*t*t,easeOutQuint:t=>1+--t*t*t*t*t,easeInOutQuint:t=>t<.5?16*t*t*t*t*t:1+16*--t*t*t*t*t};function Ps(t,e){let i;Array.isArray(e)||(e=[e]);for(const o of t)if(o){i=o[e[0]];for(let t=1;t<e.length;t++)i&&(i=i[e[t]]);if(void 0!==i)break}return i}const Bs={black:"#000000",navy:"#000080",darkblue:"#00008B",mediumblue:"#0000CD",blue:"#0000FF",darkgreen:"#006400",green:"#008000",teal:"#008080",darkcyan:"#008B8B",deepskyblue:"#00BFFF",darkturquoise:"#00CED1",mediumspringgreen:"#00FA9A",lime:"#00FF00",springgreen:"#00FF7F",aqua:"#00FFFF",cyan:"#00FFFF",midnightblue:"#191970",dodgerblue:"#1E90FF",lightseagreen:"#20B2AA",forestgreen:"#228B22",seagreen:"#2E8B57",darkslategray:"#2F4F4F",limegreen:"#32CD32",mediumseagreen:"#3CB371",turquoise:"#40E0D0",royalblue:"#4169E1",steelblue:"#4682B4",darkslateblue:"#483D8B",mediumturquoise:"#48D1CC",indigo:"#4B0082",darkolivegreen:"#556B2F",cadetblue:"#5F9EA0",cornflowerblue:"#6495ED",mediumaquamarine:"#66CDAA",dimgray:"#696969",slateblue:"#6A5ACD",olivedrab:"#6B8E23",slategray:"#708090",lightslategray:"#778899",mediumslateblue:"#7B68EE",lawngreen:"#7CFC00",chartreuse:"#7FFF00",aquamarine:"#7FFFD4",maroon:"#800000",purple:"#800080",olive:"#808000",gray:"#808080",skyblue:"#87CEEB",lightskyblue:"#87CEFA",blueviolet:"#8A2BE2",darkred:"#8B0000",darkmagenta:"#8B008B",saddlebrown:"#8B4513",darkseagreen:"#8FBC8F",lightgreen:"#90EE90",mediumpurple:"#9370D8",darkviolet:"#9400D3",palegreen:"#98F