@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
1 lines • 9.11 kB
JavaScript
module.exports=function(n){var i={};function r(e){if(i[e])return i[e].exports;var t=i[e]={exports:{},id:e,loaded:!1};return n[e].call(t.exports,t,t.exports,r),t.loaded=!0,t.exports}return r.m=n,r.c=i,r.p="",r(0)}({0:function(e,t,n){e.exports=n(1296)},3:function(e,t){e.exports=function(){throw Error("define cannot be used indirect")}},1292:function(e,t){e.exports=require("./kendo.treelist")},1296:function(e,t,n){var i;n(3),n=[n(1292),n(1297)],void 0===(t="function"==typeof(i=function(){var e={id:"gantt.list",name:"Gantt List",category:"web",description:"The Gantt List",depends:["treelist","treeview.draganddrop"],hidden:true},a=window.kendo.jQuery,h=a.extend,d=a.map,m=kendo.isFunction,o=kendo.ui,n=o.TreeList,l=kendo._outerHeight,s=kendo._activeElement,u=kendo.keys,r=kendo.support.mobileOS,i=kendo.attr("type"),p=kendo.attr("bind"),g=kendo.attr("format"),_="string",t=".kendoGanttList",b="dblclick",v="focusin",k="focusout",C="keydown",E="keyup",w="mousedown",H="beforeEdit",y="edit",I="save",x="cancel",T="render",c=".",D="{0:"+kendo.getCulture().calendar.patterns.d+"}",S={title:"Title",start:"Start Time",end:"End Time",percentComplete:"% Done",parentId:"Predecessor ID",id:"ID",orderId:"Order ID"},L="<table style='visibility: hidden;'>"+"<tbody>"+"<tr style='height:{0}'>"+"<td> </td>"+"</tr>"+"</tbody>"+"</table>",f={gridHeader:"k-grid-header",gridContentWrap:"k-grid-content",editCell:"k-edit-cell",iconCollapse:"k-i-collapse",iconExpand:"k-i-expand"},W=o.GanttList=n.extend({init:function(e,t){if(this.options.columns.length===0)this.options.columns.push("title");n.fn.init.call(this,e,t);this._unbindDataSource();this._setWidth()},options:{name:"GanttList",autoBind:false,sortable:true,selectable:true,navigatable:false,editable:{move:true,mode:"incell"},resizable:false,renderAllRows:false},destroy:function(){n.fn.destroy.call(this);kendo.destroy(this.element)},closeCell:function(e){var t=this;var n=(t.editor||{}).element;var i;var r;if(!n||!n[0]||!t._isIncellEditable())return;r=t.dataItem(n);t._cancelEditor();n.removeClass(f.editCell);i=n.parent().removeClass(f.editRow);if(t.lockedContent)t._relatedRow(i).removeClass(f.editRow);if(e)t._render();t.trigger("itemChange",{item:i,data:r,ns:o});if(t.lockedContent)t._adjustRowHeight(i.css("height","")[0],t._relatedRow(i).css("height","")[0])},insertAfter:function(e,t){if(!e||!t)return;var n=t.orderId;var i={parentId:t.parentId};if(t.parentId===e.parentId&&t.orderId>e.orderId)i.orderId=n;else i.orderId=n+1;this.trigger("reorder",{task:e,updateInfo:i})},insertBefore:function(e,t){if(!e||!t)return;var n=t.orderId;var i={parentId:t.parentId};if(t.parentId===e.parentId&&t.orderId>e.orderId)i.orderId=n-1;else i.orderId=n;this.trigger("reorder",{task:e,updateInfo:i})},_adjustHeight:function(){var e=this.element;var t=e.find(c+f.gridContentWrap);var n=e.find(c+f.gridHeader);var i;var r=kendo.support.scrollbar();if(this._isHeightSet(e)){i=e.height()-l(n);t.height(i);if(this._hasLockedColumns){r=this.table[0].offsetWidth>this.table.parent()[0].clientWidth?r:0;this.lockedContent.height(i-r)}}},_adjustRowHeight:function(e,t){var n;var i=e.offsetHeight;var r=t.offsetHeight;if(i>r)n=i+"px";else if(i<r)n=r+"px";if(n)e.style.height=t.style.height=n},_isHeightSet:function(e){var t,n;if(e[0].style.height)return true;else t=e.height();e.height("auto");n=e.height();e.height("");return t!=n},_attachCellEditingEventHandlers:function(){var i=this,e=i.options.editable;if(i._isIncellEditable()&&e.update!==false){i._startEditHandler=function(e){var t=e.currentTarget?a(e.currentTarget):e;var n=i._columnFromElement(t);if(i.editable)return;if(n&&n.editable())i._editCell(t,n,i._modelFromElement(t))};i.content.on(v+t,i._focusInEditableHandler.bind(i)).on(k+t,i._focusoutCellHandler.bind(i)).on(C+t,"tr:not(.k-grouping-row) > td",i._keydownHandler.bind(i)).on(E+t,"tr:not(.k-grouping-row) > td",i._keyupHandler.bind(i));if(!r)i.content.on(w+t,"tr:not(.k-grouping-row) > td",i._mouseDownHandler.bind(i)).on(b+t,"tr:not(.k-grouping-row) > td",i._openEditorHandler.bind(i));else i.touch=i.content.kendoTouch({filter:"td",touchstart:function(e){i._mouseDownHandler(e.touch)},doubletap:function(e){if(e.event.target.classList.contains("k-icon"))return;i._openEditorHandler(e.touch)}}).data("kendoTouch")}},_blurActiveElement:function(){var e=kendo._activeElement();if(e&&e.nodeName.toLowerCase()!=="body")a(e).trigger("blur")},_closeCellTimeouted:function(){var e=this,t=s(),n=e.editor||{},i=n.element;if(i&&i[0]&&t&&!a.contains(i[0],t)&&i[0]!==t&&!a(t).closest(".k-animation-container").length)if(n.end())e.closeCell()},_columns:function(){var t=this,e=this.options.columns;t._hasExpandable=false;e.forEach(function(e){if(e.expandable)t._hasExpandable=true});t.columns=t.options.columns=d(e,t._eachColumn.bind(t));n.fn._columns.call(t)},_columnEditor:function(o){var d={name:o.field,required:true};d[p]="value:"+o.field;d[i]="date";d[g]=kendo._extractFormat(o.format);return function(e,t){var n=t.model,i=n.fields[o.field]||n[o.field],r=i.validation;if(r&&r.dateCompare&&m(r.dateCompare)&&r.message){a("<span "+kendo.attr("for")+'="'+o.field+'" class="k-invalid-msg"/>').hide().appendTo(e);d[kendo.attr("dateCompare-msg")]=r.message}a('<input type="text"/>').attr(d).prependTo(e).kendoDateTimePicker({format:t.format})}},_columnFromElement:function(e){var t=e.closest("td"),n=t.parent(),i=n.children().index(t);return this.columns[i]},_eachColumn:function(e){var t=this,r=t.options.resourcesField,n=this.options.sortable;var i=function(){this.field="";this.title="";this.editable=function(){return false};this.sortable=false};var o=function(e){var t=e.get(r)||[],n=[];for(var i=0;i<t.length;i++)n.push(kendo.format("{0} [{1}]",t[i].get("name"),t[i].get("formatedValue")));return n.join(", ")};if(e.columns){t.hasNestedColumns=true;e.columns=d(e.columns,this._eachColumn.bind(this))}if(typeof e===_)e={field:e,title:S[e]};if(e.editable===true)e.editable=function(){return true};else e.editable=function(){return false};if(e.field==="start"||e.field==="end"){e.format=kendo.getCulture().calendar.patterns[e.format]||e.format||D;if(!e.editor)if(e.format===D||e.format.toLowerCase().indexOf("h")>-1)e.editor=t._columnEditor(e)}if(e.field===r){e.sortable=false;e.template=e.template||o}if(!t._hasExpandable&&e.field==="title")e.expandable=true;if(n&&!e.sortable)e.sortable=false;return h(new i,e)},_editCell:function(t,e,n){var i=this,r=i.options.resourcesField,o=i.dataSource._createNewModel(n.toJSON()),d;if(e.field===r){e.editor(t,o);return}else{if(i.trigger(H,{model:n,container:t})){i.dataSource._restorePageSizeAfterAddChild();return}i.closeCell();n._edit=true;i._cancelEditor();i._render({editedColumn:e,editedColumnIndex:t.index()});d=i.table.add(i.lockedTable).find(c+f.editCell).first();i.editor=i._createIncellEditor(d,{columns:[e],model:n,change:function(e){if(i.trigger(I,{values:e.values,container:t,model:n}))e.preventDefault()}});i._current=d;i.trigger(y,{container:t,model:n})}},_focusInEditableHandler:function(e){var t=this,n=e.target;if(!a.contains(n,s())){clearTimeout(t._closeCellTimeout);t._closeCellTimeout=null}},_focusoutCellHandler:function(e){var t=this;t._closeCellTimeout=setTimeout(function(){t._closeCellTimeouted(e)},1)},_keydownHandler:function(e){if(e.keyCode===u.ENTER)e.preventDefault()},_keyupHandler:function(e){var t=this,n=e.keyCode,i,r;switch(n){case u.ENTER:t._blurActiveElement();t._closeCellTimeouted(e);break;case u.ESC:if(t.editor){i=a(e.target);r=t._modelFromElement(i);t.trigger(x,{model:r,cell:i})}break}},_modelFromElement:function(e){var t=e.closest("tr"),n=this.dataSource.getByUid(t.attr(kendo.attr("uid")));return n},_mouseDownHandler:function(e){var t=a(e.currentTarget);if(!t.hasClass(f.editCell))this._blurActiveElement()},_openEditorHandler:function(e){var t=this,n=a(e.currentTarget),i=t.lockedTable&&n.closest("table")[0]===t.lockedTable[0],r=t.selectable&&t.selectable.options.multiple;if(n.hasClass(f.editCell)||n.has("a.k-grid-delete").length||n.has("button.k-grid-delete").length||n.closest("tbody")[0]!==t.tbody[0]&&!i||a(e.target).is(":input")||a(e.target).hasClass(f.iconExpand)||a(e.target).hasClass(f.iconCollapse))return;if(t.editor){if(t.editor.end()){if(r)a(s()).trigger("blur");t.closeCell();t.editCell(n)}}else t.editCell(n)},_renderTree:function(e){n.fn._render.call(this);if(this.hasNestedColumns)this.element.addClass("k-gantt-treelist-nested-columns");if(e&&e.length&&!e.editedColumn){if(this.options.rowHeight)this._rowHeight(e);this.trigger(T)}this._adjustHeight()},_rowHeight:function(e){var t=this.content,n=this.options,i=typeof n.rowHeight===_?n.rowHeight:n.rowHeight+"px",r=a(kendo.format(L,i)),o;t.append(r);o=l(r.find("tr"));r.remove();this.element.find('[role="treegrid"]').css("height",e.length*o+"px")},_setData:function(e){this.dataSource.data(e)},_setWidth:function(){this.element.find(".k-grid-header table").css("minWidth",this.options.listWidth);this.content.find("table").css("minWidth",this.options.listWidth)}});return o.plugin(W),window.kendo})?i.apply(t,n):i)||(e.exports=t)},1297:function(e,t){e.exports=require("./kendo.treeview.draganddrop")}});