@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
1 lines • 10.7 kB
JavaScript
module.exports=function(e){function t(r){if(l[r])return l[r].exports;var n=l[r]={exports:{},id:r,loaded:!1};return e[r].call(n.exports,n,n.exports,t),n.loaded=!0,n.exports}var l={};return t.m=e,t.c=l,t.p="",t(0)}({0:function(e,t,l){e.exports=l(990)},3:function(e,t){e.exports=function(){throw Error("define cannot be used indirect")}},990:function(e,t,l){var r,n,a;!function(i,define){n=[l(991)],r=i,a="function"==typeof r?r.apply(t,n):r,!(void 0!==a&&(e.exports=a))}(function(){!function(e,t){var l=window.kendo,r=l.ui.editor,n=r.EditorUtils,a=r.RangeUtils,i=r.Dom,o=n.registerTool,s=r.ToolTemplate,d=r.Command,c=new r.BlockFormatFinder([{tags:["table"]}]),h=new r.BlockFormatFinder([{tags:["td","th"]}]),g=/([a-z]+|%)$/i,u="col",p="row",b="colgroup",f="scope",m="col-index",w="th",C="td",T="thead",_="headers",A="table",v=d.extend({exec:function(){var n=this,a=n.editor,i=n.range=n.lockRange(),o=n._sourceTable=n.options.insertNewTable?t:n._selectedTable(i),s=n._selectedTableCells=o?n._selectedCells(i):t,d={visible:!1,messages:a.options.messages,closeCallback:e.proxy(n.onDialogClose,n),table:n.parseTable(o,s),dialogOptions:a.options.dialogOptions,isRtl:l.support.isRtl(a.wrapper)},c=new r.TableWizardDialog(d);c.open()},onDialogClose:function(e){var t=this;t.releaseRange(t.range),e&&(t.options.insertNewTable?t.insertTable(t.createNewTable(e)):t.updateTable(e,t._sourceTable,t._selectedTableCells))},releaseRange:function(e){var t=this,l=t.editor.document;i.windowFromDocument(l).focus(),d.fn.releaseRange.call(t,e)},insertTable:function(e){var t=this.range;t.insertNode(e),t.collapse(!0),this.editor.selectRange(t),this._ensureFocusableAfterTable(e)},_ensureFocusableAfterTable:function(t){for(var l=e(t).parent().contents(),r=l.length-1,n=l.get(r);null!==n.nodeValue&&(" "===n.nodeValue||""===n.nodeValue);)r-=1,n=l.get(r);n===t&&i.insertAfter(i.createEmptyNode(this.editor.document,"p"),t)},updateTable:function(t,l,r){for(var n,a,o,s,d,c,h,g,u=this,p=e(l.rows).toArray(),b=t.tableProperties,f=b.rows,w=b.columns,C=l.tHead,T=function(e){return e[e.length-1]};r.length>1;)r.pop();if(n=r.length?T(r).parentNode:T(p),u._deleteTableRows(p,p.length-f),p.length<f)for(s=e(n).index(),d=n.cells.length,c=f-p.length,o=n.parentNode;c;)a=o.insertRow(s+1),u._insertCells(d-a.cells.length,a),c--;p[0].cells.length>w&&e(p).each(function(e,t){for(;t.cells.length>w;)t.deleteCell(-1)}),p[0].cells.length<w&&(h=e(T(r)||T(n.cells)).index(),e(p).each(function(e,t){u._insertCells(w-t.cells.length,t,h+1)})),u._updateTableProperties(l,b),g=t.cellProperties,r[0]&&i.attr(r[0],{id:g.id||null}),(g.selectAllCells?e(p).children():e(r)).each(function(e,t){u._updateCellProperties(t,g)}),u._updateCaption(l,b),i.reMapTableColumns(l,m),C?u._updateHeadersWithThead(l,t):u._updateHeadersNoThead(l,t),u._updateHeaderAssociates(l,b),i.clearTableMappings(l,m)},_isHeadingRow:function(e){return i.is(e.cells[0],w)&&i.is(e.parentNode,T)},_isHeadingCell:function(e){return i.is(e,w)},cellsWithHeadersAssociated:function(t){var l,r=e(t.rows).children(),n=[],a=function(e){return n.indexOf(e)>-1};return r.each(function(e,t){t.id&&i.is(t,w)&&n.push(t.id)}),l=r.filter(function(e,t){var l,r=t.getAttribute(_);return!!(r&&!i.is(t,w)&&(l=r.split(" "),l&&l.length>0))&&l.some(a)}),!!l.length},_insertCells:function(e,t,l){l=isNaN(l)?-1:l;for(var r,n=0;n<e;n++)r=t.insertCell(l),r.innerHTML=" "},_deleteTableRows:function(e,t){for(var l,r,n=0;n<t;n++)l=e.pop(),r=l.parentNode,r.removeChild(l),r.rows.length||i.remove(r)},createNewTable:function(e){var t,l,r=this,n=r.editor.document,a=e.tableProperties,o=i.create(n,A),s=0;return r._updateTableProperties(o,a),r._updateCaption(o,a),a.headerRows&&a.headerRows>0&&(t=o.createTHead(),r._createTableRows(e,t,s,!0),s+=a.headerRows),l=o.createTBody(),r._createTableRows(e,l,s,!1),i.reMapTableColumns(o,m),"ids"===a.cellsWithHeaders?i.associateWithIds(o):"scope"===a.cellsWithHeaders&&r._addScopes(o,a.headerRows,a.headerColumns),i.clearTableMappings(o,m),o},_createTableRows:function(e,t,l,r){var n,a,i,o,s=this,d=e.tableProperties,c=e.cellProperties,h=d.columns,g=r?d.headerRows:d.rows,u=c.selectAllCells,p=d.headerColumns;for(n=l;n<g;n++)for(a=t.insertRow(),i=0;i<h;i++)o=r||p>i?document.createElement(w):document.createElement(C),a.appendChild(o),o.innerHTML=" ",0===n&&0===i&&c.id&&(o.id=c.id),s._updateCellProperties(o,u||0===n&&0===i?c:{})},_updateTableProperties:function(t,l){var r=this._getStylesData(l);i.attr(t,{cellSpacing:l.cellSpacing||null,cellPadding:l.cellPadding||null,className:l.className||null,id:l.id||null,summary:l.summary||null,style:r||null}),e(t).addClass("k-table")},_updateCellProperties:function(e,t){var l=this._getStylesData(t);l.padding=t.cellPadding||null,l.margin=t.cellMargin||null,i.attr(e,{style:l||null,className:t.className||null})},_updateCaption:function(e,t){var l,r;e.caption&&!t.captionContent?e.deleteCaption():t.captionContent&&(l=e.createCaption(),l.innerHTML=t.captionContent,r=this._getAlignmentData(t.captionAlignment),i.attr(l,{style:{textAlign:r.textAlign,verticalAlign:r.verticalAlign}}))},_updateHeadersNoThead:function(e,t){var l,r,n,a,o,s=this,d=t.tableProperties,c=e.rows;for(a=0;a<c.length;a++)for(l=c[a],r=l.cells,o=0;o<r.length;o++)n=r[o],!s._isHeadingCell(n)&&(a<d.headerRows||d.headerColumns>n.getAttribute(m))?i.changeTag(n,w,!1):s._isHeadingCell(n)&&a>=d.headerRows&&d.headerColumns<=n.getAttribute(m)&&i.changeTag(n,C,!1)},_updateHeadersWithThead:function(e,t){var l,r,n,a=this,o=t.tableProperties,s=e.tHead,d=0,c=e.tBodies[0];if(c||(c=e.createTBody()),o.headerRows&&o.headerRows>0){for(s||(s=e.createTHead());s.rows.length<o.headerRows;)s.appendChild(c.rows[0]);for(;s.rows.length>o.headerRows;)c.appendChild(s.rows[0]);a._swapToHeaderCells(s)}else if(s){for(;s.rows.length>0;)c.appendChild(s.rows[s.rows.length-1]);e.deleteTHead()}for(;c.rows.length>d;){for(l=c.rows[d],n=0;n<l.cells.length;n++)r=l.cells[n],a._isHeadingCell(r)&&o.headerColumns<=r.getAttribute(m)?i.changeTag(r,C,!1):!a._isHeadingCell(r)&&o.headerColumns>r.getAttribute(m)&&i.changeTag(r,w,!1);d+=1}},_updateHeaderAssociates:function(e,t){var l=this;"ids"===t.cellsWithHeaders?(l.cellsWithHeadersAssociated(e)||l._removeScopes(e),i.associateWithIds(e)):"scope"===t.cellsWithHeaders?(l.cellsWithHeadersAssociated(e)&&l._removeAssociates(e),l._addScopes(e,t.headerRows,t.headerColumns)):l.cellsWithHeadersAssociated(e)?l._removeAssociates(e):l._removeScopes(e)},_addScopes:function(e,t,l){var r,n,a,i,o=e.rows;for(r=0;r<o.length;r++)for(a=o[r],n=0;n<a.cells.length;n++)i=a.cells[n],r<t?i.setAttribute(f,u):i.getAttribute(m)<l&&i.setAttribute(f,p)},_removeScopes:function(t){e(t).find(w).removeAttr(f),e(t).find(u).remove(),e(t).find(b).remove()},_removeAssociates:function(t){e(t).find("th, td").removeAttr("id headers")},_swapToHeaderCells:function(t){var l=e(t).find("td"),r=function(e,t){i.changeTag(t,w,!1)};l.each(r)},_getStylesData:function(e){var t=this._getAlignmentData(e.alignment),l="wrapText"in e?e.wrapText?"":"nowrap":null;return{width:e.width?e.width+e.widthUnit:null,height:e.height?e.height+e.heightUnit:null,textAlign:t.textAlign,verticalAlign:t.verticalAlign,backgroundColor:e.bgColor||"",borderWidth:e.borderWidth,borderStyle:e.borderStyle,borderColor:e.borderColor||"",borderCollapse:e.collapseBorders?"collapse":null,whiteSpace:l}},_getAlignmentData:function(e){var t,l="",r=l;return e&&(e.indexOf(" ")!=-1?(t=e.split(" "),l=t[0],r=t[1]):l=e),{textAlign:l,verticalAlign:r}},parseTable:function(l,r){var n,a,o,s,d,c,h,g,u,p,b,f,w;return l?(n=this,a=l.style,o=l.rows,s=l.caption,d=e(s?s.cloneNode(!0):t),d.find(".k-marker").remove(),c=l.className,c=c.replace(/^k-table\s|\sk-table$/,""),c=c.replace(/\sk-table\s/," "),c=c.replace(/^k-table$/,""),h=n._getAlignment(l,!0),g=s?n._getAlignment(s):t,u=i._getNumberOfHeaderRows(l),p=n.cellsWithHeadersAssociated(l)?"ids":e(l).find("th[scope]").length>0?"scope":"none",i.reMapTableColumns(l,m),b=i._getNumberOfColumns(l),f=i._getNumberOfHeaderColumns(l,u),i.clearTableMappings(l,m),w={tableProperties:{width:a.width||l.width?parseFloat(a.width||l.width):null,height:a.height||l.height?parseFloat(a.height||l.height):null,columns:b,rows:o.length,widthUnit:n._getUnit(a.width),heightUnit:n._getUnit(a.height),cellSpacing:l.cellSpacing,cellPadding:l.cellPadding,alignment:h.textAlign,bgColor:a.backgroundColor||l.bgColor,className:c,id:l.id,borderWidth:a.borderWidth||l.border,borderColor:a.borderColor,borderStyle:a.borderStyle||"",collapseBorders:!!a.borderCollapse,summary:l.summary,captionContent:s?d.html():"",captionAlignment:s&&g.textAlign?g.textAlign+" "+g.verticalAlign:"",headerRows:u,headerColumns:f,cellsWithHeaders:p},selectedCells:[]},w.rows=n.parseTableRows(o,r,w),w):{tableProperties:{},selectedCells:[]}},parseTableRows:function(t,l,r){var n,a,i,o,s,d,c,h=this,g=[];for(d=0;d<t.length;d++)for(n=t[d],a={cells:[]},i=n.cells,g.push(a),c=0;c<i.length;c++)o=i[c],s=h.parseCell(o),e.inArray(o,l)!=-1&&r.selectedCells.push(s),a.cells.push(s);return g},parseCell:function(e){var t,l=this,r=e.style,n=l._getAlignment(e);return n=n.textAlign?n.textAlign+" "+n.verticalAlign:"",t={width:r.width||e.width?parseFloat(r.width||e.width):null,height:r.height||e.height?parseFloat(r.height||e.height):null,widthUnit:l._getUnit(r.width),heightUnit:l._getUnit(r.height),cellMargin:r.margin,cellPadding:r.padding,alignment:n,bgColor:r.backgroundColor||e.bgColor,className:e.className,id:e.id,borderWidth:r.borderWidth||e.border,borderColor:r.borderColor,borderStyle:r.borderStyle,wrapText:"nowrap"!=r.whiteSpace}},_getAlignment:function(e,t){var l,r=e.style,n=r.textAlign||e.align||"";return t?{textAlign:n}:(l=r.verticalAlign||e.vAlign||"",n&&l?{textAlign:n,verticalAlign:l}:!n&&l?{textAlign:"left",verticalAlign:l}:n&&!l?{textAlign:n,verticalAlign:"top"}:{textAlign:"",verticalAlign:""})},_getUnit:function(e){var t=(e||"").match(g);return t?t[0]:"px"},_selectedTable:function(e){var t=i.filterBy(a.nodes(e),i.htmlIndentSpace,!0);return c.findSuitable(t)[0]},_selectedCells:function(e){var t=i.filterBy(a.nodes(e),i.htmlIndentSpace,!0);return h.findSuitable(t)}}),x=r.Tool.extend({command:function(e){return e.insertNewTable=this.options.insertNewTable,new v(e)}}),H=x.extend({update:function(e,t){var l=!c.isFormatted(t);l===!0?(e.parent().addClass("k-hidden k-state-disabled"),e.attr("disabled","disabled"),e.addClass("k-state-disabled")):(e.parent().removeClass("k-hidden k-state-disabled"),e.removeAttr("disabled"),e.removeClass("k-state-disabled"))}});l.ui.editor.TableWizardTool=x,l.ui.editor.TableWizardCommand=v,o("tableWizard",new H({command:v,insertNewTable:!1,template:new s({template:n.buttonTemplate,title:"Table Wizard"})}))}(window.kendo.jQuery)},l(3))},991:function(e,t){e.exports=require("./../plugins/tables")}});