From 7569eac0ef772db3fd8388127d895d9a465290c2 Mon Sep 17 00:00:00 2001 From: wangzemei Date: Wed, 28 Sep 2022 16:10:00 +0800 Subject: [PATCH] * modify kanban --- www/js/zui/kanban/min.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/www/js/zui/kanban/min.js b/www/js/zui/kanban/min.js index 80ba988f53..22c4831583 100644 --- a/www/js/zui/kanban/min.js +++ b/www/js/zui/kanban/min.js @@ -1,7 +1,7 @@ /*! - * ZUI: ZUI kanban - v1.10.0 - 2022-07-19 + * ZUI: ZUI kanban - v1.10.0 - 2022-09-28 * http://openzui.com * GitHub: https://github.com/easysoft/zui.git * Copyright (c) 2022 cnezsoft.com; Licensed MIT */ -!function(){"use strict";function e(e,a){return n&&!a?requestAnimationFrame(e):setTimeout(e,a||0)}function a(e){return n?cancelAnimationFrame(e):void clearTimeout(e)}var n="function"==typeof window.requestAnimationFrame;$.zui({asap:e,clearAsap:a})}(),function(e){"use strict";function a(a,n){"string"==typeof a&&(a=e(a)),a instanceof e&&(a=a[0]);var t=a.getBoundingClientRect(),r=window.innerHeight||document.documentElement.clientHeight,i=window.innerWidth||document.documentElement.clientWidth;if(n)return t.left>=0&&t.top>=0&&t.left+t.width<=i&&t.top+t.height<=r;var o=t.top<=r&&t.top+t.height>=0,d=t.left<=i&&t.left+t.width>=0;return o&&d}var n="zui.virtualRender",t=function(a,r){"function"==typeof r&&(r={render:r});var i=this;i.name=n,i.$=e(a),i.options=r=e.extend({trigger:"scroll resize"},t.DEFAULTS,this.$.data(),r),i.rendered=!1;var o=r.container;"function"==typeof o&&(o=o(i));var d=e(o?o:window);i.tryRender()||(i.$container=d,i.scrollListener=i.tryRender.bind(i),r.pendingClass&&i.$.addClass(r.pendingClass),d.on(r.trigger,i.scrollListener))};t.prototype.tryRender=function(){var n=this;return!(n.rendered||!a(n.$))&&(n.renderTaskID&&e.zui.clearAsap(n.renderTaskID),n.renderTaskID=e.zui.asap(function(){n.renderTaskID=null;var e=n.options.render(n.$);e!==!1&&(n.rendered=!0,n.destroy())},n.options.delay),!0)},t.prototype.destroy=function(){var a=this;a.renderTaskID&&e.zui.clearAsap(a.renderTaskID),a.scrollListener&&(a.$container.off(a.options.trigger,a.scrollListener),a.scrollListener=null);var t=a.options.pendingClass;t&&a.$.removeClass(t),a.$.removeData(n)},t.DEFAULTS={pendingClass:"virtual-pending"},e.fn.virtualRender=function(a){return this.each(function(){var r=e(this),i=r.data(n);if(i){if("string"==typeof a)return i[a]();i.destroy()}r.data(n,i=new t(this,a))})},e.zui.isElementInViewport=a}(jQuery),function(e){"use strict";var a="zui.virtuallist",n=function(t,r){"function"==typeof r&&(r={render:r});var i=this;i.name=a,i.$=e(t),i.options=r=e.extend({},n.DEFAULTS,this.$.data(),r),i.scrollTop=this.options.scrollTop||0,i.render(r.list,r.scrollTop);var o=0;i.$.on("scroll."+a,function(){if(i.$.data("ignore-next-scroll"))return i.$.data("ignore-next-scroll",!1);if(!i.rendering){var a=i.$.scrollTop();a!==i.scrollTop&&(i.scrollTop=a,o&&e.zui.clearAsap(o),o=e.zui.asap(function(){o=0,i.render()}))}}),i.$.on("resize."+a,function(){i.rendering||(o&&e.zui.clearAsap(o),o=e.zui.asap(function(){o=0,i.render()}))})};n.prototype.render=function(a,n){var t=this;a?t.list=a:a=t.list,n&&e.extend(this.options,n),t.rendering=!0;var r=t.scrollTop,i=t.$,o=t.options.itemClassName,d=t.options.itemHeight,s=t.options.countPerRow,l=Number.parseFloat(i.css("padding-top"),10),c=Array.isArray(a),u="number"==typeof a?a:a.length,h=i.outerHeight(),p="virtual-list-item-expired",b=i.children(".virtual-list-holder-top"),v=i.children(".virtual-list-holder-bottom");b.length||(b=e('
').prependTo(i)),v.length||(v=e('
').appendTo(i)),i.children("."+o).addClass(p).addClass("hidden");var f=Math.max(0,s*Math.floor((r-l)/d-1)),m=Math.min(u-1,1+s*Math.ceil((r-l+h)/d)),g=Math.ceil(f/s)*d,k=Math.ceil((u-m-1)/s)*d;b.height(g);for(var C=f;C<=m;C++){var x=t.options.render(C,a,c?a[C]:null);x.addClass(o).removeClass(p).removeClass("hidden")}return v.height(k),i.children("."+p).remove(),b.prependTo(i),v.appendTo(i),t.scrollHeight=t.$[0].scrollHeight,t.rendering=!1,r=Math.min(t.scrollHeight-h,Math.max(g,r)),t.scrollTop=r,r!==t.$.scrollTop()&&t.$.data("ignore-next-scroll",!0).scrollTop(r),!0},n.prototype.destroy=function(){that.$.off("."+a)},n.DEFAULTS={itemClassName:"virtual-list-item",countPerRow:1},e.fn.virtualList=function(t){return this.each(function(){var r=e(this),i=r.data(a);if(i){if("string"==typeof t)return i[t]();i.destroy()}r.data(a,i=new n(this,t))})}}(jQuery),function(e){"use strict";var a="zui.kanban",n="object"==typeof CSS&&CSS.supports("display","flex"),t=function(n,r){var i=this;if(i.name=a,i.$=e(n).addClass("kanban"),r=i.setOptions(e.extend({},t.DEFAULTS,this.$.data(),r)),r.onAction){var o=function(a){var n=e(this);r.onAction(n.data("action"),n,a,i)};i.$.on("click",".action",o).on("dblclick",".action-dbc",o)}var d=r.droppable;if("auto"===d&&(d=!r.readonly),d){var s=r.sortable;"function"==typeof s?s={finish:s}:s&&"object"!=typeof s&&(s={});var l=0;"function"==typeof d?d={drop:d}:"object"!=typeof d&&(d={});var c=e.extend({dropOnMouseleave:!0,selector:".kanban-item",target:".kanban-lane-col:not(.kanban-col-sorting)",mouseButton:"left"},d,{before:function(a){if(d.before){var n=d.before(a);if(n===!1)return n}if(s){var t=a.element.closest(".kanban-lane-items");t.closest(".kanban-col").addClass("kanban-col-sorting"),i._sortResult=null,i._$sortItems=t;var r=t.data("zui.sortable");r||t.sortable(e.extend({},s,{selector:".kanban-item",trigger:".kanban-card",dragCssClass:"kanban-item-sorting",noShadow:!0,finish:function(e){e.changed&&e.list.length>1&&(i._sortResult=e)}})).triggerHandler(a.event)}},drop:function(e){d.drop&&d.drop(e),r.onAction&&r.onAction("dropItem",e.element,e,i)},start:function(a){i.$.addClass("kanban-dragging"),l&&clearTimeout(l),l=setTimeout(function(){e(a.shadowElement).addClass("in"),l=0},50),d.start&&d.start(a)},always:function(e){if(i.$.removeClass("kanban-dragging"),l&&(clearTimeout(l),l=0),s){var a=i._sortResult;if(i._$sortItems.sortable("destroy").closest(".kanban-col").removeClass("kanban-col-sorting"),a&&a.target&&a.target.closest(".kanban-lane-col")[0]===e.target[0]){var n=a.element.closest(".kanban-lane-items").data("cards"),t=String(a.element.data("id")),r=String(a.target.data("id")),o=n.map(function(e){return e.id}),c=o.indexOf(t);o.splice(c,1);var u=n.splice(c,1),h=o.indexOf(r)+("before"===a.insert?0:1);o.splice(h,0,c),n.splice(h,0,u[0]),a.orders=o,a.cards=n,s.finish&&s.finish(a)}}d.always&&d.always(e)}});i.$.droppable(c)}r.onCreate&&r.onCreate(i)};t.prototype.setOptions=function(a){var t=this,r=e.extend({},t.options,{data:t.data},a);t.options=r,r.useFlex&&!n&&(r.useFlex=!1),t.$.toggleClass("no-flex",!r.useFlex).toggleClass("use-flex",!!r.useFlex);var i=!!e.fn.virtualRender&&r.virtualize;return i&&("object"!=typeof i&&(i={lane:!0}),t.virtualize=e.extend({},i)),t.data=r.data||[],t.render(t.data),r},t.prototype.render=function(a){var n=this;a&&(n.data=a),n.data&&!Array.isArray(n.data)&&(n.data=[n.data]);var t,r=n.options,i=n.data||[];r.fixScroll&&(t=e(window).scrollTop(),e(window).height()+t===document.body.scrollHeight&&(t="bottom")),r.beforeRender&&r.beforeRender(n,i),n.$.toggleClass("kanban-readonly",!!r.readonly).toggleClass("kanban-no-lane-name",!!r.noLaneName),n.$.children(".kanban-board").addClass("kanban-expired"),n.maxKanbanBoardWidth=0;for(var o=0;o1&&n.$.children(".kanban-board").css("min-width",n.maxKanbanBoardWidth),t&&e(window).scrollTop("bottom"===t?document.body.scrollHeight:t),r.onRender&&r.onRender(n)},t.prototype.layoutKanban=function(e,a){for(var n=this,t=n.options,r=t.noLaneName?0:t.laneNameWidth,i=0,o={},d=!1,s=[],l=0;l0&&t.subLaneSpace&&(g.$height+=t.subLaneSpace)}}else for(var y=g.items||g.cards||{},C=0;C-1){var r=n.data[t];a=e.extend(r,a),n.data[t]=a}else n.data.push(a)}a.id||(a.id=e.zui.uuid());var i=a.id,o=n.options,d=n.$,s=d.children('.kanban-board[data-id="'+i+'"]');s.length?s.removeClass("kanban-expired"):s=e('
').appendTo(d),n.layoutKanban(a,s),n.renderKanbanHeader(a,s),s.children(".kanban-lane").addClass("kanban-expired");for(var l=a.lanes||[],c=null,u=0;u
').prependTo(n),r.useFlex||o.addClass("clearfix")),o.css("height",(i?2:1)*r.headerHeight).toggleClass("kanban-header-has-parent",!!i);var d=o.children(".kanban-cols");d.css("left",a.$layout.laneNameWidth).children(".kanban-col").addClass("kanban-expired");for(var s=a.columns,l=a.$layout.columnsMap||{},c=null,u=null,h=0;h.kanban-col").addClass("kanban-expired"):d=e(['
','
','
','','',o.showCount?'':"","
","
",'
',"
","
"].join("")),s&&s.length?s.after(d):n.prepend(d),d.data("col",a).attr("data-type",a.type);var l=r.$layout.columnWidth;o.useFlex&&a.subs?d.css("flex",(a.subs.length||0)+" "+(a.subs.length||0)+" "+l*(a.subs.length||0)+"%"):d.css({width:l*(a.subs.length||0)+"%",left:a.$index*l+"%"});var c=d.children(".kanban-header-col");c.find(".title>.icon").attr("class","icon icon-"+(a.icon||""));var u=c.find(".title>.text").text(a.name).attr("title",a.name);if(a.color&&u.css("color",a.color),o.showCount){var h=void 0!==a.count?a.count:a.$cardsCount||0;o.showZeroCount||h||(h="");var p=c.find(".title>.count").text(h);o.onRenderCount&&o.onRenderCount(p,h,a,i)}o.onRenderHeaderCol&&o.onRenderHeaderCol(d,a,n,r)},t.prototype.renderHeaderCol=function(a,n,t,r,i){var o=this,d=o.options,s=a.parentType&&t;if(s){var l=n.children('.kanban-header-parent-col[data-id="'+t.id+'"]');n=l.children(".kanban-header-sub-cols")}var c=n.children('.kanban-header-col[data-id="'+a.id+'"]'),u=r?n.children('.kanban-header-col[data-id="'+r.id+'"]:not(.kanban-expired)'):null;!s&&c.length&&c.hasClass("kanban-header-parent-col")&&(c.remove(),c.length=0),c.length?c.removeClass("kanban-expired"):c=e(['
','
','','',d.showCount?'':"","
",'
',"
"].join("")),u&&u.length?u.after(c):n.prepend(c),c.data("col",a).attr("data-type",a.type);var h=t&&t.subs&&t.subs.length?100/t.subs.length:i.$layout.columnWidth;d.useFlex?c.css("flex","1 1 "+h+"%"):c.css({left:(t?a.$subIndex:a.$index)*h+"%",width:h+"%"}),c.find(".title>.icon").attr("class","icon icon-"+(a.icon||""));var p=c.find(".title>.text").text(a.name).attr("title",a.name);if(a.color&&p.css("color",a.color),d.showCount){var b=void 0!==a.count?a.count:a.$cardsCount||0;d.showZeroCount||b||(b="");var v=c.find(".title>.count").text(b);d.onRenderCount&&d.onRenderCount(v,b,a,o)}d.onRenderHeaderCol&&d.onRenderHeaderCol(c,a,n,i)},t.prototype.renderLane=function(a,t,r,i,o){var d=this,s=d.options;i=i||d.$.children('.kanban-board[data-id="'+a.kanban+'"]');var l=i.children('.kanban-lane[data-id="'+a.id+'"]'),c=t?i.children('.kanban-lane[data-id="'+t.id+'"]:not(.kanban-expired)'):null;l.length?l.removeClass("kanban-expired"):(l=e('
'),n||l.addClass("clearfix")),c&&c.length?c.after(l):i.children(".kanban-header").after(l);var u=a.subLanes?a.subLanes.length:0;l.attr("data-index",a.$index).data("lane",a).toggleClass("has-sub-lane",u>0).css({height:a.$height||"auto"}),d.virtualizeRender(o,"lane",l,function(){if(!s.noLaneName){var n=l.children('.kanban-lane-name[data-id="'+a.id+'"]');n.length||(n=e('
').prependTo(l)),n.empty().css("width",s.laneNameWidth).attr("title",a.name).append(e('').text(a.name)),a.color&&n.css("background-color",a.color),s.onRenderLaneName&&s.onRenderLaneName(n,a,i,r,o)}l.children(".kanban-cols,.kanban-sub-lanes").addClass("kanban-expired");var t;t=a.subLanes?d.renderSubLanes(a,r,l,o):d.renderLaneCols(r,a.items||a.cards||{},l,a,o),s.useFlex||t.css("left",o.$layout.laneNameWidth),l.children(".kanban-expired").remove()},{lane:a,columns:r,kanban:o})},t.prototype.virtualizeRender=function(a,n,t,r,i){var o=this,d=o.virtualize,s=d?d[n]:null;return s?("function"==typeof s&&(s=s(i,t)),"number"==typeof s&&t.height(s),void t.virtualRender(e.extend({render:r},o.options.virtualRenderOptions))):r()},t.prototype.renderSubLanes=function(a,n,t,r){var i=this,o=t.children(".kanban-sub-lanes");o.length?o.removeClass("kanban-expired"):o=e('
').appendTo(t),o.children(".kanban-sub-lane").addClass("kanban-expired");for(var d=0;d
').appendTo(r),n||d.addClass("clearfix")),d.attr("data-index",o).data("lane",a).css({height:a.$height||"auto"}),d.children(".kanban-col").addClass("kanban-expired");var s=a.items||a.cards;s&&this.renderLaneCols(t,s,d,a,i),d.children(".kanban-expired").remove()},t.prototype.renderLaneCols=function(a,n,t,r,i){var o=this,d=t.children(".kanban-cols");d.length?d.removeClass("kanban-expired"):d=e('
').appendTo(t),d.children(".kanban-col").addClass("kanban-expired");for(var s=null,l=0;l0?n[a-1]:null;return o.$index=a,o.$col=e,o.$lane=t,i.renderCard(o,d,s,e,t,r)}})}else{d.children(".kanban-item").addClass("kanban-expired");for(var c=0;c0?a[c-1]:null;u.$index=c,u.$col=e,u.$lane=t,i.renderCard(u,d,h,e,t,r)}d.children(".kanban-expired").remove()}d.css("padding",o.cardSpace/2).toggleClass("kanban-items-grid",s>1).attr("data-cards-per-row",s).data("cards",a)},t.prototype.renderLaneCol=function(a,n,t){var r=this,i=r.options,o=n.children('.kanban-lane-col[data-id="'+a.id+'"]'),d=t?n.children('.kanban-lane-col[data-id="'+t.id+'"]:not(.kanban-expired)'):null;o.length?o.removeClass("kanban-expired"):(o=e(['
','
',"
"].join("")),r.options.readonly||o.append(['
','","
"].join("")),i.laneItemsClass&&o.find(".kanban-lane-items").addClass(i.laneItemsClass),i.laneColClass&&o.addClass(i.laneColClass)),d&&d.length?d.after(o):n.prepend(o),o.attr({"data-parent":a.parentType?a.parentType:null,"data-type":a.type}).data("col",a);var s=a.$kanbanData.$layout.columnWidth;return i.useFlex?o.css("flex","1 1 "+s+"%"):o.css({left:a.$index*s+"%",width:s+"%"}),o},t.prototype.renderCard=function(a,n,t,r,i,o){var d=this.options,s=n.children('.kanban-item[data-id="'+a.id+'"]'),l=t?n.children('.kanban-item[data-id="'+t.id+'"]:not(.kanban-expired)'):null;s.length?s.removeClass("kanban-expired"):(s=e('
'),d.wrapCard&&s.append('
')),l&&l.length?l.after(s):n.prepend(s);var c=r.cardsPerRow||i.cardsPerRow||o.cardsPerRow||d.cardsPerRow;s.data("item",a).css({padding:d.cardSpace/2,width:c>1?100/c+"%":""});var u=d.wrapCard?s.children(".kanban-card"):s;u.css("height",d.cardHeight);var h=d.cardRender||d.itemRender;if(h)h(a,u,r,i,o);else{var p=u.find(".title");p.length||(p=e('
').appendTo(u)),p.text(a.name||a.title)}return s},t.DEFAULTS={minColWidth:100,maxColHeight:400,minColHeight:90,minSubColHeight:40,subLaneSpace:2,laneNameWidth:20,fixScroll:!0,headerHeight:32,cardHeight:40,cardSpace:10,cardsPerRow:1,wrapCard:!0,fluidBoardWidth:!0,addItemText:"添加条目",useFlex:!0,droppable:"auto",laneColClass:"",showCount:!0},e.fn.kanban=function(n){return this.each(function(){var r=e(this),i=r.data(a),o="object"==typeof n&&n;i||r.data(a,i=new t(this,o)),"string"==typeof n&&i[n]()})},t.NAME=a,e.fn.kanban.Constructor=t}(jQuery); \ No newline at end of file +!function(){"use strict";function a(a,e){return n&&!e?requestAnimationFrame(a):setTimeout(a,e||0)}function e(a){return n?cancelAnimationFrame(a):void clearTimeout(a)}var n="function"==typeof window.requestAnimationFrame;$.zui({asap:a,clearAsap:e})}(),function(a){"use strict";var e="zui.kanban",n="object"==typeof CSS&&CSS.supports("display","flex"),t=function(n,r){var d=this;if(d.name=e,d.$=a(n).addClass("kanban"),r=d.setOptions(a.extend({},t.DEFAULTS,this.$.data(),r)),r.onAction){var i=function(e){var n=a(this);r.onAction(n.data("action"),n,e,d)};d.$.on("click",".action",i).on("dblclick",".action-dbc",i)}var o=r.droppable;if("auto"===o&&(o=!r.readonly),o){var s=r.sortable;"function"==typeof s?s={finish:s}:s&&"object"!=typeof s&&(s={});var l=0;"function"==typeof o?o={drop:o}:"object"!=typeof o&&(o={});var c=a.extend({dropOnMouseleave:!0,selector:".kanban-item",target:".kanban-lane-col:not(.kanban-col-sorting)",mouseButton:"left"},o,{before:function(e){if(o.before){var n=o.before(e);if(n===!1)return n}if(s){var t=e.element.closest(".kanban-lane-items");t.closest(".kanban-col").addClass("kanban-col-sorting"),d._sortResult=null,d._$sortItems=t;var r=t.data("zui.sortable");r||t.sortable(a.extend({},s,{selector:".kanban-item",trigger:".kanban-card",dragCssClass:"kanban-item-sorting",noShadow:!0,finish:function(a){a.changed&&a.list.length>1&&(d._sortResult=a)}})).triggerHandler(e.event)}},drop:function(a){o.drop&&o.drop(a),r.onAction&&r.onAction("dropItem",a.element,a,d)},start:function(e){d.$.addClass("kanban-dragging"),l&&clearTimeout(l),l=setTimeout(function(){a(e.shadowElement).addClass("in"),l=0},50),o.start&&o.start(e)},always:function(a){if(d.$.removeClass("kanban-dragging"),l&&(clearTimeout(l),l=0),s){var e=d._sortResult;if(d._$sortItems.sortable("destroy").closest(".kanban-col").removeClass("kanban-col-sorting"),e&&e.target&&e.target.closest(".kanban-lane-col")[0]===a.target[0]){var n=e.element.closest(".kanban-lane-items").data("cards"),t=String(e.element.data("id")),r=String(e.target.data("id")),i=n.map(function(a){return a.id}),c=i.indexOf(t);i.splice(c,1);var h=n.splice(c,1),u=i.indexOf(r)+("before"===e.insert?0:1);i.splice(u,0,c),n.splice(u,0,h[0]),e.orders=i,e.cards=n,s.finish&&s.finish(e)}}o.always&&o.always(a)}});d.$.droppable(c)}r.onCreate&&r.onCreate(d)};t.prototype.setOptions=function(e){var t=this,r=a.extend({},t.options,{data:t.data},e);t.options=r,r.useFlex&&!n&&(r.useFlex=!1),t.$.toggleClass("no-flex",!r.useFlex).toggleClass("use-flex",!!r.useFlex);var d=!!a.fn.virtualRender&&r.virtualize;return d&&("object"!=typeof d&&(d={lane:!0}),t.virtualize=a.extend({},d)),t.data=r.data||[],t.render(t.data),r},t.prototype.render=function(e){var n=this;e&&(n.data=e),n.data&&!Array.isArray(n.data)&&(n.data=[n.data]);var t,r=n.options,d=n.data||[];r.fixScroll&&(t=a(window).scrollTop(),a(window).height()+t===document.body.scrollHeight&&(t="bottom")),r.beforeRender&&r.beforeRender(n,d),n.$.toggleClass("kanban-readonly",!!r.readonly).toggleClass("kanban-no-lane-name",!!r.noLaneName),n.$.children(".kanban-board").addClass("kanban-expired"),n.maxKanbanBoardWidth=0;for(var i=0;i1&&n.$.children(".kanban-board").css("min-width",n.maxKanbanBoardWidth),t&&a(window).scrollTop("bottom"===t?document.body.scrollHeight:t),r.onRender&&r.onRender(n)},t.prototype.layoutKanban=function(a,e){for(var n=this,t=n.options,r=t.noLaneName?0:t.laneNameWidth,d=0,i={},o=!1,s=[],l=0;l0&&t.subLaneSpace&&(g.$height+=t.subLaneSpace)}}else for(var $=g.items||g.cards||{},x=0;x-1){var r=n.data[t];e=a.extend(r,e),n.data[t]=e}else n.data.push(e)}e.id||(e.id=a.zui.uuid());var d=e.id,i=n.options,o=n.$,s=o.children('.kanban-board[data-id="'+d+'"]');s.length?s.removeClass("kanban-expired"):s=a('
').appendTo(o),n.layoutKanban(e,s),n.renderKanbanHeader(e,s),s.children(".kanban-lane").addClass("kanban-expired");for(var l=e.lanes||[],c=null,h=0;h
').prependTo(n),r.useFlex||i.addClass("clearfix")),i.css("height",(d?2:1)*r.headerHeight).toggleClass("kanban-header-has-parent",!!d);var o=i.children(".kanban-cols");o.css("left",e.$layout.laneNameWidth).children(".kanban-col").addClass("kanban-expired");for(var s=e.columns,l=e.$layout.columnsMap||{},c=null,h=null,u=0;u.kanban-col").addClass("kanban-expired"):o=a(['
','
','
','','',i.showCount?'':"","
","
",'
',"
","
"].join("")),s&&s.length?s.after(o):n.prepend(o),o.data("col",e).attr("data-type",e.type);var l=r.$layout.columnWidth;i.useFlex&&e.subs?o.css("flex",(e.subs.length||0)+" "+(e.subs.length||0)+" "+l*(e.subs.length||0)+"%"):o.css({width:l*(e.subs.length||0)+"%",left:e.$index*l+"%"});var c=o.children(".kanban-header-col");c.find(".title>.icon").attr("class","icon icon-"+(e.icon||""));var h=c.find(".title>.text").text(e.name).attr("title",e.name);if(e.color&&h.css("color",e.color),i.showCount){var u=void 0!==e.count?e.count:e.$cardsCount||0;i.showZeroCount||u||(u="");var b=c.find(".title>.count").text(u);i.onRenderCount&&i.onRenderCount(b,u,e,d)}i.onRenderHeaderCol&&i.onRenderHeaderCol(o,e,n,r)},t.prototype.renderHeaderCol=function(e,n,t,r,d){var i=this,o=i.options,s=e.parentType&&t;if(s){var l=n.children('.kanban-header-parent-col[data-id="'+t.id+'"]');n=l.children(".kanban-header-sub-cols")}var c=n.children('.kanban-header-col[data-id="'+e.id+'"]'),h=r?n.children('.kanban-header-col[data-id="'+r.id+'"]:not(.kanban-expired)'):null;!s&&c.length&&c.hasClass("kanban-header-parent-col")&&(c.remove(),c.length=0),c.length?c.removeClass("kanban-expired"):c=a(['
','
','','',o.showCount?'':"","
",'
',"
"].join("")),h&&h.length?h.after(c):n.prepend(c),c.data("col",e).attr("data-type",e.type);var u=t&&t.subs&&t.subs.length?100/t.subs.length:d.$layout.columnWidth;o.useFlex?c.css("flex","1 1 "+u+"%"):c.css({left:(t?e.$subIndex:e.$index)*u+"%",width:u+"%"}),c.find(".title>.icon").attr("class","icon icon-"+(e.icon||""));var b=c.find(".title>.text").text(e.name).attr("title",e.name);if(e.color&&b.css("color",e.color),o.showCount){var p=void 0!==e.count?e.count:e.$cardsCount||0;o.showZeroCount||p||(p="");var v=c.find(".title>.count").text(p);o.onRenderCount&&o.onRenderCount(v,p,e,i)}o.onRenderHeaderCol&&o.onRenderHeaderCol(c,e,n,d)},t.prototype.renderLane=function(e,t,r,d,i){var o=this,s=o.options;d=d||o.$.children('.kanban-board[data-id="'+e.kanban+'"]');var l=d.children('.kanban-lane[data-id="'+e.id+'"]'),c=t?d.children('.kanban-lane[data-id="'+t.id+'"]:not(.kanban-expired)'):null;l.length?l.removeClass("kanban-expired"):(l=a('
'),n||l.addClass("clearfix")),c&&c.length?c.after(l):d.children(".kanban-header").after(l);var h=e.subLanes?e.subLanes.length:0;l.attr("data-index",e.$index).data("lane",e).toggleClass("has-sub-lane",h>0).css({height:e.$height||"auto"}),o.virtualizeRender(i,"lane",l,function(){if(!s.noLaneName){var n=l.children('.kanban-lane-name[data-id="'+e.id+'"]');n.length||(n=a('
').prependTo(l)),n.empty().css("width",s.laneNameWidth).attr("title",e.name).append(a('').text(e.name)),e.color&&n.css("background-color",e.color),s.onRenderLaneName&&s.onRenderLaneName(n,e,d,r,i)}l.children(".kanban-cols,.kanban-sub-lanes").addClass("kanban-expired");var t;t=e.subLanes?o.renderSubLanes(e,r,l,i):o.renderLaneCols(r,e.items||e.cards||{},l,e,i),s.useFlex||t.css("left",i.$layout.laneNameWidth),l.children(".kanban-expired").remove()},{lane:e,columns:r,kanban:i})},t.prototype.virtualizeRender=function(e,n,t,r,d){var i=this,o=i.virtualize,s=o?o[n]:null;return s?("function"==typeof s&&(s=s(d,t)),"number"==typeof s&&t.height(s),void t.virtualRender(a.extend({render:r},i.options.virtualRenderOptions))):r()},t.prototype.renderSubLanes=function(e,n,t,r){var d=this,i=t.children(".kanban-sub-lanes");i.length?i.removeClass("kanban-expired"):i=a('
').appendTo(t),i.children(".kanban-sub-lane").addClass("kanban-expired");for(var o=0;o').appendTo(r),n||o.addClass("clearfix")),o.attr("data-index",i).data("lane",e).css({height:e.$height||"auto"}),o.children(".kanban-col").addClass("kanban-expired");var s=e.items||e.cards;s&&this.renderLaneCols(t,s,o,e,d),o.children(".kanban-expired").remove()},t.prototype.renderLaneCols=function(e,n,t,r,d){var i=this,o=t.children(".kanban-cols");o.length?o.removeClass("kanban-expired"):o=a('
').appendTo(t),o.children(".kanban-col").addClass("kanban-expired");for(var s=null,l=0;l0?n[e-1]:null;return i.$index=e,i.$col=a,i.$lane=t,d.renderCard(i,o,s,a,t,r)}})}else{o.children(".kanban-item").addClass("kanban-expired");for(var c=0;c0?e[c-1]:null;h.$index=c,h.$col=a,h.$lane=t,d.renderCard(h,o,u,a,t,r)}o.children(".kanban-expired").remove()}o.css("padding",i.cardSpace/2).toggleClass("kanban-items-grid",s>1).attr("data-cards-per-row",s).data("cards",e)},t.prototype.renderLaneCol=function(e,n,t){var r=this,d=r.options,i=n.children('.kanban-lane-col[data-id="'+e.id+'"]'),o=t?n.children('.kanban-lane-col[data-id="'+t.id+'"]:not(.kanban-expired)'):null;i.length?i.removeClass("kanban-expired"):(i=a(['
','
',"
"].join("")),r.options.readonly||i.append(['
','","
"].join("")),d.laneItemsClass&&i.find(".kanban-lane-items").addClass(d.laneItemsClass),d.laneColClass&&i.addClass(d.laneColClass)),o&&o.length?o.after(i):n.prepend(i),i.attr({"data-parent":e.parentType?e.parentType:null,"data-type":e.type}).data("col",e);var s=e.$kanbanData.$layout.columnWidth;return d.useFlex?i.css("flex","1 1 "+s+"%"):i.css({left:e.$index*s+"%",width:s+"%"}),i},t.prototype.renderCard=function(e,n,t,r,d,i){var o=this.options,s=n.children('.kanban-item[data-id="'+e.id+'"]'),l=t?n.children('.kanban-item[data-id="'+t.id+'"]:not(.kanban-expired)'):null;s.length?s.removeClass("kanban-expired"):(s=a('
'),o.wrapCard&&s.append('
')),l&&l.length?l.after(s):n.prepend(s);var c=r.cardsPerRow||d.cardsPerRow||i.cardsPerRow||o.cardsPerRow;s.data("item",e).css({padding:o.cardSpace/2,width:c>1?100/c+"%":""});var h=o.wrapCard?s.children(".kanban-card"):s;h.css("height",o.cardHeight);var u=o.cardRender||o.itemRender;if(u)u(e,h,r,d,i);else{var b=h.find(".title");b.length||(b=a('
').appendTo(h)),b.text(e.name||e.title)}return s},t.DEFAULTS={minColWidth:100,maxColHeight:400,minColHeight:90,minSubColHeight:40,subLaneSpace:2,laneNameWidth:20,fixScroll:!0,headerHeight:32,cardHeight:40,cardSpace:10,cardsPerRow:1,wrapCard:!0,fluidBoardWidth:!0,addItemText:"添加条目",useFlex:!0,droppable:"auto",laneColClass:"",showCount:!0},a.fn.kanban=function(n){return this.each(function(){var r=a(this),d=r.data(e),i="object"==typeof n&&n;d||r.data(e,d=new t(this,i)),"string"==typeof n&&d[n]()})},t.NAME=e,a.fn.kanban.Constructor=t}(jQuery); \ No newline at end of file