trilium/public/libraries/fancytree/jquery.fancytree-all.min.js

75 lines
107 KiB
JavaScript
Raw Normal View History

2017-12-16 13:19:15 +08:00
/*! jQuery Fancytree Plugin - 2.26.0 - 2017-11-04T17:52:53Z
2017-05-23 08:32:19 +08:00
* https://github.com/mar10/fancytree
2017-12-16 13:19:15 +08:00
* Copyright (c) 2017 Martin Wendt; Licensed MIT
*/
2017-05-23 08:32:19 +08:00
(function( factory ) {
if ( typeof define === "function" && define.amd ) {
2017-12-16 13:19:15 +08:00
// AMD. Register as an anonymous module.
define( [
"jquery",
"jquery-ui/ui/widgets/mouse",
"jquery-ui/ui/widgets/draggable",
"jquery-ui/ui/widgets/droppable",
"jquery-ui/ui/effects/effect-blind",
"jquery-ui/ui/data",
"jquery-ui/ui/effect",
"jquery-ui/ui/focusable",
"jquery-ui/ui/keycode",
"jquery-ui/ui/position",
"jquery-ui/ui/scroll-parent",
"jquery-ui/ui/tabbable",
"jquery-ui/ui/unique-id",
"jquery-ui/ui/widget"
], factory );
} else if ( typeof module === "object" && module.exports ) {
// Node/CommonJS
module.exports = factory(require("jquery"));
2017-05-23 08:32:19 +08:00
} else {
2017-12-16 13:19:15 +08:00
// Browser globals
2017-05-23 08:32:19 +08:00
factory( jQuery );
}
}(function( $ ) {
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.fancytree.ui-deps"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree.ui-deps"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";function b(b,c){b||(c=c?": "+c:"",a.error("Fancytree assertion failed"+c))}function c(a,b){var c,d,e=window.console?window.console[a]:null;if(e)try{e.apply(window.console,b)}catch(f){for(d="",c=0;c<b.length;c++)d+=b[c];e(d)}}function d(a){return!(!a.tree||void 0===a.statusNodeType)}function e(b,c,d,e){var f,g,h,i=a.map(a.trim(b).split("."),function(a){return parseInt(a,10)}),j=a.map(Array.prototype.slice.call(arguments,1),function(a){return parseInt(a,10)});for(f=0;f<j.length;f++)if(g=i[f]||0,h=j[f]||0,g!==h)return g>h;return!0}function f(a,b,c,d,e){var f=function(){var c=b[a],f=d[a],g=b.ext[e],h=function(){return c.apply(b,arguments)},i=function(a){return c.apply(b,a)};return function(){var a=b._local,c=b._super,d=b._superApply;try{return b._local=g,b._super=h,b._superApply=i,f.apply(b,arguments)}finally{b._local=a,b._super=c,b._superApply=d}}}();return f}function g(b,c,d,e){for(var g in d)"function"==typeof d[g]?"function"==typeof b[g]?b[g]=f(g,b,c,d,e):"_"===g.charAt(0)?b.ext[e][g]=f(g,b,c,d,e):a.error("Could not override tree."+g+". Use prefix '_' to create tree."+e+"._"+g):"options"!==g&&(b.ext[e][g]=d[g])}function h(b,c){return void 0===b?a.Deferred(function(){this.resolve()}).promise():a.Deferred(function(){this.resolveWith(b,c)}).promise()}function i(b,c){return void 0===b?a.Deferred(function(){this.reject()}).promise():a.Deferred(function(){this.rejectWith(b,c)}).promise()}function j(a,b){return function(){a.resolveWith(b)}}function k(b){var c=a.extend({},b.data()),d=c.json;return delete c.fancytree,delete c.uiFancytree,d&&(delete c.json,c=a.extend(c,d)),c}function l(a){return(""+a).replace(v,function(a){return x[a]})}function m(a){return a=a.toLowerCase(),function(b){return b.title.toLowerCase().indexOf(a)>=0}}function n(a){var b=new RegExp("^"+a,"i");return function(a){return b.test(a.title)}}function o(c,d){var e,f,g,h;for(this.parent=c,this.tree=c.tree,this.ul=null,this.li=null,this.statusNodeType=null,this._isLoading=!1,this._error=null,this.data={},e=0,f=D.length;e<f;e++)g=D[e],this[g]=d[g];null==this.unselectableIgnore&&null==this.unselectableStatus||(this.unselectable=!0),d.hideCheckbox&&a.error("'hideCheckbox' node option was removed in v2.23.0: use 'checkbox: false'"),d.data&&a.extend(this.data,d.data);for(g in d)E[g]||a.isFunction(d[g])||G[g]||(this.data[g]=d[g]);null==this.key?this.tree.options.defaultKey?(this.key=this.tree.options.defaultKey(this),b(this.key,"defaultKey() must return a unique key")):this.key="_"+s._nextNodeKey++:this.key=""+this.key,d.active&&(b(null===this.tree.activeNode,"only one active node allowed"),this.tree.activeNode=this),d.selected&&(this.tree.lastSelectedNode=this),h=d.children,h?h.length?this._setChildren(h):this.children=this.lazy?[]:null:this.children=null,this.tree._callHook("treeRegisterNode",this.tree,!0,this)}function p(b){this.widget=b,this.$div=b.element,this.options=b.options,this.options&&(a.isFunction(this.options.lazyload)&&!a.isFunction(this.options.lazyLoad)&&(this.options.lazyLoad=function(){return s.warn("The 'lazyload' event is deprecated since 2014-02-25. Use 'lazyLoad' (with uppercase L) instead."),b.options.lazyload.apply(this,arguments)}),a.isFunction(this.options.loaderror)&&a.error("The 'loaderror' event was renamed since 2014-07-03. Use 'loadError' (with uppercase E) instead."),void 0!==this.options.fx&&s.warn("The 'fx' option was replaced by 'toggleEffect' since 2014-11-30."),void 0!==this.options.removeNode&&a.error("The 'removeNode' event was replaced by 'modifyChild' since 2.20 (2016-09-10).")),this.ext={},this.data=k(this.$div),this._id=a.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.lastQuicksear
if(c.options.postProcess){try{k=h._triggerNodeEvent("postProcess",c,c.originalEvent,{response:b,error:null,dataType:this.dataType})}catch(l){k={error:l,message:""+l,details:"postProcess failed"}}if(k.error)return g=a.isPlainObject(k.error)?k.error:{message:k.error},g=h._makeHookContext(i,null,g),void d.rejectWith(this,[g]);b=a.isArray(k)?k:b}else b&&b.hasOwnProperty("d")&&c.options.enableAspx&&(b="string"==typeof b.d?a.parseJSON(b.d):b.d);d.resolveWith(this,[b])}).fail(function(a,b,c){var e=h._makeHookContext(i,null,{error:a,args:Array.prototype.slice.call(arguments),message:c,details:a.status+": "+c});d.rejectWith(this,[e])})),a.isFunction(d.then)&&a.isFunction(d["catch"])&&(g=d,d=new a.Deferred,g.then(function(a){d.resolve(a)},function(a){d.reject(a)})),a.isFunction(d.promise)?(h.nodeSetStatus(c,"loading"),d.done(function(a){h.nodeSetStatus(c,"ok"),i._requestId=null}).fail(function(a){var b;return a===w?void i.warn("Ignored response for obsolete load request #"+j+" (expected #"+i._requestId+")"):(a.node&&a.error&&a.message?b=a:(b=h._makeHookContext(i,null,{error:a,args:Array.prototype.slice.call(arguments),message:a?a.message||a.toString():""}),"[object Object]"===b.message&&(b.message="")),i.warn("Load children failed ("+b.message+")",b),void(h._triggerNodeEvent("loadError",b,null)!==!1&&h.nodeSetStatus(c,"error",b.message,b.details)))})):c.options.postProcess&&h._triggerNodeEvent("postProcess",c,c.originalEvent,{response:d,error:null,dataType:typeof d}),a.when(d).done(function(c){var d;a.isPlainObject(c)&&(b(i.isRootNode(),"source may only be an object for root nodes (expecting an array of child objects otherwise)"),b(a.isArray(c.children),"if an object is passed as source, it must contain a 'children' array (all other properties are added to 'tree.data')"),d=c,c=c.children,delete d.children,a.extend(h.data,d)),b(a.isArray(c),"expected array of children"),i._setChildren(c),h._triggerNodeEvent("loadChildren",i)})},nodeLoadKeyPath:function(a,b){},nodeRemoveChild:function(c,d){var e,f=c.node,g=a.extend({},c,{node:d}),h=f.children;return 1===h.length?(b(d===h[0],"invalid single child"),this.nodeRemoveChildren(c)):(this.activeNode&&(d===this.activeNode||this.activeNode.isDescendantOf(d))&&this.activeNode.setActive(!1),this.focusNode&&(d===this.focusNode||this.focusNode.isDescendantOf(d))&&(this.focusNode=null),this.nodeRemoveMarkup(g),this.nodeRemoveChildren(g),e=a.inArray(d,h),b(e>=0,"invalid child"),f.triggerModifyChild("remove",d),d.visit(function(a){a.parent=null},!0),this._callHook("treeRegisterNode",this,!1,d),void h.splice(e,1))},nodeRemoveChildMarkup:function(b){var c=b.node;c.ul&&(c.isRootNode()?a(c.ul).empty():(a(c.ul).remove(),c.ul=null),c.visit(function(a){a.li=a.ul=null}))},nodeRemoveChildren:function(b){var c,d=b.tree,e=b.node,f=e.children;f&&(this.activeNode&&this.activeNode.isDescendantOf(e)&&this.activeNode.setActive(!1),this.focusNode&&this.focusNode.isDescendantOf(e)&&(this.focusNode=null),this.nodeRemoveChildMarkup(b),c=a.extend({},b),e.triggerModifyChild("remove",null),e.visit(function(a){a.parent=null,d._callHook("treeRegisterNode",d,!1,a)}),e.lazy?e.children=[]:e.children=null,e.isRootNode()||(e.expanded=!1),this.nodeRenderStatus(b))},nodeRemoveMarkup:function(b){var c=b.node;c.li&&(a(c.li).remove(),c.li=null),this.nodeRemoveChildMarkup(b)},nodeRender:function(c,d,e,f,g){var h,i,j,k,l,m,n,o=c.node,p=c.tree,q=c.options,r=q.aria,s=!1,t=o.parent,u=!t,v=o.children,w=null;if(p._enableUpdate!==!1&&(u||t.ul)){if(b(u||t.ul,"parent UL must exist"),u||(o.li&&(d||o.li.parentNode!==o.parent.ul)&&(o.li.parentNode===o.parent.ul?w=o.li.nextSibling:this.debug("Unlinking "+o+" (must be child of "+o.parent+")"),this.nodeRemoveMarkup(c)),o.li?this.nodeRenderStatus(c):(s=!0,o.li=document.createElement("li"),o.li.ftnode=o,o.key&&q.generateIds&&(o.li.id=q.idPrefix+o.key),o.span=document.createElement("span"),o.span.className="fancytree-node",r&&!o.tr&&a(o.li).attr("role","treeitem"),o.li.appendChild(o.span),this.nodeRenderTitle(c),q.createNode&&q.createNode.call(p,{type:"createNode"},c)),q.renderNode&&q.renderNode.call(
2017-05-23 08:32:19 +08:00
/*! Extension 'jquery.fancytree.childcounter.min.js' */
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.fancytree"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";return a.ui.fancytree._FancytreeClass.prototype.countSelected=function(a){var b=this;b.options;return b.getSelectedNodes(a).length},a.ui.fancytree._FancytreeNodeClass.prototype.updateCounters=function(){var b=this,c=a("span.fancytree-childcounter",b.span),d=b.tree.options.childcounter,e=b.countChildren(d.deep);b.data.childCounter=e,!e&&d.hideZeros||b.isExpanded()&&d.hideExpanded?c.remove():(c.length||(c=a("<span class='fancytree-childcounter'/>").appendTo(a("span.fancytree-icon",b.span))),c.text(e)),!d.deep||b.isTopLevel()||b.isRoot()||b.parent.updateCounters()},a.ui.fancytree.prototype.widgetMethod1=function(a){this.tree;return a},a.ui.fancytree.registerExtension({name:"childcounter",version:"2.26.0",options:{deep:!0,hideZeros:!0,hideExpanded:!1},foo:42,_appendCounter:function(a){},treeInit:function(a){a.options,a.options.childcounter;this._superApply(arguments),this.$container.addClass("fancytree-ext-childcounter")},treeDestroy:function(a){this._superApply(arguments)},nodeRenderTitle:function(b,c){var d=b.node,e=b.options.childcounter,f=null==d.data.childCounter?d.countChildren(e.deep):+d.data.childCounter;this._super(b,c),!f&&e.hideZeros||d.isExpanded()&&e.hideExpanded||a("span.fancytree-icon",d.span).append(a("<span class='fancytree-childcounter'/>").text(f))},nodeSetExpanded:function(a,b,c){var d=a.tree;a.node;return this._superApply(arguments).always(function(){d.nodeRenderTitle(a)})}}),a.ui.fancytree});
2017-05-23 08:32:19 +08:00
/*! Extension 'jquery.fancytree.clones.min.js' */
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.fancytree"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";function b(b,c){b||(c=c?": "+c:"",a.error("Assertion failed"+c))}function c(a,b){var c;for(c=a.length-1;c>=0;c--)if(a[c]===b)return a.splice(c,1),!0;return!1}function d(a,b,c){for(var d,e,f=3&a.length,g=a.length-f,h=c,i=3432918353,j=461845907,k=0;k<g;)e=255&a.charCodeAt(k)|(255&a.charCodeAt(++k))<<8|(255&a.charCodeAt(++k))<<16|(255&a.charCodeAt(++k))<<24,++k,e=(65535&e)*i+(((e>>>16)*i&65535)<<16)&4294967295,e=e<<15|e>>>17,e=(65535&e)*j+(((e>>>16)*j&65535)<<16)&4294967295,h^=e,h=h<<13|h>>>19,d=5*(65535&h)+((5*(h>>>16)&65535)<<16)&4294967295,h=(65535&d)+27492+(((d>>>16)+58964&65535)<<16);switch(e=0,f){case 3:e^=(255&a.charCodeAt(k+2))<<16;case 2:e^=(255&a.charCodeAt(k+1))<<8;case 1:e^=255&a.charCodeAt(k),e=(65535&e)*i+(((e>>>16)*i&65535)<<16)&4294967295,e=e<<15|e>>>17,e=(65535&e)*j+(((e>>>16)*j&65535)<<16)&4294967295,h^=e}return h^=a.length,h^=h>>>16,h=2246822507*(65535&h)+((2246822507*(h>>>16)&65535)<<16)&4294967295,h^=h>>>13,h=3266489909*(65535&h)+((3266489909*(h>>>16)&65535)<<16)&4294967295,h^=h>>>16,b?("0000000"+(h>>>0).toString(16)).substr(-8):h>>>0}function e(b){var c,e=a.map(b.getParentList(!1,!0),function(a){return a.refKey||a.key});return e=e.join("/"),c="id_"+d(e,!0)}return a.ui.fancytree._FancytreeNodeClass.prototype.getCloneList=function(b){var c,d=this.tree,e=d.refMap[this.refKey]||null,f=d.keyMap;return e&&(c=this.key,b?e=a.map(e,function(a){return f[a]}):(e=a.map(e,function(a){return a===c?null:f[a]}),e.length<1&&(e=null))),e},a.ui.fancytree._FancytreeNodeClass.prototype.isClone=function(){var a=this.refKey||null,b=a&&this.tree.refMap[a]||null;return!!(b&&b.length>1)},a.ui.fancytree._FancytreeNodeClass.prototype.reRegister=function(b,c){b=null==b?null:""+b,c=null==c?null:""+c;var d=this.tree,e=this.key,f=this.refKey,g=d.keyMap,h=d.refMap,i=h[f]||null,j=!1;return null!=b&&b!==this.key&&(g[b]&&a.error("[ext-clones] reRegister("+b+"): already exists: "+this),delete g[e],g[b]=this,i&&(h[f]=a.map(i,function(a){return a===e?b:a})),this.key=b,j=!0),null!=c&&c!==this.refKey&&(i&&(1===i.length?delete h[f]:h[f]=a.map(i,function(a){return a===e?null:a})),h[c]?h[c].append(b):h[c]=[this.key],this.refKey=c,j=!0),j},a.ui.fancytree._FancytreeNodeClass.prototype.setRefKey=function(a){return this.reRegister(null,a)},a.ui.fancytree._FancytreeClass.prototype.getNodesByRef=function(b,c){var d=this.keyMap,e=this.refMap[b]||null;return e&&(e=c?a.map(e,function(a){var b=d[a];return b.isDescendantOf(c)?b:null}):a.map(e,function(a){return d[a]}),e.length<1&&(e=null)),e},a.ui.fancytree._FancytreeClass.prototype.changeRefKey=function(a,b){var c,d,e=this.keyMap,f=this.refMap[a]||null;if(f){for(c=0;c<f.length;c++)d=e[f[c]],d.refKey=b;delete this.refMap[a],this.refMap[b]=f}},a.ui.fancytree.registerExtension({name:"clones",version:"2.26.0",options:{highlightActiveClones:!0,highlightClones:!1},treeCreate:function(a){this._superApply(arguments),a.tree.refMap={},a.tree.keyMap={}},treeInit:function(a){this.$container.addClass("fancytree-ext-clones"),b(null==a.options.defaultKey),a.options.defaultKey=function(a){return e(a)},this._superApply(arguments)},treeClear:function(a){return a.tree.refMap={},a.tree.keyMap={},this._superApply(arguments)},treeRegisterNode:function(d,e,f){var g,h,i=d.tree,j=i.keyMap,k=i.refMap,l=f.key,m=f&&null!=f.refKey?""+f.refKey:null;return f.isStatusNode()?this._super(d,e,f):(e?(null!=j[f.key]&&a.error("clones.treeRegisterNode: node.key already exists: "+f),j[l]=f,m&&(g=k[m],g?(g.push(l),2===g.length&&d.options.clones.highlightClones&&j[g[0]].renderStatus()):k[m]=[l])):(null==j[l]&&a.error("clones.treeRegisterNode: node.key not registered: "+f.key),delete j[l],m&&(g=k[m],g&&(h=g.length,h<=1?(b(1===h),b(g[0]===l),delete k[m]):(c(g,l),2===h&&d.options.clones.highlightClones&&j[g[0]].renderStatus())))),this._super(d,e,f))},nodeRenderStatus:function(b){var c,d,e=b.node;return d=this._super(b
2017-05-23 08:32:19 +08:00
/*! Extension 'jquery.fancytree.dnd.min.js' */
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","jquery-ui/ui/widgets/draggable","jquery-ui/ui/widgets/droppable","./jquery.fancytree"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";function b(a){return 0===a?"":a>0?"+"+a:""+a}function c(){e||(a.ui.plugin.add("draggable","connectToFancytree",{start:function(b,c){var d=a(this).data("ui-draggable")||a(this).data("draggable"),e=c.helper.data("ftSourceNode")||null;if(e)return d.offset.click.top=-2,d.offset.click.left=16,e.tree.ext.dnd._onDragEvent("start",e,null,b,c,d)},drag:function(b,c){var d,e,f,g=a(this).data("ui-draggable")||a(this).data("draggable"),h=c.helper.data("ftSourceNode")||null,i=c.helper.data("ftTargetNode")||null,j=a.ui.fancytree.getNode(b.target),k=h&&h.tree.options.dnd;return b.target&&!j&&(e=a(b.target).closest("div.fancytree-drag-helper,#fancytree-drop-marker").length>0)?(f=h||i||a.ui.fancytree,void f.debug("Drag event over helper: ignored.")):(c.helper.data("ftTargetNode",j),k&&k.updateHelper&&(d=h.tree._makeHookContext(h,b,{otherNode:j,ui:c,draggable:g,dropMarker:a("#fancytree-drop-marker")}),k.updateHelper.call(h.tree,h,d)),i&&i!==j&&i.tree.ext.dnd._onDragEvent("leave",i,h,b,c,g),void(j&&j.tree.options.dnd.dragDrop&&(j===i?j.tree.ext.dnd._onDragEvent("over",j,h,b,c,g):(j.tree.ext.dnd._onDragEvent("enter",j,h,b,c,g),j.tree.ext.dnd._onDragEvent("over",j,h,b,c,g)))))},stop:function(b,c){var d,e=a(this).data("ui-draggable")||a(this).data("draggable"),f=c.helper.data("ftSourceNode")||null,g=c.helper.data("ftTargetNode")||null,h="mouseup"===b.type&&1===b.which;h||(d=f||g||a.ui.fancytree,d.debug("Drag was cancelled")),g&&(h&&g.tree.ext.dnd._onDragEvent("drop",g,f,b,c,e),g.tree.ext.dnd._onDragEvent("leave",g,f,b,c,e)),f&&f.tree.ext.dnd._onDragEvent("stop",f,null,b,c,e)}}),e=!0)}function d(b){var d=b.options.dnd||null,e=b.options.glyph||null;d&&c(),d&&d.dragStart&&b.widget.element.draggable(a.extend({addClasses:!1,appendTo:b.$container,containment:!1,delay:0,distance:4,revert:!1,scroll:!0,scrollSpeed:7,scrollSensitivity:10,connectToFancytree:!0,helper:function(b){var c,d,f,g=a.ui.fancytree.getNode(b.target);return g?(f=g.tree.options.dnd,d=a(g.span),c=a("<div class='fancytree-drag-helper'><span class='fancytree-drag-helper-img' /></div>").css({zIndex:3,position:"relative"}).append(d.find("span.fancytree-title").clone()),c.data("ftSourceNode",g),e&&c.find(".fancytree-drag-helper-img").addClass(e.map.dragHelper),f.initHelper&&f.initHelper.call(g.tree,g,{node:g,tree:g.tree,originalEvent:b,ui:{helper:c}}),c):"<div>ERROR?: helper requested but sourceNode not found</div>"},start:function(a,b){var c=b.helper.data("ftSourceNode");return!!c}},b.options.dnd.draggable)),d&&d.dragDrop&&b.widget.element.droppable(a.extend({addClasses:!1,tolerance:"intersect",greedy:!1},b.options.dnd.droppable))}var e=!1,f="fancytree-drop-accept",g="fancytree-drop-after",h="fancytree-drop-before",i="fancytree-drop-over",j="fancytree-drop-reject",k="fancytree-drop-target";return a.ui.fancytree.registerExtension({name:"dnd",version:"2.26.0",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(b){var c=b.tree;this._superApply(arguments),c.options.dnd.dragStart&&c.$container.on("mousedown",function(c){if(b.options.dnd.focusOnClick){var d=a.ui.fancytree.getNode(c);d&&d.debug("Re-enable focus that was prevented by jQuery UI draggable."),setTimeout(function(){a(c.target).closest(":tabbable").focus()},10)}}),d(c)},_setDndStatus:function(c,d,e,l,m){var n,o="center",p=this._local,q=this.options.dnd,r=this.options.glyph,s=c?a(c.span):null,t=a(d.span),u=t.find("span.fancytree-title");if(p.$dropMarker||(p.$dropMarker=a("<div id='fancytree-drop-marker'></div>").hide().css({"z-index":1e3}).prependTo(a(this.$
2017-05-23 08:32:19 +08:00
/*! Extension 'jquery.fancytree.dnd5.min.js' */
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.fancytree"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";function b(a){return 0===a?"":a>0?"+"+a:""+a}function c(b){var c;return!!b&&(c=a.isPlainObject(b)?{over:!!b.over,before:!!b.before,after:!!b.after}:a.isArray(b)?{over:a.inArray("over",b)>=0,before:a.inArray("before",b)>=0,after:a.inArray("after",b)>=0}:{over:b===!0||"over"===b,before:b===!0||"before"===b,after:b===!0||"after"===b},0!==Object.keys(c).length&&c)}function d(b,c){var d,e,f,g=b.options.dnd5,h=b.$scrollParent[0],i=g.scrollSensitivity,j=g.scrollSpeed,k=0;return h!==document&&"HTML"!==h.tagName?(d=b.$scrollParent.offset(),e=h.scrollTop,d.top+h.offsetHeight-c.pageY<i?(f=h.scrollHeight-b.$scrollParent.innerHeight()-e,f>0&&(h.scrollTop=k=e+j)):e>0&&c.pageY-d.top<i&&(h.scrollTop=k=e-j)):(e=a(document).scrollTop(),e>0&&c.pageY-e<i?(k=e-j,a(document).scrollTop(k)):a(window).height()-(c.pageY-e)<i&&(k=e+j,a(document).scrollTop(k))),k&&b.debug("autoScroll: "+k+"px"),k}function e(c,e){if(e.options.dnd5.scroll&&d(e.tree,c),!e.node)return e.tree.warn("Ignore dragover for non-node"),r;var f,g,n,p=null,s=e.tree,t=s.options,u=t.dnd5,v=e.node,w=e.otherNode,x="center",y=a(v.span),z=y.find("span.fancytree-title");if(q===!1)return s.info("Ignore dragover, since dragenter returned false"),!1;if("string"==typeof q?a.error("assert failed: dragenter returned string"):(g=y.offset(),n=(c.pageY-g.top)/y.height(),q.after&&n>.75?p="after":!q.over&&q.after&&n>.5?p="after":q.before&&n<=.25?p="before":!q.over&&q.before&&n<=.5?p="before":q.over&&(p="over"),u.preventVoidMoves&&(v===w?(v.debug("drop over source node prevented"),p=null):"before"===p&&w&&v===w.getNextSibling()?(v.debug("drop after source node prevented"),p=null):"after"===p&&w&&v===w.getPrevSibling()?(v.debug("drop before source node prevented"),p=null):"over"===p&&w&&w.parent===v&&w.isLastSibling()&&(v.debug("drop last child over own parent prevented"),p=null))),e.hitMode=p,p&&u.dragOver&&(u.dragOver(v,e),p=e.hitMode),r=p,"after"===p||"before"===p||"over"===p){switch(f=u.dropMarkerOffsetX||0,p){case"before":x="top",f+=u.dropMarkerInsertOffsetX||0;break;case"after":x="bottom",f+=u.dropMarkerInsertOffsetX||0}o.toggleClass(i,"after"===p).toggleClass(k,"over"===p).toggleClass(j,"before"===p).show().position(a.ui.fancytree.fixPositionOptions({my:"left"+b(f)+" center",at:"left "+x,of:z}))}else o.hide();return a(v.span).toggleClass(m,"after"===p||"before"===p||"over"===p).toggleClass(i,"after"===p).toggleClass(j,"before"===p).toggleClass(h,"over"===p).toggleClass(l,p===!1),p}var f="fancytree-drag-source",g="fancytree-drag-remove",h="fancytree-drop-accept",i="fancytree-drop-after",j="fancytree-drop-before",k="fancytree-drop-over",l="fancytree-drop-reject",m="fancytree-drop-target",n="application/x-fancytree-node",o=null,p=null,q=null,r=null;return a.ui.fancytree.registerExtension({name:"dnd5",version:"2.26.0",options:{autoExpandMS:1500,setTextTypeJson:!1,preventForeignNodes:!1,preventNonNodes:!1,preventRecursiveMoves:!0,preventVoidMoves:!0,scroll:!0,scrollSensitivity:20,scrollSpeed:5,dropMarkerOffsetX:-24,dropMarkerInsertOffsetX:-16,dragStart:null,dragDrag:a.noop,dragEnd:a.noop,dragEnter:null,dragOver:a.noop,dragExpand:a.noop,dragDrop:a.noop,dragLeave:a.noop},treeInit:function(b){var d,i=b.tree,j=b.options,m=j.glyph||null,s=j.dnd5,t=a.ui.fancytree.getNode;a.inArray("dnd",j.extensions)>=0&&a.error("Extensions 'dnd' and 'dnd5' are mutually exclusive."),s.dragStop&&a.error("dragStop is not used by ext-dnd5. Use dragEnd instead."),s.dragStart&&a.ui.fancytree.overrideMethod(b.options,"createNode",function(a,b){this._super.apply(this,arguments),b.node.span.draggable=!0}),this._superApply(arguments),this.$container.addClass("fancytree-ext-dnd5"),d=a("<span>").appendTo(this.$container),this.$scrollParent=d.scrollParent(),d.remove(),o=a("#fancytree-drop-marker"),o.length||(o=a("<div id='fancytree-drop-marker'></div>").hide().css({"z-index":1e3,"pointer-events":"no
2017-05-23 08:32:19 +08:00
/*! Extension 'jquery.fancytree.edit.min.js' */
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.fancytree"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";var b=/Mac/.test(navigator.platform),c=a.ui.fancytree.escapeHtml,d=a.ui.fancytree.unescapeHtml;return a.ui.fancytree._FancytreeNodeClass.prototype.editStart=function(){var b,c=this,e=this.tree,f=e.ext.edit,g=e.options.edit,h=a(".fancytree-title",c.span),i={node:c,tree:e,options:e.options,isNew:a(c[e.statusClassPropName]).hasClass("fancytree-edit-new"),orgTitle:c.title,input:null,dirty:!1};return g.beforeEdit.call(c,{type:"beforeEdit"},i)!==!1&&(a.ui.fancytree.assert(!f.currentNode,"recursive edit"),f.currentNode=this,f.eventData=i,e.widget._unbind(),a(document).on("mousedown.fancytree-edit",function(b){a(b.target).hasClass("fancytree-edit-input")||c.editEnd(!0,b)}),b=a("<input />",{"class":"fancytree-edit-input",type:"text",value:e.options.escapeTitles?i.orgTitle:d(i.orgTitle)}),f.eventData.input=b,null!=g.adjustWidthOfs&&b.width(h.width()+g.adjustWidthOfs),null!=g.inputCss&&b.css(g.inputCss),h.html(b),b.focus().change(function(a){b.addClass("fancytree-edit-dirty")}).keydown(function(b){switch(b.which){case a.ui.keyCode.ESCAPE:c.editEnd(!1,b);break;case a.ui.keyCode.ENTER:return c.editEnd(!0,b),!1}b.stopPropagation()}).blur(function(a){return c.editEnd(!0,a)}),void g.edit.call(c,{type:"edit"},i))},a.ui.fancytree._FancytreeNodeClass.prototype.editEnd=function(b,d){var e,f=this,g=this.tree,h=g.ext.edit,i=h.eventData,j=g.options.edit,k=a(".fancytree-title",f.span),l=k.find("input.fancytree-edit-input");return j.trim&&l.val(a.trim(l.val())),e=l.val(),i.dirty=e!==f.title,i.originalEvent=d,b===!1?i.save=!1:i.isNew?i.save=""!==e:i.save=i.dirty&&""!==e,j.beforeClose.call(f,{type:"beforeClose"},i)!==!1&&((!i.save||j.save.call(f,{type:"save"},i)!==!1)&&(l.removeClass("fancytree-edit-dirty").off(),a(document).off(".fancytree-edit"),i.save?(f.setTitle(g.options.escapeTitles?e:c(e)),f.setFocus()):i.isNew?(f.remove(),f=i.node=null,h.relatedNode.setFocus()):(f.renderTitle(),f.setFocus()),h.eventData=null,h.currentNode=null,h.relatedNode=null,g.widget._bind(),a(g.$container).focus(),i.input=null,j.close.call(f,{type:"close"},i),!0))},a.ui.fancytree._FancytreeNodeClass.prototype.editCreateNode=function(b,c){var d,e=this.tree,f=this;return b=b||"child",null==c?c={title:""}:"string"==typeof c?c={title:c}:a.ui.fancytree.assert(a.isPlainObject(c)),"child"!==b||this.isExpanded()||this.hasChildren()===!1?(d=this.addNode(c,b),d.match=!0,a(d[e.statusClassPropName]).removeClass("fancytree-hide").addClass("fancytree-match"),void d.makeVisible().done(function(){a(d[e.statusClassPropName]).addClass("fancytree-edit-new"),f.tree.ext.edit.relatedNode=f,d.editStart()})):void this.setExpanded().done(function(){f.editCreateNode(b,c)})},a.ui.fancytree._FancytreeClass.prototype.isEditing=function(){return this.ext.edit?this.ext.edit.currentNode:null},a.ui.fancytree._FancytreeNodeClass.prototype.isEditing=function(){return!!this.tree.ext.edit&&this.tree.ext.edit.currentNode===this},a.ui.fancytree.registerExtension({name:"edit",version:"2.26.0",options:{adjustWidthOfs:4,allowEmpty:!1,inputCss:{minWidth:"3em"},triggerStart:["f2","shift+click","mac+enter"],trim:!0,beforeClose:a.noop,beforeEdit:a.noop,close:a.noop,edit:a.noop,save:a.noop},currentNode:null,treeInit:function(a){this._superApply(arguments),this.$container.addClass("fancytree-ext-edit")},nodeClick:function(b){return a.inArray("shift+click",b.options.edit.triggerStart)>=0&&b.originalEvent.shiftKey?(b.node.editStart(),!1):this._superApply(arguments)},nodeDblclick:function(b){return a.inArray("dblclick",b.options.edit.triggerStart)>=0?(b.node.editStart(),!1):this._superApply(arguments)},nodeKeydown:function(c){switch(c.originalEvent.which){case 113:if(a.inArray("f2",c.options.edit.triggerStart)>=0)return c.node.editStart(),!1;break;case a.ui.keyCode.ENTER:if(a.inArray("mac+enter",c.options.edit.triggerStart)>=0&&b)return c.node.editStart(),!1}return this._superApply(argu
2017-05-23 08:32:19 +08:00
/*! Extension 'jquery.fancytree.filter.min.js' */
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.fancytree"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";function b(a){return(a+"").replace(/([.?*+\^\$\[\]\\(){}|-])/g,"\\$1")}function c(b){return b.indexOf(">")>=0?a("<div/>").html(b).text():b}var d="__not_found__",e=a.ui.fancytree.escapeHtml;return a.ui.fancytree._FancytreeClass.prototype._applyFilterImpl=function(f,g,h){var i,j,k,l,m,n=0,o=this.options,p=o.escapeTitles,q=o.autoCollapse,r=a.extend({},o.filter,h),s="hide"===r.mode,t=!!r.leavesOnly&&!g;if("string"==typeof f){if(""===f)return this.warn("Fancytree passing an empty string as a filter is handled as clearFilter()."),void this.clearFilter();i=r.fuzzy?f.split("").reduce(function(a,b){return a+"[^"+b+"]*"+b}):b(f),k=new RegExp(".*"+i+".*","i"),l=new RegExp(b(f),"gi"),f=function(a){var b=p?a.title:c(a.title),d=!!k.test(b);return d&&r.highlight&&(p?(m=b.replace(l,function(a){return""+a+""}),a.titleWithHighlight=e(m).replace(/\uFFF7/g,"<mark>").replace(/\uFFF8/g,"</mark>")):a.titleWithHighlight=b.replace(l,function(a){return"<mark>"+a+"</mark>"})),d}}return this.enableFilter=!0,this.lastFilterArgs=arguments,this.$div.addClass("fancytree-ext-filter"),s?this.$div.addClass("fancytree-ext-filter-hide"):this.$div.addClass("fancytree-ext-filter-dimm"),this.$div.toggleClass("fancytree-ext-filter-hide-expanders",!!r.hideExpanders),this.visit(function(a){delete a.match,delete a.titleWithHighlight,a.subMatchCount=0}),j=this.getRootNode()._findDirectChild(d),j&&j.remove(),o.autoCollapse=!1,this.visit(function(a){if(!t||null==a.children){var b=f(a),c=!1;if("skip"===b)return a.visit(function(a){a.match=!1},!0),"skip";b||!g&&"branch"!==b||!a.parent.match||(b=!0,c=!0),b&&(n++,a.match=!0,a.visitParents(function(a){a.subMatchCount+=1,!r.autoExpand||c||a.expanded||(a.setExpanded(!0,{noAnimation:!0,noEvents:!0,scrollIntoView:!1}),a._filterAutoExpanded=!0)}))}}),o.autoCollapse=q,0===n&&r.nodata&&s&&(j=r.nodata,a.isFunction(j)&&(j=j()),j===!0?j={}:"string"==typeof j&&(j={title:j}),j=a.extend({statusNodeType:"nodata",key:d,title:this.options.strings.noData},j),this.getRootNode().addNode(j).match=!0),this.render(),n},a.ui.fancytree._FancytreeClass.prototype.filterNodes=function(a,b){return"boolean"==typeof b&&(b={leavesOnly:b},this.warn("Fancytree.filterNodes() leavesOnly option is deprecated since 2.9.0 / 2015-04-19. Use opts.leavesOnly instead.")),this._applyFilterImpl(a,!1,b)},a.ui.fancytree._FancytreeClass.prototype.applyFilter=function(a){return this.warn("Fancytree.applyFilter() is deprecated since 2.1.0 / 2014-05-29. Use .filterNodes() instead."),this.filterNodes.apply(this,arguments)},a.ui.fancytree._FancytreeClass.prototype.filterBranches=function(a,b){return this._applyFilterImpl(a,!0,b)},a.ui.fancytree._FancytreeClass.prototype.clearFilter=function(){var b,c=this.getRootNode()._findDirectChild(d),e=this.options.escapeTitles,f=this.options.enhanceTitle;c&&c.remove(),this.visit(function(c){c.match&&c.span&&(b=a(c.span).find(">span.fancytree-title"),e?b.text(c.title):b.html(c.title),f&&f({type:"enhanceTitle"},{node:c,$title:b})),delete c.match,delete c.subMatchCount,delete c.titleWithHighlight,c.$subMatchBadge&&(c.$subMatchBadge.remove(),delete c.$subMatchBadge),c._filterAutoExpanded&&c.expanded&&c.setExpanded(!1,{noAnimation:!0,noEvents:!0,scrollIntoView:!1}),delete c._filterAutoExpanded}),this.enableFilter=!1,this.lastFilterArgs=null,this.$div.removeClass("fancytree-ext-filter fancytree-ext-filter-dimm fancytree-ext-filter-hide"),this.render()},a.ui.fancytree._FancytreeClass.prototype.isFilterActive=function(){return!!this.enableFilter},a.ui.fancytree._FancytreeNodeClass.prototype.isMatched=function(){return!(this.tree.enableFilter&&!this.match)},a.ui.fancytree.registerExtension({name:"filter",version:"2.26.0",options:{autoApply:!0,autoExpand:!1,counter:!0,fuzzy:!1,hideExpandedCounter:!0,hideExpanders:!1,highlight:!0,leavesOnly:!1,nodata:!0,mode:"dimm"},nodeLoadChildren:function(a,b){return thi
2017-05-23 08:32:19 +08:00
/*! Extension 'jquery.fancytree.glyph.min.js' */
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.fancytree"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";function b(a,b){return a.map[b]}var c=a.ui.fancytree,d={awesome3:{checkbox:"icon-check-empty",checkboxSelected:"icon-check",checkboxUnknown:"icon-check icon-muted",radio:"icon-circle-blank",radioSelected:"icon-circle",radioUnknown:"icon-circle icon-muted",dragHelper:"icon-caret-right",dropMarker:"icon-caret-right",error:"icon-exclamation-sign",expanderClosed:"icon-caret-right",expanderLazy:"icon-angle-right",expanderOpen:"icon-caret-down",loading:"icon-refresh icon-spin",nodata:"icon-meh",noExpander:"",doc:"icon-file-alt",docOpen:"icon-file-alt",folder:"icon-folder-close-alt",folderOpen:"icon-folder-open-alt"},awesome4:{checkbox:"fa fa-square-o",checkboxSelected:"fa fa-check-square-o",checkboxUnknown:"fa fa-square",radio:"fa fa-circle-o",radioSelected:"fa fa-circle",radioUnknown:"fa fa-dot-circle-o",dragHelper:"fa fa-arrow-right",dropMarker:"fa fa-long-arrow-right",error:"fa fa-warning",expanderClosed:"fa fa-caret-right",expanderLazy:"fa fa-angle-right",expanderOpen:"fa fa-caret-down",loading:"fa fa-spinner fa-pulse",nodata:"fa fa-meh-o",noExpander:"",doc:"fa fa-file-o",docOpen:"fa fa-file-o",folder:"fa fa-folder-o",folderOpen:"fa fa-folder-open-o"},bootstrap3:{checkbox:"glyphicon glyphicon-unchecked",checkboxSelected:"glyphicon glyphicon-check",checkboxUnknown:"glyphicon glyphicon-expand",radio:"glyphicon glyphicon-remove-circle",radioSelected:"glyphicon glyphicon-ok-circle",radioUnknown:"glyphicon glyphicon-ban-circle",dragHelper:"glyphicon glyphicon-play",dropMarker:"glyphicon glyphicon-arrow-right",error:"glyphicon glyphicon-warning-sign",expanderClosed:"glyphicon glyphicon-menu-right",expanderLazy:"glyphicon glyphicon-menu-right",expanderOpen:"glyphicon glyphicon-menu-down",loading:"glyphicon glyphicon-refresh glyphicon-spin",nodata:"glyphicon glyphicon-info-sign",noExpander:"",doc:"glyphicon glyphicon-file",docOpen:"glyphicon glyphicon-file",folder:"glyphicon glyphicon-folder-close",folderOpen:"glyphicon glyphicon-folder-open"}};return a.ui.fancytree.registerExtension({name:"glyph",version:"2.26.0",options:{preset:null,map:{}},treeInit:function(b){var e=b.tree,f=b.options.glyph;f.preset?(c.assert(!!d[f.preset],"Invalid value for `options.glyph.preset`: "+f.preset),f.map=a.extend({},d[f.preset],f.map)):e.warn("ext-glyph: missing `preset` option."),this._superApply(arguments),e.$container.addClass("fancytree-ext-glyph")},nodeRenderStatus:function(d){var e,f,g,h,i,j=d.node,k=a(j.span),l=d.options.glyph,m=l.map;return h=this._super(d),j.isRoot()?h:(i=k.children("span.fancytree-expander").get(0),i&&(g=j.expanded&&j.hasChildren()?"expanderOpen":j.isUndefined()?"expanderLazy":j.hasChildren()?"expanderClosed":"noExpander",i.className="fancytree-expander "+m[g]),i=j.tr?a("td",j.tr).find("span.fancytree-checkbox").get(0):k.children("span.fancytree-checkbox").get(0),i&&(e=c.evalOption("checkbox",j,j,d.options,!1),e&&!j.isStatusNode()&&(f="fancytree-checkbox ","radio"===e||j.parent&&j.parent.radiogroup?(f+="fancytree-radio ",g=j.selected?"radioSelected":j.partsel?"radioUnknown":"radio"):g=j.selected?"checkboxSelected":j.partsel?"checkboxUnknown":"checkbox",i.className=f+m[g])),i=k.children("span.fancytree-icon").get(0),i&&(g=j.statusNodeType?b(l,j.statusNodeType):j.folder?j.expanded&&j.hasChildren()?b(l,"folderOpen"):b(l,"folder"):j.expanded?b(l,"docOpen"):b(l,"doc"),i.className="fancytree-icon "+g),h)},nodeSetStatus:function(c,d,e,f){var g,h,i=c.options.glyph,j=c.node;return g=this._superApply(arguments),"error"!==d&&"loading"!==d&&"nodata"!==d||(j.parent?(h=a("span.fancytree-expander",j.span).get(0),h&&(h.className="fancytree-expander "+b(i,d))):(h=a(".fancytree-statusnode-"+d,j[this.nodeContainerAttrName]).find("span.fancytree-icon").get(0),h&&(h.className="fancytree-icon "+b(i,d)))),g}}),a.ui.fancytree});
2017-05-23 08:32:19 +08:00
/*! Extension 'jquery.fancytree.gridnav.min.js' */
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.fancytree","./jquery.fancytree.table"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree.table"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";function b(b,c){var d,e=c.get(0),f=0;return b.children().each(function(){return this!==e&&(d=a(this).prop("colspan"),void(f+=d?d:1))}),f}function c(b,c){var d,e=null,f=0;return b.children().each(function(){return f>=c?(e=a(this),!1):(d=a(this).prop("colspan"),void(f+=d?d:1))}),e}function d(a,d){var f,g,h=a.closest("td"),i=null;switch(d){case e.LEFT:i=h.prev();break;case e.RIGHT:i=h.next();break;case e.UP:case e.DOWN:for(f=h.parent(),g=b(f,h);;){if(f=d===e.UP?f.prev():f.next(),!f.length)break;if(!f.is(":hidden")&&(i=c(f,g),i&&i.find(":input,a").length))break}}return i}var e=a.ui.keyCode,f={text:[e.UP,e.DOWN],checkbox:[e.UP,e.DOWN,e.LEFT,e.RIGHT],link:[e.UP,e.DOWN,e.LEFT,e.RIGHT],radiobutton:[e.UP,e.DOWN,e.LEFT,e.RIGHT],"select-one":[e.LEFT,e.RIGHT],"select-multiple":[e.LEFT,e.RIGHT]};return a.ui.fancytree.registerExtension({name:"gridnav",version:"2.26.0",options:{autofocusInput:!1,handleCursorKeys:!0},treeInit:function(b){this._requireExtension("table",!0,!0),this._superApply(arguments),this.$container.addClass("fancytree-ext-gridnav"),this.$container.on("focusin",function(c){var d,e=a.ui.fancytree.getNode(c.target);e&&!e.isActive()&&(d=b.tree._makeHookContext(e,c),b.tree._callHook("nodeSetActive",d,!0))})},nodeSetActive:function(b,c,d){var e,f=b.options.gridnav,g=b.node,h=b.originalEvent||{},i=a(h.target).is(":input");c=c!==!1,this._superApply(arguments),c&&(b.options.titlesTabbable?(i||(a(g.span).find("span.fancytree-title").focus(),g.setFocus()),b.tree.$container.attr("tabindex","-1")):f.autofocusInput&&!i&&(e=a(g.tr||g.span),e.find(":input:enabled:first").focus()))},nodeKeydown:function(b){var c,e,g,h=b.options.gridnav,i=b.originalEvent,j=a(i.target);return j.is(":input:enabled")?c=j.prop("type"):j.is("a")&&(c="link"),c&&h.handleCursorKeys?(e=f[c],!(e&&a.inArray(i.which,e)>=0&&(g=d(j,i.which),g&&g.length))||(g.find(":input:enabled,a").focus(),!1)):this._superApply(arguments)}}),a.ui.fancytree});
2017-05-23 08:32:19 +08:00
/*! Extension 'jquery.fancytree.persist.min.js' */
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.fancytree"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";function b(c,d,e,f,g){var i,j,k,l,m=!1,n=c.options.persist.expandOpts,o=[],p=[];for(e=e||[],g=g||a.Deferred(),i=0,k=e.length;i<k;i++)j=e[i],l=c.getNodeByKey(j),l?f&&l.isUndefined()?(m=!0,c.debug("_loadLazyNodes: "+l+" is lazy: loading..."),"expand"===f?o.push(l.setExpanded(!0,n)):o.push(l.load())):(c.debug("_loadLazyNodes: "+l+" already loaded."),l.setExpanded(!0,n)):(p.push(j),c.debug("_loadLazyNodes: "+l+" was not yet found."));return a.when.apply(a,o).always(function(){if(m&&p.length>0)b(c,d,p,f,g);else{if(p.length)for(c.warn("_loadLazyNodes: could not load those keys: ",p),i=0,k=p.length;i<k;i++)j=e[i],d._appendKey(h,e[i],!1);g.resolve()}}),g}var c,d,e,f=a.ui.fancytree.assert,g="active",h="expanded",i="focus",j="selected";return"function"==typeof Cookies?(e=Cookies.set,c=Cookies.get,d=Cookies.remove):(e=c=a.cookie,d=a.removeCookie),a.ui.fancytree._FancytreeClass.prototype.clearCookies=function(a){var b=this.ext.persist,c=b.cookiePrefix;a=a||"active expanded focus selected",a.indexOf(g)>=0&&b._data(c+g,null),a.indexOf(h)>=0&&b._data(c+h,null),a.indexOf(i)>=0&&b._data(c+i,null),a.indexOf(j)>=0&&b._data(c+j,null)},a.ui.fancytree._FancytreeClass.prototype.getPersistData=function(){var a=this.ext.persist,b=a.cookiePrefix,c=a.cookieDelimiter,d={};return d[g]=a._data(b+g),d[h]=(a._data(b+h)||"").split(c),d[j]=(a._data(b+j)||"").split(c),d[i]=a._data(b+i),d},a.ui.fancytree.registerExtension({name:"persist",version:"2.26.0",options:{cookieDelimiter:"~",cookiePrefix:void 0,cookie:{raw:!1,expires:"",path:"",domain:"",secure:!1},expandLazy:!1,expandOpts:void 0,fireActivate:!0,overrideSource:!0,store:"auto",types:"active expanded focus selected"},_data:function(a,b){var f=this._local.localStorage;return void 0===b?f?f.getItem(a):c(a):void(null===b?f?f.removeItem(a):d(a):f?f.setItem(a,b):e(a,b,this.options.persist.cookie))},_appendKey:function(b,c,d){c=""+c;var e=this._local,f=this.options.persist,g=f.cookieDelimiter,h=e.cookiePrefix+b,i=e._data(h),j=i?i.split(g):[],k=a.inArray(c,j);k>=0&&j.splice(k,1),d&&j.push(c),e._data(h,j.join(g))},treeInit:function(d){var e=d.tree,k=d.options,l=this._local,m=this.options.persist;return f("auto"!==m.store&&"cookie"!==m.store||c,"Missing required plugin for 'persist' extension: js.cookie.js or jquery.cookie.js"),l.cookiePrefix=m.cookiePrefix||"fancytree-"+e._id+"-",l.storeActive=m.types.indexOf(g)>=0,l.storeExpanded=m.types.indexOf(h)>=0,l.storeSelected=m.types.indexOf(j)>=0,l.storeFocus=m.types.indexOf(i)>=0,"cookie"!==m.store&&window.localStorage?l.localStorage="local"===m.store?window.localStorage:window.sessionStorage:l.localStorage=null,e.$div.on("fancytreeinit",function(c){if(e._triggerTreeEvent("beforeRestore",null,{})!==!1){var d,f,n,o,p,q=l._data(l.cookiePrefix+i),r=m.fireActivate===!1;d=l._data(l.cookiePrefix+h),o=d&&d.split(m.cookieDelimiter),f=l.storeExpanded?b(e,l,o,!!m.expandLazy&&"expand",null):(new a.Deferred).resolve(),f.done(function(){if(l.storeSelected){if(d=l._data(l.cookiePrefix+j))for(o=d.split(m.cookieDelimiter),n=0;n<o.length;n++)p=e.getNodeByKey(o[n]),p?(void 0===p.selected||m.overrideSource&&p.selected===!1)&&(p.selected=!0,p.renderStatus()):l._appendKey(j,o[n],!1);3===e.options.selectMode&&e.visit(function(a){if(a.selected)return a.fixSelection3AfterClick(),"skip"})}l.storeActive&&(d=l._data(l.cookiePrefix+g),!d||!k.persist.overrideSource&&e.activeNode||(p=e.getNodeByKey(d),p&&(p.debug("persist: set active",d),p.setActive(!0,{noFocus:!0,noEvents:r})))),l.storeFocus&&q&&(p=e.getNodeByKey(q),p&&(e.options.titlesTabbable?a(p.span).find(".fancytree-title").focus():a(e.$container).focus())),e._triggerTreeEvent("restore",null,{})})}}),this._superApply(arguments)},nodeSetActive:function(a,b,c){var d,e=this._local;return b=b!==!1,d=this._superApply(arguments),e.storeActive&&e._data(e.cookiePrefix+g,this.activeNode?this.activeNode.key:null),d}
2017-05-23 08:32:19 +08:00
/*! Extension 'jquery.fancytree.table.min.js' */
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.fancytree"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";function b(b,c){c=c||"",b||a.error("Assertion failed "+c)}function c(a,b){a.insertBefore(b,a.firstChild)}function d(a,b){a.parentNode.insertBefore(b,a.nextSibling)}function e(a,b){a.visit(function(a){var c=a.tr;if(c&&(c.style.display=a.hide||!b?"none":""),!a.expanded)return"skip"})}function f(c){var d,e,f,g=c.parent,h=g?g.children:null;if(h&&h.length>1&&h[0]!==c)for(d=a.inArray(c,h),f=h[d-1],b(f.tr);f.children&&f.children.length&&(e=f.children[f.children.length-1],e.tr);)f=e;else f=g;return f}return a.ui.fancytree.registerExtension({name:"table",version:"2.26.0",options:{checkboxColumnIdx:null,indentation:16,nodeColumnIdx:0},treeInit:function(c){var d,e,f,g,h,i=c.tree,j=c.options,k=j.table,l=i.widget.element;if(null!=k.customStatus&&(null!=j.renderStatusColumns?a.error("The 'customStatus' option is deprecated since v2.15.0. Use 'renderStatusColumns' only instead."):(i.warn("The 'customStatus' option is deprecated since v2.15.0. Use 'renderStatusColumns' instead."),j.renderStatusColumns=k.customStatus)),j.renderStatusColumns&&j.renderStatusColumns===!0&&(j.renderStatusColumns=j.renderColumns),l.addClass("fancytree-container fancytree-ext-table"),i.tbody=l.find(">tbody")[0],h=a(i.tbody),e=a("thead >tr:last >th",l).length,g=h.children("tr:first"),g.length)f=g.children("td").length,e&&f!==e&&(i.warn("Column count mismatch between thead ("+e+") and tbody ("+f+"): using tbody."),e=f),g=g.clone();else for(b(e>=1,"Need either <thead> or <tbody> with <td> elements to determine column count."),g=a("<tr />"),d=0;d<e;d++)g.append("<td />");g.find(">td").eq(k.nodeColumnIdx).html("<span class='fancytree-node' />"),j.aria&&(g.attr("role","row"),g.find("td").attr("role","gridcell")),i.rowFragment=document.createDocumentFragment(),i.rowFragment.appendChild(g.get(0)),h.empty(),i.statusClassPropName="tr",i.ariaPropName="tr",this.nodeContainerAttrName="tr",i.$container=l,this._superApply(arguments),a(i.rootNode.ul).remove(),i.rootNode.ul=null,this.$container.attr("tabindex",j.tabindex),j.aria&&i.$container.attr("role","treegrid").attr("aria-readonly",!0)},nodeRemoveChildMarkup:function(b){var c=b.node;c.visit(function(b){b.tr&&(a(b.tr).remove(),b.tr=null)})},nodeRemoveMarkup:function(b){var c=b.node;c.tr&&(a(c.tr).remove(),c.tr=null),this.nodeRemoveChildMarkup(b)},nodeRender:function(g,h,i,j,k){var l,m,n,o,p,q,r,s,t=g.tree,u=g.node,v=g.options,w=!u.parent;if(t._enableUpdate!==!1){if(k||(g.hasCollapsedParents=u.parent&&!u.parent.expanded),!w)if(u.tr&&h&&this.nodeRemoveMarkup(g),u.tr)h?this.nodeRenderTitle(g):this.nodeRenderStatus(g);else{if(g.hasCollapsedParents&&!i)return;p=t.rowFragment.firstChild.cloneNode(!0),q=f(u),b(q),j===!0&&k?p.style.display="none":i&&g.hasCollapsedParents&&(p.style.display="none"),q.tr?d(q.tr,p):(b(!q.parent,"prev. row must have a tr, or be system root"),c(t.tbody,p)),u.tr=p,u.key&&v.generateIds&&(u.tr.id=v.idPrefix+u.key),u.tr.ftnode=u,u.span=a("span.fancytree-node",u.tr).get(0),this.nodeRenderTitle(g),v.createNode&&v.createNode.call(t,{type:"createNode"},g)}if(v.renderNode&&v.renderNode.call(t,{type:"renderNode"},g),l=u.children,l&&(w||i||u.expanded))for(n=0,o=l.length;n<o;n++)s=a.extend({},g,{node:l[n]}),s.hasCollapsedParents=s.hasCollapsedParents||!u.expanded,this.nodeRender(s,h,i,j,!0);l&&!k&&(r=u.tr||null,m=t.tbody.firstChild,u.visit(function(a){if(a.tr){if(a.parent.expanded||"none"===a.tr.style.display||(a.tr.style.display="none",e(a,!1)),a.tr.previousSibling!==r){u.debug("_fixOrder: mismatch at node: "+a);var b=r?r.nextSibling:m;t.tbody.insertBefore(a.tr,b)}r=a.tr}}))}},nodeRenderTitle:function(b,c){var d,e,f=b.node,g=b.options,h=f.isStatusNode();return e=this._super(b,c),f.isRootNode()?e:(g.checkbox&&!h&&null!=g.table.checkboxColumnIdx&&(d=a("span.fancytree-checkbox",f.span),a(f.tr).find("td").eq(+g.table.checkboxColumnIdx).html(d)),this.nodeRenderStatus(b),h?g.renderStatusC
2017-05-23 08:32:19 +08:00
/*! Extension 'jquery.fancytree.themeroller.min.js' */
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.fancytree"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";return a.ui.fancytree.registerExtension({name:"themeroller",version:"2.26.0",options:{activeClass:"ui-state-active",addClass:"ui-corner-all",focusClass:"ui-state-focus",hoverClass:"ui-state-hover",selectedClass:"ui-state-highlight"},treeInit:function(b){var c=b.widget.element,d=b.options.themeroller;this._superApply(arguments),"TABLE"===c[0].nodeName?(c.addClass("ui-widget ui-corner-all"),c.find(">thead tr").addClass("ui-widget-header"),c.find(">tbody").addClass("ui-widget-conent")):c.addClass("ui-widget ui-widget-content ui-corner-all"),c.delegate(".fancytree-node","mouseenter mouseleave",function(b){var c=a.ui.fancytree.getNode(b.target),e="mouseenter"===b.type;a(c.tr?c.tr:c.span).toggleClass(d.hoverClass+" "+d.addClass,e)})},treeDestroy:function(a){this._superApply(arguments),a.widget.element.removeClass("ui-widget ui-widget-content ui-corner-all")},nodeRenderStatus:function(b){var c={},d=b.node,e=a(d.tr?d.tr:d.span),f=b.options.themeroller;this._super(b),c[f.activeClass]=!1,c[f.focusClass]=!1,c[f.selectedClass]=!1,d.isActive()&&(c[f.activeClass]=!0),d.hasFocus()&&(c[f.focusClass]=!0),d.isSelected()&&!d.isActive()&&(c[f.selectedClass]=!0),e.toggleClass(f.activeClass,c[f.activeClass]),e.toggleClass(f.focusClass,c[f.focusClass]),e.toggleClass(f.selectedClass,c[f.selectedClass]),e.addClass(f.addClass)}}),a.ui.fancytree});
2017-05-23 08:32:19 +08:00
/*! Extension 'jquery.fancytree.wide.min.js' */
2017-12-16 13:19:15 +08:00
!function(a){"function"==typeof define&&define.amd?define(["jquery","./jquery.fancytree"],a):"object"==typeof module&&module.exports?(require("jquery.fancytree"),module.exports=a(require("jquery"))):a(jQuery)}(function(a){"use strict";function b(b,c){b="fancytree-style-"+b;var d=a("#"+b);if(!c)return d.remove(),null;d.length||(d=a("<style />").attr("id",b).addClass("fancytree-style").prop("type","text/css").appendTo("head"));try{d.html(c)}catch(e){d[0].styleSheet.cssText=c}return d}function c(a,b,c,d,e,f){var g,h="#"+a+" span.fancytree-level-",i=[];for(g=0;g<b;g++)i.push(h+(g+1)+" span.fancytree-title { padding-left: "+(g*c+d)+f+"; }");return i.push("#"+a+" div.ui-effects-wrapper ul li span.fancytree-title, #"+a+" ul.fancytree-animating span.fancytree-title { padding-left: "+e+f+"; position: static; width: auto; }"),i.join("\n")}var d=/^([+-]?(?:\d+|\d*\.\d+))([a-z]*|%)$/;return a.ui.fancytree.registerExtension({name:"wide",version:"2.26.0",options:{iconWidth:null,iconSpacing:null,labelSpacing:null,levelOfs:null},treeCreate:function(e){this._superApply(arguments),this.$container.addClass("fancytree-ext-wide");var f,g,h,i,j,k,l=e.options.wide,m=a("<li id='fancytreeTemp'><span class='fancytree-node'><span class='fancytree-icon' /><span class='fancytree-title' /></span><ul />").appendTo(e.tree.$container),n=m.find(".fancytree-icon"),o=m.find("ul"),p=l.iconSpacing||n.css("margin-left"),q=l.iconWidth||n.css("width"),r=l.labelSpacing||"3px",s=l.levelOfs||o.css("padding-left");m.remove(),h=p.match(d)[2],p=parseFloat(p,10),i=r.match(d)[2],r=parseFloat(r,10),j=q.match(d)[2],q=parseFloat(q,10),k=s.match(d)[2],h===j&&k===j&&i===j||a.error("iconWidth, iconSpacing, and levelOfs must have the same css measure unit"),this._local.measureUnit=j,this._local.levelOfs=parseFloat(s),this._local.lineOfs=(1+(e.options.checkbox?1:0)+(e.options.icon===!1?0:1))*(q+p)+p,this._local.labelOfs=r,this._local.maxDepth=10,f=this.$container.uniqueId().attr("id"),g=c(f,this._local.maxDepth,this._local.levelOfs,this._local.lineOfs,this._local.labelOfs,this._local.measureUnit),b(f,g)},treeDestroy:function(a){return b(this.$container.attr("id"),null),this._superApply(arguments)},nodeRenderStatus:function(d){var e,f,g,h=d.node,i=h.getLevel();return g=this._super(d),i>this._local.maxDepth&&(e=this.$container.attr("id"),this._local.maxDepth*=2,h.debug("Define global ext-wide css up to level "+this._local.maxDepth),f=c(e,this._local.maxDepth,this._local.levelOfs,this._local.lineOfs,this._local.labelSpacing,this._local.measureUnit),b(e,f)),a(h.span).addClass("fancytree-level-"+i),g}}),a.ui.fancytree});
// Value returned by `require('jquery.fancytree')`
return $.ui.fancytree;
})); // End of closure