!function(e){"function"==typeofdefine&&define.amd?define(["jquery","./jquery.fancytree.ui-deps"],e):"object"==typeofmodule&&module.exports?(require("./jquery.fancytree.ui-deps"),module.exports=e(require("jquery"))):e(jQuery)}(function(e){"use strict";functiont(t,n){t||(n=n?": "+n:"",e.error("Fancytree assertion failed"+n))}functionn(e,t){varn,i,r=window.console?window.console[e]:null;if(r)try{r.apply(window.console,t)}catch(e){for(i="",n=0;n<t.length;n++)i+=t[n];r(i)}}functioni(e,t,n,i,r){returnfunction(){varn=t[e],o=i[e],s=t.ext[r],a=function(){returnn.apply(t,arguments)},l=function(e){returnn.apply(t,e)};returnfunction(){vare=t._local,n=t._super,i=t._superApply;try{returnt._local=s,t._super=a,t._superApply=l,o.apply(t,arguments)}finally{t._local=e,t._super=n,t._superApply=i}}}()}functionr(t,n,r,o){for(varsinr)"function"==typeofr[s]?"function"==typeoft[s]?t[s]=i(s,t,0,r,o):"_"===s.charAt(0)?t.ext[o][s]=i(s,t,0,r,o):e.error("Could not override tree."+s+". Use prefix '_' to create tree."+o+"._"+s):"options"!==s&&(t.ext[o][s]=r[s])}functiono(t,n){returnvoid0===t?e.Deferred(function(){this.resolve()}).promise():e.Deferred(function(){this.resolveWith(t,n)}).promise()}functions(t,n){returnvoid0===t?e.Deferred(function(){this.reject()}).promise():e.Deferred(function(){this.rejectWith(t,n)}).promise()}functiona(e,t){returnfunction(){e.resolveWith(t)}}functionl(t){varn=e.extend({},t.data()),i=n.json;returndeleten.fancytree,deleten.uiFancytree,i&&(deleten.json,n=e.extend(n,i)),n}functiond(e){return(""+e).replace(b,function(e){returnx[e]})}functionc(e){returne=e.toLowerCase(),function(t){returnt.title.toLowerCase().indexOf(e)>=0}}functionu(n,i){varr,o,s,a;for(this.parent=n,this.tree=n.tree,this.ul=null,this.li=null,this.statusNodeType=null,this._isLoading=!1,this._error=null,this.data={},r=0,o=E.length;r<o;r++)this[s=E[r]]=i[s];null==this.unselectableIgnore&&null==this.unselectableStatus||(this.unselectable=!0),i.hideCheckbox&&e.error("'hideCheckbox' node option was removed in v2.23.0: use 'checkbox: false'"),i.data&&e.extend(this.data,i.data);for(sini)T[s]||e.isFunction(i[s])||A[s]||(this.data[s]=i[s]);null==this.key?this.tree.options.defaultKey?(this.key=this.tree.options.defaultKey(this),t(this.key,"defaultKey() must return a unique key")):this.key="_"+g._nextNodeKey++:this.key=""+this.key,i.active&&(t(null===this.tree.activeNode,"only one active node allowed"),this.tree.activeNode=this),i.selected&&(this.tree.lastSelectedNode=this),(a=i.children)?a.length?this._setChildren(a):this.children=this.lazy?[]:null:this.children=null,this.tree._callHook("treeRegisterNode",this.tree,!0,this)}functionh(t){this.widget=t,this.$div=t.element,this.options=t.options,this.options&&(e.isFunction(this.options.lazyload)&&!e.isFunction(this.options.lazyLoad)&&(this.options.lazyLoad=function(){returng.warn("The 'lazyload' event is deprecated since 2014-02-25. Use 'lazyLoad' (with uppercase L) instead."),t.options.lazyload.apply(this,arguments)}),e.isFunction(this.options.loaderror)&&e.error("The 'loaderror' event was renamed since 2014-07-03. Use 'loadError' (with uppercase E) instead."),void0!==this.options.fx&&g.warn("The 'fx' option was replaced by 'toggleEffect' since 2014-11-30."),void0!==this.options.removeNode&&e.error("The 'removeNode' event was replaced by 'modifyChild' since 2.20 (2016-09-10).")),this.ext={},this.types={},this.columns={},this.data=l(this.$div),this._id=e.ui.fancytree._nextId++,this._ns=".fancytree-"+this._id,this.activeNode=null,this.focusNode=null,this._hasFocus=null,this._tempCache={},this._lastMousedownNode=null,this._enableUpdate=!0,this.lastSelectedNode=null,this.systemFocusElement=null,this.lastQuicksearchTerm="",this.lastQuicksearchTime=0,this.statusClassPropName="span",this.ariaPropName="li",this.nodeContainerAttrName="li",this.$div.find(">ul.fancytree-container").remove();varn,i={tree:this};this.rootNode=newu(i,{title:"root",key:"root_"+this._id,children:null,expanded:!0}),this.rootNode.parent=null,n=e("<ul>",{class:"ui-fancytreefancytree-containerfancytree-plai
/*! Extension 'jquery.fancytree.dnd.min.js' */!function(e){"function"==typeofdefine&&define.amd?define(["jquery","jquery-ui/ui/widgets/draggable","jquery-ui/ui/widgets/droppable","./jquery.fancytree"],e):"object"==typeofmodule&&module.exports?(require("./jquery.fancytree"),module.exports=e(require("jquery"))):e(jQuery)}(function(e){"use strict";functionr(e){return0===e?"":e>0?"+"+e:""+e}functiont(r){vart=r.options.dnd||null,n=r.options.glyph||null;t&&(a||(e.ui.plugin.add("draggable","connectToFancytree",{start:function(r,t){vara=e(this).data("ui-draggable")||e(this).data("draggable"),n=t.helper.data("ftSourceNode")||null;if(n)returna.offset.click.top=-2,a.offset.click.left=16,n.tree.ext.dnd._onDragEvent("start",n,null,r,t,a)},drag:function(r,t){vara,n=e(this).data("ui-draggable")||e(this).data("draggable"),o=t.helper.data("ftSourceNode")||null,d=t.helper.data("ftTargetNode")||null,l=e.ui.fancytree.getNode(r.target),s=o&&o.tree.options.dnd;r.target&&!l&&e(r.target).closest("div.fancytree-drag-helper,#fancytree-drop-marker").length>0?(o||d||e.ui.fancytree).debug("Drag event over helper: ignored."):(t.helper.data("ftTargetNode",l),s&&s.updateHelper&&(a=o.tree._makeHookContext(o,r,{otherNode:l,ui:t,draggable:n,dropMarker:e("#fancytree-drop-marker")}),s.updateHelper.call(o.tree,o,a)),d&&d!==l&&d.tree.ext.dnd._onDragEvent("leave",d,o,r,t,n),l&&l.tree.options.dnd.dragDrop&&(l===d?l.tree.ext.dnd._onDragEvent("over",l,o,r,t,n):(l.tree.ext.dnd._onDragEvent("enter",l,o,r,t,n),l.tree.ext.dnd._onDragEvent("over",l,o,r,t,n))))},stop:function(r,t){vara=e(this).data("ui-draggable")||e(this).data("draggable"),n=t.helper.data("ftSourceNode")||null,o=t.helper.data("ftTargetNode")||null,d="mouseup"===r.type&&1===r.which;d||(n||o||e.ui.fancytree).debug("Drag was cancelled"),o&&(d&&o.tree.ext.dnd._onDragEvent("drop",o,n,r,t,a),o.tree.ext.dnd._onDragEvent("leave",o,n,r,t,a)),n&&n.tree.ext.dnd._onDragEvent("stop",n,null,r,t,a)}}),a=!0)),t&&t.dragStart&&r.widget.element.draggable(e.extend({addClasses:!1,appendTo:r.$container,containment:!1,delay:0,distance:4,revert:!1,scroll:!0,scrollSpeed:7,scrollSensitivity:10,connectToFancytree:!0,helper:function(r){vart,a,o,d=e.ui.fancytree.getNode(r.target);returnd?(o=d.tree.options.dnd,a=e(d.span),(t=e("<div class='fancytree-drag-helper'><span class='fancytree-drag-helper-img' /></div>").css({zIndex:3,position:"relative"}).append(a.find("span.fancytree-title").clone())).data("ftSourceNode",d),n&&t.find(".fancytree-drag-helper-img").addClass(n.map._addClass+" "+n.map.dragHelper),o.initHelper&&o.initHelper.call(d.tree,d,{node:d,tree:d.tree,originalEvent:r,ui:{helper:t}}),t):"<div>ERROR?: helper requested but sourceNode not found</div>"},start:function(e,r){return!!r.helper.data("ftSourceNode")}},r.options.dnd.draggable)),t&&t.dragDrop&&r.widget.element.droppable(e.extend({addClasses:!1,tolerance:"intersect",greedy:!1},r.options.dnd.droppable))}vara=!1,n="fancytree-drop-accept",o="fancytree-drop-after",d="fancytree-drop-before",l="fancytree-drop-reject";returne.ui.fancytree.registerExtension({name:"dnd",version:"2.28.1",options:{autoExpandMS:1e3,draggable:null,droppable:null,focusOnClick:!1,preventVoidMoves:!0,preventRecursiveMoves:!0,smartRevert:!0,dropMarkerOffsetX:-24,dropMarkerInsertOffsetX:-16,dragStart:null,dragStop:null,initHelper:null,updateHelper:null,dragEnter:null,dragOver:null,dragExpand:null,dragDrop:null,dragLeave:null},treeInit:function(r){vara=r.tree;this._superApply(arguments),a.options.dnd.dragStart&&a.$container.on("mousedown",function(t){if(r.options.dnd.focusOnClick){vara=e.ui.fancytree.getNode(t);a&&a.debug("Re-enable focus that was prevented by jQuery UI draggable."),setTimeout(function(){e(t.target).closest(":tabbable").focus()},10)}}),t(a)},_setDndStatus:function(t,a,s,i,p){varg,u,c="center",f=this._local,v=this.options.dnd,h=this.options.glyph,y=t?e(t.span):null,b=e(a.span),m=b.find("span.fancytree-title");if(f.$dropMarker||(f.$dropMarker=e("<div id='fancytree-drop-marker'></div>").hide().css({"z-index":1e3}).prependTo(e(this.$div).parent()),h&&f.$dropMarker.addClas
/*! Extension 'jquery.fancytree.dnd5.min.js' */!function(e){"function"==typeofdefine&&define.amd?define(["jquery","./jquery.fancytree"],e):"object"==typeofmodule&&module.exports?(require("./jquery.fancytree"),module.exports=e(require("jquery"))):e(jQuery)}(function(e){"use strict";functionr(){y=null,h=null,b=null,m=null}functiont(e){return0===e?"":e>0?"+"+e:""+e}functiona(r,a){if(a.options.dnd5.scroll&&function(r,t){vara,o,n=r.options.dnd5,d=r.$scrollParent[0],s=n.scrollSensitivity,l=n.scrollSpeed,i=0;d!==document&&"HTML"!==d.tagName?(a=r.$scrollParent.offset(),o=d.scrollTop,a.top+d.offsetHeight-t.pageY<s?d.scrollHeight-r.$scrollParent.innerHeight()-o>0&&(d.scrollTop=i=o+l):o>0&&t.pageY-a.top<s&&(d.scrollTop=i=o-l)):(o=e(document).scrollTop())>0&&t.pageY-o<s?(i=o-l,e(document).scrollTop(i)):e(window).height()-(t.pageY-o)<s&&(i=o+l,e(document).scrollTop(i)),i&&r.debug("autoScroll: "+i+"px")}(a.tree,r),!a.node)returna.tree.warn("Ignore dragover for non-node"),x;varn,d,s,u,y=null,h=a.tree,b=h.options,D=b.dnd5,E=a.node,S=a.otherNode,N="center",C=e(E.span),k=C.find("span.fancytree-title");if(!1===m)returnh.info("Ignore dragover, since dragenter returned false"),!1;if("string"==typeofm?e.error("assert failed: dragenter returned string"):(d=C.offset(),u=(r.pageY-d.top)/C.height(),m.after&&u>.75?y="after":!m.over&&m.after&&u>.5?y="after":m.before&&u<=.25?y="before":!m.over&&m.before&&u<=.5?y="before":m.over&&(y="over"),D.preventVoidMoves&&(E===S?(E.debug("Drop over source node prevented."),y=null):"before"===y&&S&&E===S.getNextSibling()?(E.debug("Drop after source node prevented."),y=null):"after"===y&&S&&E===S.getPrevSibling()?(E.debug("Drop before source node prevented."),y=null):"over"===y&&S&&S.parent===E&&S.isLastSibling()&&(E.debug("Drop last child over own parent prevented."),y=null))),a.hitMode=y,y&&D.dragOver&&(D.dragOver(E,a),y=a.hitMode),x=y,"after"===y||"before"===y||"over"===y){switch(n=D.dropMarkerOffsetX||0,y){case"before":N="top",n+=D.dropMarkerInsertOffsetX||0;break;case"after":N="bottom",n+=D.dropMarkerInsertOffsetX||0}s={my:"left"+t(n)+" center",at:"left "+N,of:k},b.rtl&&(s.my="right"+t(-n)+" center",s.at="right "+N),v.toggleClass(i,"after"===y).toggleClass(p,"over"===y).toggleClass(f,"before"===y).show().position(o.fixPositionOptions(s))}elsev.hide();returne(E.span).toggleClass(g,"after"===y||"before"===y||"over"===y).toggleClass(i,"after"===y).toggleClass(f,"before"===y).toggleClass(l,"over"===y).toggleClass(c,!1===y),y}varo=e.ui.fancytree,n=/Mac/.test(navigator.platform),d="fancytree-drag-source",s="fancytree-drag-remove",l="fancytree-drop-accept",i="fancytree-drop-after",f="fancytree-drop-before",p="fancytree-drop-over",c="fancytree-drop-reject",g="fancytree-drop-target",u="application/x-fancytree-node",v=null,y=null,h=null,b=null,m=null,x=null;returne.ui.fancytree.registerExtension({name:"dnd5",version:"2.28.1",options:{autoExpandMS:1500,dropMarkerInsertOffsetX:-16,dropMarkerOffsetX:-24,multiSource:!1,dragImage:null,dropEffect:null,dropEffectDefault:"move",preventForeignNodes:!1,preventNonNodes:!1,preventRecursiveMoves:!0,preventVoidMoves:!0,scroll:!0,scrollSensitivity:20,scrollSpeed:5,setTextTypeJson:!1,dragStart:null,dragDrag:e.noop,dragEnd:e.noop,dragEnter:null,dragOver:e.noop,dragExpand:e.noop,dragDrop:e.noop,dragLeave:e.noop},treeInit:function(t){vari,f,g,D=t.tree,E=t.options,S=E.glyph||null,N=E.dnd5,C=o.getNode;e.inArray("dnd",E.extensions)>=0&&e.error("Extensions 'dnd' and 'dnd5' are mutually exclusive."),N.dragStop&&e.error("dragStop is not used by ext-dnd5. Use dragEnd instead."),N.dragStart&&o.overrideMethod(t.options,"createNode",function(e,r){this._super.apply(this,arguments),r.node.span.draggable=!0}),this._superApply(arguments),this.$container.addClass("fancytree-ext-dnd5"),g=e("<span>").appendTo(this.$container),this.$scrollParent=g.scrollParent(),g.remove(),(v=e("#fancytree-drop-marker")).length||(v=e("<div id='fancytree-drop-marker'></div>").hide().css({"z-index":1e3,"pointer-events":"none"}).prependTo("body"),S&&o.setSpanIcon(v[0],S.map._addClass,S.map.dropMarker)),v.tog
/*! Extension 'jquery.fancytree.filter.min.js' */!function(e){"function"==typeofdefine&&define.amd?define(["jquery","./jquery.fancytree"],e):"object"==typeofmodule&&module.exports?(require("./jquery.fancytree"),module.exports=e(require("jquery"))):e(jQuery)}(function(e){"use strict";functiont(e){return(e+"").replace(/([.?*+\^\$\[\]\\(){}|-])/g,"\\$1")}vari="__not_found__",n=e.ui.fancytree.escapeHtml;returne.ui.fancytree._FancytreeClass.prototype._applyFilterImpl=function(a,r,s){varl,o,d,c,u,h=0,p=this.options,f=p.escapeTitles,y=p.autoCollapse,g=e.extend({},p.filter,s),m="hide"===g.mode,x=!!g.leavesOnly&&!r;if("string"==typeofa){if(""===a)returnthis.warn("Fancytree passing an empty string as a filter is handled as clearFilter()."),voidthis.clearFilter();l=g.fuzzy?a.split("").reduce(function(e,t){returne+"[^"+t+"]*"+t}):t(a),d=newRegExp(".*"+l+".*","i"),c=newRegExp(t(a),"gi"),a=function(t){if(!t.title)return!1;vari=f?t.title:function(t){returnt.indexOf(">")>=0?e("<div/>").html(t).text():t}(t.title),a=!!d.test(i);returna&&g.highlight&&(f?(u=i.replace(c,function(e){return"\ufff7"+e+"\ufff8"}),t.titleWithHighlight=n(u).replace(/\uFFF7/g,"<mark>").replace(/\uFFF8/g,"</mark>")):t.titleWithHighlight=i.replace(c,function(e){return"<mark>"+e+"</mark>"})),a}}returnthis.enableFilter=!0,this.lastFilterArgs=arguments,this.$div.addClass("fancytree-ext-filter"),m?this.$div.addClass("fancytree-ext-filter-hide"):this.$div.addClass("fancytree-ext-filter-dimm"),this.$div.toggleClass("fancytree-ext-filter-hide-expanders",!!g.hideExpanders),this.visit(function(e){deletee.match,deletee.titleWithHighlight,e.subMatchCount=0}),(o=this.getRootNode()._findDirectChild(i))&&o.remove(),p.autoCollapse=!1,this.visit(function(e){if(!x||null==e.children){vart=a(e),i=!1;if("skip"===t)returne.visit(function(e){e.match=!1},!0),"skip";t||!r&&"branch"!==t||!e.parent.match||(t=!0,i=!0),t&&(h++,e.match=!0,e.visitParents(function(e){e.subMatchCount+=1,!g.autoExpand||i||e.expanded||(e.setExpanded(!0,{noAnimation:!0,noEvents:!0,scrollIntoView:!1}),e._filterAutoExpanded=!0)}))}}),p.autoCollapse=y,0===h&&g.nodata&&m&&(o=g.nodata,e.isFunction(o)&&(o=o()),!0===o?o={}:"string"==typeofo&&(o={title:o}),o=e.extend({statusNodeType:"nodata",key:i,title:this.options.strings.noData},o),this.getRootNode().addNode(o).match=!0),this.render(),h},e.ui.fancytree._FancytreeClass.prototype.filterNodes=function(e,t){return"boolean"==typeoft&&(t={leavesOnly:t},this.warn("Fancytree.filterNodes() leavesOnly option is deprecated since 2.9.0 / 2015-04-19. Use opts.leavesOnly instead.")),this._applyFilterImpl(e,!1,t)},e.ui.fancytree._FancytreeClass.prototype.applyFilter=function(e){returnthis.warn("Fancytree.applyFilter() is deprecated since 2.1.0 / 2014-05-29. Use .filterNodes() instead."),this.filterNodes.apply(this,arguments)},e.ui.fancytree._FancytreeClass.prototype.filterBranches=function(e,t){returnthis._applyFilterImpl(e,!0,t)},e.ui.fancytree._FancytreeClass.prototype.clearFilter=function(){vart,n=this.getRootNode()._findDirectChild(i),a=this.options.escapeTitles,r=this.options.enhanceTitle;n&&n.remove(),this.visit(function(i){i.match&&i.span&&(t=e(i.span).find(">span.fancytree-title"),a?t.text(i.title):t.html(i.title),r&&r({type:"enhanceTitle"},{node:i,$title:t})),deletei.match,deletei.subMatchCount,deletei.titleWithHighlight,i.$subMatchBadge&&(i.$subMatchBadge.remove(),deletei.$subMatchBadge),i._filterAutoExpanded&&i.expanded&&i.setExpanded(!1,{noAnimation:!0,noEvents:!0,scrollIntoView:!1}),deletei._filterAutoExpanded}),this.enableFilter=!1,this.lastFilterArgs=null,this.$div.removeClass("fancytree-ext-filter fancytree-ext-filter-dimm fancytree-ext-filter-hide"),this.render()},e.ui.fancytree._FancytreeClass.prototype.isFilterActive=function(){return!!this.enableFilter},e.ui.fancytree._FancytreeNodeClass.prototype.isMatched=function(){return!(this.tree.enableFilter&&!this.match)},e.ui.fancytree.registerExtension({name:"filter",version:"2.28.1",options:{autoApply:!0,autoExpand:!1,counter:!0,fuzzy:!1,hideExpandedCounter:!0,hideExpanders:!1,highlight:!0,lea
/*! Extension 'jquery.fancytree.persist.min.js' */!function(e){"function"==typeofdefine&&define.amd?define(["jquery","./jquery.fancytree"],e):"object"==typeofmodule&&module.exports?(require("./jquery.fancytree"),module.exports=e(require("jquery"))):e(jQuery)}(function(e){"use strict";functiont(o,i,s,r,n){varc,d,l,u,f=!1,p=o.options.persist.expandOpts,y=[],v=[];for(s=s||[],n=n||e.Deferred(),c=0,l=s.length;c<l;c++)d=s[c],(u=o.getNodeByKey(d))?r&&u.isUndefined()?(f=!0,o.debug("_loadLazyNodes: "+u+" is lazy: loading..."),"expand"===r?y.push(u.setExpanded(!0,p)):y.push(u.load())):(o.debug("_loadLazyNodes: "+u+" already loaded."),u.setExpanded(!0,p)):(v.push(d),o.debug("_loadLazyNodes: "+u+" was not yet found."));returne.when.apply(e,y).always(function(){if(f&&v.length>0)t(o,i,v,r,n);else{if(v.length)for(o.warn("_loadLazyNodes: could not load those keys: ",v),c=0,l=v.length;c<l;c++)d=s[c],i._appendKey(a,s[c],!1);n.resolve()}}),n}varo=null,i=window.localStorage?{get:function(e){returnwindow.localStorage.getItem(e)},set:function(e,t){window.localStorage.setItem(e,t)},remove:function(e){window.localStorage.removeItem(e)}}:null,s=window.sessionStorage?{get:function(e){returnwindow.sessionStorage.getItem(e)},set:function(e,t){window.sessionStorage.setItem(e,t)},remove:function(e){window.sessionStorage.removeItem(e)}}:null,r=e.ui.fancytree.assert,n="active",a="expanded",c="selected";return"function"==typeofCookies?o={get:Cookies.get,set:function(e,t){Cookies.set(e,t,this.options.persist.cookie)},remove:Cookies.remove}:e&&"function"==typeofe.cookie&&(o={get:e.cookie,set:function(t,o){e.cookie.set(t,o,this.options.persist.cookie)},remove:e.removeCookie}),e.ui.fancytree._FancytreeClass.prototype.clearPersistData=function(e){vart=this.ext.persist,o=t.cookiePrefix;(e=e||"active expanded focus selected").indexOf(n)>=0&&t._data(o+n,null),e.indexOf(a)>=0&&t._data(o+a,null),e.indexOf("focus")>=0&&t._data(o+"focus",null),e.indexOf(c)>=0&&t._data(o+c,null)},e.ui.fancytree._FancytreeClass.prototype.clearCookies=function(e){returnthis.warn("'tree.clearCookies()' is deprecated since v2.27.0: use 'clearPersistData()' instead."),this.clearPersistData(e)},e.ui.fancytree._FancytreeClass.prototype.getPersistData=function(){vare=this.ext.persist,t=e.cookiePrefix,o=e.cookieDelimiter,i={};returni.active=e._data(t+n),i[a]=(e._data(t+a)||"").split(o),i[c]=(e._data(t+c)||"").split(o),i.focus=e._data(t+"focus"),i},e.ui.fancytree.registerExtension({name:"persist",version:"2.28.1",options:{cookieDelimiter:"~",cookiePrefix:void0,cookie:{raw:!1,expires:"",path:"",domain:"",secure:!1},expandLazy:!1,expandOpts:void0,fireActivate:!0,overrideSource:!0,store:"auto",types:"active expanded focus selected"},_data:function(e,t){varo=this._local.store;if(void0===t)returno.get.call(this,e);null===t?o.remove.call(this,e):o.set.call(this,e,t)},_appendKey:function(t,o,i){o=""+o;vars=this._local,r=this.options.persist.cookieDelimiter,n=s.cookiePrefix+t,a=s._data(n),c=a?a.split(r):[],d=e.inArray(o,c);d>=0&&c.splice(d,1),i&&c.push(o),s._data(n,c.join(r))},treeInit:function(d){varl=d.tree,u=d.options,f=this._local,p=this.options.persist;returnf.cookiePrefix=p.cookiePrefix||"fancytree-"+l._id+"-",f.storeActive=p.types.indexOf(n)>=0,f.storeExpanded=p.types.indexOf(a)>=0,f.storeSelected=p.types.indexOf(c)>=0,f.storeFocus=p.types.indexOf("focus")>=0,f.store=null,"auto"===p.store&&(p.store=i?"local":"cookie"),e.isPlainObject(p.store)?f.store=p.store:"cookie"===p.store?f.store=o:"local"===p.store?f.store="local"===p.store?i:s:"session"===p.store&&(f.store="local"===p.store?i:s),r(f.store,"Need a valid store."),l.$div.on("fancytreeinit",function(o){if(!1!==l._triggerTreeEvent("beforeRestore",null,{})){vari,s,r,d,y=f._data(f.cookiePrefix+"focus"),v=!1===p.fireActivate;i=f._data(f.cookiePrefix+a),r=i&&i.split(p.cookieDelimiter),(f.storeExpanded?t(l,f,r,!!p.expandLazy&&"expand",null):(newe.Deferred).resolve()).done(function(){if(f.storeSelected){if(i=f._data(f.cookiePrefix+c))for(r=i.split(p.cookieDelimiter),s=0;s<r.length;s++)(d=l.getNodeByKey(r[s]))?(void0===d.s
/*! Extension 'jquery.fancytree.table.min.js' */!function(e){"function"==typeofdefine&&define.amd?define(["jquery","./jquery.fancytree"],e):"object"==typeofmodule&&module.exports?(require("./jquery.fancytree"),module.exports=e(require("jquery"))):e(jQuery)}(function(e){"use strict";functiont(t,n){n=n||"",t||e.error("Assertion failed "+n)}functionn(e,t){e.visit(function(e){varn=e.tr;if(n&&(n.style.display=e.hide||!t?"none":""),!e.expanded)return"skip"})}returne.ui.fancytree.registerExtension({name:"table",version:"2.28.1",options:{checkboxColumnIdx:null,indentation:16,nodeColumnIdx:0},treeInit:function(n){varr,o,d,i,s,a=n.tree,l=n.options,u=l.table,p=a.widget.element;if(null!=u.customStatus&&(null!=l.renderStatusColumns?e.error("The 'customStatus' option is deprecated since v2.15.0. Use 'renderStatusColumns' only instead."):(a.warn("The 'customStatus' option is deprecated since v2.15.0. Use 'renderStatusColumns' instead."),l.renderStatusColumns=u.customStatus)),l.renderStatusColumns&&!0===l.renderStatusColumns&&(l.renderStatusColumns=l.renderColumns),p.addClass("fancytree-container fancytree-ext-table"),(s=p.find(">tbody")).length||(p.find(">tr").length&&e.error("Expected table > tbody > tr. If you see this please open an issue."),s=e("<tbody>").appendTo(p)),a.tbody=s[0],o=e("thead >tr:last >th",p).length,(i=s.children("tr:first")).length)d=i.children("td").length,o&&d!==o&&(a.warn("Column count mismatch between thead ("+o+") and tbody ("+d+"): using tbody."),o=d),i=i.clone();elsefor(t(o>=1,"Need either <thead> or <tbody> with <td> elements to determine column count."),i=e("<tr />"),r=0;r<o;r++)i.append("<td />");i.find(">td").eq(u.nodeColumnIdx).html("<span class='fancytree-node' />"),l.aria&&(i.attr("role","row"),i.find("td").attr("role","gridcell")),a.rowFragment=document.createDocumentFragment(),a.rowFragment.appendChild(i.get(0)),s.empty(),a.statusClassPropName="tr",a.ariaPropName="tr",this.nodeContainerAttrName="tr",a.$container=p,this._superApply(arguments),e(a.rootNode.ul).remove(),a.rootNode.ul=null,this.$container.attr("tabindex",l.tabindex),l.aria&&a.$container.attr("role","treegrid").attr("aria-readonly",!0)},nodeRemoveChildMarkup:function(t){t.node.visit(function(t){t.tr&&(e(t.tr).remove(),t.tr=null)})},nodeRemoveMarkup:function(t){varn=t.node;n.tr&&(e(n.tr).remove(),n.tr=null),this.nodeRemoveChildMarkup(t)},nodeRender:function(r,o,d,i,s){vara,l,u,p,c,h,f,m,y=r.tree,C=r.node,v=r.options,x=!C.parent;if(!1!==y._enableUpdate){if(s||(r.hasCollapsedParents=C.parent&&!C.parent.expanded),!x)if(C.tr&&o&&this.nodeRemoveMarkup(r),C.tr)o?this.nodeRenderTitle(r):this.nodeRenderStatus(r);else{if(r.hasCollapsedParents&&!d)return;c=y.rowFragment.firstChild.cloneNode(!0),t(h=function(n){varr,o,d=n.parent,i=d?d.children:null;if(i&&i.length>1&&i[0]!==n)for(t((o=i[e.inArray(n,i)-1]).tr);o.children&&o.children.length&&(r=o.children[o.children.length-1]).tr;)o=r;elseo=d;returno}(C)),!0===i&&s?c.style.display="none":d&&r.hasCollapsedParents&&(c.style.display="none"),h.tr?function(e,t){e.parentNode.insertBefore(t,e.nextSibling)}(h.tr,c):(t(!h.parent,"prev. row must have a tr, or be system root"),function(e,t){e.insertBefore(t,e.firstChild)}(y.tbody,c)),C.tr=c,C.key&&v.generateIds&&(C.tr.id=v.idPrefix+C.key),C.tr.ftnode=C,C.span=e("span.fancytree-node",C.tr).get(0),this.nodeRenderTitle(r),v.createNode&&v.createNode.call(y,{type:"createNode"},r)}if(v.renderNode&&v.renderNode.call(y,{type:"renderNode"},r),(a=C.children)&&(x||d||C.expanded))for(u=0,p=a.length;u<p;u++)(m=e.extend({},r,{node:a[u]})).hasCollapsedParents=m.hasCollapsedParents||!C.expanded,this.nodeRender(m,o,d,i,!0);a&&!s&&(f=C.tr||null,l=y.tbody.firstChild,C.visit(function(e){if(e.tr){if(e.parent.expanded||"none"===e.tr.style.display||(e.tr.style.display="none",n(e,!1)),e.tr.previousSibling!==f){C.debug("_fixOrder: mismatch at node: "+e);vart=f?f.nextSibling:l;y.tbody.insertBefore(e.tr,t)}f=e.tr}}))}},nodeRenderTitle:function(t,n){varr,o,d=t.node,i=t.options,s=d.isStatusNode();returno=this._super(t,n),d.isRootNode()?o:(i.checkbox&&!s&&null!=i.table.checkb