
!function(e){var t={};function i(s){if(t[s])return t[s].exports;var n=t[s]={i:s,l:!1,exports:{}};return e[s].call(n.exports,n,n.exports,i),n.l=!0,n.exports}i.m=e,i.c=t,i.d=function(e,t,s){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:s})},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&
e.__esModule)return e;var s=Object.create(null);if(i.r(s),Object.defineProperty(s,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)i.d(s,n,function(t){return e[t]}.bind(null,n));return s},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s=0)}([function(e,t,i){i.r(t);i(1);!function(e,t){if(!e||!e.document)throw new Error("simTree need window");
!function(e){var t,i=e.document,s={linkParent:!1,response:{name:"name",id:"id",pid:"pid",checked:"checked",open:"open",disabled:"disabled"}},n=function(e){throw new Error(e);},a=function(e,t){return e.replace(/\{\{(.+?)\}\}/g,function(e,i){return t[i]?t[i]:""})},r=function e(t){if("undefined"==typeof $&&n("simTreeneed jquery"),$.isPlainObject(t)){if(t.el||n("\u4f60\u6ca1\u6709\u4f20el"),!(this instanceof e))return new e(t);this.options=$.extend(!0,{},s,t),this.init()}},d=[],o=[];r.prototype={version:"0.0.2",
constructor:r,on:function(e,t,i){var s,n;return this.handles[e]=this.handles[e]||[],s=this.handles[e].isTriggered,n=this.handles[e].args,$.isFunction(t)&&(!0===i?this.handles[e]=[t]:this.handles[e].push(t),s&&t.call(this,n)),this},off:function(e){return this.handles[e]=[],this},trigger:function(e,t){var i,s;for(this.handles[e]=this.handles[e]||[],i=0,s=this.handles[e].length,this.handles[e].isTriggered=!0,this.handles[e].args=t;i<s;i++)this.handles[e][i].call(this,t)},init:function(){var e=this.options,
t=e.data;this.handles={},this.$el=$(e.el),this.data=t,this.event(),this.render()},dataCallback:function(){var e=arguments;1===e.length?this.render(e[0]):this.doRender(e[0],e[1])},parse:function(e){var t=this.options,i=t.response,s=[],n={},a=0,r=e.length,d=i.id,o=i.pid;if(t.childNodeAsy)return e;for(;a<r;a++){var h=e[a],c=h[d];if(h.children)return e;c&&(n[c]=h)}for(a=0;a<r;a++){var h=e[a],l=h[o],u=n[l];l&&u?(u.children||(u.children=[])).push(h):s.push(h)}return s},render:function(e){var e=e||this.data;
$.isFunction(e)&&e({},this.dataCallback.bind(this)),$.isArray(e)&&(e=this.parse(e),this.doRender(this.$el,e))},doRender:function(e,t,s){var n,r,h,c,l,u=this,f=this.options,p=f.response,m=t.length,g=0,v=p.id,k=p.name,s=s||1,C='\x3ci data-type\x3d"{{asy}}" class\x3d"sim-tree-spread {{spreadIcon}}"\x3e\x3c/i\x3e\x3ca href\x3d"javascript:;"\x3e\x3ci class\x3d"sim-tree-checkbox"\x3e\x3c/i\x3e{{text}}\x3c/a\x3e',b=e===this.$el,y=$(i.createElement("ul")),w=f.childNodeAsy?"asy":"";for(f.check||(C=C.replace('\x3ci class\x3d"sim-tree-checkbox"\x3e\x3c/i\x3e',
""));g<m;g++)n=t[g],r=i.createElement("li"),c=!!n.children,l=n[p.disabled],r.innerHTML=a(C,{asy:w,text:n[k],spreadIcon:c?"sim-icon-r":"hidden"}),r.setAttribute("data-level",s),r.setAttribute("data-id",n[v]),l&&r.setAttribute("class","disabled"),(h=$(r)).data("data",n),y.append(h),c&&this.doRender(h,n.children,s+1),n[p.checked]&&d.push(n[v]),n[p.open]&&o.push(n[v]);m&&e.append(y),b?(y.addClass("sim-tree"),this.trigger("done",t),$.each(o,function(e,t){u.expandNode(t)}),this.setSelected(d)):f.childNodeAsy&&
(this.hideLoading(e.find(".sim-tree-spread")),y.addClass("show"))},event:function(){var e=this;this.$el.off("click").on("click",function(t){var i=$(t.target);return i.hasClass("sim-tree-spread")&&e.spread.call(e,i),i.hasClass("sim-tree-checkbox")&&(i=i.parent()),"a"===i[0].tagName.toLowerCase()&&e.clickNode.call(e,i),!1}),this.$el.on("selectstart",function(){return!1}),this.options.done&&this.on("done",this.options.done),this.options.onClick&&this.on("click",this.options.onClick),this.options.onChange&&
this.on("change",this.options.onChange),this.options.onSearch&&this.on("search",this.options.onSearch)},spread:function(e){e.hasClass("sim-icon-r")?this.doSpread(e,!0):this.doSpread(e,!1)},showLoading:function(e){e.addClass("sim-loading")},hideLoading:function(e){e.removeClass("sim-loading")},doSpread:function(e,t){var i=e.parent(),s=i.children("ul"),n=i.data("data");n.children&&(t?(e.removeClass("sim-icon-r").addClass("sim-icon-d"),"asy"===e.data("type")&&$.isFunction(this.data)&&(this.showLoading(e),
this.data(i.data("data"),this.dataCallback.bind(this,i)),e.data("type","")),s.addClass("show")):(e.removeClass("sim-icon-d").addClass("sim-icon-r"),s.removeClass("show")))},clickNode:function(e){var i,s,n,a=this,r=e.parent(),d=this.$el.find("li"),o=d.length,h=0,c=[],l=!1;if(!r.hasClass("disabled")){if(this.options.check)for(l=!0,this.doCheck(e.find(".sim-tree-checkbox")),this.options.linkParent&&(s=r.children("ul"),n=s.find(".sim-tree-checkbox"),$.each(n,function(){a.doCheck($(this),r.data("checked"),
!0)}));h<o;h++)!0===(i=d.eq(h).data()).checked&&c.push(i.data);else t&&t.css("font-weight","normal"),e.css("font-weight","bold"),t=e,i=r.data("data"),c=[i],l=!this.sels||!(this.sels[0]===i);this.sels=c,this.trigger("click",c),l&&this.trigger("change",c)}},doCheck:function(e,t,i){var s=e.closest("li"),n=s.data();void 0===t&&(t=!n.checked),!0===t?e.removeClass("sim-tree-semi").addClass("checked"):!1===t?e.removeClass("checked sim-tree-semi"):"semi"===t&&e.removeClass("checked").addClass("sim-tree-semi"),
s.data("checked",t),!0===this.options.linkParent&&!i&&this.setParentCheck(s)},setParentCheck:function(e){var t,i=e.parent("ul"),s=i.parent("li"),n=i.children("li"),a=s.find("\x3ea .sim-tree-checkbox"),r=[],d=n.length;s.length&&(e.find("\x3ea .sim-tree-checkbox").hasClass("sim-tree-semi")?this.doCheck(a,"semi"):($.each(n,function(){!0===$(this).data("checked")&&r.push($(this))}),t=r.length,d===t&&this.doCheck(a,!0),t||this.doCheck(a,!1),t>=1&&t<d&&this.doCheck(a,"semi")))},search:function(e){if(this.$el){var t,
i,s,e=$.trim(e),n=this.$el.find("li"),a=0,r=n.length,d=[],o=new RegExp(e,"i");for(n.hide().children(".sim-tree-spread").addClass("hidden");a<r;a++)i=n.eq(a),t=i.children("a").text(),s=i.data("data"),e?-1!==t.search(o)&&(1!==parseInt(i.data("level"))&&this.expandNode(s[this.options.response.pid]),i.parents("li").add(i).show(),d.push(i)):(i.show(),s.children&&i.children(".sim-tree-spread").removeClass("hidden"));this.trigger("search",e)}},expandNode:function(e){var t=e.addClass?e:this.$el.find("[data-id\x3d"+
e+"]"),i=t.data("data"),s=i[this.options.response.pid],n=t.children(".sim-tree-spread"),a=parseInt(t.data("level"));i.children&&n.length&&(n.removeClass("hidden"),this.doSpread(n,!0)),1!==a&&this.expandNode(s)},setSelected:function(e){var t=this,i=e,s=[],n=[];"string"!=typeof i&&"number"!=typeof i||(i=[i]),$.isArray(i)&&(this.options.check||(i=[i[0]]),$.each(i,function(e,i){var a=t.$el.find("[data-id\x3d"+i+"]"),r=a.children("a"),d=r.children(".sim-tree-checkbox"),o=a.data("data");if(!a.length)return!0;
d.length?t.doCheck(d,!0):r.css("font-weight","bold"),1!==parseInt(a.data("level"))&&t.expandNode(o[t.options.response.pid]),s.push(o),n.push(a[0])}),t.sels=s,t.trigger("click",s))},getSelected:function(){return this.sels},disableNode:function(e){var t=this,i=e;"string"!=typeof i&&"number"!=typeof i||(i=[i]),$.isArray(i)&&$.each(i,function(e,i){var s=t.$el.find("[data-id\x3d"+i+"]");s.addClass("disabled")})},destroy:function(){for(var e in this.$el.html(""),this)delete this[e]},refresh:function(e){this.$el.html(""),
this.render(e)}},e.simTree=r,$.fn.simTree=function(e){return e=$.extend(!0,{el:this},e),r(e)}}(e)}("undefined"!=typeof window?window:void 0)},function(e,t,i){}]);
