@nuxt/devtools-nightly 2.1.3-29019357.15e8926 → 2.2.0-29019371.ab4e646

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/dist/chunks/module-main.mjs +1 -1
  2. package/dist/client/200.html +12 -12
  3. package/dist/client/404.html +12 -12
  4. package/dist/client/_nuxt/__blank-hgo94jeo.js +1 -0
  5. package/dist/client/_nuxt/{analyze-build-b2e0w492.js → analyze-build-myma3yd1.js} +1 -1
  6. package/dist/client/_nuxt/{assets-ooy780at.js → assets-lv794jnv.js} +1 -1
  7. package/dist/client/_nuxt/{ezsm04pb.js → ba74h01u.js} +4 -4
  8. package/dist/client/_nuxt/builds/latest.json +1 -1
  9. package/dist/client/_nuxt/builds/meta/b81d40a5-e8a7-4c63-bd26-b566ad277cca.json +1 -0
  10. package/dist/client/_nuxt/{code-diff.vue-evxl8yk3.js → code-diff.vue-leogxoz1.js} +1 -1
  11. package/dist/client/_nuxt/{code-snippets.vue-niuxytd8.js → code-snippets.vue-nvtd3pj0.js} +1 -1
  12. package/dist/client/_nuxt/components-hjsf7ksd.js +1 -0
  13. package/dist/client/_nuxt/{composable-item.vue-jh6i4wje.js → composable-item.vue-biqh7ndo.js} +1 -1
  14. package/dist/client/_nuxt/{custom-_name_-d2w86a3p.js → custom-_name_-kex24woa.js} +1 -1
  15. package/dist/client/_nuxt/{data-schema-button.vue-o161gd0r.js → data-schema-button.vue-jp02xd0f.js} +1 -1
  16. package/dist/client/_nuxt/{data-schema-drawer-iawmv060.js → data-schema-drawer-j8693gtm.js} +1 -1
  17. package/dist/client/_nuxt/{default-fi6wr4rh.js → default-j6l1ygv8.js} +1 -1
  18. package/dist/client/_nuxt/{error-404-nko4utqe.js → error-404-opaazyo0.js} +1 -1
  19. package/dist/client/_nuxt/{error-500-accp4ks0.js → error-500-b8putag8.js} +1 -1
  20. package/dist/client/_nuxt/{error-e6py9zhq.js → error-hw4nz28z.js} +1 -1
  21. package/dist/client/_nuxt/{filepath-item.vue-iik0rv7n.js → filepath-item.vue-exj9bzuo.js} +1 -1
  22. package/dist/client/_nuxt/{full-ijw08t7q.js → full-lyo7xogd.js} +1 -1
  23. package/dist/client/_nuxt/{help-fab.vue-m0kqpwd8.js → help-fab.vue-e4itx2nb.js} +1 -1
  24. package/dist/client/_nuxt/{hooks-dko3fqvm.js → hooks-by1oydo6.js} +1 -1
  25. package/dist/client/_nuxt/{imports-e5b19lob.js → imports-ewfsysyi.js} +1 -1
  26. package/dist/client/_nuxt/{index-crpzkkhg.js → index-ll8fiede.js} +1 -1
  27. package/dist/client/_nuxt/{launch-page.vue-lucrka0b.js → launch-page.vue-cea50uh8.js} +1 -1
  28. package/dist/client/_nuxt/{modules-iel6s1a5.js → modules-hmx7tlg2.js} +1 -1
  29. package/dist/client/_nuxt/{nbadge-kq31la26.js → nbadge-irmvqnko.js} +1 -1
  30. package/dist/client/_nuxt/{ncheckbox.vue-d4e0nw7t.js → ncheckbox.vue-l9opyx34.js} +1 -1
  31. package/dist/client/_nuxt/{ndrawer.vue-gwh1lhz9.js → ndrawer.vue-k5p5tlwf.js} +1 -1
  32. package/dist/client/_nuxt/{ndropdown.vue-h7pgjk4l.js → ndropdown.vue-k1705v4p.js} +1 -1
  33. package/dist/client/_nuxt/{nlink.vue-le24rytg.js → nlink.vue-onmg0jek.js} +1 -1
  34. package/dist/client/_nuxt/{nnavbar.vue-lpglg4eo.js → nnavbar.vue-fue4am60.js} +1 -1
  35. package/dist/client/_nuxt/{none-fusixk1b.js → none-cl6yiwom.js} +1 -1
  36. package/dist/client/_nuxt/{nsection-block-mmsg2k2c.js → nsection-block-c0xnizfr.js} +1 -1
  37. package/dist/client/_nuxt/{nselect-tabs.vue-ko7u5g8r.js → nselect-tabs.vue-k91b8jqs.js} +1 -1
  38. package/dist/client/_nuxt/{nselect.vue-kmm6jzqo.js → nselect.vue-g4eljg7m.js} +1 -1
  39. package/dist/client/_nuxt/{open-graph-itwga2im.js → open-graph-c4ydth6b.js} +1 -1
  40. package/dist/client/_nuxt/{overview-e614le68.js → overview-jkk7sab9.js} +1 -1
  41. package/dist/client/_nuxt/{pages-g77nvse5.js → pages-mfzb98c9.js} +1 -1
  42. package/dist/client/_nuxt/{payload-kykbop9f.js → payload-i1sj7egx.js} +1 -1
  43. package/dist/client/_nuxt/{pinia-dkjk5srb.js → pinia-jk28bn4e.js} +1 -1
  44. package/dist/client/_nuxt/{plugins-lzpdw7pk.js → plugins-how6r945.js} +1 -1
  45. package/dist/client/_nuxt/{render-tree-grhm7a5y.js → render-tree-cs83a5o0.js} +1 -1
  46. package/dist/client/_nuxt/{runtime-configs-bnyuro9s.js → runtime-configs-g2ibli02.js} +1 -1
  47. package/dist/client/_nuxt/{server-discovery-ltr99cqd.js → server-discovery-c64pbsxn.js} +1 -1
  48. package/dist/client/_nuxt/{server-route-inputs.vue-izcww1q1.js → server-route-inputs.vue-ip4oitys.js} +1 -1
  49. package/dist/client/_nuxt/{server-routes-l615g2ln.js → server-routes-g1x79dvh.js} +1 -1
  50. package/dist/client/_nuxt/{server-tasks-eofsr1ti.js → server-tasks-ocyl787x.js} +1 -1
  51. package/dist/client/_nuxt/{settings-gmso4uod.js → settings-hrs3i0fe.js} +1 -1
  52. package/dist/client/_nuxt/{stacktrace-list.vue-c6womaa1.js → stacktrace-list.vue-cgia2cun.js} +1 -1
  53. package/dist/client/_nuxt/{state-components-heulsx3v.js → state-components-g3e0hwb3.js} +1 -1
  54. package/dist/client/_nuxt/{state-editor.vue-f4tbu3s1.js → state-editor.vue-c0s3wr8c.js} +1 -1
  55. package/dist/client/_nuxt/{state-modules-f4aciw2e.js → state-modules-sendvo2g.js} +1 -1
  56. package/dist/client/_nuxt/{storage-ocg7nbu3.js → storage-o6ngyyj7.js} +1 -1
  57. package/dist/client/_nuxt/{terminals-bgnaxxgr.js → terminals-frjt0qq9.js} +1 -1
  58. package/dist/client/_nuxt/{timeline-l40vndy8.js → timeline-fx09ptyk.js} +1 -1
  59. package/dist/client/_nuxt/vendor/{vis-7ar5f2fs.js → vis-fth2qiu5.js} +1 -1
  60. package/dist/client/_nuxt/{virtual-files-nyvnebfj.js → virtual-files-cb0gkyzh.js} +1 -1
  61. package/dist/client/_nuxt/{vue-devtools-heyjkwxq.js → vue-devtools-e9suydbb.js} +1 -1
  62. package/dist/client/index.html +12 -12
  63. package/dist/module.json +1 -1
  64. package/package.json +4 -4
  65. package/dist/client/_nuxt/__blank-dudv6g9d.js +0 -1
  66. package/dist/client/_nuxt/builds/meta/9278769e-965b-49ad-9dbf-31ca1d6f81df.json +0 -1
  67. package/dist/client/_nuxt/components-jko3rogs.js +0 -1
@@ -95,4 +95,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
95
95
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,o=!1,s;return{s:function(){e=e.call(r)},n:function(){var l=e.next();return a=l.done,l},e:function(l){o=!0,s=l},f:function(){try{!a&&e.return!=null&&e.return()}finally{if(o)throw s}}}}function Qde(r,n){var e;if(r){if(typeof r=="string")return g$(r,n);var t=Ye(e=Object.prototype.toString.call(r)).call(e,8,-1);if(t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set")return zi(r);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return g$(r,n)}}function g$(r,n){(n==null||n>r.length)&&(n=r.length);for(var e=0,t=new Array(n);e<n;e++)t[e]=r[e];return t}var si,Mt,xr,Ar,Ws;function y$(r,n){var e=new ui,t=Hc(n),i;try{for(t.s();!(i=t.n()).done;){var a=i.value;r.has(a)||e.add(a)}}catch(o){t.e(o)}finally{t.f()}return e}var m$=function(){function r(){C(this,r),si.set(this,new ui),Mt.set(this,new ui)}return x(r,[{key:"size",get:function(){return le(this,Mt,"f").size}},{key:"add",value:function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];for(var a=0,o=t;a<o.length;a++){var s=o[a];le(this,Mt,"f").add(s)}}},{key:"delete",value:function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];for(var a=0,o=t;a<o.length;a++){var s=o[a];le(this,Mt,"f").delete(s)}}},{key:"clear",value:function(){le(this,Mt,"f").clear()}},{key:"getSelection",value:function(){return tr(le(this,Mt,"f"))}},{key:"getChanges",value:function(){return{added:tr(y$(le(this,si,"f"),le(this,Mt,"f"))),deleted:tr(y$(le(this,Mt,"f"),le(this,si,"f"))),previous:tr(new ui(le(this,si,"f"))),current:tr(new ui(le(this,Mt,"f")))}}},{key:"commit",value:function(){var e=this.getChanges();zc(this,si,le(this,Mt,"f")),zc(this,Mt,new ui(le(this,si,"f")));var t=Hc(e.added),i;try{for(t.s();!(i=t.n()).done;){var a=i.value;a.select()}}catch(l){t.e(l)}finally{t.f()}var o=Hc(e.deleted),s;try{for(o.s();!(s=o.n()).done;){var u=s.value;u.unselect()}}catch(l){o.e(l)}finally{o.f()}return e}}]),r}();si=new Ia,Mt=new Ia;var Jde=function(){function r(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){};C(this,r),xr.set(this,new m$),Ar.set(this,new m$),Ws.set(this,void 0),zc(this,Ws,n)}return x(r,[{key:"sizeNodes",get:function(){return le(this,xr,"f").size}},{key:"sizeEdges",get:function(){return le(this,Ar,"f").size}},{key:"getNodes",value:function(){return le(this,xr,"f").getSelection()}},{key:"getEdges",value:function(){return le(this,Ar,"f").getSelection()}},{key:"addNodes",value:function(){var e;(e=le(this,xr,"f")).add.apply(e,arguments)}},{key:"addEdges",value:function(){var e;(e=le(this,Ar,"f")).add.apply(e,arguments)}},{key:"deleteNodes",value:function(e){le(this,xr,"f").delete(e)}},{key:"deleteEdges",value:function(e){le(this,Ar,"f").delete(e)}},{key:"clear",value:function(){le(this,xr,"f").clear(),le(this,Ar,"f").clear()}},{key:"commit",value:function(){for(var e,t,i={nodes:le(this,xr,"f").commit(),edges:le(this,Ar,"f").commit()},a=arguments.length,o=new Array(a),s=0;s<a;s++)o[s]=arguments[s];return(e=le(this,Ws,"f")).call.apply(e,Xf(t=[this,i]).call(t,o)),i}}]),r}();xr=new Ia,Ar=new Ia,Ws=new Ia;function b$(r,n){var e=typeof ei<"u"&&Hi(r)||r["@@iterator"];if(!e){if(ae(r)||(e=Zde(r))||n){e&&(r=e);var t=0,i=function(){};return{s:i,n:function(){return t>=r.length?{done:!0}:{done:!1,value:r[t++]}},e:function(l){throw l},f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
96
96
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,o=!1,s;return{s:function(){e=e.call(r)},n:function(){var l=e.next();return a=l.done,l},e:function(l){o=!0,s=l},f:function(){try{!a&&e.return!=null&&e.return()}finally{if(o)throw s}}}}function Zde(r,n){var e;if(r){if(typeof r=="string")return $$(r,n);var t=Ye(e=Object.prototype.toString.call(r)).call(e,8,-1);if(t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set")return zi(r);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return $$(r,n)}}function $$(r,n){(n==null||n>r.length)&&(n=r.length);for(var e=0,t=new Array(n);e<n;e++)t[e]=r[e];return t}var ece=function(){function r(n,e){var t=this;C(this,r),this.body=n,this.canvas=e,this._selectionAccumulator=new Jde,this.hoverObj={nodes:{},edges:{}},this.options={},this.defaultOptions={multiselect:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0},Ae(this.options,this.defaultOptions),this.body.emitter.on("_dataChanged",function(){t.updateSelection()})}return x(r,[{key:"setOptions",value:function(e){if(e!==void 0){var t=["multiselect","hoverConnectedEdges","selectable","selectConnectedEdges"];sa(t,this.options,e)}}},{key:"selectOnPoint",value:function(e){var t=!1;if(this.options.selectable===!0){var i=this.getNodeAt(e)||this.getEdgeAt(e);this.unselectAll(),i!==void 0&&(t=this.selectObject(i)),this.body.emitter.emit("_requestRedraw")}return t}},{key:"selectAdditionalOnPoint",value:function(e){var t=!1;if(this.options.selectable===!0){var 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}},{key:"_initBaseEvent",value:function(e,t){var i={};return i.pointer={DOM:{x:t.x,y:t.y},canvas:this.canvas.DOMtoCanvas(t)},i.event=e,i}},{key:"generateClickEvent",value:function(e,t,i,a){var o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1,s=this._initBaseEvent(t,i);if(o===!0)s.nodes=[],s.edges=[];else{var u=this.getSelection();s.nodes=u.nodes,s.edges=u.edges}a!==void 0&&(s.previousSelection=a),e=="click"&&(s.items=this.getClickedItems(i)),t.controlEdge!==void 0&&(s.controlEdge=t.controlEdge),this.body.emitter.emit(e,s)}},{key:"selectObject",value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.options.selectConnectedEdges;if(e!==void 0){if(e instanceof Pt){if(t===!0){var i;(i=this._selectionAccumulator).addEdges.apply(i,tr(e.edges))}this._selectionAccumulator.addNodes(e)}else this._selectionAccumulator.addEdges(e);return!0}return!1}},{key:"deselectObject",value:function(e){e.isSelected()===!0&&(e.selected=!1,this._removeFromSelection(e))}},{key:"_getAllNodesOverlappingWith",value:function(e){for(var t=[],i=this.body.nodes,a=0;a<this.body.nodeIndices.length;a++){var o=this.body.nodeIndices[a];i[o].isOverlappingWith(e)&&t.push(o)}return t}},{key:"_pointerToPositionObject",value:function(e){var t=this.canvas.DOMtoCanvas(e);return{left:t.x-1,top:t.y+1,right:t.x+1,bottom:t.y-1}}},{key:"getNodeAt",value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,i=this._pointerToPositionObject(e),a=this._getAllNodesOverlappingWith(i);if(a.length>0)return t===!0?this.body.nodes[a[a.length-1]]:a[a.length-1]}},{key:"_getEdgesOverlappingWith",value:function(e,t){for(var i=this.body.edges,a=0;a<this.body.edgeIndices.length;a++){var o=this.body.edgeIndices[a];i[o].isOverlappingWith(e)&&t.push(o)}}},{key:"_getAllEdgesOverlappingWith",value:function(e){var t=[];return this._getEdgesOverlappingWith(e,t),t}},{key:"getEdgeAt",value:function(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,i=this.canvas.DOMtoCanvas(e),a=10,o=null,s=this.body.edges,u=0;u<this.body.edgeIndices.length;u++){var l=this.body.edgeIndices[u],h=s[l];if(h.connected){var d=h.from.x,c=h.from.y,f=h.to.x,v=h.to.y,p=h.edgeType.getDistanceToEdge(d,c,f,v,i.x,i.y);p<a&&(o=l,a=p)}}if(o!==null)return t===!0?this.body.edges[o]:o}},{key:"_addToHover",value:function(e){e instanceof Pt?this.hoverObj.nodes[e.id]=e:this.hoverObj.edges[e.id]=e}},{key:"_removeFromSelection",value:function(e){if(e instanceof Pt){var t;this._selectionAccumulator.deleteNodes(e),(t=this._selectionAccumulator).deleteEdges.apply(t,tr(e.edges))}else this._selectionAccumulator.deleteEdges(e)}},{key:"unselectAll",value:function(){this._selectionAccumulator.clear()}},{key:"getSelectedNodeCount",value:function(){return this._selectionAccumulator.sizeNodes}},{key:"getSelectedEdgeCount",value:function(){return this._selectionAccumulator.sizeEdges}},{key:"_hoverConnectedEdges",value:function(e){for(var t=0;t<e.edges.length;t++){var i=e.edges[t];i.hover=!0,this._addToHover(i)}}},{key:"emitBlurEvent",value:function(e,t,i){var a=this._initBaseEvent(e,t);i.hover===!0&&(i.hover=!1,i instanceof Pt?(a.node=i.id,this.body.emitter.emit("blurNode",a)):(a.edge=i.id,this.body.emitter.emit("blurEdge",a)))}},{key:"emitHoverEvent",value:function(e,t,i){var a=this._initBaseEvent(e,t),o=!1;return i.hover===!1&&(i.hover=!0,this._addToHover(i),o=!0,i instanceof Pt?(a.node=i.id,this.body.emitter.emit("hoverNode",a)):(a.edge=i.id,this.body.emitter.emit("hoverEdge",a))),o}},{key:"hoverObject",value:function(e,t){var i=this.getNodeAt(t);i===void 0&&(i=this.getEdgeAt(t));var a=!1;for(var o in this.hoverObj.nodes)Object.prototype.hasOwnProperty.call(this.hoverObj.nodes,o)&&(i===void 0||i instanceof Pt&&i.id!=o||i instanceof $n)&&(this.emitBlurEvent(e,t,this.hoverObj.nodes[o]),delete this.hoverObj.nodes[o],a=!0);for(var s in this.hoverObj.edges)Object.prototype.hasOwnProperty.call(this.hoverObj.edges,s)&&(a===!0?(this.hoverObj.edges[s].hover=!1,delete this.hoverObj.edges[s]):(i===void 0||i instanceof $n&&i.id!=s||i instanceof Pt&&!i.hover)&&(this.emitBlurEvent(e,t,this.hoverObj.edges[s]),delete this.hoverObj.edges[s],a=!0));if(i!==void 0){var u=me(this.hoverObj.edges).length,l=me(this.hoverObj.nodes).length,h=i instanceof $n&&u===0&&l===0,d=i instanceof Pt&&u===0&&l===0;(a||h||d)&&(a=this.emitHoverEvent(e,t,i)),i instanceof Pt&&this.options.hoverConnectedEdges===!0&&this._hoverConnectedEdges(i)}a===!0&&this.body.emitter.emit("_requestRedraw")}},{key:"commitWithoutEmitting",value:function(){this._selectionAccumulator.commit()}},{key:"commitAndEmit",value:function(e,t){var i=!1,a=this._selectionAccumulator.commit(),o={nodes:a.nodes.previous,edges:a.edges.previous};a.edges.deleted.length>0&&(this.generateClickEvent("deselectEdge",t,e,o),i=!0),a.nodes.deleted.length>0&&(this.generateClickEvent("deselectNode",t,e,o),i=!0),a.nodes.added.length>0&&(this.generateClickEvent("selectNode",t,e),i=!0),a.edges.added.length>0&&(this.generateClickEvent("selectEdge",t,e),i=!0),i===!0&&this.generateClickEvent("select",t,e)}},{key:"getSelection",value:function(){return{nodes:this.getSelectedNodeIds(),edges:this.getSelectedEdgeIds()}}},{key:"getSelectedNodes",value:function(){return this._selectionAccumulator.getNodes()}},{key:"getSelectedEdges",value:function(){return this._selectionAccumulator.getEdges()}},{key:"getSelectedNodeIds",value:function(){var e;return Cn(e=this._selectionAccumulator.getNodes()).call(e,function(t){return t.id})}},{key:"getSelectedEdgeIds",value:function(){var e;return Cn(e=this._selectionAccumulator.getEdges()).call(e,function(t){return t.id})}},{key:"setSelection",value:function(e){var 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){var i=b$(e.nodes),a;try{for(i.s();!(a=i.n()).done;){var o=a.value,s=this.body.nodes[o];if(!s)throw new RangeError('Node with id "'+o+'" not found');this.selectObject(s,t.highlightEdges)}}catch(c){i.e(c)}finally{i.f()}}if(e.edges){var u=b$(e.edges),l;try{for(u.s();!(l=u.n()).done;){var h=l.value,d=this.body.edges[h];if(!d)throw new RangeError('Edge with id "'+h+'" not found');this.selectObject(d)}}catch(c){u.e(c)}finally{u.f()}}this.body.emitter.emit("_requestRedraw"),this._selectionAccumulator.commit()}},{key:"selectNodes",value:function(e){var 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})}},{key:"selectEdges",value:function(e){if(!e||e.length===void 0)throw"Selection must be an array with ids";this.setSelection({edges:e})}},{key:"updateSelection",value:function(){for(var e in this._selectionAccumulator.getNodes())Object.prototype.hasOwnProperty.call(this.body.nodes,e.id)||this._selectionAccumulator.deleteNodes(e);for(var t in this._selectionAccumulator.getEdges())Object.prototype.hasOwnProperty.call(this.body.edges,t.id)||this._selectionAccumulator.deleteEdges(t)}},{key:"getClickedItems",value:function(e){for(var t=this.canvas.DOMtoCanvas(e),i=[],a=this.body.nodeIndices,o=this.body.nodes,s=a.length-1;s>=0;s--){var u=o[a[s]],l=u.getItemsOnPoint(t);i.push.apply(i,l)}for(var h=this.body.edgeIndices,d=this.body.edges,c=h.length-1;c>=0;c--){var f=d[h[c]],v=f.getItemsOnPoint(t);i.push.apply(i,v)}return i}}]),r}(),w$=cE,tce=Math.floor,Wc=function(r,n){var e=r.length,t=tce(e/2);return e<8?rce(r,n):ice(r,Wc(w$(r,0,t),n),Wc(w$(r,t),n),n)},rce=function(r,n){for(var e=r.length,t=1,i,a;t<e;){for(a=t,i=r[t];a&&n(r[a-1],i)>0;)r[a]=r[--a];a!==t++&&(r[a]=i)}return r},ice=function(r,n,e,t){for(var i=n.length,a=e.length,o=0,s=0;o<i||s<a;)r[o+s]=o<i&&s<a?t(n[o],e[s])<=0?n[o++]:e[s++]:o<i?n[o++]:e[s++];return r},nce=Wc,ace=mo,_$=ace.match(/firefox\/(\d+)/i),oce=!!_$&&+_$[1],sce=mo,uce=/MSIE|Trident/.test(sce),lce=mo,E$=lce.match(/AppleWebKit\/(\d+)\./),hce=!!E$&&+E$[1],dce=V,kO=re,cce=Bi,fce=Et,S$=Ht,vce=JE,O$=dr,$v=ee,pce=nce,gce=aa,T$=oce,yce=uce,P$=bo,I$=hce,Fr=[],k$=kO(Fr.sort),mce=kO(Fr.push),bce=$v(function(){Fr.sort(void 0)}),$ce=$v(function(){Fr.sort(null)}),wce=gce("sort"),CO=!$v(function(){if(P$)return P$<70;if(!(T$&&T$>3)){if(yce)return!0;if(I$)return I$<603;var r="",n,e,t,i;for(n=65;n<76;n++){switch(e=String.fromCharCode(n),n){case 66:case 69:case 70:case 72:t=3;break;case 68:case 71:t=4;break;default:t=2}for(i=0;i<47;i++)Fr.push({k:e+i,v:t})}for(Fr.sort(function(a,o){return o.v-a.v}),i=0;i<Fr.length;i++)e=Fr[i].k.charAt(0),r.charAt(r.length-1)!==e&&(r+=e);return r!=="DGBEFHACIJK"}}),_ce=bce||!$ce||!wce||!CO,Ece=function(r){return function(n,e){return e===void 0?-1:n===void 0?1:r!==void 0?+r(n,e)||0:O$(n)>O$(e)?1:-1}};dce({target:"Array",proto:!0,forced:_ce},{sort:function(n){n!==void 0&&cce(n);var e=fce(this);if(CO)return n===void 0?k$(e):k$(e,n);var t=[],i=S$(e),a,o;for(o=0;o<i;o++)o in e&&mce(t,e[o]);for(pce(t,Ece(n)),a=S$(t),o=0;o<a;)e[o]=t[o++];for(;o<i;)vce(e,o++);return e}});var Sce=Ve,Oce=Sce("Array").sort,Tce=Ie,Pce=Oce,Pd=Array.prototype,Ice=function(r){var n=r.sort;return r===Pd||Tce(Pd,r)&&n===Pd.sort?Pce:n},kce=Ice,Cce=kce,xce=Cce,ka=L(xce),Ace=Bi,Rce=Et,Dce=Ku,Mce=Ht,Nce=TypeError,Fce=function(r){return function(n,e,t,i){Ace(e);var a=Rce(n),o=Dce(a),s=Mce(a),u=r?s-1:0,l=r?-1:1;if(t<2)for(;;){if(u in o){i=o[u],u+=l;break}if(u+=l,r?u<0:s<=u)throw new Nce("Reduce of empty array with no initial value")}for(;r?u>=0:s>u;u+=l)u in o&&(i=e(i,o[u],u,a));return i}},Bce={left:Fce(!1)},Lce=_e,jce=kr,zce=jce(Lce.process)==="process",Hce=V,Wce=Bce.left,Uce=aa,C$=bo,Vce=zce,Gce=!Vce&&C$>79&&C$<83,Kce=Gce||!Uce("reduce");Hce({target:"Array",proto:!0,forced:Kce},{reduce:function(n){var e=arguments.length;return Wce(this,n,e,e>1?arguments[1]:void 0)}});var qce=Ve,Yce=qce("Array").reduce,Xce=Ie,Qce=Yce,Id=Array.prototype,Jce=function(r){var n=r.reduce;return r===Id||Xce(Id,r)&&n===Id.reduce?Qce:n},Zce=Jce,efe=Zce,tfe=efe,xO=L(tfe);function AO(r){var n=rfe();return function(){var t=N(r),i;if(n){var a=N(this).constructor;i=_(t,arguments,a)}else i=t.apply(this,arguments);return oe(this,i)}}function rfe(){if(typeof Reflect>"u"||!_||_.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(_(Boolean,[],function(){})),!0}catch{return!1}}var RO=function(){function r(){C(this,r)}return x(r,[{key:"abstract",value:function(){throw new Error("Can't instantiate abstract class!")}},{key:"fake_use",value:function(){}},{key:"curveType",value:function(){return this.abstract()}},{key:"getPosition",value:function(e){return this.fake_use(e),this.abstract()}},{key:"setPosition",value:function(e,t){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;this.fake_use(e,t,i),this.abstract()}},{key:"getTreeSize",value:function(e){return this.fake_use(e),this.abstract()}},{key:"sort",value:function(e){this.fake_use(e),this.abstract()}},{key:"fix",value:function(e,t){this.fake_use(e,t),this.abstract()}},{key:"shift",value:function(e,t){this.fake_use(e,t),this.abstract()}}]),r}(),ife=function(r){ie(e,r);var n=AO(e);function e(t){var i;return C(this,e),i=n.call(this),i.layout=t,i}return x(e,[{key:"curveType",value:function(){return"horizontal"}},{key:"getPosition",value:function(i){return i.x}},{key:"setPosition",value:function(i,a){var o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;o!==void 0&&this.layout.hierarchical.addToOrdering(i,o),i.x=a}},{key:"getTreeSize",value:function(i){var a=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,i);return{min:a.min_x,max:a.max_x}}},{key:"sort",value:function(i){ka(i).call(i,function(a,o){return a.x-o.x})}},{key:"fix",value:function(i,a){i.y=this.layout.options.hierarchical.levelSeparation*a,i.options.fixed.y=!0}},{key:"shift",value:function(i,a){this.layout.body.nodes[i].x+=a}}]),e}(RO),nfe=function(r){ie(e,r);var n=AO(e);function e(t){var i;return C(this,e),i=n.call(this),i.layout=t,i}return x(e,[{key:"curveType",value:function(){return"vertical"}},{key:"getPosition",value:function(i){return i.y}},{key:"setPosition",value:function(i,a){var o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;o!==void 0&&this.layout.hierarchical.addToOrdering(i,o),i.y=a}},{key:"getTreeSize",value:function(i){var a=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,i);return{min:a.min_y,max:a.max_y}}},{key:"sort",value:function(i){ka(i).call(i,function(a,o){return a.y-o.y})}},{key:"fix",value:function(i,a){i.x=this.layout.options.hierarchical.levelSeparation*a,i.options.fixed.x=!0}},{key:"shift",value:function(i,a){this.layout.body.nodes[i].y+=a}}]),e}(RO),afe=V,ofe=Zr.every,sfe=aa,ufe=sfe("every");afe({target:"Array",proto:!0,forced:!ufe},{every:function(n){return ofe(this,n,arguments.length>1?arguments[1]:void 0)}});var lfe=Ve,hfe=lfe("Array").every,dfe=Ie,cfe=hfe,kd=Array.prototype,ffe=function(r){var n=r.every;return r===kd||dfe(kd,r)&&n===kd.every?cfe:n},vfe=ffe,pfe=vfe,gfe=pfe,DO=L(gfe);function yfe(r,n){var e=typeof ei<"u"&&Hi(r)||r["@@iterator"];if(!e){if(ae(r)||(e=mfe(r))||n){e&&(r=e);var t=0,i=function(){};return{s:i,n:function(){return t>=r.length?{done:!0}:{done:!1,value:r[t++]}},e:function(l){throw l},f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
97
97
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,o=!1,s;return{s:function(){e=e.call(r)},n:function(){var l=e.next();return a=l.done,l},e:function(l){o=!0,s=l},f:function(){try{!a&&e.return!=null&&e.return()}finally{if(o)throw s}}}}function mfe(r,n){var e;if(r){if(typeof r=="string")return x$(r,n);var t=Ye(e=Object.prototype.toString.call(r)).call(e,8,-1);if(t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set")return zi(r);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return x$(r,n)}}function x$(r,n){(n==null||n>r.length)&&(n=r.length);for(var e=0,t=new Array(n);e<n;e++)t[e]=r[e];return t}function bfe(r,n){var e=new ui;return ue(r).call(r,function(t){var i;ue(i=t.edges).call(i,function(a){a.connected&&e.add(a)})}),ue(e).call(e,function(t){var i=t.from.id,a=t.to.id;n[i]==null&&(n[i]=0),(n[a]==null||n[i]>=n[a])&&(n[a]=n[i]+1)}),n}function $fe(r){return MO(function(n){var e,t;return DO(e=yt(t=n.edges).call(t,function(i){return r.has(i.toId)})).call(e,function(i){return i.to===n})},function(n,e){return e>n},"from",r)}function wfe(r){return MO(function(n){var e,t;return DO(e=yt(t=n.edges).call(t,function(i){return r.has(i.toId)})).call(e,function(i){return i.from===n})},function(n,e){return e<n},"to",r)}function MO(r,n,e,t){var i,a=bi(null),o=xO(i=tr(hO(t).call(t))).call(i,function(f,v){return f+1+v.edges.length},0),s=e+"Id",u=e==="to"?1:-1,l=yfe(t),h;try{var d=function(){var v=be(h.value,2),p=v[0],g=v[1];if(!t.has(p)||!r(g))return 0;a[p]=0;for(var y=[g],m=0,w,$=function(){var D,j;if(!t.has(p))return 0;var R=a[w.id]+u;if(ue(D=yt(j=w.edges).call(j,function(M){return M.connected&&M.to!==M.from&&M[e]!==w&&t.has(M.toId)&&t.has(M.fromId)})).call(D,function(M){var W=M[s],X=a[W];(X==null||n(R,X))&&(a[W]=R,y.push(M[e]))}),m>o)return{v:{v:bfe(t,a)}};++m},E;w=y.pop();)if(E=$(),E!==0&&E)return E.v},c;for(l.s();!(h=l.n()).done;)if(c=d(),c!==0&&c)return c.v}catch(f){l.e(f)}finally{l.f()}return a}var _fe=function(){function r(){C(this,r),this.childrenReference={},this.parentReference={},this.trees={},this.distributionOrdering={},this.levels={},this.distributionIndex={},this.isTree=!1,this.treeIndex=-1}return x(r,[{key:"addRelation",value:function(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)}},{key:"checkIfTree",value:function(){for(var e in this.parentReference)if(this.parentReference[e].length>1){this.isTree=!1;return}this.isTree=!0}},{key:"numTrees",value:function(){return this.treeIndex+1}},{key:"setTreeIndex",value:function(e,t){t!==void 0&&this.trees[e.id]===void 0&&(this.trees[e.id]=t,this.treeIndex=Math.max(t,this.treeIndex))}},{key:"ensureLevel",value:function(e){this.levels[e]===void 0&&(this.levels[e]=0)}},{key:"getMaxLevel",value:function(e){var t=this,i={},a=function o(s){if(i[s]!==void 0)return i[s];var u=t.levels[s];if(t.childrenReference[s]){var l=t.childrenReference[s];if(l.length>0)for(var h=0;h<l.length;h++)u=Math.max(u,o(l[h]))}return i[s]=u,u};return a(e)}},{key:"levelDownstream",value:function(e,t){this.levels[t.id]===void 0&&(this.levels[e.id]===void 0&&(this.levels[e.id]=0),this.levels[t.id]=this.levels[e.id]+1)}},{key:"setMinLevelToZero",value:function(e){var t=1e9;for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&this.levels[i]!==void 0&&(t=Math.min(this.levels[i],t));for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&this.levels[a]!==void 0&&(this.levels[a]-=t)}},{key:"getTreeSize",value:function(e,t){var i=1e9,a=-1e9,o=1e9,s=-1e9;for(var u in this.trees)if(Object.prototype.hasOwnProperty.call(this.trees,u)&&this.trees[u]===t){var l=e[u];i=Math.min(l.x,i),a=Math.max(l.x,a),o=Math.min(l.y,o),s=Math.max(l.y,s)}return{min_x:i,max_x:a,min_y:o,max_y:s}}},{key:"hasSameParent",value:function(e,t){var i=this.parentReference[e.id],a=this.parentReference[t.id];if(i===void 0||a===void 0)return!1;for(var o=0;o<i.length;o++)for(var s=0;s<a.length;s++)if(i[o]==a[s])return!0;return!1}},{key:"inSameSubNetwork",value:function(e,t){return this.trees[e.id]===this.trees[t.id]}},{key:"getLevels",value:function(){return me(this.distributionOrdering)}},{key:"addToOrdering",value:function(e,t){this.distributionOrdering[t]===void 0&&(this.distributionOrdering[t]=[]);var i=!1,a=this.distributionOrdering[t];for(var o in a)if(a[o]===e){i=!0;break}i||(this.distributionOrdering[t].push(e),this.distributionIndex[e.id]=this.distributionOrdering[t].length-1)}}]),r}(),Efe=function(){function r(n){C(this,r),this.body=n,this._resetRNG(Math.random()+":"+su()),this.setPhysics=!1,this.options={},this.optionsBackup={physics:{}},this.defaultOptions={randomSeed:void 0,improvedLayout:!0,clusterThreshold:150,hierarchical:{enabled:!1,levelSeparation:150,nodeSpacing:100,treeSpacing:200,blockShifting:!0,edgeMinimization:!0,parentCentralization:!0,direction:"UD",sortMethod:"hubsize"}},Ae(this.options,this.defaultOptions),this.bindEventListeners()}return x(r,[{key:"bindEventListeners",value:function(){var e=this;this.body.emitter.on("_dataChanged",function(){e.setupHierarchicalLayout()}),this.body.emitter.on("_dataLoaded",function(){e.layoutNetwork()}),this.body.emitter.on("_resetHierarchicalLayout",function(){e.setupHierarchicalLayout()}),this.body.emitter.on("_adjustEdgesForHierarchicalLayout",function(){if(e.options.hierarchical.enabled===!0){var t=e.direction.curveType();e.body.emitter.emit("_forceDisableDynamicCurves",t,!1)}})}},{key:"setOptions",value:function(e,t){if(e!==void 0){var i=this.options.hierarchical,a=i.enabled;if(sa(["randomSeed","improvedLayout","clusterThreshold"],this.options,e),Nt(this.options,e,"hierarchical"),e.randomSeed!==void 0&&this._resetRNG(e.randomSeed),i.enabled===!0)return a===!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(a===!0)return this.body.emitter.emit("refresh"),he(t,this.optionsBackup)}return t}},{key:"_resetRNG",value:function(e){this.initialRandomSeed=e,this._rng=vl(this.initialRandomSeed)}},{key:"adaptAllOptionsForHierarchicalLayout",value:function(e){if(this.options.hierarchical.enabled===!0){var 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"):se(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"});var 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{var a=e.edges.smooth;a.type!==void 0&&a.type!=="dynamic"&&(i=a.type),this.optionsBackup.edges={smooth:{enabled:a.enabled===void 0?!0:a.enabled,type:a.type===void 0?"dynamic":a.type,roundness:a.roundness===void 0?.5:a.roundness,forceDirection:a.forceDirection===void 0?!1:a.forceDirection}},e.edges.smooth={enabled:a.enabled===void 0?!0:a.enabled,type:i,roundness:a.roundness===void 0?.5:a.roundness,forceDirection:a.forceDirection===void 0?!1:a.forceDirection}}this.body.emitter.emit("_forceDisableDynamicCurves",i)}return e}},{key:"positionInitially",value:function(e){if(this.options.hierarchical.enabled!==!0){this._resetRNG(this.initialRandomSeed);for(var t=e.length+50,i=0;i<e.length;i++){var a=e[i],o=2*Math.PI*this._rng();a.x===void 0&&(a.x=t*Math.cos(o)),a.y===void 0&&(a.y=t*Math.sin(o))}}}},{key:"layoutNetwork",value:function(){if(this.options.hierarchical.enabled!==!0&&this.options.improvedLayout===!0){for(var e=this.body.nodeIndices,t=0,i=0;i<e.length;i++){var a=this.body.nodes[e[i]];a.predefinedPosition===!0&&(t+=1)}if(t<.5*e.length){var o=10,s=0,u=this.options.clusterThreshold,l={clusterNodeProperties:{shape:"ellipse",label:"",group:"",font:{multi:!1}},clusterEdgeProperties:{label:"",font:{multi:!1},smooth:{enabled:!1}}};if(e.length>u){for(var h=e.length;e.length>u&&s<=o;){s+=1;var d=e.length;s%3===0?this.body.modules.clustering.clusterBridges(l):this.body.modules.clustering.clusterOutliers(l);var c=e.length;if(d==c&&s%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*h)})}s>o&&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();for(var f=70,v=0;v<e.length;v++){var p=this.body.nodes[e[v]];p.predefinedPosition===!1&&(p.x+=(.5-this._rng())*f,p.y+=(.5-this._rng())*f)}this._declusterAll(),this.body.emitter.emit("_repositionBezierNodes")}}}},{key:"_shiftToCenter",value:function(){for(var e=ot.getRangeCore(this.body.nodes,this.body.nodeIndices),t=ot.findCenter(e),i=0;i<this.body.nodeIndices.length;i++){var a=this.body.nodes[this.body.nodeIndices[i]];a.x-=t.x,a.y-=t.y}}},{key:"_declusterAll",value:function(){for(var e=!0;e===!0;){e=!1;for(var t=0;t<this.body.nodeIndices.length;t++)this.body.nodes[this.body.nodeIndices[t]].isCluster===!0&&(e=!0,this.body.modules.clustering.openCluster(this.body.nodeIndices[t],{},!1));e===!0&&this.body.emitter.emit("_dataChanged")}}},{key:"getSeed",value:function(){return this.initialRandomSeed}},{key:"setupHierarchicalLayout",value:function(){if(this.options.hierarchical.enabled===!0&&this.body.nodeIndices.length>0){var e,t,i=!1,a=!1;this.lastNodeOnLevel={},this.hierarchical=new _fe;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):a=!0);if(a===!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(a===!0){var o=this.options.hierarchical.sortMethod;o==="hubsize"?this._determineLevelsByHubsize():o==="directed"?this._determineLevelsDirected():o==="custom"&&this._determineLevelsCustomCallback()}for(var s in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,s)&&this.hierarchical.ensureLevel(s);var u=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(u),this._condenseHierarchy(),this._shiftToCenter()}}},{key:"_condenseHierarchy",value:function(){var e=this,t=!1,i={},a=function(){for(var w=s(),$=0,E=0;E<w.length-1;E++){var k=w[E].max-w[E+1].min;$+=k+e.options.hierarchical.treeSpacing,o(E+1,$)}},o=function(w,$){var E=e.hierarchical.trees;for(var k in E)Object.prototype.hasOwnProperty.call(E,k)&&E[k]===w&&e.direction.shift(k,$)},s=function(){for(var w=[],$=0;$<e.hierarchical.numTrees();$++)w.push(e.direction.getTreeSize($));return w},u=function m(w,$){if(!$[w.id]&&($[w.id]=!0,e.hierarchical.childrenReference[w.id])){var E=e.hierarchical.childrenReference[w.id];if(E.length>0)for(var k=0;k<E.length;k++)m(e.body.nodes[E[k]],$)}},l=function(w){var $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1e9,E=1e9,k=1e9,D=1e9,j=-1e9;for(var R in w)if(Object.prototype.hasOwnProperty.call(w,R)){var M=e.body.nodes[R],W=e.hierarchical.levels[M.id],X=e.direction.getPosition(M),Y=e._getSpaceAroundNode(M,w),ge=be(Y,2),Ge=ge[0],ke=ge[1];E=Math.min(Ge,E),k=Math.min(ke,k),W<=$&&(D=Math.min(X,D),j=Math.max(X,j))}return[D,j,E,k]},h=function(w,$){var E=e.hierarchical.getMaxLevel(w.id),k=e.hierarchical.getMaxLevel($.id);return Math.min(E,k)},d=function(w,$,E){for(var k=e.hierarchical,D=0;D<$.length;D++){var j=$[D],R=k.distributionOrdering[j];if(R.length>1)for(var M=0;M<R.length-1;M++){var W=R[M],X=R[M+1];k.hasSameParent(W,X)&&k.inSameSubNetwork(W,X)&&w(W,X,E)}}},c=function(w,$){var E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,k=e.direction.getPosition(w),D=e.direction.getPosition($),j=Math.abs(D-k),R=e.options.hierarchical.nodeSpacing;if(j>R){var M={},W={};u(w,M),u($,W);var X=h(w,$),Y=l(M,X),ge=l(W,X),Ge=Y[1],ke=ge[0],St=ge[2],rt=Math.abs(Ge-ke);if(rt>R){var Qe=Ge-ke+R;Qe<-St+R&&(Qe=-St+R),Qe<0&&(e._shiftBlock($.id,Qe),t=!0,E===!0&&e._centerParent($))}}},f=function(w,$){for(var E=$.id,k=$.edges,D=e.hierarchical.levels[$.id],j=e.options.hierarchical.levelSeparation*e.options.hierarchical.levelSeparation,R={},M=[],W=0;W<k.length;W++){var X=k[W];if(X.toId!=X.fromId){var Y=X.toId==E?X.from:X.to;R[k[W].id]=Y,e.hierarchical.levels[Y.id]<D&&M.push(X)}}var ge=function(Je,ce){for(var Ce=0,Oe=0;Oe<ce.length;Oe++)if(R[ce[Oe].id]!==void 0){var Ze=e.direction.getPosition(R[ce[Oe].id])-Je;Ce+=Ze/Math.sqrt(Ze*Ze+j)}return Ce},Ge=function(Je,ce){for(var Ce=0,Oe=0;Oe<ce.length;Oe++)if(R[ce[Oe].id]!==void 0){var Ze=e.direction.getPosition(R[ce[Oe].id])-Je;Ce-=j*Math.pow(Ze*Ze+j,-1.5)}return Ce},ke=function(Je,ce){for(var Ce=e.direction.getPosition($),Oe={},Ze=0;Ze<Je;Ze++){var cr=ge(Ce,ce),Tt=Ge(Ce,ce),et=40,A=Math.max(-et,Math.min(et,Math.round(cr/Tt)));if(Ce=Ce-A,Oe[Ce]!==void 0)break;Oe[Ce]=Ze}return Ce},St=function(Je){var ce=e.direction.getPosition($);if(i[$.id]===void 0){var Ce={};u($,Ce),i[$.id]=Ce}var Oe=l(i[$.id]),Ze=Oe[2],cr=Oe[3],Tt=Je-ce,et=0;Tt>0?et=Math.min(Tt,cr-e.options.hierarchical.nodeSpacing):Tt<0&&(et=-Math.min(-Tt,Ze-e.options.hierarchical.nodeSpacing)),et!=0&&(e._shiftBlock($.id,et),t=!0)},rt=function(Je){var ce=e.direction.getPosition($),Ce=e._getSpaceAroundNode($),Oe=be(Ce,2),Ze=Oe[0],cr=Oe[1],Tt=Je-ce,et=ce;Tt>0?et=Math.min(ce+(cr-e.options.hierarchical.nodeSpacing),Je):Tt<0&&(et=Math.max(ce-(Ze-e.options.hierarchical.nodeSpacing),Je)),et!==ce&&(e.direction.setPosition($,et),t=!0)},Qe=ke(w,M);St(Qe),Qe=ke(w,k),rt(Qe)},v=function(w){var $=e.hierarchical.getLevels();$=mi($).call($);for(var E=0;E<w;E++){t=!1;for(var k=0;k<$.length;k++)for(var D=$[k],j=e.hierarchical.distributionOrdering[D],R=0;R<j.length;R++)f(1e3,j[R]);if(t!==!0)break}},p=function(w){var $=e.hierarchical.getLevels();$=mi($).call($);for(var E=0;E<w&&(t=!1,d(c,$,!0),t===!0);E++);},g=function(){for(var w in e.body.nodes)Object.prototype.hasOwnProperty.call(e.body.nodes,w)&&e._centerParent(e.body.nodes[w])},y=function(){var w=e.hierarchical.getLevels();w=mi(w).call(w);for(var $=0;$<w.length;$++)for(var E=w[$],k=e.hierarchical.distributionOrdering[E],D=0;D<k.length;D++)e._centerParent(k[D])};this.options.hierarchical.blockShifting===!0&&(p(5),g()),this.options.hierarchical.edgeMinimization===!0&&v(20),this.options.hierarchical.parentCentralization===!0&&y(),a()}},{key:"_getSpaceAroundNode",value:function(e,t){var i=!0;t===void 0&&(i=!1);var a=this.hierarchical.levels[e.id];if(a!==void 0){var o=this.hierarchical.distributionIndex[e.id],s=this.direction.getPosition(e),u=this.hierarchical.distributionOrdering[a],l=1e9,h=1e9;if(o!==0){var d=u[o-1];if(i===!0&&t[d.id]===void 0||i===!1){var c=this.direction.getPosition(d);l=s-c}}if(o!=u.length-1){var f=u[o+1];if(i===!0&&t[f.id]===void 0||i===!1){var v=this.direction.getPosition(f);h=Math.min(h,v-s)}}return[l,h]}else return[0,0]}},{key:"_centerParent",value:function(e){if(this.hierarchical.parentReference[e.id])for(var t=this.hierarchical.parentReference[e.id],i=0;i<t.length;i++){var a=t[i],o=this.body.nodes[a],s=this.hierarchical.childrenReference[a];if(s!==void 0){var u=this._getCenterPosition(s),l=this.direction.getPosition(o),h=this._getSpaceAroundNode(o),d=be(h,2),c=d[0],f=d[1],v=l-u;(v<0&&Math.abs(v)<f-this.options.hierarchical.nodeSpacing||v>0&&Math.abs(v)<c-this.options.hierarchical.nodeSpacing)&&this.direction.setPosition(o,u)}}}},{key:"_placeNodesByHierarchy",value:function(e){this.positionedNodes={};for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)){var i,a=me(e[t]);a=this._indexArrayToNodes(a),ka(i=this.direction).call(i,a);for(var o=0,s=0;s<a.length;s++){var u=a[s];if(this.positionedNodes[u.id]===void 0){var l=this.options.hierarchical.nodeSpacing,h=l*o;o>0&&(h=this.direction.getPosition(a[s-1])+l),this.direction.setPosition(u,h,t),this._validatePositionAndContinue(u,t,h),o++}}}}},{key:"_placeBranchNodes",value:function(e,t){var i,a=this.hierarchical.childrenReference[e];if(a!==void 0){for(var o=[],s=0;s<a.length;s++)o.push(this.body.nodes[a[s]]);ka(i=this.direction).call(i,o);for(var u=0;u<o.length;u++){var l=o[u],h=this.hierarchical.levels[l.id];if(h>t&&this.positionedNodes[l.id]===void 0){var d=this.options.hierarchical.nodeSpacing,c=void 0;u===0?c=this.direction.getPosition(this.body.nodes[e]):c=this.direction.getPosition(o[u-1])+d,this.direction.setPosition(l,c,h),this._validatePositionAndContinue(l,h,c)}else return}var f=this._getCenterPosition(o);this.direction.setPosition(this.body.nodes[e],f,t)}}},{key:"_validatePositionAndContinue",value:function(e,t,i){if(this.hierarchical.isTree){if(this.lastNodeOnLevel[t]!==void 0){var a=this.direction.getPosition(this.body.nodes[this.lastNodeOnLevel[t]]);if(i-a<this.options.hierarchical.nodeSpacing){var o=a+this.options.hierarchical.nodeSpacing-i,s=this._findCommonParent(this.lastNodeOnLevel[t],e.id);this._shiftBlock(s.withChild,o)}}this.lastNodeOnLevel[t]=e.id,this.positionedNodes[e.id]=!0,this._placeBranchNodes(e.id,t)}}},{key:"_indexArrayToNodes",value:function(e){for(var t=[],i=0;i<e.length;i++)t.push(this.body.nodes[e[i]]);return t}},{key:"_getDistribution",value:function(){var e={},t,i;for(t in this.body.nodes)if(Object.prototype.hasOwnProperty.call(this.body.nodes,t)){i=this.body.nodes[t];var a=this.hierarchical.levels[t]===void 0?0:this.hierarchical.levels[t];this.direction.fix(i,a),e[a]===void 0&&(e[a]={}),e[a][t]=i}return e}},{key:"_getActiveEdges",value:function(e){var t=this,i=[];return J(e.edges,function(a){var o;Z(o=t.body.edgeIndices).call(o,a.id)!==-1&&i.push(a)}),i}},{key:"_getHubSizes",value:function(){var e=this,t={},i=this.body.nodeIndices;J(i,function(o){var s=e.body.nodes[o],u=e._getActiveEdges(s).length;t[u]=!0});var a=[];return J(t,function(o){a.push(Number(o))}),ka(a).call(a,function(o,s){return s-o}),a}},{key:"_determineLevelsByHubsize",value:function(){for(var e=this,t=function(u,l){e.hierarchical.levelDownstream(u,l)},i=this._getHubSizes(),a=function(){var u=i[o];if(u===0)return 1;J(e.body.nodeIndices,function(l){var h=e.body.nodes[l];u===e._getActiveEdges(h).length&&e._crawlNetwork(t,l)})},o=0;o<i.length&&!a();++o);}},{key:"_determineLevelsCustomCallback",value:function(){var e=this,t=1e5,i=function(s,u,l){},a=function(s,u,l){var h=e.hierarchical.levels[s.id];h===void 0&&(h=e.hierarchical.levels[s.id]=t);var d=i(ot.cloneOptions(s,"node"),ot.cloneOptions(u,"node"),ot.cloneOptions(l,"edge"));e.hierarchical.levels[u.id]=h+d};this._crawlNetwork(a),this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:"_determineLevelsDirected",value:function(){var e,t=this,i=xO(e=this.body.nodeIndices).call(e,function(a,o){return a.set(o,t.body.nodes[o]),a},new ZS);this.options.hierarchical.shakeTowards==="roots"?this.hierarchical.levels=wfe(i):this.hierarchical.levels=$fe(i),this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:"_generateMap",value:function(){var e=this,t=function(a,o){e.hierarchical.levels[o.id]>e.hierarchical.levels[a.id]&&e.hierarchical.addRelation(a.id,o.id)};this._crawlNetwork(t),this.hierarchical.checkIfTree()}},{key:"_crawlNetwork",value:function(){var e=this,t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){},i=arguments.length>1?arguments[1]:void 0,a={},o=function c(f,v){if(a[f.id]===void 0){e.hierarchical.setTreeIndex(f,v),a[f.id]=!0;for(var p,g=e._getActiveEdges(f),y=0;y<g.length;y++){var m=g[y];m.connected===!0&&(m.toId==f.id?p=m.from:p=m.to,f.id!=p.id&&(t(f,p,m),c(p,v)))}}};if(i===void 0)for(var s=0,u=0;u<this.body.nodeIndices.length;u++){var l=this.body.nodeIndices[u];if(a[l]===void 0){var h=this.body.nodes[l];o(h,s),s+=1}}else{var d=this.body.nodes[i];if(d===void 0){console.error("Node not found:",i);return}o(d)}}},{key:"_shiftBlock",value:function(e,t){var i=this,a={},o=function s(u){if(!a[u]){a[u]=!0,i.direction.shift(u,t);var l=i.hierarchical.childrenReference[u];if(l!==void 0)for(var h=0;h<l.length;h++)s(l[h])}};o(e)}},{key:"_findCommonParent",value:function(e,t){var i=this,a={},o=function u(l,h){var d=i.hierarchical.parentReference[h];if(d!==void 0)for(var c=0;c<d.length;c++){var f=d[c];l[f]=!0,u(l,f)}},s=function u(l,h){var d=i.hierarchical.parentReference[h];if(d!==void 0)for(var c=0;c<d.length;c++){var f=d[c];if(l[f]!==void 0)return{foundParent:f,withChild:h};var v=u(l,f);if(v.foundParent!==null)return v}return{foundParent:null,withChild:h}};return o(a,e),s(a,t)}},{key:"setDirectionStrategy",value:function(){var e=this.options.hierarchical.direction==="UD"||this.options.hierarchical.direction==="DU";e?this.direction=new ife(this):this.direction=new nfe(this)}},{key:"_getCenterPosition",value:function(e){for(var t=1e9,i=-1e9,a=0;a<e.length;a++){var o=void 0;if(e[a].id!==void 0)o=e[a];else{var s=e[a];o=this.body.nodes[s]}var u=this.direction.getPosition(o);t=Math.min(t,u),i=Math.max(i,u)}return .5*(t+i)}}]),r}();function Sfe(r,n){var e=typeof ei<"u"&&Hi(r)||r["@@iterator"];if(!e){if(ae(r)||(e=Ofe(r))||n){e&&(r=e);var t=0,i=function(){};return{s:i,n:function(){return t>=r.length?{done:!0}:{done:!1,value:r[t++]}},e:function(l){throw l},f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
98
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,o=!1,s;return{s:function(){e=e.call(r)},n:function(){var l=e.next();return a=l.done,l},e:function(l){o=!0,s=l},f:function(){try{!a&&e.return!=null&&e.return()}finally{if(o)throw s}}}}function Ofe(r,n){var e;if(r){if(typeof r=="string")return A$(r,n);var t=Ye(e=Object.prototype.toString.call(r)).call(e,8,-1);if(t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set")return zi(r);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return A$(r,n)}}function A$(r,n){(n==null||n>r.length)&&(n=r.length);for(var e=0,t=new Array(n);e<n;e++)t[e]=r[e];return t}var Tfe=function(){function r(n,e,t,i){var a=this,o,s;C(this,r),this.body=n,this.canvas=e,this.selectionHandler=t,this.interactionHandler=i,this.editMode=!1,this.manipulationDiv=void 0,this.editModeDiv=void 0,this.closeDiv=void 0,this._domEventListenerCleanupQueue=[],this.temporaryUIFunctions={},this.temporaryEventFunctions=[],this.touchTime=0,this.temporaryIds={nodes:[],edges:[]},this.guiEnabled=!1,this.inMode=!1,this.selectedControlNode=void 0,this.options={},this.defaultOptions={enabled:!1,initiallyActive:!1,addNode:!0,addEdge:!0,editNode:void 0,editEdge:!0,deleteNode:!0,deleteEdge:!0,controlNodeStyle:{shape:"dot",size:6,color:{background:"#ff0000",border:"#3c3c3c",highlight:{background:"#07f968",border:"#3c3c3c"}},borderWidth:2,borderWidthSelected:2}},Ae(this.options,this.defaultOptions),this.body.emitter.on("destroy",function(){a._clean()}),this.body.emitter.on("_dataChanged",O(o=this._restore).call(o,this)),this.body.emitter.on("_resetData",O(s=this._restore).call(s,this))}return x(r,[{key:"_restore",value:function(){this.inMode!==!1&&(this.options.initiallyActive===!0?this.enableEditMode():this.disableEditMode())}},{key:"setOptions",value:function(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,he(this.options,e)),this.options.initiallyActive===!0&&(this.editMode=!0),this._setup())}},{key:"toggleEditMode",value:function(){this.editMode===!0?this.disableEditMode():this.enableEditMode()}},{key:"enableEditMode",value:function(){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())}},{key:"disableEditMode",value:function(){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())}},{key:"showManipulatorToolbar",value:function(){if(this._clean(),this.manipulationDOM={},this.guiEnabled===!0){var e,t;this.editMode=!0,this.manipulationDiv.style.display="block",this.closeDiv.style.display="block";var i=this.selectionHandler.getSelectedNodeCount(),a=this.selectionHandler.getSelectedEdgeCount(),o=i+a,s=this.options.locales[this.options.locale],u=!1;this.options.addNode!==!1&&(this._createAddNodeButton(s),u=!0),this.options.addEdge!==!1&&(u===!0?this._createSeperator(1):u=!0,this._createAddEdgeButton(s)),i===1&&typeof this.options.editNode=="function"?(u===!0?this._createSeperator(2):u=!0,this._createEditNodeButton(s)):a===1&&i===0&&this.options.editEdge!==!1&&(u===!0?this._createSeperator(3):u=!0,this._createEditEdgeButton(s)),o!==0&&(i>0&&this.options.deleteNode!==!1?(u===!0&&this._createSeperator(4),this._createDeleteButton(s)):i===0&&this.options.deleteEdge!==!1&&(u===!0&&this._createSeperator(4),this._createDeleteButton(s))),this._bindElementEvents(this.closeDiv,O(e=this.toggleEditMode).call(e,this)),this._temporaryBindEvent("select",O(t=this.showManipulatorToolbar).call(t,this))}this.body.emitter.emit("_redraw")}},{key:"addNodeMode",value:function(){var e;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addNode",this.guiEnabled===!0){var t,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,O(t=this.toggleEditMode).call(t,this))}this._temporaryBindEvent("click",O(e=this._performAddNode).call(e,this))}},{key:"editNode",value:function(){var e=this;this.editMode!==!0&&this.enableEditMode(),this._clean();var t=this.selectionHandler.getSelectedNodes()[0];if(t!==void 0)if(this.inMode="editNode",typeof this.options.editNode=="function")if(t.isCluster!==!0){var i=he({},t.options,!1);if(i.x=t.x,i.y=t.y,this.options.editNode.length===2)this.options.editNode(i,function(a){a!=null&&e.inMode==="editNode"&&e.body.data.nodes.getDataSet().update(a),e.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()}},{key:"addEdgeMode",value:function(){var e,t,i,a,o;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addEdge",this.guiEnabled===!0){var s,u=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(u),this._createSeperator(),this._createDescription(u.edgeDescription||this.options.locales.en.edgeDescription),this._bindElementEvents(this.closeDiv,O(s=this.toggleEditMode).call(s,this))}this._temporaryBindUI("onTouch",O(e=this._handleConnect).call(e,this)),this._temporaryBindUI("onDragEnd",O(t=this._finishConnect).call(t,this)),this._temporaryBindUI("onDrag",O(i=this._dragControlNode).call(i,this)),this._temporaryBindUI("onRelease",O(a=this._finishConnect).call(a,this)),this._temporaryBindUI("onDragStart",O(o=this._dragStartEdge).call(o,this)),this._temporaryBindUI("onHold",function(){})}},{key:"editEdgeMode",value:function(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="editEdge",se(this.options.editEdge)==="object"&&typeof this.options.editEdge.editWithoutDrag=="function"&&(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],this.edgeBeingEditedId!==void 0)){var e=this.body.edges[this.edgeBeingEditedId];this._performEditEdge(e.from.id,e.to.id);return}if(this.guiEnabled===!0){var t,i=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(i),this._createSeperator(),this._createDescription(i.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindElementEvents(this.closeDiv,O(t=this.toggleEditMode).call(t,this))}if(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],this.edgeBeingEditedId!==void 0){var a,o,s,u,l=this.body.edges[this.edgeBeingEditedId],h=this._getNewTargetNode(l.from.x,l.from.y),d=this._getNewTargetNode(l.to.x,l.to.y);this.temporaryIds.nodes.push(h.id),this.temporaryIds.nodes.push(d.id),this.body.nodes[h.id]=h,this.body.nodeIndices.push(h.id),this.body.nodes[d.id]=d,this.body.nodeIndices.push(d.id),this._temporaryBindUI("onTouch",O(a=this._controlNodeTouch).call(a,this)),this._temporaryBindUI("onTap",function(){}),this._temporaryBindUI("onHold",function(){}),this._temporaryBindUI("onDragStart",O(o=this._controlNodeDragStart).call(o,this)),this._temporaryBindUI("onDrag",O(s=this._controlNodeDrag).call(s,this)),this._temporaryBindUI("onDragEnd",O(u=this._controlNodeDragEnd).call(u,this)),this._temporaryBindUI("onMouseMove",function(){}),this._temporaryBindEvent("beforeDrawing",function(c){var f=l.edgeType.findBorderPositions(c);h.selected===!1&&(h.x=f.from.x,h.y=f.from.y),d.selected===!1&&(d.x=f.to.x,d.y=f.to.y)}),this.body.emitter.emit("_redraw")}else this.showManipulatorToolbar()}},{key:"deleteSelected",value:function(){var e=this;this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="delete";var t=this.selectionHandler.getSelectedNodeIds(),i=this.selectionHandler.getSelectedEdgeIds(),a=void 0;if(t.length>0){for(var o=0;o<t.length;o++)if(this.body.nodes[t[o]].isCluster===!0){alert(this.options.locales[this.options.locale].deleteClusterError||this.options.locales.en.deleteClusterError);return}typeof this.options.deleteNode=="function"&&(a=this.options.deleteNode)}else i.length>0&&typeof this.options.deleteEdge=="function"&&(a=this.options.deleteEdge);if(typeof a=="function"){var s={nodes:t,edges:i};if(a.length===2)a(s,function(u){u!=null&&e.inMode==="delete"?(e.body.data.edges.getDataSet().remove(u.edges),e.body.data.nodes.getDataSet().remove(u.nodes),e.body.emitter.emit("startSimulation"),e.showManipulatorToolbar()):(e.body.emitter.emit("startSimulation"),e.showManipulatorToolbar())});else throw new Error("The function for delete does not support two arguments (data, callback)")}else this.body.data.edges.getDataSet().remove(i),this.body.data.nodes.getDataSet().remove(t),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}},{key:"_setup",value:function(){this.options.enabled===!0?(this.guiEnabled=!0,this._createWrappers(),this.editMode===!1?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}},{key:"_createWrappers",value:function(){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)}}},{key:"_getNewTargetNode",value:function(e,t){var i=he({},this.options.controlNodeStyle);i.id="targetNode"+Pa(),i.hidden=!1,i.physics=!1,i.x=e,i.y=t;var a=this.body.functions.createNode(i);return a.shape.boundingBox={left:e,right:e,top:t,bottom:t},a}},{key:"_createEditButton",value:function(){var e;this._clean(),this.manipulationDOM={},Rr(this.editModeDiv);var 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,O(e=this.toggleEditMode).call(e,this))}},{key:"_clean",value:function(){this.inMode=!1,this.guiEnabled===!0&&(Rr(this.editModeDiv),Rr(this.manipulationDiv),this._cleanupDOMEventListeners()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}},{key:"_cleanupDOMEventListeners",value:function(){var e,t=Sfe(br(e=this._domEventListenerCleanupQueue).call(e,0)),i;try{for(t.s();!(i=t.n()).done;){var a=i.value;a()}}catch(o){t.e(o)}finally{t.f()}}},{key:"_removeManipulationDOM",value:function(){this._clean(),Rr(this.manipulationDiv),Rr(this.editModeDiv),Rr(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}},{key:"_createSeperator",value:function(){var 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])}},{key:"_createAddNodeButton",value:function(e){var t,i=this._createButton("addNode","vis-add",e.addNode||this.options.locales.en.addNode);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,O(t=this.addNodeMode).call(t,this))}},{key:"_createAddEdgeButton",value:function(e){var t,i=this._createButton("addEdge","vis-connect",e.addEdge||this.options.locales.en.addEdge);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,O(t=this.addEdgeMode).call(t,this))}},{key:"_createEditNodeButton",value:function(e){var t,i=this._createButton("editNode","vis-edit",e.editNode||this.options.locales.en.editNode);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,O(t=this.editNode).call(t,this))}},{key:"_createEditEdgeButton",value:function(e){var t,i=this._createButton("editEdge","vis-edit",e.editEdge||this.options.locales.en.editEdge);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,O(t=this.editEdgeMode).call(t,this))}},{key:"_createDeleteButton",value:function(e){var t,i;this.options.rtl?i="vis-delete-rtl":i="vis-delete";var a=this._createButton("delete",i,e.del||this.options.locales.en.del);this.manipulationDiv.appendChild(a),this._bindElementEvents(a,O(t=this.deleteSelected).call(t,this))}},{key:"_createBackButton",value:function(e){var t,i=this._createButton("back","vis-back",e.back||this.options.locales.en.back);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,O(t=this.showManipulatorToolbar).call(t,this))}},{key:"_createButton",value:function(e,t,i){var a=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=a,this.manipulationDOM[e+"Label"].innerText=i,this.manipulationDOM[e+"Div"].appendChild(this.manipulationDOM[e+"Label"]),this.manipulationDOM[e+"Div"]}},{key:"_createDescription",value:function(e){this.manipulationDOM.descriptionLabel=document.createElement("div"),this.manipulationDOM.descriptionLabel.className="vis-none",this.manipulationDOM.descriptionLabel.innerText=e,this.manipulationDiv.appendChild(this.manipulationDOM.descriptionLabel)}},{key:"_temporaryBindEvent",value:function(e,t){this.temporaryEventFunctions.push({event:e,boundFunction:t}),this.body.emitter.on(e,t)}},{key:"_temporaryBindUI",value:function(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: "+Ao(me(this.body.eventListeners)))}},{key:"_unbindTemporaryUIs",value:function(){for(var e in this.temporaryUIFunctions)Object.prototype.hasOwnProperty.call(this.temporaryUIFunctions,e)&&(this.body.eventListeners[e]=this.temporaryUIFunctions[e],delete this.temporaryUIFunctions[e]);this.temporaryUIFunctions={}}},{key:"_unbindTemporaryEvents",value:function(){for(var e=0;e<this.temporaryEventFunctions.length;e++){var t=this.temporaryEventFunctions[e].event,i=this.temporaryEventFunctions[e].boundFunction;this.body.emitter.off(t,i)}this.temporaryEventFunctions=[]}},{key:"_bindElementEvents",value:function(e,t){var i=new bn(e,{});pu(i,t),this._domEventListenerCleanupQueue.push(function(){i.destroy()});var a=function(s){var u=s.keyCode,l=s.key;(l==="Enter"||l===" "||u===13||u===32)&&t()};e.addEventListener("keyup",a,!1),this._domEventListenerCleanupQueue.push(function(){e.removeEventListener("keyup",a,!1)})}},{key:"_cleanupTemporaryNodesAndEdges",value:function(){for(var e=0;e<this.temporaryIds.edges.length;e++){var t;this.body.edges[this.temporaryIds.edges[e]].disconnect(),delete this.body.edges[this.temporaryIds.edges[e]];var i=Z(t=this.body.edgeIndices).call(t,this.temporaryIds.edges[e]);if(i!==-1){var a;br(a=this.body.edgeIndices).call(a,i,1)}}for(var o=0;o<this.temporaryIds.nodes.length;o++){var s;delete this.body.nodes[this.temporaryIds.nodes[o]];var u=Z(s=this.body.nodeIndices).call(s,this.temporaryIds.nodes[o]);if(u!==-1){var l;br(l=this.body.nodeIndices).call(l,u,1)}}this.temporaryIds={nodes:[],edges:[]}}},{key:"_controlNodeTouch",value:function(e){this.selectionHandler.unselectAll(),this.lastTouch=this.body.functions.getPointer(e.center),this.lastTouch.translation=Ae({},this.body.view.translation)}},{key:"_controlNodeDragStart",value:function(){var e=this.lastTouch,t=this.selectionHandler._pointerToPositionObject(e),i=this.body.nodes[this.temporaryIds.nodes[0]],a=this.body.nodes[this.temporaryIds.nodes[1]],o=this.body.edges[this.edgeBeingEditedId];this.selectedControlNode=void 0;var s=i.isOverlappingWith(t),u=a.isOverlappingWith(t);s===!0?(this.selectedControlNode=i,o.edgeType.from=i):u===!0&&(this.selectedControlNode=a,o.edgeType.to=a),this.selectedControlNode!==void 0&&this.selectionHandler.selectObject(this.selectedControlNode),this.body.emitter.emit("_redraw")}},{key:"_controlNodeDrag",value:function(e){this.body.emitter.emit("disablePhysics");var t=this.body.functions.getPointer(e.center),i=this.canvas.DOMtoCanvas(t);this.selectedControlNode!==void 0?(this.selectedControlNode.x=i.x,this.selectedControlNode.y=i.y):this.interactionHandler.onDrag(e),this.body.emitter.emit("_redraw")}},{key:"_controlNodeDragEnd",value:function(e){var t=this.body.functions.getPointer(e.center),i=this.selectionHandler._pointerToPositionObject(t),a=this.body.edges[this.edgeBeingEditedId];if(this.selectedControlNode!==void 0){this.selectionHandler.unselectAll();for(var o=this.selectionHandler._getAllNodesOverlappingWith(i),s=void 0,u=o.length-1;u>=0;u--)if(o[u]!==this.selectedControlNode.id){s=this.body.nodes[o[u]];break}if(s!==void 0&&this.selectedControlNode!==void 0)if(s.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var l=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===l.id?this._performEditEdge(s.id,a.to.id):this._performEditEdge(a.from.id,s.id)}else a.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}}},{key:"_handleConnect",value:function(e){if(new Date().valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(e.center),this.lastTouch.translation=Ae({},this.body.view.translation),this.interactionHandler.drag.pointer=this.lastTouch,this.interactionHandler.drag.translation=this.lastTouch.translation;var 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{var a=this._getNewTargetNode(i.x,i.y);this.body.nodes[a.id]=a,this.body.nodeIndices.push(a.id);var o=this.body.functions.createEdge({id:"connectionEdge"+Pa(),from:i.id,to:a.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[o.id]=o,this.body.edgeIndices.push(o.id),this.temporaryIds.nodes.push(a.id),this.temporaryIds.edges.push(o.id)}this.touchTime=new Date().valueOf()}}},{key:"_dragControlNode",value:function(e){var t=this.body.functions.getPointer(e.center),i=this.selectionHandler._pointerToPositionObject(t),a=void 0;this.temporaryIds.edges[0]!==void 0&&(a=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var o=this.selectionHandler._getAllNodesOverlappingWith(i),s=void 0,u=o.length-1;u>=0;u--){var l;if(Z(l=this.temporaryIds.nodes).call(l,o[u])===-1){s=this.body.nodes[o[u]];break}}if(e.controlEdge={from:a,to:s?s.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragging",e,t),this.temporaryIds.nodes[0]!==void 0){var h=this.body.nodes[this.temporaryIds.nodes[0]];h.x=this.canvas._XconvertDOMtoCanvas(t.x),h.y=this.canvas._YconvertDOMtoCanvas(t.y),this.body.emitter.emit("_redraw")}else this.interactionHandler.onDrag(e)}},{key:"_finishConnect",value:function(e){var t=this.body.functions.getPointer(e.center),i=this.selectionHandler._pointerToPositionObject(t),a=void 0;this.temporaryIds.edges[0]!==void 0&&(a=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var o=this.selectionHandler._getAllNodesOverlappingWith(i),s=void 0,u=o.length-1;u>=0;u--){var l;if(Z(l=this.temporaryIds.nodes).call(l,o[u])===-1){s=this.body.nodes[o[u]];break}}this._cleanupTemporaryNodesAndEdges(),s!==void 0&&(s.isCluster===!0?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):this.body.nodes[a]!==void 0&&this.body.nodes[s.id]!==void 0&&this._performAddEdge(a,s.id)),e.controlEdge={from:a,to:s?s.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragEnd",e,t),this.body.emitter.emit("_redraw")}},{key:"_dragStartEdge",value:function(e){var t=this.lastTouch;this.selectionHandler.generateClickEvent("dragStart",e,t,void 0,!0)}},{key:"_performAddNode",value:function(e){var t=this,i={id:Pa(),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(i,function(a){a!=null&&t.inMode==="addNode"&&t.body.data.nodes.getDataSet().add(a),t.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(i),this.showManipulatorToolbar()}},{key:"_performAddEdge",value:function(e,t){var i=this,a={from:e,to:t};if(typeof this.options.addEdge=="function")if(this.options.addEdge.length===2)this.options.addEdge(a,function(o){o!=null&&i.inMode==="addEdge"&&(i.body.data.edges.getDataSet().add(o),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())});else throw new Error("The function for connect does not support two arguments (data,callback)");else this.body.data.edges.getDataSet().add(a),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(e,t){var i=this,a={id:this.edgeBeingEditedId,from:e,to:t,label:this.body.data.edges.get(this.edgeBeingEditedId).label},o=this.options.editEdge;if(se(o)==="object"&&(o=o.editWithoutDrag),typeof o=="function")if(o.length===2)o(a,function(s){s==null||i.inMode!=="editEdge"?(i.body.edges[a.id].updateEdgeType(),i.body.emitter.emit("_redraw"),i.showManipulatorToolbar()):(i.body.data.edges.getDataSet().update(s),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())});else throw new Error("The function for edit does not support two arguments (data, callback)");else this.body.data.edges.getDataSet().update(a),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),r}(),I="string",S="boolean",b="number",ma="array",B="object",NO="dom",Pfe="any",Cd=["arrow","bar","box","circle","crow","curve","diamond","image","inv_curve","inv_triangle","triangle","vee"],xd={borderWidth:{number:b},borderWidthSelected:{number:b,undefined:"undefined"},brokenImage:{string:I,undefined:"undefined"},chosen:{label:{boolean:S,function:"function"},node:{boolean:S,function:"function"},__type__:{object:B,boolean:S}},color:{border:{string:I},background:{string:I},highlight:{border:{string:I},background:{string:I},__type__:{object:B,string:I}},hover:{border:{string:I},background:{string:I},__type__:{object:B,string:I}},__type__:{object:B,string:I}},opacity:{number:b,undefined:"undefined"},fixed:{x:{boolean:S},y:{boolean:S},__type__:{object:B,boolean:S}},font:{align:{string:I},color:{string:I},size:{number:b},face:{string:I},background:{string:I},strokeWidth:{number:b},strokeColor:{string:I},vadjust:{number:b},multi:{boolean:S,string:I},bold:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},boldital:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},ital:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},mono:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},__type__:{object:B,string:I}},group:{string:I,number:b,undefined:"undefined"},heightConstraint:{minimum:{number:b},valign:{string:I},__type__:{object:B,boolean:S,number:b}},hidden:{boolean:S},icon:{face:{string:I},code:{string:I},size:{number:b},color:{string:I},weight:{string:I,number:b},__type__:{object:B}},id:{string:I,number:b},image:{selected:{string:I,undefined:"undefined"},unselected:{string:I,undefined:"undefined"},__type__:{object:B,string:I}},imagePadding:{top:{number:b},right:{number:b},bottom:{number:b},left:{number:b},__type__:{object:B,number:b}},label:{string:I,undefined:"undefined"},labelHighlightBold:{boolean:S},level:{number:b,undefined:"undefined"},margin:{top:{number:b},right:{number:b},bottom:{number:b},left:{number:b},__type__:{object:B,number:b}},mass:{number:b},physics:{boolean:S},scaling:{min:{number:b},max:{number:b},label:{enabled:{boolean:S},min:{number:b},max:{number:b},maxVisible:{number:b},drawThreshold:{number:b},__type__:{object:B,boolean:S}},customScalingFunction:{function:"function"},__type__:{object:B}},shadow:{enabled:{boolean:S},color:{string:I},size:{number:b},x:{number:b},y:{number:b},__type__:{object:B,boolean:S}},shape:{string:["custom","ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon","hexagon"]},ctxRenderer:{function:"function"},shapeProperties:{borderDashes:{boolean:S,array:ma},borderRadius:{number:b},interpolation:{boolean:S},useImageSize:{boolean:S},useBorderWithImage:{boolean:S},coordinateOrigin:{string:["center","top-left"]},__type__:{object:B}},size:{number:b},title:{string:I,dom:NO,undefined:"undefined"},value:{number:b,undefined:"undefined"},widthConstraint:{minimum:{number:b},maximum:{number:b},__type__:{object:B,boolean:S,number:b}},x:{number:b},y:{number:b},__type__:{object:B}},Ife={configure:{enabled:{boolean:S},filter:{boolean:S,string:I,array:ma,function:"function"},container:{dom:NO},showButton:{boolean:S},__type__:{object:B,boolean:S,string:I,array:ma,function:"function"}},edges:{arrows:{to:{enabled:{boolean:S},scaleFactor:{number:b},type:{string:Cd},imageHeight:{number:b},imageWidth:{number:b},src:{string:I},__type__:{object:B,boolean:S}},middle:{enabled:{boolean:S},scaleFactor:{number:b},type:{string:Cd},imageWidth:{number:b},imageHeight:{number:b},src:{string:I},__type__:{object:B,boolean:S}},from:{enabled:{boolean:S},scaleFactor:{number:b},type:{string:Cd},imageWidth:{number:b},imageHeight:{number:b},src:{string:I},__type__:{object:B,boolean:S}},__type__:{string:["from","to","middle"],object:B}},endPointOffset:{from:{number:b},to:{number:b},__type__:{object:B,number:b}},arrowStrikethrough:{boolean:S},background:{enabled:{boolean:S},color:{string:I},size:{number:b},dashes:{boolean:S,array:ma},__type__:{object:B,boolean:S}},chosen:{label:{boolean:S,function:"function"},edge:{boolean:S,function:"function"},__type__:{object:B,boolean:S}},color:{color:{string:I},highlight:{string:I},hover:{string:I},inherit:{string:["from","to","both"],boolean:S},opacity:{number:b},__type__:{object:B,string:I}},dashes:{boolean:S,array:ma},font:{color:{string:I},size:{number:b},face:{string:I},background:{string:I},strokeWidth:{number:b},strokeColor:{string:I},align:{string:["horizontal","top","middle","bottom"]},vadjust:{number:b},multi:{boolean:S,string:I},bold:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},boldital:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},ital:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},mono:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},__type__:{object:B,string:I}},hidden:{boolean:S},hoverWidth:{function:"function",number:b},label:{string:I,undefined:"undefined"},labelHighlightBold:{boolean:S},length:{number:b,undefined:"undefined"},physics:{boolean:S},scaling:{min:{number:b},max:{number:b},label:{enabled:{boolean:S},min:{number:b},max:{number:b},maxVisible:{number:b},drawThreshold:{number:b},__type__:{object:B,boolean:S}},customScalingFunction:{function:"function"},__type__:{object:B}},selectionWidth:{function:"function",number:b},selfReferenceSize:{number:b},selfReference:{size:{number:b},angle:{number:b},renderBehindTheNode:{boolean:S},__type__:{object:B}},shadow:{enabled:{boolean:S},color:{string:I},size:{number:b},x:{number:b},y:{number:b},__type__:{object:B,boolean:S}},smooth:{enabled:{boolean:S},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"]},roundness:{number:b},forceDirection:{string:["horizontal","vertical","none"],boolean:S},__type__:{object:B,boolean:S}},title:{string:I,undefined:"undefined"},width:{number:b},widthConstraint:{maximum:{number:b},__type__:{object:B,boolean:S,number:b}},value:{number:b,undefined:"undefined"},__type__:{object:B}},groups:{useDefaultGroups:{boolean:S},__any__:xd,__type__:{object:B}},interaction:{dragNodes:{boolean:S},dragView:{boolean:S},hideEdgesOnDrag:{boolean:S},hideEdgesOnZoom:{boolean:S},hideNodesOnDrag:{boolean:S},hover:{boolean:S},keyboard:{enabled:{boolean:S},speed:{x:{number:b},y:{number:b},zoom:{number:b},__type__:{object:B}},bindToWindow:{boolean:S},autoFocus:{boolean:S},__type__:{object:B,boolean:S}},multiselect:{boolean:S},navigationButtons:{boolean:S},selectable:{boolean:S},selectConnectedEdges:{boolean:S},hoverConnectedEdges:{boolean:S},tooltipDelay:{number:b},zoomView:{boolean:S},zoomSpeed:{number:b},__type__:{object:B}},layout:{randomSeed:{undefined:"undefined",number:b,string:I},improvedLayout:{boolean:S},clusterThreshold:{number:b},hierarchical:{enabled:{boolean:S},levelSeparation:{number:b},nodeSpacing:{number:b},treeSpacing:{number:b},blockShifting:{boolean:S},edgeMinimization:{boolean:S},parentCentralization:{boolean:S},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},shakeTowards:{string:["leaves","roots"]},__type__:{object:B,boolean:S}},__type__:{object:B}},manipulation:{enabled:{boolean:S},initiallyActive:{boolean:S},addNode:{boolean:S,function:"function"},addEdge:{boolean:S,function:"function"},editNode:{function:"function"},editEdge:{editWithoutDrag:{function:"function"},__type__:{object:B,boolean:S,function:"function"}},deleteNode:{boolean:S,function:"function"},deleteEdge:{boolean:S,function:"function"},controlNodeStyle:xd,__type__:{object:B,boolean:S}},nodes:xd,physics:{enabled:{boolean:S},barnesHut:{theta:{number:b},gravitationalConstant:{number:b},centralGravity:{number:b},springLength:{number:b},springConstant:{number:b},damping:{number:b},avoidOverlap:{number:b},__type__:{object:B}},forceAtlas2Based:{theta:{number:b},gravitationalConstant:{number:b},centralGravity:{number:b},springLength:{number:b},springConstant:{number:b},damping:{number:b},avoidOverlap:{number:b},__type__:{object:B}},repulsion:{centralGravity:{number:b},springLength:{number:b},springConstant:{number:b},nodeDistance:{number:b},damping:{number:b},__type__:{object:B}},hierarchicalRepulsion:{centralGravity:{number:b},springLength:{number:b},springConstant:{number:b},nodeDistance:{number:b},damping:{number:b},avoidOverlap:{number:b},__type__:{object:B}},maxVelocity:{number:b},minVelocity:{number:b},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{boolean:S},iterations:{number:b},updateInterval:{number:b},onlyDynamicEdges:{boolean:S},fit:{boolean:S},__type__:{object:B,boolean:S}},timestep:{number:b},adaptiveTimestep:{boolean:S},wind:{x:{number:b},y:{number:b},__type__:{object:B}},__type__:{object:B,boolean:S}},autoResize:{boolean:S},clickToUse:{boolean:S},locale:{string:I},locales:{__any__:{any:Pfe},__type__:{object:B}},height:{string:I},width:{string:I},__type__:{object:B}},FO={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]}}},kfe=function(n,e,t){var i;return!!(Hr(n).call(n,"physics")&&Hr(i=FO.physics.solver).call(i,e)&&t.physics.solver!==e&&e!=="wind")},Cfe=function(){function r(){C(this,r)}return x(r,[{key:"getDistances",value:function(e,t,i){for(var a={},o=e.edges,s=0;s<t.length;s++){var u=t[s],l={};a[u]=l;for(var h=0;h<t.length;h++)l[t[h]]=s==h?0:1e9}for(var d=0;d<i.length;d++){var c=o[i[d]];c.connected===!0&&a[c.fromId]!==void 0&&a[c.toId]!==void 0&&(a[c.fromId][c.toId]=1,a[c.toId][c.fromId]=1)}for(var f=t.length,v=0;v<f;v++)for(var p=t[v],g=a[p],y=0;y<f-1;y++)for(var m=t[y],w=a[m],$=y+1;$<f;$++){var E=t[$],k=a[E],D=Math.min(w[E],w[p]+g[E]);w[E]=D,k[m]=D}return a}}]),r}(),xfe=function(){function r(n,e,t){C(this,r),this.body=n,this.springLength=e,this.springConstant=t,this.distanceSolver=new Cfe}return x(r,[{key:"setOptions",value:function(e){e&&(e.springLength&&(this.springLength=e.springLength),e.springConstant&&(this.springConstant=e.springConstant))}},{key:"solve",value:function(e,t){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=this.distanceSolver.getDistances(this.body,e,t);this._createL_matrix(a),this._createK_matrix(a),this._createE_matrix();for(var o=.01,s=1,u=0,l=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3)),h=5,d=1e9,c=0,f=0,v=0,p=0,g=0;d>o&&u<l;){u+=1;var y=this._getHighestEnergyNode(i),m=be(y,4);for(c=m[0],d=m[1],f=m[2],v=m[3],p=d,g=0;p>s&&g<h;){g+=1,this._moveNode(c,f,v);var w=this._getEnergy(c),$=be(w,3);p=$[0],f=$[1],v=$[2]}}}},{key:"_getHighestEnergyNode",value:function(e){for(var t=this.body.nodeIndices,i=this.body.nodes,a=0,o=t[0],s=0,u=0,l=0;l<t.length;l++){var h=t[l];if(i[h].predefinedPosition!==!0||i[h].isCluster===!0&&e===!0||i[h].options.fixed.x!==!0||i[h].options.fixed.y!==!0){var d=this._getEnergy(h),c=be(d,3),f=c[0],v=c[1],p=c[2];a<f&&(a=f,o=h,s=v,u=p)}}return[o,a,s,u]}},{key:"_getEnergy",value:function(e){var t=be(this.E_sums[e],2),i=t[0],a=t[1],o=Math.sqrt(Math.pow(i,2)+Math.pow(a,2));return[o,i,a]}},{key:"_moveNode",value:function(e,t,i){for(var a=this.body.nodeIndices,o=this.body.nodes,s=0,u=0,l=0,h=o[e].x,d=o[e].y,c=this.K_matrix[e],f=this.L_matrix[e],v=0;v<a.length;v++){var p=a[v];if(p!==e){var g=o[p].x,y=o[p].y,m=c[p],w=f[p],$=1/Math.pow(Math.pow(h-g,2)+Math.pow(d-y,2),1.5);s+=m*(1-w*Math.pow(d-y,2)*$),u+=m*(w*(h-g)*(d-y)*$),l+=m*(1-w*Math.pow(h-g,2)*$)}}var E=s,k=u,D=t,j=l,R=i,M=(D/E+R/k)/(k/E-j/k),W=-(k*M+D)/E;o[e].x+=W,o[e].y+=M,this._updateE_matrix(e)}},{key:"_createL_matrix",value:function(e){var t=this.body.nodeIndices,i=this.springLength;this.L_matrix=[];for(var a=0;a<t.length;a++){this.L_matrix[t[a]]={};for(var o=0;o<t.length;o++)this.L_matrix[t[a]][t[o]]=i*e[t[a]][t[o]]}}},{key:"_createK_matrix",value:function(e){var t=this.body.nodeIndices,i=this.springConstant;this.K_matrix=[];for(var a=0;a<t.length;a++){this.K_matrix[t[a]]={};for(var o=0;o<t.length;o++)this.K_matrix[t[a]][t[o]]=i*Math.pow(e[t[a]][t[o]],-2)}}},{key:"_createE_matrix",value:function(){var e=this.body.nodeIndices,t=this.body.nodes;this.E_matrix={},this.E_sums={};for(var i=0;i<e.length;i++)this.E_matrix[e[i]]=[];for(var a=0;a<e.length;a++){for(var o=e[a],s=t[o].x,u=t[o].y,l=0,h=0,d=a;d<e.length;d++){var c=e[d];if(c!==o){var f=t[c].x,v=t[c].y,p=1/Math.sqrt(Math.pow(s-f,2)+Math.pow(u-v,2));this.E_matrix[o][d]=[this.K_matrix[o][c]*(s-f-this.L_matrix[o][c]*(s-f)*p),this.K_matrix[o][c]*(u-v-this.L_matrix[o][c]*(u-v)*p)],this.E_matrix[c][a]=this.E_matrix[o][d],l+=this.E_matrix[o][d][0],h+=this.E_matrix[o][d][1]}}this.E_sums[o]=[l,h]}}},{key:"_updateE_matrix",value:function(e){for(var t=this.body.nodeIndices,i=this.body.nodes,a=this.E_matrix[e],o=this.K_matrix[e],s=this.L_matrix[e],u=i[e].x,l=i[e].y,h=0,d=0,c=0;c<t.length;c++){var f=t[c];if(f!==e){var v=a[c],p=v[0],g=v[1],y=i[f].x,m=i[f].y,w=1/Math.sqrt(Math.pow(u-y,2)+Math.pow(l-m,2)),$=o[f]*(u-y-s[f]*(u-y)*w),E=o[f]*(l-m-s[f]*(l-m)*w);a[c]=[$,E],h+=$,d+=E;var k=this.E_sums[f];k[0]+=$-p,k[1]+=E-g}}this.E_sums[e]=[h,d]}}]),r}();function F(r,n,e){var t,i,a,o,s=this;if(!(this instanceof F))throw new SyntaxError("Constructor must be called with the new operator");this.options={},this.defaultOptions={locale:"en",locales:Pne,clickToUse:!1},Ae(this.options,this.defaultOptions),this.body={container:r,nodes:{},nodeIndices:[],edges:{},edgeIndices:[],emitter:{on:O(t=this.on).call(t,this),off:O(i=this.off).call(i,this),emit:O(a=this.emit).call(a,this),once:O(o=this.once).call(o,this)},eventListeners:{onTap:function(){},onTouch:function(){},onDoubleTap:function(){},onHold:function(){},onDragStart:function(){},onDrag:function(){},onDragEnd:function(){},onMouseWheel:function(){},onPinch:function(){},onMouseMove:function(){},onRelease:function(){},onContext:function(){}},data:{nodes:null,edges:null},functions:{createNode:function(){},createEdge:function(){},getPointer:function(){}},modules:{},view:{scale:1,translation:{x:0,y:0}},selectionBox:{show:!1,position:{start:{x:0,y:0},end:{x:0,y:0}}}},this.bindEventListeners(),this.images=new Cne(function(){return s.body.emitter.emit("_requestRedraw")}),this.groups=new Kae,this.canvas=new hde(this.body),this.selectionHandler=new ece(this.body,this.canvas),this.interactionHandler=new gde(this.body,this.canvas,this.selectionHandler),this.view=new cde(this.body,this.canvas),this.renderer=new ade(this.body,this.canvas),this.physics=new Yhe(this.body),this.layoutEngine=new Efe(this.body),this.clustering=new ide(this.body),this.manipulation=new Tfe(this.body,this.canvas,this.selectionHandler,this.interactionHandler),this.nodesHandler=new Ale(this.body,this.images,this.groups,this.layoutEngine),this.edgesHandler=new Lhe(this.body,this.images,this.groups),this.body.modules.kamadaKawai=new xfe(this.body,150,.05),this.body.modules.clustering=this.clustering,this.canvas._create(),this.setOptions(e),this.setData(n)}M_(F.prototype);F.prototype.setOptions=function(r){var n=this;if(r===null&&(r=void 0),r!==void 0){var e=nne.validate(r,Ife);e===!0&&console.error("%cErrors have been found in the supplied options object.",LS);var t=["locale","locales","clickToUse"];if(sa(t,this.options,r),r.locale!==void 0&&(r.locale=Ine(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 rne(this,this.body.container,FO,this.canvas.pixelRatio,kfe)),this.configurator.setOptions(r.configure)),this.configurator&&this.configurator.options.enabled===!0){var i={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};he(i.nodes,this.nodesHandler.options),he(i.edges,this.edgesHandler.options),he(i.layout,this.layoutEngine.options),he(i.interaction,this.selectionHandler.options),he(i.interaction,this.renderer.options),he(i.interaction,this.interactionHandler.options),he(i.manipulation,this.manipulation.options),he(i.physics,this.physics.options),he(i.global,this.canvas.options),he(i.global,this.options),this.configurator.setModuleOptions(i)}r.clickToUse!==void 0?r.clickToUse===!0?this.activator===void 0&&(this.activator=new tne(this.canvas.frame),this.activator.on("change",function(){n.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")}};F.prototype._updateVisibleIndices=function(){var r=this.body.nodes,n=this.body.edges;this.body.nodeIndices=[],this.body.edgeIndices=[];for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&!this.clustering._isClusteredNode(e)&&r[e].options.hidden===!1&&this.body.nodeIndices.push(r[e].id);for(var t in n)if(Object.prototype.hasOwnProperty.call(n,t)){var i=n[t],a=r[i.fromId],o=r[i.toId],s=a!==void 0&&o!==void 0,u=!this.clustering._isClusteredEdge(t)&&i.options.hidden===!1&&s&&a.options.hidden===!1&&o.options.hidden===!1;u&&this.body.edgeIndices.push(i.id)}};F.prototype.bindEventListeners=function(){var r=this;this.body.emitter.on("_dataChanged",function(){r.edgesHandler._updateState(),r.body.emitter.emit("_dataUpdated")}),this.body.emitter.on("_dataUpdated",function(){r.clustering._updateState(),r._updateVisibleIndices(),r._updateValueRange(r.body.nodes),r._updateValueRange(r.body.edges),r.body.emitter.emit("startSimulation"),r.body.emitter.emit("_requestRedraw")})};F.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);");var n=vne(r.dot);this.setData(n);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);");var e=pne(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")};F.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(var r in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,r)&&delete this.body.nodes[r];for(var n in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,n)&&delete this.body.edges[n];Rr(this.body.container)};F.prototype._updateValueRange=function(r){var n,e=void 0,t=void 0,i=0;for(n in r)if(Object.prototype.hasOwnProperty.call(r,n)){var a=r[n].getValue();a!==void 0&&(e=e===void 0?a:Math.min(a,e),t=t===void 0?a:Math.max(a,t),i+=a)}if(e!==void 0&&t!==void 0)for(n in r)Object.prototype.hasOwnProperty.call(r,n)&&r[n].setValueRange(e,t,i)};F.prototype.isActive=function(){return!this.activator||this.activator.active};F.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)};F.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)};F.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)};F.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)};F.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)};F.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)};F.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)};F.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)};F.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)};F.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)};F.prototype.updateClusteredNode=function(){return this.clustering.updateClusteredNode.apply(this.clustering,arguments)};F.prototype.getClusteredEdges=function(){return this.clustering.getClusteredEdges.apply(this.clustering,arguments)};F.prototype.getBaseEdge=function(){return this.clustering.getBaseEdge.apply(this.clustering,arguments)};F.prototype.getBaseEdges=function(){return this.clustering.getBaseEdges.apply(this.clustering,arguments)};F.prototype.updateEdge=function(){return this.clustering.updateEdge.apply(this.clustering,arguments)};F.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)};F.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)};F.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)};F.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)};F.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)};F.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)};F.prototype.editNodeMode=function(){return console.warn("Deprecated: Please use editNode instead of editNodeMode."),this.manipulation.editNode.apply(this.manipulation,arguments)};F.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)};F.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)};F.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)};F.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)};F.prototype.getPosition=function(){return this.nodesHandler.getPosition.apply(this.nodesHandler,arguments)};F.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)};F.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)};F.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)};F.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)};F.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)};F.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)};F.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)};F.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)};F.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)};F.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)};F.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodeIds.apply(this.selectionHandler,arguments)};F.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdgeIds.apply(this.selectionHandler,arguments)};F.prototype.getNodeAt=function(){var r=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);return r!==void 0&&r.id!==void 0?r.id:r};F.prototype.getEdgeAt=function(){var r=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);return r!==void 0&&r.id!==void 0?r.id:r};F.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)};F.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)};F.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments),this.selectionHandler.commitWithoutEmitting.apply(this.selectionHandler),this.redraw()};F.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)};F.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)};F.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)};F.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)};F.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)};F.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)};F.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)};F.prototype.getOptionsFromConfigurator=function(){var r={};return this.configurator&&(r=this.configurator.getOptions.apply(this.configurator)),r};export{F as N};
98
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,o=!1,s;return{s:function(){e=e.call(r)},n:function(){var l=e.next();return a=l.done,l},e:function(l){o=!0,s=l},f:function(){try{!a&&e.return!=null&&e.return()}finally{if(o)throw s}}}}function Ofe(r,n){var e;if(r){if(typeof r=="string")return A$(r,n);var t=Ye(e=Object.prototype.toString.call(r)).call(e,8,-1);if(t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set")return zi(r);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return A$(r,n)}}function A$(r,n){(n==null||n>r.length)&&(n=r.length);for(var e=0,t=new Array(n);e<n;e++)t[e]=r[e];return t}var Tfe=function(){function r(n,e,t,i){var a=this,o,s;C(this,r),this.body=n,this.canvas=e,this.selectionHandler=t,this.interactionHandler=i,this.editMode=!1,this.manipulationDiv=void 0,this.editModeDiv=void 0,this.closeDiv=void 0,this._domEventListenerCleanupQueue=[],this.temporaryUIFunctions={},this.temporaryEventFunctions=[],this.touchTime=0,this.temporaryIds={nodes:[],edges:[]},this.guiEnabled=!1,this.inMode=!1,this.selectedControlNode=void 0,this.options={},this.defaultOptions={enabled:!1,initiallyActive:!1,addNode:!0,addEdge:!0,editNode:void 0,editEdge:!0,deleteNode:!0,deleteEdge:!0,controlNodeStyle:{shape:"dot",size:6,color:{background:"#ff0000",border:"#3c3c3c",highlight:{background:"#07f968",border:"#3c3c3c"}},borderWidth:2,borderWidthSelected:2}},Ae(this.options,this.defaultOptions),this.body.emitter.on("destroy",function(){a._clean()}),this.body.emitter.on("_dataChanged",O(o=this._restore).call(o,this)),this.body.emitter.on("_resetData",O(s=this._restore).call(s,this))}return x(r,[{key:"_restore",value:function(){this.inMode!==!1&&(this.options.initiallyActive===!0?this.enableEditMode():this.disableEditMode())}},{key:"setOptions",value:function(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,he(this.options,e)),this.options.initiallyActive===!0&&(this.editMode=!0),this._setup())}},{key:"toggleEditMode",value:function(){this.editMode===!0?this.disableEditMode():this.enableEditMode()}},{key:"enableEditMode",value:function(){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())}},{key:"disableEditMode",value:function(){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())}},{key:"showManipulatorToolbar",value:function(){if(this._clean(),this.manipulationDOM={},this.guiEnabled===!0){var e,t;this.editMode=!0,this.manipulationDiv.style.display="block",this.closeDiv.style.display="block";var i=this.selectionHandler.getSelectedNodeCount(),a=this.selectionHandler.getSelectedEdgeCount(),o=i+a,s=this.options.locales[this.options.locale],u=!1;this.options.addNode!==!1&&(this._createAddNodeButton(s),u=!0),this.options.addEdge!==!1&&(u===!0?this._createSeperator(1):u=!0,this._createAddEdgeButton(s)),i===1&&typeof this.options.editNode=="function"?(u===!0?this._createSeperator(2):u=!0,this._createEditNodeButton(s)):a===1&&i===0&&this.options.editEdge!==!1&&(u===!0?this._createSeperator(3):u=!0,this._createEditEdgeButton(s)),o!==0&&(i>0&&this.options.deleteNode!==!1?(u===!0&&this._createSeperator(4),this._createDeleteButton(s)):i===0&&this.options.deleteEdge!==!1&&(u===!0&&this._createSeperator(4),this._createDeleteButton(s))),this._bindElementEvents(this.closeDiv,O(e=this.toggleEditMode).call(e,this)),this._temporaryBindEvent("select",O(t=this.showManipulatorToolbar).call(t,this))}this.body.emitter.emit("_redraw")}},{key:"addNodeMode",value:function(){var e;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addNode",this.guiEnabled===!0){var t,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,O(t=this.toggleEditMode).call(t,this))}this._temporaryBindEvent("click",O(e=this._performAddNode).call(e,this))}},{key:"editNode",value:function(){var e=this;this.editMode!==!0&&this.enableEditMode(),this._clean();var t=this.selectionHandler.getSelectedNodes()[0];if(t!==void 0)if(this.inMode="editNode",typeof this.options.editNode=="function")if(t.isCluster!==!0){var i=he({},t.options,!1);if(i.x=t.x,i.y=t.y,this.options.editNode.length===2)this.options.editNode(i,function(a){a!=null&&e.inMode==="editNode"&&e.body.data.nodes.getDataSet().update(a),e.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()}},{key:"addEdgeMode",value:function(){var e,t,i,a,o;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addEdge",this.guiEnabled===!0){var s,u=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(u),this._createSeperator(),this._createDescription(u.edgeDescription||this.options.locales.en.edgeDescription),this._bindElementEvents(this.closeDiv,O(s=this.toggleEditMode).call(s,this))}this._temporaryBindUI("onTouch",O(e=this._handleConnect).call(e,this)),this._temporaryBindUI("onDragEnd",O(t=this._finishConnect).call(t,this)),this._temporaryBindUI("onDrag",O(i=this._dragControlNode).call(i,this)),this._temporaryBindUI("onRelease",O(a=this._finishConnect).call(a,this)),this._temporaryBindUI("onDragStart",O(o=this._dragStartEdge).call(o,this)),this._temporaryBindUI("onHold",function(){})}},{key:"editEdgeMode",value:function(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="editEdge",se(this.options.editEdge)==="object"&&typeof this.options.editEdge.editWithoutDrag=="function"&&(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],this.edgeBeingEditedId!==void 0)){var e=this.body.edges[this.edgeBeingEditedId];this._performEditEdge(e.from.id,e.to.id);return}if(this.guiEnabled===!0){var t,i=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(i),this._createSeperator(),this._createDescription(i.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindElementEvents(this.closeDiv,O(t=this.toggleEditMode).call(t,this))}if(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],this.edgeBeingEditedId!==void 0){var a,o,s,u,l=this.body.edges[this.edgeBeingEditedId],h=this._getNewTargetNode(l.from.x,l.from.y),d=this._getNewTargetNode(l.to.x,l.to.y);this.temporaryIds.nodes.push(h.id),this.temporaryIds.nodes.push(d.id),this.body.nodes[h.id]=h,this.body.nodeIndices.push(h.id),this.body.nodes[d.id]=d,this.body.nodeIndices.push(d.id),this._temporaryBindUI("onTouch",O(a=this._controlNodeTouch).call(a,this)),this._temporaryBindUI("onTap",function(){}),this._temporaryBindUI("onHold",function(){}),this._temporaryBindUI("onDragStart",O(o=this._controlNodeDragStart).call(o,this)),this._temporaryBindUI("onDrag",O(s=this._controlNodeDrag).call(s,this)),this._temporaryBindUI("onDragEnd",O(u=this._controlNodeDragEnd).call(u,this)),this._temporaryBindUI("onMouseMove",function(){}),this._temporaryBindEvent("beforeDrawing",function(c){var f=l.edgeType.findBorderPositions(c);h.selected===!1&&(h.x=f.from.x,h.y=f.from.y),d.selected===!1&&(d.x=f.to.x,d.y=f.to.y)}),this.body.emitter.emit("_redraw")}else this.showManipulatorToolbar()}},{key:"deleteSelected",value:function(){var e=this;this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="delete";var t=this.selectionHandler.getSelectedNodeIds(),i=this.selectionHandler.getSelectedEdgeIds(),a=void 0;if(t.length>0){for(var o=0;o<t.length;o++)if(this.body.nodes[t[o]].isCluster===!0){alert(this.options.locales[this.options.locale].deleteClusterError||this.options.locales.en.deleteClusterError);return}typeof this.options.deleteNode=="function"&&(a=this.options.deleteNode)}else i.length>0&&typeof this.options.deleteEdge=="function"&&(a=this.options.deleteEdge);if(typeof a=="function"){var s={nodes:t,edges:i};if(a.length===2)a(s,function(u){u!=null&&e.inMode==="delete"?(e.body.data.edges.getDataSet().remove(u.edges),e.body.data.nodes.getDataSet().remove(u.nodes),e.body.emitter.emit("startSimulation"),e.showManipulatorToolbar()):(e.body.emitter.emit("startSimulation"),e.showManipulatorToolbar())});else throw new Error("The function for delete does not support two arguments (data, callback)")}else this.body.data.edges.getDataSet().remove(i),this.body.data.nodes.getDataSet().remove(t),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}},{key:"_setup",value:function(){this.options.enabled===!0?(this.guiEnabled=!0,this._createWrappers(),this.editMode===!1?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}},{key:"_createWrappers",value:function(){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)}}},{key:"_getNewTargetNode",value:function(e,t){var i=he({},this.options.controlNodeStyle);i.id="targetNode"+Pa(),i.hidden=!1,i.physics=!1,i.x=e,i.y=t;var a=this.body.functions.createNode(i);return a.shape.boundingBox={left:e,right:e,top:t,bottom:t},a}},{key:"_createEditButton",value:function(){var e;this._clean(),this.manipulationDOM={},Rr(this.editModeDiv);var 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,O(e=this.toggleEditMode).call(e,this))}},{key:"_clean",value:function(){this.inMode=!1,this.guiEnabled===!0&&(Rr(this.editModeDiv),Rr(this.manipulationDiv),this._cleanupDOMEventListeners()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}},{key:"_cleanupDOMEventListeners",value:function(){var e,t=Sfe(br(e=this._domEventListenerCleanupQueue).call(e,0)),i;try{for(t.s();!(i=t.n()).done;){var a=i.value;a()}}catch(o){t.e(o)}finally{t.f()}}},{key:"_removeManipulationDOM",value:function(){this._clean(),Rr(this.manipulationDiv),Rr(this.editModeDiv),Rr(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}},{key:"_createSeperator",value:function(){var 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])}},{key:"_createAddNodeButton",value:function(e){var t,i=this._createButton("addNode","vis-add",e.addNode||this.options.locales.en.addNode);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,O(t=this.addNodeMode).call(t,this))}},{key:"_createAddEdgeButton",value:function(e){var t,i=this._createButton("addEdge","vis-connect",e.addEdge||this.options.locales.en.addEdge);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,O(t=this.addEdgeMode).call(t,this))}},{key:"_createEditNodeButton",value:function(e){var t,i=this._createButton("editNode","vis-edit",e.editNode||this.options.locales.en.editNode);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,O(t=this.editNode).call(t,this))}},{key:"_createEditEdgeButton",value:function(e){var t,i=this._createButton("editEdge","vis-edit",e.editEdge||this.options.locales.en.editEdge);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,O(t=this.editEdgeMode).call(t,this))}},{key:"_createDeleteButton",value:function(e){var t,i;this.options.rtl?i="vis-delete-rtl":i="vis-delete";var a=this._createButton("delete",i,e.del||this.options.locales.en.del);this.manipulationDiv.appendChild(a),this._bindElementEvents(a,O(t=this.deleteSelected).call(t,this))}},{key:"_createBackButton",value:function(e){var t,i=this._createButton("back","vis-back",e.back||this.options.locales.en.back);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,O(t=this.showManipulatorToolbar).call(t,this))}},{key:"_createButton",value:function(e,t,i){var a=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=a,this.manipulationDOM[e+"Label"].innerText=i,this.manipulationDOM[e+"Div"].appendChild(this.manipulationDOM[e+"Label"]),this.manipulationDOM[e+"Div"]}},{key:"_createDescription",value:function(e){this.manipulationDOM.descriptionLabel=document.createElement("div"),this.manipulationDOM.descriptionLabel.className="vis-none",this.manipulationDOM.descriptionLabel.innerText=e,this.manipulationDiv.appendChild(this.manipulationDOM.descriptionLabel)}},{key:"_temporaryBindEvent",value:function(e,t){this.temporaryEventFunctions.push({event:e,boundFunction:t}),this.body.emitter.on(e,t)}},{key:"_temporaryBindUI",value:function(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: "+Ao(me(this.body.eventListeners)))}},{key:"_unbindTemporaryUIs",value:function(){for(var e in this.temporaryUIFunctions)Object.prototype.hasOwnProperty.call(this.temporaryUIFunctions,e)&&(this.body.eventListeners[e]=this.temporaryUIFunctions[e],delete this.temporaryUIFunctions[e]);this.temporaryUIFunctions={}}},{key:"_unbindTemporaryEvents",value:function(){for(var e=0;e<this.temporaryEventFunctions.length;e++){var t=this.temporaryEventFunctions[e].event,i=this.temporaryEventFunctions[e].boundFunction;this.body.emitter.off(t,i)}this.temporaryEventFunctions=[]}},{key:"_bindElementEvents",value:function(e,t){var i=new bn(e,{});pu(i,t),this._domEventListenerCleanupQueue.push(function(){i.destroy()});var a=function(s){var u=s.keyCode,l=s.key;(l==="Enter"||l===" "||u===13||u===32)&&t()};e.addEventListener("keyup",a,!1),this._domEventListenerCleanupQueue.push(function(){e.removeEventListener("keyup",a,!1)})}},{key:"_cleanupTemporaryNodesAndEdges",value:function(){for(var e=0;e<this.temporaryIds.edges.length;e++){var t;this.body.edges[this.temporaryIds.edges[e]].disconnect(),delete this.body.edges[this.temporaryIds.edges[e]];var i=Z(t=this.body.edgeIndices).call(t,this.temporaryIds.edges[e]);if(i!==-1){var a;br(a=this.body.edgeIndices).call(a,i,1)}}for(var o=0;o<this.temporaryIds.nodes.length;o++){var s;delete this.body.nodes[this.temporaryIds.nodes[o]];var u=Z(s=this.body.nodeIndices).call(s,this.temporaryIds.nodes[o]);if(u!==-1){var l;br(l=this.body.nodeIndices).call(l,u,1)}}this.temporaryIds={nodes:[],edges:[]}}},{key:"_controlNodeTouch",value:function(e){this.selectionHandler.unselectAll(),this.lastTouch=this.body.functions.getPointer(e.center),this.lastTouch.translation=Ae({},this.body.view.translation)}},{key:"_controlNodeDragStart",value:function(){var e=this.lastTouch,t=this.selectionHandler._pointerToPositionObject(e),i=this.body.nodes[this.temporaryIds.nodes[0]],a=this.body.nodes[this.temporaryIds.nodes[1]],o=this.body.edges[this.edgeBeingEditedId];this.selectedControlNode=void 0;var s=i.isOverlappingWith(t),u=a.isOverlappingWith(t);s===!0?(this.selectedControlNode=i,o.edgeType.from=i):u===!0&&(this.selectedControlNode=a,o.edgeType.to=a),this.selectedControlNode!==void 0&&this.selectionHandler.selectObject(this.selectedControlNode),this.body.emitter.emit("_redraw")}},{key:"_controlNodeDrag",value:function(e){this.body.emitter.emit("disablePhysics");var t=this.body.functions.getPointer(e.center),i=this.canvas.DOMtoCanvas(t);this.selectedControlNode!==void 0?(this.selectedControlNode.x=i.x,this.selectedControlNode.y=i.y):this.interactionHandler.onDrag(e),this.body.emitter.emit("_redraw")}},{key:"_controlNodeDragEnd",value:function(e){var t=this.body.functions.getPointer(e.center),i=this.selectionHandler._pointerToPositionObject(t),a=this.body.edges[this.edgeBeingEditedId];if(this.selectedControlNode!==void 0){this.selectionHandler.unselectAll();for(var o=this.selectionHandler._getAllNodesOverlappingWith(i),s=void 0,u=o.length-1;u>=0;u--)if(o[u]!==this.selectedControlNode.id){s=this.body.nodes[o[u]];break}if(s!==void 0&&this.selectedControlNode!==void 0)if(s.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var l=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===l.id?this._performEditEdge(s.id,a.to.id):this._performEditEdge(a.from.id,s.id)}else a.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}}},{key:"_handleConnect",value:function(e){if(new Date().valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(e.center),this.lastTouch.translation=Ae({},this.body.view.translation),this.interactionHandler.drag.pointer=this.lastTouch,this.interactionHandler.drag.translation=this.lastTouch.translation;var 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{var a=this._getNewTargetNode(i.x,i.y);this.body.nodes[a.id]=a,this.body.nodeIndices.push(a.id);var o=this.body.functions.createEdge({id:"connectionEdge"+Pa(),from:i.id,to:a.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[o.id]=o,this.body.edgeIndices.push(o.id),this.temporaryIds.nodes.push(a.id),this.temporaryIds.edges.push(o.id)}this.touchTime=new Date().valueOf()}}},{key:"_dragControlNode",value:function(e){var t=this.body.functions.getPointer(e.center),i=this.selectionHandler._pointerToPositionObject(t),a=void 0;this.temporaryIds.edges[0]!==void 0&&(a=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var o=this.selectionHandler._getAllNodesOverlappingWith(i),s=void 0,u=o.length-1;u>=0;u--){var l;if(Z(l=this.temporaryIds.nodes).call(l,o[u])===-1){s=this.body.nodes[o[u]];break}}if(e.controlEdge={from:a,to:s?s.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragging",e,t),this.temporaryIds.nodes[0]!==void 0){var h=this.body.nodes[this.temporaryIds.nodes[0]];h.x=this.canvas._XconvertDOMtoCanvas(t.x),h.y=this.canvas._YconvertDOMtoCanvas(t.y),this.body.emitter.emit("_redraw")}else this.interactionHandler.onDrag(e)}},{key:"_finishConnect",value:function(e){var t=this.body.functions.getPointer(e.center),i=this.selectionHandler._pointerToPositionObject(t),a=void 0;this.temporaryIds.edges[0]!==void 0&&(a=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var o=this.selectionHandler._getAllNodesOverlappingWith(i),s=void 0,u=o.length-1;u>=0;u--){var l;if(Z(l=this.temporaryIds.nodes).call(l,o[u])===-1){s=this.body.nodes[o[u]];break}}this._cleanupTemporaryNodesAndEdges(),s!==void 0&&(s.isCluster===!0?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):this.body.nodes[a]!==void 0&&this.body.nodes[s.id]!==void 0&&this._performAddEdge(a,s.id)),e.controlEdge={from:a,to:s?s.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragEnd",e,t),this.body.emitter.emit("_redraw")}},{key:"_dragStartEdge",value:function(e){var t=this.lastTouch;this.selectionHandler.generateClickEvent("dragStart",e,t,void 0,!0)}},{key:"_performAddNode",value:function(e){var t=this,i={id:Pa(),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(i,function(a){a!=null&&t.inMode==="addNode"&&t.body.data.nodes.getDataSet().add(a),t.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(i),this.showManipulatorToolbar()}},{key:"_performAddEdge",value:function(e,t){var i=this,a={from:e,to:t};if(typeof this.options.addEdge=="function")if(this.options.addEdge.length===2)this.options.addEdge(a,function(o){o!=null&&i.inMode==="addEdge"&&(i.body.data.edges.getDataSet().add(o),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())});else throw new Error("The function for connect does not support two arguments (data,callback)");else this.body.data.edges.getDataSet().add(a),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(e,t){var i=this,a={id:this.edgeBeingEditedId,from:e,to:t,label:this.body.data.edges.get(this.edgeBeingEditedId).label},o=this.options.editEdge;if(se(o)==="object"&&(o=o.editWithoutDrag),typeof o=="function")if(o.length===2)o(a,function(s){s==null||i.inMode!=="editEdge"?(i.body.edges[a.id].updateEdgeType(),i.body.emitter.emit("_redraw"),i.showManipulatorToolbar()):(i.body.data.edges.getDataSet().update(s),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())});else throw new Error("The function for edit does not support two arguments (data, callback)");else this.body.data.edges.getDataSet().update(a),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),r}(),I="string",S="boolean",b="number",ma="array",B="object",NO="dom",Pfe="any",Cd=["arrow","bar","box","circle","crow","curve","diamond","image","inv_curve","inv_triangle","triangle","vee"],xd={borderWidth:{number:b},borderWidthSelected:{number:b,undefined:"undefined"},brokenImage:{string:I,undefined:"undefined"},chosen:{label:{boolean:S,function:"function"},node:{boolean:S,function:"function"},__type__:{object:B,boolean:S}},color:{border:{string:I},background:{string:I},highlight:{border:{string:I},background:{string:I},__type__:{object:B,string:I}},hover:{border:{string:I},background:{string:I},__type__:{object:B,string:I}},__type__:{object:B,string:I}},opacity:{number:b,undefined:"undefined"},fixed:{x:{boolean:S},y:{boolean:S},__type__:{object:B,boolean:S}},font:{align:{string:I},color:{string:I},size:{number:b},face:{string:I},background:{string:I},strokeWidth:{number:b},strokeColor:{string:I},vadjust:{number:b},multi:{boolean:S,string:I},bold:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},boldital:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},ital:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},mono:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},__type__:{object:B,string:I}},group:{string:I,number:b,undefined:"undefined"},heightConstraint:{minimum:{number:b},valign:{string:I},__type__:{object:B,boolean:S,number:b}},hidden:{boolean:S},icon:{face:{string:I},code:{string:I},size:{number:b},color:{string:I},weight:{string:I,number:b},__type__:{object:B}},id:{string:I,number:b},image:{selected:{string:I,undefined:"undefined"},unselected:{string:I,undefined:"undefined"},__type__:{object:B,string:I}},imagePadding:{top:{number:b},right:{number:b},bottom:{number:b},left:{number:b},__type__:{object:B,number:b}},label:{string:I,undefined:"undefined"},labelHighlightBold:{boolean:S},level:{number:b,undefined:"undefined"},margin:{top:{number:b},right:{number:b},bottom:{number:b},left:{number:b},__type__:{object:B,number:b}},mass:{number:b},physics:{boolean:S},scaling:{min:{number:b},max:{number:b},label:{enabled:{boolean:S},min:{number:b},max:{number:b},maxVisible:{number:b},drawThreshold:{number:b},__type__:{object:B,boolean:S}},customScalingFunction:{function:"function"},__type__:{object:B}},shadow:{enabled:{boolean:S},color:{string:I},size:{number:b},x:{number:b},y:{number:b},__type__:{object:B,boolean:S}},shape:{string:["custom","ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon","hexagon"]},ctxRenderer:{function:"function"},shapeProperties:{borderDashes:{boolean:S,array:ma},borderRadius:{number:b},interpolation:{boolean:S},useImageSize:{boolean:S},useBorderWithImage:{boolean:S},coordinateOrigin:{string:["center","top-left"]},__type__:{object:B}},size:{number:b},title:{string:I,dom:NO,undefined:"undefined"},value:{number:b,undefined:"undefined"},widthConstraint:{minimum:{number:b},maximum:{number:b},__type__:{object:B,boolean:S,number:b}},x:{number:b},y:{number:b},__type__:{object:B}},Ife={configure:{enabled:{boolean:S},filter:{boolean:S,string:I,array:ma,function:"function"},container:{dom:NO},showButton:{boolean:S},__type__:{object:B,boolean:S,string:I,array:ma,function:"function"}},edges:{arrows:{to:{enabled:{boolean:S},scaleFactor:{number:b},type:{string:Cd},imageHeight:{number:b},imageWidth:{number:b},src:{string:I},__type__:{object:B,boolean:S}},middle:{enabled:{boolean:S},scaleFactor:{number:b},type:{string:Cd},imageWidth:{number:b},imageHeight:{number:b},src:{string:I},__type__:{object:B,boolean:S}},from:{enabled:{boolean:S},scaleFactor:{number:b},type:{string:Cd},imageWidth:{number:b},imageHeight:{number:b},src:{string:I},__type__:{object:B,boolean:S}},__type__:{string:["from","to","middle"],object:B}},endPointOffset:{from:{number:b},to:{number:b},__type__:{object:B,number:b}},arrowStrikethrough:{boolean:S},background:{enabled:{boolean:S},color:{string:I},size:{number:b},dashes:{boolean:S,array:ma},__type__:{object:B,boolean:S}},chosen:{label:{boolean:S,function:"function"},edge:{boolean:S,function:"function"},__type__:{object:B,boolean:S}},color:{color:{string:I},highlight:{string:I},hover:{string:I},inherit:{string:["from","to","both"],boolean:S},opacity:{number:b},__type__:{object:B,string:I}},dashes:{boolean:S,array:ma},font:{color:{string:I},size:{number:b},face:{string:I},background:{string:I},strokeWidth:{number:b},strokeColor:{string:I},align:{string:["horizontal","top","middle","bottom"]},vadjust:{number:b},multi:{boolean:S,string:I},bold:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},boldital:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},ital:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},mono:{color:{string:I},size:{number:b},face:{string:I},mod:{string:I},vadjust:{number:b},__type__:{object:B,string:I}},__type__:{object:B,string:I}},hidden:{boolean:S},hoverWidth:{function:"function",number:b},label:{string:I,undefined:"undefined"},labelHighlightBold:{boolean:S},length:{number:b,undefined:"undefined"},physics:{boolean:S},scaling:{min:{number:b},max:{number:b},label:{enabled:{boolean:S},min:{number:b},max:{number:b},maxVisible:{number:b},drawThreshold:{number:b},__type__:{object:B,boolean:S}},customScalingFunction:{function:"function"},__type__:{object:B}},selectionWidth:{function:"function",number:b},selfReferenceSize:{number:b},selfReference:{size:{number:b},angle:{number:b},renderBehindTheNode:{boolean:S},__type__:{object:B}},shadow:{enabled:{boolean:S},color:{string:I},size:{number:b},x:{number:b},y:{number:b},__type__:{object:B,boolean:S}},smooth:{enabled:{boolean:S},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"]},roundness:{number:b},forceDirection:{string:["horizontal","vertical","none"],boolean:S},__type__:{object:B,boolean:S}},title:{string:I,undefined:"undefined"},width:{number:b},widthConstraint:{maximum:{number:b},__type__:{object:B,boolean:S,number:b}},value:{number:b,undefined:"undefined"},__type__:{object:B}},groups:{useDefaultGroups:{boolean:S},__any__:xd,__type__:{object:B}},interaction:{dragNodes:{boolean:S},dragView:{boolean:S},hideEdgesOnDrag:{boolean:S},hideEdgesOnZoom:{boolean:S},hideNodesOnDrag:{boolean:S},hover:{boolean:S},keyboard:{enabled:{boolean:S},speed:{x:{number:b},y:{number:b},zoom:{number:b},__type__:{object:B}},bindToWindow:{boolean:S},autoFocus:{boolean:S},__type__:{object:B,boolean:S}},multiselect:{boolean:S},navigationButtons:{boolean:S},selectable:{boolean:S},selectConnectedEdges:{boolean:S},hoverConnectedEdges:{boolean:S},tooltipDelay:{number:b},zoomView:{boolean:S},zoomSpeed:{number:b},__type__:{object:B}},layout:{randomSeed:{undefined:"undefined",number:b,string:I},improvedLayout:{boolean:S},clusterThreshold:{number:b},hierarchical:{enabled:{boolean:S},levelSeparation:{number:b},nodeSpacing:{number:b},treeSpacing:{number:b},blockShifting:{boolean:S},edgeMinimization:{boolean:S},parentCentralization:{boolean:S},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},shakeTowards:{string:["leaves","roots"]},__type__:{object:B,boolean:S}},__type__:{object:B}},manipulation:{enabled:{boolean:S},initiallyActive:{boolean:S},addNode:{boolean:S,function:"function"},addEdge:{boolean:S,function:"function"},editNode:{function:"function"},editEdge:{editWithoutDrag:{function:"function"},__type__:{object:B,boolean:S,function:"function"}},deleteNode:{boolean:S,function:"function"},deleteEdge:{boolean:S,function:"function"},controlNodeStyle:xd,__type__:{object:B,boolean:S}},nodes:xd,physics:{enabled:{boolean:S},barnesHut:{theta:{number:b},gravitationalConstant:{number:b},centralGravity:{number:b},springLength:{number:b},springConstant:{number:b},damping:{number:b},avoidOverlap:{number:b},__type__:{object:B}},forceAtlas2Based:{theta:{number:b},gravitationalConstant:{number:b},centralGravity:{number:b},springLength:{number:b},springConstant:{number:b},damping:{number:b},avoidOverlap:{number:b},__type__:{object:B}},repulsion:{centralGravity:{number:b},springLength:{number:b},springConstant:{number:b},nodeDistance:{number:b},damping:{number:b},__type__:{object:B}},hierarchicalRepulsion:{centralGravity:{number:b},springLength:{number:b},springConstant:{number:b},nodeDistance:{number:b},damping:{number:b},avoidOverlap:{number:b},__type__:{object:B}},maxVelocity:{number:b},minVelocity:{number:b},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{boolean:S},iterations:{number:b},updateInterval:{number:b},onlyDynamicEdges:{boolean:S},fit:{boolean:S},__type__:{object:B,boolean:S}},timestep:{number:b},adaptiveTimestep:{boolean:S},wind:{x:{number:b},y:{number:b},__type__:{object:B}},__type__:{object:B,boolean:S}},autoResize:{boolean:S},clickToUse:{boolean:S},locale:{string:I},locales:{__any__:{any:Pfe},__type__:{object:B}},height:{string:I},width:{string:I},__type__:{object:B}},FO={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]}}},kfe=function(n,e,t){var i;return!!(Hr(n).call(n,"physics")&&Hr(i=FO.physics.solver).call(i,e)&&t.physics.solver!==e&&e!=="wind")},Cfe=function(){function r(){C(this,r)}return x(r,[{key:"getDistances",value:function(e,t,i){for(var a={},o=e.edges,s=0;s<t.length;s++){var u=t[s],l={};a[u]=l;for(var h=0;h<t.length;h++)l[t[h]]=s==h?0:1e9}for(var d=0;d<i.length;d++){var c=o[i[d]];c.connected===!0&&a[c.fromId]!==void 0&&a[c.toId]!==void 0&&(a[c.fromId][c.toId]=1,a[c.toId][c.fromId]=1)}for(var f=t.length,v=0;v<f;v++)for(var p=t[v],g=a[p],y=0;y<f-1;y++)for(var m=t[y],w=a[m],$=y+1;$<f;$++){var E=t[$],k=a[E],D=Math.min(w[E],w[p]+g[E]);w[E]=D,k[m]=D}return a}}]),r}(),xfe=function(){function r(n,e,t){C(this,r),this.body=n,this.springLength=e,this.springConstant=t,this.distanceSolver=new Cfe}return x(r,[{key:"setOptions",value:function(e){e&&(e.springLength&&(this.springLength=e.springLength),e.springConstant&&(this.springConstant=e.springConstant))}},{key:"solve",value:function(e,t){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=this.distanceSolver.getDistances(this.body,e,t);this._createL_matrix(a),this._createK_matrix(a),this._createE_matrix();for(var o=.01,s=1,u=0,l=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3)),h=5,d=1e9,c=0,f=0,v=0,p=0,g=0;d>o&&u<l;){u+=1;var y=this._getHighestEnergyNode(i),m=be(y,4);for(c=m[0],d=m[1],f=m[2],v=m[3],p=d,g=0;p>s&&g<h;){g+=1,this._moveNode(c,f,v);var w=this._getEnergy(c),$=be(w,3);p=$[0],f=$[1],v=$[2]}}}},{key:"_getHighestEnergyNode",value:function(e){for(var t=this.body.nodeIndices,i=this.body.nodes,a=0,o=t[0],s=0,u=0,l=0;l<t.length;l++){var h=t[l];if(i[h].predefinedPosition!==!0||i[h].isCluster===!0&&e===!0||i[h].options.fixed.x!==!0||i[h].options.fixed.y!==!0){var d=this._getEnergy(h),c=be(d,3),f=c[0],v=c[1],p=c[2];a<f&&(a=f,o=h,s=v,u=p)}}return[o,a,s,u]}},{key:"_getEnergy",value:function(e){var t=be(this.E_sums[e],2),i=t[0],a=t[1],o=Math.sqrt(Math.pow(i,2)+Math.pow(a,2));return[o,i,a]}},{key:"_moveNode",value:function(e,t,i){for(var a=this.body.nodeIndices,o=this.body.nodes,s=0,u=0,l=0,h=o[e].x,d=o[e].y,c=this.K_matrix[e],f=this.L_matrix[e],v=0;v<a.length;v++){var p=a[v];if(p!==e){var g=o[p].x,y=o[p].y,m=c[p],w=f[p],$=1/Math.pow(Math.pow(h-g,2)+Math.pow(d-y,2),1.5);s+=m*(1-w*Math.pow(d-y,2)*$),u+=m*(w*(h-g)*(d-y)*$),l+=m*(1-w*Math.pow(h-g,2)*$)}}var E=s,k=u,D=t,j=l,R=i,M=(D/E+R/k)/(k/E-j/k),W=-(k*M+D)/E;o[e].x+=W,o[e].y+=M,this._updateE_matrix(e)}},{key:"_createL_matrix",value:function(e){var t=this.body.nodeIndices,i=this.springLength;this.L_matrix=[];for(var a=0;a<t.length;a++){this.L_matrix[t[a]]={};for(var o=0;o<t.length;o++)this.L_matrix[t[a]][t[o]]=i*e[t[a]][t[o]]}}},{key:"_createK_matrix",value:function(e){var t=this.body.nodeIndices,i=this.springConstant;this.K_matrix=[];for(var a=0;a<t.length;a++){this.K_matrix[t[a]]={};for(var o=0;o<t.length;o++)this.K_matrix[t[a]][t[o]]=i*Math.pow(e[t[a]][t[o]],-2)}}},{key:"_createE_matrix",value:function(){var e=this.body.nodeIndices,t=this.body.nodes;this.E_matrix={},this.E_sums={};for(var i=0;i<e.length;i++)this.E_matrix[e[i]]=[];for(var a=0;a<e.length;a++){for(var o=e[a],s=t[o].x,u=t[o].y,l=0,h=0,d=a;d<e.length;d++){var c=e[d];if(c!==o){var f=t[c].x,v=t[c].y,p=1/Math.sqrt(Math.pow(s-f,2)+Math.pow(u-v,2));this.E_matrix[o][d]=[this.K_matrix[o][c]*(s-f-this.L_matrix[o][c]*(s-f)*p),this.K_matrix[o][c]*(u-v-this.L_matrix[o][c]*(u-v)*p)],this.E_matrix[c][a]=this.E_matrix[o][d],l+=this.E_matrix[o][d][0],h+=this.E_matrix[o][d][1]}}this.E_sums[o]=[l,h]}}},{key:"_updateE_matrix",value:function(e){for(var t=this.body.nodeIndices,i=this.body.nodes,a=this.E_matrix[e],o=this.K_matrix[e],s=this.L_matrix[e],u=i[e].x,l=i[e].y,h=0,d=0,c=0;c<t.length;c++){var f=t[c];if(f!==e){var v=a[c],p=v[0],g=v[1],y=i[f].x,m=i[f].y,w=1/Math.sqrt(Math.pow(u-y,2)+Math.pow(l-m,2)),$=o[f]*(u-y-s[f]*(u-y)*w),E=o[f]*(l-m-s[f]*(l-m)*w);a[c]=[$,E],h+=$,d+=E;var k=this.E_sums[f];k[0]+=$-p,k[1]+=E-g}}this.E_sums[e]=[h,d]}}]),r}();function F(r,n,e){var t,i,a,o,s=this;if(!(this instanceof F))throw new SyntaxError("Constructor must be called with the new operator");this.options={},this.defaultOptions={locale:"en",locales:Pne,clickToUse:!1},Ae(this.options,this.defaultOptions),this.body={container:r,nodes:{},nodeIndices:[],edges:{},edgeIndices:[],emitter:{on:O(t=this.on).call(t,this),off:O(i=this.off).call(i,this),emit:O(a=this.emit).call(a,this),once:O(o=this.once).call(o,this)},eventListeners:{onTap:function(){},onTouch:function(){},onDoubleTap:function(){},onHold:function(){},onDragStart:function(){},onDrag:function(){},onDragEnd:function(){},onMouseWheel:function(){},onPinch:function(){},onMouseMove:function(){},onRelease:function(){},onContext:function(){}},data:{nodes:null,edges:null},functions:{createNode:function(){},createEdge:function(){},getPointer:function(){}},modules:{},view:{scale:1,translation:{x:0,y:0}},selectionBox:{show:!1,position:{start:{x:0,y:0},end:{x:0,y:0}}}},this.bindEventListeners(),this.images=new Cne(function(){return s.body.emitter.emit("_requestRedraw")}),this.groups=new Kae,this.canvas=new hde(this.body),this.selectionHandler=new ece(this.body,this.canvas),this.interactionHandler=new gde(this.body,this.canvas,this.selectionHandler),this.view=new cde(this.body,this.canvas),this.renderer=new ade(this.body,this.canvas),this.physics=new Yhe(this.body),this.layoutEngine=new Efe(this.body),this.clustering=new ide(this.body),this.manipulation=new Tfe(this.body,this.canvas,this.selectionHandler,this.interactionHandler),this.nodesHandler=new Ale(this.body,this.images,this.groups,this.layoutEngine),this.edgesHandler=new Lhe(this.body,this.images,this.groups),this.body.modules.kamadaKawai=new xfe(this.body,150,.05),this.body.modules.clustering=this.clustering,this.canvas._create(),this.setOptions(e),this.setData(n)}M_(F.prototype);F.prototype.setOptions=function(r){var n=this;if(r===null&&(r=void 0),r!==void 0){var e=nne.validate(r,Ife);e===!0&&console.error("%cErrors have been found in the supplied options object.",LS);var t=["locale","locales","clickToUse"];if(sa(t,this.options,r),r.locale!==void 0&&(r.locale=Ine(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 rne(this,this.body.container,FO,this.canvas.pixelRatio,kfe)),this.configurator.setOptions(r.configure)),this.configurator&&this.configurator.options.enabled===!0){var i={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};he(i.nodes,this.nodesHandler.options),he(i.edges,this.edgesHandler.options),he(i.layout,this.layoutEngine.options),he(i.interaction,this.selectionHandler.options),he(i.interaction,this.renderer.options),he(i.interaction,this.interactionHandler.options),he(i.manipulation,this.manipulation.options),he(i.physics,this.physics.options),he(i.global,this.canvas.options),he(i.global,this.options),this.configurator.setModuleOptions(i)}r.clickToUse!==void 0?r.clickToUse===!0?this.activator===void 0&&(this.activator=new tne(this.canvas.frame),this.activator.on("change",function(){n.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")}};F.prototype._updateVisibleIndices=function(){var r=this.body.nodes,n=this.body.edges;this.body.nodeIndices=[],this.body.edgeIndices=[];for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&!this.clustering._isClusteredNode(e)&&r[e].options.hidden===!1&&this.body.nodeIndices.push(r[e].id);for(var t in n)if(Object.prototype.hasOwnProperty.call(n,t)){var i=n[t],a=r[i.fromId],o=r[i.toId],s=a!==void 0&&o!==void 0,u=!this.clustering._isClusteredEdge(t)&&i.options.hidden===!1&&s&&a.options.hidden===!1&&o.options.hidden===!1;u&&this.body.edgeIndices.push(i.id)}};F.prototype.bindEventListeners=function(){var r=this;this.body.emitter.on("_dataChanged",function(){r.edgesHandler._updateState(),r.body.emitter.emit("_dataUpdated")}),this.body.emitter.on("_dataUpdated",function(){r.clustering._updateState(),r._updateVisibleIndices(),r._updateValueRange(r.body.nodes),r._updateValueRange(r.body.edges),r.body.emitter.emit("startSimulation"),r.body.emitter.emit("_requestRedraw")})};F.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);");var n=vne(r.dot);this.setData(n);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);");var e=pne(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")};F.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(var r in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,r)&&delete this.body.nodes[r];for(var n in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,n)&&delete this.body.edges[n];Rr(this.body.container)};F.prototype._updateValueRange=function(r){var n,e=void 0,t=void 0,i=0;for(n in r)if(Object.prototype.hasOwnProperty.call(r,n)){var a=r[n].getValue();a!==void 0&&(e=e===void 0?a:Math.min(a,e),t=t===void 0?a:Math.max(a,t),i+=a)}if(e!==void 0&&t!==void 0)for(n in r)Object.prototype.hasOwnProperty.call(r,n)&&r[n].setValueRange(e,t,i)};F.prototype.isActive=function(){return!this.activator||this.activator.active};F.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)};F.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)};F.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)};F.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)};F.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)};F.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)};F.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)};F.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)};F.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)};F.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)};F.prototype.updateClusteredNode=function(){return this.clustering.updateClusteredNode.apply(this.clustering,arguments)};F.prototype.getClusteredEdges=function(){return this.clustering.getClusteredEdges.apply(this.clustering,arguments)};F.prototype.getBaseEdge=function(){return this.clustering.getBaseEdge.apply(this.clustering,arguments)};F.prototype.getBaseEdges=function(){return this.clustering.getBaseEdges.apply(this.clustering,arguments)};F.prototype.updateEdge=function(){return this.clustering.updateEdge.apply(this.clustering,arguments)};F.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)};F.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)};F.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)};F.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)};F.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)};F.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)};F.prototype.editNodeMode=function(){return console.warn("Deprecated: Please use editNode instead of editNodeMode."),this.manipulation.editNode.apply(this.manipulation,arguments)};F.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)};F.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)};F.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)};F.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)};F.prototype.getPosition=function(){return this.nodesHandler.getPosition.apply(this.nodesHandler,arguments)};F.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)};F.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)};F.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)};F.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)};F.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)};F.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)};F.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)};F.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)};F.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)};F.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)};F.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodeIds.apply(this.selectionHandler,arguments)};F.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdgeIds.apply(this.selectionHandler,arguments)};F.prototype.getNodeAt=function(){var r=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);return r!==void 0&&r.id!==void 0?r.id:r};F.prototype.getEdgeAt=function(){var r=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);return r!==void 0&&r.id!==void 0?r.id:r};F.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)};F.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)};F.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments),this.selectionHandler.commitWithoutEmitting.apply(this.selectionHandler),this.redraw()};F.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)};F.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)};F.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)};F.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)};F.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)};F.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)};F.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)};F.prototype.getOptionsFromConfigurator=function(){var r={};return this.configurator&&(r=this.configurator.getOptions.apply(this.configurator)),r};export{ru as D,F as N};
@@ -1 +1 @@
1
- import{_ as V}from"./nnavbar.vue-lpglg4eo.js";import{_ as D}from"./ncode-block.vue-bir2wz4z.js";import{bk as S,bl as B,N as P,i as j,U,x as E}from"./ezsm04pb.js";import{P as c,a1 as i,Q as a,p as I,f as m,w as W,q as _,a3 as l,a2 as u,S as q,a8 as v,F as d,ae as z,X as G}from"./vendor/json-editor-vue-llkaejaf.js";import{_ as H}from"./help-fab.vue-m0kqpwd8.js";import"./client-gsjyqe32.js";import"./vendor/unocss-mvzv9iuf.js";import"./vendor/shiki-kdj4mcqm.js";const L={class:"markdown-body"},Q={__name:"virtual-files",setup(h,{expose:r}){return r({frontmatter:{}}),(p,o)=>(i(),c("div",L,o[0]||(o[0]=[a("h1",null,"Virtual Files",-1),a("p",null,"Virtual files are generated on the fly to support the conventions of the framework, and to provide a better developer experience.",-1)])))}},R=["onClick"],X={key:0,"h-full":"","of-hidden":"",flex:"~ col"},A={border:"b base","flex-none":"",px4:"",py2:"","text-sm":"",op75:""},oe=I({__name:"virtual-files",setup(h){const r=m(""),n=S(),p=B(),o=m();W(()=>{if(!p.value)return;const e=`/_vfs.json/${encodeURIComponent(p.value)}`;fetch(e,{headers:{accept:"application/json"}}).then(t=>t.json()).then(t=>o.value=t.current)});function x(e){if(n.value?.rootDir)return e.startsWith(n.value?.rootDir)?e.slice(n.value.rootDir.length):e}const f=_(()=>n.value?n.value.entries.filter(e=>!e.id.startsWith(`${n.value?.rootDir||""}/.nuxt/`)).sort((e,t)=>e.id.localeCompare(t.id)):[]),k=_(()=>new P(f.value,{keys:["id","path"]})),b=_(()=>r.value?k.value.search(r.value).map(e=>e.item):f.value);return(e,t)=>{const y=V,g=D,C=U,F=j,N=E,$=Q,w=H;return i(),c(d,null,[l(N,{class:"virtual-files","storage-key":"tab-virtual-files"},{left:u(()=>[l(y,{search:r.value,"onUpdate:search":t[0]||(t[0]=s=>r.value=s),"no-padding":"",p3:""},null,8,["search"]),(i(!0),c(d,null,z(b.value,s=>(i(),c(d,{key:s.id},[a("button",{block:"","w-full":"","select-none":"",truncate:"",px2:"",py1:"","text-start":"","text-sm":"","font-mono":"",class:G(s.id===o.value?.id?"text-primary n-bg-active":"text-secondary hover:n-bg-hover"),onClick:J=>p.value=s.id},v(x(s.id)),11,R),t[1]||(t[1]=a("div",{"x-divider":""},null,-1))],64))),128))]),right:u(()=>[o.value?.content?(i(),c("div",X,[a("div",A,[a("code",null,v(o.value.id),1)]),l(g,{"h-full":"","of-auto":"","text-sm":"",code:o.value.content,lang:"typescript"},null,8,["code"])])):(i(),q(F,{key:1},{default:u(()=>[l(C,{px6:"",py2:""},{default:u(()=>t[2]||(t[2]=[a("span",{op75:""},"Select a file to start",-1)])),_:1})]),_:1}))]),_:1}),l(w,null,{default:u(()=>[l($)]),_:1})],64)}}});export{oe as default};
1
+ import{_ as V}from"./nnavbar.vue-fue4am60.js";import{_ as D}from"./ncode-block.vue-bir2wz4z.js";import{bk as S,bl as B,N as P,i as j,U,x as E}from"./ba74h01u.js";import{P as c,a1 as i,Q as a,p as I,f as m,w as W,q as _,a3 as l,a2 as u,S as q,a8 as v,F as d,ae as z,X as G}from"./vendor/json-editor-vue-llkaejaf.js";import{_ as H}from"./help-fab.vue-e4itx2nb.js";import"./client-gsjyqe32.js";import"./vendor/unocss-mvzv9iuf.js";import"./vendor/shiki-kdj4mcqm.js";const L={class:"markdown-body"},Q={__name:"virtual-files",setup(h,{expose:r}){return r({frontmatter:{}}),(p,o)=>(i(),c("div",L,o[0]||(o[0]=[a("h1",null,"Virtual Files",-1),a("p",null,"Virtual files are generated on the fly to support the conventions of the framework, and to provide a better developer experience.",-1)])))}},R=["onClick"],X={key:0,"h-full":"","of-hidden":"",flex:"~ col"},A={border:"b base","flex-none":"",px4:"",py2:"","text-sm":"",op75:""},oe=I({__name:"virtual-files",setup(h){const r=m(""),n=S(),p=B(),o=m();W(()=>{if(!p.value)return;const e=`/_vfs.json/${encodeURIComponent(p.value)}`;fetch(e,{headers:{accept:"application/json"}}).then(t=>t.json()).then(t=>o.value=t.current)});function x(e){if(n.value?.rootDir)return e.startsWith(n.value?.rootDir)?e.slice(n.value.rootDir.length):e}const f=_(()=>n.value?n.value.entries.filter(e=>!e.id.startsWith(`${n.value?.rootDir||""}/.nuxt/`)).sort((e,t)=>e.id.localeCompare(t.id)):[]),k=_(()=>new P(f.value,{keys:["id","path"]})),b=_(()=>r.value?k.value.search(r.value).map(e=>e.item):f.value);return(e,t)=>{const y=V,g=D,C=U,F=j,N=E,$=Q,w=H;return i(),c(d,null,[l(N,{class:"virtual-files","storage-key":"tab-virtual-files"},{left:u(()=>[l(y,{search:r.value,"onUpdate:search":t[0]||(t[0]=s=>r.value=s),"no-padding":"",p3:""},null,8,["search"]),(i(!0),c(d,null,z(b.value,s=>(i(),c(d,{key:s.id},[a("button",{block:"","w-full":"","select-none":"",truncate:"",px2:"",py1:"","text-start":"","text-sm":"","font-mono":"",class:G(s.id===o.value?.id?"text-primary n-bg-active":"text-secondary hover:n-bg-hover"),onClick:J=>p.value=s.id},v(x(s.id)),11,R),t[1]||(t[1]=a("div",{"x-divider":""},null,-1))],64))),128))]),right:u(()=>[o.value?.content?(i(),c("div",X,[a("div",A,[a("code",null,v(o.value.id),1)]),l(g,{"h-full":"","of-auto":"","text-sm":"",code:o.value.content,lang:"typescript"},null,8,["code"])])):(i(),q(F,{key:1},{default:u(()=>[l(C,{px6:"",py2:""},{default:u(()=>t[2]||(t[2]=[a("span",{op75:""},"Select a file to start",-1)])),_:1})]),_:1}))]),_:1}),l(w,null,{default:u(()=>[l($)]),_:1})],64)}}});export{oe as default};