var TableMergeUtils=function(){"use strict";function r(r,t){var o=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(r,t).enumerable}))),o.push.apply(o,n)}return o}function t(t){for(var o=1;o=0||(e[o]=r[o]);return e}(r,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(r);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(r,o)&&(e[o]=r[o])}return e}function s(r){return function(r){if(Array.isArray(r))return i(r)}(r)||function(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r)}(r)||function(r,t){if(!r)return;if("string"==typeof r)return i(r,t);var o=Object.prototype.toString.call(r).slice(8,-1);"Object"===o&&r.constructor&&(o=r.constructor.name);if("Map"===o||"Set"===o)return Array.from(r);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(r,t)}(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(r,t){(null==t||t>r.length)&&(t=r.length);for(var o=0,n=new Array(t);o0;){var w=a+l-1;wn)&&{start:r===o,end:t===n,pass:r>=o&&t<=n,common:Math.min(t,n)-Math.max(r,o)+1,comCol:[Math.max(r,o),Math.min(t,n)]}}function c(r,t,o,n){var e=l(r)._rows,s=e[t][o],i=e[t][o+n],a=i&&i.rowspan===s.rowspan&&-1===n&&i._endCol+1===s._startCol,w=i&&i.rowspan===s.rowspan&&1===n&&i._startCol-1===s._endCol;return a||w?r[t][o+n]:null}function h(r,t,o,n){var e=l(r)._rows,s=e[t][o],i=null,a=null,c=null;return e.forEach((function(t,o){t.forEach((function(t,e){var l=w(t._startCol,t._endCol,s._startCol,s._endCol);l.start&&l.end&&(-1===n&&t._endRow+1===s._startRow||1===n&&t._startRow-1===s._endRow)&&(i=r[o][e],a=o,c=e)}))})),{targetCell:i,row:a,col:c}}var u=["rows","cols"],f={rowspan:1,colspan:1,width:100,height:40},p=function(){function r(o){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};!function(r,t){if(!(r instanceof t))throw new TypeError("Cannot call a class as a function")}(this,r),n(this,"rows",[]),n(this,"options",{minRetainRow:0,minRetainCol:0,minSplitHcolspan:2,minSplitVrowspan:2,fixRowType:1}),this.rows=o,this.options=t(t({},this.options),e)}var i,a,p;return i=r,a=[{key:"getDisabledHandles",value:function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1,o=[],n=this.rows[r]&&this.rows[r][t];return n?(this.rows.reduce((function(r,t){return r+Math.min.apply(Math,s(t.map((function(r){return r.rowspan}))))}),0)-n.rowspan1){var t=r.reduce((function(r,t){return Math.min(r,t.rowspan)}),r[0].rowspan)-1;t>0&&r.forEach((function(r){return r.rowspan-=t}))}})):2===this.options.fixRowType&&function(r){var t=0;r.forEach((function(o,n){var e=o.length&&o.every((function(r){return r.rowspan>1}));e&&(r.splice(n+t+1,0,[]),t++)}))}(this.rows)}},{key:"insertRow",value:function(r,o,n){var e=this;if(!this.getDisabledHandles(r,o).includes("insertRow")){var s=l(this.rows)._rows,i=this.rows[r][o],a=n?r+i.rowspan:r;if(a-1){var c=s[l];w(c._startCol,c._endCol,i._startCol,i._endCol).end?e.rows[a].splice(l+n,0,t(t({},f),{},{rowspan:c.rowspan,colspan:1})):(e.rows[c._row][c._col].colspan++,e.rows[c._row][c._col].width+=f.width)}}else{var h=s.findIndex((function(r){return w(r._startCol,r._endCol,i._startCol,i._endCol)}));if(h>-1){var u=s[h];w(u._startCol,u._endCol,i._startCol,i._endCol).start?e.rows[a].splice(h+n,0,t(t({},f),{},{rowspan:u.rowspan,colspan:1})):(e.rows[u._row][u._col].colspan++,e.rows[u._row][u._col].width+=f.width)}}}));var a=n?o:o+1;return{rows:this.rows,row:r,col:a,disabledHandles:this.getDisabledHandles(r,a)}}}},{key:"delRow",value:function(r,o){var n,e=this;if(!this.getDisabledHandles(r,o).includes("delRow")){var i=l(this.rows)._rows,a=i[r][o];i.forEach((function(n,s){if(sr){var l=[];n.forEach((function(n,s){var c=w(n._startRow,n._endRow,a._startRow,a._endRow);if(c&&(l.push(s),!c.pass)){var u=t(t({},e.rows[n._row][n._col]),{},{rowspan:n.rowspan-c.common}),f=h(i,r,o,1),p=f.row,d=f.col;e.rows[p].splice(d+1,0,u)}}));var c=e.rows[s].filter((function(r,t){return!l.includes(t)}));e.rows.splice(s,1,c)}}));var c=r+a.rowspan;i[r].forEach((function(r){var o=l(e.rows)._rows;if(r.rowspan>a.rowspan){var n=o[c].findIndex((function(t){return t._startCol>r._endCol}));-1===n&&o[c].forEach((function(t,o){t._endCol1){var h=c.colspan;a.colspan-=Math.floor(h/2);for(var u=c._startCol,p=c._startCol+a.colspan-1,d=0;u<=p;)d+=i[u].find((function(r){return 1===r.colspan})).width,u++;a.width=d;for(var g=h-a.colspan,v=p+1,_=v+g-1,b=0;v<=_;)b+=i[v].find((function(r){return 1===r.colspan})).width,v++;this.rows[r].splice(o+1,0,t(t({},f),{},{width:b,height:a.height,colspan:g,rowspan:a.rowspan}))}else s.forEach((function(e,s){if(s===r)a.width/=2,n.rows[r].splice(o+1,0,t(t({},f),{},{width:a.width,height:a.height,rowspan:a.rowspan}));else{var i=e.findIndex((function(r){return w(r._startCol,r._endCol,c._startCol,c._endCol)}));i>-1&&(n.rows[s][i].colspan+=1)}}));return{rows:this.rows,row:r,col:o,disabledHandles:this.getDisabledHandles(r,o)}}}},{key:"splitV",value:function(r,o){var n=this;if(!this.getDisabledHandles(r,o).includes("splitV")){var e=l(this.rows)._rows,s=e[r][o],i=this.rows[r][o];if(i.rowspan>1){var a=s.rowspan;i.rowspan-=Math.floor(a/2);for(var c=s._startRow,h=s._startRow+i.rowspan-1,u=0;c<=h;)u+=e[c].find((function(r){return 1===r.rowspan})).height,c++;i.height=u;for(var p=a-i.rowspan,d=h+1,g=d+p-1,v=0;d<=g;)v+=e[d].find((function(r){return 1===r.rowspan})).height,d++;var _=r+i.rowspan,b=e[_].findIndex((function(r){return r._startCol>s._endCol}));-1===b?(e[_].forEach((function(r,t){r._endCol