balkan-orgchart-react 9.2.25 → 9.2.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.umd.js CHANGED
@@ -209,7 +209,7 @@ performance.now();setTimeout(w,2300>q&&2E3<q?2300-q:500)})])},types:[]});z.ready
209
209
  <rect style="display: ${C}" data-treelist-scroll="${f.id}" class="boc-scroll" x="${f.x+f.w-f.padding[1]-_.TREELIST_SCROLLBAR_WIDTH}" y="${f.y+f.padding[0]}" width="${_.TREELIST_SCROLLBAR_WIDTH}" height="${f.h-f.padding[2]-f.padding[0]}"></rect>
210
210
  <rect style="display: ${C}" data-treelist-thumb="${f.id}" class="boc-scroll-thumb" x="${f.x+f.w-f.padding[1]-_.TREELIST_SCROLLBAR_WIDTH}" y="${S}" width="${_.TREELIST_SCROLLBAR_WIDTH}" height="${x}"></rect>
211
211
 
212
- </g>`}}for(var d=0;d<e.visibleNodeIds.length;d++){var f=e.nodes[e.visibleNodeIds[d]],p=i._get(f.id);f.isTreeListItem||(_.RENDER_LINKS_BEFORE_NODES||(o+=i.ui.link(f,i,s,e.bordersByRootIdAndLevel,e.nodes,t)),o+=i.ui.expandCollapseBtn(i,f,p,i.config,i._layoutConfigs,t,s))}var a={content:o,res:e};if(_.events.publish(`render`,[i,a]),o=a.content,e=a.res,o+=i.ui.lonely(i.config),t===_.action.exporting){var w=e.boundary,T=w.maxX-w.minX,E=w.maxY-w.minY,D=i.ui.svg(T,E,[w.minX,w.minY,T,E],i.config,o,s);r.call(i,D,e);return}(t===_.action.centernode||t===_.action.insert||t===_.action.expand||t===_.action.collapse||t===_.action.update)&&(l=c),t===_.action.init&&c!=null&&(l=c),t===_.action.centerNode&&c!=null&&(l=c),i.response=e,i._lastSize={width:i.width(),height:i.height()};var D=i.ui.svg(`100%`,`100%`,l,i.config,o);if(!i._initialized)i.element.innerHTML=i.ui.css()+D+i.ui.menuButton(i.config)+i.ui.aiButton(i.config),i._attachEventHandlers(),i.xScrollUI.create(i.width(),i.config.padding),i.xScrollUI.setPosition(),i.xScrollUI.addListener(i.getSvg()),i.yScrollUI.create(i.height(),i.config.padding),i.yScrollUI.setPosition(),i.yScrollUI.addListener(i.getSvg()),i.config.enableSearch&&i.searchUI.init(i),i.aiUI.init(i),i.orgScribeUI.init(i),i.powerPointPreviewUI.init(i),i.pdfPreviewUI.init(i),i.svgPreviewUI.init(i),i.pngPreviewUI.init(i),i.toolbarUI.init(i,i.config.toolbar),i.undoRedoUI.init(i),i.controlsUI.init(i);else{var O=i.getSvg(),k=O.parentNode;k.removeChild(O),k.insertAdjacentHTML(`afterbegin`,D),i._attachEventHandlers(),i.xScrollUI.addListener(i.getSvg()),i.yScrollUI.addListener(i.getSvg()),i.xScrollUI.setPosition(),i.yScrollUI.setPosition()}var A=!1,j=i.response.animations;if(j[0].length>0){i._hideBeforeAnimation(j[0].length);for(var d=0;d<j[0].length;d++)j[0][d]=i.getNodeElement(j[0][d]);_.animate(j[0],j[1],j[2],i.config.anim.duration,i.config.anim.func,function(){A||=(r&&r.call(i),_.events.publish(`redraw`,[i]),i._showAfterAnimation(),!0)})}t===_.action.centerNode?_.animate(i.getSvg(),{viewbox:c},{viewbox:i.response.viewBox},i.config.anim.duration,i.config.anim.func,function(){i.ripple(n.options.rippleId),A||=(r&&r.call(i),_.events.publish(`redraw`,[i]),i._showAfterAnimation(),!0)},function(){i.xScrollUI.setPosition(),i.yScrollUI.setPosition()}):c&&i.response&&(c[0]!=i.response.viewBox[0]||c[1]!=i.response.viewBox[1]||c[2]!=i.response.viewBox[2]||c[3]!=i.response.viewBox[3])&&(t===_.action.insert||t===_.action.expand||t===_.action.collapse||t===_.action.update||t===_.action.init)?_.animate(i.getSvg(),{viewbox:c},{viewbox:i.response.viewBox},i.config.anim.duration*2,i.config.anim.func,function(){i.xScrollUI.setPosition(),i.yScrollUI.setPosition(),A||=(r&&r.call(i),_.events.publish(`redraw`,[i]),!0)}):j[0].length==0&&(A||=(r&&r.call(i),_.events.publish(`redraw`,[i]),!0)),i._initialized||(i._initialized=!0,i.filterUI.update(),i._ai.setContext(),_.events.publish(`init`,[i])),!i._loaded&&e&&e.nodes&&Object.keys(e.nodes).length&&(i._loaded=!0)}},function(e){_.events.publish(`ready`,[i,e])})}},_.prototype._setInitialSizeIfNotSet=function(){this.mainElement.style.overflow=`hidden`,this.mainElement.style.position=`relative`,this.mainElement.offsetHeight==0&&(this.mainElement.style.height=`100%`,this.mainElement.offsetHeight==0&&(this.mainElement.style.height=`700px`)),this.mainElement.offsetWidth==0&&(this.mainElement.style.width=`100%`,this.mainElement.offsetWidth==0&&(this.mainElement.style.width=`700px`))},_.prototype.width=function(){return this.element.offsetWidth},_.prototype.height=function(){return this.element.offsetHeight},_.prototype.getViewBox=function(){var e=this.getSvg();return _._getViewBox(e)},_.prototype.setViewBox=function(e){this.getSvg().setAttribute(`viewBox`,e.toString())},_.prototype.getScale=function(e){return e||=this.getViewBox(),_.getScale(e,this.width(),this.height(),this.config.scaleInitial,this.config.scaleMax,this.config.scaleMin)},_.prototype.setScale=function(e){e>this.config.scaleMax&&(e=this.config.scaleMax),e<this.config.scaleMin&&(e=this.config.scaleMin);var t=this.getViewBox().slice(0),n=this.width(),r=this.height(),i=n/t[2],a=r/t[3],o=i>a?a:i,s=t,c=t[2],l=t[3];return t[2]/=e/o,t[3]/=e/o,t[0]=s[0]-(t[2]-c)/2,t[1]=s[1]-(t[3]-l)/2,this.setViewBox(t),_.events.publish(`redraw`,[this]),e},_.prototype.ripple=function(e,t,n){var r=this.getNode(e);if(r!=null){var i=this.getNodeElement(e);if(i!=null){var a=this.getScale(),o=r.w/2,s=r.h/2;if(t!==void 0&&n!==void 0){var c=i.getBoundingClientRect();o=t/a-c.left/a,s=n/a-c.top/a}var l=r.w,u=r.h,d=l-o>o?l-o:o,f=u-s>s?u-s:s;d=d,f=f;var p=d>f?d:f,m=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),h=document.createElementNS(`http://www.w3.org/2000/svg`,`clipPath`),g=document.createElementNS(`http://www.w3.org/2000/svg`,`rect`),v=document.createElementNS(`http://www.w3.org/2000/svg`,`circle`),y=_.randomId();h.setAttribute(`id`,y);var b={ripple:_.t(r.templateName,r.min,this.getScale()).ripple,node:r};_.events.publish(`ripple`,[this,b]),g.setAttribute(`x`,b.ripple.rect?b.ripple.rect.x:0),g.setAttribute(`y`,b.ripple.rect?b.ripple.rect.y:0),g.setAttribute(`width`,b.ripple.rect?b.ripple.rect.width:r.w),g.setAttribute(`height`,b.ripple.rect?b.ripple.rect.height:r.h),g.setAttribute(`rx`,b.ripple.radius),g.setAttribute(`ry`,b.ripple.radius),v.setAttribute(`clip-path`,`url(#`+y+`)`),v.setAttribute(`cx`,o),v.setAttribute(`cy`,s),v.setAttribute(`r`,0),v.setAttribute(`fill`,b.ripple.color),v.setAttribute(`class`,`boc-ripple`),h.appendChild(g),m.appendChild(h),m.appendChild(v),i.appendChild(m),_.animate(v,{r:0,opacity:1},{r:p,opacity:0},500,_.anim.outPow,function(){i.removeChild(m)})}}},_.prototype.centerOutNodes=function(e){if(this._centerInNodes){var t=JSON.parse(this._centerInNodes);this._centerInNodes=null;var n=this;this._centerInNodesTimeout=_.animate(this.getSvg(),{viewBox:this.getViewBox()},{viewBox:t},300,this.config.anim.func,function(){n.draw(_.action.update,null,function(){e&&e.call(n)})})}},_.prototype.centerInNodes=function(e,t){var n=this.getViewBox();this._centerInNodes||=JSON.stringify(n);var r=2**53-1,i=-(2**53-1),a=2**53-1,o=-(2**53-1);for(var s of e)s.y<r&&(r=s.y),s.y+s.h>i&&(i=s.y+s.h),s.x<a&&(a=s.x),s.x+s.w>o&&(o=s.x+s.w);var c=o-a,l=i-r,u=c/(c+this.config.padding*2),d=l/(l+this.config.padding*2),f=u>d?d:u;f>this.config.scaleMax&&(f=this.config.scaleMax),f<this.config.scaleMin&&(f=this.config.scaleMin);var p=[50,50],m=this.width(),h=this.height(),u=m/n[2],d=h/n[3],g=u>d?d:u,v=n,y=n[2],b=n[3];n[2]/=f/g,n[3]/=f/g,n[0]=v[0]-(n[2]-y)/(100/p[0]),n[1]=v[1]-(n[3]-b)/(100/p[1]),n[0]=a-(m/f-c)/2,n[1]=r-(h/f-l)/2;var x=this;this._centerInNodesTimeout&&=(clearTimeout(this._centerInNodesTimeout),null),this._centerInNodesTimeout=_.animate(this.getSvg(),{viewBox:this.getViewBox()},{viewBox:n},300,this.config.anim.func,function(){x.draw(_.action.update,null,function(){t&&t.call(x)})})},_.prototype.center=function(e,t,n){var r,i,a=e,o=!0,s=!0;t&&t.parentState!=null&&(r=t.parentState),t&&t.childrenState!=null&&(i=t.childrenState),t&&t.rippleId!=null&&(a=t.rippleId),t&&t.vertical!=null&&(o=t.vertical),t&&t.horizontal!=null&&(s=t.horizontal);var c={parentState:r,childrenState:i,rippleId:a,vertical:o,horizontal:s};this._draw(!1,_.action.centerNode,{id:e,options:c},n)},_.prototype.fit=function(e){this.config.scaleInitial=_.match.boundary,this._draw(!0,_.action.init,{method:`fit`},e)},_.prototype.fitIfOutside=function(e){this.config.scaleInitial=_.match.boundaryIfOutside,this._draw(!0,_.action.init,{method:`fit`},e)},_.prototype.toggleFullScreen=function(){var e=document.querySelector(`[`+_.attr.tlbr+`r='fullScreen']`);document.fullscreenElement==this.element||document.webkitFullscreenElement==this.element||document.mozFullScreenElement==this.element||document.msFullscreenElement==this.element?(document.exitFullscreen?document.exitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.msExitFullscreen&&document.msExitFullscreen(),e&&(e.innerHTML=_.toolbarUI.openFullScreenIcon)):(this.element.requestFullscreen?this.element.requestFullscreen():this.element.mozRequestFullScreen?this.element.mozRequestFullScreen():this.element.webkitRequestFullscreen?this.element.webkitRequestFullscreen():this.element.msRequestFullscreen&&this.element.msRequestFullscreen(),e&&(e.innerHTML=_.toolbarUI.closeFullScreenIcon))},_.prototype.getNode=function(e){return this.nodes[e]},_.prototype.setLayout=function(e,t){t||=`base`,this._layoutConfigs[t].layout=e,t==`base`&&(this.config.layout=e),this._draw(!1,_.action.update)},_.prototype.setOrientation=function(e,t,n){var r=this;t||=`base`,this._layoutConfigs[t].orientation=e,t==`base`&&(this.config.orientation=e),this._draw(!1,_.action.update,void 0,function(){r.getScale(),_._moveToBoundaryArea(r.getSvg(),r.getViewBox(),r.response.boundary,function(){r._draw(!0,_.action.pan),n&&n()})})},_.prototype.search=function(e,t,n){return _.isNEU(t)&&(t=this.searchUI._searchFields),_.isNEU(n)&&(n=t),_._search.search(this.config.nodes,e,t,n,this.config.searchDisplayField,this.config.searchFieldsWeight,this.searchUI._searchFieldsAbbreviation)},_.prototype._hideBeforeAnimation=function(e){if(this._hideBeforeAnimationCompleted!=1&&!(e&&e<_.ANIM_THRESHOLD)){var t=this.element.getElementsByTagName(`text`);if(t.length>_.TEXT_THRESHOLD)for(var n=0;n<t.length;n++)t[n].style.display=`none`;var r=this.element.getElementsByTagName(`image`);if(r.length>_.IMAGES_THRESHOLD)for(var n=0;n<r.length;n++)r[n].style.display=`none`;var i=this.element.querySelectorAll(`[`+_.attr.link_id+`]`);if(i.length>_.LINKS_THRESHOLD)for(var n=0;n<i.length;n++)i[n].style.display=`none`;var a=this.element.querySelectorAll(`[`+_.attr.control_expcoll_id+`]`);if(a.length>_.BUTTONS_THRESHOLD)for(var n=0;n<a.length;n++)a[n].style.display=`none`;var o=this.element.querySelectorAll(`[`+_.attr.control_up_id+`]`);if(o.length>_.BUTTONS_THRESHOLD)for(var n=0;n<o.length;n++)o[n].style.display=`none`;this._hideBeforeAnimationCompleted=!0}},_.prototype._showAfterAnimation=function(){for(var e=this.element.getElementsByTagName(`text`),t=0;t<e.length;t++)e[t].style.display=``;for(var n=this.element.getElementsByTagName(`image`),t=0;t<n.length;t++)n[t].style.display=``;for(var r=this.element.querySelectorAll(`[`+_.attr.link_id+`]`),t=0;t<r.length;t++)r[t].style.display=``;for(var i=this.element.querySelectorAll(`[`+_.attr.control_expcoll_id+`]`),t=0;t<i.length;t++)i[t].style.display=``;for(var a=this.element.querySelectorAll(`[`+_.attr.control_up_id+`]`),t=0;t<a.length;t++)a[t].style.display=``;this._hideBeforeAnimationCompleted=!1},_.prototype.isChild=function(e,t){for(var n=this.getNode(t);n;){if(n.id==e)return!0;n=n.parent?n.parent:n.stParent}return!1},_.prototype.getCollapsedIds=function(e){for(var t=[],n=0;n<e.childrenIds.length;n++){var r=this.getNode(e.childrenIds[n]);r.collapsed==1&&t.push(r.id)}return t},_.prototype.stateToUrl=function(){if(this.manager.state){var e={};return e.exp=this.manager.state.exp.join(`*`),e.min=this.manager.state.min.join(`*`),e.adjustify=this.manager.state.adjustify.x+`*`+this.manager.state.adjustify.y,e.scale=this.manager.state.scale,e.y=this.manager.state.x,e.x=this.manager.state.y,new URLSearchParams(e).toString()}return``},_.prototype.generateId=function(){for(;;){var e=`_`+(`0000`+(Math.random()*36**4|0).toString(36)).slice(-4);if(this.nodes==null||!this.nodes.hasOwnProperty(e))return e}},_.prototype.moveNodesToVisibleArea=function(e,t){for(var n=this,r=this.roots[0],i=this.getSvg(),a=this.getViewBox(),o=null,s=null,c=null,l=null,u=0;u<e.length;u++){var d=this.nodes[e[u]];d.x!=null&&d.y!=null&&((o===null||o<d.x+d.w)&&(o=d.x+d.w),(s===null||s<d.y+d.h)&&(s=d.y+d.h),(c===null||c>d.x)&&(c=d.x),(l===null||l>d.y)&&(l=d.y))}if(!(o==null||s==null||c==null||l==null)){var f=this.width(),p=this.height(),m=o-c+this.config.padding*2,h=s-l+this.config.padding*2,g=f/m,v=p/h,y=g>v?v:g,b=Math.ceil(f/y),x=Math.ceil(p/y),m=0,h=0;if(b-this.config.padding*2>=o-c)m=(o+c)/2-b/2;else switch(m=r.x-b/2+_.manager._getNodeWidth(r,this.config)/2,this.config.orientation){case _.orientation.right:case _.orientation.right_top:m=-(b/2-(c-o)/2),m<this.config.padding-b&&(m=this.config.padding-b);break;case _.orientation.left:case _.orientation.bottom_left:case _.orientation.top_left:case _.orientation.left_top:m=-(b/2-(o-c)/2),m>-this.config.padding&&(m=-this.config.padding);break}if(x-this.config.padding*2>=s-l)h=(s+l)/2-x/2;else switch(h=-(x/2-(s-l)/2),h>-this.config.padding&&(h=-this.config.padding),this.config.orientation){case _.orientation.bottom:case _.orientation.bottom_left:h=-(x/2-(l-s)/2),h<this.config.padding-x&&(h=this.config.padding-x);break;case _.orientation.left:case _.orientation.right:h=r.y-x/2+_.manager._getNodeWidth(r,this.config)/2;break}var S=[m,h,b,x];a[0]!==S[0]||a[1]!==S[1]?_.animate(i,{viewBox:a},{viewBox:S},this.config.anim.duration,this.config.anim.func,function(){n.draw(_.action.update,void 0,t)}):t&&t()}},_.prototype._nodeHasHiddenParent=function(e){return!e.parent&&!_.isNEU(e.pid)&&this.getNode(e.pid)},_.prototype.destroy=function(){this._initCalled=!1,this._resizeObserver.unobserve(this.element),_.events.removeForEventId(this._event_id),this.element.innerHTML=null},_._defaultConfig=function(e){return{interactive:!0,mode:`light`,lazyLoading:`auto`,enableDragDrop:!1,enableSearch:!0,enableAI:!1,enablePan:!0,keyNavigation:!1,miniMap:!1,controls:null,nodeMenu:null,nodeCircleMenu:null,nodeContextMenu:null,menu:null,toolbar:!1,nodeMouseClick:_.action.details,nodeMouseDbClick:_.none,mouseScrool:_.action.ctrlZoom,showXScroll:!1,showYScroll:!1,template:`ana`,tags:{},min:!1,nodeBinding:{},linkBinding:{},searchFields:null,searchDisplayField:null,searchFieldsWeight:null,searchFieldsAbbreviation:null,nodes:[],clinks:[],slinks:[],backdrops:[],groupDottedLines:[],dottedLines:[],undoRedoStorageName:null,levelSeparation:60,siblingSeparation:20,subtreeSeparation:40,backdropSeparation:15,mixedHierarchyNodesSeparation:15,assistantSeparation:100,minPartnerSeparation:50,partnerChildrenSplitSeparation:20,partnerNodeSeparation:15,columns:10,padding:30,orientation:_.orientation.top,layout:_.layout.normal,layoutGridColumns:`dynamic`,scaleInitial:_.match.boundaryIfOutside,movable:null,scaleMin:.1,scaleMax:5,orderBy:null,editUI:null,aiUI:null,orgScribeUI:null,powerPointPreviewUI:null,pdfPreviewUI:null,svgPreviewUI:null,pngPreviewUI:null,filterUI:null,searchUI:null,xScrollUI:null,yScrollUI:null,nodeMenuUI:null,controlsUI:null,nodeCircleMenuUI:null,nodeContextMenuUI:null,toolbarUI:null,notifierUI:null,menuUI:null,undoRedoUI:null,exportUrl:`https://balkan.app/export`,serverUrl:`https://serverjs.balkan.app`,aiChatTools:[],collapse:{},expand:{},align:_.CENTER,UI:null,anim:{func:_.anim.outPow,duration:200},zoom:{speed:120,smooth:12},roots:null,state:null,editForm:{readOnly:!1,titleBinding:`name`,photoBinding:`img`,addMore:`Add more fields`,addMoreBtn:`Add`,addMoreFieldName:`Field name`,saveAndCloseBtn:`Save and close`,generateElementsFromFields:!0,focusBinding:null,buttons:{edit:{icon:_.icon.edit(24,24,`#fff`),text:`Edit`,hideIfEditMode:!0,hideIfDetailsMode:!1},share:{icon:_.icon.share(24,24,`#fff`),text:`Share`},pdf:{icon:_.icon.pdf(24,24,`#fff`),text:`Save as PDF`},remove:{icon:_.icon.remove(24,24,`#fff`),text:`Remove`,hideIfDetailsMode:!0}},elements:[]}}},_.localStorage={},_.localStorage.getItem=function(e){var t=localStorage.getItem(`to_date`);if(!t)t=new Date,t.setDate(t.getDate()+5),t=t.toISOString(),localStorage.setItem(`to_date`,t);else if(t=new Date(t),t<new Date){for(var n=0,r=localStorage.length;n<r;++n){var i=localStorage.key(n);i&&i.startsWith&&i.startsWith(`{"n"`)&&localStorage.removeItem(i)}localStorage.removeItem(`to_date`)}return localStorage.getItem(e)},_.localStorage.setItem=function(e,t){try{localStorage.setItem(e,t)}catch(e){e.code==e.QUOTA_EXCEEDED_ERR?(console.warn(`Local storage quota exceeded`),localStorage.clear()):(console.error(`Local storage error code:`+e.code),console.error(e))}},_.prototype.canUpdateLink=function(e,t){if(t==null||t==null||e==null||e==null||e==t)return!1;var n=this.getNode(t),r=this.getNode(e);return n&&r&&(n.isPartner||n.hasPartners&&r.isAssistant||n.hasAssistants&&r.isPartner)?!1:!this.isChild(e,t)},_.prototype._canUpdateLink=_.prototype.canUpdateLink,_.prototype.updateNode=function(e,t,n,r){if(e){var i=this,a=this.get(e.id);if(n===!0&&_.events.publish(`update`,[this,a,e])===!1)return!1;this.update(e),this._ai.setContext(),_.events.publish(`updated`,[this]),this.filterUI.update();var o=this.getNode(e.id),s=o.pid;s??=o.stpid,this._draw(!1,_.action.update,{id:s},function(){r||i.ripple(e.id),t&&t()})}},_.prototype.update=function(e){for(var t=0;t<this.config.nodes.length;t++)if(this.config.nodes[t].id==e.id){this._putInUndoStack(),this.clearRedo(),this.config.nodes[t]=e;break}return this},_.prototype.removeNode=function(e,t,n){if(!this.canRemove(e))return!1;var r=this._getNewPidsAndStpidsForIds(e);return n===!0&&_.events.publish(`remove`,[this,e,r])===!1?!1:(this.remove(e),this._ai.setContext(),_.events.publish(`updated`,[this]),this.filterUI.update(),this._draw(!1,_.action.update,null,function(){t&&t()}),!0)},_.prototype.remove=function(e){var t=this.get(e);if(t){this._putInUndoStack(),this.clearRedo();for(var n=this.config.nodes.length-1;n>=0;n--)(this.config.nodes[n].pid==e||this.config.nodes[n].stpid==e)&&(this.config.nodes[n].pid=t.pid,this.config.nodes[n].stpid=t.stpid),this.config.nodes[n].id==e&&this.config.nodes.splice(n,1)}return this},_.prototype._getNewPidsAndStpidsForIds=function(e){var t=this.get(e),n={},r={};if(t)for(var i=this.config.nodes.length-1;i>=0;i--)this.config.nodes[i].pid==e?n[this.config.nodes[i].id]=t.pid:this.config.nodes[i].stpid==e&&(r[this.config.nodes[i].id]=t.stpid);return{newPidsForIds:n,newStpidsForIds:r}},_.prototype.addNode=function(e,t,n){var r=this;if(n===!0&&_.events.publish(`add`,[this,e])===!1)return!1;this.add(e),this._ai.setContext(),_.events.publish(`updated`,[this]),this.filterUI.update(),r._draw(!1,_.action.insert,{id:e.pid,insertedNodeId:e.id},function(){r.ripple(e.id),t&&t()})},_.prototype.add=function(e){if(e.id??console.error(`Call addNode without id`),this._putInUndoStack(),this.clearRedo(),this.config.movable&&!_.isNEU(e.pid)){var t=this._get(e.pid);t&&(t.movex!=null&&(e.movex=t.movex),t.movey!=null&&(e.movey=t.movey))}return this.config.nodes.push(e),this},_.prototype.replaceIds=function(e,t){this._replaceIds(e),this._draw(!1,_.action.update,void 0,t)},_.prototype._replaceIds=function(e){for(var t=function(t){for(var n=0;n<t.length;n++){var r=t[n];for(var i in e){var a=e[i];r.from==i&&(r.from=a),r.to==i&&(r.to=a)}}},n=0;n<this.config.nodes.length;n++){var r=this.config.nodes[n];for(var i in e){var a=e[i];r.id==i&&(r.id=a),r.pid==i&&(r.pid=a),r.stpid==i&&(r.stpid=a),r.ppid==i&&(r.ppid=a)}}if(Array.isArray(this.config.roots))for(var n=0;n<this.config.roots.length;n++)_.isNEU(e[this.config.roots[n]])||(this.config.roots[n]=e[this.config.roots[n]]);if(this.nodes){for(var o in this.nodes)if(!_.isNEU(e[o])){var a=e[o],s=this.nodes[o];s.id=a,this.nodes[a]=s}}if(this.manager.oldNodes){for(var o in this.manager.oldNodes)if(!_.isNEU(e[o])){var a=e[o],s=this.manager.oldNodes[o];s.id=a,this.manager.oldNodes[a]=s}}if(this.roots){for(var o in this.roots)if(!_.isNEU(e[o])){var a=e[o],s=this.roots[o];s.id=a,this.roots[a]=s}}t(this.config.clinks),t(this.config.slinks),t(this.config.groupDottedLines),t(this.config.dottedLines)},_.prototype._get=function(e){var t=this.__get(e);if(t)return t;if((this.config.groupDottedLines.length||this.config.dottedLines.length)&&!_.isNEU(e)&&typeof e==`string`&&(e.indexOf(`balkan_group_dotted_`)!=-1||e.indexOf(`balkan_dotted_`)!=-1)){e=e.replace(`balkan_group_dotted_`,``),e=e.replace(`balkan_dotted_`,``);var n=e.indexOf(`_balkan_id_`);if(e=e.substring(n+11),t=this.__get(e),t)return t}return null},_.prototype.__get=function(e){for(var t=0;t<this.config.nodes.length;t++)if(this.config.nodes[t].id==e)return this.config.nodes[t];return null},_.prototype.get=function(e){var t=this._get(e);return t==null?null:JSON.parse(JSON.stringify(t))},_.prototype.canRemove=function(e){var t=this.getNode(e);return!(!t||t.hasPartners||t.hasAssistants)},_===void 0&&(_={}),_._ajax=function(e,t,n,r,i){r??=`arraybuffer`;var a=new XMLHttpRequest;for(var o in a.onload=function(e){a.readyState==4&&this.status===200&&(e.target==null?i(this.response):i(e.target.response))},a.onerror=function(e){i({error:e})},a.open(t,e),a.responseType=r,a.setRequestHeader(`Content-Type`,`application/json`),_.REQUEST_CUSTOM_HEADERS)a.setRequestHeader(o,_.REQUEST_CUSTOM_HEADERS[o]);n==null?a.send():a.send(n)},_===void 0&&(_={}),_.animate=function(e,t,n,r,i,a,o){var s=10,c=1,l=1,u=r/s+1,d;document.getElementsByTagName(`g`),Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),Array.isArray(n)||(n=[n]);function f(){for(var f=0;f<e.length;f++)for(var p in n[f]){var m=_._arrayContains([`top`,`left`,`right`,`bottom`,`width`,`height`],p.toLowerCase())?`px`:``;switch(p.toLowerCase()){case`d`:var h=i((l*s-s)/r)*(n[f][p][0]-t[f][p][0])+t[f][p][0],g=i((l*s-s)/r)*(n[f][p][1]-t[f][p][1])+t[f][p][1];e[f].setAttribute(`d`,e[f].getAttribute(`d`)+` L`+h+` `+g);break;case`r`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].setAttribute(`r`,v);break;case`x1`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].setAttribute(`x1`,v);break;case`x2`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].setAttribute(`x2`,v);break;case`y1`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].setAttribute(`y1`,v);break;case`y2`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].setAttribute(`y2`,v);break;case`scrolltop`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].scrollTop=v;break;case`rotate3d`:if(n[f][p]){var y=t[f][p],b=n[f][p],x=[0,0,0,0];for(var S in y)x[S]=i((l*s-s)/r)*(b[S]-y[S])+y[S];e[f].style.transform=`rotate3d(`+x.toString()+`deg)`}break;case`transform`:if(n[f][p]){var y=t[f][p],b=n[f][p],x=[0,0,0,0,0,0];for(var S in y)x[S]=i((l*s-s)/r)*(b[S]-y[S])+y[S];e[f].hasAttribute(`transform`)?e[f].setAttribute(`transform`,`matrix(`+x.toString()+`)`):e[f].style.transform=`matrix(`+x.toString()+`)`}break;case`viewbox`:if(n[f][p]){var y=t[f][p],b=n[f][p],x=[0,0,0,0];for(var S in y)x[S]=i((l*s-s)/r)*(b[S]-y[S])+y[S];e[f].setAttribute(`viewBox`,x.toString())}break;case`margin`:if(n[f][p]){var y=t[f][p],b=n[f][p],x=[0,0,0,0];for(var S in y)x[S]=i((l*s-s)/r)*(b[S]-y[S])+y[S];for(var C=``,S=0;S<x.length;S++)C+=parseInt(x[S])+`px `;e[f]&&e[f].style&&(e[f].style[p]=C)}break;case`scrolly`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].scrollTo(0,v);break;default:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f]&&e[f].style&&(e[f].style[p]=v+m);break}}if(o){var v=i((l*s-s)/r);o(v)}l+=c,l>u+1&&(clearInterval(d),a&&a(e))}return d=setInterval(f,s),d},_.anim={},_.anim.inPow=function(e){return e<0?0:e>1?1:e**2},_.anim.outPow=function(e){var t=2;if(e<0)return 0;if(e>1)return 1;var n=t%2==0?-1:1;return n*((e-1)**t+n)},_.anim.inOutPow=function(e){var t=2;if(e<0)return 0;if(e>1)return 1;if(e*=2,e<1)return _.anim.inPow(e,t)/2;var n=t%2==0?-1:1;return n/2*((e-2)**t+n*2)},_.anim.inSin=function(e){return e<0?0:e>1?1:-Math.cos(Math.PI/2*e)+1},_.anim.outSin=function(e){return e<0?0:e>1?1:Math.sin(Math.PI/2*e)},_.anim.inOutSin=function(e){return e<0?0:e>1?1:-.5*(Math.cos(Math.PI*e)-1)},_.anim.inExp=function(e){return e<0?0:e>1?1:2**(10*(e-1))},_.anim.outExp=function(e){return e<0?0:e>1?1:-(2**(-10*e))+1},_.anim.inOutExp=function(e){return e<0?0:e>1?1:e<.5?.5*2**(10*(2*e-1)):.5*(-(2**(10*(-2*e+1)))+2)},_.anim.inCirc=function(e){return e<0?0:e>1?1:-(Math.sqrt(1-e*e)-1)},_.anim.outCirc=function(e){return e<0?0:e>1?1:Math.sqrt(1-(e-1)*(e-1))},_.anim.inOutCirc=function(e){return e<0?0:e>1?1:e<1?-.5*(Math.sqrt(1-e*e)-1):.5*(Math.sqrt(1-(2*e-2)*(2*e-2))+1)},_.anim.rebound=function(e){return e<0?0:e>1?1:e<1/2.75?1-7.5625*e*e:e<2/2.75?1-(7.5625*(e-1.5/2.75)*(e-1.5/2.75)+.75):e<2.5/2.75?1-(7.5625*(e-2.25/2.75)*(e-2.25/2.75)+.9375):1-(7.5625*(e-2.625/2.75)*(e-2.625/2.75)+.984375)},_.anim.inBack=function(e){return e<0?0:e>1?1:e*e*(2.70158*e-1.70158)},_.anim.outBack=function(e){return e<0?0:e>1?1:(e-1)*(e-1)*(2.70158*(e-1)+1.70158)+1},_.anim.inOutBack=function(e){return e<0?0:e>1?1:e<.5?.5*(4*e*e*(3.5949*2*e-2.5949)):.5*((2*e-2)*(2*e-2)*(3.5949*(2*e-2)+2.5949)+2)},_.anim.impulse=function(e){var t=2*e;return t*Math.exp(1-t)},_.anim.expPulse=function(e){return Math.exp(-2*e**2)},_===void 0&&(_={}),_.prototype._attachEventHandlers=function(e){if(this.config.interactive){var e=this.getSvg(),t=this;e.addEventListener(`touchstart`,function(e){e.preventDefault(),t._globalMouseDownHandler.apply(t,[this,e])},{passive:!1}),e.addEventListener(`mousedown`,function(e){t._globalMouseDownHandler.apply(t,[this,e])},{passive:!0}),e.addEventListener(`contextmenu`,function(e){t._globalContextHandler.apply(t,[this,e])},{passive:!1}),e.addEventListener(`dblclick`,function(e){t._globalDbClickHandler.apply(t,[this,e])},{passive:!0}),this.config.mouseScrool!=_.action.none&&e.addEventListener(`wheel`,function(e){t._mouseScrollHandler.apply(t,[this,e])},{passive:!1});var n=this.getMenuButton();n&&n.addEventListener(`click`,function(e){t._menuClickHandler.apply(t,[this,e])})}},_===void 0&&(_={}),_.VERSION=`9.2.21`,_.orientation={},_.orientation.top=0,_.orientation.bottom=1,_.orientation.right=2,_.orientation.left=3,_.orientation.top_left=4,_.orientation.bottom_left=5,_.orientation.right_top=6,_.orientation.left_top=7,_.anchor={top_right:`top_right`,right_top:`right_top`,bottom_right:`bottom_right`,right_bottom:`right_bottom`,top_left:`top_left`,left_top:`left_top`,bottom_left:`bottom_left`,left_bottom:`left_bottom`,top:`top`,bottom:`bottom`,left:`left`,right:`right`},_.align={},_.align.center=_.CENTER=8,_.align.orientation=_.ORIENTATION=9,_.attr={},_.attr.l=`data-l`,_.attr.id=`data-id`,_.attr.sl=`data-sl`,_.attr.lbl=`data-lbl`,_.attr.val=`data-val`,_.attr.tlbr=`data-tlbr`,_.attr.item=`data-item`,_.attr.layout=`data-layout`,_.attr.node_id=`data-n-id`,_.attr.link_id=`data-l-id`,_.attr.field_name=`data-f-name`,_.attr.c_link_to=`data-c-l-to`,_.attr.c_link_from=`data-c-l-from`,_.attr.s_link_to=`data-s-l-to`,_.attr.s_link_from=`data-s-l-from`,_.attr.control_add=`data-ctrl-add`,_.attr.control_expcoll_id=`data-ctrl-ec-id`,_.attr.control_up_id=`data-ctrl-up-id`,_.attr.control_export_menu=`data-ctrl-menu`,_.attr.control_node_menu_id=`data-ctrl-n-menu-id`,_.attr.control_node_circle_menu_id=`data-ctrl-n-c-menu-id`,_.attr.control_node_circle_menu_name=`data-ctrl-n-c-menu-name`,_.attr.control_node_circle_menu_wrraper_id=`data-ctrl-n-c-menu-wrapper-id`,_.attr.width=`data-width`,_.attr.text_overflow=`data-text-overflow`,_.ID=`id`,_.PID=`pid`,_.STPID=`stpid`,_.TAGS=`tags`,_.NODES=`nodes`,_.ELASTIC=`elastic`,_.ASSISTANT=`Assistant`,_.action={},_.action.expand=0,_.action.collapse=1,_.action.maximize=101,_.action.minimize=102,_.action.expandCollapse=501,_.action.edit=1,_.action.zoom=2,_.action.ctrlZoom=22,_.action.scroll=41,_.action.xScroll=3,_.action.yScroll=4,_.action.none=5,_.action.init=6,_.action.update=7,_.action.move=70,_.action.pan=8,_.action.centerNode=9,_.action.resize=10,_.action.insert=11,_.action.insertfirst=12,_.action.details=13,_.action.exporting=14,_.none=400001,_.scroll={},_.scroll.visible=!0,_.scroll.smooth=12,_.scroll.speed=120,_.scroll.safari={smooth:12,speed:250},_.match={},_.match.height=100001,_.match.width=100002,_.match.boundary=100003,_.match.boundaryIfOutside=100004,_.match.none=1,_.movable={},_.movable.node=`node`,_.movable.tree=`tree`,_.movable.detachTree=`detachTree`,_.layout={},_.layout.normal=_.normal=0,_.layout.mixed=_.mixed=1,_.layout.tree=_.tree=2,_.layout.treeLeftOffset=_.treeLeftOffset=3,_.layout.treeRightOffset=_.treeRightOffset=4,_.layout.treeLeft=5,_.layout.treeRight=6,_.layout.grid=-1,_.layout.treeList=-2,_.nodeOpenTag=`<g `+_.attr.node_id+`="{id}" style="opacity: {opacity}" transform="matrix(1,0,0,1,{x},{y})" class="{class}" `+_.attr.sl+`="{sl}" `+_.attr.l+`="{level}" {lcn}>`,_.linkOpenTag=`<g `+_.attr.link_id+`="[{id}][{child-id}]" class="{class}">`,_.expcollOpenTag=`<g `+_.attr.control_expcoll_id+`="{id}" transform="matrix(1,0,0,1,{x},{y})" style="cursor:pointer;">`,_.upOpenTag=`<g `+_.attr.control_up_id+`="{id}" transform="matrix(1,0,0,1,{x},{y})" style="cursor:pointer;">`,_.linkFieldsOpenTag=`<g transform="matrix(1,0,0,1,{x},{y}) rotate({rotate})">`,_.grCloseTag=`</g>`,_.A5={width:420,height:595},_.A4={width:595,height:842},_.A3={width:842,height:1191},_.A2={width:1191,height:1684},_.A1={width:1684,height:2384},_.Letter={width:612,height:791},_.Legal={width:612,height:1009},_.Legal={width:612,height:1009},_.Widescreen={width:720,height:1280},_.Standard={width:720,height:960},_.COLLAPSE_PARENT_NEIGHBORS=1,_.COLLAPSE_SUB_CHILDRENS=2,_.COLLAPSE_PARENT_SUB_CHILDREN_EXCEPT_CLICKED=3,_.TEXT_THRESHOLD=4e3,_.IMAGES_THRESHOLD=1e3,_.LINKS_THRESHOLD=2e3,_.BUTTONS_THRESHOLD=700,_.ANIM_THRESHOLD=500,_.IT_IS_LONELY_HERE=`<g transform="translate(-100, 0)" style="cursor:pointer;" `+_.attr.control_add+`="control-add"><text fill="#039be5">{link}</text></g>`,_.RES={},_.IT_IS_LONELY_HERE_LINK=_.RES.IT_IS_LONELY_HERE_LINK=`It's lonely here, add your first node`,_.FIRE_DRAG_NOT_CLICK_IF_MOVE=3,_.STRING_TAGS=!1,_.MAX_NODES_MESS=`The trial has expired or 200 nodes limit was reached! <br /><a style='color: #039BE5;' target='_blank' href='https://balkan.app/OrgChartJS/Docs/Evaluation'>See more</a>`,_.OFFLINE_MESS=`The evaluation version requires internet connection! <br /><a style='color: #039BE5;' target='_blank' href='https://balkan.app/OrgChartJS/Docs/Evaluation'>See more</a>`,_.SEARCH_PLACEHOLDER=`Search... type ? to get help.`,_.SEARCH_HELP_SYMBOL=`?`,_.SEARCH_CLOSE_RESULT_ON_ESCAPE_OR_CLICKOUTSIDE=!1,_.SEARCH_RESULT_LIMIT=10,_.IMPORT_MESSAGE=`Choose the columns (fields) in your data file that contain the required information.`,_.FIXED_POSITION_ON_CLICK=!1,_.RENDER_LINKS_BEFORE_NODES=!1,_.RENDER_CLINKS_BEFORE_NODES=!1,_.MIXED_LAYOUT_ALL_NODES=!1,_.MIXED_LAYOUT_FOR_NODES_WITH_COLLAPSED_CHILDREN=!1,_.MIXED_LAYOUT_IF_NUMBER_OF_CHILDREN_IS_MORE_THEN=1,_.LINK_ROUNDED_CORNERS=5,_.MOVE_STEP=5,_.CLINK_CURVE=1,_.MAX_DEPTH=200,_.SCALE_FACTOR=1.44,_.LAZY_LOADING_FACTOR=`auto`,_.LAZY_LOADING=!0,_.ARRAY_FIELDS=[`tags`],_.CSV_DELIMITER=`,`,_.EDITFORM_CLOSE_BTN=`<svg data-edit-from-close class="boc-edit-form-close"><path style="fill:#ffffff;" d="M21.205,5.007c-0.429-0.444-1.143-0.444-1.587,0c-0.429,0.429-0.429,1.143,0,1.571l8.047,8.047H1.111 C0.492,14.626,0,15.118,0,15.737c0,0.619,0.492,1.127,1.111,1.127h26.554l-8.047,8.032c-0.429,0.444-0.429,1.159,0,1.587 c0.444,0.444,1.159,0.444,1.587,0l9.952-9.952c0.444-0.429,0.444-1.143,0-1.571L21.205,5.007z"></path></svg>`,_.ESCAPE_HTML=!1,_.VERTICAL_CHILDREN_ASSISTANT=!1,_.EXPORT_PAGES_CUT_NODES=!1,_.RESET_MOVABLE_ONEXPANDCOLLAPSE=!1,_.FILTER_ALPHABETICALLY=!0,_.SERVER_PREFIX=`.azurewebsites.net/api/you-see-this-request-because-it-is-trial-version-of-orgchartjs`,_.FUNC_URL_NAME=`func-url-orgchartjs`,_.MINIMUM_SYMBOLS_IN_SEARCH_INPUT=1,_.AI_SYSTEM_MESSAGES=[],_.ORGSCRIBE_OFFSET=` `,_.TREELIST_WHEEL_STEP=`auto`,_.TREELIST_SCROLLBAR_WIDTH=10,_.CONVERT_IMAGES_TO_BASE64_BEFORE_EXPORT=!1,_.REQUEST_CUSTOM_HEADERS={},_.SLINK_GAP=7,_._intersects=function(e,t,n){var r=e.x-n.siblingSeparation/4,i=e.y,a=e.x+e.w+n.siblingSeparation/4,o=e.y;switch(n.orientation){case _.orientation.right:case _.orientation.right_top:case _.orientation.left:case _.orientation.left_top:r=e.x,i=e.y-n.siblingSeparation/4,a=e.x,o=e.y+e.h+n.siblingSeparation/4;break}var s=t.p,c=t.q,l=t.r,u=t.s,d=(a-r)*(u-c)-(l-s)*(o-i),f,p;return d===0?!1:(p=((u-c)*(l-r)+(s-l)*(u-i))/d,f=((i-o)*(l-r)+(a-r)*(u-i))/d,0<p&&p<1&&0<f&&f<1)},_._addPoint=function(e,t,n,r,i){switch(n.orientation){case _.orientation.top:case _.orientation.top_left:return _._addPointTop(e,t,n,r,i);case _.orientation.bottom:case _.orientation.bottom_left:return _._addPointBottom(e,t,n,r,i);case _.orientation.left:case _.orientation.left_top:return _._addPointLeft(e,t,n,r,i);case _.orientation.right:case _.orientation.right_top:return _._addPointRight(e,t,n,r,i)}},_._addPointTop=function(e,t,n,r,i){var a,o,s;return i==`left`?a=e.leftNeighbor?e.x+(e.leftNeighbor.x+e.leftNeighbor.w-e.x)/2:e.x-n.siblingSeparation/2:i==`right`&&(a=e.rightNeighbor?e.x+e.w+(e.rightNeighbor.x-(e.x+e.w))/2:e.x+e.w+n.siblingSeparation/2),t.push([a,t[t.length-1][1]]),t.push([a,e.y-n.levelSeparation/3]),o=t[t.length-1][1],s=a,r.p=a,r.q=o,r.r=s,r},_._addPointBottom=function(e,t,n,r,i){var a,o,s;return i==`left`?a=e.leftNeighbor?e.x+(e.leftNeighbor.x+e.leftNeighbor.w-e.x)/2:e.x-n.siblingSeparation/2:i==`right`&&(a=e.rightNeighbor?e.x+e.w+(e.rightNeighbor.x-(e.x+e.w))/2:e.x+e.w+n.siblingSeparation/2),t.push([a,t[t.length-1][1]]),t.push([a,e.y+e.h+n.levelSeparation/3]),o=t[t.length-1][1],s=a,r.p=a,r.q=o,r.r=s,r},_._addPointLeft=function(e,t,n,r,i){var a=t[t.length-1][0],o;i==`bottom`?o=e.rightNeighbor?e.y+e.h+(e.rightNeighbor.y-(e.y+e.h))/2:e.y+e.h+n.siblingSeparation/2:i==`top`&&(o=e.leftNeighbor?e.y+(e.leftNeighbor.y+e.leftNeighbor.h-e.y)/2:e.y-n.siblingSeparation/2),t.push([t[t.length-1][0],o]),t.push([e.x-n.levelSeparation/3,o]),a=t[t.length-1][0];var s=o;return r.p=a,r.q=o,r.s=s,r},_._addPointRight=function(e,t,n,r,i){var a=t[t.length-1][0],o;i==`bottom`?o=e.rightNeighbor?e.y+e.h+(e.rightNeighbor.y-(e.y+e.h))/2:e.y+e.h+n.siblingSeparation/2:i==`top`&&(o=e.leftNeighbor?e.y+(e.leftNeighbor.y+e.leftNeighbor.h-e.y)/2:e.y-n.siblingSeparation/2),t.push([t[t.length-1][0],o]),t.push([e.x+e.w+n.levelSeparation/3,o]),a=t[t.length-1][0];var s=o;return r.p=a,r.q=o,r.s=s,r},_._addConnectorLines=function(e,t){_._addConnectorLine(e,{x1:t.xa,y1:t.ya,x2:t.xb,y2:t.yb}),_._addConnectorLine(e,{x1:t.xb,y1:t.yb,x2:t.xc,y2:t.yc}),_._addConnectorLine(e,{x1:t.xc,y1:t.yc,x2:t.xd,y2:t.yd})},_._addConnectorLine=function(e,t){if(t.x1==t.x2){if(e.x[t.x1]||(e.x[t.x1]=[]),t.y1>t.y2){var n=t.y1;t.y1=t.y2,t.y2=n}e.x[t.x1].push({y1:t.y1,y2:t.y2})}if(t.y1==t.y2){if(e.y[t.y1]||(e.y[t.y1]=[]),t.x1>t.x2){var r=t.x1;t.x1=t.x2,t.x2=r}e.y[t.y1].push({x1:t.x1,x2:t.x2})}},_._addLineToPath=function(e,t,n){return _._avoidOverlapping(t,n),e.push([n.x1,n.y1]),e.push([n.x2,n.y2]),_._addConnectorLine(t,n),n},_._slinkRemoveUnusedPoints=function(e){for(var t=e.length-2;t>=1;t--){var n=e[t-1],r=e[t],i=e[t+1];(r[0]==n[0]&&r[0]==i[0]||r[1]==n[1]&&r[1]==i[1])&&e.splice(t,1)}},_._slinkAvoidOverlaping=function(e,t,n,r){for(var i=1;i<t.length;i++){var a=t[i-1],o=t[i];if(a[0]==o[0]){for(var s=e.x[o[0]];s;){var c=!0;for(var l of s)if(l.y1<=a[1]&&l.y2>=a[1]||l.y1<=o[1]&&l.y2>=o[1]){r==_.orientation.top||r==_.orientation.top_left?n==`left`?o[0]-=_.SLINK_GAP:n==`right`&&(o[0]+=_.SLINK_GAP):(r==_.orientation.bottom||r==_.orientation.bottom_left)&&(n==`right`?o[0]+=_.SLINK_GAP:n==`left`&&(o[0]-=_.SLINK_GAP)),c=!1;break}if(c)break;s=e.x[o[0]]}a[0]=o[0]}var u=!0;if(a[1]==o[1]&&a[0]>=o[0]&&(u=!1),u&&a[1]==o[1]){for(var s=e.y[o[1]];s;){var c=!0;for(var l of s)if(l.x1<=a[0]&&l.x2>=a[0]||l.x1<=o[0]&&l.x2>=o[0]){a[0]>=o[0]||(r==_.orientation.top||r==_.orientation.top_left?o[1]-=_.SLINK_GAP:(r==_.orientation.bottom||r==_.orientation.bottom_left)&&(o[1]+=_.SLINK_GAP),c=!1);break}if(c)break;s=e.y[o[1]]}a[1]=o[1]}u&&_._addConnectorLine(e,{x1:a[0],y1:a[1],x2:o[0],y2:o[1]})}},_._slinkAvoidOverlapingSecond=function(e,t,n){for(var r=1;r<t.length;r++){var i=t[r-1],a=t[r],o=!1;if(i[1]==a[1]){for(var s=e.y[a[1]];s;){var c=!0;for(var l of s)if(l.x1<=i[0]&&l.x2>=i[0]||l.x1<=a[0]&&l.x2>=a[0]){i[0]>=a[0]?(n==_.orientation.top||n==_.orientation.top_left?a[1]-=_.SLINK_GAP:(n==_.orientation.bottom||n==_.orientation.bottom_left)&&(a[1]+=_.SLINK_GAP),c=!1):o=!0;break}if(c)break;s=e.y[a[1]]}i[1]=a[1]}o||_._addConnectorLine(e,{x1:i[0],y1:i[1],x2:a[0],y2:a[1]})}},_._slinkAvoidOverlaping2=function(e,t,n,r){for(var i=1;i<t.length;i++){var a=t[i-1],o=t[i];if(a[1]==o[1]){for(var s=e.y[o[1]];s;){var c=!0;for(var l of s)if(l.x1<=a[0]&&l.x2>=a[0]||l.x1<=o[0]&&l.x2>=o[0]){r==_.orientation.left||r==_.orientation.left_top?n==`top`?o[1]-=_.SLINK_GAP:n==`bottom`&&(o[1]+=_.SLINK_GAP):(r==_.orientation.right||r==_.orientation.right_top)&&(n==`bottom`?o[1]+=_.SLINK_GAP:n==`top`&&(o[1]-=_.SLINK_GAP)),c=!1;break}if(c)break;s=e.y[o[1]]}a[1]=o[1]}var u=!0;if(a[0]==o[0]&&a[1]>=o[1]&&(u=!1),u&&a[0]==o[0]){for(var s=e.x[o[0]];s;){var c=!0;for(var l of s)if(l.y1<=a[1]&&l.y2>=a[1]||l.y1<=o[1]&&l.y2>=o[1]){a[1]>=o[1]||(r==_.orientation.left||r==_.orientation.left_top?o[0]-=_.SLINK_GAP:(r==_.orientation.right||r==_.orientation.right_top)&&(o[0]+=_.SLINK_GAP),c=!1);break}if(c)break;s=e.x[o[0]]}a[0]=o[0]}u&&_._addConnectorLine(e,{x1:a[0],y1:a[1],x2:o[0],y2:o[1]})}},_._slinkAvoidOverlapingSecond2=function(e,t,n){for(var r=1;r<t.length;r++){var i=t[r-1],a=t[r],o=!1;if(i[0]==a[0]){for(var s=e.x[a[0]];s;){var c=!0;for(var l of s)if(l.y1<=i[1]&&l.y2>=i[1]||l.y1<=a[1]&&l.y2>=a[1]){i[1]>=a[1]?(n==_.orientation.left||n==_.orientation.left_top?a[0]-=_.SLINK_GAP:(n==_.orientation.right||n==_.orientation.right_top)&&(a[0]+=_.SLINK_GAP),c=!1):o=!0;break}if(c)break;s=e.x[a[0]]}i[0]=a[0]}o||_._addConnectorLine(e,{x1:i[0],y1:i[1],x2:a[0],y2:a[1]})}},_.editUI=function(){},_.editUI.prototype.init=function(e){this.obj=e,this.fields=null,this.nodeId=null,this.detailsMode=null,this._event_id=_._guid()},_.editUI.prototype.on=function(e,t){return _.events.on(e,t,this._event_id),this},_.editUI.prototype.show=function(e,t,n){if(this.hide(!0)){if(this.nodeId=e,this.detailsMode=t,_.events.publish(`show`,[this,e])===!1)return!1;var r=this,i=this.content(e,t,n);this.obj.element.appendChild(i.element),_.input.init(this.obj.element),_.events.publish(`shown`,[this,{nodeId:e}]),n?t||this._focusElement(i.focusId):this.interval=_.animate(i.element,{right:-20,opacity:0},{right:0,opacity:1},300,_.anim.outSin,function(){t||r._focusElement(i.focusId)}),this.obj.element.querySelector(`[data-edit-from-close]`).addEventListener(`click`,function(t){t.preventDefault(),_.events.publish(`cancel`,[r,{id:e}])!==!1&&r.hide()}),this.obj.element.querySelector(`[data-edit-from-save]`).addEventListener(`click`,function(e){e.preventDefault(),r.hide()});for(var a=this.obj.element.querySelectorAll(`[data-input-btn]`),o=0;o<a.length;o++)a[o].addEventListener(`click`,function(t){t.preventDefault(),_.events.publish(`element-btn-click`,[r,{input:this.parentNode.querySelector(`input`),nodeId:e,event:t}])});this.obj.element.querySelector(`[data-add-more-fields-btn]`).addEventListener(`click`,function(e){e.stopPropagation(),e.preventDefault();var t=this,n=_.elements.textbox({},{type:`textbox`,label:r.obj.config.editForm.addMoreFieldName,btn:r.obj.config.editForm.addMoreBtn},`280px`);t.parentNode.insertAdjacentHTML(`beforebegin`,n.html),t.style.display=`none`,_.input.init(t.parentNode.previousSibling);var i=document.getElementById(n.id);i.focus(),i.nextElementSibling.addEventListener(`click`,function(e){e.stopPropagation(),e.preventDefault();var n=i.value,a=r.obj.element.querySelector(`[data-binding="`+_._escapeDoubleQuotes(i.value)+`"]`);if(!_.isNEU(n)&&!a){var o=_.elements.textbox({},{type:`textbox`,label:n,binding:n},`280px`);i.parentNode.parentNode.parentNode.removeChild(i.parentNode.parentNode),t.parentNode.insertAdjacentHTML(`beforebegin`,o.html),t.style.display=``,_.input.init(t.parentNode.previousSibling);var s=document.getElementById(o.id);s.focus(),s.addEventListener(`input`,function(){r._drawCurrentNodeElement()})}else i.focus()})}),this.obj.element.querySelector(`[data-boc-edit-from-btns]`).addEventListener(`click`,function(t){for(var n=t.target;n&&n.hasAttribute&&!n.hasAttribute(`data-edit-from-btn`);)n=n.parentNode;if(n&&n.hasAttribute){var i=n.getAttribute(`data-edit-from-btn`),a={button:r.obj.config.editForm.buttons[i],name:i,nodeId:e,event:t};if(_.events.publish(`button-click`,[r,a])===!1)return!1;switch(i){case`edit`:r.obj.editUI.show(e,!1,!0);break;case`pdf`:r.obj.exportToPDFProfile(e),r.hide();break;case`share`:r.obj.shareProfile(e);break;case`remove`:r.obj.removeNode(e,null,!0),r.hide();break}}});for(var s=this.obj.element.querySelectorAll(`[data-boc-edit-form] [data-binding]`),o=0;o<s.length;o++){var c=s[o];c.getAttribute(`data-binding`)&&c.addEventListener(`input`,function(){r._drawCurrentNodeElement()})}}},_.editUI.prototype._drawCurrentNodeElement=function(){var e=this.obj.element.querySelector(`[data-boc-edit-form]`),t=_.input.getData(e),n=this.obj.get(this.nodeId),r=this.obj.getNode(this.nodeId),i=_.mergeDeep(n,t),a=this.obj.ui.node(r,i,[],this.obj.config,void 0,void 0,void 0,void 0,this.obj.getScale(),this.obj);this._replaceNodeWith(a)},_.editUI.prototype._replaceNodeWith=function(e){var t=document.createElementNS(`http://www.w3.org/2000/svg`,`g`);t.innerHTML=e;var n=t.firstElementChild;this.obj.getNodeElement(this.nodeId).replaceWith(n)},_.editUI.prototype.setAvatar=function(e){var t=this.obj.element.querySelector(`[id="boc-avatar"]`),n=this.obj.element.querySelector(`[id="boc-avatar"] img`),r=this.obj.element.querySelector(`[id="boc-avatar"] svg`);if(t)n?n.setAttribute(`src`,e):r&&(t.innerHTML=`<img style="width: 100%;height:100%;border-radius: 50%;object-fit:cover;" src="${e}">`);else return;this._drawCurrentNodeElement()},_.editUI.prototype.save=function(e){var t=this.obj.element.querySelector(`[data-boc-edit-form]`),n=_.input.validateAndGetData(t);if(n!==!1){var r=this.obj.get(this.nodeId),i={data:_.mergeDeep(r,n)};return _.events.publish(`save`,[this,i])===!1?void 0:(this.obj.updateNode(i.data,null,!0,e),!0)}return!1},_.editUI.prototype._focusElement=function(e){var t=null;_.isNEU(this.obj.config.editForm.focusBinding)?_.isNEU(e)||(t=document.getElementById(e)):t=this.obj.element.querySelector(`[data-binding="`+this.obj.config.editForm.focusBinding+`"]`),t&&(t.value&&t.value.length&&t.setSelectionRange(t.value.length,t.value.length),t.focus())},_.editUI.prototype.content=function(e,t,n,r,i){var a=this.obj.config.editForm.readOnly,o=JSON.parse(JSON.stringify(this.obj.config.editForm.elements)),s=this.obj.config.editForm.addMore,c=this.obj.config.editForm.saveAndCloseBtn,l=this.obj.config.editForm.buttons,u=this.obj.config.editForm.titleBinding,d=this.obj.config.editForm.photoBinding,f=this.obj.getNode(e),p=this.obj._get(e),m=_.t(f.templateName,f.min,this.obj.getScale()),h=p[u],g=p[d];if(this.obj.config.editForm.generateElementsFromFields)for(var v=0;v<this.fields.length;v++){var y=this.fields[v];if(y!=`tags`){for(var b=!1,x=0;x<o.length;x++){if(Array.isArray(o[x])){for(var S=0;S<o[x].length;S++)if(y==o[x][S].binding){b=!0;break}}else if(y==o[x].binding){b=!0;break}if(b)break}b||o.push({type:`textbox`,label:y,binding:y})}}_.isNEU(h)&&(h=``),g=_.isNEU(g)?_.icon.user(150,150,`#8C8C8C`,0,0):`<img style="width: 100%;height:100%;border-radius: 50%;object-fit:cover;" src="${g}"></img>`;var C,w=!t,T=t?`display:none;`:``,E=t||!s?`display:none;`:``,D=m.editFormHeaderColor?`style="background-color:${m.editFormHeaderColor};"`:``,O=document.createElement(`form`);if(O.setAttribute(`data-boc-edit-form`,``),O.classList.add(`boc-edit-form`),O.classList.add(this.obj.config.mode),O.classList.add(f.templateName.replaceAll(` `,``)),O.classList.add(_.ui._defsIds[f.templateName]),Array.isArray(f.tags)&&f.tags.length)for(var v=0;v<f.tags.length;v++)O.classList.add(f.tags[v].replaceAll(` `,``));O.style.display=`flex`,O.style.opacity=n?1:0,O.style.right=n?0:`-20px`,r&&(O.style.width=r);var k=[];return O.innerHTML=`<div>
212
+ </g>`}}for(var d=0;d<e.visibleNodeIds.length;d++){var f=e.nodes[e.visibleNodeIds[d]],p=i._get(f.id);f.isTreeListItem||(_.RENDER_LINKS_BEFORE_NODES||(o+=i.ui.link(f,i,s,e.bordersByRootIdAndLevel,e.nodes,t)),o+=i.ui.expandCollapseBtn(i,f,p,i.config,i._layoutConfigs,t,s))}var a={content:o,res:e};if(_.events.publish(`render`,[i,a]),o=a.content,e=a.res,o+=i.ui.lonely(i.config),t===_.action.exporting){var w=e.boundary,T=w.maxX-w.minX,E=w.maxY-w.minY,D=i.ui.svg(T,E,[w.minX,w.minY,T,E],i.config,o,s);r.call(i,D,e);return}(t===_.action.centernode||t===_.action.insert||t===_.action.expand||t===_.action.collapse||t===_.action.update)&&(l=c),t===_.action.init&&c!=null&&(l=c),t===_.action.centerNode&&c!=null&&(l=c),i.response=e,i._lastSize={width:i.width(),height:i.height()};var D=i.ui.svg(`100%`,`100%`,l,i.config,o);if(!i._initialized)i.element.innerHTML=i.ui.css()+D+i.ui.menuButton(i.config)+i.ui.aiButton(i.config),i._attachEventHandlers(),i.xScrollUI.create(i.width(),i.config.padding),i.xScrollUI.setPosition(),i.xScrollUI.addListener(i.getSvg()),i.yScrollUI.create(i.height(),i.config.padding),i.yScrollUI.setPosition(),i.yScrollUI.addListener(i.getSvg()),i.config.enableSearch&&i.searchUI.init(i),i.aiUI.init(i),i.orgScribeUI.init(i),i.powerPointPreviewUI.init(i),i.pdfPreviewUI.init(i),i.svgPreviewUI.init(i),i.pngPreviewUI.init(i),i.toolbarUI.init(i,i.config.toolbar),i.undoRedoUI.init(i),i.controlsUI.init(i);else{var O=i.getSvg(),k=O.parentNode;k.removeChild(O),k.insertAdjacentHTML(`afterbegin`,D),i._attachEventHandlers(),i.xScrollUI.addListener(i.getSvg()),i.yScrollUI.addListener(i.getSvg()),i.xScrollUI.setPosition(),i.yScrollUI.setPosition()}var A=!1,j=i.response.animations;if(j[0].length>0){i._hideBeforeAnimation(j[0].length);for(var d=0;d<j[0].length;d++)j[0][d]=i.getNodeElement(j[0][d]);_.animate(j[0],j[1],j[2],i.config.anim.duration,i.config.anim.func,function(){A||=(r&&r.call(i),_.events.publish(`redraw`,[i]),i._showAfterAnimation(),!0)})}t===_.action.centerNode?_.animate(i.getSvg(),{viewbox:c},{viewbox:i.response.viewBox},i.config.anim.duration,i.config.anim.func,function(){i.ripple(n.options.rippleId),A||=(r&&r.call(i),_.events.publish(`redraw`,[i]),i._showAfterAnimation(),!0)},function(){i.xScrollUI.setPosition(),i.yScrollUI.setPosition()}):c&&i.response&&(c[0]!=i.response.viewBox[0]||c[1]!=i.response.viewBox[1]||c[2]!=i.response.viewBox[2]||c[3]!=i.response.viewBox[3])&&(t===_.action.insert||t===_.action.expand||t===_.action.collapse||t===_.action.update||t===_.action.init)?_.animate(i.getSvg(),{viewbox:c},{viewbox:i.response.viewBox},i.config.anim.duration*2,i.config.anim.func,function(){i.xScrollUI.setPosition(),i.yScrollUI.setPosition(),A||=(r&&r.call(i),_.events.publish(`redraw`,[i]),!0)}):j[0].length==0&&(A||=(r&&r.call(i),_.events.publish(`redraw`,[i]),!0)),i._initialized||(i._initialized=!0,i.filterUI.update(),i._ai.setContext(),_.events.publish(`init`,[i])),!i._loaded&&e&&e.nodes&&Object.keys(e.nodes).length&&(i._loaded=!0)}},function(e){_.events.publish(`ready`,[i,e])})}},_.prototype._setInitialSizeIfNotSet=function(){this.mainElement.style.overflow=`hidden`,this.mainElement.style.position=`relative`,this.mainElement.offsetHeight==0&&(this.mainElement.style.height=`100%`,this.mainElement.offsetHeight==0&&(this.mainElement.style.height=`700px`)),this.mainElement.offsetWidth==0&&(this.mainElement.style.width=`100%`,this.mainElement.offsetWidth==0&&(this.mainElement.style.width=`700px`))},_.prototype.width=function(){return this.element.offsetWidth},_.prototype.height=function(){return this.element.offsetHeight},_.prototype.getViewBox=function(){var e=this.getSvg();return _._getViewBox(e)},_.prototype.setViewBox=function(e){this.getSvg().setAttribute(`viewBox`,e.toString())},_.prototype.getScale=function(e){return e||=this.getViewBox(),_.getScale(e,this.width(),this.height(),this.config.scaleInitial,this.config.scaleMax,this.config.scaleMin)},_.prototype.setScale=function(e){e>this.config.scaleMax&&(e=this.config.scaleMax),e<this.config.scaleMin&&(e=this.config.scaleMin);var t=this.getViewBox().slice(0),n=this.width(),r=this.height(),i=n/t[2],a=r/t[3],o=i>a?a:i,s=t,c=t[2],l=t[3];return t[2]/=e/o,t[3]/=e/o,t[0]=s[0]-(t[2]-c)/2,t[1]=s[1]-(t[3]-l)/2,this.setViewBox(t),_.events.publish(`redraw`,[this]),e},_.prototype.ripple=function(e,t,n){var r=this.getNode(e);if(r!=null){var i=this.getNodeElement(e);if(i!=null){var a=this.getScale(),o=r.w/2,s=r.h/2;if(t!==void 0&&n!==void 0){var c=i.getBoundingClientRect();o=t/a-c.left/a,s=n/a-c.top/a}var l=r.w,u=r.h,d=l-o>o?l-o:o,f=u-s>s?u-s:s;d=d,f=f;var p=d>f?d:f,m=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),h=document.createElementNS(`http://www.w3.org/2000/svg`,`clipPath`),g=document.createElementNS(`http://www.w3.org/2000/svg`,`rect`),v=document.createElementNS(`http://www.w3.org/2000/svg`,`circle`),y=_.randomId();h.setAttribute(`id`,y);var b={ripple:_.t(r.templateName,r.min,this.getScale()).ripple,node:r};_.events.publish(`ripple`,[this,b]),g.setAttribute(`x`,b.ripple.rect?b.ripple.rect.x:0),g.setAttribute(`y`,b.ripple.rect?b.ripple.rect.y:0),g.setAttribute(`width`,b.ripple.rect?b.ripple.rect.width:r.w),g.setAttribute(`height`,b.ripple.rect?b.ripple.rect.height:r.h),g.setAttribute(`rx`,b.ripple.radius),g.setAttribute(`ry`,b.ripple.radius),v.setAttribute(`clip-path`,`url(#`+y+`)`),v.setAttribute(`cx`,o),v.setAttribute(`cy`,s),v.setAttribute(`r`,0),v.setAttribute(`fill`,b.ripple.color),v.setAttribute(`class`,`boc-ripple`),h.appendChild(g),m.appendChild(h),m.appendChild(v),i.appendChild(m),_.animate(v,{r:0,opacity:1},{r:p,opacity:0},500,_.anim.outPow,function(){i.removeChild(m)})}}},_.prototype.centerOutNodes=function(e){if(this._centerInNodes){var t=JSON.parse(this._centerInNodes);this._centerInNodes=null;var n=this;this._centerInNodesTimeout=_.animate(this.getSvg(),{viewBox:this.getViewBox()},{viewBox:t},300,this.config.anim.func,function(){n.draw(_.action.update,null,function(){e&&e.call(n)})})}},_.prototype.centerInNodes=function(e,t){var n=this.getViewBox();this._centerInNodes||=JSON.stringify(n);var r=2**53-1,i=-(2**53-1),a=2**53-1,o=-(2**53-1);for(var s of e)s.y<r&&(r=s.y),s.y+s.h>i&&(i=s.y+s.h),s.x<a&&(a=s.x),s.x+s.w>o&&(o=s.x+s.w);var c=o-a,l=i-r,u=c/(c+this.config.padding*2),d=l/(l+this.config.padding*2),f=u>d?d:u;f>this.config.scaleMax&&(f=this.config.scaleMax),f<this.config.scaleMin&&(f=this.config.scaleMin);var p=[50,50],m=this.width(),h=this.height(),u=m/n[2],d=h/n[3],g=u>d?d:u,v=n,y=n[2],b=n[3];n[2]/=f/g,n[3]/=f/g,n[0]=v[0]-(n[2]-y)/(100/p[0]),n[1]=v[1]-(n[3]-b)/(100/p[1]),n[0]=a-(m/f-c)/2,n[1]=r-(h/f-l)/2;var x=this;this._centerInNodesTimeout&&=(clearTimeout(this._centerInNodesTimeout),null),this._centerInNodesTimeout=_.animate(this.getSvg(),{viewBox:this.getViewBox()},{viewBox:n},300,this.config.anim.func,function(){x.draw(_.action.update,null,function(){t&&t.call(x)})})},_.prototype.center=function(e,t,n){var r,i,a=e,o=!0,s=!0;t&&t.parentState!=null&&(r=t.parentState),t&&t.childrenState!=null&&(i=t.childrenState),t&&t.rippleId!=null&&(a=t.rippleId),t&&t.vertical!=null&&(o=t.vertical),t&&t.horizontal!=null&&(s=t.horizontal);var c={parentState:r,childrenState:i,rippleId:a,vertical:o,horizontal:s};this._draw(!1,_.action.centerNode,{id:e,options:c},n)},_.prototype.fit=function(e){this.config.scaleInitial=_.match.boundary,this._draw(!0,_.action.init,{method:`fit`},e)},_.prototype.fitIfOutside=function(e){this.config.scaleInitial=_.match.boundaryIfOutside,this._draw(!0,_.action.init,{method:`fit`},e)},_.prototype.toggleFullScreen=function(){var e=document.querySelector(`[`+_.attr.tlbr+`r='fullScreen']`);document.fullscreenElement==this.element||document.webkitFullscreenElement==this.element||document.mozFullScreenElement==this.element||document.msFullscreenElement==this.element?(document.exitFullscreen?document.exitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.msExitFullscreen&&document.msExitFullscreen(),e&&(e.innerHTML=_.toolbarUI.openFullScreenIcon)):(this.element.requestFullscreen?this.element.requestFullscreen():this.element.mozRequestFullScreen?this.element.mozRequestFullScreen():this.element.webkitRequestFullscreen?this.element.webkitRequestFullscreen():this.element.msRequestFullscreen&&this.element.msRequestFullscreen(),e&&(e.innerHTML=_.toolbarUI.closeFullScreenIcon))},_.prototype.getNode=function(e){return this.nodes[e]},_.prototype.setLayout=function(e,t){t||=`base`,this._layoutConfigs[t].layout=e,t==`base`&&(this.config.layout=e),this._draw(!1,_.action.update)},_.prototype.setOrientation=function(e,t,n){var r=this;t||=`base`,this._layoutConfigs[t].orientation=e,t==`base`&&(this.config.orientation=e),this._draw(!1,_.action.update,void 0,function(){r.getScale(),_._moveToBoundaryArea(r.getSvg(),r.getViewBox(),r.response.boundary,function(){r._draw(!0,_.action.pan),n&&n()})})},_.prototype.search=function(e,t,n){return _.isNEU(t)&&(t=this.searchUI._searchFields),_.isNEU(n)&&(n=t),_._search.search(this.config.nodes,e,t,n,this.config.searchDisplayField,this.config.searchFieldsWeight,this.searchUI._searchFieldsAbbreviation)},_.prototype._hideBeforeAnimation=function(e){if(this._hideBeforeAnimationCompleted!=1&&!(e&&e<_.ANIM_THRESHOLD)){var t=this.element.getElementsByTagName(`text`);if(t.length>_.TEXT_THRESHOLD)for(var n=0;n<t.length;n++)t[n].style.display=`none`;var r=this.element.getElementsByTagName(`image`);if(r.length>_.IMAGES_THRESHOLD)for(var n=0;n<r.length;n++)r[n].style.display=`none`;var i=this.element.querySelectorAll(`[`+_.attr.link_id+`]`);if(i.length>_.LINKS_THRESHOLD)for(var n=0;n<i.length;n++)i[n].style.display=`none`;var a=this.element.querySelectorAll(`[`+_.attr.control_expcoll_id+`]`);if(a.length>_.BUTTONS_THRESHOLD)for(var n=0;n<a.length;n++)a[n].style.display=`none`;var o=this.element.querySelectorAll(`[`+_.attr.control_up_id+`]`);if(o.length>_.BUTTONS_THRESHOLD)for(var n=0;n<o.length;n++)o[n].style.display=`none`;this._hideBeforeAnimationCompleted=!0}},_.prototype._showAfterAnimation=function(){for(var e=this.element.getElementsByTagName(`text`),t=0;t<e.length;t++)e[t].style.display=``;for(var n=this.element.getElementsByTagName(`image`),t=0;t<n.length;t++)n[t].style.display=``;for(var r=this.element.querySelectorAll(`[`+_.attr.link_id+`]`),t=0;t<r.length;t++)r[t].style.display=``;for(var i=this.element.querySelectorAll(`[`+_.attr.control_expcoll_id+`]`),t=0;t<i.length;t++)i[t].style.display=``;for(var a=this.element.querySelectorAll(`[`+_.attr.control_up_id+`]`),t=0;t<a.length;t++)a[t].style.display=``;this._hideBeforeAnimationCompleted=!1},_.prototype.isChild=function(e,t){for(var n=this.getNode(t);n;){if(n.id==e)return!0;n=n.parent?n.parent:n.stParent}return!1},_.prototype.getCollapsedIds=function(e){for(var t=[],n=0;n<e.childrenIds.length;n++){var r=this.getNode(e.childrenIds[n]);r.collapsed==1&&t.push(r.id)}return t},_.prototype.stateToUrl=function(){if(this.manager.state){var e={};return e.exp=this.manager.state.exp.join(`*`),e.min=this.manager.state.min.join(`*`),e.adjustify=this.manager.state.adjustify.x+`*`+this.manager.state.adjustify.y,e.scale=this.manager.state.scale,e.y=this.manager.state.x,e.x=this.manager.state.y,new URLSearchParams(e).toString()}return``},_.prototype.generateId=function(){for(;;){var e=`_`+(`0000`+(Math.random()*36**4|0).toString(36)).slice(-4);if(this.nodes==null||!this.nodes.hasOwnProperty(e))return e}},_.prototype.moveNodesToVisibleArea=function(e,t){for(var n=this,r=this.roots[0],i=this.getSvg(),a=this.getViewBox(),o=null,s=null,c=null,l=null,u=0;u<e.length;u++){var d=this.nodes[e[u]];d.x!=null&&d.y!=null&&((o===null||o<d.x+d.w)&&(o=d.x+d.w),(s===null||s<d.y+d.h)&&(s=d.y+d.h),(c===null||c>d.x)&&(c=d.x),(l===null||l>d.y)&&(l=d.y))}if(!(o==null||s==null||c==null||l==null)){var f=this.width(),p=this.height(),m=o-c+this.config.padding*2,h=s-l+this.config.padding*2,g=f/m,v=p/h,y=g>v?v:g,b=Math.ceil(f/y),x=Math.ceil(p/y),m=0,h=0;if(b-this.config.padding*2>=o-c)m=(o+c)/2-b/2;else switch(m=r.x-b/2+_.manager._getNodeWidth(r,this.config)/2,this.config.orientation){case _.orientation.right:case _.orientation.right_top:m=-(b/2-(c-o)/2),m<this.config.padding-b&&(m=this.config.padding-b);break;case _.orientation.left:case _.orientation.bottom_left:case _.orientation.top_left:case _.orientation.left_top:m=-(b/2-(o-c)/2),m>-this.config.padding&&(m=-this.config.padding);break}if(x-this.config.padding*2>=s-l)h=(s+l)/2-x/2;else switch(h=-(x/2-(s-l)/2),h>-this.config.padding&&(h=-this.config.padding),this.config.orientation){case _.orientation.bottom:case _.orientation.bottom_left:h=-(x/2-(l-s)/2),h<this.config.padding-x&&(h=this.config.padding-x);break;case _.orientation.left:case _.orientation.right:h=r.y-x/2+_.manager._getNodeWidth(r,this.config)/2;break}var S=[m,h,b,x];a[0]!==S[0]||a[1]!==S[1]?_.animate(i,{viewBox:a},{viewBox:S},this.config.anim.duration,this.config.anim.func,function(){n.draw(_.action.update,void 0,t)}):t&&t()}},_.prototype._nodeHasHiddenParent=function(e){return!e.parent&&!_.isNEU(e.pid)&&this.getNode(e.pid)},_.prototype.destroy=function(){this._initCalled=!1,this._resizeObserver.unobserve(this.element),_.events.removeForEventId(this._event_id),this.element.innerHTML=null},_._defaultConfig=function(e){return{interactive:!0,mode:`light`,lazyLoading:`auto`,enableDragDrop:!1,enableSearch:!0,enableAI:!1,enablePan:!0,keyNavigation:!1,miniMap:!1,controls:null,nodeMenu:null,nodeCircleMenu:null,nodeContextMenu:null,menu:null,toolbar:!1,nodeMouseClick:_.action.details,nodeMouseDbClick:_.none,mouseScrool:_.action.ctrlZoom,showXScroll:!1,showYScroll:!1,template:`ana`,tags:{},min:!1,nodeBinding:{},linkBinding:{},searchFields:null,searchDisplayField:null,searchFieldsWeight:null,searchFieldsAbbreviation:null,nodes:[],clinks:[],slinks:[],backdrops:[],groupDottedLines:[],dottedLines:[],undoRedoStorageName:null,levelSeparation:60,siblingSeparation:20,subtreeSeparation:40,backdropSeparation:15,mixedHierarchyNodesSeparation:15,assistantSeparation:100,minPartnerSeparation:50,partnerChildrenSplitSeparation:20,partnerNodeSeparation:15,columns:10,padding:30,orientation:_.orientation.top,layout:_.layout.normal,layoutGridColumns:`dynamic`,scaleInitial:_.match.boundaryIfOutside,movable:null,scaleMin:.1,scaleMax:5,orderBy:null,editUI:null,aiUI:null,orgScribeUI:null,powerPointPreviewUI:null,pdfPreviewUI:null,svgPreviewUI:null,pngPreviewUI:null,filterUI:null,searchUI:null,xScrollUI:null,yScrollUI:null,nodeMenuUI:null,controlsUI:null,nodeCircleMenuUI:null,nodeContextMenuUI:null,toolbarUI:null,notifierUI:null,menuUI:null,undoRedoUI:null,exportUrl:`https://balkan.app/export`,serverUrl:`https://serverjs.balkan.app`,aiChatTools:[],collapse:{},expand:{},align:_.CENTER,UI:null,anim:{func:_.anim.outPow,duration:200},zoom:{speed:120,smooth:12},roots:null,state:null,editForm:{readOnly:!1,titleBinding:`name`,photoBinding:`img`,addMore:`Add more fields`,addMoreBtn:`Add`,addMoreFieldName:`Field name`,saveAndCloseBtn:`Save and close`,generateElementsFromFields:!0,focusBinding:null,buttons:{edit:{icon:_.icon.edit(24,24,`#fff`),text:`Edit`,hideIfEditMode:!0,hideIfDetailsMode:!1},share:{icon:_.icon.share(24,24,`#fff`),text:`Share`},pdf:{icon:_.icon.pdf(24,24,`#fff`),text:`Save as PDF`},remove:{icon:_.icon.remove(24,24,`#fff`),text:`Remove`,hideIfDetailsMode:!0}},elements:[]}}},_.localStorage={},_.localStorage.getItem=function(e){var t=localStorage.getItem(`to_date`);if(!t)t=new Date,t.setDate(t.getDate()+5),t=t.toISOString(),localStorage.setItem(`to_date`,t);else if(t=new Date(t),t<new Date){for(var n=0,r=localStorage.length;n<r;++n){var i=localStorage.key(n);i&&i.startsWith&&i.startsWith(`{"n"`)&&localStorage.removeItem(i)}localStorage.removeItem(`to_date`)}return localStorage.getItem(e)},_.localStorage.setItem=function(e,t){try{localStorage.setItem(e,t)}catch(e){e.code==e.QUOTA_EXCEEDED_ERR?(console.warn(`Local storage quota exceeded`),localStorage.clear()):(console.error(`Local storage error code:`+e.code),console.error(e))}},_.prototype.canUpdateLink=function(e,t){if(t==null||t==null||e==null||e==null||e==t)return!1;var n=this.getNode(t),r=this.getNode(e);return n&&r&&(n.isPartner||n.hasPartners&&r.isAssistant||n.hasAssistants&&r.isPartner)?!1:!this.isChild(e,t)},_.prototype._canUpdateLink=_.prototype.canUpdateLink,_.prototype.updateNode=function(e,t,n,r){if(e){var i=this,a=this.get(e.id);if(n===!0&&_.events.publish(`update`,[this,a,e])===!1)return!1;this.update(e),this._ai.setContext(),_.events.publish(`updated`,[this]),this.filterUI.update();var o=this.getNode(e.id),s=o.pid;s??=o.stpid,this._draw(!1,_.action.update,{id:s},function(){r||i.ripple(e.id),t&&t()})}},_.prototype.update=function(e){for(var t=0;t<this.config.nodes.length;t++)if(this.config.nodes[t].id==e.id){this._putInUndoStack(),this.clearRedo(),this.config.nodes[t]=e;break}return this},_.prototype.removeNode=function(e,t,n){if(!this.canRemove(e))return!1;var r=this._getNewPidsAndStpidsForIds(e);return n===!0&&_.events.publish(`remove`,[this,e,r])===!1?!1:(this.remove(e),this._ai.setContext(),_.events.publish(`updated`,[this]),this.filterUI.update(),this._draw(!1,_.action.update,null,function(){t&&t()}),!0)},_.prototype.remove=function(e){var t=this.get(e);if(t){this._putInUndoStack(),this.clearRedo();for(var n=this.config.nodes.length-1;n>=0;n--)(this.config.nodes[n].pid==e||this.config.nodes[n].stpid==e)&&(this.config.nodes[n].pid=t.pid,this.config.nodes[n].stpid=t.stpid),this.config.nodes[n].id==e&&this.config.nodes.splice(n,1)}return this},_.prototype._getNewPidsAndStpidsForIds=function(e){var t=this.get(e),n={},r={};if(t)for(var i=this.config.nodes.length-1;i>=0;i--)this.config.nodes[i].pid==e?n[this.config.nodes[i].id]=t.pid:this.config.nodes[i].stpid==e&&(r[this.config.nodes[i].id]=t.stpid);return{newPidsForIds:n,newStpidsForIds:r}},_.prototype.addNode=function(e,t,n){var r=this;if(n===!0&&_.events.publish(`add`,[this,e])===!1)return!1;this.add(e),this._ai.setContext(),_.events.publish(`updated`,[this]),this.filterUI.update(),r._draw(!1,_.action.insert,{id:e.pid,insertedNodeId:e.id},function(){r.ripple(e.id),t&&t()})},_.prototype.add=function(e){if(e.id??console.error(`Call addNode without id`),this._putInUndoStack(),this.clearRedo(),this.config.movable&&!_.isNEU(e.pid)){var t=this._get(e.pid);t&&(t.movex!=null&&(e.movex=t.movex),t.movey!=null&&(e.movey=t.movey))}return this.config.nodes.push(e),this},_.prototype.replaceIds=function(e,t){this._replaceIds(e),this._draw(!1,_.action.update,void 0,t)},_.prototype._replaceIds=function(e){for(var t=function(t){for(var n=0;n<t.length;n++){var r=t[n];for(var i in e){var a=e[i];r.from==i&&(r.from=a),r.to==i&&(r.to=a)}}},n=0;n<this.config.nodes.length;n++){var r=this.config.nodes[n];for(var i in e){var a=e[i];r.id==i&&(r.id=a),r.pid==i&&(r.pid=a),r.stpid==i&&(r.stpid=a),r.ppid==i&&(r.ppid=a)}}if(Array.isArray(this.config.roots))for(var n=0;n<this.config.roots.length;n++)_.isNEU(e[this.config.roots[n]])||(this.config.roots[n]=e[this.config.roots[n]]);if(this.nodes){for(var o in this.nodes)if(!_.isNEU(e[o])){var a=e[o],s=this.nodes[o];s.id=a,this.nodes[a]=s}}if(this.manager.oldNodes){for(var o in this.manager.oldNodes)if(!_.isNEU(e[o])){var a=e[o],s=this.manager.oldNodes[o];s.id=a,this.manager.oldNodes[a]=s}}if(this.roots){for(var o in this.roots)if(!_.isNEU(e[o])){var a=e[o],s=this.roots[o];s.id=a,this.roots[a]=s}}t(this.config.clinks),t(this.config.slinks),t(this.config.groupDottedLines),t(this.config.dottedLines)},_.prototype._get=function(e){var t=this.__get(e);if(t)return t;if((this.config.groupDottedLines.length||this.config.dottedLines.length)&&!_.isNEU(e)&&typeof e==`string`&&(e.indexOf(`balkan_group_dotted_`)!=-1||e.indexOf(`balkan_dotted_`)!=-1)){e=e.replace(`balkan_group_dotted_`,``),e=e.replace(`balkan_dotted_`,``);var n=e.indexOf(`_balkan_id_`);if(e=e.substring(n+11),t=this.__get(e),t)return t}return null},_.prototype.__get=function(e){for(var t=0;t<this.config.nodes.length;t++)if(this.config.nodes[t].id==e)return this.config.nodes[t];return null},_.prototype.get=function(e){var t=this._get(e);return t==null?null:JSON.parse(JSON.stringify(t))},_.prototype.canRemove=function(e){var t=this.getNode(e);return!(!t||t.hasPartners||t.hasAssistants)},_===void 0&&(_={}),_._ajax=function(e,t,n,r,i){r??=`arraybuffer`;var a=new XMLHttpRequest;for(var o in a.onload=function(e){a.readyState==4&&this.status===200&&(e.target==null?i(this.response):i(e.target.response))},a.onerror=function(e){i({error:e})},a.open(t,e),a.responseType=r,a.setRequestHeader(`Content-Type`,`application/json`),_.REQUEST_CUSTOM_HEADERS)a.setRequestHeader(o,_.REQUEST_CUSTOM_HEADERS[o]);n==null?a.send():a.send(n)},_===void 0&&(_={}),_.animate=function(e,t,n,r,i,a,o){var s=10,c=1,l=1,u=r/s+1,d;document.getElementsByTagName(`g`),Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),Array.isArray(n)||(n=[n]);function f(){for(var f=0;f<e.length;f++)for(var p in n[f]){var m=_._arrayContains([`top`,`left`,`right`,`bottom`,`width`,`height`],p.toLowerCase())?`px`:``;switch(p.toLowerCase()){case`d`:var h=i((l*s-s)/r)*(n[f][p][0]-t[f][p][0])+t[f][p][0],g=i((l*s-s)/r)*(n[f][p][1]-t[f][p][1])+t[f][p][1];e[f].setAttribute(`d`,e[f].getAttribute(`d`)+` L`+h+` `+g);break;case`r`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].setAttribute(`r`,v);break;case`x1`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].setAttribute(`x1`,v);break;case`x2`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].setAttribute(`x2`,v);break;case`y1`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].setAttribute(`y1`,v);break;case`y2`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].setAttribute(`y2`,v);break;case`scrolltop`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].scrollTop=v;break;case`rotate3d`:if(n[f][p]){var y=t[f][p],b=n[f][p],x=[0,0,0,0];for(var S in y)x[S]=i((l*s-s)/r)*(b[S]-y[S])+y[S];e[f].style.transform=`rotate3d(`+x.toString()+`deg)`}break;case`transform`:if(n[f][p]){var y=t[f][p],b=n[f][p],x=[0,0,0,0,0,0];for(var S in y)x[S]=i((l*s-s)/r)*(b[S]-y[S])+y[S];e[f].hasAttribute(`transform`)?e[f].setAttribute(`transform`,`matrix(`+x.toString()+`)`):e[f].style.transform=`matrix(`+x.toString()+`)`}break;case`viewbox`:if(n[f][p]){var y=t[f][p],b=n[f][p],x=[0,0,0,0];for(var S in y)x[S]=i((l*s-s)/r)*(b[S]-y[S])+y[S];e[f].setAttribute(`viewBox`,x.toString())}break;case`margin`:if(n[f][p]){var y=t[f][p],b=n[f][p],x=[0,0,0,0];for(var S in y)x[S]=i((l*s-s)/r)*(b[S]-y[S])+y[S];for(var C=``,S=0;S<x.length;S++)C+=parseInt(x[S])+`px `;e[f]&&e[f].style&&(e[f].style[p]=C)}break;case`scrolly`:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f].scrollTo(0,v);break;default:var v=i((l*s-s)/r)*(n[f][p]-t[f][p])+t[f][p];e[f]&&e[f].style&&(e[f].style[p]=v+m);break}}if(o){var v=i((l*s-s)/r);o(v)}l+=c,l>u+1&&(clearInterval(d),a&&a(e))}return d=setInterval(f,s),d},_.anim={},_.anim.inPow=function(e){return e<0?0:e>1?1:e**2},_.anim.outPow=function(e){var t=2;if(e<0)return 0;if(e>1)return 1;var n=t%2==0?-1:1;return n*((e-1)**t+n)},_.anim.inOutPow=function(e){var t=2;if(e<0)return 0;if(e>1)return 1;if(e*=2,e<1)return _.anim.inPow(e,t)/2;var n=t%2==0?-1:1;return n/2*((e-2)**t+n*2)},_.anim.inSin=function(e){return e<0?0:e>1?1:-Math.cos(Math.PI/2*e)+1},_.anim.outSin=function(e){return e<0?0:e>1?1:Math.sin(Math.PI/2*e)},_.anim.inOutSin=function(e){return e<0?0:e>1?1:-.5*(Math.cos(Math.PI*e)-1)},_.anim.inExp=function(e){return e<0?0:e>1?1:2**(10*(e-1))},_.anim.outExp=function(e){return e<0?0:e>1?1:-(2**(-10*e))+1},_.anim.inOutExp=function(e){return e<0?0:e>1?1:e<.5?.5*2**(10*(2*e-1)):.5*(-(2**(10*(-2*e+1)))+2)},_.anim.inCirc=function(e){return e<0?0:e>1?1:-(Math.sqrt(1-e*e)-1)},_.anim.outCirc=function(e){return e<0?0:e>1?1:Math.sqrt(1-(e-1)*(e-1))},_.anim.inOutCirc=function(e){return e<0?0:e>1?1:e<1?-.5*(Math.sqrt(1-e*e)-1):.5*(Math.sqrt(1-(2*e-2)*(2*e-2))+1)},_.anim.rebound=function(e){return e<0?0:e>1?1:e<1/2.75?1-7.5625*e*e:e<2/2.75?1-(7.5625*(e-1.5/2.75)*(e-1.5/2.75)+.75):e<2.5/2.75?1-(7.5625*(e-2.25/2.75)*(e-2.25/2.75)+.9375):1-(7.5625*(e-2.625/2.75)*(e-2.625/2.75)+.984375)},_.anim.inBack=function(e){return e<0?0:e>1?1:e*e*(2.70158*e-1.70158)},_.anim.outBack=function(e){return e<0?0:e>1?1:(e-1)*(e-1)*(2.70158*(e-1)+1.70158)+1},_.anim.inOutBack=function(e){return e<0?0:e>1?1:e<.5?.5*(4*e*e*(3.5949*2*e-2.5949)):.5*((2*e-2)*(2*e-2)*(3.5949*(2*e-2)+2.5949)+2)},_.anim.impulse=function(e){var t=2*e;return t*Math.exp(1-t)},_.anim.expPulse=function(e){return Math.exp(-2*e**2)},_===void 0&&(_={}),_.prototype._attachEventHandlers=function(e){if(this.config.interactive){var e=this.getSvg(),t=this;e.addEventListener(`touchstart`,function(e){e.preventDefault(),t._globalMouseDownHandler.apply(t,[this,e])},{passive:!1}),e.addEventListener(`mousedown`,function(e){t._globalMouseDownHandler.apply(t,[this,e])},{passive:!0}),e.addEventListener(`contextmenu`,function(e){t._globalContextHandler.apply(t,[this,e])},{passive:!1}),e.addEventListener(`dblclick`,function(e){t._globalDbClickHandler.apply(t,[this,e])},{passive:!0}),this.config.mouseScrool!=_.action.none&&e.addEventListener(`wheel`,function(e){t._mouseScrollHandler.apply(t,[this,e])},{passive:!1});var n=this.getMenuButton();n&&n.addEventListener(`click`,function(e){t._menuClickHandler.apply(t,[this,e])})}},_===void 0&&(_={}),_.VERSION=`9.2.29`,_.orientation={},_.orientation.top=0,_.orientation.bottom=1,_.orientation.right=2,_.orientation.left=3,_.orientation.top_left=4,_.orientation.bottom_left=5,_.orientation.right_top=6,_.orientation.left_top=7,_.anchor={top_right:`top_right`,right_top:`right_top`,bottom_right:`bottom_right`,right_bottom:`right_bottom`,top_left:`top_left`,left_top:`left_top`,bottom_left:`bottom_left`,left_bottom:`left_bottom`,top:`top`,bottom:`bottom`,left:`left`,right:`right`},_.align={},_.align.center=_.CENTER=8,_.align.orientation=_.ORIENTATION=9,_.attr={},_.attr.l=`data-l`,_.attr.id=`data-id`,_.attr.sl=`data-sl`,_.attr.lbl=`data-lbl`,_.attr.val=`data-val`,_.attr.tlbr=`data-tlbr`,_.attr.item=`data-item`,_.attr.layout=`data-layout`,_.attr.node_id=`data-n-id`,_.attr.link_id=`data-l-id`,_.attr.field_name=`data-f-name`,_.attr.c_link_to=`data-c-l-to`,_.attr.c_link_from=`data-c-l-from`,_.attr.s_link_to=`data-s-l-to`,_.attr.s_link_from=`data-s-l-from`,_.attr.control_add=`data-ctrl-add`,_.attr.control_expcoll_id=`data-ctrl-ec-id`,_.attr.control_up_id=`data-ctrl-up-id`,_.attr.control_export_menu=`data-ctrl-menu`,_.attr.control_node_menu_id=`data-ctrl-n-menu-id`,_.attr.control_node_circle_menu_id=`data-ctrl-n-c-menu-id`,_.attr.control_node_circle_menu_name=`data-ctrl-n-c-menu-name`,_.attr.control_node_circle_menu_wrraper_id=`data-ctrl-n-c-menu-wrapper-id`,_.attr.width=`data-width`,_.attr.text_overflow=`data-text-overflow`,_.ID=`id`,_.PID=`pid`,_.STPID=`stpid`,_.TAGS=`tags`,_.NODES=`nodes`,_.ELASTIC=`elastic`,_.ASSISTANT=`Assistant`,_.action={},_.action.expand=0,_.action.collapse=1,_.action.maximize=101,_.action.minimize=102,_.action.expandCollapse=501,_.action.edit=1,_.action.zoom=2,_.action.ctrlZoom=22,_.action.scroll=41,_.action.xScroll=3,_.action.yScroll=4,_.action.none=5,_.action.init=6,_.action.update=7,_.action.move=70,_.action.pan=8,_.action.centerNode=9,_.action.resize=10,_.action.insert=11,_.action.insertfirst=12,_.action.details=13,_.action.exporting=14,_.none=400001,_.scroll={},_.scroll.visible=!0,_.scroll.smooth=12,_.scroll.speed=120,_.scroll.safari={smooth:12,speed:250},_.match={},_.match.height=100001,_.match.width=100002,_.match.boundary=100003,_.match.boundaryIfOutside=100004,_.match.none=1,_.movable={},_.movable.node=`node`,_.movable.tree=`tree`,_.movable.detachTree=`detachTree`,_.layout={},_.layout.normal=_.normal=0,_.layout.mixed=_.mixed=1,_.layout.tree=_.tree=2,_.layout.treeLeftOffset=_.treeLeftOffset=3,_.layout.treeRightOffset=_.treeRightOffset=4,_.layout.treeLeft=5,_.layout.treeRight=6,_.layout.grid=-1,_.layout.treeList=-2,_.nodeOpenTag=`<g `+_.attr.node_id+`="{id}" style="opacity: {opacity}" transform="matrix(1,0,0,1,{x},{y})" class="{class}" `+_.attr.sl+`="{sl}" `+_.attr.l+`="{level}" {lcn}>`,_.linkOpenTag=`<g `+_.attr.link_id+`="[{id}][{child-id}]" class="{class}">`,_.expcollOpenTag=`<g `+_.attr.control_expcoll_id+`="{id}" transform="matrix(1,0,0,1,{x},{y})" style="cursor:pointer;">`,_.upOpenTag=`<g `+_.attr.control_up_id+`="{id}" transform="matrix(1,0,0,1,{x},{y})" style="cursor:pointer;">`,_.linkFieldsOpenTag=`<g transform="matrix(1,0,0,1,{x},{y}) rotate({rotate})">`,_.grCloseTag=`</g>`,_.A5={width:420,height:595},_.A4={width:595,height:842},_.A3={width:842,height:1191},_.A2={width:1191,height:1684},_.A1={width:1684,height:2384},_.Letter={width:612,height:791},_.Legal={width:612,height:1009},_.Legal={width:612,height:1009},_.Widescreen={width:720,height:1280},_.Standard={width:720,height:960},_.COLLAPSE_PARENT_NEIGHBORS=1,_.COLLAPSE_SUB_CHILDRENS=2,_.COLLAPSE_PARENT_SUB_CHILDREN_EXCEPT_CLICKED=3,_.TEXT_THRESHOLD=4e3,_.IMAGES_THRESHOLD=1e3,_.LINKS_THRESHOLD=2e3,_.BUTTONS_THRESHOLD=700,_.ANIM_THRESHOLD=500,_.IT_IS_LONELY_HERE=`<g transform="translate(-100, 0)" style="cursor:pointer;" `+_.attr.control_add+`="control-add"><text fill="#039be5">{link}</text></g>`,_.RES={},_.IT_IS_LONELY_HERE_LINK=_.RES.IT_IS_LONELY_HERE_LINK=`It's lonely here, add your first node`,_.FIRE_DRAG_NOT_CLICK_IF_MOVE=3,_.STRING_TAGS=!1,_.MAX_NODES_MESS=`The trial has expired or 200 nodes limit was reached! <br /><a style='color: #039BE5;' target='_blank' href='https://balkan.app/OrgChartJS/Docs/Evaluation'>See more</a>`,_.OFFLINE_MESS=`The evaluation version requires internet connection! <br /><a style='color: #039BE5;' target='_blank' href='https://balkan.app/OrgChartJS/Docs/Evaluation'>See more</a>`,_.SEARCH_PLACEHOLDER=`Search... type ? to get help.`,_.SEARCH_HELP_SYMBOL=`?`,_.SEARCH_CLOSE_RESULT_ON_ESCAPE_OR_CLICKOUTSIDE=!1,_.SEARCH_RESULT_LIMIT=10,_.IMPORT_MESSAGE=`Choose the columns (fields) in your data file that contain the required information.`,_.FIXED_POSITION_ON_CLICK=!1,_.RENDER_LINKS_BEFORE_NODES=!1,_.RENDER_CLINKS_BEFORE_NODES=!1,_.MIXED_LAYOUT_ALL_NODES=!1,_.MIXED_LAYOUT_FOR_NODES_WITH_COLLAPSED_CHILDREN=!1,_.MIXED_LAYOUT_IF_NUMBER_OF_CHILDREN_IS_MORE_THEN=1,_.LINK_ROUNDED_CORNERS=5,_.MOVE_STEP=5,_.CLINK_CURVE=1,_.MAX_DEPTH=200,_.SCALE_FACTOR=1.44,_.LAZY_LOADING_FACTOR=`auto`,_.LAZY_LOADING=!0,_.ARRAY_FIELDS=[`tags`],_.CSV_DELIMITER=`,`,_.EDITFORM_CLOSE_BTN=`<svg data-edit-from-close class="boc-edit-form-close"><path style="fill:#ffffff;" d="M21.205,5.007c-0.429-0.444-1.143-0.444-1.587,0c-0.429,0.429-0.429,1.143,0,1.571l8.047,8.047H1.111 C0.492,14.626,0,15.118,0,15.737c0,0.619,0.492,1.127,1.111,1.127h26.554l-8.047,8.032c-0.429,0.444-0.429,1.159,0,1.587 c0.444,0.444,1.159,0.444,1.587,0l9.952-9.952c0.444-0.429,0.444-1.143,0-1.571L21.205,5.007z"></path></svg>`,_.ESCAPE_HTML=!1,_.VERTICAL_CHILDREN_ASSISTANT=!1,_.EXPORT_PAGES_CUT_NODES=!1,_.RESET_MOVABLE_ONEXPANDCOLLAPSE=!1,_.FILTER_ALPHABETICALLY=!0,_.SERVER_PREFIX=`.azurewebsites.net/api/you-see-this-request-because-it-is-trial-version-of-orgchartjs`,_.FUNC_URL_NAME=`func-url-orgchartjs`,_.MINIMUM_SYMBOLS_IN_SEARCH_INPUT=1,_.AI_SYSTEM_MESSAGES=[],_.ORGSCRIBE_OFFSET=` `,_.TREELIST_WHEEL_STEP=`auto`,_.TREELIST_SCROLLBAR_WIDTH=10,_.CONVERT_IMAGES_TO_BASE64_BEFORE_EXPORT=!1,_.REQUEST_CUSTOM_HEADERS={},_.SLINK_GAP=7,_._intersects=function(e,t,n){var r=e.x-n.siblingSeparation/4,i=e.y,a=e.x+e.w+n.siblingSeparation/4,o=e.y;switch(n.orientation){case _.orientation.right:case _.orientation.right_top:case _.orientation.left:case _.orientation.left_top:r=e.x,i=e.y-n.siblingSeparation/4,a=e.x,o=e.y+e.h+n.siblingSeparation/4;break}var s=t.p,c=t.q,l=t.r,u=t.s,d=(a-r)*(u-c)-(l-s)*(o-i),f,p;return d===0?!1:(p=((u-c)*(l-r)+(s-l)*(u-i))/d,f=((i-o)*(l-r)+(a-r)*(u-i))/d,0<p&&p<1&&0<f&&f<1)},_._addPoint=function(e,t,n,r,i){switch(n.orientation){case _.orientation.top:case _.orientation.top_left:return _._addPointTop(e,t,n,r,i);case _.orientation.bottom:case _.orientation.bottom_left:return _._addPointBottom(e,t,n,r,i);case _.orientation.left:case _.orientation.left_top:return _._addPointLeft(e,t,n,r,i);case _.orientation.right:case _.orientation.right_top:return _._addPointRight(e,t,n,r,i)}},_._addPointTop=function(e,t,n,r,i){var a,o,s;return i==`left`?a=e.leftNeighbor?e.x+(e.leftNeighbor.x+e.leftNeighbor.w-e.x)/2:e.x-n.siblingSeparation/2:i==`right`&&(a=e.rightNeighbor?e.x+e.w+(e.rightNeighbor.x-(e.x+e.w))/2:e.x+e.w+n.siblingSeparation/2),t.push([a,t[t.length-1][1]]),t.push([a,e.y-n.levelSeparation/3]),o=t[t.length-1][1],s=a,r.p=a,r.q=o,r.r=s,r},_._addPointBottom=function(e,t,n,r,i){var a,o,s;return i==`left`?a=e.leftNeighbor?e.x+(e.leftNeighbor.x+e.leftNeighbor.w-e.x)/2:e.x-n.siblingSeparation/2:i==`right`&&(a=e.rightNeighbor?e.x+e.w+(e.rightNeighbor.x-(e.x+e.w))/2:e.x+e.w+n.siblingSeparation/2),t.push([a,t[t.length-1][1]]),t.push([a,e.y+e.h+n.levelSeparation/3]),o=t[t.length-1][1],s=a,r.p=a,r.q=o,r.r=s,r},_._addPointLeft=function(e,t,n,r,i){var a=t[t.length-1][0],o;i==`bottom`?o=e.rightNeighbor?e.y+e.h+(e.rightNeighbor.y-(e.y+e.h))/2:e.y+e.h+n.siblingSeparation/2:i==`top`&&(o=e.leftNeighbor?e.y+(e.leftNeighbor.y+e.leftNeighbor.h-e.y)/2:e.y-n.siblingSeparation/2),t.push([t[t.length-1][0],o]),t.push([e.x-n.levelSeparation/3,o]),a=t[t.length-1][0];var s=o;return r.p=a,r.q=o,r.s=s,r},_._addPointRight=function(e,t,n,r,i){var a=t[t.length-1][0],o;i==`bottom`?o=e.rightNeighbor?e.y+e.h+(e.rightNeighbor.y-(e.y+e.h))/2:e.y+e.h+n.siblingSeparation/2:i==`top`&&(o=e.leftNeighbor?e.y+(e.leftNeighbor.y+e.leftNeighbor.h-e.y)/2:e.y-n.siblingSeparation/2),t.push([t[t.length-1][0],o]),t.push([e.x+e.w+n.levelSeparation/3,o]),a=t[t.length-1][0];var s=o;return r.p=a,r.q=o,r.s=s,r},_._addConnectorLines=function(e,t){_._addConnectorLine(e,{x1:t.xa,y1:t.ya,x2:t.xb,y2:t.yb}),_._addConnectorLine(e,{x1:t.xb,y1:t.yb,x2:t.xc,y2:t.yc}),_._addConnectorLine(e,{x1:t.xc,y1:t.yc,x2:t.xd,y2:t.yd})},_._addConnectorLine=function(e,t){if(t.x1==t.x2){if(e.x[t.x1]||(e.x[t.x1]=[]),t.y1>t.y2){var n=t.y1;t.y1=t.y2,t.y2=n}e.x[t.x1].push({y1:t.y1,y2:t.y2})}if(t.y1==t.y2){if(e.y[t.y1]||(e.y[t.y1]=[]),t.x1>t.x2){var r=t.x1;t.x1=t.x2,t.x2=r}e.y[t.y1].push({x1:t.x1,x2:t.x2})}},_._addLineToPath=function(e,t,n){return _._avoidOverlapping(t,n),e.push([n.x1,n.y1]),e.push([n.x2,n.y2]),_._addConnectorLine(t,n),n},_._slinkRemoveUnusedPoints=function(e){for(var t=e.length-2;t>=1;t--){var n=e[t-1],r=e[t],i=e[t+1];(r[0]==n[0]&&r[0]==i[0]||r[1]==n[1]&&r[1]==i[1])&&e.splice(t,1)}},_._slinkAvoidOverlaping=function(e,t,n,r){for(var i=1;i<t.length;i++){var a=t[i-1],o=t[i];if(a[0]==o[0]){for(var s=e.x[o[0]];s;){var c=!0;for(var l of s)if(l.y1<=a[1]&&l.y2>=a[1]||l.y1<=o[1]&&l.y2>=o[1]){r==_.orientation.top||r==_.orientation.top_left?n==`left`?o[0]-=_.SLINK_GAP:n==`right`&&(o[0]+=_.SLINK_GAP):(r==_.orientation.bottom||r==_.orientation.bottom_left)&&(n==`right`?o[0]+=_.SLINK_GAP:n==`left`&&(o[0]-=_.SLINK_GAP)),c=!1;break}if(c)break;s=e.x[o[0]]}a[0]=o[0]}var u=!0;if(a[1]==o[1]&&a[0]>=o[0]&&(u=!1),u&&a[1]==o[1]){for(var s=e.y[o[1]];s;){var c=!0;for(var l of s)if(l.x1<=a[0]&&l.x2>=a[0]||l.x1<=o[0]&&l.x2>=o[0]){a[0]>=o[0]||(r==_.orientation.top||r==_.orientation.top_left?o[1]-=_.SLINK_GAP:(r==_.orientation.bottom||r==_.orientation.bottom_left)&&(o[1]+=_.SLINK_GAP),c=!1);break}if(c)break;s=e.y[o[1]]}a[1]=o[1]}u&&_._addConnectorLine(e,{x1:a[0],y1:a[1],x2:o[0],y2:o[1]})}},_._slinkAvoidOverlapingSecond=function(e,t,n){for(var r=1;r<t.length;r++){var i=t[r-1],a=t[r],o=!1;if(i[1]==a[1]){for(var s=e.y[a[1]];s;){var c=!0;for(var l of s)if(l.x1<=i[0]&&l.x2>=i[0]||l.x1<=a[0]&&l.x2>=a[0]){i[0]>=a[0]?(n==_.orientation.top||n==_.orientation.top_left?a[1]-=_.SLINK_GAP:(n==_.orientation.bottom||n==_.orientation.bottom_left)&&(a[1]+=_.SLINK_GAP),c=!1):o=!0;break}if(c)break;s=e.y[a[1]]}i[1]=a[1]}o||_._addConnectorLine(e,{x1:i[0],y1:i[1],x2:a[0],y2:a[1]})}},_._slinkAvoidOverlaping2=function(e,t,n,r){for(var i=1;i<t.length;i++){var a=t[i-1],o=t[i];if(a[1]==o[1]){for(var s=e.y[o[1]];s;){var c=!0;for(var l of s)if(l.x1<=a[0]&&l.x2>=a[0]||l.x1<=o[0]&&l.x2>=o[0]){r==_.orientation.left||r==_.orientation.left_top?n==`top`?o[1]-=_.SLINK_GAP:n==`bottom`&&(o[1]+=_.SLINK_GAP):(r==_.orientation.right||r==_.orientation.right_top)&&(n==`bottom`?o[1]+=_.SLINK_GAP:n==`top`&&(o[1]-=_.SLINK_GAP)),c=!1;break}if(c)break;s=e.y[o[1]]}a[1]=o[1]}var u=!0;if(a[0]==o[0]&&a[1]>=o[1]&&(u=!1),u&&a[0]==o[0]){for(var s=e.x[o[0]];s;){var c=!0;for(var l of s)if(l.y1<=a[1]&&l.y2>=a[1]||l.y1<=o[1]&&l.y2>=o[1]){a[1]>=o[1]||(r==_.orientation.left||r==_.orientation.left_top?o[0]-=_.SLINK_GAP:(r==_.orientation.right||r==_.orientation.right_top)&&(o[0]+=_.SLINK_GAP),c=!1);break}if(c)break;s=e.x[o[0]]}a[0]=o[0]}u&&_._addConnectorLine(e,{x1:a[0],y1:a[1],x2:o[0],y2:o[1]})}},_._slinkAvoidOverlapingSecond2=function(e,t,n){for(var r=1;r<t.length;r++){var i=t[r-1],a=t[r],o=!1;if(i[0]==a[0]){for(var s=e.x[a[0]];s;){var c=!0;for(var l of s)if(l.y1<=i[1]&&l.y2>=i[1]||l.y1<=a[1]&&l.y2>=a[1]){i[1]>=a[1]?(n==_.orientation.left||n==_.orientation.left_top?a[0]-=_.SLINK_GAP:(n==_.orientation.right||n==_.orientation.right_top)&&(a[0]+=_.SLINK_GAP),c=!1):o=!0;break}if(c)break;s=e.x[a[0]]}i[0]=a[0]}o||_._addConnectorLine(e,{x1:i[0],y1:i[1],x2:a[0],y2:a[1]})}},_.editUI=function(){},_.editUI.prototype.init=function(e){this.obj=e,this.fields=null,this.nodeId=null,this.detailsMode=null,this._event_id=_._guid()},_.editUI.prototype.on=function(e,t){return _.events.on(e,t,this._event_id),this},_.editUI.prototype.show=function(e,t,n){if(this.hide(!0)){if(this.nodeId=e,this.detailsMode=t,_.events.publish(`show`,[this,e])===!1)return!1;var r=this,i=this.content(e,t,n);this.obj.element.appendChild(i.element),_.input.init(this.obj.element),_.events.publish(`shown`,[this,{nodeId:e}]),n?t||this._focusElement(i.focusId):this.interval=_.animate(i.element,{right:-20,opacity:0},{right:0,opacity:1},300,_.anim.outSin,function(){t||r._focusElement(i.focusId)}),this.obj.element.querySelector(`[data-edit-from-close]`).addEventListener(`click`,function(t){t.preventDefault(),_.events.publish(`cancel`,[r,{id:e}])!==!1&&r.hide()}),this.obj.element.querySelector(`[data-edit-from-save]`).addEventListener(`click`,function(e){e.preventDefault(),r.hide()});for(var a=this.obj.element.querySelectorAll(`[data-input-btn]`),o=0;o<a.length;o++)a[o].addEventListener(`click`,function(t){t.preventDefault(),_.events.publish(`element-btn-click`,[r,{input:this.parentNode.querySelector(`input`),nodeId:e,event:t}])});this.obj.element.querySelector(`[data-add-more-fields-btn]`).addEventListener(`click`,function(e){e.stopPropagation(),e.preventDefault();var t=this,n=_.elements.textbox({},{type:`textbox`,label:r.obj.config.editForm.addMoreFieldName,btn:r.obj.config.editForm.addMoreBtn},`280px`);t.parentNode.insertAdjacentHTML(`beforebegin`,n.html),t.style.display=`none`,_.input.init(t.parentNode.previousSibling);var i=document.getElementById(n.id);i.focus(),i.nextElementSibling.addEventListener(`click`,function(e){e.stopPropagation(),e.preventDefault();var n=i.value,a=r.obj.element.querySelector(`[data-binding="`+_._escapeDoubleQuotes(i.value)+`"]`);if(!_.isNEU(n)&&!a){var o=_.elements.textbox({},{type:`textbox`,label:n,binding:n},`280px`);i.parentNode.parentNode.parentNode.removeChild(i.parentNode.parentNode),t.parentNode.insertAdjacentHTML(`beforebegin`,o.html),t.style.display=``,_.input.init(t.parentNode.previousSibling);var s=document.getElementById(o.id);s.focus(),s.addEventListener(`input`,function(){r._drawCurrentNodeElement()})}else i.focus()})}),this.obj.element.querySelector(`[data-boc-edit-from-btns]`).addEventListener(`click`,function(t){for(var n=t.target;n&&n.hasAttribute&&!n.hasAttribute(`data-edit-from-btn`);)n=n.parentNode;if(n&&n.hasAttribute){var i=n.getAttribute(`data-edit-from-btn`),a={button:r.obj.config.editForm.buttons[i],name:i,nodeId:e,event:t};if(_.events.publish(`button-click`,[r,a])===!1)return!1;switch(i){case`edit`:r.obj.editUI.show(e,!1,!0);break;case`pdf`:r.obj.exportToPDFProfile(e),r.hide();break;case`share`:r.obj.shareProfile(e);break;case`remove`:r.obj.removeNode(e,null,!0),r.hide();break}}});for(var s=this.obj.element.querySelectorAll(`[data-boc-edit-form] [data-binding]`),o=0;o<s.length;o++){var c=s[o];c.getAttribute(`data-binding`)&&c.addEventListener(`input`,function(){r._drawCurrentNodeElement()})}}},_.editUI.prototype._drawCurrentNodeElement=function(){var e=this.obj.element.querySelector(`[data-boc-edit-form]`),t=_.input.getData(e),n=this.obj.get(this.nodeId),r=this.obj.getNode(this.nodeId),i=_.mergeDeep(n,t),a=this.obj.ui.node(r,i,[],this.obj.config,void 0,void 0,void 0,void 0,this.obj.getScale(),this.obj);this._replaceNodeWith(a)},_.editUI.prototype._replaceNodeWith=function(e){var t=document.createElementNS(`http://www.w3.org/2000/svg`,`g`);t.innerHTML=e;var n=t.firstElementChild;this.obj.getNodeElement(this.nodeId).replaceWith(n)},_.editUI.prototype.setAvatar=function(e){var t=this.obj.element.querySelector(`[id="boc-avatar"]`),n=this.obj.element.querySelector(`[id="boc-avatar"] img`),r=this.obj.element.querySelector(`[id="boc-avatar"] svg`);if(t)n?n.setAttribute(`src`,e):r&&(t.innerHTML=`<img style="width: 100%;height:100%;border-radius: 50%;object-fit:cover;" src="${e}">`);else return;this._drawCurrentNodeElement()},_.editUI.prototype.save=function(e){var t=this.obj.element.querySelector(`[data-boc-edit-form]`),n=_.input.validateAndGetData(t);if(n!==!1){var r=this.obj.get(this.nodeId),i={data:_.mergeDeep(r,n)};return _.events.publish(`save`,[this,i])===!1?void 0:(this.obj.updateNode(i.data,null,!0,e),!0)}return!1},_.editUI.prototype._focusElement=function(e){var t=null;_.isNEU(this.obj.config.editForm.focusBinding)?_.isNEU(e)||(t=document.getElementById(e)):t=this.obj.element.querySelector(`[data-binding="`+this.obj.config.editForm.focusBinding+`"]`),t&&(t.value&&t.value.length&&t.setSelectionRange(t.value.length,t.value.length),t.focus())},_.editUI.prototype.content=function(e,t,n,r,i){var a=this.obj.config.editForm.readOnly,o=JSON.parse(JSON.stringify(this.obj.config.editForm.elements)),s=this.obj.config.editForm.addMore,c=this.obj.config.editForm.saveAndCloseBtn,l=this.obj.config.editForm.buttons,u=this.obj.config.editForm.titleBinding,d=this.obj.config.editForm.photoBinding,f=this.obj.getNode(e),p=this.obj._get(e),m=_.t(f.templateName,f.min,this.obj.getScale()),h=p[u],g=p[d];if(this.obj.config.editForm.generateElementsFromFields)for(var v=0;v<this.fields.length;v++){var y=this.fields[v];if(y!=`tags`){for(var b=!1,x=0;x<o.length;x++){if(Array.isArray(o[x])){for(var S=0;S<o[x].length;S++)if(y==o[x][S].binding){b=!0;break}}else if(y==o[x].binding){b=!0;break}if(b)break}b||o.push({type:`textbox`,label:y,binding:y})}}_.isNEU(h)&&(h=``),g=_.isNEU(g)?_.icon.user(150,150,`#8C8C8C`,0,0):`<img style="width: 100%;height:100%;border-radius: 50%;object-fit:cover;" src="${g}"></img>`;var C,w=!t,T=t?`display:none;`:``,E=t||!s?`display:none;`:``,D=m.editFormHeaderColor?`style="background-color:${m.editFormHeaderColor};"`:``,O=document.createElement(`form`);if(O.setAttribute(`data-boc-edit-form`,``),O.classList.add(`boc-edit-form`),O.classList.add(this.obj.config.mode),O.classList.add(f.templateName.replaceAll(` `,``)),O.classList.add(_.ui._defsIds[f.templateName]),Array.isArray(f.tags)&&f.tags.length)for(var v=0;v<f.tags.length;v++)O.classList.add(f.tags[v].replaceAll(` `,``));O.style.display=`flex`,O.style.opacity=n?1:0,O.style.right=n?0:`-20px`,r&&(O.style.width=r);var k=[];return O.innerHTML=`<div>
213
213
  <div class="boc-edit-form-header" ${D}>
214
214
  ${i?``:_.EDITFORM_CLOSE_BTN}
215
215
  ${_.editUI.renderHeaderContent(h,g,f,p)}
@@ -460,8 +460,8 @@ performance.now();setTimeout(w,2300>q&&2E3<q?2300-q:500)})])},types:[]});z.ready
460
460
  <td class="boc-search-text-td">${n} <br/>${r}</td>
461
461
  </tr>`},_.searchUI.prototype.hide=function(){if(_.events.publish(`hide`,[this])===!1)return!1;this._searchAfterEnterPress&&(this._searchAfterEnterPress=!1,this.instance.draw()),this.lastSearch=[],this.xBtn&&(this.xBtn.style.display=`none`),this.searchTableWrapper&&(this.searchTableWrapper.innerHTML=``),this.input&&(_.isMobile()||(this.input.value=``),document.activeElement==this.input&&this.input.blur(),document.activeElement==this.xBtn&&_.input.blurHandler(this.input))},_.searchUI.prototype.on=function(e,t){return _.events.on(e,t,this._event_id),this},_===void 0&&(_={}),_.manager=function(e){this.config=e.config,this.layoutConfigs=e._layoutConfigs,this.visibleNodeIds=[],this.viewBox=null,this.action=null,this.actionParams=null,this.nodes={},this.oldNodes={},this.maxX=null,this.maxY=null,this.minX=null,this.minY=null,this.bordersByRootIdAndLevel=null,this.roots=null,this.state=null,this.vbIsInitializedFromState=!1,this.rootList=[],this.instance=e,this._fixAdjustForExport={x:0,y:0}},_.manager.prototype.read=function(e,t,n,r,i,a,o,s){var c=this;_.state._get(this.config.state,t,n,function(l){c.state=l,c.action=i,c.actionParams=a,i!=_.action.init||!c.state||a&&a.method&&a.method==`fit`?(c.viewBox=r,c.vbIsInitializedFromState=!1):(c.viewBox=c.state.vb,c.vbIsInitializedFromState=!0,Array.isArray(c.state.roots)&&(c.config.roots=c.state.roots));var u=c.maxX,d=c.maxY,f=c.minX,p=c.minY,m=c.bordersByRootIdAndLevel,h=c.roots,g=c.nodes;if(!e)g?c.oldNodes=g:c.oldNodes=null,c._read(function(e){u=e.maxX,d=e.maxY,f=e.minX,p=e.minY,m=e.bordersByRootIdAndLevel,h=e.roots,g=e.nodes;var r=_.manager._getResponse(t,n,c.visibleNodeIds,c.config,u,d,f,p,c.viewBox,h,c.action,c.actionParams,g,c.oldNodes,c.vbIsInitializedFromState);r.notif=e.limit,r.roots=h,r.bordersByRootIdAndLevel=m,r.adjustify=e.adjustify,i!=_.action.exporting&&(c.maxX=u,c.maxY=d,c.minX=f,c.minY=p,c.roots=h,c.nodes=g,c.visibleNodeIds=r.visibleNodeIds,c.bordersByRootIdAndLevel=m,c.rootList=e.rootList),o(r)},s);else{var v=_.manager._getResponse(t,n,c.visibleNodeIds,c.config,u,d,f,p,c.viewBox,h,c.action,c.actionParams,g,c.oldNodes,c.vbIsInitializedFromState);i!=_.action.exporting&&(c.maxX=u,c.maxY=d,c.minX=f,c.minY=p,c.roots=h,c.nodes=g,c.visibleNodeIds=v.visibleNodeIds),v.bordersByRootIdAndLevel=m,v.roots=h,v.adjustify={x:0,y:0},c.state&&(v.adjustify=c.state.adjustify),o(v)}})},_.manager.prototype._read=function(e,t){var n=this,r=_.manager._createNodes(this.instance);t(r);var i=r.nodes,a=r.roots,o=_.remote;o??=_.local,o._setPositions(a,n.layoutConfigs,function(t){var o=_.manager._doNotChangePositionOfClickedNodeIfAny(a,i,n.action,n.actionParams,n.oldNodes,n.config.orientation);n.state&&n.action==_.action.init&&(o=n.state.adjustify),n.action==_.action.exporting?o=n._fixAdjustForExport:n._fixAdjustForExport=o;for(var s={minX:null,minY:null,maxX:null,maxY:null},c={},l=[],u=0;u<a.length;u++)_.manager._setMinMaxXYAdjustifyIterate(a[u],a[u],s,0,c,o,n.config.orientation,l);for(var u=0;u<a.length;u++)_.manager._setChildCountPropsIterate(a[u],i);for(var d in l)for(var f in l[d]){var p=c[d][f],m=l[d][f];p.minX==null&&p.minY==null&&p.maxX==null&&p.maxY==null&&_._setMinMaxXY(m,p,!0)}e({minX:s.minX,minY:s.minY,maxX:s.maxX,maxY:s.maxY,bordersByRootIdAndLevel:c,nodes:i,roots:a,rootList:r.rootList,limit:t,adjustify:o})},i)},_===void 0&&(_={}),_.manager._initDinamicNode=function(e,t,n){t&&(e.lcn=t),n&&(e.isAssistant=!0);var r=_.t(e.templateName);e.w=r&&r.size?r.size[0]:0,e.h=r&&r.size?r.size[1]:0,e.isSplit=e.templateName==`split`,e.isMirror=e.templateName==`mirror`,e.isSubLevel=e.templateName==`subLevel`},_.manager._setCollpasedProperty=function(e,t,n,r,i,a,o,s){if(e.collapsed==null&&t.collapse&&t.collapse.allChildren?e.collapsed=!0:e.collapsed??=!1,i==_.action.expand&&n.ids.indexOf(e.id)!=-1&&(e.collapsed=!1),i==_.action.collapse&&(n.expandIds||n.collapseIds)?n.expandIds&&n.expandIds.indexOf(e.id)!=-1?e.collapsed=!1:n.collapseIds&&n.collapseIds.indexOf(e.id)!=-1&&(e.collapsed=!0):i==_.action.collapse&&n.ids.indexOf(e.id)!=-1&&(e.collapsed=!0),i==_.action.expand&&n.ids==`all`&&(e.collapsed=!1),i==_.action.exporting&&(!_.isNEU(n.parentLevels)||!_.isNEU(n.childLevels))&&n.id!=null){if(n.id!=null&&(!_.isNEU(n.parentLevels)||!_.isNEU(n.childLevels))){var c=s[n.id];if(c==e)e.collapsed=!1;else{for(var l=!1,u=-1,d=!1,f=-1;c;){if(u++,c==e){l=!0;break}c=s[c.pid]}c=s[n.id];for(var p=s[e.id];p;){if(f++,p==c){d=!0;break}p=s[p.pid]}n.parentLevels!=null&&l&&u<=n.parentLevels||n.childLevels!=null&&d&&f<=n.childLevels||d&&n.expandChildren?e.collapsed=!1:e.collapsed=!0}}}else i==_.action.exporting&&n.expandChildren&&(e.collapsed=!1);i==_.action.init&&o!=null?e.collapsed=!o.exp.has(e.id):i==_.action.init?e.tags.indexOf(`left-partner`)!=-1||e.tags.indexOf(`right-partner`)!=-1||e.tags.indexOf(`partner`)!=-1||e.parentPartner?e.collapsed=t.collapse&&a>=t.collapse.level&&r.indexOf(e.id)==-1:e.collapsed=t.collapse&&a>=t.collapse.level-1&&r.indexOf(e.id)==-1:i==_.action.centerNode||i==_.action.insert||i==_.action.expand||i==_.action.collapse?r.has(e.id)&&(e.collapsed=!1):i==_.action.update&&n&&n.changeRoots&&n.changeRoots.has(e.id)&&(e.collapsed=!1)},_.manager._initNode=function(e,t,n,r,i,a,o){var s=o.manager.config,c=o.manager.layoutConfigs,l=o.manager.action,u=o.manager.actionParams,d=o.manager.state,f=c[n||`base`];e.parent??_.manager._setCollpasedProperty(e,f,u,i,l,r-1,d,t);for(var p=0;p<e.childrenIds.length;p++){var m=t[e.childrenIds[p]];if(_.manager._setCollpasedProperty(m,f,u,i,l,r,d,t),m.collapsed)e.collapsedChildCount++;else{if(m.parent=e,m.ppid!=null){var h=t[m.ppid];h&&(m.parentPartner=h)}(m.tags.indexOf(`left-partner`)!=-1||m.tags.indexOf(`right-partner`)!=-1||m.tags.indexOf(`partner`)!=-1||m.parentPartner)&&a.indexOf(e.id)==-1&&a.push(e.id),e.children.push(m)}}if(l==_.action.minimize&&!e.min?(u.all||u.id==e.id)&&(e.min=!0):l==_.action.maximize&&e.min===!0?(u.all||u.id==e.id)&&(e.min=!1):l==_.action.exporting&&u.min===!1?e.min=!1:l==_.action.init&&d!=null&&(e.min=d.min.has(e.id)),!e.min&&(!e.tags||!e.tags.has(`filter`)))for(var p=0;p<e.stChildrenIds.length;p++){var m=t[e.stChildrenIds[p]];m.stParent=e,e.stChildren.push(m)}r!=null&&(e.level=r),n&&(e.lcn=n);var g=_._getSubLevels(e.tags,s.tags);g>0&&(e.subLevels=g),e.tags.indexOf(`assistant`)!=-1&&e.parent!=null&&(e.isAssistant=!0),f.layout==_.layout.treeList&&(e.isTreeListItem=!0),f.template&&s.template==e.templateName&&(e.templateName=f.template);var v=_.t(e.templateName,e.min);if(e.w=v&&v.size?v.size[0]:0,e.h=v&&v.size?v.size[1]:0,e.padding=v&&v.padding?v.padding:[0,0,0,0],e.isTreeListItem&&e.stParent&&e.stParent.treeList==null){var y=_.t(e.stParent.templateName,e.stParent.min);e.stParent.treeList={pinnedIds:[],scrollTop:0,scrollTopMax:0,maxHeight:y.treeListMaxHeight}}var b={node:e};_.events.publish(`node-initialized`,[o,b])},_.manager._iterate=function(e,t,n,r,i,a,o,s,c,l,u,d){var f=d.manager.layoutConfigs;if(_.manager._initNode(t,n,c,r,l,u,d),t.isAssistant&&(a[t.pid]||(a[t.pid]=[]),a[t.pid].push(t.id)),t.subLevels>0&&o.push(t.id),_.MIXED_LAYOUT_FOR_NODES_WITH_COLLAPSED_CHILDREN&&!t.isAssistant&&t.parent){if(t.parent&&t.parent.children.length&&t.parent.children[t.parent.children.length-1]==t){for(var p=[],m=0,h=0,g=0;g<t.parent.children.length;g++){var v=t.parent.children[g];v.tags.indexOf(`partner`)==-1&&v.tags.indexOf(`left-partner`)==-1&&v.tags.indexOf(`right-partner`)==-1&&v.tags.indexOf(`assistant`)==-1&&v.children.length==0?p.push(v.id):v.tags.indexOf(`assistant`)==-1?(v.tags.indexOf(`partner`)!=-1||v.tags.indexOf(`left-partner`)!=-1||v.tags.indexOf(`right-partner`)!=-1)&&h++:m++}(_.MIXED_LAYOUT_ALL_NODES&&p.length>1&&p.length==t.parent.children.length-m-h||!_.MIXED_LAYOUT_ALL_NODES&&p.length>1)&&(s[t.pid]=p)}}else if(!t.isAssistant&&t.childrenIds.length==0&&t.parent&&!s[t.pid]){for(var p=[],m=0,h=0,g=0;g<t.parent.children.length;g++){var v=t.parent.children[g];v.tags.indexOf(`partner`)==-1&&v.tags.indexOf(`left-partner`)==-1&&v.tags.indexOf(`right-partner`)==-1&&v.tags.indexOf(`assistant`)==-1&&v.childrenIds.length==0?p.push(v.id):v.tags.indexOf(`assistant`)==-1?(v.tags.indexOf(`partner`)!=-1||v.tags.indexOf(`left-partner`)!=-1||v.tags.indexOf(`right-partner`)!=-1)&&h++:m++}(_.MIXED_LAYOUT_ALL_NODES&&p.length>_.MIXED_LAYOUT_IF_NUMBER_OF_CHILDREN_IS_MORE_THEN&&p.length==t.parent.childrenIds.length-m-h||!_.MIXED_LAYOUT_ALL_NODES&&p.length>_.MIXED_LAYOUT_IF_NUMBER_OF_CHILDREN_IS_MORE_THEN)&&(s[t.pid]=p)}t.stChildren.length&&(e.stContainerNodes||=[],e.stContainerNodes.push(t));for(var y=0;y<t.stChildren.length;y++){for(var b=``,g=0;g<t.tags.length;g++)if(f[t.tags[g]]){b=t.tags[g];break}i.push(t.stChildren[y].id),_.manager._iterate(e,t.stChildren[y],n,0,i,a,o,s,b,l,u,d)}r++;for(var y=0;y<t.children.length;y++)t.isTreeListItem&&(t.children[y].isTreeListItem=t.isTreeListItem),_.manager._iterate(e,t.children[y],n,r,i,a,o,s,c,l,u,d)},_.manager.__createNodes=function(e,t,n,r,i,a,o,s){for(var c=[],l=_._addDottedLines(n),u=0;u<l.length;u++){var d=l[u],f=_.STRING_TAGS?d.tags?d.tags.split(`,`):[]:Array.isArray(d.tags)?d.tags.slice(0):[];s.filterUI.addFilterTag(d)&&f.unshift(`filter`);var p=s.searchUI.addMatchTag(d.id);p===!0?f.unshift(`match`):p===!1&&f.unshift(`no-match`);var m=_._getTemplate(f,n.tags,n.template);d&&d.template&&(m=d.template);var h=new _.node(d.id,d.pid,f,m);_.isNEU(d.ppid)||(h.ppid=d.ppid),_.isNEU(d.stpid)||(h.stpid=d.stpid),d.movex!=null&&(h.movex=d.movex),d.movey!=null&&(h.movey=d.movey),e[d.id]=h,c.push(d.id)}if(n.orderBy!=null){var g=_.manager._getOrderSortArray(n.orderBy);c.sort(function(e,t){var n,r;for(var i of l)if(i.id==e&&(n=i),i.id==t&&(r=i),n&&r)break;for(var a=0;a<g.length;a++){var o=n[g[a].field],s=r[g[a].field],c=o,u=s;if(c??=``,u??=``,typeof c==`string`&&typeof u==`string`){var d=c.localeCompare(u);if(g[a].desc&&(d*=-1),d!==0)return d}else{var d=o<s?-1:o>s?1:0;if(g[a].desc&&(d*=-1),d!==0)return d}}})}for(var u=0;u<c.length;u++){var v=c[u],h=e[v],y=a?a[v]:null,b=e[h.stpid],x=e[h.pid];if(b||(h.stpid=null),x||(h.pid=null),b){var S=a?a[b.id]:null;S&&(b.min=S.min),b.stChildrenIds.push(h.id)}else x?(y&&(h.collapsed=y.collapsed,h.min=y.min,h.treeList=y.treeList),x.childrenIds.push(h.id)):(y&&(h.collapsed=y.collapsed,h.min=y.min,h.treeList=y.treeList),t.push(h),o.push(h.id));r==_.action.init&&(h.min=_._getMin(h,n))}},_.manager._createNodes=function(e){var t=e.manager.config,n=e.manager.layoutConfigs,r=e.manager.action,i=e.manager.actionParams,a=e.manager.oldNodes,o=e.manager.state,s={},c=[],l=[];if(_.manager.__createNodes(s,c,t,r,i,a,l,e),t.roots!=null){c=[];for(var u=0;u<t.roots.length;u++){var d=s[t.roots[u]];if(d&&r==_.action.centerNode){for(var f=d;f.pid!=null||f.stpid!=null;)f=f.pid==null&&f.stpid!=null?s[f.stpid]:s[f.pid];for(var p=s[i.id];(p.pid!=null||p.stpid!=null)&&p!=d;)p=p.pid==null&&p.stpid!=null?s[p.stpid]:s[p.pid];f==p&&(d=f)}if(d){for(var m=!1,h=0;h<c.length;h++)if(c[h].id==d.id){m=!0;break}if(!m){if(!_.isNEU(d.pid)){var g=s[d.pid],v=g.childrenIds.indexOf(d.id);v>-1&&g.childrenIds.splice(v,1)}c.push(d)}}}t.roots=[];for(var u=0;u<c.length;u++)t.roots.push(c[u].id)}if(r==_.action.exporting&&i.id!=null)if(i.parentLevels){for(var g=s[i.id],y=0;y<i.parentLevels&&s[g.pid];)y++,g=s[g.pid];g.pid=null,c=[g]}else{var b=s[i.id];b&&(b.pid=null,c=[b])}var x=[];if(r==_.action.init&&t.expand&&t.expand.nodes&&o==null)for(var u=0;u<t.expand.nodes.length;u++){var b=s[t.expand.nodes[u]];for(t.expand.allChildren===!0&&_.manager._addExpandedNodeIdsIterate(b,s,x);b;)x.push(b.id),b.pid==null&&b.stpid!=null?(b=s[b.stpid],b.min=!1):b=s[b.pid]}else if(r==_.action.expand&&i.ids&&i.ids!=`all`||r==_.action.collapse&&i&&i.expandIds)for(var S=r==_.action.expand?i.ids:i.expandIds,u=0;u<S.length;u++)for(var b=s[S[u]],g=s[b.pid];g;)x.push(g.id),g.pid==null&&g.stpid!=null?(g=s[g.stpid],g.min=!1):g=s[g.pid];else if(r==_.action.centerNode){for(var C=_._getCenterNodeFromParams(s,i);C;){if(x.push(C.id),i.options.parentState===_.COLLAPSE_PARENT_NEIGHBORS&&C)for(var u=0;u<C.childrenIds.length;u++){var w=s[C.childrenIds[u]];w.collapsed=!0}if(C.pid==null&&C.stpid!=null){if(C=s[C.stpid],C.min=!1,C.tags){var v=C.tags.indexOf(`filter`);v!=-1&&(C.tags.splice(v,1),e.filterUI._removeFilter(C.id))}}else C=s[C.pid]}if(C=_._getCenterNodeFromParams(s,i),i.options.childrenState===_.COLLAPSE_SUB_CHILDRENS)for(var u=0;u<C.childrenIds.length;u++){var T=s[C.childrenIds[u]];T.collapsed=!1;for(var E=0;E<T.childrenIds.length;E++){var D=s[T.childrenIds[E]];D.collapsed=!0}}if(i.options.parentState===_.COLLAPSE_PARENT_SUB_CHILDREN_EXCEPT_CLICKED){var g=s[C.pid];if(g)for(var u=0;u<g.childrenIds.length;u++){var T=s[g.childrenIds[u]];if(T!=C){T.collapsed=!1;for(var E=0;E<T.childrenIds.length;E++){var D=s[T.childrenIds[E]];D.collapsed=!0}}}}}else if(r==_.action.insert)for(var b=s[i.insertedNodeId];b;)x.push(b.id),b.pid==null&&b.stpid!=null?(b=s[b.stpid],b.min=!1):b=s[b.pid];for(var O=[],k={},A=[],j={},M=[],u=0;u<c.length;u++)_.manager._iterate(c[u],c[u],s,0,O,k,A,j,``,x,M,e);if(r==_.action.collapse&&i&&Array.isArray(i.expandIds)&&Array.isArray(i.collapseIds))for(var u=0;u<i.ids.length;u++)if(i.expandIds.has(i.collapseIds[u]))console.error(`id ${i.collapseIds[u]} exist in both collapseIds and expandIds`);else{var b=s[i.collapseIds[u]];b&&(b.collapsed=!0)}for(var u=c.length-1;u>=0;u--)c[u].collapsed&&c.splice(u,1);for(var u=0;u<M.length;u++){for(var b=s[M[u]],N=[],P=[],F=[],I={},L=0,R=0,z=0,ee=[],te=[],E=0;E<b.children.length;E++){var w=b.children[E];w.isAssistant?N.push(w.id):w.tags.indexOf(`right-partner`)==-1?w.tags.indexOf(`left-partner`)==-1?w.tags.indexOf(`partner`)!=-1&&!(L%2)?(w.isPartner=1,w.children=[],P.push(w.id),L++):w.tags.indexOf(`partner`)!=-1&&L%2?(w.isPartner=2,w.children=[],F.push(w.id),L++):w.parentPartner?(I[w.parentPartner.id]||(I[w.parentPartner.id]=[]),I[w.parentPartner.id].push(w.id)):N.push(w.id):(w.isPartner=2,w.children=[],F.push(w.id)):(w.isPartner=1,w.children=[],P.push(w.id))}b.children=[];for(var B=[],E=0;E<P.length;E++){var w=s[P[E]];I[w.id]?b.children.push(w):b.children.splice(0,0,w);for(var V=0;V<w.childrenIds.length;V++)B.push(w.childrenIds[V])}for(var H=[],E=0;E<F.length;E++){var w=s[F[E]];I[w.id]?b.children.push(w):b.children.splice(0,0,w);for(var V=0;V<w.childrenIds.length;V++)H.push(w.childrenIds[V])}for(var E=0;E<H.length;E++){var w=s[H[E]];w.collapsed||(w.parentPartner=w.parent,w.parent=b,w.isChildOfPartner=!0,b.children.push(w))}for(var E=F.length-1;E>=0;E--)if(I[F[E]])for(var h=0;h<I[F[E]].length;h++)b.children.push(s[I[F[E]][h]]),R++,te.indexOf(F[E])==-1&&te.push(F[E]);for(var E=0;E<N.length;E++){var w=s[N[E]];b.children.push(w)}for(var E=0;E<P.length;E++)if(I[P[E]])for(var h=0;h<I[P[E]].length;h++)b.children.push(s[I[P[E]][h]]),z++,ee.indexOf(P[E])==-1&&ee.push(P[E]);for(var E=0;E<B.length;E++){var w=s[B[E]];w.collapsed||(w.parentPartner=w.parent,w.parent=b,w.isChildOfPartner=!0,b.children.push(w))}b.partnerSeparation=Math.max(te.length,ee.length)*t.partnerChildrenSplitSeparation+t.minPartnerSeparation,!N.length&&R&&!z?b.hasPartners=2:!N.length&&!R&&z?b.hasPartners=3:!N.length&&R==1&&z==1?b.hasPartners=4:!N.length&&!R&&!z?b.hasPartners=5:N.length&&!R&&!z?b.hasPartners=6:N.length&&(R||z)?b.hasPartners=7:b.hasPartners=1}for(var u=0;u<A.length;u++)for(var b=s[A[u]],ne=b.lcn?b.lcn:`base`,re=n[ne],E=0;E<b.subLevels;E++){var U=new _.node(b.id+`_sub_level_index_`+E,b.pid,[],`subLevel`);_.manager._initDinamicNode(U,b.lcn);var g=b.parent;if(g){b.movex!=null&&(U.movex=b.movex),b.movey!=null&&(U.movey=b.movey);var v=g.children.indexOf(b);v>-1&&(g.children.splice(v,1),g.children.splice(v,0,U)),U.children.push(b),U.parent=g,b.parent=U,s[U.id]=U}}for(var W in k){var g=s[W];g.hasAssistants=!0;var U=new _.node(g.id+`_split_assitant_0`,g.id,[`assistant`],`split`);g.movex!=null&&(U.movex=g.movex),g.movey!=null&&(U.movey=g.movey),_.manager._initDinamicNode(U,g.lcn,!0),s[U.id]=U;for(var ie=[],E=g.children.length-1;E>=0;E--){var w=g.children[E];w.isAssistant?(w.parent=null,g.children.splice(E,1),ie.splice(0,0,w.id)):w.isPartner||(w.parent&&j[w.parent.id]&&U&&w.parent.id!=U.id&&(Object.defineProperty(j,U.id,Object.getOwnPropertyDescriptor(j,w.parent.id)),delete j[w.parent.id]),w.parent=U,U.children.unshift(w),g.children.splice(E,1))}if(ie.length%2){var G=s[ie[ie.length-1]],ae=new _.node(G.id+`_mirror`,g.pid,[],`mirror`);_.manager._initDinamicNode(ae,G.lcn,!0),ae.isAssistant=!0,ae.w=G.w,ae.h=G.h,s[ae.id]=ae,ie.splice(ie.length-1,0,ae.id)}for(var oe=1,E=ie.length-1;E>=0;E--)if(E%2&&E!=ie.length-1){var se=new _.node(g.id+`_split_assitant_`+oe,g.pid,[],`split`);_.manager._initDinamicNode(se,g.lcn,!0),g.movex!=null&&(se.movex=g.movex),g.movey!=null&&(se.movey=g.movey),s[se.id]=se,ie.splice(E,0,se.id),oe++}else E%2&&ie.splice(E,0,U.id);for(var E=0;E<ie.length;E+=3){var ce=null;ce=E==0?g:s[ie[E-2]];var le=s[ie[E]],K=s[ie[E+1]],ue=s[ie[E+2]];le.parent=ce,K.parent=ce,ue.parent=ce,ce.children.push(le),ce.children.push(K),ce.children.push(ue)}}var de=!1;for(var fe in n){var re=n[fe];if(re.layout!=0){de=!0;break}}var pe=_.events.has(`node-layout`,e._event_id);if(de||pe){var me={nodes:s,config:t,action:r,actionParams:i};if(A.length){var q=!1;for(var W in j){for(var S=j[W],u=0;u<S.length;u++){var b=s[S[u]];if(b.subLevels){q=!0;break}}if(q)break}if(q){var J={},he={},ge={};for(var W in j)for(var S=j[W],_e=!1,ve=null,u=0;u<S.length;u++){var ye=S[u];(ve===null||A.has(ye))&&(ve=s[ye].parent.id,!_e&&!_.isNEU(s[ye].subLevels)&&(_e=s[ye].subLevels>0)),J[ve]||(J[ve]=[]),J[ve].push(ye),_e&&(ge[ve]=W,he[ve]||(he[ve]=[]),he[ve].push(ye))}for(var W in j={},he)if(he[W].length>_.MIXED_LAYOUT_IF_NUMBER_OF_CHILDREN_IS_MORE_THEN)for(var be=ge[W],u=s[be].children.length-1;u>=0;u--){var w=s[be].children[u];he[W].has(w.id)&&s[be].children.splice(u,1)}for(var W in J)J[W].length>_.MIXED_LAYOUT_IF_NUMBER_OF_CHILDREN_IS_MORE_THEN&&(j[W]=J[W])}}for(var W in j){for(var g=s[W],xe=g;xe.isSplit;)xe=s[xe.pid];for(;xe.isSubLevel;)xe=s[xe.pid];var ne=g.lcn?g.lcn:`base`,re=n[ne];if(re.layout!=0||pe){me.pnode=g,me.layout=re.layout,me.layoutGridColumns=t.layoutGridColumns,me.childrenIds=j[W],me.lastChildrenPidIds=j,me.subLevels=0,me.layouts=[],_.events.publish(`node-layout`,[e,me]),_.events.publish(`layout`,[me]),me.layouts.length||me.layouts.push({layout:me.layout,childrenIds:me.childrenIds,subLevels:me.subLevels,layoutGridColumns:me.layoutGridColumns});for(var Se=0;Se<me.layouts.length;Se++){var Y=me.layouts[Se];for(_.isNEU(Y.subLevels)&&(Y.subLevels=0),_.isNEU(Y.layout)&&(Y.layout=re.layout),g=s[W],xe=g;xe.isSplit;)xe=s[xe.pid];for(;xe.isSubLevel;)xe=s[xe.pid];for(var Ce=g,E=0;E<Y.subLevels;E++){var U=new _.node(Se+`_sublevel_layout_`+E,Ce.id,[],`subLevel`);_.manager._initDinamicNode(U,Ce.lcn),U.parent=Ce,Ce.children.push(U),s[U.id]=U,Ce=U}if(Y.subLevels){for(var E=0;E<Y.childrenIds.length;E++){var w=s[Y.childrenIds[E]],v=g.children.indexOf(w);v!=-1&&g.children.splice(v,1),w.parent=Ce,Ce.children.push(w)}g=Ce}if(Y.layout==_.layout.grid&&Y.childrenIds.length>2){Y.layoutGridColumns==`dynamic`&&(Y.layoutGridColumns=_._getDynamicGridCoulumns(Y.childrenIds.length));for(var we=g.id,u=g.children.length-1;u>=0;u--)for(var E=0;E<Y.childrenIds.length;E++){var ye=Y.childrenIds[E];if(g.children[u].id==ye){g.children.splice(u,1);break}}var Te=Y.layoutGridColumns;Te%2!=0&&Te>2&&Te--;for(var u=0;u<Y.childrenIds.length;u+=Te)for(var Ee=null,E=0;E<Te;E++){var De=u+Te>=Y.childrenIds.length;if(Y.childrenIds.length-1<u+E)break;var ye=Y.childrenIds[u+E],w=s[ye];w.parent=s[we],s[we].children.push(w),De||(Te/2-1==E&&(Ee=new _.node(Y.childrenIds[u+E-1]+`_grid_pseudo_node_`+Y.childrenIds[u+E+1],we,[],`subLevel`),_.manager._initDinamicNode(Ee,g.lcn),Ee.parent=s[we],s[we].children.push(Ee),s[Ee.id]=Ee),Te-1==E&&(we=Ee.id))}}if(Y.layout==_.layout.mixed)for(var Oe=Y.childrenIds,u=Oe.length-1;u>=0;u--){var w=s[Oe[u]];g=w.parent,w.layout=_.layout.mixed;for(var E=g.children.length-1;E>=0;E--)if(w.id==g.children[E].id){g.children.splice(E,1);break}if(u>0){var ke=s[Oe[u-1]];w.parent=ke,w.layout=_.layout.mixed,ke.children.push(w)}else g.children.push(w)}else if(Y.layout>1){var U=new _.node(Se+`_`+g.id+`_split_0`,xe.id,[],`split`);g.movex!=null&&(U.movex=g.movex),g.movey!=null&&(U.movey=g.movey),_.manager._initDinamicNode(U,g.lcn),s[U.id]=U,U.layout=Y.layout;for(var Ae=[],u=Y.childrenIds.length-1;u>=0;u--){for(var w=s[Y.childrenIds[u]],E=0;E<g.children.length;E++)g.children[E].id==w.id&&g.children.splice(E,1);if(w.parent=null,w.layout=Y.layout,(Y.layout==_.layout.treeRightOffset||Y.layout==_.layout.treeRight)&&Ae.splice(0,0,w.id),Y.layout>2){var je=new _.node(Se+`_`+w.id+`_mirror`,xe.id,[],`mirror`);_.manager._initDinamicNode(je,w.lcn),je.layout=Y.layout,s[je.id]=je,Ae.splice(0,0,je.id)}Y.layout!=_.layout.treeRightOffset&&Y.layout!=_.layout.treeRight&&Ae.splice(0,0,w.id)}for(var oe=1,E=Ae.length-1;E>=0;E--)if(E%2&&E!=Ae.length-1){var se=new _.node(Se+`_`+g.id+`_split_`+oe,xe.id,[],`split`);_.manager._initDinamicNode(se,g.lcn),g.movex!=null&&(se.movex=g.movex),g.movey!=null&&(se.movey=g.movey),se.layout=Y.layout,s[se.id]=se,Ae.splice(E,0,se.id),oe++}else E%2&&Ae.splice(E,0,U.id);for(var E=0;E<Ae.length;E+=3){var ce=null;E==0&&(ce=g);var le=s[Ae[E]],K=s[Ae[E+1]],ue=s[Ae[E+2]];E!=0&&(ce=s[Ae[E-3]]),E!=0&&!K&&(ce=s[Ae[E-2]]),le.parent=ce,ce.children.push(le),K&&(E!=0&&(ce=s[Ae[E-2]]),K.parent=ce,ce.children.push(K)),ue&&(E!=0&&(ce=s[Ae[E-1]]),ue.parent=ce,ce.children.push(ue))}}}}}}if(_.VERTICAL_CHILDREN_ASSISTANT)for(var u=0;u<c.length;u++)_.manager._verticalAssistantIterate(c[u],s);var me={nodes:s,roots:c};return _.events.publish(`nodes-initialized`,[e,me]),{nodes:me.nodes,roots:me.roots,rootList:l}},_.manager._getOrderSortArray=function(e){if(typeof e==`string`)return[{field:e,desc:!1}];if(Array.isArray(e)){var t=[];for(var n of e)typeof n==`string`?t.push({field:n,desc:!1}):e instanceof Object?t.push(n):console.error(`Unseported orderBy value!`);return t}else if(e instanceof Object)return[e];else console.error(`Unseported orderBy value!`)},_.manager._getNodeWidth=function(e,t){switch(t.orientation){case _.orientation.top:case _.orientation.top_left:case _.orientation.bottom:case _.orientation.bottom_left:return e.w;case _.orientation.right:case _.orientation.right_top:case _.orientation.left:case _.orientation.left_top:return e.h}return 0},_.manager._isVisible=function(e,t,n,r,i,a,o){var s=0;if(_.LAZY_LOADING_FACTOR==`auto`){var c=a/i*2,l=o/i*2;s=Math.ceil(c>l?c:l)}else s=_.LAZY_LOADING_FACTOR/i;if(!(e.x==null||e.y==null)){if(_._getLazyLoading(t)&&r!==_.action.exporting){function t(e,t){var n=e.x,r=e.y,i=e.w,a=e.h,o=t[0]-s,c=t[2]+s+t[0],l=t[1]-s,u=t[3]+s+t[1],d=n+i>o&&c>n;return d&&=r+a>l&&u>r,d}if(t(e,n))return!0;for(var u=0;u<e.children.length;u++)if(t(e.children[u],n))return!0;return!1}return!0}},_.manager.getAllFields=function(e){var t=[_.TAGS];for(var n in e.nodeBinding)t.push(e.nodeBinding[n]);for(var n=0;n<e.nodes.length;n++)for(var r in e.nodes[n])r!==_.ID&&r!==_.TAGS&&r!==_.NODES&&r!==_.PID&&r!==_.STPID&&r!==`movex`&&r!==`movey`&&(e.nodeBinding[r]||t.has(r)||t.push(r));return t},_.manager._getMostDeepChild=function(e){if(!e)return;var t=e;function n(e){e.sl>t.sl&&(t=e);for(var r=0;r<e.children.length;r++)n(e.children[r])}return n(e),t},_.manager._getResponse=function(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m){var h=l[0],g=[],v={top:null,left:null,bottom:null,right:null,minX:null,maxX:null,minY:null,maxY:null},y=[[],[],[]],b=i-o+r.padding*2,x=a-s+r.padding*2,S=_.getScale(c,e,t,r.scaleInitial,r.scaleMax,r.scaleMin,b,x);if(v.top=s-r.padding,v.left=o-r.padding,v.bottom=a+r.padding-t/S,v.right=i+r.padding-e/S,v.maxX=i,v.minX=o,v.maxY=a,v.minY=s,l.length==0||c==null&&!m&&r.align==_.CENTER){var C=Math.ceil(e/S),w=Math.ceil(t/S),T=0,E=0;if(C-r.padding*2>=i-o)switch(T=(i+o)/2-C/2,r.orientation){case _.orientation.right:case _.orientation.right_top:T=(o-i)/2-C/2;break}else switch(T=h.x-C/2+_.manager._getNodeWidth(h,r)/2,r.orientation){case _.orientation.right:case _.orientation.right_top:T=-(C/2-(o-i)/2),T<r.padding-C&&(T=r.padding-C);break;case _.orientation.left:case _.orientation.bottom_left:case _.orientation.top_left:case _.orientation.left_top:T=-(C/2-(i-o)/2),T>-r.padding&&(T=-r.padding);break}if(w-r.padding*2>=a-s)switch(E=(a+s)/2-w/2,r.orientation){case _.orientation.bottom:case _.orientation.bottom_left:E=(s-a)/2-w/2;break}else switch(E=-(w/2-(a-s)/2),E>-r.padding&&(E=-r.padding),r.orientation){case _.orientation.bottom:case _.orientation.bottom_left:E=-(w/2-(s-a)/2),E<r.padding-w&&(E=r.padding-w);break;case _.orientation.left:case _.orientation.right:E=h.y-w/2+_.manager._getNodeWidth(h,r)/2;break}c=[T,E,C,w]}else if(c==null&&!m&&r.align==_.ORIENTATION){var C=Math.ceil(e/S),w=Math.ceil(t/S),T=0,E=0;switch(r.orientation){case _.orientation.top:T=h.x-C/2+_.manager._getNodeWidth(h,r)/2,E=-r.padding;break;case _.orientation.bottom:T=h.x-C/2+_.manager._getNodeWidth(h,r)/2,E=r.padding-w;break;case _.orientation.left:T=-r.padding,E=h.y-w/2+_.manager._getNodeWidth(h,r)/2;break;case _.orientation.right:T=r.padding-C,E=h.y-w/2+_.manager._getNodeWidth(h,r)/2;break;case _.orientation.top_left:T=-r.padding,E=-r.padding;break;case _.orientation.right_top:T=r.padding-C,E=-r.padding;break;case _.orientation.left_top:T=-r.padding,E=-r.padding;break;case _.orientation.bottom_left:T=-r.padding,E=r.padding-w;break}c=[T,E,C,w]}if(u==_.action.centerNode||u==_.action.maximize){var D=_._getCenterNodeFromParams(f,d);d.options.horizontal==1&&(c[0]=D.x+D.w/2-c[2]/2),d.options.vertical==1&&(c[1]=D.y+D.h/2-c[3]/2)}if(u==_.action.insert||u==_.action.expand||u==_.action.collapse||u==_.action.update||u==_.action.centerNode){var O=null;if(u==_.action.insert&&d&&d.insertedNodeId!=null&&d.insertedNodeId!=null)O=f[d.insertedNodeId];else if(u==_.action.update&&d&&d.visId!=null&&d.visId!=null)O=f[d.visId];else if((u==_.action.expand||u==_.action.collapse)&&d&&d.id!=null&&d.id!=null)O=f[d.id],O=_.manager._getMostDeepChild(O);else if(u==_.action.centerNode){switch(r.orientation){case _.orientation.top:case _.orientation.top_left:case _.orientation.bottom:case _.orientation.bottom_left:d.options.vertical||(O=f[d.id]);break;case _.orientation.right:case _.orientation.right_top:case _.orientation.left:case _.orientation.left_top:d.options.horizontal||(O=f[d.id]);break}O&&=_.manager._getMostDeepChild(O)}if(!_.FIXED_POSITION_ON_CLICK&&O){if(O.isTreeListItem){for(;!O.stParent;)O=O.parent;O=O.stParent}switch(r.orientation){case _.orientation.top:case _.orientation.top_left:var k=O.y+O.h-c[3]+r.padding;c[1]<k&&(c[1]=k);break;case _.orientation.bottom:case _.orientation.bottom_left:var k=O.y-r.padding;c[1]>k&&(c[1]=k);break;case _.orientation.right:case _.orientation.right_top:var k=O.x-r.padding;c[0]>k&&(c[0]=k);break;case _.orientation.left:case _.orientation.left_top:var k=O.x+O.w-c[2]+r.padding;c[0]<k&&(c[0]=k);break}}}for(var A=0;A<l.length;A++)_.manager._iterate2(l[A],f,r,c,u,d,g,p,n,y,S,e,t);return{animations:y,boundary:v,viewBox:c,visibleNodeIds:g,nodes:f,allFields:_.manager.getAllFields(r)}},_.manager._iterate2=function(e,t,n,r,i,a,o,s,c,l,u,d,f){if(_.manager._isVisible(e,n,r,i,u,d,f)){o.push(e.id);var p=null;if((i==_.action.expand||i==_.action.collapse||i==_.action.maximize)&&s&&s[e.id]&&a.method==`expandCollapseToLevel`){var m=s[e.id];if(p={x:m.x,y:m.y},m){p={x:m.x,y:m.y};for(var h=e,g=null;h!=null;)s[h.id]&&s[h.id].collapsed&&(g=h),h=h.parent;g&&g.parent&&(p={x:g.parent.x,y:g.parent.y})}var v=t[a.id];if(v){for(var h=e.parent;h!=null;)h=h.parent;h&&(p={x:v.x+v.w/2-e.w/2,y:v.y+v.h/2-e.h/2})}}else if((i==_.action.expand||i==_.action.collapse)&&s&&s[e.id]){var m=s[e.id];if(p={x:m.x,y:m.y},a.ids==`all`&&m){p={x:m.x,y:m.y};for(var h=e,g=null;h!=null;)s[h.id]&&s[h.id].collapsed&&(g=h),h=h.parent;g&&g.parent&&(p={x:g.parent.x,y:g.parent.y})}var v=t[a.id];if(v){for(var h=e.parent;h!=null&&a.ids.indexOf(e.id)==-1&&a.ids.indexOf(h.id)==-1;)h=h.parent;h&&(p={x:v.x+v.w/2-e.w/2,y:v.y+v.h/2-e.h/2})}}else if(i==_.action.centerNode&&s&&s[e.id]){var m=s[e.id];m.x!=null&&m.y!=null&&(p={x:m.x,y:m.y});var y=_._getCenterNodeFromParams(t,a);if(y&&y==e){var h=e.parent;h&&h.id==a.id&&(p={x:y.x+y.w/2-e.w/2,y:y.y+y.h/2-e.h/2})}}else if(i==_.action.maximize&&s&&s[e.id]){var m=s[e.id];m.x!=null&&m.y!=null&&(p={x:m.x,y:m.y});var y=_._getCenterNodeFromParams(t,a);if(y&&y==e){var h=e.parent;h&&h.id==a.id&&(p={x:y.x+y.w/2-e.w/2,y:y.y+y.h/2-e.h/2})}}else if(i==_.action.minimize&&s&&s[e.id]){var m=s[e.id];p={x:m.x,y:m.y}}else if(i==_.action.insert&&a&&a.insertedNodeId==e.id&&e.parent)p={x:e.parent.x,y:e.parent.y};else if((i==_.action.update||i==_.action.insert)&&s){var m=s[e.id];if((!m||_.isNEU(m.x)&&_.isNEU(m.y))&&a){var v=t[a.id];if(v){for(var h=v;h&&h.id==e.id;)h=h.parent;h&&(p={x:v.x,y:v.y})}}else m&&(p={x:m.x,y:m.y})}else i!==_.action.exporting&&i!==_.action.init&&c.indexOf(e.id)==-1&&(l[0].push(e.id),l[1].push({opacity:0}),l[2].push({opacity:1}));p!=null&&p.x!=null&&p.y!=null&&(p.x!=e.x||p.y!=e.y)&&!(a&&a.dragNodeIdList&&a.dragNodeIdList.indexOf(e.id)!=-1)&&!e.isSplit&&(l[0].push(e.id),l[1].push({transform:[1,0,0,1,p.x,p.y]}),l[2].push({transform:[1,0,0,1,e.x,e.y]}))}for(var b=0;b<e.stChildren.length;b++)_.manager._iterate2(e.stChildren[b],t,n,r,i,a,o,s,c,l,u,d,f);for(var b=0;b<e.children.length;b++)_.manager._iterate2(e.children[b],t,n,r,i,a,o,s,c,l,u,d,f)},_.manager._addExpandedNodeIdsIterate=function(e,t,n){for(var r=0;r<e.childrenIds.length;r++)n.push(e.childrenIds[r]),_.manager._addExpandedNodeIdsIterate(t[e.childrenIds[r]],t,n)},_.manager._setChildCountPropsIterate=function(e,t){e.w===void 0&&(e.collapsedChildCount=e.childrenIds.length),e.deepChildCount=e.childCount=e.childrenIds.length,e.deepCollapsedChildCount=e.collapsedChildCount;for(var n=t[e.pid];n;)n.deepCollapsedChildCount+=e.collapsedChildCount,n.deepChildCount+=e.childCount,n=t[n.pid];for(var r of e.stChildrenIds)_.manager._setChildCountPropsIterate(t[r],t);for(var r of e.childrenIds)_.manager._setChildCountPropsIterate(t[r],t)},_.manager._setMinMaxXYAdjustifyIterate=function(e,t,n,r,i,a,o,s){e.x+=a.x,e.y+=a.y;for(var c of e.stChildren)_.manager._setMinMaxXYAdjustifyIterate(c,c,n,0,i,a,o,s);e.isPartner?e.sl=r-1:e.sl=r,i[t.id]??(i[t.id]={}),i[t.id][e.sl]??(i[t.id][e.sl]={minX:null,minY:null,maxX:null,maxY:null}),e.layout?(s[t.id]??(s[t.id]={}),s[t.id][e.sl]??(s[t.id][e.sl]=e)):_._setMinMaxXY(e,i[t.id][e.sl],!0),e.movex!=null&&(e.x+=e.movex),e.movey!=null&&(e.y+=e.movey),_._setMinMaxXY(e,n,!0),r++;for(var c of e.children)_.manager._setMinMaxXYAdjustifyIterate(c,t,n,r,i,a,o,s)},_.manager._doNotChangePositionOfClickedNodeIfAny=function(e,t,n,r,i,a){if(n!=_.action.expand&&n!=_.action.collapse&&n!=_.action.minimize&&n!=_.action.maximize&&n!=_.action.centerNode&&n!=_.action.update&&n!=_.action.insert)return{x:0,y:0};if(n==_.action.update&&(!r||r.id==null)){if(!e||!e.length)return{x:0,y:0};r={id:e[0].id}}if(r.id==null)return{x:0,y:0};var o=r.id;(n==_.action.minimize&&t[o].parent||n==_.action.maximize&&t[o].parent)&&(o=t[o].pid);var s=t[o],c=i[o];if(!c)return{x:0,y:0};var l=c.movex==null?0:c.movex,u=c.movey==null?0:c.movey,d={x:(c.x?c.x-l:0)-s.x,y:(c.y?c.y-u:0)-s.y};return s&&s.isTreeListItem?{x:0,y:0}:d},_.manager._verticalAssistantIterate=function(e,t){for(var n=0;n<e.stChildren.length;n++)_.manager._verticalAssistantIterate(e.stChildren[n],t);if(e.children.length==3)_.manager._verticalAssistantIterate(e.children[0],t),_.manager._verticalAssistantIterate(e.children[2],t),_.manager._verticalAssistantIterate(e.children[1],t);else for(var n=0;n<e.children.length;n++)_.manager._verticalAssistantIterate(e.children[n],t);if(e.isAssistant&&e.isSplit&&e.children.length){for(var r=e.parent.children[0],i=e.parent.children[2],a=e.parent;!a.hasAssistants;)a=a.parent;var o={max:0},s={max:0};_.manager._verticalAssistantLevelCountIterate(r,0,o),_.manager._verticalAssistantLevelCountIterate(i,0,s);for(var c=Math.max(o.max,s.max),l=[],n=0;n<c;n++){var u=new _.node(e.parent.id+`_split_assitant_level_`+n,e.pid,[],`subLevel`);_.manager._initDinamicNode(u,e.lcn,!0),a.movex!=null&&(u.movex=a.movex),a.movey!=null&&(u.movey=a.movey),n>0&&(l[n-1].children.push(u),u.parent=l[n-1]),t[u.id]=u,l.push(u)}if(l.length){for(var d=l[l.length-1],f=l[0],p=e.children.length-1;p>=0;p--){var m=e.children[p];d.children.unshift(m),m.parent=d,e.children.splice(p,1)}e.children.push(f),f.parent=e}}},_.manager._verticalAssistantLevelCountIterate=function(e,t,n){n.max<t&&(n.max=t),t++;for(var r=0;r<e.children.length;r++)_.manager._verticalAssistantLevelCountIterate(e.children[r],t,n)},_._addDottedLines=function(e){var t=e.nodes;if((e.groupDottedLines.length||e.dottedLines.length)&&(t=JSON.parse(JSON.stringify(t))),e.groupDottedLines.length)for(var n=[],r=0;r<e.groupDottedLines.length;r++){var i=e.groupDottedLines[r];i.rootId??=i.to;var a=`balkan_group_dotted_${i.rootId}`;if(!n.has(a)){for(var o=0;o<t.length;o++)if(t[o].id==i.rootId){var s=JSON.parse(JSON.stringify(t[o]));s.id=`balkan_group_dotted_${i.rootId}_balkan_id_${t[o].id}`,s.pid=void 0,s.stpid=t[o].id,t.push(s),n.push(a),t[o].tags||(t[o].tags=[]),t[o].tags.push(`group-dotted-lines`),t[o].tags.push(`group-dotted-lines-`+a);break}}for(var o=0;o<t.length;o++)if(t[o].id==i.from){var s=JSON.parse(JSON.stringify(t[o]));if(s.id=`balkan_group_dotted_${i.rootId}_balkan_id_${t[o].id}`,s.pid=`balkan_group_dotted_${i.rootId}_balkan_id_${i.to}`,s.tags){var c=s.tags.indexOf(`group-dotted-lines`);c!=-1&&s.tags.splice(c,1)}if(s.tags||=[],s.tags.push(`boc-dotted-connector`),i.tags)for(var l=0;l<i.tags.length;l++)s.tags.push(i.tags[l]);t.push(s);break}}if(e.dottedLines.length)for(var r=0;r<e.dottedLines.length;r++){var u=e.dottedLines[r];u.rootId??=u.to;for(var o=0;o<t.length;o++)if(t[o].id==u.from){var s=JSON.parse(JSON.stringify(t[o]));if(s.id=`balkan_dotted_${u.rootId}_balkan_id_${t[o].id}`,u.rootId==u.to?s.pid=u.to:s.pid=`balkan_dotted_${u.rootId}_balkan_id_${u.to}`,s.tags||=[],s.tags.push(`boc-dotted-connector`),u.tags)for(var l=0;l<u.tags.length;l++)s.tags.push(u.tags[l]);t.push(s);break}}return t},_===void 0&&(_={}),_.templates={},_.templates.base={defs:``,size:[250,120],expandCollapseSize:30,linkAdjuster:{fromX:0,fromY:0,toX:0,toY:0},ripple:{radius:0,color:`#e6e6e6`,rect:null},svg:`<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="display:block;" width="{w}" height="{h}" viewBox="{viewBox}">{content}</svg>`,link:`<path stroke-linejoin="round" stroke="#aeaeae" stroke-width="1px" fill="none" d="M{xa},{ya} {xb},{yb} {xc},{yc} L{xd},{yd}"/>`,node:`<rect x="0" y="0" height="120" width="250" fill="none" stroke-width="1" stroke="#aeaeae" rx="7" ry="7"></rect>`,plus:function(e,t,n,r,i){var a=r.mode==`dark`?`#1E1E1E`:`#ffffff`;return`<g transform="matrix(1,0,0,1,${i.x-15},${i.y-15})"><circle cx="15" cy="15" r="15" fill="${a}" stroke="#aeaeae" stroke-width="1"></circle>
462
462
  <text text-anchor="middle" style="font-size: 14px;cursor:pointer;" fill="#aeaeae" x="15" y="21">${e.deepCollapsedChildCount}</text></g>`},minus:function(e,t,n,r,i){var a=r.mode==`dark`?`#1E1E1E`:`#ffffff`;return`<g transform="matrix(1,0,0,1,${i.x-15},${i.y-15})"><circle cx="15" cy="15" r="15" fill="${a}" stroke="#aeaeae" stroke-width="1"></circle>
463
- <line x1="4" y1="15" x2="26" y2="15" stroke-width="1" stroke="#aeaeae"></line></g>`},nodeMenuButton:`<g style="cursor:pointer;" transform="matrix(1,0,0,1,225,105)"><rect x="-4" y="-10" fill="#000000" fill-opacity="0" width="22" height="22"></rect><circle cx="0" cy="0" r="2" fill="#ffffff"></circle><circle cx="7" cy="0" r="2" fill="#ffffff"></circle><circle cx="14" cy="0" r="2" fill="#ffffff"></circle></g>`,menuButton:`<div style="user-select:none;position:absolute;right:{p}px;top:{p}px; width:30px;height:50px;cursor:pointer;" `+_.attr.control_export_menu+`=""><hr style="background-color: #7A7A7A; height: 3px; border: none;"><hr style="background-color: #7A7A7A; height: 3px; border: none;"><hr style="background-color: #7A7A7A; height: 3px; border: none;"></div>`,img_0:`<clipPath id="{randId}"><circle cx="60" cy="60" r="40"></circle></clipPath><image preserveAspectRatio="xMidYMid slice" clip-path="url(#{randId})" xlink:href="{val}" x="20" y="20" width="80" height="80"></image>`,link_field_0:`<text text-anchor="middle" fill="#aeaeae" `+_.attr.width+`="290" x="0" y="0" style="font-size:10px;">{val}</text>`,editFormHeaderColor:`#039BE5`,treeListMaxHeight:500},_.templates.ana={defs:``,size:[250,120],linkAdjuster:{fromX:0,fromY:0,toX:0,toY:0},ripple:{radius:0,color:`#e6e6e6`,rect:null},expandCollapseSize:30,svg:`<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="display:block;" width="{w}" height="{h}" viewBox="{viewBox}">{content}</svg>`,link:`<path stroke-linejoin="round" stroke="#aeaeae" stroke-width="1px" fill="none" d="{rounded}" />`,node:function(e,t,n,r){return`<rect x="0" y="0" height="${e.h}" width="${e.w}" fill="#039BE5" stroke-width="1" stroke="#aeaeae" rx="10" ry="10"></rect>`},plus:function(e,t,n,r,i){var a=r.mode==`dark`?`#1E1E1E`:`#ffffff`;return`<g transform="matrix(1,0,0,1,${i.x-15},${i.y-15})"><circle cx="15" cy="15" r="15" fill="${a}" stroke="#aeaeae" stroke-width="1"></circle>
464
- <text text-anchor="middle" style="font-size: 14px;cursor:pointer;" fill="#aeaeae" x="15" y="21">${e.deepCollapsedChildCount}</text></g>`},minus:function(e,t,n,r,i){var a=r.mode==`dark`?`#1E1E1E`:`#ffffff`;return`<g transform="matrix(1,0,0,1,${i.x-15},${i.y-15})"><circle cx="15" cy="15" r="15" fill="${a}" stroke="#aeaeae" stroke-width="1"></circle>
463
+ <line x1="4" y1="15" x2="26" y2="15" stroke-width="1" stroke="#aeaeae"></line></g>`},nodeMenuButton:`<g style="cursor:pointer;" transform="matrix(1,0,0,1,225,105)"><rect x="-4" y="-10" fill="#000000" fill-opacity="0" width="22" height="22"></rect><circle cx="0" cy="0" r="2" fill="#ffffff"></circle><circle cx="7" cy="0" r="2" fill="#ffffff"></circle><circle cx="14" cy="0" r="2" fill="#ffffff"></circle></g>`,menuButton:`<div style="user-select:none;position:absolute;right:{p}px;top:{p}px; width:30px;height:50px;cursor:pointer;" `+_.attr.control_export_menu+`=""><hr style="background-color: #7A7A7A; height: 3px; border: none;"><hr style="background-color: #7A7A7A; height: 3px; border: none;"><hr style="background-color: #7A7A7A; height: 3px; border: none;"></div>`,img_0:`<clipPath id="{randId}"><circle cx="60" cy="60" r="40"></circle></clipPath><image preserveAspectRatio="xMidYMid slice" clip-path="url(#{randId})" xlink:href="{val}" x="20" y="20" width="80" height="80"></image>`,link_field_0:`<text text-anchor="middle" fill="#aeaeae" `+_.attr.width+`="290" x="0" y="0" style="font-size:10px;">{val}</text>`,editFormHeaderColor:`#039BE5`,treeListMaxHeight:500},_.templates.ana={defs:``,size:[250,120],linkAdjuster:{fromX:0,fromY:0,toX:0,toY:0},ripple:{radius:0,color:`#e6e6e6`,rect:null},expandCollapseSize:30,svg:`<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="display:block;" width="{w}" height="{h}" viewBox="{viewBox}">{content}</svg>`,link:`<path stroke-linejoin="round" stroke="#aeaeae" stroke-width="1px" fill="none" d="{rounded}" />`,node:function(e,t,n,r){return`<rect x="0" y="0" height="${e.h}" width="${e.w}" fill="#039BE5" stroke-width="1" stroke="#aeaeae" rx="10" ry="10"></rect>`},plus:function(e,t,n,r,i){var a=r.mode==`dark`?`#1E1E1E`:`#ffffff`;return`<g transform="matrix(1,0,0,1,${i.x-15},${i.y-15})"><circle cx="15" cy="15" r="15" fill="${a}" stroke="#aeaeae" stroke-width="1"></circle>
464
+ <text text-anchor="middle" style="font-size: 14px;cursor:pointer;" fill="#aeaeae" x="15" y="21">${e.deepCollapsedChildCount}</text></g>`},minus:function(e,t,n,r,i){var a=r.mode==`dark`?`#1E1E1E`:`#ffffff`;return`<g transform="matrix(1,0,0,1,${i.x-15},${i.y-15})"><circle cx="15" cy="15" r="15" fill="${a}" stroke="#aeaeae" stroke-width="1"></circle>
465
465
  <line x1="4" y1="15" x2="26" y2="15" stroke-width="1" stroke="#aeaeae"></line></g>`},up:`<rect x="20" y="-25" width="30" height="17" fill="#aeaeae" rx="3" ry="3"></rect><line x1="35" x2="35" y1="0" y2="-8" stroke="#aeaeae" stroke-width="1"></line>`,nodeMenuButton:function(e,t,n,r){return`<g transform="matrix(1,0,0,1,${e.w-25},${e.h-15})"><rect x="-4" y="-10" fill="#000000" fill-opacity="0" width="22" height="22"></rect><circle cx="0" cy="0" r="2" fill="#ffffff"></circle><circle cx="7" cy="0" r="2" fill="#ffffff"></circle><circle cx="14" cy="0" r="2" fill="#ffffff"></circle></g>`},menuButton:_.templates.base.menuButton,img_0:function(e,t,n,r,i){var a=50,o=30,s=40,c=_.randomId();return`<clipPath id="${c}"><circle cx="${a}" cy="${o}" r="${s}"></circle></clipPath><image preserveAspectRatio="xMidYMid slice" clip-path="url(#${c})" xlink:href="${i}" x="${a-s}" y="${o-s}" width="${s*2}" height="${s*2}" ></image>`},link_field_0:`<text text-anchor="middle" fill="#aeaeae" `+_.attr.width+`="290" x="0" y="0" style="font-size:10px;">{val}</text>`,field_0:function(e,t,n,r,i){return _.wrapText(i,`<text style="font-size: 18px;" fill="#ffffff" x="${e.w/2}" y="${e.h-25}" text-anchor="middle"></text>`,e.w-20,1)},field_1:function(e,t,n,r,i){return _.wrapText(i,`<text style="font-size: 14px;" fill="#ffffff" x="${e.w-20}" y="30" text-anchor="end"></text>`,e.w-120,3)},padding:[75,5,50,5],editFormHeaderColor:`#039BE5`,treeListMaxHeight:500},_.templates.split=Object.assign({},_.templates.ana),_.templates.split.size=[10,10],_.templates.split.node=`<circle cx="5" cy="5" r="5" fill="none" stroke-width="1" stroke="#aeaeae"></circle>`,_.templates.split.field_0=``,_.templates.split.field_1=``,_.templates.split.img_0=``,_.templates.dot=Object.assign({},_.templates.split),_.templates.group=Object.assign({},_.templates.ana),_.templates.group.size=[250,120],_.templates.group.padding=[50,20,35,20],_.templates.group.node=`<rect rx="50" ry="50" x="0" y="0" height="{h}" width="{w}" fill="#f2f2f2" stroke-width="0"></rect>`,_.templates.group.link=`<path stroke="#aeaeae" stroke-width="1px" fill="none" d="M{xa},{ya} C{xb},{yb} {xc},{yc} {xd},{yd}"/>`,_.templates.group.nodeMenuButton=`<g style="cursor:pointer;" transform="matrix(1,0,0,1,{ew},25)"><g transform="matrix(1,0,0,1,-22,-8)"><rect x="0" y="0" fill="red" fill-opacity="0" width="18" height="22"></rect><line x1="0" y1="2" x2="9" y2="2" stroke="#aeaeae" stroke-width="1"></line><line x1="0" y1="9" x2="18" y2="9" stroke="#aeaeae" stroke-width="1"></line><line x1="0" y1="16" x2="22" y2="16" stroke="#aeaeae" stroke-width="1"></line></g></g>`,_.templates.group.field_0=`<text `+_.attr.width+`="230" style="font-size: 18px;" fill="#aeaeae" x="{cw}" y="30" text-anchor="middle">{val}</text>`,_.templates.group.field_1=``,_.templates.group.ripple={radius:50,color:`#aeaeae`},_.templates.invisibleGroup=Object.assign({},_.templates.group),_.templates.invisibleGroup.node=``,_.templates.invisibleGroup.padding=[0,0,0,0],_.templates.invisibleGroup.field_0=``,_.templates.invisibleGroup.nodeMenuButton=``,_.templates.mirror={linkAdjuster:{},link:``,node:``,nodeMenuButton:``,size:[0,0]},_.templates.ula=Object.assign({},_.templates.ana),_.templates.ula.field_0=function(e,t,n,r,i){return _.wrapText(i,`<text style="font-size: 18px;" fill="#039BE5" x="100" y="55"></text>`,e.w-105,1)},_.templates.ula.field_1=function(e,t,n,r,i){return _.wrapText(i,`<text data-text-overflow="multiline" style="font-size: 14px;" fill="#afafaf" x="100" y="76"></text>`,e.w-105,3)},_.templates.ula.node=function(e,t,n,r){return`<rect x="0" y="0" height="${e.h}" width="${e.w}" fill="#ffffff" stroke-width="1" stroke="#aeaeae"></rect><line x1="0" y1="0" x2="${e.w}" y2="0" stroke-width="2" stroke="#039BE5"></line>`},_.templates.ula.img_0=function(e,t,n,r,i){var a=50,o=60,s=40,c=_.randomId();return`<clipPath id="${c}"><circle cx="${a}" cy="${o}" r="${s}"></circle></clipPath><image preserveAspectRatio="xMidYMid slice" clip-path="url(#${c})" xlink:href="${i}" x="${a-s}" y="${o-s}" width="${s*2}" height="${s*2}" ></image>`},_.templates.ula.menu=`<g style="cursor:pointer;" transform="matrix(1,0,0,1,225,12)" `+_.attr.control_node_menu_id+`="{id}"><rect x="-4" y="-10" fill="#ffffff" width="22" height="22"></rect><circle cx="0" cy="0" r="2" fill="#039BE5"></circle><circle cx="7" cy="0" r="2" fill="#039BE5"></circle><circle cx="14" cy="0" r="2" fill="#039BE5"></circle></g>`,_.templates.ula.nodeMenuButton=function(e,t,n,r){return`<g transform="matrix(1,0,0,1,${e.w-25}, ${e.h-15})"><rect x="-4" y="-10" fill="#000000" fill-opacity="0" width="22" height="22"></rect><circle cx="0" cy="0" r="2" fill="#AEAEAE"></circle><circle cx="7" cy="0" r="2" fill="#AEAEAE"></circle><circle cx="14" cy="0" r="2" fill="#AEAEAE"></circle></g>`},_.templates.ula.padding=[110,1,1,1],_.templates.olivia=Object.assign({},_.templates.ana),_.templates.olivia.defs=`<style>
466
466
  #olivia_gradient {
467
467
  --color-stop-1: #ffffff;
@@ -531,7 +531,7 @@ performance.now();setTimeout(w,2300>q&&2E3<q?2300-q:500)})])},types:[]});z.ready
531
531
  <path stroke-width="${r}" fill="none" stroke="url(#${e}_linearColors6)" d="${a(n,n,n,300,1)}"/>
532
532
  </g>`},_._intersectionObserver=function(e,t){typeof IntersectionObserver==`function`?new IntersectionObserver(function(e,n){e.forEach(function(e){var n=e.intersectionRatio>0;e.intersectionRatio==0&&(n=e.isIntersecting),t(n)})}).observe(e):t(!0)},_.convertCsvToNodes=function(e){for(var t=_._csvToArray(e),n=t[0],r=[],i=1;i<t.length;i++){for(var a={},o=0;o<t[i].length;o++){var s=n[o],c=t[i][o];a[n[o]]=_._convertStringToArray(s,c)}a.id.trim()!=``&&r.push(a)}return r},_._escapeHtml=function(e){return _.ESCAPE_HTML&&typeof e==`string`?e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`).replace(/'/g,`&#039;`):e},_._escapeDoubleQuotes=function(e){return typeof e==`string`?e.replace(/"/g,`&quot;`):e},_._escapeGreaterLessSign=function(e){return typeof e==`string`?e.replace(/</g,`&lt;`).replace(/>/g,`&gt;`):e},_.roundPathCorners=function(e,t,n){function r(e,t,n){var r=t.x-e.x,a=t.y-e.y,o=Math.sqrt(r*r+a*a);return i(e,t,Math.min(1,n/o))}function i(e,t,n){return{x:e.x+(t.x-e.x)*n,y:e.y+(t.y-e.y)*n}}function a(e,t){e.length>2&&(e[e.length-2]=t.x,e[e.length-1]=t.y)}function o(e){return{x:parseFloat(e[e.length-2]),y:parseFloat(e[e.length-1])}}Array.isArray(e)||(e=e.split(/[,\s]/).reduce(function(e,t){var n=t.match(`([a-zA-Z])(.+)`);return n?(e.push(n[1]),e.push(n[2])):e.push(t),e},[]),e=e.reduce(function(e,t){return parseFloat(t)==t&&e.length?e[e.length-1].push(t):e.push([t]),e},[]));var s=[];if(e.length>1){var c=o(e[0]),l=null;e[e.length-1][0]==`Z`&&e[0].length>2&&(l=[`L`,c.x,c.y],e[e.length-1]=l),s.push(e[0]);for(var u=1;u<e.length;u++){var d=s[s.length-1],f=e[u],p=f==l?e[1]:e[u+1];if(p&&d&&d.length>2&&f[0]==`L`&&p.length>2&&p[0]==`L`){var m=o(d),h=o(f),g=o(p),_,v;n?(_=i(h,d.origPoint||m,t),v=i(h,p.origPoint||g,t)):(_=r(h,m,t),v=r(h,g,t)),a(f,_),f.origPoint=h,s.push(f);var y=i(_,h,.5),b=i(h,v,.5),x=[`C`,y.x,y.y,b.x,b.y,v.x,v.y];x.origPoint=h,s.push(x)}else s.push(f)}if(l){var S=o(s[s.length-1]);s.push([`Z`]),a(s[0],S)}}else s=e;return s.reduce(function(e,t){return e+t.join(` `)+` `},``)},_._isMoved=function(e){return e.movex!=null||e.movey!=null},_._getDynamicGridCoulumns=function(e){for(var t=1;t<e&&(e/t,!(e/t-t<=0));t++);return t%2!=0&&t>2&&t--,t},_._getLazyLoading=function(e){var t=e.lazyLoading;return t==`auto`&&(t=!!(e&&e.nodes&&e.nodes.length>700)),t},_._getSvgAttributes=function(e){let t=/width="([\d.]+)"/,n=/height="([\d.]+)"/,r=/x="([\d.]+)"/,i=/y="([\d.]+)"/,a=/viewBox="([^"]+)"/,o=e.match(t),s=e.match(n),c=e.match(r),l=e.match(i),u=e.match(a),d=o?parseFloat(o[1]):0,f=s?parseFloat(s[1]):0,p=c?parseFloat(c[1]):0,m=l?parseFloat(l[1]):0,h=[0,0,0,0];return u&&(h=u[1],h=JSON.parse(`[${h}]`)),{width:d,height:f,viewBox:h,x:p,y:m}},_._setSvgAttributes=function(e,t){var n=t.x,r=t.y,i=t.width,a=t.height,o=t.viewBox.join(`,`);let s=e.match(/<svg\s+([^>]*?)>/);if(!s)return e;let c=s[0],l=s[1],u=(e,t,n)=>{if(n==null)return e;let r=RegExp(`\\s*${t}="[^"]*"`,`i`),i=` ${t}="${n}"`;return e.match(r)?e.replace(r,i):e+i};l=u(l,`x`,n),l=u(l,`y`,r),l=u(l,`width`,i),l=u(l,`height`,a),l=u(l,`viewBox`,o);let d=`<svg ${l}>`;return e.replace(c,d)},_._convertTextToNodes=function(e,t){let n=e.split(/\r?\n/).filter(e=>e.trim()!==``),r=[],i=1,a=[];for(let e of n){let n=0;for(;e.startsWith(t);)e=e.slice(t.length),n++;if(e=e.trim(),!e)continue;let o=e.match(/^\[([^\]]+)](.*)$/);if(o){let e=o[1].trim(),t=o[2].trim();a.length>0&&(a[a.length-1][e]=t);continue}let s=e.match(/^([^\(]+)\(([^)]+)\)$/),c,l=[];s?(c=s[1].trim(),l=s[2].split(`,`).map(e=>e.trim())):c=e;let u=n===0?null:a[n-1].id,d={id:i++,pid:u,name:c,tags:l};a[n]=d,a.length=n+1,r.push(d)}return r},_._convertFromNodesToText=function(e,t){let n={},r=[];e.forEach(e=>{n[e.id]={...e,children:[]}}),e.forEach(e=>{e.pid&&n[e.pid]?n[e.pid].children.push(n[e.id]):r.push(n[e.id])});function i(e,n){let r=t.repeat(n),a=r+e.name;Array.isArray(e.tags)&&e.tags.length>0&&(a+=`(`+e.tags.join(`,`)+`)`),a+=`
533
533
  `;for(let t of Object.keys(e))[`id`,`pid`,`name`,`children`,`tags`].includes(t)||(a+=r+`[`+t+`]`+e[t]+`
534
- `);for(let t of e.children)a+=i(t,n+1);return a}return r.map(e=>i(e,0)).join(``).trim()},_._onClickHandler=function(e,t,n,r,i){var a;if(n===void 0)if(t===`add`){var o={id:e.generateId(),pid:r};e.addNode(o,null,!0)}else if(t===`edit`){var s=e.getNode(r);e.editUI.show(s.id)}else if(t===`details`){var s=e.getNode(r);e.editUI.show(s.id,!0)}else if(t===`remove`)e.removeNode(r,null,!0);else if(t===`svg_export`||t===`svg`){var c={};_.isNEU(r)||(c.pages=[{nodeId:r}]),e.exportToSVG(c)}else if(t===`pdf_export`||t===`pdf`){var c={};_.isNEU(r)||(c.pages=[{nodeId:r}]),e.exportToPDF(c)}else if(t===`png_export`||t===`png`){var c={};_.isNEU(r)||(c.pages=[{nodeId:r}]),e.exportToPNG(c)}else if(t===`visio_export`||t===`visio`)e.exportToVisio({nodeId:r});else if(t===`pp_export`||t===`powerpoint`)e.exportToPowerPoint();else if(t===`pp_preview`||t===`pppreview`){var c={parentLevels:0,childLevels:1,expandChildren:!1,pages:[{parentLevels:null,childLevels:null,expandChildren:!0,nodeId:e.roots[0].id}]};r!=null&&(c.expandChildren=!1,c.pages[0].nodeId=r),e.powerPointPreviewUI.show(c)}else if(t===`pdf_preview`||t===`pdfpreview`){var c={parentLevels:0,childLevels:1,expandChildren:!1,pages:[{parentLevels:null,childLevels:null,expandChildren:!0,nodeId:e.roots[0].id}]};r!=null&&(c.expandChildren=!1,c.pages[0].nodeId=r),e.pdfPreviewUI.show(c)}else if(t===`svg_preview`||t===`svgpreview`){var c={parentLevels:0,childLevels:1,expandChildren:!1,pages:[{parentLevels:null,childLevels:null,expandChildren:!0,nodeId:e.roots[0].id}]};r!=null&&(c.expandChildren=!1,c.pages[0].nodeId=r),e.svgPreviewUI.show(c)}else if(t===`png_preview`||t===`pngpreview`){var c={parentLevels:0,childLevels:1,expandChildren:!1,pages:[{parentLevels:null,childLevels:null,expandChildren:!0,nodeId:e.roots[0].id}]};r!=null&&(c.expandChildren=!1,c.pages[0].nodeId=r),e.pngPreviewUI.show(c)}else t===`csv_export`||t===`csv`?e.exportToCSV({nodeId:r}):t===`xml_export`||t===`xml`?e.exportToXML({nodeId:r}):t===`json_export`||t===`json`?e.exportToJSON({nodeId:r}):t===`fit`?e.fit():t===`expand_all`?e.expand(null,`all`):t===`full_screen`?e.toggleFullScreen():t===`zoom_in`?e.zoom(!0,null,!0):t===`zoom_out`||t===`zoom_out`?e.zoom(!1,null,!0):t===`layout_mixed`?e.setLayout(_.layout.mixed):t===`layout_normal`?e.setLayout(_.layout.normal):t===`layout_right_offset`?e.setLayout(_.layout.treeRightOffset):t===`layout_left_offset`?e.setLayout(_.layout.treeLeftOffset):t===`layout_tree`?e.setLayout(_.layout.tree):t===`layout_grid`&&e.setLayout(_.layout.grid);else a=n.call(e,r,i);return a},_._isSVG=function(e){if(typeof e!=`string`)return!1;let t=e.trim();if(!t.startsWith(`<svg`)||!t.endsWith(`</svg>`))return!1;try{let e=new DOMParser().parseFromString(t,`image/svg+xml`);return e.querySelector(`parsererror`)?!1:e.documentElement.nodeName.toLowerCase()===`svg`}catch{return!1}},_._treeListAdjustToSTNodePostition=function(e,t){for(var n of e)n.y+=t.y+t.padding[0],n.x+=t.x+t.padding[3],_._treeListAdjustToSTNodePostition(n.children,t)},_._treeListSetProps=function(e,t){var n=-e.treeList.scrollTop,r={nodesByLevels:[],lastNode:null,y:0};e.treeList.pinnedIds=[],_._treeListIterate(e.stChildren,r,-1);var i=r.lastNode.y+r.lastNode.h-0-(e.treeList.maxHeight-e.padding[0]-e.padding[2]);n>0||i<0?n=0:n!=0&&n*-1>i&&(n=-i);for(var a=r.nodesByLevels.length-1;a>=0;a--)for(var o=r.nodesByLevels[a],s=o.length-1;s>=0;s--){for(var c=o[s],l=c.y,u=0,d=c.parent;d&&(u+=d.h,d.parent);)d=d.parent;if(c.children.length&&c.y+n<=u){l=-n+u;var f=o[s+1];if(f&&f.y<l+c.h&&(l=f.y-c.h),d){var p=e.stChildren.indexOf(d);if(e.stChildren.length>p+1){var m=e.stChildren[p+1];m.y<l+c.h&&(l=m.y-c.h)}}}c.y!=l&&e.treeList.pinnedIds.push(c.id),c.y=l,c.x=0}if(t==_.orientation.bottom){var h=r.lastNode.y+r.lastNode.h;for(var a of r.nodesByLevels)for(var c of a)c.y=h-c.y-c.h}e.treeList.scrollTop=-n,e.treeList.scrollTopMax=i},_._treeListIterate=function(e,t,n){n++;for(var r of e)r.y=t.y,t.y+=r.h,t.nodesByLevels[n]||(t.nodesByLevels[n]=[]),t.nodesByLevels[n].push(r),t.lastNode=r,_._treeListIterate(r.children,t,n)},_._treeListGetTumbPositionFromScrollTop=function(e){var t=e.h-e.padding[0]-e.padding[2],n=t/((e.treeList.scrollTopMax+t)/100),r=t/100*n,i=t-r,a=-e.treeList.scrollTop/(e.treeList.scrollTopMax/100),o=e.y+e.padding[0]+i/-100*a,s=`initial`;return(isNaN(r)||isNaN(o)||r<0||n>100)&&(s=`none`,r=0,o=0),{thumbHeight:r,thumbPosition:o,scrollBarDisplay:s}},_._treeListGetScrollTopFromTumbPosition=function(e,t,n){var r=e.h-e.padding[0]-e.padding[2]-t,i=(n-(e.y+e.padding[0]))/r*100/100*e.treeList.scrollTopMax;return(isNaN(i)||i<0)&&(i=0),i>e.treeList.scrollTopMax&&(i=e.treeList.scrollTopMax),i},_._getCenterNodeFromParams=function(e,t){var n=e[t.id];if(n){if(n.isTreeListItem){for(;!n.stParent;)n=n.parent;n=n.stParent}return n}return null},_._getScrollTopForNode=function(e,t){var n={nodesByLevels:[],lastNode:null,y:0};_._treeListIterate(e.stChildren,n,-1);var r=null;for(var i of n.nodesByLevels){for(var a of i)if(a.id==t){r=a;break}if(r)break}if(!r)return e.treeList.scrollTop;for(var o=0,s=r.parent;s&&(o+=s.h,s.parent);)s=s.parent;var c=e.padding[0],l=e.padding[2],u=e.treeList.maxHeight-c-l,d=n.lastNode.y+n.lastNode.h-u;d<0&&(d=0);var f=e.treeList.scrollTop,p=r.y-o,m=r.y+r.h-u,h=f;return r.y<f+o?h=p:r.y+r.h>f+u&&(h=r.h>u-o?p:m),h<0?h=0:h>d&&(h=d),h},_._getDefailtPositionForExpandCollpase=function(e,t){var n={x:0,y:0};switch(e.orientation){case _.orientation.top:case _.orientation.top_left:n.x=t.w/2,n.y=t.h;break;case _.orientation.bottom:case _.orientation.bottom_left:n.x=t.w/2,n.y=0;break;case _.orientation.right:case _.orientation.right_top:n.x=0,n.y=t.h/2;break;case _.orientation.left:case _.orientation.left_top:n.x=t.w,n.y=t.h/2;break}return n},_._measureCache={svg:null,text:null},_._getMeasureElement=function(){if(_._measureCache.svg)return _._measureCache.text;let e=`http://www.w3.org/2000/svg`;return _._measureCache.svg=document.createElementNS(e,`svg`),_._measureCache.svg.id=`orgchart_js_test__measure`,_._measureCache.svg.style.cssText=`position:absolute;top:-9999px;visibility:hidden;white-space:pre;`,_._measureCache.text=document.createElementNS(e,`text`),_._measureCache.svg.appendChild(_._measureCache.text),document.body.appendChild(_._measureCache.svg),_._measureCache.text},_._lineClamp=function(e,t,n,r){if(t===void 0||t==null)return``;typeof t!=`string`&&(t=t.toString()),t=_._escapeHtml(t);let i=/(\w+(?:-\w+)?)="([^"]*)"/g,a={},o;for(;(o=i.exec(e))!==null;)a[o[1]]=o[2];let s=_._getMeasureElement();s.textContent=``;for(let[e,t]of Object.entries(a))e!==`x`&&e!==`y`&&s.setAttribute(e,t);let c=e=>(s.textContent=e,s.getComputedTextLength()),l=t.split(` `),u=[],d=``,f=0;for(;f<l.length&&u.length<r;){let e=l[f],t=d?d+` `+e:e;if(c(t)<=n)d=t,f++;else if(d===``){let t=0,r=e.length,i=1;for(;t<=r;){let a=t+r>>1;c(e.slice(0,a))<=n?(i=a,t=a+1):r=a-1}u.push(e.slice(0,i)),l[f]=e.slice(i)}else u.push(d),d=``}d&&u.length<r&&u.push(d);let p=f<l.length||f===l.length&&l[f-1]===``&&t.endsWith(` `);if(p&&u.length>0){let e=u[u.length-1],t=0,r=e.length,i=``;for(;t<=r;){let a=Math.floor((t+r)/2),o=e.substring(0,a)+`...`;c(o)<=n?(i=o,t=a+1):r=a-1}u[u.length-1]=i}let m=` x="${a.x||`0`}"`,h=u.length===1?u[0]:u.map((e,t)=>`<tspan${m} dy="${t===0?0:`1.2em`}">${e}</tspan>`).join(``);return`<text${Object.entries(a).map(([e,t])=>` ${e}="${t}"`).join(``)}>${p?`<title>${t}</title>`:``}${h}</text>`},_._getScrollableTreeListNodeInTouchEnabledDevice=function(e){if(!e||!e.isTreeListItem||!_._isTouchDevice())return null;var t=_.getRootOf(e).stParent,{thumbHeight:n,thumbPosition:r,scrollBarDisplay:i}=_._treeListGetTumbPositionFromScrollTop(t);return i==`none`?null:t},_._convertImagesToBase64=async function(e){let t=new DOMParser;return await Promise.all(e.map(async e=>{let n=t.parseFromString(e,`image/svg+xml`),r=n.querySelectorAll(`image`);for(let e of r){let t=e.getAttribute(`href`)||e.getAttribute(`xlink:href`);if(t&&!t.startsWith(`data:`))try{let n=parseFloat(e.getAttribute(`width`))||0,r=parseFloat(e.getAttribute(`height`))||0;if(n>0&&r>0){let i=await _._resizeAndConvert(t,n,r);e.setAttribute(`href`,i),e.removeAttributeNS(`http://www.w3.org/1999/xlink`,`href`)}}catch(e){console.error(`Failed to process image:`,t,e)}}return new XMLSerializer().serializeToString(n)}))},_._resizeAndConvert=function(e,t,n){return new Promise((r,i)=>{let a=new Image;a.crossOrigin=`anonymous`,a.onload=()=>{let e=document.createElement(`canvas`),i=e.getContext(`2d`),o=Math.min(t/a.width,n/a.height),s=a.width*o,c=a.height*o;e.width=s,e.height=c,i.drawImage(a,0,0,s,c),r(e.toDataURL(`image/png`))},a.onerror=i,a.src=e})},_.xScrollUI=function(e,t,n,r,i){this.element=e,this.requestParams=n,this.config=t,this.onSetViewBoxCallback=r,this.onDrawCallback=i,this.position=0,this.bar=null,this._event_id=_._guid()},_.xScrollUI.prototype.addListener=function(e){var t=this;if(this.config.mouseScrool!=_.action.xScroll&&this.config.mouseScrool!=_.action.scroll||!this.bar)return;var n=navigator.userAgent.indexOf(`Mac OS`)!==-1;function r(e,r,i){var a=!1;e.addEventListener(`wheel`,o,{passive:!1});function o(e){if(e.preventDefault(),!e.ctrlKey){var i=0;if(t.config.mouseScrool==_.action.xScroll)i=e.deltaX||e.wheelDeltaX,i||=e.deltaY||e.wheelDeltaY;else if(t.config.mouseScrool==_.action.scroll&&(i=n||!e.shiftKey?e.deltaX||e.wheelDeltaX:e.deltaY||e.wheelDeltaY,!i))return;i=-i,i=Math.max(-1,Math.min(1,i)),t.position+=-i*r;var o=parseFloat(t.innerBar.clientWidth)-parseFloat(t.bar.clientWidth);t.position<0&&(t.position=0),t.position>o&&(t.position=o),a||s()}}function s(){a=!0;var e=(t.position-t.bar.scrollLeft)/i;if(e>0)e++;else if(e==0){a=!1;return}else e--;Math.ceil(t.bar.scrollLeft)==Math.ceil(t.position)?a=!1:(t.bar.scrollLeft+=e,c(s))}var c=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(e){setTimeout(e,20)}}()}var i=_._getScrollSensitivity();r(e,i.speed,i.smooth)},_.xScrollUI.prototype.create=function(e){if(!(this.config.showXScroll!==!0&&this.config.mouseScrool!==_.action.scroll&&this.config.mouseScrool!==_.action.xScroll)){var t=this;this.bar&&this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar),this.bar=document.createElement(`div`),this.innerBar=document.createElement(`div`),this.requestParams(),this.innerBar.innerHTML=`&nbsp`,Object.assign(this.bar.style,{position:`absolute`,left:0,bottom:0,width:e+`px`,"overflow-x":`scroll`,height:`20px`}),this.element.appendChild(this.bar),this.bar.appendChild(this.innerBar),this.bar.addEventListener(`scroll`,function(){if(this.ignore){this.ignore=!1;return}var e=t.requestParams(),n=(parseFloat(t.innerBar.clientWidth)-parseFloat(t.bar.clientWidth))/100,r=this.scrollLeft/n,i=(e.boundary.right-e.boundary.left)/100;e.viewBox[0]=r*i+e.boundary.left,t.onSetViewBoxCallback(e.viewBox),clearTimeout(this._timeout),this._timeout=setTimeout(function(){t.onDrawCallback()},500)})}},_.xScrollUI.prototype.setPosition=function(){if(this.bar){var e=this.requestParams(),t=(Math.abs(e.boundary.maxX-e.boundary.minX)+this.config.padding*2)*e.scale;switch(this.config.orientation){case _.orientation.right:case _.orientation.right_top:t=Math.abs(e.boundary.minX*e.scale);break}this.innerBar.style.width=t+`px`;var n=(e.boundary.right-e.boundary.left)/100,r=(e.viewBox[0]-e.boundary.left)/n;r<0?r=0:r>100&&(r=100);var i=(parseFloat(this.innerBar.clientWidth)-parseFloat(this.bar.clientWidth))/100,a=r*i;this.bar.ignore=!0,this.bar.scrollLeft=a,this.position=this.bar.scrollLeft,i<=0?this.bar.style.visibility=`hidden`:this.bar.style.visibility=``,this.config.showXScroll!==!0&&(this.bar.style.visibility=`hidden`),_.events.publish(`change`,[this,{isScrollBarVisible:this.bar.style.visibility!=`hidden`}])}},_.xScrollUI.prototype.on=function(e,t){return _.events.on(e,t,this._event_id),this},_.yScrollUI=function(e,t,n,r,i){this.element=e,this.requestParams=n,this.config=t,this.onSetViewBoxCallback=r,this.onDrawCallback=i,this.position=0,this.bar=null,this._event_id=_._guid()},_.yScrollUI.prototype.addListener=function(e){var t=this;if(this.config.mouseScrool!=_.action.yScroll&&this.config.mouseScrool!=_.action.scroll||!this.bar)return;var n=navigator.userAgent.indexOf(`Mac OS`)!==-1;function r(e,r,i){var a=!1;e.addEventListener(`wheel`,o,{passive:!1});function o(e){if(e.preventDefault(),!e.ctrlKey){var i=0;if(t.config.mouseScrool==_.action.yScroll)i=e.deltaY||e.wheelDeltaY,i||=e.deltaX||e.wheelDeltaX;else if(t.config.mouseScrool==_.action.scroll&&(i=n||!e.shiftKey?e.deltaY||e.wheelDeltaY:e.deltaX||e.wheelDeltaX,!i))return;i=-i,i=Math.max(-1,Math.min(1,i)),t.position+=-i*r;var o=parseFloat(t.innerBar.clientHeight)-parseFloat(t.bar.clientHeight);t.position<0&&(t.position=0),t.position>o&&(t.position=o),a||s()}}function s(){a=!0;var e=(t.position-t.bar.scrollTop)/i;if(e>0)e++;else if(e==0){a=!1;return}else e--;Math.ceil(t.bar.scrollTop)==Math.ceil(t.position)?a=!1:(t.bar.scrollTop+=e,c(s))}var c=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(e){setTimeout(e,20)}}()}var i=_._getScrollSensitivity();r(e,i.speed,i.smooth)},_.yScrollUI.prototype.create=function(e){if(!(this.config.showYScroll!==!0&&this.config.mouseScrool!==_.action.scroll&&this.config.mouseScrool!==_.action.yScroll)){var t=this;this.bar&&this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar),this.bar=document.createElement(`div`),this.innerBar=document.createElement(`div`),this.innerBar.innerHTML=`&nbsp`,Object.assign(this.bar.style,{position:`absolute`,right:0,bottom:0,height:e+`px`,"overflow-y":`scroll`,width:`20px`}),this.element.appendChild(this.bar),this.bar.appendChild(this.innerBar),this.bar.addEventListener(`scroll`,function(){if(this.ignore){this.ignore=!1;return}var e=t.requestParams(),n=(parseFloat(t.innerBar.clientHeight)-parseFloat(t.bar.clientHeight))/100,r=this.scrollTop/n,i=(e.boundary.bottom-e.boundary.top)/100;e.viewBox[1]=r*i+e.boundary.top,t.onSetViewBoxCallback(e.viewBox),clearTimeout(this._timeout),this._timeout=setTimeout(function(){t.onDrawCallback()},500)})}},_.yScrollUI.prototype.setPosition=function(){if(this.bar){var e=this.requestParams(),t=(Math.abs(e.boundary.maxY-e.boundary.minY)+this.config.padding*2)*e.scale;switch(this.config.orientation){case _.orientation.bottom:case _.orientation.bottom_left:t=Math.abs(e.boundary.minY*e.scale);break}this.innerBar.style.height=t+`px`;var n=(e.boundary.bottom-e.boundary.top)/100,r=(e.viewBox[1]-e.boundary.top)/Math.abs(n);r<0?r=0:r>100&&(r=100);var i=(parseFloat(this.innerBar.clientHeight)-parseFloat(this.bar.clientHeight))/100,a=r*i;this.bar.ignore=!0,this.bar.scrollTop=a,this.position=this.bar.scrollTop,i<=0?this.bar.style.visibility=`hidden`:this.bar.style.visibility=``,this.config.showYScroll!==!0&&(this.bar.style.visibility=`hidden`),_.events.publish(`change`,[this,{isScrollBarVisible:this.bar.style.visibility!=`hidden`}])}},_.yScrollUI.prototype.on=function(e,t){return _.events.on(e,t,this._event_id),this},_.prototype.zoom=function(e,t,n,r){var i=this.getViewBox().slice(0),a=i,o=i[2],s=i[3];e===!0?(i[2]/=_.SCALE_FACTOR,i[3]/=_.SCALE_FACTOR):e===!1?(i[2]*=_.SCALE_FACTOR,i[3]*=_.SCALE_FACTOR):(i[2]/=e,i[3]/=e),t||=[50,50],i[0]=a[0]-(i[2]-o)/(100/t[0]),i[1]=a[1]-(i[3]-s)/(100/t[1]);var c=this.getScale(i);if(i[2]=this.width()/c,i[3]=this.height()/c,e===!0&&c<this.config.scaleMax||e===!1&&c>this.config.scaleMin||e!=0&&e!=1&&c<this.config.scaleMax&&c>this.config.scaleMin){this._hideBeforeAnimation();var l=this;n?(clearTimeout(l._timeout),_.animate(this.getSvg(),{viewbox:this.getViewBox()},{viewbox:i},this.config.anim.duration,this.config.anim.func,function(){clearTimeout(l._timeout),l._timeout=setTimeout(function(){l._draw(!0,_.action.zoom,null,r)},500)})):(this.setViewBox(i),clearTimeout(l._timeout),l._timeout=setTimeout(function(){l._draw(!0,_.action.zoom,null,r)},500))}},_.loading={},_.loading.show=function(e){var t=`<style>@-webkit-keyframes dot-keyframes {0% { opacity: .4; -webkit-transform: scale(1, 1);transform: scale(1, 1);}50% {opacity: 1;-webkit-transform: scale(1.2, 1.2);transform: scale(1.2, 1.2);}100% {opacity: .4;-webkit-transform: scale(1, 1);transform: scale(1, 1);}}@keyframes dot-keyframes {0% {opacity: .4;-webkit-transform: scale(1, 1);transform: scale(1, 1);}50% {opacity: 1;-webkit-transform: scale(1.2, 1.2);transform: scale(1.2, 1.2);}100% {opacity: .4;-webkit-transform: scale(1, 1);transform: scale(1, 1);}}.boc-loading-dots div {margin: 10px;} .boc-dot-1 {background-color: #039BE5;}.boc-dot-2 {background-color: #F57C00;}.boc-dot-3 {background-color: #FFCA28;} .boc-loading-dots {text-align: center;width: 100%; position: absolute; top: 0;}.boc-loading-dots--dot {-webkit-animation: dot-keyframes 1.5s infinite ease-in-out;animation: dot-keyframes 1.5s infinite ease-in-out; border-radius: 10px;display: inline-block;height: 10px;width: 10px;}.boc-loading-dots--dot:nth-child(2) {-webkit-animation-delay: .5s;animation-delay: .5s;}.boc-loading-dots--dot:nth-child(3) {-webkit-animation-delay: 1s;animation-delay: 1s;}</style><div class="boc-loading-dots"><div class="boc-loading-dots--dot boc-dot-1"></div><div class="boc-loading-dots--dot boc-dot-2"></div><div class="boc-loading-dots--dot boc-dot-3"></div></div>`,n=document.createElement(`div`);n.id=`boc-loading`,n.innerHTML=t,e.element.appendChild(n)},_.loading.hide=function(e){var t=e.element.querySelector(`#boc-loading`);t&&t.parentNode.removeChild(t)},_.pdfPrevUI={},_.pdfPrevUI.show=function(e,t){console.warn(`OrgChart.pdfPrevUI.show is obsolete; use chart.pdfPreviewUI.show instead.`)},_.pdfPrevUI.hide=function(){console.warn(`OrgChart.pdfPrevUI.hide is obsolete; use chart.pdfPreviewUI.hide instead.`)},_===void 0&&(_={}),_.events.on(`renderdefs`,function(e,t){for(var n=0;n<e.config.clinks.length;n++){var r=e.config.clinks[n].template;r||=`orange`;var i=_.clinkTemplates[r];t.defs+=i.defs}}),_.events.on(`prerender`,function(e,t){_.RENDER_CLINKS_BEFORE_NODES&&e._clink(e,t)}),_.events.on(`render`,function(e,t){_.RENDER_CLINKS_BEFORE_NODES||e._clink(e,t)}),_.events.on(`drag`,function(e,t,n,r){if(e instanceof _&&e.config.movable&&r)for(var i=0;i<r.length;i++){for(var a=r[i],o=e.element.querySelectorAll(`[data-c-l-from="${a}"]`),s=e.element.querySelectorAll(`[data-c-l-to="${a}"]`),c=0;c<o.length;c++)o[c].parentNode.removeChild(o[c]);for(var c=0;c<s.length;c++)s[c].parentNode.removeChild(s[c])}}),_.prototype._clink=function(e,t){for(var n=``,r=0;r<this.config.clinks.length;r++){var i=this.config.clinks[r],a=e.getNode(i.from),o=e.getNode(i.to);if(!a||t.res.visibleNodeIds.indexOf(a.id)==-1||!o||t.res.visibleNodeIds.indexOf(o.id)==-1)continue;var s=a.x,c=a.y,l=o.x,u=o.y,d={},f={},p=s+a.w/2,m=l+o.w/2,h=c+a.h/2,g=u+o.h/2,v=1;switch(this.config.orientation){case _.orientation.top:case _.orientation.top_left:p<=m?(v=1,d.x=p+a.w/10,f.x=m-o.w/10):(v=-1,d.x=p-a.w/10,f.x=m+o.w/10),c==u?(v=1,d.y=c,f.y=u):c>u?(d.y=c,f.y=u+o.h):(d.y=c+a.h,f.y=u);break;case _.orientation.bottom:case _.orientation.bottom_left:p<=m?(v=-1,d.x=p+a.w/10,f.x=m+o.w/10):(v=1,d.x=p-a.w/10,f.x=m+o.w/10),c==u?(v=-1,d.y=c+a.h,f.y=u+o.h):c>u?(d.y=c,f.y=u+o.h):(d.y=c+a.h,f.y=u);break;case _.orientation.left:case _.orientation.left_top:h<=g?(v=-1,d.y=h+a.h/5,f.y=g+o.h/5):(v=1,d.y=h-a.h/5,f.y=g+o.h/5),s==l?(v=-1,d.x=s,f.x=l):s>l?(d.x=s,f.x=l+o.w):(d.x=s+a.w,f.x=l);break;case _.orientation.right:case _.orientation.right_top:h<=g?(v=1,d.y=h+a.h/5,f.y=g+o.h/5):(v=-1,d.y=h-a.h/5,f.y=g+o.h/5),s==l?(v=1,d.x=s+a.w,f.x=l+o.w):s>l?(d.x=s,f.x=l+o.w):(d.x=s+a.w,f.x=l);break}function w(e,t,n){n??=1;var r=t.x-e.x,a=t.y-e.y,o=Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2)/3;return o=o/(Math.sqrt(r*r+a*a)*n)*_.clinkCurve(i),{x:e.x+r/2-a*o,y:e.y+a/2+r*o}}var y=w(d,f,v),b=i.template;b||=`orange`;var x=_.clinkTemplates[b];if(i.label){var S=_.clinkLabelPosition(i,d,f,y);n+=x.label.replace(`{x}`,S.x).replace(`{y}`,S.y).replace(`{val}`,i.label)}var C=`M`+d.x+`,`+d.y+`C`+d.x+`,`+d.y+` `+y.x+`,`+y.y+` `+f.x+`,`+f.y;n+=(`<g `+_.attr.c_link_from+`="{from}" `+_.attr.c_link_to+`="{to}">`).replace(`{from}`,a.id).replace(`{to}`,o.id)+x.link.replaceAll(`{d}`,C)+`<path stroke="transparent" stroke-width="15" fill="none" d="`+C+`" />`,n+=_.grCloseTag}t.content+=n},_.clinkLabelPosition=function(e,t,n,r){var i=(n.x-t.x)/2+t.x,a=(n.y-t.y)/2+t.y;return{x:(i-r.x)/2+r.x,y:(a-r.y)/2+r.y}},_.clinkCurve=function(e){return _.CLINK_CURVE},_.prototype.addClink=function(e,t,n,r){this._putInUndoStack(),this.clearRedo();for(var i=this.config.clinks.length-1;i>=0;i--){var a=this.config.clinks[i];a.from==e&&a.to==t&&this.config.clinks.splice(i,1)}return this.config.clinks.push({from:e,to:t,label:n,template:r}),this._ai.setContext(),_.events.publish(`updated`,[this]),this},_.prototype.removeClink=function(e,t){this._putInUndoStack(),this.clearRedo();for(var n=this.config.clinks.length-1;n>=0;n--){var r=this.config.clinks[n];r.from==e&&r.to==t&&this.config.clinks.splice(n,1)}return this._ai.setContext(),_.events.publish(`updated`,[this]),this},_.clinkTemplates={},_.clinkTemplates.orange={defs:`<marker id="arrowOrange" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path fill="#F57C00" d="M 0 0 L 10 5 L 0 10 z" /></marker><marker id="dotOrange" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="5" markerHeight="5"> <circle cx="5" cy="5" r="5" fill="#F57C00" /></marker>`,link:`<path marker-start="url(#dotOrange)" marker-end="url(#arrowOrange)" stroke="#F57C00" stroke-width="2" fill="none" d="{d}" />`,label:`<text fill="#F57C00" text-anchor="middle" x="{x}" y="{y}">{val}</text>`},_.clinkTemplates.blue={defs:`<marker id="arrowBlue" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path fill="#039BE5" d="M 0 0 L 10 5 L 0 10 z" /></marker><marker id="dotBlue" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="5" markerHeight="5"> <circle cx="5" cy="5" r="5" fill="#039BE5" /></marker>`,link:`<path marker-start="url(#dotBlue)" marker-end="url(#arrowBlue)" stroke="#039BE5" stroke-width="2" fill="none" d="{d}" />`,label:`<text fill="#039BE5" text-anchor="middle" x="{x}" y="{y}">{val}</text>`},_.clinkTemplates.yellow={defs:`<marker id="arrowYellow" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path fill="#FFCA28" d="M 0 0 L 10 5 L 0 10 z" /></marker><marker id="dotYellow" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="5" markerHeight="5"> <circle cx="5" cy="5" r="5" fill="#FFCA28" /></marker>`,link:`<path marker-start="url(#dotYellow)" marker-end="url(#arrowYellow)" stroke="#FFCA28" stroke-width="2" fill="none" d="{d}" />`,label:`<text fill="#FFCA28" text-anchor="middle" x="{x}" y="{y}">{val}</text>`},_===void 0&&(_={}),_.events.on(`renderdefs`,function(e,t){for(var n=0;n<e.config.slinks.length;n++){var r=e.config.slinks[n].template;r||=`orange`;var i=_.slinkTemplates[r];t.defs+=i.defs}}),_.events.on(`render`,function(e,t){e._slinks(e,t)}),_.events.on(`drag`,function(e,t,n,r){if(e instanceof _&&e.config.movable&&r)for(var i=0;i<r.length;i++){for(var a=r[i],o=e.element.querySelectorAll(`[data-s-l-from="${a}"]`),s=e.element.querySelectorAll(`[data-s-l-to="${a}"]`),c=0;c<o.length;c++)o[c].parentNode.removeChild(o[c]);for(var c=0;c<s.length;c++)s[c].parentNode.removeChild(s[c])}}),_.prototype._slinks=function(e,t){var n=``,r=this.getScale(),i=t.res.boundary;function a(e,t){return{x:(e[0]+t[0])/2,y:(e[1]+t[1])/2}}function o(t,n,a,o,s){var c=[],l=null,u=_.t(t.templateName,t.min,r),d=o.levelSeparation;t.parent&&t.parent.layout&&(d=o.mixedHierarchyNodesSeparation);var f;switch(o.orientation){case _.orientation.top:case _.orientation.top_left:f={p:t.x+t.w/2,q:t.y,r:t.x+t.w/2,s:i.minY+d};break;case _.orientation.bottom:case _.orientation.bottom_left:f={p:t.x+t.w/2,q:t.y+t.h,r:t.x+t.w/2,s:i.maxY};break;case _.orientation.left:case _.orientation.left_top:f={p:t.x,q:t.y+t.h/2,r:i.minX+d,s:t.y+t.h/2};break;case _.orientation.right:case _.orientation.right_top:f={p:t.x+t.w,q:t.y+t.h/2,r:i.maxX,s:t.y+t.h/2};break}if(t.sl==n.sl)switch(l=n,o.orientation){case _.orientation.top:case _.orientation.top_left:c.push([f.p,f.q]),c.push([f.p,f.q-_.SLINK_GAP*2]),u=_.t(l.templateName,l.min,r),c.push([l.x+l.w/2,c[c.length-1][1]]),c.push([c[c.length-1][0],l.y]);break;case _.orientation.bottom:case _.orientation.bottom_left:c.push([f.p,f.q]),c.push([f.p,f.q+_.SLINK_GAP*2]),u=_.t(l.templateName,l.min,r),c.push([l.x+l.w/2,c[c.length-1][1]]),c.push([c[c.length-1][0],l.y+l.h]);break;case _.orientation.left:case _.orientation.left_top:c.push([f.p,f.q]),c.push([f.p-_.SLINK_GAP*2,f.q]),u=_.t(l.templateName,l.min,r),c.push([c[c.length-1][0],l.y+l.h/2]),c.push([l.x,c[c.length-1][1]]);break;case _.orientation.right:case _.orientation.right_top:c.push([f.p,f.q]),c.push([f.p+_.SLINK_GAP*2,f.q]),u=_.t(l.templateName,l.min,r),c.push([c[c.length-1][0],l.y+l.h/2]),c.push([l.x+l.w,c[c.length-1][1]]);break}else{switch(o.orientation){case _.orientation.top:case _.orientation.top_left:c.push([f.p,f.q]),c.push([f.r,t.y-_.SLINK_GAP*2]);break;case _.orientation.bottom:case _.orientation.bottom_left:c.push([f.p,f.q]),c.push([f.r,t.y+t.h+_.SLINK_GAP*2]);break;case _.orientation.left:case _.orientation.left_top:c.push([f.p,f.q]),c.push([t.x-_.SLINK_GAP*2,f.s]);break;case _.orientation.right:case _.orientation.right_top:c.push([f.p,f.q]),c.push([t.x+t.w+_.SLINK_GAP*2,f.s]);break}for(var p=t,m=t;m.parent;)m=m.parent;for(;l==null;){var h=!1,g=p.parent,v=g.leftNeighbor,y=g.rightNeighbor;if(g.id==n.id?l=g:_._intersects(g,f,o)&&(f=_._addPoint(g,c,o,f,s),h=!0),g.id!=n.id){for(;v;){if(v.id==n.id){l=v;break}_._intersects(v,f,o)&&(f=_._addPoint(v,c,o,f,s),h=!0),v=v.leftNeighbor}for(;y;){if(y.id==n.id){l=y;break}_._intersects(y,f,o)&&(f=_._addPoint(y,c,o,f,s),h=!0),y=y.rightNeighbor}}if(!h){var b=0,x=0;if(g.parent){d=o.levelSeparation,g.parent.layout&&(d=o.mixedHierarchyNodesSeparation);var S=e.manager.bordersByRootIdAndLevel[m.id][g.parent.sl];switch(o.orientation){case _.orientation.top:case _.orientation.top_left:b=c[c.length-1][0],x=S.maxY+d-_.SLINK_GAP;break;case _.orientation.bottom:case _.orientation.bottom_left:b=c[c.length-1][0],x=S.minY-d+_.SLINK_GAP;break;case _.orientation.left:case _.orientation.left_top:b=S.maxX+d-_.SLINK_GAP,x=c[c.length-1][1];break;case _.orientation.right:case _.orientation.right_top:b=S.minX-d+_.SLINK_GAP,x=c[c.length-1][1];break}}c.push([b,x])}p=g}switch(u=_.t(l.templateName,l.min,r),c.splice(c.length-1,1),o.orientation){case _.orientation.top:case _.orientation.top_left:var C=u.expandCollapseSize;s==`left`&&(C*=-1),c.push([l.x+l.w/2+C,c[c.length-1][1]]),c.push([c[c.length-1][0],l.y+l.h]);break;case _.orientation.bottom:case _.orientation.bottom_left:var C=u.expandCollapseSize;s==`left`&&(C*=-1),c.push([l.x+l.w/2+C,c[c.length-1][1]]),c.push([c[c.length-1][0],l.y]);break;case _.orientation.left:case _.orientation.left_top:var C=u.expandCollapseSize;s==`top`&&(C*=-1),c.push([c[c.length-1][0],l.y+l.h/2+C]),c.push([l.x+l.w,c[c.length-1][1]]);break;case _.orientation.right:case _.orientation.right_top:var C=u.expandCollapseSize;s==`top`&&(C*=-1),c.push([c[c.length-1][0],l.y+l.h/2+C]),c.push([l.x,c[c.length-1][1]]);break}}return a&&(c=c.reverse()),c}for(var s=[],c=[],l=[],u=[],d=[],f=0;f<this.config.slinks.length;f++){var p=this.config.slinks[f],m=e.getNode(p.from),h=e.getNode(p.to);if(m&&h&&t.res.visibleNodeIds.indexOf(h.id)!=-1&&t.res.visibleNodeIds.indexOf(m.id)!=-1){var g=m.lcn?m.lcn:`base`,v=e._layoutConfigs[g],y=m.sl<h.sl,b=`left`;switch(v.orientation){case _.orientation.top:case _.orientation.top_left:case _.orientation.bottom:case _.orientation.bottom_left:h.x>=m.x&&(b=`right`);break;case _.orientation.left:case _.orientation.left_top:case _.orientation.right:case _.orientation.right_top:b=`top`,h.y>m.y&&(b=`bottom`);break}var x=y?o(h,m,y,v,b):o(m,h,y,v,b);s.push(x),c.push(p),u.push(b),l.push(v),d.push({from:m,to:h})}}for(var f=0;f<s.length;f++){var x=s[f],p=c[f],b=u[f];switch(_._slinkRemoveUnusedPoints(x),v.orientation){case _.orientation.top:case _.orientation.top_left:case _.orientation.bottom:case _.orientation.bottom_left:_._slinkAvoidOverlaping(e._connectorLines,x,b,v.orientation);break;case _.orientation.left:case _.orientation.left_top:case _.orientation.right:case _.orientation.right_top:_._slinkAvoidOverlaping2(e._connectorLines,x,b,v.orientation);break}}for(var f=s.length-1;f>=0;f--){var x=s[f],p=c[f];switch(v.orientation){case _.orientation.top:case _.orientation.top_left:case _.orientation.bottom:case _.orientation.bottom_left:_._slinkAvoidOverlapingSecond(e._connectorLines,x,v.orientation);break;case _.orientation.left:case _.orientation.left_top:case _.orientation.right:case _.orientation.right_top:_._slinkAvoidOverlapingSecond2(e._connectorLines,x,v.orientation);break}}for(var f=0;f<s.length;f++){var x=s[f],p=c[f],v=l[f],m=d[f].from,h=d[f].to,S=p.template;S||=`orange`;var C=_.slinkTemplates[S],w=null;switch(C.labelPosition){case`start`:w={x:x[1][0],y:x[1][1]};break;case`middle`:var T=Math.ceil(x.length/2);w=a(x[T],x[T-1]);break;case`end`:w={x:x[x.length-2][0],y:x[x.length-2][1]};break}var E=structuredClone(x);E[0].unshift(`M`);for(var D=1;D<x.length;D++)E[D].unshift(`L`);var O=_.roundPathCorners(E,_.LINK_ROUNDED_CORNERS,!1);if(p.label){var k=C.label.replace(`{x}`,w.x).replace(`{y}`,w.y).replace(`{val}`,p.label),A=_._getLabelSize(k),j=-(A.height/2);switch(v.orientation){case _.orientation.bottom:case _.orientation.bottom_left:j=A.height;break}n+=C.label.replace(`{x}`,w.x).replace(`{y}`,w.y+j).replace(`{val}`,p.label)}var M=m.id,N=h.id;y&&(M=h.id,N=m.id),n+=(`<g `+_.attr.s_link_from+`="{from}" `+_.attr.s_link_to+`="{to}">`).replace(`{from}`,M).replace(`{to}`,N)+C.link.replaceAll(`{d}`,O)+`<path stroke="transparent" stroke-width="15" fill="none" d="`+O+`" />`,n+=_.grCloseTag}t.content+=n},_.prototype.addSlink=function(e,t,n,r){this._putInUndoStack(),this.clearRedo();for(var i=this.config.slinks.length-1;i>=0;i--){var a=this.config.slinks[i];a.from==e&&a.to==t&&this.config.slinks.splice(i,1)}return this.config.slinks.push({from:e,to:t,label:n,template:r}),this._ai.setContext(),_.events.publish(`updated`,[this]),this},_.prototype.removeSlink=function(e,t){this._putInUndoStack(),this.clearRedo();for(var n=this.config.slinks.length-1;n>=0;n--){var r=this.config.slinks[n];r.from==e&&r.to==t&&this.config.slinks.splice(n,1)}return this._ai.setContext(),_.events.publish(`updated`,[this]),this},_.slinkTemplates={},_.slinkTemplates.orange={defs:`<marker id="arrowSlinkOrange" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path fill="#F57C00" d="M 0 0 L 10 5 L 0 10 z" /></marker><marker id="dotSlinkOrange" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="5" markerHeight="5"> <circle cx="5" cy="5" r="5" fill="#F57C00" /></marker>`,link:`<path stroke-dasharray="4, 2" marker-start="url(#dotSlinkOrange)" marker-end="url(#arrowSlinkOrange)" stroke-linejoin="round" stroke="#F57C00" stroke-width="2" fill="none" d="{d}" />`,label:`<text dominant-baseline="middle" fill="#F57C00" alignment-baseline="middle" text-anchor="middle" x="{x}" y="{y}">{val}</text>`,labelPosition:`middle`},_.slinkTemplates.blue={defs:`<marker id="arrowSlinkBlue" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path fill="#039BE5" d="M 0 0 L 10 5 L 0 10 z" /></marker><marker id="dotSlinkBlue" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="5" markerHeight="5"> <circle cx="5" cy="5" r="5" fill="#039BE5" /></marker>`,link:`<path stroke-dasharray="4, 2" marker-start="url(#dotSlinkBlue)" marker-end="url(#arrowSlinkBlue)" stroke-linejoin="round" stroke="#039BE5" stroke-width="2" fill="none" d="{d}" />`,label:`<text fill="#039BE5" text-anchor="middle" x="{x}" y="{y}">{val}</text>`,labelPosition:`middle`},_.slinkTemplates.yellow={defs:`<marker id="arrowSlinkYellow" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path fill="#FFCA28" d="M 0 0 L 10 5 L 0 10 z" /></marker><marker id="dotSlinkYellow" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="5" markerHeight="5"> <circle cx="5" cy="5" r="5" fill="#FFCA28" /></marker>`,link:`<path stroke-dasharray="4, 2" marker-start="url(#dotSlinkYellow)" marker-end="url(#arrowSlinkYellow)" stroke-linejoin="round" stroke="#FFCA28" stroke-width="2" fill="none" d="{d}" />`,label:`<text fill="#FFCA28" text-anchor="middle" x="{x}" y="{y}">{val}</text>`,labelPosition:`middle`},_._ai=function(e){this.instance=e,this.sessionId=null},_._ai.prototype.prompt=function(e,t){var n=this;e=e.trim(),e&&(this.sessionId?n._prompt([{Role:`user`,Text:e}],t):this.setContext(function(){n._prompt([{Role:`user`,Text:e}],t)}))},_._ai.prototype._prompt=function(e,t){var n=this,r=[];for(var i of _.AI_SYSTEM_MESSAGES)r.push({Role:`system`,Text:i});var a=this.instance.config.serverUrl+`/OrgChartJSAI/Prompt?client_messages=${encodeURIComponent(JSON.stringify(e))}&system_messages=${encodeURIComponent(JSON.stringify(r))}&sessionId=${this.sessionId}`;let o=new EventSource(a);o.onmessage=function(e){var r=JSON.parse(e.data),i=``;r.kind==`end`&&o.close(),r.kind==`text`&&(i+=r.text,t&&t(r.text)),r.kind==`assistant-message-with-tools`?n.toolCalls(r.message,t):r.kind==`error`&&console.error(r.text)},o.onerror=function(e){console.error(e),o.close()}},_._ai.prototype.setContext=function(e){if(this.instance&&this.instance.config.enableAI&&this.instance.aiUI.canSetContext){this.sessionId=this.instance._event_id;var t=this.instance.config.serverUrl+`/OrgChartJSAI/SetContext`,n=this.instance.config.aiChatTools.slice();for(var r of n)r.functionParameters??=null,r.functionParameters=JSON.stringify(r.functionParameters);fetch(t,{method:`post`,headers:{"Content-Type":`application/json`,"x-request-type":`ajax`},body:JSON.stringify({context:this.instance.config.nodes,sessionId:this.sessionId,chatTools:n})}).then(function(){e&&e()}).catch(function(e){console.error(e)})}},_._ai.prototype.toolCalls=function(e,t){var n=this,r={toolCalls:e.ToolCalls};_.events.publish(`ai-tool-calls`,[this.instance,r]);var i=[],a=[],o=[],s=[],c=[],l=null,u=null,d=null,f=null,p=null;for(var m of r.toolCalls)m.FunctionResult??(m.FunctionName==`removeNode`?i.push(m):m.FunctionName==`addNode`?a.push(m):m.FunctionName==`updateNode`?o.push(m):m.FunctionName==`select`?s.push(m):m.FunctionName==`deselect`?c.push(m):m.FunctionName==`exportToPDF`?l=m:m.FunctionName==`changeTemplate`?u=m:m.FunctionName==`addSlink`?d=m:m.FunctionName==`removeSlink`?f=m:m.FunctionName==`fit`&&(p=m));var h=!1;if(u&&(h=!0,m.FunctionResult=`ok`,this.instance.config.template=m.FunctionArguments.templateName),d){var g=this.instance.getNode(m.FunctionArguments.employeeId1),v=this.instance.getNode(m.FunctionArguments.employeeId2);!g||!v||g==v?m.FunctionResult=`Cannot add link between ${m.FunctionArguments.employeeId1} and ${m.FunctionArguments.employeeId2}`:(h=!0,this.instance.addSlink(g.id,v.id),m.FunctionResult=`ok`)}if(f){var g=this.instance.getNode(m.FunctionArguments.employeeId1),v=this.instance.getNode(m.FunctionArguments.employeeId2);!g||!v||g==v?m.FunctionResult=`Cannot remove link between ${m.FunctionArguments.employeeId1} and ${m.FunctionArguments.employeeId2}`:(h=!0,this.instance.removeSlink(g.id,v.id),m.FunctionResult=`ok`)}p&&(this.instance.fit(),h=!1);for(var m of i)h=!0,m.FunctionResult=`ok`,this.instance.remove(m.FunctionArguments.id);for(var m of a){h=!0,m.FunctionResult=`ok`;var y=JSON.parse(JSON.stringify(m.FunctionArguments));y.isAssistant&&(y.tags=[`assistant`]),delete y.isAssistant,_.isNEU(y.id)&&(y.id=this.instance.generateId()),this.instance.add(y)}for(var m of o){h=!0,m.FunctionResult=`ok`;var y=this.instance.get(m.FunctionArguments.id);for(var b in m.FunctionArguments)b!=`id`&&m.FunctionArguments[b]!=null&&(y[b]=m.FunctionArguments[b]);this.instance.update(y)}for(var m of s){m.FunctionResult=`ok`;for(var x of m.FunctionArguments.ids){var S=m.FunctionArguments.color;S||=`#FFCA28`;var C=this.instance.getNodeElement(x).firstChild;C&&(C.style.stroke=m.FunctionArguments.color,C.style.strokeWidth=5)}}var w=function(){for(var e of c)if(e.FunctionResult=`ok`,e.FunctionArguments.ids)for(var t of e.FunctionArguments.ids){var r=n.instance.getNodeElement(t).firstChild;r&&(r.style.stroke=`#aeaeae`,r.style.strokeWidth=1)}else h=!0};h?(this.setContext(),this.instance.draw(_.action.update,void 0,w)):w();var T=function(){var e=[];for(var i of r.toolCalls)e.push({Role:`tool`,Text:i.FunctionResult,Id:i.Id});n._prompt(e,t)};l?this.chartInstance.exportToPDF({},function(){m.FunctionResult=`ok`,_._downloadFile(`application/pdf`,response,`OrgChart.pdf`,!1,`pdf`),T()}):T()},_.aiUI=function(){this.instance=null,this.interval=null,this.canSetContext=!1,this.element=null,this.inputElement=null,this.btnSendElement=null,this.messagesElement=null,Object.defineProperty(this,`width`,{get(){return this.isVisible()?this.element.offsetWidth:0}})},_.aiUI.title=`AI for OrgChart JS`,_.aiUI.prototype.init=function(e){this.instance=e;var t=this,n=this.instance.element.querySelector(`[data-boc-ai-button]`);n&&n.addEventListener(`click`,function(e){t.show()})},_.aiUI.prototype.isVisible=function(){return!(!this.element||this.element.style.display==`none`)},_.aiUI.prototype.show=function(e,t){this.instance.pdfPreviewUI.hide(),this.instance.svgPreviewUI.hide(),this.instance.pngPreviewUI.hide(),this.instance.powerPointPreviewUI.hide(),this.instance.aiUI.hide(),this.instance.orgScribeUI.hide(),this._create(),this.element.style.display=``,this.canSetContext||(this.canSetContext=!0,this.instance._ai.setContext());var n=this;t||(this.timeout&&clearInterval(this.interval),this.interval=_.animate(this.element,{opacity:0},{opacity:1},300,_.anim.outSin,function(){e||n.inputElement.focus()}))},_.aiUI.prototype._create=function(){if(!this.element){var e=this,t=`inp_`+this.instance.generateId();this.element=document.createElement(`div`),this.element.setAttribute(`data-boc-ai-form`,``),this.element.style.opacity=0,this.element.classList.add(`boc-ai-form`),this.element.classList.add(this.instance.config.mode),this.element.innerHTML=`<div class="boc-ai-container">
534
+ `);for(let t of e.children)a+=i(t,n+1);return a}return r.map(e=>i(e,0)).join(``).trim()},_._onClickHandler=function(e,t,n,r,i){var a;if(n===void 0)if(t===`add`){var o={id:e.generateId(),pid:r};e.addNode(o,null,!0)}else if(t===`edit`){var s=e.getNode(r);e.editUI.show(s.id)}else if(t===`details`){var s=e.getNode(r);e.editUI.show(s.id,!0)}else if(t===`remove`)e.removeNode(r,null,!0);else if(t===`svg_export`||t===`svg`){var c={};_.isNEU(r)||(c.pages=[{nodeId:r}]),e.exportToSVG(c)}else if(t===`pdf_export`||t===`pdf`){var c={};_.isNEU(r)||(c.pages=[{nodeId:r}]),e.exportToPDF(c)}else if(t===`png_export`||t===`png`){var c={};_.isNEU(r)||(c.pages=[{nodeId:r}]),e.exportToPNG(c)}else if(t===`visio_export`||t===`visio`)e.exportToVisio({nodeId:r});else if(t===`pp_export`||t===`powerpoint`)e.exportToPowerPoint();else if(t===`pp_preview`||t===`pppreview`){var c={parentLevels:0,childLevels:1,expandChildren:!1,pages:[{parentLevels:null,childLevels:null,expandChildren:!0,nodeId:e.roots[0].id}]};r!=null&&(c.expandChildren=!1,c.pages[0].nodeId=r),e.powerPointPreviewUI.show(c)}else if(t===`pdf_preview`||t===`pdfpreview`){var c={parentLevels:0,childLevels:1,expandChildren:!1,pages:[{parentLevels:null,childLevels:null,expandChildren:!0,nodeId:e.roots[0].id}]};r!=null&&(c.expandChildren=!1,c.pages[0].nodeId=r),e.pdfPreviewUI.show(c)}else if(t===`svg_preview`||t===`svgpreview`){var c={parentLevels:0,childLevels:1,expandChildren:!1,pages:[{parentLevels:null,childLevels:null,expandChildren:!0,nodeId:e.roots[0].id}]};r!=null&&(c.expandChildren=!1,c.pages[0].nodeId=r),e.svgPreviewUI.show(c)}else if(t===`png_preview`||t===`pngpreview`){var c={parentLevels:0,childLevels:1,expandChildren:!1,pages:[{parentLevels:null,childLevels:null,expandChildren:!0,nodeId:e.roots[0].id}]};r!=null&&(c.expandChildren=!1,c.pages[0].nodeId=r),e.pngPreviewUI.show(c)}else t===`csv_export`||t===`csv`?e.exportToCSV({nodeId:r}):t===`xml_export`||t===`xml`?e.exportToXML({nodeId:r}):t===`json_export`||t===`json`?e.exportToJSON({nodeId:r}):t===`fit`?e.fit():t===`expand_all`?e.expand(null,`all`):t===`full_screen`?e.toggleFullScreen():t===`zoom_in`?e.zoom(!0,null,!0):t===`zoom_out`||t===`zoom_out`?e.zoom(!1,null,!0):t===`layout_mixed`?e.setLayout(_.layout.mixed):t===`layout_normal`?e.setLayout(_.layout.normal):t===`layout_right_offset`?e.setLayout(_.layout.treeRightOffset):t===`layout_left_offset`?e.setLayout(_.layout.treeLeftOffset):t===`layout_tree`?e.setLayout(_.layout.tree):t===`layout_grid`&&e.setLayout(_.layout.grid);else a=n.call(e,r,i);return a},_._isSVG=function(e){if(typeof e!=`string`)return!1;let t=e.trim();if(!t.startsWith(`<svg`)||!t.endsWith(`</svg>`))return!1;try{let e=new DOMParser().parseFromString(t,`image/svg+xml`);return e.querySelector(`parsererror`)?!1:e.documentElement.nodeName.toLowerCase()===`svg`}catch{return!1}},_._treeListAdjustToSTNodePostition=function(e,t){for(var n of e)n.y+=t.y+t.padding[0],n.x+=t.x+t.padding[3],_._treeListAdjustToSTNodePostition(n.children,t)},_._treeListSetProps=function(e,t){var n=-e.treeList.scrollTop,r={nodesByLevels:[],lastNode:null,y:0};e.treeList.pinnedIds=[],_._treeListIterate(e.stChildren,r,-1);var i=r.lastNode.y+r.lastNode.h-0-(e.treeList.maxHeight-e.padding[0]-e.padding[2]);n>0||i<0?n=0:n!=0&&n*-1>i&&(n=-i);for(var a=r.nodesByLevels.length-1;a>=0;a--)for(var o=r.nodesByLevels[a],s=o.length-1;s>=0;s--){for(var c=o[s],l=c.y,u=0,d=c.parent;d&&(u+=d.h,d.parent);)d=d.parent;if(c.children.length&&c.y+n<=u){l=-n+u;var f=o[s+1];if(f&&f.y<l+c.h&&(l=f.y-c.h),d){var p=e.stChildren.indexOf(d);if(e.stChildren.length>p+1){var m=e.stChildren[p+1];m.y<l+c.h&&(l=m.y-c.h)}}}c.y!=l&&e.treeList.pinnedIds.push(c.id),c.y=l,c.x=0}if(t==_.orientation.bottom){var h=r.lastNode.y+r.lastNode.h;for(var a of r.nodesByLevels)for(var c of a)c.y=h-c.y-c.h}e.treeList.scrollTop=-n,e.treeList.scrollTopMax=i},_._treeListIterate=function(e,t,n){n++;for(var r of e)r.y=t.y,t.y+=r.h,t.nodesByLevels[n]||(t.nodesByLevels[n]=[]),t.nodesByLevels[n].push(r),t.lastNode=r,_._treeListIterate(r.children,t,n)},_._treeListGetTumbPositionFromScrollTop=function(e){var t=e.h-e.padding[0]-e.padding[2],n=t/((e.treeList.scrollTopMax+t)/100),r=t/100*n,i=t-r,a=-e.treeList.scrollTop/(e.treeList.scrollTopMax/100),o=e.y+e.padding[0]+i/-100*a,s=`initial`;return(isNaN(r)||isNaN(o)||r<0||n>100)&&(s=`none`,r=0,o=0),{thumbHeight:r,thumbPosition:o,scrollBarDisplay:s}},_._treeListGetScrollTopFromTumbPosition=function(e,t,n){var r=e.h-e.padding[0]-e.padding[2]-t,i=(n-(e.y+e.padding[0]))/r*100/100*e.treeList.scrollTopMax;return(isNaN(i)||i<0)&&(i=0),i>e.treeList.scrollTopMax&&(i=e.treeList.scrollTopMax),i},_._getCenterNodeFromParams=function(e,t){var n=e[t.id];if(n){if(n.isTreeListItem){for(;!n.stParent;)n=n.parent;n=n.stParent}return n}return null},_._getScrollTopForNode=function(e,t){var n={nodesByLevels:[],lastNode:null,y:0};_._treeListIterate(e.stChildren,n,-1);var r=null;for(var i of n.nodesByLevels){for(var a of i)if(a.id==t){r=a;break}if(r)break}if(!r)return e.treeList.scrollTop;for(var o=0,s=r.parent;s&&(o+=s.h,s.parent);)s=s.parent;var c=e.padding[0],l=e.padding[2],u=e.treeList.maxHeight-c-l,d=n.lastNode.y+n.lastNode.h-u;d<0&&(d=0);var f=e.treeList.scrollTop,p=r.y-o,m=r.y+r.h-u,h=f;return r.y<f+o?h=p:r.y+r.h>f+u&&(h=r.h>u-o?p:m),h<0?h=0:h>d&&(h=d),h},_._getDefailtPositionForExpandCollpase=function(e,t){var n={x:0,y:0};switch(e.orientation){case _.orientation.top:case _.orientation.top_left:n.x=t.w/2,n.y=t.h;break;case _.orientation.bottom:case _.orientation.bottom_left:n.x=t.w/2,n.y=0;break;case _.orientation.right:case _.orientation.right_top:n.x=0,n.y=t.h/2;break;case _.orientation.left:case _.orientation.left_top:n.x=t.w,n.y=t.h/2;break}return n},_._measureCache={svg:null,text:null},_._getMeasureElement=function(){if(_._measureCache.svg)return _._measureCache.text;let e=`http://www.w3.org/2000/svg`;return _._measureCache.svg=document.createElementNS(e,`svg`),_._measureCache.svg.id=`orgchart_js_test__measure`,_._measureCache.svg.style.cssText=`position:absolute;top:-9999px;visibility:hidden;white-space:pre;`,_._measureCache.text=document.createElementNS(e,`text`),_._measureCache.svg.appendChild(_._measureCache.text),document.body.appendChild(_._measureCache.svg),_._measureCache.text},_._lineClamp=function(e,t,n,r){if(t===void 0||t==null)return``;typeof t!=`string`&&(t=t.toString()),t=_._escapeHtml(t);let i=/(\w+(?:-\w+)?)="([^"]*)"/g,a={},o;for(;(o=i.exec(e))!==null;)a[o[1]]=o[2];let s=_._getMeasureElement();s.textContent=``;for(let[e,t]of Object.entries(a))e!==`x`&&e!==`y`&&s.setAttribute(e,t);let c=e=>(s.textContent=e,s.getComputedTextLength()),l=t.split(` `),u=[],d=``,f=0;for(;f<l.length&&u.length<r;){let e=l[f],t=d?d+` `+e:e;if(c(t)<=n)d=t,f++;else if(d===``){let t=0,r=e.length,i=1;for(;t<=r;){let a=t+r>>1;c(e.slice(0,a))<=n?(i=a,t=a+1):r=a-1}u.push(e.slice(0,i)),l[f]=e.slice(i)}else u.push(d),d=``}d&&u.length<r&&u.push(d);let p=f<l.length||f===l.length&&l[f-1]===``&&t.endsWith(` `);if(p&&u.length>0){let e=u[u.length-1],t=0,r=e.length,i=``;for(;t<=r;){let a=Math.floor((t+r)/2),o=e.substring(0,a)+`...`;c(o)<=n?(i=o,t=a+1):r=a-1}u[u.length-1]=i}let m=` x="${a.x||`0`}"`,h=u.length===1?u[0]:u.map((e,t)=>`<tspan${m} dy="${t===0?0:`1.2em`}">${e}</tspan>`).join(``);return`<text${Object.entries(a).map(([e,t])=>` ${e}="${t}"`).join(``)}>${p?`<title>${t}</title>`:``}${h}</text>`},_._getScrollableTreeListNodeInTouchEnabledDevice=function(e){if(!e||!e.isTreeListItem||!_._isTouchDevice())return null;var t=_.getRootOf(e).stParent,{thumbHeight:n,thumbPosition:r,scrollBarDisplay:i}=_._treeListGetTumbPositionFromScrollTop(t);return i==`none`?null:t},_._convertImagesToBase64=async function(e){let t=new DOMParser;return await Promise.all(e.map(async e=>{let n=t.parseFromString(e,`image/svg+xml`),r=n.querySelectorAll(`image`);for(let e of r){let t=e.getAttribute(`href`)||e.getAttribute(`xlink:href`);if(t&&!t.startsWith(`data:`))try{let n=parseFloat(e.getAttribute(`width`))||0,r=parseFloat(e.getAttribute(`height`))||0;if(n>0&&r>0){let i=await _._resizeAndConvert(t,n,r);e.setAttribute(`href`,i),e.removeAttributeNS(`http://www.w3.org/1999/xlink`,`href`)}}catch(e){console.error(`Failed to process image:`,t,e)}}return new XMLSerializer().serializeToString(n)}))},_._resizeAndConvert=function(e,t,n){return new Promise((r,i)=>{let a=new Image;a.crossOrigin=`anonymous`,a.onload=()=>{let e=document.createElement(`canvas`),i=e.getContext(`2d`),o=Math.min(t/a.width,n/a.height),s=a.width*o,c=a.height*o;e.width=s,e.height=c,i.drawImage(a,0,0,s,c),r(e.toDataURL(`image/png`))},a.onerror=i,a.src=e})},_._addSelectedStyle=function(e,t,n){var r=e.getNodeElement(t.id);if(r&&r.classList.add(`boc-selected`),n!=t.id){var i=e.element.querySelector(`[data-ctrl-ec-id="${t.id}"]`);i&&i.classList.add(`boc-selected`)}var a=e.getNode(t.pid);if(a){let r=e.element.querySelector(`[data-l-id="[${t.parent.id}][${t.id}]"]`);r&&r.classList.add(`boc-selected`),_._addSelectedStyle(e,a,n)}},_._removeSelectedStyle=function(e){let t=e.element.querySelectorAll(`.boc-selected`);for(let e=0;e<t.length;e++)t[e].classList.remove(`boc-selected`)},_.xScrollUI=function(e,t,n,r,i){this.element=e,this.requestParams=n,this.config=t,this.onSetViewBoxCallback=r,this.onDrawCallback=i,this.position=0,this.bar=null,this._event_id=_._guid()},_.xScrollUI.prototype.addListener=function(e){var t=this;if(this.config.mouseScrool!=_.action.xScroll&&this.config.mouseScrool!=_.action.scroll||!this.bar)return;var n=navigator.userAgent.indexOf(`Mac OS`)!==-1;function r(e,r,i){var a=!1;e.addEventListener(`wheel`,o,{passive:!1});function o(e){if(e.preventDefault(),!e.ctrlKey){var i=0;if(t.config.mouseScrool==_.action.xScroll)i=e.deltaX||e.wheelDeltaX,i||=e.deltaY||e.wheelDeltaY;else if(t.config.mouseScrool==_.action.scroll&&(i=n||!e.shiftKey?e.deltaX||e.wheelDeltaX:e.deltaY||e.wheelDeltaY,!i))return;i=-i,i=Math.max(-1,Math.min(1,i)),t.position+=-i*r;var o=parseFloat(t.innerBar.clientWidth)-parseFloat(t.bar.clientWidth);t.position<0&&(t.position=0),t.position>o&&(t.position=o),a||s()}}function s(){a=!0;var e=(t.position-t.bar.scrollLeft)/i;if(e>0)e++;else if(e==0){a=!1;return}else e--;Math.ceil(t.bar.scrollLeft)==Math.ceil(t.position)?a=!1:(t.bar.scrollLeft+=e,c(s))}var c=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(e){setTimeout(e,20)}}()}var i=_._getScrollSensitivity();r(e,i.speed,i.smooth)},_.xScrollUI.prototype.create=function(e){if(!(this.config.showXScroll!==!0&&this.config.mouseScrool!==_.action.scroll&&this.config.mouseScrool!==_.action.xScroll)){var t=this;this.bar&&this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar),this.bar=document.createElement(`div`),this.innerBar=document.createElement(`div`),this.requestParams(),this.innerBar.innerHTML=`&nbsp`,Object.assign(this.bar.style,{position:`absolute`,left:0,bottom:0,width:e+`px`,"overflow-x":`scroll`,height:`20px`}),this.element.appendChild(this.bar),this.bar.appendChild(this.innerBar),this.bar.addEventListener(`scroll`,function(){if(this.ignore){this.ignore=!1;return}var e=t.requestParams(),n=(parseFloat(t.innerBar.clientWidth)-parseFloat(t.bar.clientWidth))/100,r=this.scrollLeft/n,i=(e.boundary.right-e.boundary.left)/100;e.viewBox[0]=r*i+e.boundary.left,t.onSetViewBoxCallback(e.viewBox),clearTimeout(this._timeout),this._timeout=setTimeout(function(){t.onDrawCallback()},500)})}},_.xScrollUI.prototype.setPosition=function(){if(this.bar){var e=this.requestParams(),t=(Math.abs(e.boundary.maxX-e.boundary.minX)+this.config.padding*2)*e.scale;switch(this.config.orientation){case _.orientation.right:case _.orientation.right_top:t=Math.abs(e.boundary.minX*e.scale);break}this.innerBar.style.width=t+`px`;var n=(e.boundary.right-e.boundary.left)/100,r=(e.viewBox[0]-e.boundary.left)/n;r<0?r=0:r>100&&(r=100);var i=(parseFloat(this.innerBar.clientWidth)-parseFloat(this.bar.clientWidth))/100,a=r*i;this.bar.ignore=!0,this.bar.scrollLeft=a,this.position=this.bar.scrollLeft,i<=0?this.bar.style.visibility=`hidden`:this.bar.style.visibility=``,this.config.showXScroll!==!0&&(this.bar.style.visibility=`hidden`),_.events.publish(`change`,[this,{isScrollBarVisible:this.bar.style.visibility!=`hidden`}])}},_.xScrollUI.prototype.on=function(e,t){return _.events.on(e,t,this._event_id),this},_.yScrollUI=function(e,t,n,r,i){this.element=e,this.requestParams=n,this.config=t,this.onSetViewBoxCallback=r,this.onDrawCallback=i,this.position=0,this.bar=null,this._event_id=_._guid()},_.yScrollUI.prototype.addListener=function(e){var t=this;if(this.config.mouseScrool!=_.action.yScroll&&this.config.mouseScrool!=_.action.scroll||!this.bar)return;var n=navigator.userAgent.indexOf(`Mac OS`)!==-1;function r(e,r,i){var a=!1;e.addEventListener(`wheel`,o,{passive:!1});function o(e){if(e.preventDefault(),!e.ctrlKey){var i=0;if(t.config.mouseScrool==_.action.yScroll)i=e.deltaY||e.wheelDeltaY,i||=e.deltaX||e.wheelDeltaX;else if(t.config.mouseScrool==_.action.scroll&&(i=n||!e.shiftKey?e.deltaY||e.wheelDeltaY:e.deltaX||e.wheelDeltaX,!i))return;i=-i,i=Math.max(-1,Math.min(1,i)),t.position+=-i*r;var o=parseFloat(t.innerBar.clientHeight)-parseFloat(t.bar.clientHeight);t.position<0&&(t.position=0),t.position>o&&(t.position=o),a||s()}}function s(){a=!0;var e=(t.position-t.bar.scrollTop)/i;if(e>0)e++;else if(e==0){a=!1;return}else e--;Math.ceil(t.bar.scrollTop)==Math.ceil(t.position)?a=!1:(t.bar.scrollTop+=e,c(s))}var c=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(e){setTimeout(e,20)}}()}var i=_._getScrollSensitivity();r(e,i.speed,i.smooth)},_.yScrollUI.prototype.create=function(e){if(!(this.config.showYScroll!==!0&&this.config.mouseScrool!==_.action.scroll&&this.config.mouseScrool!==_.action.yScroll)){var t=this;this.bar&&this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar),this.bar=document.createElement(`div`),this.innerBar=document.createElement(`div`),this.innerBar.innerHTML=`&nbsp`,Object.assign(this.bar.style,{position:`absolute`,right:0,bottom:0,height:e+`px`,"overflow-y":`scroll`,width:`20px`}),this.element.appendChild(this.bar),this.bar.appendChild(this.innerBar),this.bar.addEventListener(`scroll`,function(){if(this.ignore){this.ignore=!1;return}var e=t.requestParams(),n=(parseFloat(t.innerBar.clientHeight)-parseFloat(t.bar.clientHeight))/100,r=this.scrollTop/n,i=(e.boundary.bottom-e.boundary.top)/100;e.viewBox[1]=r*i+e.boundary.top,t.onSetViewBoxCallback(e.viewBox),clearTimeout(this._timeout),this._timeout=setTimeout(function(){t.onDrawCallback()},500)})}},_.yScrollUI.prototype.setPosition=function(){if(this.bar){var e=this.requestParams(),t=(Math.abs(e.boundary.maxY-e.boundary.minY)+this.config.padding*2)*e.scale;switch(this.config.orientation){case _.orientation.bottom:case _.orientation.bottom_left:t=Math.abs(e.boundary.minY*e.scale);break}this.innerBar.style.height=t+`px`;var n=(e.boundary.bottom-e.boundary.top)/100,r=(e.viewBox[1]-e.boundary.top)/Math.abs(n);r<0?r=0:r>100&&(r=100);var i=(parseFloat(this.innerBar.clientHeight)-parseFloat(this.bar.clientHeight))/100,a=r*i;this.bar.ignore=!0,this.bar.scrollTop=a,this.position=this.bar.scrollTop,i<=0?this.bar.style.visibility=`hidden`:this.bar.style.visibility=``,this.config.showYScroll!==!0&&(this.bar.style.visibility=`hidden`),_.events.publish(`change`,[this,{isScrollBarVisible:this.bar.style.visibility!=`hidden`}])}},_.yScrollUI.prototype.on=function(e,t){return _.events.on(e,t,this._event_id),this},_.prototype.zoom=function(e,t,n,r){var i=this.getViewBox().slice(0),a=i,o=i[2],s=i[3];e===!0?(i[2]/=_.SCALE_FACTOR,i[3]/=_.SCALE_FACTOR):e===!1?(i[2]*=_.SCALE_FACTOR,i[3]*=_.SCALE_FACTOR):(i[2]/=e,i[3]/=e),t||=[50,50],i[0]=a[0]-(i[2]-o)/(100/t[0]),i[1]=a[1]-(i[3]-s)/(100/t[1]);var c=this.getScale(i);if(i[2]=this.width()/c,i[3]=this.height()/c,e===!0&&c<this.config.scaleMax||e===!1&&c>this.config.scaleMin||e!=0&&e!=1&&c<this.config.scaleMax&&c>this.config.scaleMin){this._hideBeforeAnimation();var l=this;n?(clearTimeout(l._timeout),_.animate(this.getSvg(),{viewbox:this.getViewBox()},{viewbox:i},this.config.anim.duration,this.config.anim.func,function(){clearTimeout(l._timeout),l._timeout=setTimeout(function(){l._draw(!0,_.action.zoom,null,r)},500)})):(this.setViewBox(i),clearTimeout(l._timeout),l._timeout=setTimeout(function(){l._draw(!0,_.action.zoom,null,r)},500))}},_.loading={},_.loading.show=function(e){var t=`<style>@-webkit-keyframes dot-keyframes {0% { opacity: .4; -webkit-transform: scale(1, 1);transform: scale(1, 1);}50% {opacity: 1;-webkit-transform: scale(1.2, 1.2);transform: scale(1.2, 1.2);}100% {opacity: .4;-webkit-transform: scale(1, 1);transform: scale(1, 1);}}@keyframes dot-keyframes {0% {opacity: .4;-webkit-transform: scale(1, 1);transform: scale(1, 1);}50% {opacity: 1;-webkit-transform: scale(1.2, 1.2);transform: scale(1.2, 1.2);}100% {opacity: .4;-webkit-transform: scale(1, 1);transform: scale(1, 1);}}.boc-loading-dots div {margin: 10px;} .boc-dot-1 {background-color: #039BE5;}.boc-dot-2 {background-color: #F57C00;}.boc-dot-3 {background-color: #FFCA28;} .boc-loading-dots {text-align: center;width: 100%; position: absolute; top: 0;}.boc-loading-dots--dot {-webkit-animation: dot-keyframes 1.5s infinite ease-in-out;animation: dot-keyframes 1.5s infinite ease-in-out; border-radius: 10px;display: inline-block;height: 10px;width: 10px;}.boc-loading-dots--dot:nth-child(2) {-webkit-animation-delay: .5s;animation-delay: .5s;}.boc-loading-dots--dot:nth-child(3) {-webkit-animation-delay: 1s;animation-delay: 1s;}</style><div class="boc-loading-dots"><div class="boc-loading-dots--dot boc-dot-1"></div><div class="boc-loading-dots--dot boc-dot-2"></div><div class="boc-loading-dots--dot boc-dot-3"></div></div>`,n=document.createElement(`div`);n.id=`boc-loading`,n.innerHTML=t,e.element.appendChild(n)},_.loading.hide=function(e){var t=e.element.querySelector(`#boc-loading`);t&&t.parentNode.removeChild(t)},_.pdfPrevUI={},_.pdfPrevUI.show=function(e,t){console.warn(`OrgChart.pdfPrevUI.show is obsolete; use chart.pdfPreviewUI.show instead.`)},_.pdfPrevUI.hide=function(){console.warn(`OrgChart.pdfPrevUI.hide is obsolete; use chart.pdfPreviewUI.hide instead.`)},_===void 0&&(_={}),_.events.on(`renderdefs`,function(e,t){for(var n=0;n<e.config.clinks.length;n++){var r=e.config.clinks[n].template;r||=`orange`;var i=_.clinkTemplates[r];t.defs+=i.defs}}),_.events.on(`prerender`,function(e,t){_.RENDER_CLINKS_BEFORE_NODES&&e._clink(e,t)}),_.events.on(`render`,function(e,t){_.RENDER_CLINKS_BEFORE_NODES||e._clink(e,t)}),_.events.on(`drag`,function(e,t,n,r){if(e instanceof _&&e.config.movable&&r)for(var i=0;i<r.length;i++){for(var a=r[i],o=e.element.querySelectorAll(`[data-c-l-from="${a}"]`),s=e.element.querySelectorAll(`[data-c-l-to="${a}"]`),c=0;c<o.length;c++)o[c].parentNode.removeChild(o[c]);for(var c=0;c<s.length;c++)s[c].parentNode.removeChild(s[c])}}),_.prototype._clink=function(e,t){for(var n=``,r=0;r<this.config.clinks.length;r++){var i=this.config.clinks[r],a=e.getNode(i.from),o=e.getNode(i.to);if(!a||t.res.visibleNodeIds.indexOf(a.id)==-1||!o||t.res.visibleNodeIds.indexOf(o.id)==-1)continue;var s=a.x,c=a.y,l=o.x,u=o.y,d={},f={},p=s+a.w/2,m=l+o.w/2,h=c+a.h/2,g=u+o.h/2,v=1;switch(this.config.orientation){case _.orientation.top:case _.orientation.top_left:p<=m?(v=1,d.x=p+a.w/10,f.x=m-o.w/10):(v=-1,d.x=p-a.w/10,f.x=m+o.w/10),c==u?(v=1,d.y=c,f.y=u):c>u?(d.y=c,f.y=u+o.h):(d.y=c+a.h,f.y=u);break;case _.orientation.bottom:case _.orientation.bottom_left:p<=m?(v=-1,d.x=p+a.w/10,f.x=m+o.w/10):(v=1,d.x=p-a.w/10,f.x=m+o.w/10),c==u?(v=-1,d.y=c+a.h,f.y=u+o.h):c>u?(d.y=c,f.y=u+o.h):(d.y=c+a.h,f.y=u);break;case _.orientation.left:case _.orientation.left_top:h<=g?(v=-1,d.y=h+a.h/5,f.y=g+o.h/5):(v=1,d.y=h-a.h/5,f.y=g+o.h/5),s==l?(v=-1,d.x=s,f.x=l):s>l?(d.x=s,f.x=l+o.w):(d.x=s+a.w,f.x=l);break;case _.orientation.right:case _.orientation.right_top:h<=g?(v=1,d.y=h+a.h/5,f.y=g+o.h/5):(v=-1,d.y=h-a.h/5,f.y=g+o.h/5),s==l?(v=1,d.x=s+a.w,f.x=l+o.w):s>l?(d.x=s,f.x=l+o.w):(d.x=s+a.w,f.x=l);break}function w(e,t,n){n??=1;var r=t.x-e.x,a=t.y-e.y,o=Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2)/3;return o=o/(Math.sqrt(r*r+a*a)*n)*_.clinkCurve(i),{x:e.x+r/2-a*o,y:e.y+a/2+r*o}}var y=w(d,f,v),b=i.template;b||=`orange`;var x=_.clinkTemplates[b];if(i.label){var S=_.clinkLabelPosition(i,d,f,y);n+=x.label.replace(`{x}`,S.x).replace(`{y}`,S.y).replace(`{val}`,i.label)}var C=`M`+d.x+`,`+d.y+`C`+d.x+`,`+d.y+` `+y.x+`,`+y.y+` `+f.x+`,`+f.y;n+=(`<g `+_.attr.c_link_from+`="{from}" `+_.attr.c_link_to+`="{to}">`).replace(`{from}`,a.id).replace(`{to}`,o.id)+x.link.replaceAll(`{d}`,C)+`<path stroke="transparent" stroke-width="15" fill="none" d="`+C+`" />`,n+=_.grCloseTag}t.content+=n},_.clinkLabelPosition=function(e,t,n,r){var i=(n.x-t.x)/2+t.x,a=(n.y-t.y)/2+t.y;return{x:(i-r.x)/2+r.x,y:(a-r.y)/2+r.y}},_.clinkCurve=function(e){return _.CLINK_CURVE},_.prototype.addClink=function(e,t,n,r){this._putInUndoStack(),this.clearRedo();for(var i=this.config.clinks.length-1;i>=0;i--){var a=this.config.clinks[i];a.from==e&&a.to==t&&this.config.clinks.splice(i,1)}return this.config.clinks.push({from:e,to:t,label:n,template:r}),this._ai.setContext(),_.events.publish(`updated`,[this]),this},_.prototype.removeClink=function(e,t){this._putInUndoStack(),this.clearRedo();for(var n=this.config.clinks.length-1;n>=0;n--){var r=this.config.clinks[n];r.from==e&&r.to==t&&this.config.clinks.splice(n,1)}return this._ai.setContext(),_.events.publish(`updated`,[this]),this},_.clinkTemplates={},_.clinkTemplates.orange={defs:`<marker id="arrowOrange" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path fill="#F57C00" d="M 0 0 L 10 5 L 0 10 z" /></marker><marker id="dotOrange" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="5" markerHeight="5"> <circle cx="5" cy="5" r="5" fill="#F57C00" /></marker>`,link:`<path marker-start="url(#dotOrange)" marker-end="url(#arrowOrange)" stroke="#F57C00" stroke-width="2" fill="none" d="{d}" />`,label:`<text fill="#F57C00" text-anchor="middle" x="{x}" y="{y}">{val}</text>`},_.clinkTemplates.blue={defs:`<marker id="arrowBlue" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path fill="#039BE5" d="M 0 0 L 10 5 L 0 10 z" /></marker><marker id="dotBlue" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="5" markerHeight="5"> <circle cx="5" cy="5" r="5" fill="#039BE5" /></marker>`,link:`<path marker-start="url(#dotBlue)" marker-end="url(#arrowBlue)" stroke="#039BE5" stroke-width="2" fill="none" d="{d}" />`,label:`<text fill="#039BE5" text-anchor="middle" x="{x}" y="{y}">{val}</text>`},_.clinkTemplates.yellow={defs:`<marker id="arrowYellow" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path fill="#FFCA28" d="M 0 0 L 10 5 L 0 10 z" /></marker><marker id="dotYellow" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="5" markerHeight="5"> <circle cx="5" cy="5" r="5" fill="#FFCA28" /></marker>`,link:`<path marker-start="url(#dotYellow)" marker-end="url(#arrowYellow)" stroke="#FFCA28" stroke-width="2" fill="none" d="{d}" />`,label:`<text fill="#FFCA28" text-anchor="middle" x="{x}" y="{y}">{val}</text>`},_===void 0&&(_={}),_.events.on(`renderdefs`,function(e,t){for(var n=0;n<e.config.slinks.length;n++){var r=e.config.slinks[n].template;r||=`orange`;var i=_.slinkTemplates[r];t.defs+=i.defs}}),_.events.on(`render`,function(e,t){e._slinks(e,t)}),_.events.on(`drag`,function(e,t,n,r){if(e instanceof _&&e.config.movable&&r)for(var i=0;i<r.length;i++){for(var a=r[i],o=e.element.querySelectorAll(`[data-s-l-from="${a}"]`),s=e.element.querySelectorAll(`[data-s-l-to="${a}"]`),c=0;c<o.length;c++)o[c].parentNode.removeChild(o[c]);for(var c=0;c<s.length;c++)s[c].parentNode.removeChild(s[c])}}),_.prototype._slinks=function(e,t){var n=``,r=this.getScale(),i=t.res.boundary;function a(e,t){return{x:(e[0]+t[0])/2,y:(e[1]+t[1])/2}}function o(t,n,a,o,s){var c=[],l=null,u=_.t(t.templateName,t.min,r),d=o.levelSeparation;t.parent&&t.parent.layout&&(d=o.mixedHierarchyNodesSeparation);var f;switch(o.orientation){case _.orientation.top:case _.orientation.top_left:f={p:t.x+t.w/2,q:t.y,r:t.x+t.w/2,s:i.minY+d};break;case _.orientation.bottom:case _.orientation.bottom_left:f={p:t.x+t.w/2,q:t.y+t.h,r:t.x+t.w/2,s:i.maxY};break;case _.orientation.left:case _.orientation.left_top:f={p:t.x,q:t.y+t.h/2,r:i.minX+d,s:t.y+t.h/2};break;case _.orientation.right:case _.orientation.right_top:f={p:t.x+t.w,q:t.y+t.h/2,r:i.maxX,s:t.y+t.h/2};break}if(t.sl==n.sl)switch(l=n,o.orientation){case _.orientation.top:case _.orientation.top_left:c.push([f.p,f.q]),c.push([f.p,f.q-_.SLINK_GAP*2]),u=_.t(l.templateName,l.min,r),c.push([l.x+l.w/2,c[c.length-1][1]]),c.push([c[c.length-1][0],l.y]);break;case _.orientation.bottom:case _.orientation.bottom_left:c.push([f.p,f.q]),c.push([f.p,f.q+_.SLINK_GAP*2]),u=_.t(l.templateName,l.min,r),c.push([l.x+l.w/2,c[c.length-1][1]]),c.push([c[c.length-1][0],l.y+l.h]);break;case _.orientation.left:case _.orientation.left_top:c.push([f.p,f.q]),c.push([f.p-_.SLINK_GAP*2,f.q]),u=_.t(l.templateName,l.min,r),c.push([c[c.length-1][0],l.y+l.h/2]),c.push([l.x,c[c.length-1][1]]);break;case _.orientation.right:case _.orientation.right_top:c.push([f.p,f.q]),c.push([f.p+_.SLINK_GAP*2,f.q]),u=_.t(l.templateName,l.min,r),c.push([c[c.length-1][0],l.y+l.h/2]),c.push([l.x+l.w,c[c.length-1][1]]);break}else{switch(o.orientation){case _.orientation.top:case _.orientation.top_left:c.push([f.p,f.q]),c.push([f.r,t.y-_.SLINK_GAP*2]);break;case _.orientation.bottom:case _.orientation.bottom_left:c.push([f.p,f.q]),c.push([f.r,t.y+t.h+_.SLINK_GAP*2]);break;case _.orientation.left:case _.orientation.left_top:c.push([f.p,f.q]),c.push([t.x-_.SLINK_GAP*2,f.s]);break;case _.orientation.right:case _.orientation.right_top:c.push([f.p,f.q]),c.push([t.x+t.w+_.SLINK_GAP*2,f.s]);break}for(var p=t,m=t;m.parent;)m=m.parent;for(;l==null;){var h=!1,g=p.parent,v=g.leftNeighbor,y=g.rightNeighbor;if(g.id==n.id?l=g:_._intersects(g,f,o)&&(f=_._addPoint(g,c,o,f,s),h=!0),g.id!=n.id){for(;v;){if(v.id==n.id){l=v;break}_._intersects(v,f,o)&&(f=_._addPoint(v,c,o,f,s),h=!0),v=v.leftNeighbor}for(;y;){if(y.id==n.id){l=y;break}_._intersects(y,f,o)&&(f=_._addPoint(y,c,o,f,s),h=!0),y=y.rightNeighbor}}if(!h){var b=0,x=0;if(g.parent){d=o.levelSeparation,g.parent.layout&&(d=o.mixedHierarchyNodesSeparation);var S=e.manager.bordersByRootIdAndLevel[m.id][g.parent.sl];switch(o.orientation){case _.orientation.top:case _.orientation.top_left:b=c[c.length-1][0],x=S.maxY+d-_.SLINK_GAP;break;case _.orientation.bottom:case _.orientation.bottom_left:b=c[c.length-1][0],x=S.minY-d+_.SLINK_GAP;break;case _.orientation.left:case _.orientation.left_top:b=S.maxX+d-_.SLINK_GAP,x=c[c.length-1][1];break;case _.orientation.right:case _.orientation.right_top:b=S.minX-d+_.SLINK_GAP,x=c[c.length-1][1];break}}c.push([b,x])}p=g}switch(u=_.t(l.templateName,l.min,r),c.splice(c.length-1,1),o.orientation){case _.orientation.top:case _.orientation.top_left:var C=u.expandCollapseSize;s==`left`&&(C*=-1),c.push([l.x+l.w/2+C,c[c.length-1][1]]),c.push([c[c.length-1][0],l.y+l.h]);break;case _.orientation.bottom:case _.orientation.bottom_left:var C=u.expandCollapseSize;s==`left`&&(C*=-1),c.push([l.x+l.w/2+C,c[c.length-1][1]]),c.push([c[c.length-1][0],l.y]);break;case _.orientation.left:case _.orientation.left_top:var C=u.expandCollapseSize;s==`top`&&(C*=-1),c.push([c[c.length-1][0],l.y+l.h/2+C]),c.push([l.x+l.w,c[c.length-1][1]]);break;case _.orientation.right:case _.orientation.right_top:var C=u.expandCollapseSize;s==`top`&&(C*=-1),c.push([c[c.length-1][0],l.y+l.h/2+C]),c.push([l.x,c[c.length-1][1]]);break}}return a&&(c=c.reverse()),c}for(var s=[],c=[],l=[],u=[],d=[],f=0;f<this.config.slinks.length;f++){var p=this.config.slinks[f],m=e.getNode(p.from),h=e.getNode(p.to);if(m&&h&&t.res.visibleNodeIds.indexOf(h.id)!=-1&&t.res.visibleNodeIds.indexOf(m.id)!=-1){var g=m.lcn?m.lcn:`base`,v=e._layoutConfigs[g],y=m.sl<h.sl,b=`left`;switch(v.orientation){case _.orientation.top:case _.orientation.top_left:case _.orientation.bottom:case _.orientation.bottom_left:h.x>=m.x&&(b=`right`);break;case _.orientation.left:case _.orientation.left_top:case _.orientation.right:case _.orientation.right_top:b=`top`,h.y>m.y&&(b=`bottom`);break}var x=y?o(h,m,y,v,b):o(m,h,y,v,b);s.push(x),c.push(p),u.push(b),l.push(v),d.push({from:m,to:h})}}for(var f=0;f<s.length;f++){var x=s[f],p=c[f],b=u[f];switch(_._slinkRemoveUnusedPoints(x),v.orientation){case _.orientation.top:case _.orientation.top_left:case _.orientation.bottom:case _.orientation.bottom_left:_._slinkAvoidOverlaping(e._connectorLines,x,b,v.orientation);break;case _.orientation.left:case _.orientation.left_top:case _.orientation.right:case _.orientation.right_top:_._slinkAvoidOverlaping2(e._connectorLines,x,b,v.orientation);break}}for(var f=s.length-1;f>=0;f--){var x=s[f],p=c[f];switch(v.orientation){case _.orientation.top:case _.orientation.top_left:case _.orientation.bottom:case _.orientation.bottom_left:_._slinkAvoidOverlapingSecond(e._connectorLines,x,v.orientation);break;case _.orientation.left:case _.orientation.left_top:case _.orientation.right:case _.orientation.right_top:_._slinkAvoidOverlapingSecond2(e._connectorLines,x,v.orientation);break}}for(var f=0;f<s.length;f++){var x=s[f],p=c[f],v=l[f],m=d[f].from,h=d[f].to,S=p.template;S||=`orange`;var C=_.slinkTemplates[S],w=null;switch(C.labelPosition){case`start`:w={x:x[1][0],y:x[1][1]};break;case`middle`:var T=Math.ceil(x.length/2);w=a(x[T],x[T-1]);break;case`end`:w={x:x[x.length-2][0],y:x[x.length-2][1]};break}var E=structuredClone(x);E[0].unshift(`M`);for(var D=1;D<x.length;D++)E[D].unshift(`L`);var O=_.roundPathCorners(E,_.LINK_ROUNDED_CORNERS,!1);if(p.label){var k=C.label.replace(`{x}`,w.x).replace(`{y}`,w.y).replace(`{val}`,p.label),A=_._getLabelSize(k),j=-(A.height/2);switch(v.orientation){case _.orientation.bottom:case _.orientation.bottom_left:j=A.height;break}n+=C.label.replace(`{x}`,w.x).replace(`{y}`,w.y+j).replace(`{val}`,p.label)}var M=m.id,N=h.id;y&&(M=h.id,N=m.id),n+=(`<g `+_.attr.s_link_from+`="{from}" `+_.attr.s_link_to+`="{to}">`).replace(`{from}`,M).replace(`{to}`,N)+C.link.replaceAll(`{d}`,O)+`<path stroke="transparent" stroke-width="15" fill="none" d="`+O+`" />`,n+=_.grCloseTag}t.content+=n},_.prototype.addSlink=function(e,t,n,r){this._putInUndoStack(),this.clearRedo();for(var i=this.config.slinks.length-1;i>=0;i--){var a=this.config.slinks[i];a.from==e&&a.to==t&&this.config.slinks.splice(i,1)}return this.config.slinks.push({from:e,to:t,label:n,template:r}),this._ai.setContext(),_.events.publish(`updated`,[this]),this},_.prototype.removeSlink=function(e,t){this._putInUndoStack(),this.clearRedo();for(var n=this.config.slinks.length-1;n>=0;n--){var r=this.config.slinks[n];r.from==e&&r.to==t&&this.config.slinks.splice(n,1)}return this._ai.setContext(),_.events.publish(`updated`,[this]),this},_.slinkTemplates={},_.slinkTemplates.orange={defs:`<marker id="arrowSlinkOrange" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path fill="#F57C00" d="M 0 0 L 10 5 L 0 10 z" /></marker><marker id="dotSlinkOrange" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="5" markerHeight="5"> <circle cx="5" cy="5" r="5" fill="#F57C00" /></marker>`,link:`<path stroke-dasharray="4, 2" marker-start="url(#dotSlinkOrange)" marker-end="url(#arrowSlinkOrange)" stroke-linejoin="round" stroke="#F57C00" stroke-width="2" fill="none" d="{d}" />`,label:`<text dominant-baseline="middle" fill="#F57C00" alignment-baseline="middle" text-anchor="middle" x="{x}" y="{y}">{val}</text>`,labelPosition:`middle`},_.slinkTemplates.blue={defs:`<marker id="arrowSlinkBlue" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path fill="#039BE5" d="M 0 0 L 10 5 L 0 10 z" /></marker><marker id="dotSlinkBlue" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="5" markerHeight="5"> <circle cx="5" cy="5" r="5" fill="#039BE5" /></marker>`,link:`<path stroke-dasharray="4, 2" marker-start="url(#dotSlinkBlue)" marker-end="url(#arrowSlinkBlue)" stroke-linejoin="round" stroke="#039BE5" stroke-width="2" fill="none" d="{d}" />`,label:`<text fill="#039BE5" text-anchor="middle" x="{x}" y="{y}">{val}</text>`,labelPosition:`middle`},_.slinkTemplates.yellow={defs:`<marker id="arrowSlinkYellow" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path fill="#FFCA28" d="M 0 0 L 10 5 L 0 10 z" /></marker><marker id="dotSlinkYellow" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="5" markerHeight="5"> <circle cx="5" cy="5" r="5" fill="#FFCA28" /></marker>`,link:`<path stroke-dasharray="4, 2" marker-start="url(#dotSlinkYellow)" marker-end="url(#arrowSlinkYellow)" stroke-linejoin="round" stroke="#FFCA28" stroke-width="2" fill="none" d="{d}" />`,label:`<text fill="#FFCA28" text-anchor="middle" x="{x}" y="{y}">{val}</text>`,labelPosition:`middle`},_._ai=function(e){this.instance=e,this.sessionId=null},_._ai.prototype.prompt=function(e,t){var n=this;e=e.trim(),e&&(this.sessionId?n._prompt([{Role:`user`,Text:e}],t):this.setContext(function(){n._prompt([{Role:`user`,Text:e}],t)}))},_._ai.prototype._prompt=function(e,t){var n=this,r=[];for(var i of _.AI_SYSTEM_MESSAGES)r.push({Role:`system`,Text:i});var a=this.instance.config.serverUrl+`/OrgChartJSAI/Prompt?client_messages=${encodeURIComponent(JSON.stringify(e))}&system_messages=${encodeURIComponent(JSON.stringify(r))}&sessionId=${this.sessionId}`;let o=new EventSource(a);o.onmessage=function(e){var r=JSON.parse(e.data),i=``;r.kind==`end`&&o.close(),r.kind==`text`&&(i+=r.text,t&&t(r.text)),r.kind==`assistant-message-with-tools`?n.toolCalls(r.message,t):r.kind==`error`&&console.error(r.text)},o.onerror=function(e){console.error(e),o.close()}},_._ai.prototype.setContext=function(e){if(this.instance&&this.instance.config.enableAI&&this.instance.aiUI.canSetContext){this.sessionId=this.instance._event_id;var t=this.instance.config.serverUrl+`/OrgChartJSAI/SetContext`,n=this.instance.config.aiChatTools.slice();for(var r of n)r.functionParameters??=null,r.functionParameters=JSON.stringify(r.functionParameters);fetch(t,{method:`post`,headers:{"Content-Type":`application/json`,"x-request-type":`ajax`},body:JSON.stringify({context:this.instance.config.nodes,sessionId:this.sessionId,chatTools:n})}).then(function(){e&&e()}).catch(function(e){console.error(e)})}},_._ai.prototype.toolCalls=function(e,t){var n=this,r={toolCalls:e.ToolCalls};_.events.publish(`ai-tool-calls`,[this.instance,r]);var i=[],a=[],o=[],s=[],c=[],l=null,u=null,d=null,f=null,p=null;for(var m of r.toolCalls)m.FunctionResult??(m.FunctionName==`removeNode`?i.push(m):m.FunctionName==`addNode`?a.push(m):m.FunctionName==`updateNode`?o.push(m):m.FunctionName==`select`?s.push(m):m.FunctionName==`deselect`?c.push(m):m.FunctionName==`exportToPDF`?l=m:m.FunctionName==`changeTemplate`?u=m:m.FunctionName==`addSlink`?d=m:m.FunctionName==`removeSlink`?f=m:m.FunctionName==`fit`&&(p=m));var h=!1;if(u&&(h=!0,m.FunctionResult=`ok`,this.instance.config.template=m.FunctionArguments.templateName),d){var g=this.instance.getNode(m.FunctionArguments.employeeId1),v=this.instance.getNode(m.FunctionArguments.employeeId2);!g||!v||g==v?m.FunctionResult=`Cannot add link between ${m.FunctionArguments.employeeId1} and ${m.FunctionArguments.employeeId2}`:(h=!0,this.instance.addSlink(g.id,v.id),m.FunctionResult=`ok`)}if(f){var g=this.instance.getNode(m.FunctionArguments.employeeId1),v=this.instance.getNode(m.FunctionArguments.employeeId2);!g||!v||g==v?m.FunctionResult=`Cannot remove link between ${m.FunctionArguments.employeeId1} and ${m.FunctionArguments.employeeId2}`:(h=!0,this.instance.removeSlink(g.id,v.id),m.FunctionResult=`ok`)}p&&(this.instance.fit(),h=!1);for(var m of i)h=!0,m.FunctionResult=`ok`,this.instance.remove(m.FunctionArguments.id);for(var m of a){h=!0,m.FunctionResult=`ok`;var y=JSON.parse(JSON.stringify(m.FunctionArguments));y.isAssistant&&(y.tags=[`assistant`]),delete y.isAssistant,_.isNEU(y.id)&&(y.id=this.instance.generateId()),this.instance.add(y)}for(var m of o){h=!0,m.FunctionResult=`ok`;var y=this.instance.get(m.FunctionArguments.id);for(var b in m.FunctionArguments)b!=`id`&&m.FunctionArguments[b]!=null&&(y[b]=m.FunctionArguments[b]);this.instance.update(y)}for(var m of s){m.FunctionResult=`ok`;for(var x of m.FunctionArguments.ids){var S=m.FunctionArguments.color;S||=`#FFCA28`;var C=this.instance.getNodeElement(x).firstChild;C&&(C.style.stroke=m.FunctionArguments.color,C.style.strokeWidth=5)}}var w=function(){for(var e of c)if(e.FunctionResult=`ok`,e.FunctionArguments.ids)for(var t of e.FunctionArguments.ids){var r=n.instance.getNodeElement(t).firstChild;r&&(r.style.stroke=`#aeaeae`,r.style.strokeWidth=1)}else h=!0};h?(this.setContext(),this.instance.draw(_.action.update,void 0,w)):w();var T=function(){var e=[];for(var i of r.toolCalls)e.push({Role:`tool`,Text:i.FunctionResult,Id:i.Id});n._prompt(e,t)};l?this.chartInstance.exportToPDF({},function(){m.FunctionResult=`ok`,_._downloadFile(`application/pdf`,response,`OrgChart.pdf`,!1,`pdf`),T()}):T()},_.aiUI=function(){this.instance=null,this.interval=null,this.canSetContext=!1,this.element=null,this.inputElement=null,this.btnSendElement=null,this.messagesElement=null,Object.defineProperty(this,`width`,{get(){return this.isVisible()?this.element.offsetWidth:0}})},_.aiUI.title=`AI for OrgChart JS`,_.aiUI.prototype.init=function(e){this.instance=e;var t=this,n=this.instance.element.querySelector(`[data-boc-ai-button]`);n&&n.addEventListener(`click`,function(e){t.show()})},_.aiUI.prototype.isVisible=function(){return!(!this.element||this.element.style.display==`none`)},_.aiUI.prototype.show=function(e,t){this.instance.pdfPreviewUI.hide(),this.instance.svgPreviewUI.hide(),this.instance.pngPreviewUI.hide(),this.instance.powerPointPreviewUI.hide(),this.instance.aiUI.hide(),this.instance.orgScribeUI.hide(),this._create(),this.element.style.display=``,this.canSetContext||(this.canSetContext=!0,this.instance._ai.setContext());var n=this;t||(this.timeout&&clearInterval(this.interval),this.interval=_.animate(this.element,{opacity:0},{opacity:1},300,_.anim.outSin,function(){e||n.inputElement.focus()}))},_.aiUI.prototype._create=function(){if(!this.element){var e=this,t=`inp_`+this.instance.generateId();this.element=document.createElement(`div`),this.element.setAttribute(`data-boc-ai-form`,``),this.element.style.opacity=0,this.element.classList.add(`boc-ai-form`),this.element.classList.add(this.instance.config.mode),this.element.innerHTML=`<div class="boc-ai-container">
535
535
  <div data-boc-ai-close class="boc-ai-close">${_.icon.x(20,20,`#aeaeae`)}</div>
536
536
  <div class="boc-ai-middle boc-ai-start">
537
537
  <div data-boc-ai-messages class="boc-ai-messages">
@@ -631,7 +631,7 @@ Please report this to https://github.com/markedjs/marked.`,e){let e=`<p>An error
631
631
  <label for="${i.id}" class="hasval">${_._escapeGreaterLessSign(i.label)}</label>
632
632
  <input data-binding="${_._escapeDoubleQuotes(i.binding)}" ${i.readOnlyAttribute} maxlength="256" id="${i.id}" name="${i.id}" type="date" value="${_._escapeDoubleQuotes(i.value)}" autocomplete="off">
633
633
  </div>
634
- </div>`,id:i.id,value:i.value}},_.elements._vidrf=function(e,t,n){var r={};if(t.binding||=``,t.label||=``,t.type==`select`&&!Array.isArray(t.options)?r.options=[]:r.options=t.options,r.value=e&&!_.isNEU(e[t.binding])?e[t.binding]:``,n&&r.options){for(var i=0;i<r.options.length;i++)if(r.options[i].value==r.value){r.value=r.options[i].text;break}}if(r.id=_.elements.generateId(),r.disabledAttribute=n?`data-boc-input-disabled`:``,r.readOnlyAttribute=n?`readonly`:``,r.id=r.id,n&&_.isNEU(r.value)&&(r.doNotRender=!0),n&&t.binding==`photo`&&(r.id=null,r.doNotRender=!0),r.binding=t.binding,r.label=t.label,r.vlidators=``,t.vlidators)for(var a in t.vlidators)r.vlidators+=`data-v-${a}="${t.vlidators[a]}" `;return r},_.elements.ids=[],_.elements.generateId=function(){for(;;){var e=`_`+(`0000`+(Math.random()*36**4|0).toString(36)).slice(-4);if(!_.elements.ids.has(e))return _.elements.ids.push(e),e}},_.input={},_.input._timeout=null,_.input.initWithTimeout=function(){_.input._timeout&&(clearTimeout(_.input._timeout),_.input._timeout=null),_.input._timeout=setTimeout(_.input.init,200)},_.input.init=function(e){for(var t=e?e.querySelectorAll(`[data-boc-input]`):document.querySelectorAll(`[data-boc-input]`),n=0;n<t.length;n++){var r=t[n],i=null;r.type&&r.type.toLowerCase()==`hidden`&&(i=r),i||=r.querySelector(`input`),i||=r.querySelector(`select`);var a=r.querySelector(`label`);a&&(i.value||i.type==`select-one`&&i.selectedOptions&&i.selectedOptions.length&&i.selectedOptions[0].value==``&&i.selectedOptions[0].innerHTML)&&a.classList.add(`hasval`),i.type.toLowerCase()!=`checkbox`&&i.addEventListener(`focus`,function(){this.classList.remove(`boc-validation-error`);var e=this.parentNode.querySelector(`label`);e.classList.add(`focused`);var t=e.querySelector(`.boc-validation-error-message`);t&&t.parentNode.removeChild(t)}),i.type.toLowerCase()!=`checkbox`&&i.addEventListener(`blur`,function(){_.input.blurHandler(this)})}},_.input.blurHandler=function(e){var t=e.parentNode.querySelector(`label`);t.classList.remove(`focused`),e.value||e.type==`date`?t.classList.add(`hasval`):t.classList.remove(`hasval`)},_.input.validate=function(e){var t=null;e.type&&e.type.toLowerCase()==`hidden`&&(t=e),t||=e.querySelector(`input`),t||=e.querySelector(`select`);var n=e.querySelector(`label`);if(t.classList.remove(`boc-validation-error`),n){var r=n.querySelector(`.boc-validation-error-message`);r&&r.parentNode.removeChild(r)}!t.selectedOptions&&t.value&&(t.value=t.value.trim());var i=e.getAttribute(`data-v-required`),a=e.getAttribute(`data-v-password`),o=e.getAttribute(`data-v-email`),s=e.getAttribute(`data-v-emails`);return i&&t.value==``?(n.innerHTML+=`<span class="boc-validation-error-message">&nbsp;`+i+`</span>`,t.classList.add(`boc-validation-error`),!1):a&&!_.input.validatePassword(t.value)?(n.innerHTML+=`<span class="boc-validation-error-message">&nbsp;`+a+`</span>`,t.classList.add(`boc-validation-error`),!1):o&&!_.input.isValidEmail(t.value)?(n.innerHTML+=`<span class="boc-validation-error-message">&nbsp;`+o+`</span>`,t.classList.add(`boc-validation-error`),!1):s&&!_.input.isValidEmails(t.value)?(n.innerHTML+=`<span class="boc-validation-error-message">&nbsp;`+s+`</span>`,t.classList.add(`boc-validation-error`),!1):!0},_.input.validateAndGetData=function(e){for(var t=e.querySelectorAll(`[data-boc-input]`),n=!0,r=0;r<t.length;r++){var i=t[r];_.input.validate(i)||(n=!1)}return n?_.input.getData(e):!1},_.input.getData=function(e){for(var t=e.querySelectorAll(`[data-binding]`),n={},r=0;r<t.length;r++){var i=t[r],a=i.getAttribute(`data-binding`);if(i.type.toLowerCase()==`checkbox`)n[a]=i.checked;else if(i.selectedOptions&&i.hasAttribute(`multiple`)){var o=i.selectedOptions;n[a]=Array.from(o).map(({value:e})=>e)}else n[a]=i.value}return n},_.input.validatePassword=function(e){return e&&=e.trim(),e.length<5||e.length>18?!1:e.indexOf(` `)==-1},_.input.isValidEmails=function(e){if(e)for(var t=e.split(`,`),n=0;n<t.length;n++){var r=t[n].trim();if(!_.input.isValidEmail(r))return!1}return!0},_.input.isValidEmail=function(e){return e&&=e.trim(),/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(String(e).toLowerCase())},_.ui.css=function(){return`<style data-boc-styles>.boc-ai-form{height:100%;width:100%;box-shadow:rgba(0,0,0,.2) 0 6px 6px 0,rgba(0,0,0,.19) 0 13px 20px 0;display:flex;flex-direction:column;height:100%;width:400px}.boc-dark .boc-ai-form{color:#aeaeae}.boc-light .boc-ai-form{color:#757575}.boc-ai-messages{font-size:16px}@media screen and (max-width:500px){.boc-ai-form{width:100%}}.boc-dark .boc-ai-form{background-color:#252526}.boc-light .boc-ai-form{background-color:#fff}.boc-ai-button{font-size:32px;position:absolute;top:20px;left:20px;cursor:pointer;padding:12px;border-radius:50%;user-select:none}.boc-dark .boc-ai-button{color:#aeaeae}.boc-light .boc-ai-button{color:#757575}.boc-ai-button:hover{color:#fff;background-color:#039be5}.boc-ai-container{padding:0 14px;display:grid;grid-template-rows:40px auto 80px;gap:10px;height:100%}.boc-ai-container .boc-input input{padding-right:50px}.boc-ai-close{text-align:end;margin-top:20px}.boc-ai-close svg{cursor:pointer}.boc-ai-start{text-align:center;display:flex;justify-content:center;align-items:center;user-select:none}.boc-ai-start span{font-weight:700;font-size:32px;font:"Segoe UI",Arial,sans-serif;background:linear-gradient(90deg,#039be5 28%,#f57c00,#ffca28);color:transparent!important;background-clip:text;display:inline-block;padding:10px 0}.boc-ai-send.boc-ai-send-cansend{cursor:pointer;background-color:#039be5}.boc-ai-send.boc-ai-send-cansend:hover{background-color:#f57c00}.boc-ai-send.boc-ai-send-cansend:active{background-color:#ffca28}.boc-ai-send{background-color:transparent;position:absolute;right:7px;top:7px;width:38px;height:38px;border-radius:50%;text-align:center;background-repeat:no-repeat;background-position:center;background-size:20px 20px}.boc-ai-send svg{display:block;margin:auto;height:100%}.boc-ai-user-message{text-align:end;margin:14px 0}.boc-inner-user-message{padding:7px;border-radius:7px;display:inline-block}.boc-ai-middle{overflow-y:auto}.boc-ai-middle::-webkit-scrollbar{display:none}.boc-button{background-color:#039be5;cursor:pointer;width:calc(100%);height:50px;color:#fff;padding-top:5px;padding-left:7px;padding-right:7px;text-align:center;text-transform:uppercase;border:1px solid #3fc0ff;display:inline-block;border-radius:5px}.boc-button.orange{background-color:#f57c00;border:1px solid #ffa03e}.boc-button.yellow{background-color:#ffca28;border:1px solid #ffdf7c}.boc-button.lower{text-transform:unset}.boc-button.transparent{background-color:transparent}.boc-button:hover{background-color:#35afea}.boc-button.orange:hover{background-color:#f79632}.boc-button.yellow:hover{background-color:#ffd452}.boc-button:active{transform:matrix(.98,0,0,.98,0,0)}.boc-button-icon{text-align:initial;cursor:pointer;margin-bottom:15px;color:#039be5}.boc-dark .boc-button-icon:hover{background-color:#2d2d2d}.boc-light .boc-button-icon:hover{background-color:#ececec}.boc-button-icon>img{height:24px;width:24px;vertical-align:middle;padding:7px}.boc-button:focus{outline:0}.boc-button-icon>img{filter:invert(46%) sepia(66%) saturate(2530%) hue-rotate(171deg) brightness(95%) contrast(98%)}.boc-light .boc-button.transparent{color:#039be5}.boc-light .boc-button.transparent:hover{color:#fff}.boc-button-loading{background-color:transparent;cursor:pointer;width:calc(100% - 2px);height:50px;color:#fff;text-align:center;text-transform:uppercase;border:1px solid #027cb7;display:inline-block;display:flex;justify-content:center;align-items:center;display:none}.boc-button-loading .boc-loading-dots div{margin:0 10px}.boc-link-boc-button{position:absolute;right:10px;top:-1px}@media screen and (max-width:1000px){.boc-link-boc-button{right:50px}}[data-boc-input-disabled] .boc-link-boc-button{display:none}[dir=rtl] .boc-link-boc-button{left:10px;right:unset}.boc-img-button{width:48px;height:48px;cursor:pointer;border-radius:50%;background-color:#039be5;background-repeat:no-repeat;background-size:24px 24px;background-position:center center;margin:3px;display:inline-block}.boc-img-button:hover{background-color:#f57c00}.boc-checkbox{display:block;position:relative;padding-left:35px;margin-bottom:12px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.boc-checkbox input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.boc-checkbox-checkmark{position:absolute;top:0;left:0;height:25px;width:25px;border-radius:5px}.boc-dark [data-boc-input-disabled] .boc-checkbox-checkmark,.boc-dark [data-boc-input-disabled].boc-checkbox input:checked~.boc-checkbox-checkmark,.boc-light [data-boc-input-disabled] .boc-checkbox-checkmark,.boc-light [data-boc-input-disabled].boc-checkbox input:checked~.boc-checkbox-checkmark{background-color:#aeaeae!important}[data-boc-input-disabled].boc-checkbox{cursor:default}[dir=rtl] .boc-checkbox-checkmark{right:0}[dir=rtl] .boc-checkbox{padding-left:unset;padding-right:35px}.boc-dark .boc-checkbox-checkmark{background-color:#333;border:1px solid #5b5b5b}.boc-light .boc-checkbox-checkmark{background-color:#fff;border:1px solid #c7c7c7}.boc-dark .boc-checkbox:hover input~.boc-checkbox-checkmark{background-color:#3c3c3c}.boc-light .boc-checkbox:hover input~.boc-checkbox-checkmark{background-color:#f8f9f9}.boc-dark .boc-checkbox input:checked~.boc-checkbox-checkmark{background-color:#039be5}.boc-light .boc-checkbox input:checked~.boc-checkbox-checkmark{background-color:#039be5}.boc-checkbox-checkmark:after{content:"";position:absolute;display:none}.boc-checkbox input:checked~.boc-checkbox-checkmark:after{display:block}.boc-checkbox .boc-checkbox-checkmark:after{left:9px;top:5px;width:5px;height:10px;border:solid #fff;border-width:0 3px 3px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.boc-controls{display:flex;gap:7px;position:absolute}.boc-controls-top{left:unset;top:15px;right:50%;bottom:unset;transform:translateX(50%);flex-direction:row}.boc-controls-bottom{left:unset;top:unset;right:50%;bottom:15px;transform:translateX(50%);flex-direction:row}.boc-controls-left{left:15px;top:50%;right:unset;bottom:unset;transform:translateY(-50%);flex-direction:column}.boc-controls-right{left:unset;top:50%;right:15px;bottom:unset;transform:translateY(-50%);flex-direction:column}.boc-controls-bottom_right,.boc-controls-right_bottom{left:unset;top:unset;right:15px;bottom:15px;flex-direction:row}.boc-controls-right_bottom{flex-direction:column}.boc-controls-right_top,.boc-controls-top_right{left:unset;top:15px;right:15px;bottom:unset;flex-direction:row}.boc-controls-right_top{flex-direction:column}.boc-controls-bottom_left,.boc-controls-left_bottom{left:15px;top:unset;right:unset;bottom:15px;flex-direction:row}.boc-controls-left_bottom{flex-direction:column}.boc-controls-left_top,.boc-controls-top_left{left:15px;top:15px;right:unset;bottom:unset;flex-direction:row}.boc-controls-left_top{flex-direction:column}.boc-controls [data-control-id] svg{display:block;margin:0 auto}.boc-controls [data-control-id]{display:flex;align-items:center;cursor:pointer;width:60px;height:60px;border-radius:30px;box-shadow:0 4px 30px rgba(0,0,0,.1);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.boc-light .boc-controls [data-control-id]{background:rgba(255,255,255,.2);border:1px solid #c7c7c7}.boc-dark .boc-controls [data-control-id]{background:rgba(30,30,30,.2);border:1px solid #5b5b5b}.boc-controls [data-control-id]:hover{background-color:#0074e8}.boc-controls [data-control-id]:hover svg{filter:brightness(0) invert(1)}.boc-controls [data-control-id].boc-control-selected{background-color:#0074e8}.boc-controls [data-control-id].boc-control-selected svg{filter:brightness(0) invert(1)}.boc-filter{user-select:none}.boc-light .boc-filter{color:#757575}.boc-dark .boc-filter{color:#ccc}.boc-filter>div>div{display:inline-block;padding:3px 10px;cursor:pointer}.boc-filter-menu fieldset,.boc-filter>div,.filter-field-selected{border-radius:5px}.boc-filter-menu fieldset{overflow-y:auto;max-height:300px}.boc-filter>div.boc-filter-menu{padding:10px}.boc-light .boc-filter>div.boc-filter-menu,.boc-light .filter-field-selected{background-color:#f8f9f9}.boc-dark .boc-filter>div.boc-filter-menu,.boc-dark .filter-field-selected{background-color:#3c3c3c}.boc-light .boc-filter>div{background-color:#eee}.boc-dark .boc-filter>div{background-color:#333}.boc-form-perspective{transform-style:preserve-3d;perspective:500px;position:absolute;top:32px}.boc-form{box-shadow:rgba(0,0,0,.2) 0 6px 6px 0,rgba(0,0,0,.19) 0 13px 20px 0;padding:14px;transform-origin:top center;user-select:none;display:none;position:relative;max-height:calc(100vh - 100px);overflow-y:auto;border-bottom-left-radius:5px;border-bottom-right-radius:5px}.boc-form-bottom{border-bottom-left-radius:unset;border-bottom-right-radius:unset;border-top-left-radius:5px;border-top-right-radius:5px}.boc-form .separator{margin:0 10px}@media screen and (max-width:1000px){.boc-form-perspective{min-width:100%;max-height:calc(100% - 32px);left:unset!important;right:unset!important;transform:none!important}.boc-form .set{max-height:calc(100vh - 74px)}.boc-form-fieldset{max-width:unset!important}}.boc-light .boc-form .separator{border-bottom:1px solid #c7c7c7}.boc-dark .boc-form .separator{border-bottom:1px solid #5b5b5b}.boc-light .boc-form{background-color:#fff}.boc-dark .boc-form{background-color:#252526}.boc-item{padding:6px 12px 6px 12px;display:flex;flex-direction:row}.boc-light .boc-form .boc-item.selected,.boc-light .boc-form .boc-item:hover{background-color:#0074e8;color:#fff}.boc-dark .boc-form .boc-item.selected,.boc-dark .boc-form .boc-item:hover{background-color:#094771;color:#fff}.boc-item.selected img,.boc-item:hover img{filter:invert(100%)}.boc-item.selected img{visibility:visible!important}.boc-form-fieldset{display:flex;flex-wrap:wrap;margin:0!important}.boc-form-field{flex:1 0 21%;margin:3px;min-width:200px}.boc-form-field-100{flex:1 0 96%;margin:3px;min-width:200px}.boc-input{position:relative}.boc-input>input,.boc-input>select{height:50px;padding:18px 10px 2px 9px;width:100%;box-sizing:border-box;border-style:solid;border-width:1px}.boc-input select{height:50px;padding:20px 5px 4px 5px}[data-boc-input-disabled].boc-input>input,[data-boc-input-disabled].boc-input>select{border-color:transparent!important}.boc-light [data-boc-input-disabled]>input,.boc-light [data-boc-input-disabled]>select{background-color:#fff!important}.boc-dark [data-boc-input-disabled]>input,.boc-dark [data-boc-input-disabled]>select{background-color:#252526!important}[data-boc-input-disabled]>select{appearance:none;padding-left:8px}.boc-input>label{display:inline-block;position:absolute;padding-left:10px;padding-right:10px;color:#acacac;cursor:text;-webkit-transition:all .1s ease-out;-moz-transition:all .1s ease-out;-ms-transition:all .1s ease-out;-o-transition:all .1s ease-out;transition:all .1 ease-out;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:initial;text-align:initial;white-space:nowrap}.boc-input>label{top:12px;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 14px)}.boc-input>label.focused,.boc-input>label.hasval{top:-1px}.boc-input>input,.boc-input>select{outline:0;border-radius:5px}.boc-dark .boc-input>label.focused,.boc-light .boc-input>label.focused{color:#039be5}.boc-dark .boc-input>input,.boc-dark .boc-input>select{color:#ccc;background-color:#333;border-color:#5b5b5b}.boc-light .boc-input>input,.boc-light .boc-input>select{color:#757575;background-color:#fff;border-color:#c7c7c7}.boc-light .boc-input>input:focus,.boc-light .boc-input>select:focus{border-color:#039be5;background-color:#f8f9f9}.boc-dark .boc-input>input:focus,.boc-dark .boc-input>select:focus{border-color:#039be5;background-color:#3c3c3c}.boc-dark .boc-input>input.boc-validation-error,.boc-dark .boc-input>select.boc-validation-error,.boc-light .boc-input>input.boc-validation-error,.boc-light .boc-input>select.boc-validation-error{border-color:#ca2a2a}.boc-dark .boc-validation-error-message,.boc-light .boc-validation-error-message{color:#ca2a2a}.boc-input select.multiple{height:initial}.boc-link{color:#039be5;cursor:pointer;text-decoration:underline}.boc-link:hover{color:#f57c00}.boc-dark ::-webkit-scrollbar,.boc-light ::-webkit-scrollbar{width:15px;height:15px}.boc-dark ::-webkit-scrollbar-corner{background:#1e1e1e}.boc-dark ::-webkit-scrollbar-track{background:#1e1e1e;border-left:1px solid #333;border-top:1px solid #333}.boc-dark ::-webkit-scrollbar-thumb{background:#424242}.boc-dark ::-webkit-scrollbar-thumb:hover{background:#4f4f4f}.boc-dark ::-webkit-scrollbar-thumb:active{background:#5e5e5e}.boc-light ::-webkit-scrollbar-corner{background:#fff}.boc-light ::-webkit-scrollbar-track{background:#fff;border-left:1px solid #ddd;border-top:1px solid #ddd}.boc-light ::-webkit-scrollbar-thumb{background:#c1c1c1}.boc-light ::-webkit-scrollbar-thumb:hover{background:#929292}.boc-light ::-webkit-scrollbar-thumb:active{background:#666}.boc-edit-form{position:fixed;top:0;right:0;height:100%;width:100%;box-shadow:rgba(0,0,0,.2) 0 6px 6px 0,rgba(0,0,0,.19) 0 13px 20px 0;display:flex;flex-direction:column;height:100%;width:400px}@media screen and (max-width:1000px){.boc-edit-form{width:100%}}.boc-dark .boc-edit-form{background-color:#252526}.boc-light .boc-edit-form{background-color:#fff}.boc-edit-form-header{height:200px;text-align:center;border-radius:10px}.export-service .boc-edit-form-header{border-radius:unset}.boc-edit-form-title{color:#fff;margin:0;padding:14px 17px 7px 17px}.boc-edit-form-avatar{border-radius:50%;width:150px;height:150px;position:absolute;top:75px;border:5px solid #fff;left:50%;transform:translateX(-50%);background-color:#cacaca;box-shadow:rgba(0,0,0,.2) 0 6px 6px 0,rgba(0,0,0,.19) 0 13px 20px 0}.boc-edit-form-close{position:absolute;right:14px;top:14px;width:34px;height:34px;cursor:pointer}.boc-edit-form-fields{flex-grow:1;overflow-y:auto;overflow-x:hidden}.boc-edit-form-fields-inner{margin:0 7px 20px 7px}.boc-ai-user-message{text-align:end;margin:14px 0}.boc-inner-user-message{padding:7px;border-radius:7px;display:inline-block}.dark .boc-inner-user-message{background-color:#333}.light .boc-inner-user-message{background-color:#f9f9f9}.boc-export-form{box-shadow:rgba(0,0,0,.2) 0 -6px 6px 0,rgba(0,0,0,.19) 0 -13px 20px 0;display:flex;flex-direction:column;height:100%;width:400px}.boc-dark .boc-export-form{color:#aeaeae;background-color:#252526}.boc-light .boc-export-form{color:#757575;background-color:#eee}@media screen and (max-width:500px){.boc-export-form{width:100%}}.boc-export-container{display:grid;grid-template-rows:40px auto;gap:10px;height:100%}.boc-export-page{width:100%;border:1px solid #aeaeae;display:flex;justify-content:center;align-items:center;user-select:none;position:relative}.boc-export-selected{border:1px solid #ffca28}.boc-export-middle{overflow-y:auto;overflow-x:hidden;padding:0 3px 0 0;margin-bottom:10px}.boc-export-btns-inner{padding-top:14px;display:flex;justify-content:space-between}.boc-export-left{justify-content:flex-start}.boc-export-right{justify-content:flex-end}.boc-export-left,.boc-export-right{user-select:none}.boc-export-select{position:absolute;top:0;left:0;text-align:center;width:100%}.boc-export-child-buttons{position:absolute;bottom:7px;left:7px;display:none}.boc-export-page:hover .boc-export-child-buttons{display:initial}.boc-export-parent-buttons{position:absolute;top:7px;left:7px;display:none}.boc-export-page:hover .boc-export-parent-buttons{display:initial}.boc-export-remove-buttons{position:absolute;bottom:7px;right:7px;display:none}.boc-export-page:hover .boc-export-remove-buttons{display:initial}.boc-export-child-buttons button,.boc-export-parent-buttons button{width:23px}.boc-export-profiletree-buttons{position:absolute;top:7px;right:7px;display:none}.boc-export-page:hover .boc-export-profiletree-buttons{display:initial}.boc-export-middle-inner{display:grid;gap:10px;margin:0 10px}.boc-export-btns-inner{margin:0 10px}.boc-menu{position:absolute;min-width:240px;border-radius:12px;padding:8px;opacity:0;visibility:hidden;transform:scale(.95);transition:opacity .15s ease,transform .15s ease,visibility .15s;z-index:1000;user-select:none;font:13px/28px Helvetica,"Segoe UI",Arial,sans-serif}.boc-menu-options{width:100%;table-layout:auto;border-collapse:collapse}.boc-menu-item{cursor:pointer}.boc-menu-icon,.boc-menu-shortcut{width:1%;white-space:nowrap;padding:12px}.boc-menu-icon{border-top-left-radius:7px;border-bottom-left-radius:7px;vertical-align:middle;font-size:20px}.boc-menu-icon>img,.boc-menu-icon>svg{display:block}.boc-menu-shortcut{text-align:right;border-top-right-radius:7px;border-bottom-right-radius:7px}.boc-menu-text{width:auto;padding:12px 0}.boc-menu-submenu{width:0%}.boc-menu.active{opacity:1;visibility:visible;transform:scale(1)}.boc-menu-line{height:1px}.boc-menu-divider>td{height:12px}.boc-menu-item.boc-has-submenu{position:relative}.boc-submenu-arrow{font-size:10px;opacity:.6}.boc-submenu{position:absolute;top:-9px;min-width:180px;border-radius:12px;padding:8px;opacity:0;visibility:hidden;transform:translateX(-10px);transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:1001}.boc-submenu.boc-submenu-left{right:100%;left:auto;margin-right:4px;transform:translateX(10px)}.boc-submenu:not(.boc-submenu-left){left:100%;right:auto;margin-left:4px}.boc-submenu.boc-submenu-top{bottom:0;top:auto}.boc-submenu:not(.boc-submenu-top){bottom:auto;top:0}.boc-menu-item.boc-has-submenu:hover>.boc-menu-submenu>.boc-submenu{opacity:1;visibility:visible;transform:translateX(0)}.boc-light .boc-submenu{background:#fff;box-shadow:0 10px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.05);border:1px solid #e0e0e0}.boc-light .boc-menu-divider .boc-menu-line{background-color:#e0e0e0}.boc-light .boc-menu-shortcut{color:#666}.boc-light .boc-menu-item{color:#333}.boc-light .boc-menu-item:hover>td{background-color:#f5f5f5}.boc-light .boc-menu-item:hover>.boc-menu-text{color:#000}.boc-light .boc-menu{border:1px solid #e0e0e0;background:#fff;box-shadow:0 10px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.05)}.boc-dark .boc-submenu{background:#1e1e1e;box-shadow:0 10px 25px -5px rgba(0,0,0,.55),0 8px 10px -6px rgba(0,0,0,.45);border:1px solid #3a3a3a}.boc-dark .boc-menu-divider .boc-menu-line{background-color:#3a3a3a}.boc-dark .boc-menu-shortcut{color:#8b949e}.boc-dark .boc-menu-item{color:#c9d1d9}.boc-dark .boc-menu-item:hover>td{background-color:#2d2d2d}.boc-dark .boc-menu-item:hover>.boc-menu-text{color:#fff}.boc-dark .boc-menu{border:1px solid #3a3a3a;background:#1e1e1e;box-shadow:0 10px 25px -5px rgba(0,0,0,.55),0 8px 10px -6px rgba(0,0,0,.45)}.boc-orgscribe-form{height:100%;width:100%;box-shadow:rgba(0,0,0,.2) 0 6px 6px 0,rgba(0,0,0,.19) 0 13px 20px 0;display:flex;flex-direction:column;height:100%;width:400px}@media screen and (max-width:500px){.boc-orgscribe-form{width:100%}}.boc-dark .boc-orgscribe-form{background-color:#252526}.boc-light .boc-orgscribe-form{background-color:#fff}.boc-orgscribe-container{padding:0 14px;display:grid;grid-template-rows:40px auto 10px;gap:10px;height:100%}.boc-orgscribe-container .boc-input input{padding-right:50px}.boc-orgscribe-close{text-align:end;margin-top:20px}.boc-orgscribe-close svg{cursor:pointer}.boc-orgscribe-txt{width:100%;height:100%;box-sizing:border-box;border-style:solid;border-width:1px;outline:0;border-radius:5px;font-size:24px}.boc-dark .boc-orgscribe-txt{color:#ccc;background-color:#333;border-color:#5b5b5b}.boc-light .boc-orgscribe-txt{color:#757575;background-color:#fff;border-color:#c7c7c7}.boc-search{position:absolute}@media screen and (max-width:500px){.boc-search{width:calc(100% - 30px);left:15px}}.boc-search .boc-input{margin-bottom:0}.boc-search-input{color:#7a7a7a;width:100%;border:none;outline:0;padding-top:10px;padding-right:47px}.boc-search-image-td{width:43px}.boc-search-text-td{padding-inline-end:7px;line-height:15px;text-align:start}.boc-search table{box-shadow:rgba(0,0,0,.2) 0 4px 8px 0,rgba(0,0,0,.19) 0 6px 20px 0;margin:0 3.5px 0 3.5px;width:calc(100% - 7px);border-radius:7px}.boc-search table tr:first-child td:first-child{border-top-left-radius:7px}.boc-search table tr:first-child td:last-child{border-top-right-radius:7px}[dir=rtl] .boc-search table tr:first-child td:first-child{border-top-left-radius:unset;border-top-right-radius:7px}[dir=rtl] .boc-search table tr:first-child td:last-child{border-top-right-radius:unset;border-top-left-radius:7px}.boc-search table tr:last-child td:first-child{border-bottom-left-radius:7px}.boc-search table tr:last-child td:last-child{border-bottom-right-radius:7px}[dir=rtl] .boc-search table tr:last-child td:first-child{border-bottom-left-radius:unset;border-bottom-right-radius:7px}[dir=rtl] .boc-search table tr:last-child td:last-child{border-bottom-right-radius:unset;border-bottom-left-radius:7px}.boc-dark .boc-search table{background-color:#252526;color:#acacac}.boc-search [data-search-item-id]{cursor:pointer}.boc-search-photo{margin:7px 7px 0 7px;width:32px;height:32px;background-size:cover;background-position:top center;border-radius:50%;display:inline-block;border:1px solid #8c8c8c}.boc-search [data-search-item-id]:hover .boc-link{color:#ffca28}.boc-search [data-search-item-id]:hover .boc-link:hover{color:#f57c00}.boc-dark .boc-search [data-search-item-id] td{border-top:1px solid #333}.boc-dark .boc-search [data-search-item-id]:hover,.boc-dark .boc-search [data-selected=yes]{background-color:#094771;color:#fff}.boc-light .boc-search table{background-color:#fff;color:#333}.boc-light .boc-search [data-search-item-id] td{border-top:1px solid #c7c7c7}.boc-light .boc-search [data-search-item-id]:hover,.boc-light .boc-search [data-selected=yes]{background-color:#0074e8;color:#fff}.boc-search [data-search-item-id]:first-child td{border-top:unset}.boc-ripple-container{position:absolute;top:0;right:0;bottom:0;left:0}.boc-drag-over rect{opacity:.5}.boc-ripple-container span{transform:scale(0);border-radius:100%;position:absolute;opacity:.75;background-color:#fff;animation:boc-ripple 1s}@-moz-keyframes boc-ripple{to{opacity:0;transform:scale(2)}}@-webkit-keyframes boc-ripple{to{opacity:0;transform:scale(2)}}@-o-keyframes boc-ripple{to{opacity:0;transform:scale(2)}}@keyframes boc-ripple{to{opacity:0;transform:scale(2)}}.boc-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s}.boc-slider:before{position:absolute;content:"";height:16px;width:16px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.4s;transition:.4s}.boc-slider.round{border-radius:24px}.boc-slider.round:before{border-radius:50%}svg text:hover{cursor:default}svg.boc-cursor-grab,svg.boc-cursor-grab text:hover{cursor:grab}svg.boc-cursor-nodrop,svg.boc-cursor-nodrop text:hover{cursor:no-drop}svg.boc-cursor-copy,svg.boc-cursor-copy text:hover{cursor:copy}svg.boc-cursor-move,svg.boc-cursor-move text:hover{cursor:move}#boc-close-btn:focus,#boc-close-btn:hover{color:#000;text-decoration:none;cursor:pointer}#boc-id-select:focus{outline:.5px solid #aeaeae}#boc-sampleDialog #title:hover{cursor:default;background:gray}.boc-light{background-color:#fff;font:13px/28px Helvetica,"Segoe UI",Arial,sans-serif}.boc-dark{background-color:#1e1e1e;font:13px/28px Helvetica,"Segoe UI",Arial,sans-serif}.boc-dark input,.boc-dark select,.boc-light input,.boc-light select{font:16px Helvetica,"Segoe UI",Arial,sans-serif}.boc-dark h1,.boc-light h1{font-size:30px;line-height:1}.boc-light [data-boc-content]::backdrop{background-color:#fff}.boc-dark [data-boc-content]::backdrop{background-color:#1e1e1e}.boc-dark text,.boc-light text{user-select:none}.boc-edit-form{position:absolute;border-radius:10px}.export-service .boc-edit-form{border-radius:unset}.boc-dark .boc-edit-form{color:#acacac}.boc-light .boc-edit-form{color:#333}.boc-dark ::-webkit-calendar-picker-indicator{filter:invert(70%)}.boc-light ::-webkit-calendar-picker-indicator{filter:invert(50%)}.boc-edit-form-instruments{margin:42px 10px 0 10px;text-align:center;min-height:70px}.boc-img-button svg{position:relative;top:12px}.boc-light .boc-toolbar-container svg circle,.boc-light .boc-toolbar-container svg line,.boc-light .boc-toolbar-container svg path{stroke:#8c8c8c!important}.boc-dark .boc-toolbar-container svg circle,.boc-dark .boc-toolbar-container svg line,.boc-dark .boc-toolbar-container svg path{stroke:#8c8c8c!important}.boc-dark .boc-toolbar-container svg rect{fill:#252526!important}.boc-dark .boc-toolbar-container [data-tlbr=minus] svg{border-left:1px solid #5b5b5b!important;border-right:1px solid #5b5b5b!important;border-bottom:1px solid #5b5b5b!important}.boc-dark .boc-toolbar-container [data-tlbr=plus] svg{border-left:1px solid #5b5b5b!important;border-right:1px solid #5b5b5b!important;border-top:1px solid #5b5b5b!important}.boc-dark .boc-toolbar-container [data-tlbr]>svg{border:1px solid #5b5b5b!important;background-color:#252526!important}.boc-toolbar-layout{height:123px;padding-top:20px;position:absolute;width:100%;left:"0";bottom:"-145px"}.boc-light .boc-toolbar-layout{border-top:1px solid #c7c7c7;background-color:#f9f9f9}.boc-dark .boc-toolbar-layout{border-top:1px solid #5b5b5b;background-color:#2b2b2b}.boc-dotted-connector path{stroke-dasharray:7}.boc-undo-redo{position:absolute;top:23px;left:23px}@media screen and (max-width:500px){.boc-undo-redo{position:absolute;top:83px;left:23px}}.boc-light .boc-undo-redo path{fill:#cacaca}.boc-dark .boc-undo-redo path{fill:#5b5b5b}.boc-light .boc-undo-redo .boc-ur-clickable path{fill:#9c9c9c}.boc-dark .boc-undo-redo .boc-ur-clickable path{fill:#8c8c8c}.boc-undo-redo .boc-ur-clickable rect{cursor:pointer}.boc-undo-redo>span{position:relative;display:inline-block;user-select:none}.boc-undo-redo .boc-undo-i{left:-6px;top:-6px}.boc-undo-redo .boc-redo-i{right:-6px;bottom:6px}.boc-undo-redo>span>span{color:#fff;position:absolute;display:inline-block;min-width:20px;min-height:20px;border-radius:50%;line-height:20px;text-align:center;padding:1px;user-select:none;cursor:pointer}.boc-light .boc-undo-redo>span>span{background-color:#9c9c9c}.boc-dark .boc-undo-redo>span>span{background-color:#8c8c8c}.boc-dark .treelist-pinned{filter:brightness(1.2)}.boc-light .treelist-pinned{filter:brightness(.9)}.boc-light .boc-scroll{fill:#fff}.boc-light .boc-scroll-thumb{fill:#c1c1c1}.boc-light .boc-scroll-thumb:hover{fill:#929292}.boc-dark .boc-scroll{fill:#1e1e1e}.boc-dark .boc-scroll-thumb{fill:#424242}.boc-dark .boc-scroll-thumb:hover{fill:#4f4f4f}</style>`},_===void 0&&(_={}),_.prototype.onField=function(e){return this.on(`field`,function(t,n){return e.call(t,n)})},_.prototype.onInit=function(e){return this.on(`init`,function(t){return e.call(t)})},_.prototype.onRedraw=function(e){return this.on(`redraw`,function(t){return e.call(t)})},_.prototype.onUpdateNode=function(e){return this.on(`update`,function(t,n,r){var i={oldData:n,newData:r};return e.call(t,i)})},_.prototype.onUpdated=function(e){return this.on(`updated`,function(t){return e.call(t)})},_.prototype.onRemoveNode=function(e){return this.on(`remove`,function(t,n,r){var i={id:n,newPidsAndStpidsForIds:r};return e.call(t,i)})},_.prototype.onAddNode=function(e){return this.on(`add`,function(t,n){var r={data:n};return e.call(t,r)})},_.prototype.onDrop=function(e){return this.on(`drop`,function(t,n,r,i,a){var o={dragId:n,dropId:r,dragNodeElement:i,event:a};return e.call(t,o)})},_.prototype.onDrag=function(e){return this.on(`drag`,function(t,n,r,i){var a={dragId:n,event:r,nodeIds:i};return e.call(t,a)})},_.prototype.onExpandCollapseButtonClick=_.prototype.onExpandCollpaseButtonClick=function(e){return this.on(`expcollclick`,function(t,n,r,i){var a={collapsing:n,id:r,ids:i};return e.call(t,a)})},_.prototype.onExportStart=function(e){return this.on(`exportstart`,function(t,n){return e.call(t,n)})},_.prototype.onExportEnd=function(e){return this.on(`exportend`,function(t,n){return e.call(t,n)})},_.prototype.onNodeClick=function(e){return this.on(`click`,function(t,n){return e.call(t,n)})},_.prototype.onCanvasClick=function(e){return this.on(`canvas-click`,function(t,n){return e.call(t,n)})},_.prototype.onNodeDoubleClick=function(e){return this.on(`dbclick`,function(t,n){var r={data:n};return e.call(t,r)})},_.prototype.onAIToolCalls=function(e){return this.on(`ai-tool-calls`,function(t,n){return e.call(t,n)})},_.filterUI=function(){},_.filterUI.prototype.init=function(e){this.instance=e,this.element=null,this.filterBy=null,this._event_id=_._guid()},_.filterUI.prototype.addFilterTag=function(e){if(!this.instance.config.filterBy||_.isNEU(e))return!1;if(this.filterBy===null&&typeof this.instance.config.filterBy==`object`&&!Array.isArray(this.instance.config.filterBy)&&(this.filterBy=JSON.parse(JSON.stringify(this.instance.config.filterBy))),this.filterBy!=null)for(var t in this.filterBy){var n=e[t];if(n!=null){var r=this.filterBy[t];if(r!=null){var i=r[n];if(i!=null&&i.checked===!1)return!0}}}return!1},_.filterUI.prototype.show=function(e){var t=this.element.querySelector(`[data-filter-field="`+e+`"]`);t&&t.click()},_.filterUI.prototype.hide=function(){var e=this.instance.element.querySelector(`[data-filter-close]`);e&&e.click()},_.filterUI.prototype._removeFilter=function(e){var t=this.instance.get(e);for(var n in this.filterBy){var r=this.filterBy[n];for(var i in t){var a=t[i];r[a]&&(r[a].checked=!0)}}this.update()},_.filterUI.prototype.update=function(){if(this.instance.config.filterBy){var e={};if(this.instance.config.filterBy==`all`)for(var t=_.manager.getAllFields(this.instance.config),n=0;n<t.length;n++){var r=t[n];r!=`tags`&&r!=`id`&&r!=`pid`&&r!=`ppid`&&r!=`stpid`&&(e[r]={})}else if(Array.isArray(this.instance.config.filterBy))for(var n=0;n<this.instance.config.filterBy.length;n++)e[this.instance.config.filterBy[n]]={};else if(typeof this.instance.config.filterBy==`object`)for(var i in this.instance.config.filterBy)e[i]={};for(var a in e)for(var o=e[a],n=0;n<this.instance.config.nodes.length;n++){var s=this.instance.config.nodes[n][a];s!=null&&(o[s]||(o[s]={checked:!0,text:s}))}if(this.filterBy!=null){for(var c in e)if(this.filterBy[c])for(var l in e[c])this.filterBy[c][l]&&(e[c][l]=this.filterBy[c][l])}if(_.FILTER_ALPHABETICALLY){var u=Object.keys(e).sort(),d=e;e={};for(var n=0;n<u.length;n++){var f=u[n];e[f]=d[f]}for(var a in e){var o=e[a];e[a]={};for(var u=Object.keys(o).sort(),n=0;n<u.length;n++){var f=u[n];e[a][f]=o[f]}}}this.filterBy=e;var p=this;this.element=this.instance.element.querySelector(`[data-filter]`),this.element&&this.element.parentNode.removeChild(this.element),this.element=document.createElement(`div`),this.element.setAttribute(`data-filter`,``),this.element.style.position=`absolute`,this.element.setAttribute(`class`,`boc-filter`),this.instance.config.undoRedoStorageName?(this.element.style.top=0,this.element.style.left=`50%`,this.element.style.transform=`translate(-50%)`):(this.element.style.top=this.instance.config.padding+`px`,this.element.style.left=this.instance.config.padding+`px`);var m=``;for(var c in this.filterBy){var h={name:c,html:`<div data-filter-field="${c}">${c}</div>`};_.events.publish(`add-filter`,[p,h]),m+=h.html}this.element.innerHTML=`<div>${m}</div>`,this.element.addEventListener(`click`,function(e){if(e.target.hasAttribute(`data-filter-close`)||e.target.hasAttribute(`data-filter-field`)){for(var t=e.target.getAttribute(`data-filter-field`),n=p.instance.element.querySelectorAll(`[data-filter-menu]`),r=0;r<n.length;r++)n[r].style.display=`none`;for(var i=p.instance.element.querySelectorAll(`.filter-field-selected`),r=0;r<i.length;r++)i[r].classList.remove(`filter-field-selected`);var a=p.instance.element.querySelector(`[data-filter-close]`);if(a&&a.parentNode.removeChild(a),e.target.hasAttribute(`data-filter-close`)||!e.target.hasAttribute(`data-filter-field`))return;var o=p.instance.element.querySelector(`[data-filter-menu="${t}"]`);if(!o){var s=`checked`;for(var c in p.filterBy[t])p.filterBy[t][c].checked||(s=``);var l={name:t,text:_.filterUI.all,value:t,checked:!0,html:`<div>
634
+ </div>`,id:i.id,value:i.value}},_.elements._vidrf=function(e,t,n){var r={};if(t.binding||=``,t.label||=``,t.type==`select`&&!Array.isArray(t.options)?r.options=[]:r.options=t.options,r.value=e&&!_.isNEU(e[t.binding])?e[t.binding]:``,n&&r.options){for(var i=0;i<r.options.length;i++)if(r.options[i].value==r.value){r.value=r.options[i].text;break}}if(r.id=_.elements.generateId(),r.disabledAttribute=n?`data-boc-input-disabled`:``,r.readOnlyAttribute=n?`readonly`:``,r.id=r.id,n&&_.isNEU(r.value)&&(r.doNotRender=!0),n&&t.binding==`photo`&&(r.id=null,r.doNotRender=!0),r.binding=t.binding,r.label=t.label,r.vlidators=``,t.vlidators)for(var a in t.vlidators)r.vlidators+=`data-v-${a}="${t.vlidators[a]}" `;return r},_.elements.ids=[],_.elements.generateId=function(){for(;;){var e=`_`+(`0000`+(Math.random()*36**4|0).toString(36)).slice(-4);if(!_.elements.ids.has(e))return _.elements.ids.push(e),e}},_.input={},_.input._timeout=null,_.input.initWithTimeout=function(){_.input._timeout&&(clearTimeout(_.input._timeout),_.input._timeout=null),_.input._timeout=setTimeout(_.input.init,200)},_.input.init=function(e){for(var t=e?e.querySelectorAll(`[data-boc-input]`):document.querySelectorAll(`[data-boc-input]`),n=0;n<t.length;n++){var r=t[n],i=null;r.type&&r.type.toLowerCase()==`hidden`&&(i=r),i||=r.querySelector(`input`),i||=r.querySelector(`select`);var a=r.querySelector(`label`);a&&(i.value||i.type==`select-one`&&i.selectedOptions&&i.selectedOptions.length&&i.selectedOptions[0].value==``&&i.selectedOptions[0].innerHTML)&&a.classList.add(`hasval`),i.type.toLowerCase()!=`checkbox`&&i.addEventListener(`focus`,function(){this.classList.remove(`boc-validation-error`);var e=this.parentNode.querySelector(`label`);e.classList.add(`focused`);var t=e.querySelector(`.boc-validation-error-message`);t&&t.parentNode.removeChild(t)}),i.type.toLowerCase()!=`checkbox`&&i.addEventListener(`blur`,function(){_.input.blurHandler(this)})}},_.input.blurHandler=function(e){var t=e.parentNode.querySelector(`label`);t.classList.remove(`focused`),e.value||e.type==`date`?t.classList.add(`hasval`):t.classList.remove(`hasval`)},_.input.validate=function(e){var t=null;e.type&&e.type.toLowerCase()==`hidden`&&(t=e),t||=e.querySelector(`input`),t||=e.querySelector(`select`);var n=e.querySelector(`label`);if(t.classList.remove(`boc-validation-error`),n){var r=n.querySelector(`.boc-validation-error-message`);r&&r.parentNode.removeChild(r)}!t.selectedOptions&&t.value&&(t.value=t.value.trim());var i=e.getAttribute(`data-v-required`),a=e.getAttribute(`data-v-password`),o=e.getAttribute(`data-v-email`),s=e.getAttribute(`data-v-emails`);return i&&t.value==``?(n.innerHTML+=`<span class="boc-validation-error-message">&nbsp;`+i+`</span>`,t.classList.add(`boc-validation-error`),!1):a&&!_.input.validatePassword(t.value)?(n.innerHTML+=`<span class="boc-validation-error-message">&nbsp;`+a+`</span>`,t.classList.add(`boc-validation-error`),!1):o&&!_.input.isValidEmail(t.value)?(n.innerHTML+=`<span class="boc-validation-error-message">&nbsp;`+o+`</span>`,t.classList.add(`boc-validation-error`),!1):s&&!_.input.isValidEmails(t.value)?(n.innerHTML+=`<span class="boc-validation-error-message">&nbsp;`+s+`</span>`,t.classList.add(`boc-validation-error`),!1):!0},_.input.validateAndGetData=function(e){for(var t=e.querySelectorAll(`[data-boc-input]`),n=!0,r=0;r<t.length;r++){var i=t[r];_.input.validate(i)||(n=!1)}return n?_.input.getData(e):!1},_.input.getData=function(e){for(var t=e.querySelectorAll(`[data-binding]`),n={},r=0;r<t.length;r++){var i=t[r],a=i.getAttribute(`data-binding`);if(i.type.toLowerCase()==`checkbox`)n[a]=i.checked;else if(i.selectedOptions&&i.hasAttribute(`multiple`)){var o=i.selectedOptions;n[a]=Array.from(o).map(({value:e})=>e)}else n[a]=i.value}return n},_.input.validatePassword=function(e){return e&&=e.trim(),e.length<5||e.length>18?!1:e.indexOf(` `)==-1},_.input.isValidEmails=function(e){if(e)for(var t=e.split(`,`),n=0;n<t.length;n++){var r=t[n].trim();if(!_.input.isValidEmail(r))return!1}return!0},_.input.isValidEmail=function(e){return e&&=e.trim(),/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(String(e).toLowerCase())},_.ui.css=function(){return`<style data-boc-styles>.boc-ai-form{height:100%;width:100%;box-shadow:rgba(0,0,0,.2) 0 6px 6px 0,rgba(0,0,0,.19) 0 13px 20px 0;display:flex;flex-direction:column;height:100%;width:400px}.boc-dark .boc-ai-form{color:#aeaeae}.boc-light .boc-ai-form{color:#757575}.boc-ai-messages{font-size:16px}@media screen and (max-width:500px){.boc-ai-form{width:100%}}.boc-dark .boc-ai-form{background-color:#252526}.boc-light .boc-ai-form{background-color:#fff}.boc-ai-button{font-size:32px;position:absolute;top:20px;left:20px;cursor:pointer;padding:12px;border-radius:50%;user-select:none}.boc-dark .boc-ai-button{color:#aeaeae}.boc-light .boc-ai-button{color:#757575}.boc-ai-button:hover{color:#fff;background-color:#039be5}.boc-ai-container{padding:0 14px;display:grid;grid-template-rows:40px auto 80px;gap:10px;height:100%}.boc-ai-container .boc-input input{padding-right:50px}.boc-ai-close{text-align:end;margin-top:20px}.boc-ai-close svg{cursor:pointer}.boc-ai-start{text-align:center;display:flex;justify-content:center;align-items:center;user-select:none}.boc-ai-start span{font-weight:700;font-size:32px;font:"Segoe UI",Arial,sans-serif;background:linear-gradient(90deg,#039be5 28%,#f57c00,#ffca28);color:transparent!important;background-clip:text;display:inline-block;padding:10px 0}.boc-ai-send.boc-ai-send-cansend{cursor:pointer;background-color:#039be5}.boc-ai-send.boc-ai-send-cansend:hover{background-color:#f57c00}.boc-ai-send.boc-ai-send-cansend:active{background-color:#ffca28}.boc-ai-send{background-color:transparent;position:absolute;right:7px;top:7px;width:38px;height:38px;border-radius:50%;text-align:center;background-repeat:no-repeat;background-position:center;background-size:20px 20px}.boc-ai-send svg{display:block;margin:auto;height:100%}.boc-ai-user-message{text-align:end;margin:14px 0}.boc-inner-user-message{padding:7px;border-radius:7px;display:inline-block}.boc-ai-middle{overflow-y:auto}.boc-ai-middle::-webkit-scrollbar{display:none}.boc-button{background-color:#039be5;cursor:pointer;width:calc(100%);height:50px;color:#fff;padding-top:5px;padding-left:7px;padding-right:7px;text-align:center;text-transform:uppercase;border:1px solid #3fc0ff;display:inline-block;border-radius:5px}.boc-button.orange{background-color:#f57c00;border:1px solid #ffa03e}.boc-button.yellow{background-color:#ffca28;border:1px solid #ffdf7c}.boc-button.lower{text-transform:unset}.boc-button.transparent{background-color:transparent}.boc-button:hover{background-color:#35afea}.boc-button.orange:hover{background-color:#f79632}.boc-button.yellow:hover{background-color:#ffd452}.boc-button:active{transform:matrix(.98,0,0,.98,0,0)}.boc-button-icon{text-align:initial;cursor:pointer;margin-bottom:15px;color:#039be5}.boc-dark .boc-button-icon:hover{background-color:#2d2d2d}.boc-light .boc-button-icon:hover{background-color:#ececec}.boc-button-icon>img{height:24px;width:24px;vertical-align:middle;padding:7px}.boc-button:focus{outline:0}.boc-button-icon>img{filter:invert(46%) sepia(66%) saturate(2530%) hue-rotate(171deg) brightness(95%) contrast(98%)}.boc-light .boc-button.transparent{color:#039be5}.boc-light .boc-button.transparent:hover{color:#fff}.boc-button-loading{background-color:transparent;cursor:pointer;width:calc(100% - 2px);height:50px;color:#fff;text-align:center;text-transform:uppercase;border:1px solid #027cb7;display:inline-block;display:flex;justify-content:center;align-items:center;display:none}.boc-button-loading .boc-loading-dots div{margin:0 10px}.boc-link-boc-button{position:absolute;right:10px;top:-1px}@media screen and (max-width:1000px){.boc-link-boc-button{right:50px}}[data-boc-input-disabled] .boc-link-boc-button{display:none}[dir=rtl] .boc-link-boc-button{left:10px;right:unset}.boc-img-button{width:48px;height:48px;cursor:pointer;border-radius:50%;background-color:#039be5;background-repeat:no-repeat;background-size:24px 24px;background-position:center center;margin:3px;display:inline-block}.boc-img-button:hover{background-color:#f57c00}.boc-checkbox{display:block;position:relative;padding-left:35px;margin-bottom:12px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.boc-checkbox input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.boc-checkbox-checkmark{position:absolute;top:0;left:0;height:25px;width:25px;border-radius:5px}.boc-dark [data-boc-input-disabled] .boc-checkbox-checkmark,.boc-dark [data-boc-input-disabled].boc-checkbox input:checked~.boc-checkbox-checkmark,.boc-light [data-boc-input-disabled] .boc-checkbox-checkmark,.boc-light [data-boc-input-disabled].boc-checkbox input:checked~.boc-checkbox-checkmark{background-color:#aeaeae!important}[data-boc-input-disabled].boc-checkbox{cursor:default}[dir=rtl] .boc-checkbox-checkmark{right:0}[dir=rtl] .boc-checkbox{padding-left:unset;padding-right:35px}.boc-dark .boc-checkbox-checkmark{background-color:#333;border:1px solid #5b5b5b}.boc-light .boc-checkbox-checkmark{background-color:#fff;border:1px solid #c7c7c7}.boc-dark .boc-checkbox:hover input~.boc-checkbox-checkmark{background-color:#3c3c3c}.boc-light .boc-checkbox:hover input~.boc-checkbox-checkmark{background-color:#f8f9f9}.boc-dark .boc-checkbox input:checked~.boc-checkbox-checkmark{background-color:#039be5}.boc-light .boc-checkbox input:checked~.boc-checkbox-checkmark{background-color:#039be5}.boc-checkbox-checkmark:after{content:"";position:absolute;display:none}.boc-checkbox input:checked~.boc-checkbox-checkmark:after{display:block}.boc-checkbox .boc-checkbox-checkmark:after{left:9px;top:5px;width:5px;height:10px;border:solid #fff;border-width:0 3px 3px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.boc-controls{display:flex;gap:7px;position:absolute}.boc-controls-top{left:unset;top:15px;right:50%;bottom:unset;transform:translateX(50%);flex-direction:row}.boc-controls-bottom{left:unset;top:unset;right:50%;bottom:15px;transform:translateX(50%);flex-direction:row}.boc-controls-left{left:15px;top:50%;right:unset;bottom:unset;transform:translateY(-50%);flex-direction:column}.boc-controls-right{left:unset;top:50%;right:15px;bottom:unset;transform:translateY(-50%);flex-direction:column}.boc-controls-bottom_right,.boc-controls-right_bottom{left:unset;top:unset;right:15px;bottom:15px;flex-direction:row}.boc-controls-right_bottom{flex-direction:column}.boc-controls-right_top,.boc-controls-top_right{left:unset;top:15px;right:15px;bottom:unset;flex-direction:row}.boc-controls-right_top{flex-direction:column}.boc-controls-bottom_left,.boc-controls-left_bottom{left:15px;top:unset;right:unset;bottom:15px;flex-direction:row}.boc-controls-left_bottom{flex-direction:column}.boc-controls-left_top,.boc-controls-top_left{left:15px;top:15px;right:unset;bottom:unset;flex-direction:row}.boc-controls-left_top{flex-direction:column}.boc-controls [data-control-id] svg{display:block;margin:0 auto}.boc-controls [data-control-id]{display:flex;align-items:center;cursor:pointer;width:60px;height:60px;border-radius:30px;box-shadow:0 4px 30px rgba(0,0,0,.1);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.boc-light .boc-controls [data-control-id]{background:rgba(255,255,255,.2);border:1px solid #c7c7c7}.boc-dark .boc-controls [data-control-id]{background:rgba(30,30,30,.2);border:1px solid #5b5b5b}.boc-controls [data-control-id]:hover{background-color:#0074e8}.boc-controls [data-control-id]:hover svg{filter:brightness(0) invert(1)}.boc-controls [data-control-id].boc-control-selected{background-color:#0074e8}.boc-controls [data-control-id].boc-control-selected svg{filter:brightness(0) invert(1)}.boc-filter{user-select:none}.boc-light .boc-filter{color:#757575}.boc-dark .boc-filter{color:#ccc}.boc-filter>div>div{display:inline-block;padding:3px 10px;cursor:pointer}.boc-filter-menu fieldset,.boc-filter>div,.filter-field-selected{border-radius:5px}.boc-filter-menu fieldset{overflow-y:auto;max-height:300px}.boc-filter>div.boc-filter-menu{padding:10px}.boc-light .boc-filter>div.boc-filter-menu,.boc-light .filter-field-selected{background-color:#f8f9f9}.boc-dark .boc-filter>div.boc-filter-menu,.boc-dark .filter-field-selected{background-color:#3c3c3c}.boc-light .boc-filter>div{background-color:#eee}.boc-dark .boc-filter>div{background-color:#333}.boc-form-perspective{transform-style:preserve-3d;perspective:500px;position:absolute;top:32px}.boc-form{box-shadow:rgba(0,0,0,.2) 0 6px 6px 0,rgba(0,0,0,.19) 0 13px 20px 0;padding:14px;transform-origin:top center;user-select:none;display:none;position:relative;max-height:calc(100vh - 100px);overflow-y:auto;border-bottom-left-radius:5px;border-bottom-right-radius:5px}.boc-form-bottom{border-bottom-left-radius:unset;border-bottom-right-radius:unset;border-top-left-radius:5px;border-top-right-radius:5px}.boc-form .separator{margin:0 10px}@media screen and (max-width:1000px){.boc-form-perspective{min-width:100%;max-height:calc(100% - 32px);left:unset!important;right:unset!important;transform:none!important}.boc-form .set{max-height:calc(100vh - 74px)}.boc-form-fieldset{max-width:unset!important}}.boc-light .boc-form .separator{border-bottom:1px solid #c7c7c7}.boc-dark .boc-form .separator{border-bottom:1px solid #5b5b5b}.boc-light .boc-form{background-color:#fff}.boc-dark .boc-form{background-color:#252526}.boc-item{padding:6px 12px 6px 12px;display:flex;flex-direction:row}.boc-light .boc-form .boc-item.selected,.boc-light .boc-form .boc-item:hover{background-color:#0074e8;color:#fff}.boc-dark .boc-form .boc-item.selected,.boc-dark .boc-form .boc-item:hover{background-color:#094771;color:#fff}.boc-item.selected img,.boc-item:hover img{filter:invert(100%)}.boc-item.selected img{visibility:visible!important}.boc-form-fieldset{display:flex;flex-wrap:wrap;margin:0!important}.boc-form-field{flex:1 0 21%;margin:3px;min-width:200px}.boc-form-field-100{flex:1 0 96%;margin:3px;min-width:200px}.boc-input{position:relative}.boc-input>input,.boc-input>select{height:50px;padding:18px 10px 2px 9px;width:100%;box-sizing:border-box;border-style:solid;border-width:1px}.boc-input select{height:50px;padding:20px 5px 4px 5px}[data-boc-input-disabled].boc-input>input,[data-boc-input-disabled].boc-input>select{border-color:transparent!important}.boc-light [data-boc-input-disabled]>input,.boc-light [data-boc-input-disabled]>select{background-color:#fff!important}.boc-dark [data-boc-input-disabled]>input,.boc-dark [data-boc-input-disabled]>select{background-color:#252526!important}[data-boc-input-disabled]>select{appearance:none;padding-left:8px}.boc-input>label{display:inline-block;position:absolute;padding-left:10px;padding-right:10px;color:#acacac;cursor:text;-webkit-transition:all .1s ease-out;-moz-transition:all .1s ease-out;-ms-transition:all .1s ease-out;-o-transition:all .1s ease-out;transition:all .1 ease-out;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:initial;text-align:initial;white-space:nowrap}.boc-input>label{top:12px;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 14px)}.boc-input>label.focused,.boc-input>label.hasval{top:-1px}.boc-input>input,.boc-input>select{outline:0;border-radius:5px}.boc-dark .boc-input>label.focused,.boc-light .boc-input>label.focused{color:#039be5}.boc-dark .boc-input>input,.boc-dark .boc-input>select{color:#ccc;background-color:#333;border-color:#5b5b5b}.boc-light .boc-input>input,.boc-light .boc-input>select{color:#757575;background-color:#fff;border-color:#c7c7c7}.boc-light .boc-input>input:focus,.boc-light .boc-input>select:focus{border-color:#039be5;background-color:#f8f9f9}.boc-dark .boc-input>input:focus,.boc-dark .boc-input>select:focus{border-color:#039be5;background-color:#3c3c3c}.boc-dark .boc-input>input.boc-validation-error,.boc-dark .boc-input>select.boc-validation-error,.boc-light .boc-input>input.boc-validation-error,.boc-light .boc-input>select.boc-validation-error{border-color:#ca2a2a}.boc-dark .boc-validation-error-message,.boc-light .boc-validation-error-message{color:#ca2a2a}.boc-input select.multiple{height:initial}.boc-link{color:#039be5;cursor:pointer;text-decoration:underline}.boc-link:hover{color:#f57c00}.boc-dark ::-webkit-scrollbar,.boc-light ::-webkit-scrollbar{width:15px;height:15px}.boc-dark ::-webkit-scrollbar-corner{background:#1e1e1e}.boc-dark ::-webkit-scrollbar-track{background:#1e1e1e;border-left:1px solid #333;border-top:1px solid #333}.boc-dark ::-webkit-scrollbar-thumb{background:#424242}.boc-dark ::-webkit-scrollbar-thumb:hover{background:#4f4f4f}.boc-dark ::-webkit-scrollbar-thumb:active{background:#5e5e5e}.boc-light ::-webkit-scrollbar-corner{background:#fff}.boc-light ::-webkit-scrollbar-track{background:#fff;border-left:1px solid #ddd;border-top:1px solid #ddd}.boc-light ::-webkit-scrollbar-thumb{background:#c1c1c1}.boc-light ::-webkit-scrollbar-thumb:hover{background:#929292}.boc-light ::-webkit-scrollbar-thumb:active{background:#666}.boc-edit-form{position:fixed;top:0;right:0;height:100%;width:100%;box-shadow:rgba(0,0,0,.2) 0 6px 6px 0,rgba(0,0,0,.19) 0 13px 20px 0;display:flex;flex-direction:column;height:100%;width:400px}@media screen and (max-width:1000px){.boc-edit-form{width:100%}}.boc-dark .boc-edit-form{background-color:#252526}.boc-light .boc-edit-form{background-color:#fff}.boc-edit-form-header{height:200px;text-align:center;border-radius:10px}.export-service .boc-edit-form-header{border-radius:unset}.boc-edit-form-title{color:#fff;margin:0;padding:14px 17px 7px 17px}.boc-edit-form-avatar{border-radius:50%;width:150px;height:150px;position:absolute;top:75px;border:5px solid #fff;left:50%;transform:translateX(-50%);background-color:#cacaca;box-shadow:rgba(0,0,0,.2) 0 6px 6px 0,rgba(0,0,0,.19) 0 13px 20px 0}.boc-edit-form-close{position:absolute;right:14px;top:14px;width:34px;height:34px;cursor:pointer}.boc-edit-form-fields{flex-grow:1;overflow-y:auto;overflow-x:hidden}.boc-edit-form-fields-inner{margin:0 7px 20px 7px}.boc-ai-user-message{text-align:end;margin:14px 0}.boc-inner-user-message{padding:7px;border-radius:7px;display:inline-block}.dark .boc-inner-user-message{background-color:#333}.light .boc-inner-user-message{background-color:#f9f9f9}.boc-export-form{box-shadow:rgba(0,0,0,.2) 0 -6px 6px 0,rgba(0,0,0,.19) 0 -13px 20px 0;display:flex;flex-direction:column;height:100%;width:400px}.boc-dark .boc-export-form{color:#aeaeae;background-color:#252526}.boc-light .boc-export-form{color:#757575;background-color:#eee}@media screen and (max-width:500px){.boc-export-form{width:100%}}.boc-export-container{display:grid;grid-template-rows:40px auto;gap:10px;height:100%}.boc-export-page{width:100%;border:1px solid #aeaeae;display:flex;justify-content:center;align-items:center;user-select:none;position:relative}.boc-export-selected{border:1px solid #ffca28}.boc-export-middle{overflow-y:auto;overflow-x:hidden;padding:0 3px 0 0;margin-bottom:10px}.boc-export-btns-inner{padding-top:14px;display:flex;justify-content:space-between}.boc-export-left{justify-content:flex-start}.boc-export-right{justify-content:flex-end}.boc-export-left,.boc-export-right{user-select:none}.boc-export-select{position:absolute;top:0;left:0;text-align:center;width:100%}.boc-export-child-buttons{position:absolute;bottom:7px;left:7px;display:none}.boc-export-page:hover .boc-export-child-buttons{display:initial}.boc-export-parent-buttons{position:absolute;top:7px;left:7px;display:none}.boc-export-page:hover .boc-export-parent-buttons{display:initial}.boc-export-remove-buttons{position:absolute;bottom:7px;right:7px;display:none}.boc-export-page:hover .boc-export-remove-buttons{display:initial}.boc-export-child-buttons button,.boc-export-parent-buttons button{width:23px}.boc-export-profiletree-buttons{position:absolute;top:7px;right:7px;display:none}.boc-export-page:hover .boc-export-profiletree-buttons{display:initial}.boc-export-middle-inner{display:grid;gap:10px;margin:0 10px}.boc-export-btns-inner{margin:0 10px}.boc-menu{position:absolute;min-width:240px;border-radius:12px;padding:8px;opacity:0;visibility:hidden;transform:scale(.95);transition:opacity .15s ease,transform .15s ease,visibility .15s;z-index:1000;user-select:none;font:13px/28px Helvetica,"Segoe UI",Arial,sans-serif}.boc-menu-options{width:100%;table-layout:auto;border-collapse:collapse}.boc-menu-item{cursor:pointer}.boc-menu-icon,.boc-menu-shortcut{width:1%;white-space:nowrap;padding:12px}.boc-menu-icon{border-top-left-radius:7px;border-bottom-left-radius:7px;vertical-align:middle;font-size:20px}.boc-menu-icon>img,.boc-menu-icon>svg{display:block}.boc-menu-shortcut{text-align:right;border-top-right-radius:7px;border-bottom-right-radius:7px}.boc-menu-text{width:auto;padding:12px 0}.boc-menu-submenu{width:0%}.boc-menu.active{opacity:1;visibility:visible;transform:scale(1)}.boc-menu-line{height:1px}.boc-menu-divider>td{height:12px}.boc-menu-item.boc-has-submenu{position:relative}.boc-submenu-arrow{font-size:10px;opacity:.6}.boc-submenu{position:absolute;top:-9px;min-width:180px;border-radius:12px;padding:8px;opacity:0;visibility:hidden;transform:translateX(-10px);transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:1001}.boc-submenu.boc-submenu-left{right:100%;left:auto;margin-right:4px;transform:translateX(10px)}.boc-submenu:not(.boc-submenu-left){left:100%;right:auto;margin-left:4px}.boc-submenu.boc-submenu-top{bottom:0;top:auto}.boc-submenu:not(.boc-submenu-top){bottom:auto;top:0}.boc-menu-item.boc-has-submenu:hover>.boc-menu-submenu>.boc-submenu{opacity:1;visibility:visible;transform:translateX(0)}.boc-light .boc-submenu{background:#fff;box-shadow:0 10px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.05);border:1px solid #e0e0e0}.boc-light .boc-menu-divider .boc-menu-line{background-color:#e0e0e0}.boc-light .boc-menu-shortcut{color:#666}.boc-light .boc-menu-item{color:#333}.boc-light .boc-menu-item:hover>td{background-color:#f5f5f5}.boc-light .boc-menu-item:hover>.boc-menu-text{color:#000}.boc-light .boc-menu{border:1px solid #e0e0e0;background:#fff;box-shadow:0 10px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.05)}.boc-dark .boc-submenu{background:#1e1e1e;box-shadow:0 10px 25px -5px rgba(0,0,0,.55),0 8px 10px -6px rgba(0,0,0,.45);border:1px solid #3a3a3a}.boc-dark .boc-menu-divider .boc-menu-line{background-color:#3a3a3a}.boc-dark .boc-menu-shortcut{color:#8b949e}.boc-dark .boc-menu-item{color:#c9d1d9}.boc-dark .boc-menu-item:hover>td{background-color:#2d2d2d}.boc-dark .boc-menu-item:hover>.boc-menu-text{color:#fff}.boc-dark .boc-menu{border:1px solid #3a3a3a;background:#1e1e1e;box-shadow:0 10px 25px -5px rgba(0,0,0,.55),0 8px 10px -6px rgba(0,0,0,.45)}.boc-orgscribe-form{height:100%;width:100%;box-shadow:rgba(0,0,0,.2) 0 6px 6px 0,rgba(0,0,0,.19) 0 13px 20px 0;display:flex;flex-direction:column;height:100%;width:400px}@media screen and (max-width:500px){.boc-orgscribe-form{width:100%}}.boc-dark .boc-orgscribe-form{background-color:#252526}.boc-light .boc-orgscribe-form{background-color:#fff}.boc-orgscribe-container{padding:0 14px;display:grid;grid-template-rows:40px auto 10px;gap:10px;height:100%}.boc-orgscribe-container .boc-input input{padding-right:50px}.boc-orgscribe-close{text-align:end;margin-top:20px}.boc-orgscribe-close svg{cursor:pointer}.boc-orgscribe-txt{width:100%;height:100%;box-sizing:border-box;border-style:solid;border-width:1px;outline:0;border-radius:5px;font-size:24px}.boc-dark .boc-orgscribe-txt{color:#ccc;background-color:#333;border-color:#5b5b5b}.boc-light .boc-orgscribe-txt{color:#757575;background-color:#fff;border-color:#c7c7c7}.boc-search{position:absolute}@media screen and (max-width:500px){.boc-search{width:calc(100% - 30px);left:15px}}.boc-search .boc-input{margin-bottom:0}.boc-search-input{color:#7a7a7a;width:100%;border:none;outline:0;padding-top:10px;padding-right:47px}.boc-search-image-td{width:43px}.boc-search-text-td{padding-inline-end:7px;line-height:15px;text-align:start}.boc-search table{box-shadow:rgba(0,0,0,.2) 0 4px 8px 0,rgba(0,0,0,.19) 0 6px 20px 0;margin:0 3.5px 0 3.5px;width:calc(100% - 7px);border-radius:7px}.boc-search table tr:first-child td:first-child{border-top-left-radius:7px}.boc-search table tr:first-child td:last-child{border-top-right-radius:7px}[dir=rtl] .boc-search table tr:first-child td:first-child{border-top-left-radius:unset;border-top-right-radius:7px}[dir=rtl] .boc-search table tr:first-child td:last-child{border-top-right-radius:unset;border-top-left-radius:7px}.boc-search table tr:last-child td:first-child{border-bottom-left-radius:7px}.boc-search table tr:last-child td:last-child{border-bottom-right-radius:7px}[dir=rtl] .boc-search table tr:last-child td:first-child{border-bottom-left-radius:unset;border-bottom-right-radius:7px}[dir=rtl] .boc-search table tr:last-child td:last-child{border-bottom-right-radius:unset;border-bottom-left-radius:7px}.boc-dark .boc-search table{background-color:#252526;color:#acacac}.boc-search [data-search-item-id]{cursor:pointer}.boc-search-photo{margin:7px 7px 0 7px;width:32px;height:32px;background-size:cover;background-position:top center;border-radius:50%;display:inline-block;border:1px solid #8c8c8c}.boc-search [data-search-item-id]:hover .boc-link{color:#ffca28}.boc-search [data-search-item-id]:hover .boc-link:hover{color:#f57c00}.boc-dark .boc-search [data-search-item-id] td{border-top:1px solid #333}.boc-dark .boc-search [data-search-item-id]:hover,.boc-dark .boc-search [data-selected=yes]{background-color:#094771;color:#fff}.boc-light .boc-search table{background-color:#fff;color:#333}.boc-light .boc-search [data-search-item-id] td{border-top:1px solid #c7c7c7}.boc-light .boc-search [data-search-item-id]:hover,.boc-light .boc-search [data-selected=yes]{background-color:#0074e8;color:#fff}.boc-search [data-search-item-id]:first-child td{border-top:unset}.boc-ripple-container{position:absolute;top:0;right:0;bottom:0;left:0}.boc-drag-over rect{opacity:.5}.boc-ripple-container span{transform:scale(0);border-radius:100%;position:absolute;opacity:.75;background-color:#fff;animation:boc-ripple 1s}@-moz-keyframes boc-ripple{to{opacity:0;transform:scale(2)}}@-webkit-keyframes boc-ripple{to{opacity:0;transform:scale(2)}}@-o-keyframes boc-ripple{to{opacity:0;transform:scale(2)}}@keyframes boc-ripple{to{opacity:0;transform:scale(2)}}.boc-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s}.boc-slider:before{position:absolute;content:"";height:16px;width:16px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.4s;transition:.4s}.boc-slider.round{border-radius:24px}.boc-slider.round:before{border-radius:50%}svg text:hover{cursor:default}svg.boc-cursor-grab,svg.boc-cursor-grab text:hover{cursor:grab}svg.boc-cursor-nodrop,svg.boc-cursor-nodrop text:hover{cursor:no-drop}svg.boc-cursor-copy,svg.boc-cursor-copy text:hover{cursor:copy}svg.boc-cursor-move,svg.boc-cursor-move text:hover{cursor:move}#boc-close-btn:focus,#boc-close-btn:hover{color:#000;text-decoration:none;cursor:pointer}#boc-id-select:focus{outline:.5px solid #aeaeae}#boc-sampleDialog #title:hover{cursor:default;background:gray}.boc-light{background-color:#fff;font:13px/28px Helvetica,"Segoe UI",Arial,sans-serif}.boc-dark{background-color:#1e1e1e;font:13px/28px Helvetica,"Segoe UI",Arial,sans-serif}.boc-selected .boc-selectable{stroke:#ffca28;stroke-width:3px}.boc-dark input,.boc-dark select,.boc-light input,.boc-light select{font:16px Helvetica,"Segoe UI",Arial,sans-serif}.boc-dark h1,.boc-light h1{font-size:30px;line-height:1}.boc-light [data-boc-content]::backdrop{background-color:#fff}.boc-dark [data-boc-content]::backdrop{background-color:#1e1e1e}.boc-dark text,.boc-light text{user-select:none}.boc-edit-form{position:absolute;border-radius:10px}.export-service .boc-edit-form{border-radius:unset}.boc-dark .boc-edit-form{color:#acacac}.boc-light .boc-edit-form{color:#333}.boc-dark ::-webkit-calendar-picker-indicator{filter:invert(70%)}.boc-light ::-webkit-calendar-picker-indicator{filter:invert(50%)}.boc-edit-form-instruments{margin:42px 10px 0 10px;text-align:center;min-height:70px}.boc-img-button svg{position:relative;top:12px}.boc-light .boc-toolbar-container svg circle,.boc-light .boc-toolbar-container svg line,.boc-light .boc-toolbar-container svg path{stroke:#8c8c8c!important}.boc-dark .boc-toolbar-container svg circle,.boc-dark .boc-toolbar-container svg line,.boc-dark .boc-toolbar-container svg path{stroke:#8c8c8c!important}.boc-dark .boc-toolbar-container svg rect{fill:#252526!important}.boc-dark .boc-toolbar-container [data-tlbr=minus] svg{border-left:1px solid #5b5b5b!important;border-right:1px solid #5b5b5b!important;border-bottom:1px solid #5b5b5b!important}.boc-dark .boc-toolbar-container [data-tlbr=plus] svg{border-left:1px solid #5b5b5b!important;border-right:1px solid #5b5b5b!important;border-top:1px solid #5b5b5b!important}.boc-dark .boc-toolbar-container [data-tlbr]>svg{border:1px solid #5b5b5b!important;background-color:#252526!important}.boc-toolbar-layout{height:123px;padding-top:20px;position:absolute;width:100%;left:"0";bottom:"-145px"}.boc-light .boc-toolbar-layout{border-top:1px solid #c7c7c7;background-color:#f9f9f9}.boc-dark .boc-toolbar-layout{border-top:1px solid #5b5b5b;background-color:#2b2b2b}.boc-dotted-connector path{stroke-dasharray:7}.boc-undo-redo{position:absolute;top:23px;left:23px}@media screen and (max-width:500px){.boc-undo-redo{position:absolute;top:83px;left:23px}}.boc-light .boc-undo-redo path{fill:#cacaca}.boc-dark .boc-undo-redo path{fill:#5b5b5b}.boc-light .boc-undo-redo .boc-ur-clickable path{fill:#9c9c9c}.boc-dark .boc-undo-redo .boc-ur-clickable path{fill:#8c8c8c}.boc-undo-redo .boc-ur-clickable rect{cursor:pointer}.boc-undo-redo>span{position:relative;display:inline-block;user-select:none}.boc-undo-redo .boc-undo-i{left:-6px;top:-6px}.boc-undo-redo .boc-redo-i{right:-6px;bottom:6px}.boc-undo-redo>span>span{color:#fff;position:absolute;display:inline-block;min-width:20px;min-height:20px;border-radius:50%;line-height:20px;text-align:center;padding:1px;user-select:none;cursor:pointer}.boc-light .boc-undo-redo>span>span{background-color:#9c9c9c}.boc-dark .boc-undo-redo>span>span{background-color:#8c8c8c}.boc-dark .treelist-pinned{filter:brightness(1.2)}.boc-light .treelist-pinned{filter:brightness(.9)}.boc-light .boc-scroll{fill:#fff}.boc-light .boc-scroll-thumb{fill:#c1c1c1}.boc-light .boc-scroll-thumb:hover{fill:#929292}.boc-dark .boc-scroll{fill:#1e1e1e}.boc-dark .boc-scroll-thumb{fill:#424242}.boc-dark .boc-scroll-thumb:hover{fill:#4f4f4f}</style>`},_===void 0&&(_={}),_.prototype.onField=function(e){return this.on(`field`,function(t,n){return e.call(t,n)})},_.prototype.onInit=function(e){return this.on(`init`,function(t){return e.call(t)})},_.prototype.onRedraw=function(e){return this.on(`redraw`,function(t){return e.call(t)})},_.prototype.onUpdateNode=function(e){return this.on(`update`,function(t,n,r){var i={oldData:n,newData:r};return e.call(t,i)})},_.prototype.onUpdated=function(e){return this.on(`updated`,function(t){return e.call(t)})},_.prototype.onRemoveNode=function(e){return this.on(`remove`,function(t,n,r){var i={id:n,newPidsAndStpidsForIds:r};return e.call(t,i)})},_.prototype.onAddNode=function(e){return this.on(`add`,function(t,n){var r={data:n};return e.call(t,r)})},_.prototype.onDrop=function(e){return this.on(`drop`,function(t,n,r,i,a){var o={dragId:n,dropId:r,dragNodeElement:i,event:a};return e.call(t,o)})},_.prototype.onDrag=function(e){return this.on(`drag`,function(t,n,r,i){var a={dragId:n,event:r,nodeIds:i};return e.call(t,a)})},_.prototype.onExpandCollapseButtonClick=_.prototype.onExpandCollpaseButtonClick=function(e){return this.on(`expcollclick`,function(t,n,r,i){var a={collapsing:n,id:r,ids:i};return e.call(t,a)})},_.prototype.onExportStart=function(e){return this.on(`exportstart`,function(t,n){return e.call(t,n)})},_.prototype.onExportEnd=function(e){return this.on(`exportend`,function(t,n){return e.call(t,n)})},_.prototype.onNodeClick=function(e){return this.on(`click`,function(t,n){return e.call(t,n)})},_.prototype.onNodeMouseover=function(e){return this.on(`node-mouseover`,function(t,n){return e.call(t,n)})},_.prototype.onNodeMouseleave=function(e){return this.on(`node-mouseleave`,function(t,n){return e.call(t,n)})},_.prototype.onCanvasClick=function(e){return this.on(`canvas-click`,function(t,n){return e.call(t,n)})},_.prototype.onNodeDoubleClick=function(e){return this.on(`dbclick`,function(t,n){var r={data:n};return e.call(t,r)})},_.prototype.onAIToolCalls=function(e){return this.on(`ai-tool-calls`,function(t,n){return e.call(t,n)})},_.filterUI=function(){},_.filterUI.prototype.init=function(e){this.instance=e,this.element=null,this.filterBy=null,this._event_id=_._guid()},_.filterUI.prototype.addFilterTag=function(e){if(!this.instance.config.filterBy||_.isNEU(e))return!1;if(this.filterBy===null&&typeof this.instance.config.filterBy==`object`&&!Array.isArray(this.instance.config.filterBy)&&(this.filterBy=JSON.parse(JSON.stringify(this.instance.config.filterBy))),this.filterBy!=null)for(var t in this.filterBy){var n=e[t];if(n!=null){var r=this.filterBy[t];if(r!=null){var i=r[n];if(i!=null&&i.checked===!1)return!0}}}return!1},_.filterUI.prototype.show=function(e){var t=this.element.querySelector(`[data-filter-field="`+e+`"]`);t&&t.click()},_.filterUI.prototype.hide=function(){var e=this.instance.element.querySelector(`[data-filter-close]`);e&&e.click()},_.filterUI.prototype._removeFilter=function(e){var t=this.instance.get(e);for(var n in this.filterBy){var r=this.filterBy[n];for(var i in t){var a=t[i];r[a]&&(r[a].checked=!0)}}this.update()},_.filterUI.prototype.update=function(){if(this.instance.config.filterBy){var e={};if(this.instance.config.filterBy==`all`)for(var t=_.manager.getAllFields(this.instance.config),n=0;n<t.length;n++){var r=t[n];r!=`tags`&&r!=`id`&&r!=`pid`&&r!=`ppid`&&r!=`stpid`&&(e[r]={})}else if(Array.isArray(this.instance.config.filterBy))for(var n=0;n<this.instance.config.filterBy.length;n++)e[this.instance.config.filterBy[n]]={};else if(typeof this.instance.config.filterBy==`object`)for(var i in this.instance.config.filterBy)e[i]={};for(var a in e)for(var o=e[a],n=0;n<this.instance.config.nodes.length;n++){var s=this.instance.config.nodes[n][a];s!=null&&(o[s]||(o[s]={checked:!0,text:s}))}if(this.filterBy!=null){for(var c in e)if(this.filterBy[c])for(var l in e[c])this.filterBy[c][l]&&(e[c][l]=this.filterBy[c][l])}if(_.FILTER_ALPHABETICALLY){var u=Object.keys(e).sort(),d=e;e={};for(var n=0;n<u.length;n++){var f=u[n];e[f]=d[f]}for(var a in e){var o=e[a];e[a]={};for(var u=Object.keys(o).sort(),n=0;n<u.length;n++){var f=u[n];e[a][f]=o[f]}}}this.filterBy=e;var p=this;this.element=this.instance.element.querySelector(`[data-filter]`),this.element&&this.element.parentNode.removeChild(this.element),this.element=document.createElement(`div`),this.element.setAttribute(`data-filter`,``),this.element.style.position=`absolute`,this.element.setAttribute(`class`,`boc-filter`),this.instance.config.undoRedoStorageName?(this.element.style.top=0,this.element.style.left=`50%`,this.element.style.transform=`translate(-50%)`):(this.element.style.top=this.instance.config.padding+`px`,this.element.style.left=this.instance.config.padding+`px`);var m=``;for(var c in this.filterBy){var h={name:c,html:`<div data-filter-field="${c}">${c}</div>`};_.events.publish(`add-filter`,[p,h]),m+=h.html}this.element.innerHTML=`<div>${m}</div>`,this.element.addEventListener(`click`,function(e){if(e.target.hasAttribute(`data-filter-close`)||e.target.hasAttribute(`data-filter-field`)){for(var t=e.target.getAttribute(`data-filter-field`),n=p.instance.element.querySelectorAll(`[data-filter-menu]`),r=0;r<n.length;r++)n[r].style.display=`none`;for(var i=p.instance.element.querySelectorAll(`.filter-field-selected`),r=0;r<i.length;r++)i[r].classList.remove(`filter-field-selected`);var a=p.instance.element.querySelector(`[data-filter-close]`);if(a&&a.parentNode.removeChild(a),e.target.hasAttribute(`data-filter-close`)||!e.target.hasAttribute(`data-filter-field`))return;var o=p.instance.element.querySelector(`[data-filter-menu="${t}"]`);if(!o){var s=`checked`;for(var c in p.filterBy[t])p.filterBy[t][c].checked||(s=``);var l={name:t,text:_.filterUI.all,value:t,checked:!0,html:`<div>
635
635
  <input data-all type="checkbox" id="${t}" name="${t}" ${s}>
636
636
  <label for="${t}">${_.filterUI.all}</label>
637
637
  </div>`};_.events.publish(`add-item`,[p,l]);var u=l.html;for(var d in p.filterBy[t]){var f=p.filterBy[t][d],m=f.text;m??=d,l={name:t,text:m,value:d,checked:f.checked,html:`<div>