gc.spread.sheets.outlines.10.0.1.min.js 21 KB

12345678910111213
  1. /*!
  2. *
  3. * Spread.Sheets Library 10.0.1
  4. *
  5. * Copyright(c) GrapeCity, Inc. All rights reserved.
  6. *
  7. * Licensed under the SpreadJS Commercial License.
  8. * spread.sales@grapecity.com
  9. * http://spread.grapecity.com/spreadjs/eula/
  10. *
  11. *
  12. */
  13. var GC=GC||{};GC.Spread=GC.Spread||{},GC.Spread.Sheets=GC.Spread.Sheets||{},GC.Spread.Sheets.Outlines=function(a){var b={};function c(d){if(b[d])return b[d].exports;var e=b[d]={exports:{},id:d,loaded:!1};return a[d].call(e.exports,e,e.exports,c),e.loaded=!0,e.exports}return c.m=a,c.c=b,c.p="/assets/",c(0)}([function(a,b,c){c(1);var b=c(4);b.SR={},b.SR.en=c(5),a.exports=b},function(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q=c(2),r=c(3),s=r.Commands,t=s.ActionBase,u=r.GC$,v="outlineColumn",w="removeColumnOutline",x="expandColumnOutline",y="expandColumnOutlineForLevel",z="outlineRow",A="removeRowOutline",B="expandRowOutline",C="expandRowOutlineForLevel",D=q.j.Fa;function E(a){var b=a.kj;return a.ML?b.rowOutlines:b.columnOutlines}function F(a){var b,c,d,e,f,g=this,h=!1;return(a?g.canExecute():g.canUndo())&&(b=g.kj,c=g.VQ.index,d=g.VQ.count,e=E(g),b&&e&&!D(c)&&!D(d)&&(f=a?e.group:e.ungroupRange,g.Lz(b,!0),f.call(e,c,d),g.Mz(b,!0),h=!0)),h}d=function(a){u.inherit(b,a);function b(b,c,d){var e=this;a.call(e),e.kj=b,e.VQ=c,e.ML=d}var c={execute:function(){return F.call(this,!0)},undo:function(){return F.call(this,!1)}};return u.extend(b.prototype,c),b}(t),e=function(a){u.inherit(b,a);function b(b,c){a.call(this,b,c,!1)}return b}(d),f=function(a){u.inherit(b,a);function b(b,c){a.call(this,b,c,!0)}return b}(d),g=function(a){u.inherit(b,a);function b(b,c,d){var e=this;a.call(e),e.kj=b,e.VQ=c,e.ML=d}var c={execute:function(){var a,b,c,d=this,e=d.kj,f=!1;return d.canExecute()&&(a=d.VQ.index,b=d.VQ.count,c=E(d),e&&c&&!D(a)&&!D(b)&&((c.getLevel(a)>=0||c.getLevel(a+b-1)>=0)&&(d.Lz(e,!0),c.ungroupRange(a,b),d.Mz(e,!0)),f=!0)),f},undo:function(){var a,b,c,d=this,e=!1,f=d.kj;return d.canUndo()&&(a=d.VQ.index,b=d.VQ.count,c=E(d),f&&c&&!D(a)&&!D(b)&&(d.Lz(f,!0),c.group(a,b),d.Mz(f,!0),e=!0)),e}};return u.extend(b.prototype,c),b}(t),h=function(a){u.inherit(b,a);function b(b,c){a.call(this,b,c,!1)}return b}(g),i=function(a){u.inherit(b,a);function b(b,c){a.call(this,b,c,!0)}return b}(g);function G(a,b,c,d,e){var f=0,g;for(g=b;g<=c&&g<d;g++)f+=e.call(a,g)*a._zoomFactor;return f}function H(a,b,c,d,e){var f=0,g;for(g=b;g<d&&f<c;g++)b++,f+=e.call(a,g)*a._zoomFactor;return b>=d?d-1:b}function I(a,b,c,d,e){if(b<d)return d;if(b>e)return e;for(var f=b;f<=e;f++)if(c.call(a,f))return f;return-1}function J(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q=this,r=q.kj,s=c.index,t=b?r.getRowCount():r.getColumnCount(),u=void 0;s<0||s>=t||(d=E(q),e=1===d.direction(),f=b?r.frozenRowCount():r.frozenColumnCount(),g=b?r.getRowHeight:r.getColumnWidth,h=b?r.getViewportTopRow:r.getViewportLeftColumn,i=b?r.getViewportHeight:r.getViewportWidth,j=h.call(r,1),n=d.find(e?s-1:s+1,c.level),n&&(o=e?n.start:s,p=e?s:n.end,e?(a?o=s:o<f&&(o=f),o<j&&(j=o),k=i.call(r,1),l=G(r,j,p,t,g),l>k&&(j=H(r,j,l-k,t,g)),m=I(r,j,g,f,t-1)):(a?p=s:p>=t&&(p=t-1),o<j?m=I(r,o,g,f,t-1):(k=i.call(r,1),l=G(r,j,p,t,g),l>k&&(j=H(r,j,l-k,t,g),m=I(r,j,g,f,t-1)))),b&&m!==u?(r.lq=m,r.os()):b||m===u||(r.qq=m,r.qs())))}function K(a){var b,c,d,e,f,g=this,h=!1;return(a?g.canExecute():g.canUndo())&&(b=g.kj,c=g.VQ,d=E(g),e=c.collapsed,f=c.index,!b||!d||D(e)||D(f)||D(c.level)||(g.Lz(b,!0),a||(e=!e),d.setCollapsed(f,e),J.call(g,e,g.ML,c),g.Mz(b,!0),h=!0)),h}j=function(a){u.inherit(b,a);function b(b,c,d){var e=this;a.call(e),e.kj=b,e.VQ=c,e.ML=d}var c={execute:function(){return K.call(this,!0)},undo:function(){return K.call(this,!1)}};return u.extend(b.prototype,c),b}(t),k=function(a){u.inherit(b,a);function b(b,c){a.call(this,b,c,!1)}return b}(j),l=function(a){u.inherit(b,a);function b(b,c){a.call(this,b,c,!0)}return b}(j),m=function(a){u.inherit(b,a);function b(b,c,d){var e=this;a.call(e),e.kj=b,e.VQ=c,e.ML=d}var c={execute:function(){var a,b,c,d=this,e=d.kj,f=!1;if(d.canExecute()&&(b=d.VQ.level,c=E(d),e&&c&&!D(b))){for(d.Lz(e,!0),d.saveState(),a=0;a<b;a++)c.expand(a,!0);c.expand(b,!1),d.Mz(e,!0),f=!0}return f},saveState:function(){var a=this,b=a.kj,c=a.VQ,d=null,e,f,g,h,i,j,k=a.ML,l=c.level,m=E(a),n=k?b.getRowCount():b.getColumnCount();if(b&&m&&!D(l))for(d={},e=0;e<=l;e++)for(i=0;i<n;){if(f=m.find(i,e)){switch(j=-1,g=f.start,h=f.end,m.direction()){case 0:j=g-1;break;case 1:j=h+1}d[j]||(d[j]=1===f.state()),i+=h-g+1}i++}c.RL=d},undo:function(){var a,b,c,d,e=this,f=!1;if(e.canUndo()&&(a=e.kj,b=e.VQ.RL,d=E(e),a&&b&&d)){e.Lz(a,!0);for(c in b)c&&(d.setCollapsed(parseInt(c),b[c]),f=!0);e.Mz(a,!0)}return f}};return u.extend(b.prototype,c),b}(t),n=function(a){u.inherit(b,a);function b(b,c){a.call(this,b,c,!1)}return b}(m),o=function(a){u.inherit(b,a);function b(b,c){a.call(this,b,c,!0)}return b}(m),p=s.h4,s[v]={canUndo:!0,execute:function(a,b,c){return p(a,e,b,c)}},s[z]={canUndo:!0,execute:function(a,b,c){return p(a,f,b,c)}},s[w]={canUndo:!0,execute:function(a,b,c){return p(a,h,b,c)}},s[A]={canUndo:!0,execute:function(a,b,c){return p(a,i,b,c)}},s[x]={canUndo:!0,execute:function(a,b,c){return p(a,k,b,c)}},s[B]={canUndo:!0,execute:function(a,b,c){return p(a,l,b,c)}},s[y]={canUndo:!0,execute:function(a,b,c){return p(a,n,b,c)}},s[C]={canUndo:!0,execute:function(a,b,c){return p(a,o,b,c)}},s.SL=function(a){a.register(v,s[v]),a.register(z,s[z]),a.register(w,s[w]),a.register(A,s[A]),a.register(x,s[x]),a.register(B,s[B]),a.register(y,s[y]),a.register(C,s[C])},a.exports=s},function(a,b){a.exports=GC.Spread.Common},function(a,b){a.exports=GC.Spread.Sheets},function(a,b,c){var d,e,f,g,h=c(2),i=c(3),j=c(1),k={},l=null,m=void 0,n=Math.max,o=Math.min,p=i.GC$,q=p.each,r=i.Im.Lm,s=i.Rect,t=h.k,u=t._b,v=t.$b,w=t.ac,x=i.Ul.Ol,y=h.j.Fa,z=i.Ul.Pl,A="rangegroup",B="gc-group",C=B+"-box",D="rgh",E="cgh",F="rg",G="cg",H=function(){return h.C(k.SR)()},I={Gt:function(){var a,b,c,d,e,f,g,h=this,i=h.TL;return i?i:(a={x:0,y:0,width:0,height:0,rowMaxLevel:-1,colMaxLevel:-1},b=h.rowOutlines,c=h.columnOutlines,d=17,e=4,f=o(d,d*h._zoomFactor),h.showRowOutline()&&b&&!b.iT()&&(g=b.getMaxLevel(),g>=0&&(a.width=f*(g+2)+e,a.rowMaxLevel=g)),h.showColumnOutline()&&c&&!c.iT()&&(g=c.getMaxLevel(),g>=0&&(a.height=f*(g+2)+e,a.colMaxLevel=g)),h.TL=a)},showRowOutline:z("showRowOutline",!0,function(){this.$p()}),showColumnOutline:z("showColumnOutline",!0,function(){this.$p()})};p.extend(i.Worksheet.prototype,I),d={init:function(){var a=this;a.rowOutlines=new g(a.getRowCount()),a.columnOutlines=new g(a.getColumnCount()),a.rowOutlines.groupChangeHandler=function(b){b&&b.indexes&&a.recalcRows&&a.recalcRows(b.indexes),a.au()},a.columnOutlines.groupChangeHandler=function(){a.bu()},a.Wr.push(a.rowOutlines),a.Zr.push(a.columnOutlines)},dispose:function(){var a=this;p(a.Ws()).unbind("mousedown.group")},setHost:function(a){if(a){var b=this;a.bind("mousedown.group",function(a){var c,d=b.Vs(),e=O.call(b,a.pageX-d.left,a.pageY-d.top);e&&(c=e.what,c===F||c===D?b.rowOutlines.UL(b,e):c!==G&&c!==E||b.columnOutlines.UL(b,e))})}},onLayoutChanged:function(a){var b=this,c=a.changeType,d=a.row,e=a.rowCount,f=a.col,g=a.colCount,h=a.sheetArea,i=b.rowOutlines,j=b.columnOutlines;"addRows"===c?T(i,d,e):"deleteRows"===c?U(i,d,e):"addColumns"===c?T(j,f,g):"deleteColumns"===c?U(j,f,g):"invalidateLayout"===c?b.TL=l:"setColumnCount"===c?3!==h&&1!==h||j.VL(g):"setRowCount"===c&&(3!==h&&2!==h||i.VL(e))},paint:function(a){var b=a.ctx,c=a.clipRect,d=this,e=d.rowOutlines,f=d.columnOutlines;e&&e.jp(d,b,c,!0),f&&f.jp(d,b,c,!1)},fromJson:function(a){if(a){var b=this,c,d=a.showRowRangeGroup,e=a.showColumnRangeGroup,f=x(d)?d:a.showRowOutline,g=x(e)?e:a.showColumnOutline;y(f)||b.showRowOutline(f),y(g)||b.showColumnOutline(g),c=a.rowRangeGroup||a.rowOutlines,c&&b.rowOutlines.fromJSON(c),c=a.colRangeGroup||a.columnOutlines,c&&b.columnOutlines.fromJSON(c)}},toJson:function(a){var b,c=this,d=c.rowOutlines,e=c.columnOutlines,f=c.showRowOutline();f!==!0&&(a.showRowOutline=f),b=c.showColumnOutline(),b!==!0&&(a.showColumnOutline=b),a.rowOutlines=d?d.toJSON():m,a.columnOutlines=e?e.toJSON():m}},i.Worksheet.$n(A,d),e={init:function(){j.SL(this.commandManager())}},i.Workbook.$n(A,e);function J(a,b){a.Wq(i.Events.RangeGroupStateChanging,b)}function K(a,b){a.Wq(i.Events.RangeGroupStateChanged,b)}function L(a,b){var c,d,e,f;a.isEditing&&a.isEditing()||(c=b.info.index,d=b.what===D,e=d?"expandRowOutlineForLevel":"expandColumnOutlineForLevel",f=N(a,d,-1,c,!0),J(a,f),f&&f.cancel===!1&&(a.wu().execute({cmd:e,sheetName:a.name(),level:c}),K(a,N(a,d,-1,c,!1))))}function M(a,b){var c,d,e,f,g,h,i=b.what===F;S(i,a)&&(c=b.info,d=c.index,e=d,f=c.level,h=i?"expandRowOutline":"expandColumnOutline",1===c.lineDirection?d--:d++,g=N(a,i,d,f,!0),J(a,g),g&&g.cancel===!1&&(a.wu().execute({cmd:h,sheetName:a.name(),index:e,level:f,collapsed:c.isExpanded}),K(a,N(a,i,d,f,!1))))}function N(a,b,c,d,e){var f={sheet:a,sheetName:a.Cj,isRowGroup:b,index:c,level:d};return e&&(f.cancel=!1),f}function O(a,b){var c,d,e,f,g=this,h=g.Gt(),i=h.width,j=h.height;return i||j?(c=g.am(),d=new s(h.x,h.y,i,c.height),e=new s(h.x,h.y,c.width,j),d.contains(a,b)||e.contains(a,b)?(f=P(g,a,b,h.rowMaxLevel,!0),f||(f=P(g,a,b,h.colMaxLevel,!1)),f||{what:"empty",info:l}):l):l}function P(a,b,c,d,e){var f,g,h=new ea(a,e,d),i=h.WL(b,c,e);if(i)return{what:e?D:E,info:i};for(f=Q(a,e,d),g=0;g<=2;g++)if(i=f[g].XL(b,c,e))return{what:e?F:G,info:i};return l}function Q(a,b,c){var d=[new da(a,b,0,c),new da(a,b,1,c),new da(a,b,2,c)],e;for(e=0;e<=2;e++)d[e].YL();return d}function R(a,b){var c=b?a.width:a.height;return n(0,(c-2*this.PADDING)/(this.ZL+2))}function S(a,b){return a?b.rowOutlines:b.columnOutlines}k.OutlineDirection={backward:0,forward:1},k.OutlineState={expanded:0,collapsed:1},f=function(){function a(a,b,c,d){var e=this;e.children=[],e.parent=l,e.model=a,e.start=b,e.end=c,e.level=d}return a.prototype={state:function(a){var b=this,c=b.model;return arguments.length?void(c&&c.expand(b.level,0===a)):c?c.getState(b):0},contains:function(a){return this.start<=a&&a<=this.end},addChild:function(a){a&&(this.children.push(a),a.parent=this)}},a}(),k.OutlineInfo=f;function T(a,b,c){var d,e,f,g;if(c>0){for(d=a.items,g=[b,0],e=0;e<c;e++)g.push(l);if(d.splice.apply(d,g),a.V3<=0&&b>0&&(f=d[b-1]))for(e=0;e<c;e++)d[b+e]=new ca(f);Z(a)}}function U(a,b,c){c>0&&(a.items.splice(b,c),Z(a))}function V(a,b,c){var d=l,e=a.items,g,h,i;for(h=b;h<w(e)&&(g=e[h],!g||g.level<c||(d||(d=new f(a,h,h,c)),g.level>c&&(i=V(a,h,c+1),h=i.index,d.addChild(i.g)),h>d.end&&(d.end=h),!a.isGroupEnd(h,c)));h++);return{g:d,index:h}}function W(a,b){return b>=-1&&b<w(a.items)}function X(a,b,c){if(a){var d=[],e;for(d.unshift(a);w(d);){if(a=d.pop(),a.level===c&&a.contains(b))return a;e=a.children,q(e,function(a,b){d.unshift(b)})}}return l}function Y(a,b){switch(a){case"head":case"tail":return b===l;case"direction":return 1===b;case"itemsData":return 0===w(b);default:return!1}}function Z(a){a.$L=l,a.refresh()}function $(a){a.$L=a.createRangeGroup(),_(a)}function _(a,b){a.groupChangeHandler&&a.groupChangeHandler(b)}function aa(a,b,c){if(ba(a,b),!W(a,b+c-1))throw Error(H().Exp_InvalidCount)}function ba(a,b){if(!W(a,b))throw Error(H().Exp_InvalidIndex)}g=function(){function a(a){var b=this;b.head=l,b.tail=l,b.$L=l,b.items=Array(a),b.V3=0,b.wz=!0}return a.prototype={direction:z("direction",1),group:function(a,b){var c=this,d,e;for(aa(c,a,b),d=0;d<b;d++)e=a+d,c.items[e]?c.items[e].level++:c.items[e]=new ca;$(c),c.wz=!1},ungroupRange:function(a,b){var c=this,d,e;for(aa(c,a,b),d=0;d<b;d++)e=c.items[a+d],e&&e.level>-1&&e.level--;$(c)},ungroup:function(){var a=this,b=w(a.items);a.items=Array(b),$(a),a.wz=!0},expand:function(a,b){if(a<-1)throw Error(H().Exp_InvalidLevel);var c=this,d=c.items,e,f;for(e in d)d[e]&&(f=c.find(e,a),f&&c.expandGroup(f,b))},expandGroup:function(a,b){if(!a)throw Error(H().Exp_GroupInfoIsNull);var c=this,d=c.direction(),e=-1;0===d?e=a.start-1:1===d&&(e=a.end+1),c.setCollapsed(e,!b)},Xr:function(a){return!W(this,a)||!this.isCollapsed(a)},isCollapsed:function(a){var b=this.items[a];return b&&b.viewCollapsed&&b.level>-1},find:function(a,b){var c=this,d=c.$L,e=l;return d&&(b===-1?e=d:(ba(c,a),e=X(d,a,b))),e},getLevel:function(a){var b=this.items[a];return b?b.level:-1},getCollapsed:function(a){var b=this.items[a];return!!b&&!!b.collapsed},B4:function(a,b,c,d){var e,f;for(e=b;e<=c;e++)f=a[e],f||(f=a[e]=new ca,f.level=-1),f.viewCollapsed=d},setCollapsed:function(a,b){var c,d,e,f,g,h,i=this,j=!1,k=i.items;if(a<0?(c=i.head,c||(c=i.head=new ca)):a<w(k)?(c=k[a],c||(c=k[a]=new ca,c.level=-1)):(c=i.tail,c||(c=i.tail=new ca)),d=1===i.direction(),c.collapsed!==b&&(c.collapsed=b,j=!0,i.E4(a,b)),j){for(Z(i),a+=d?-1:1,f=[],g=i.find(a,i.getLevel(a)),h=g.start;h<=g.end;h++)f.push(h);e={indexes:f}}_(i,e)},E4:function(a,b){var c,d,e,f,g,h,i,j,k=this,l=k.items,m=1===k.direction(),n=m?-1:1,o=X(k.$L,a+n,k.getLevel(a+n));if(o)if(b)k.B4(l,o.start,o.end,!0);else{for(c=!1,d=o.parent;d;){if(e=m?d.end+1:d.start-1,l[e]&&l[e].collapsed&&l[e].level>-1){c=!0;break}d=d.parent}if(!c)for(k.B4(l,o.start,o.end,!1),f=[o],g=0;g>=0;)if(h=f[g--],e=m?h.end+1:h.start-1,l[e]&&l[e].collapsed&&l[e].level!==-1)k.B4(l,h.start,h.end,!0);else for(i=h.children,j=0;i&&j<i.length;j++)f[++g]=i[j]}},getMaxLevel:function(){var a=-1,b=this.items,c;return q(b,function(b,d){d&&(c=d.level,c>a&&(a=c))}),a},cB:function(a,b,c,d){if(!(c<=0||a===b)){a<0&&(a=0),b<0&&(b=0);for(var e=this,f=[],g=e.items,h=u(g,a-1),i;h>=0&&h<a+c;)i=new ca(g[h]),f.push({index:h-a,value:i}),h=u(g,h);d&&v(g,a,c),v(g,b,c),q(f,function(a,c){g[b+c.index]=c.value}),Z(e)}},bB:function(a,b,c,d,e){var f,g,h;if(b<0&&(b=0),c<0&&(c=0),f=[],a)for(g=u(a.items,b-1);g>=0&&g<b+d;)f[g-b]=new ca(a.items[g]),g=u(a.items,g);if(v(this.items,c,d),f.length>0)for(h in f)f.hasOwnProperty(h)&&(this.items[c+h]=f[h]);e&&v(a.items,b,d)},refresh:function(){this.wz||$(this)},VL:function(a){var b,c,d=this,e=d.items,f=w(e),g=a-f;if(g<0)e.splice(a,-g);else if(b=e[f-1])for(c=0;c<g;c++)e.push(new ca(b));else d.items=e.concat(Array(g));Z(d)},getState:function(a){var b=this,c=b.items,d,e=b.direction(),f=-1;return 0===e?f=a.start-1:1===e&&(f=a.end+1),d=f<0?b.head:f<w(c)?c[f]:b.tail,d&&d.collapsed?1:0},Ez:function(a,b){var c=this,d=c.items;a<0?(c.head||(c.head=new ca),c.head.level=b):a<w(d)?(d[a]||(d[a]=new ca),d[a].level=b):(c.tail||(c.tail=new ca),c.tail.level=b),Z(c)},suspendAdding:function(){this.V3++},resumeAdding:function(){this.V3--},createRangeGroup:function(){for(var a,b,c=this,d=w(c.items),e=new f(c,0,d-1,(-1)),g=0;g<d;)a=V(c,g,0),b=a.g,g=a.index+1,b&&b.level>-1&&e.addChild(b);return e},isGroupEnd:function(a,b){var c,d,e,f,g,h,i=this,j=i.items,k=a+1;return!W(i,k)||(!(c=j[k])||(d=c.level,e=j[a].level,f=!1,d<e&&(g=e-d,h=e-b,h>=0&&h<g&&(f=!0)),f))},hitTest:function(a,b,c){return O.call(a,b,c)},jp:function(a,b,c,d){var e,f,g,h,i,j,k,l=a.Gt(),m=a.am(),n=a.ss,o=l.width,p=l.height;if(o||p){if(e=d?o:m.width,f=d?m.height:p,g=d?l.rowMaxLevel:l.colMaxLevel,h=d?n.bn:n.dn,b.save(),b.beginPath(),!c||c.intersect(l.x,l.y,e,f))for(i=new ea(a,d,g),i._L(b),j=h.call(a.ss,function(){return Q(a,d,g)}),k=0;k<=2;k++)j[k].aM(b);b.beginPath(),b.restore()}},UL:function(a,b){if(b){var c=b.what;c===D||c===E?L(a,b):c!==F&&c!==G||M(a,b)}},iT:function(){return this.wz},fromJSON:function(a){var b,c,d,e,f,g,h,i,j,k,l;if(a)for(b=this,c=b.items,d=a.itemsData,e=a.direction,f=a.head,g=a.tail,k=[],q(d,function(a,d){if(h=d.index,i=d.info,h>=0&&i){for(j=0;j<d.count&&!(h+j>=w(c));j++)d.info.collapsed&&k.push(d),c[h+j]=new ca(i);b.wz=!1}}),y(e)||b.direction(e),f&&(b.head=f),g&&(b.tail=g),Z(b),l=0;l<k.length;l++)b.E4(k[l].index,!0)},toJSON:function(){var a,b,c,d,e,f=this,g=[],h=f.items,i=-1;for(a=0;a<w(h);a++)b=g[i],c=h[a],c&&(i>=0&&a===b.count+b.index&&c.level===b.info.level&&c.collapsed===b.info.collapsed?g[i].count++:g[++i]={index:a,count:1,info:{level:c.level,collapsed:c.collapsed}});return d={itemsData:g,direction:f.direction(),head:f.head,tail:f.tail},e={},q(d,function(a,b){Y(a,b)||(e[a]=b)}),p.isEmptyObject(e)?m:e}},a}(),k.Outline=g;function ca(a){return{level:a?a.level:0,collapsed:!!a&&a.collapsed,viewCollapsed:!!a&&a.viewCollapsed}}function da(a,b,c,d){var e=this;e.PADDING=2,e.LINE_SIZE=2,e.START_LINE_SIZE=6,e.bM=[],e.cM=[],e.dM=[],e.kj=a,e.ML=b,e.eM=c,e.ZL=x(d)?d:S(b,a).getMaxLevel()}da.prototype={YL:function(){var a,b=this;b.ZL!==-1&&(a=b.fM(0,b.ML),q(a,function(a,c){b.gM(c)}))},gM:function(a){var b,c,d,e,f,g,h,i,j,k,m,p,r,s,t,u,v,x,y=this,z=y.kj,A=y.ML,B=S(A,z).direction(),C=1===B,D=0===B,E=y.hM(!0,A),F=y.hM(!1,A),G=a.start,H=a.end,I=a.level;if(C?b=H+1:D&&(b=G-1),0===a.state()){if(c=!0,d=a.parent,d&&(D&&G===d.start||C&&H===d.end)&&(c=!1),c&&y.iM(!0,I,b,E,F,B),G<=F&&H>=E){for(e=n(E,G),f=o(F,H),c&&(g={start:e,end:f,level:I,startLine:l},(C&&e===G||D&&f===H)&&(g.startLine=!0),y.bM.push(g)),j=[],k=a.children,h=e;h<=f;h++)j.push(!1);for(q(k,function(a,b){var c=b.start,d=b.end,f;if(1===b.state())for(i=c;i<=d;i++)j[i-e]=!0;C?f=d+1:D&&(f=d-1),j[f-e]=!0,y.gM(b)}),m=!0,h=0;h<w(k);h++){if(p=k[h],r=p.start,s=p.end,t=r===G,u=s===H,t&&u){m=!1;break}if(C&&u||D&&t)for(i=r;i<=s;i++)j[i-e]=!0}if(m)for(v=e;v<=f;v++)j[v-e]||(x={index:v,level:I+1},y.cM.push(x))}}else 1===a.state()&&y.iM(!1,I,b,E,F,B)},iM:function(a,b,c,d,e,f){var g={isExpanded:a,level:b};a&&(g.paintLine=!0),c>=d&&c<=e&&(g.index=c,g.lineDirection=f,this.dM.push(g))},jM:function(a){var b=this,c=b.kj,d=b.eM;return b.ML?c.Gr(d).findRow(a):c.Hr(d).findCol(a)},aM:function(a){var b,c,d,e,f,g,h,i=this;i.ZL!==-1&&(b=i.kj.Gt(),c=i.ML,d=R.call(i,b,c),d&&(e=i.START_LINE_SIZE,f=i.PADDING,g=i.LINE_SIZE,h=n(0,(d-e)/2)+f,a.save(),a.fillStyle=r(B).color,i.kM(a,i.cM,c,b,d,h,g),i.lM(a,i.bM,c,b,d,h,g,e),i.mM(a,i.dM,c,b,d,h,g,f),a.beginPath(),a.restore()))},kM:function(a,b,c,d,e,f,g){var h,i,j=this;q(b,function(b,k){var l,m,o=j.jM(k.index);o&&(l=c?o.y:o.x,m=(c?o.height:o.width)-g,m>=0&&(h=l+n(0,m/2),i=k.level*e+f,c?h=[i,i=h][0]+.5:i+=.5,a.fillRect(d.x+h,d.y+i,g,g)))})},lM:function(a,b,c,d,e,f,g,h){var i,j,k,l,m,p,q,r,s,t,u,v=this,x=v.kj,y=S(c,x).direction();for(i=0;i<w(b);i++){j=b[i],k=j.start,l=j.end;do m=v.jM(k),k++;while(!m&&k<=l);do p=v.jM(l),l--;while(!p&&l>=k);(m||p)&&(!m&&p?m=p:m&&!p&&(p=m),q=c?m.y:m.x,r=j.level*e+f,s=c?g:n(0,p.x+p.width-m.x),t=c?n(0,p.y+p.height-m.y):g,1===y&&(q+=1),c?q=[r,r=q][0]+.5:r+=.5,a.fillRect(d.x+q,d.y+r,s,t),j.startLine&&(u=o(h,e-g),u>0&&(0===y&&(c?r=r+t-g:q=q+s-g),c&&r>=m.y&&r<p.y+p.height?a.fillRect(d.x+q,d.y+r,u,g):!c&&q>=m.x&&q<p.x+p.width&&a.fillRect(d.x+q,d.y+r,g,u))))}},mM:function(a,b,c,d,e,f,g,h){var i,j,k,l,m,p,q,s,t,u,v,x,y,z,A,D,E,F=this;for(i=0;i<w(b);i++)j=b[i],k=F.jM(j.index),k&&(l=c?k.height:k.width,l<=0||(m=n(0,(l-e)/2),s=(c?k.y:k.x)+m,t=j.level*e+h,u=o(e,l),v=e,z=l-u,c?(s=[t,t=s][0],u=[v,v=u][0],x=.5,y=0):(x=0,y=.5),a.strokeStyle=r(C).borderTopColor,a.lineWidth=1,a.fillStyle=r(C).backgroundColor,a.fillRect(d.x+s,d.y+t,u,v),p=d.x+s+x,q=d.y+t+y,a.strokeRect(p,q,u,v),a.fillStyle=r(B).color,F.nM(a,j.isExpanded,p,q,u,v),j.paintLine&&z>0&&(s=c?k.y:k.x,t=j.level*e+f,A=0===j.lineDirection,D=c?g:m,E=c?m:g,c?(s=[t,t=s][0],A&&(t+=m+v,E=z-m)):A&&(s+=m+u,D=z-m),a.fillRect(d.x+s+x,d.y+t+y,D,E))))},nM:function(a,b,c,d,e,f){b||a.fillRect(c+e/2-1,d+4,2,f-8),a.fillRect(c+4,d+f/2-1,e-8,2)},fM:function(a,b){var c,d,e,f=this,g=f.kj,h=[],i=-1,j=-1,k=S(b,g),l=b?g.Gr:g.Hr,m=l.call(g,f.eM),p=w(m);for(p&&(d=m[0],e=m[p-1],i=n(0,(b?d.row:d.col)-1),j=b?o(g.getRowCount(),e.row+2):o(g.getColumnCount(),e.col+2));i<j;)c=k.find(i,a),c?(i=c.end+1,h.push(c)):i++;return h},hM:function(a,b){var c=-1,d=this,e=d.kj,f=d.eM,g=e.frozenRowCount(),h=e.frozenColumnCount(),i=e.frozenTrailingRowCount(),j=e.frozenTrailingColumnCount(),k=e.getRowCount(),l=e.getColumnCount();return 0===f?c=a?0:(b?g:h)-1:1===f?c=a?b?g:h:(b?k-i:l-j)-1:2===f&&(c=a?b?k-i:l-j:(b?k:l)-1),c},oM:function(a){a&&this.kj.CH&&(a.x-=2,a.y-=2,a.width+=4,a.height+=4)},XL:function(a,b,c){var d,e,f,g,h,i,j,k,m,p,q,r,t,u,v,x=this,y=x.ZL;if(y<0)return l;if(d=x.kj,e=d.Gt(),f=R.call(x,e,c),!f)return l;for(g=x.dM,j=0;j<w(g);j++)if(k=g[j],m=k.index,p=k.level*f+x.PADDING,q=x.jM(m),q&&(h=c?q.height:q.width,!(h<=0)&&(r=o(f,h),t=f,u=(c?q.y:q.x)+n(0,(h-f)/2),v=p,c&&(r=[t,t=r][0],u=[v,v=u][0]),i=new s(e.x+u+.5,e.y+v+.5,r,t),x.oM(i),i.contains(a,b))))return k;return l}};function ea(a,b,c){var d=this;d.PADDING=2,d.kj=a,d.ML=b,d.ZL=x(c)?c:S(b,a).getMaxLevel()}ea.prototype={_L:function(a){var b,c,d,e,f,g,h,i,j,k,l,m,o,p,q,s,t,u,v,w,x,y,z,A,D,E,F=this,G=F.kj,H=F.ZL;if(!(H<0)&&(b=F.ML,c=G.Gt(),d=R.call(F,c,b),d&&(e=H+2,f=F.PADDING,g=G.options,h=c.width,i=c.height,j=c.x,k=c.y,l=G.am(),m=l.width,o=l.height,p=l.Cr,q=l.Br,s=l.zr,t=l.Ar,a.fillStyle=r(B).backgroundColor,a.strokeStyle=r(C).borderTopColor,a.font="8.25pt Arial",a.lineWidth=1,a.fillRect(j,k,b?h:m,b?o:i),a.strokeRect(j-.5,k-.5,b?h:m+1,b?o+1:i),b?a.strokeRect(j-.5,t-.5,h,p):a.strokeRect(s-.5,k-.5,q,i),u=(b?p:q)-d,w=n(0,(b?t:s)+u/2),x=f,b&&(w=[x,x=w][0]),v=b?g.colHeaderVisible:g.rowHeaderVisible,v&&u>=0)))for(y=0;y<e;y++)z=d-1,D=j+w,E=k+x,b?D+=.5:E+=.5,a.fillStyle=r(C).backgroundColor,a.fillRect(D,E,z,z),a.strokeRect(D,E,z,z),a.fillStyle=r(C).color,A=G.fp(a.font),F.pM(a,D,E,z,d,y+1,A),b?w+=d:x+=d},pM:function(a,b,c,d,e,f,g){var h=""+f,i=a.measureText(h).width;i<=d&&g<=e&&(a.textBaseline="middle",a.fillText(h,b+(d-i)/2,c+d/2))},WL:function(a,b,c){var d,e,f,g=this,h=g.kj,i=g.ZL;return i<0?l:(d=i+2,e=h.am(),f=h.options,c?g.qM(h,a,b,c,f.colHeaderVisible,e.Cr,e.Ar,d):g.qM(h,a,b,c,f.rowHeaderVisible,e.Br,e.zr,d))},qM:function(a,b,c,d,e,f,g,h){var j=this,k=a.Gt(),m=R.call(j,k,d),o=f-m,p,q,r,s;if(m&&e&&o>=0)for(p=n(0,g+o/2),q=j.PADDING,d&&(p=[q,q=p][0]),s=0;s<h;s++){if(r=new i.Rect(k.x+p,k.y+q,m,m),r.contains(b,c))return{index:s};d?p+=m:q+=m}return l}},a.exports=k},function(a,b){a.exports={Exp_InvalidIndex:"Invalid index",Exp_InvalidCount:"Invalid count",Exp_InvalidLevel:"Invalid level",Exp_GroupInfoIsNull:"groupInfo is null"}}]);