gc.spread.sheets.sparklines.10.0.1.min.js 24 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.Sparklines=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){a.exports=c(1),c(5)},function(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y=c(2),z=c(3),A=c(4);b={},d=y.GC$,e=d.isEmptyObject,f=y.Worksheet,g=y.Fp,h=y.kf,i=z.j.Fa,j=z.k,k=j.Fb,l=j.Bb,m=A.Vd,n=A.SparklineRender,o=null,p=void 0,q=Math.max,r=Number.MAX_VALUE,s="sparkline",t={init:function(){var a=this;a.ZA=new C(a,a)},dispose:function(a){a!==!1&&(this.ZA=o)},onLayoutChanged:function(a){var b,c=a.changeType,d=a.row,e=a.rowCount,f=a.col,g=a.colCount,h=this.ZA;"addRows"===c?h.rI(d,e):"deleteRows"===c?h.GR(d,e):"addColumns"===c?h.tI(f,g):"deleteColumns"===c?h.HR(f,g):"clear"===c&&(b=a.type,3===a.sheetArea&&16===(16&b)&&h.clear(d,f,e,g))},toJson:function(a){a.sparklineGroups=this.ZA.toJSON()},fromJson:function(a,b){var c,d,e,f,g,h,i=this,j=i.ZA,k=a.sparklineGroupManager,l=b?k&&k.groups:a.sparklineGroups;if(l)for(j.fromJSON(l,b),c=j.groups(),f=i.Mp(),g=0;g<c.length;g++)for(d=c[g].PS,h=0;h<d.length;h++)e=d[h],f.setValueForKey(e.row,e.column,s,e)}},f.$n("sparkline",t),u={getSparkline:function(a,b){if(!this.ZA)return o;var c=this.Mp();return c.getValueForKey(a,b,s)},setSparkline:function(a,b,c,d,e,f,g,h){var j,k,l=this,m=l.ZA;return m?(j=new M(a,b,c,d,e,f),g&&!i(h)&&(j.dateAxisData(g),j.dateAxisOrientation(h),j.group().displayDateAxis=!0),k=l.getSparkline(a,b),l.removeSparkline(a,b),B.call(l,a,b,k,j),l.$p(),j):o},removeSparkline:function(a,b){var c,d,e=this,f=e.ZA;f&&(c=e.getSparkline(a,b),c&&(d=c.group(),d.remove(c),d.count()<=0&&f.remove(d),B.call(e,a,b,c,o)),e.$p())},groupSparkline:function(a){var b,c,d,e,f=this.ZA;if(!f)return o;for(b=o,c=0;c<a.length;c++)d=a[c],d&&(b?(e=d.group(),e.remove(d),b.add(d),e.count()<=0&&f.remove(e)):b=d.group());return this.$p(),b},ungroupSparkline:function(a){var b,c,d,e,f=this,g=f.ZA;if(g&&a){for(b=[],b=b.concat(a.PS),c=0;c<b.length;c++)d=b[c],d&&(a.remove(d),e=a.clone(),e.add(d),g.add(e));g.remove(a),f.$p()}}};function B(a,b,c,d){var e=this,f=e.ZA,g=e.Mp();g.setValueForKey(a,b,s,d),d&&f.add(d.group()),e.Bq("sparkline",a,b,3,c,d)}d.extend(f.prototype,u);function C(a,b){this.Ub=[],this.kj=a,this.evaluator=b}C.prototype={constructor:C,groups:function(a){return 0===arguments.length?this.Ub:void(this.Ub=a)},add:function(a){this.groups().push(a),a.ZA=this,a.QS()},remove:function(a){k(this.groups(),a)},contains:function(a){return l(this.groups(),a)},count:function(){return this.groups().length},rI:function(a,b){F(this.Ub,a,b,!0)},tI:function(a,b){F(this.Ub,a,b,!1)},GR:function(a,b){J(this.Ub,a,b,!0)},HR:function(a,b){J(this.Ub,a,b,!1)},clear:function(a,b,c,d){var e,f,g,h,i,j,k,l=this;if(0===arguments.length){for(e=l.Ub,f=0;f<e.length;f++)g=e[f],g&&(g.SparklineGroupManager=o);l.Ub=[]}else for(h=a;h<a+c;h++)for(i=b;i<b+d;i++)j=l.RS(h,i),j&&(k=j.group(),k.remove(j),0===k.count()&&l.remove(k))},RS:function(a,b){var c,d,e,f,g=this.Ub;for(c=0;c<g.length;c++)for(d=g[c],e=0;e<d.count();e++)if(f=d[e],f&&f.row===a&&f.column===b)return f;return o},Zz:function(a,b,c,d,e,f,h){var j,k,l,m,n,p,q,r,t,u,v,w,x=this,y=x.kj;if(y){for(j=new g(e,f,o),k=c-a,l=d-b,p=y.getRowCount(),q=y.getColumnCount(),r=y.Mp(),m=0;m<e;m++)if(!(h&&y.Ps&&y.Ps(c+m)))for(n=0;n<f;n++)t=y.getSparkline(a+m,b+n),t&&(u=t.clone(),u.row=c+m,u.column=d+n,v=u.dateAxisData(),i(v)||x.SS(v,k,l,p,q)&&u.dateAxisData(v.offset(l,k)),w=u.data(),i(w)||x.SS(w,k,l,p,q)&&u.data(w.offset(l,k)),x.add(u.group()),j.setValue(m,n,u));for(m=0;m<e;m++)if(!(h&&y.Ps&&y.Ps(c+m)))for(n=0;n<f;n++)r.setValueForKey(c+m,d+n,s,j.getValue(m,n))}},SS:function(a,b,c,d,e){var f,g,h,i,j=this.TS(a);return!!j&&(f=q(j.row,0),g=q(j.col,0),h=j.row<0?d:j.rowCount,i=j.col<0?e:j.colCount,!(f+b<0||g+c<0||f+h+b>d||g+i+c>e))},aB:function(a,b,c,d,e,f){var h,i,j,k,l,m=this.kj;if(m){for(this.US(a,b,c,d,e,f),h=m.Mp(),i=new g(e,f,o),j=0;j<e;j++)for(k=0;k<f;k++)l=m.getSparkline(a+j,b+k),l&&(l.row=c+j,l.column=d+k,i.setValue(j,k,l)),h.setValueForKey(a+j,b+k,s,o);for(j=0;j<e;j++)for(k=0;k<f;k++)h.setValueForKey(c+j,d+k,s,i.getValue(j,k))}},US:function(a,b,c,d,e,f){var g,i,j,k,l,m,n,o,p,q=this,r=h(a,b,e,f),s=c-a,t=d-b,u=q.Ub;for(g=0;g<u.length;g++)for(i=u[g],j=i.PS,k=0;k<j.length;k++)l=j[k],l&&(m=l.dateAxisData(),n=q.TS(m),n&&r.containsRange(n)&&r.contains(l.row,l.column)&&l.dateAxisData(m.offset(t,s)),o=l.data(),p=q.TS(o),p&&r.containsRange(p)&&r.contains(l.row,l.column)&&l.data(o.offset(t,s)))},TS:function(a){return a},_A:function(a,b,c,d,e,f,g,h){var j,k,l,m,n,p,q,r,t,u,v,w=this,x=w.kj;if(x){if(a===x)return void w.Zz(b,c,d,e,f,g);for(j=d-b,k=e-c,l=x.Mp(),m=x.getRowCount(),n=x.getColumnCount(),p=0;p<f;p++)if(!(h&&x.Ps&&x.Ps(d+p)))for(q=0;q<g;q++)r=a.getSparkline(b+p,c+q),r?(t=r.clone(),t.row=d+p,t.column=e+q,u=t.dateAxisData(),i(u)||w.SS(u,j,k,m,n)&&t.dateAxisData(u.offset(k,j)),v=t.data(),i(v)||w.SS(v,j,k,m,n)&&t.data(v.offset(k,j)),w.add(t.group()),l.setValueForKey(d+p,e+q,s,t)):l.setValueForKey(d+p,e+q,s,o)}},$A:function(a,b,c,d,e,f,g){var h,i,j,k,l,m,n,p=this,q=p.kj;if(q){if(a===q)return void p.aB(b,c,d,e,f,g);for(h=a.Mp(),i=q.Mp(),p.VS(a,b,c,d,e,f,g),j=0;j<f;j++)for(k=0;k<g;k++)l=a.getSparkline(b+j,c+k),l?(l.row=d+j,l.column=e+k,m=l.group(),n=m.clone(),m.remove(l),m.count()<=0&&a.ZA.remove(m),n.add(l),p.add(n),i.setValueForKey(d+j,e+k,s,l)):i.setValueForKey(d+j,e+k,s,o),h.setValueForKey(b+j,c+k,s,o)}},VS:function(a,b,c,d,e,f,g){var i,j,k,l,m,n,o,p,q,r,s,t,u=this,v=u.kj;if(a&&v){if(a===v)return void u.US(b,c,d,e,f,g);for(i=h(b,c,f,g),j=d-b,k=e-c,l=a.ZA.Ub,m=0;m<l.length;m++)for(n=l[m],o=0;o<n.PS.length;o++)p=n.PS[o],p&&(q=p.dateAxisData(),r=u.TS(q),r&&i.containsRange(r)&&i.contains(p.row,p.column)&&p.dateAxisData(q.offset(k,j)),s=p.data(),t=u.TS(s),t&&i.containsRange(t)&&i.contains(p.row,p.column)&&p.data(s.offset(k,j)))}},toJSON:function(){var a,b=this.Ub,c=[];for(a=0;b&&a<b.length;a++)c.push(b[a].toJSON());return 0===c.length?p:c},fromJSON:function(a,b){var c,d,e;for(c=0;a&&c<a.length;c++)d=a[c],e=new L,e.fromJSON(d,b),this.add(e)}};function D(a,b,c){return c?a>c.row+c.rowCount-1?c:a>c.row?h(c.row,c.col,c.rowCount+b,c.colCount):h(c.row+b,c.col,c.rowCount,c.colCount):o}function E(a,b,c){return c?a>c.col+c.colCount-1?c:a>c.col?h(c.row,c.col,c.rowCount,c.colCount+b):h(c.row,c.col+b,c.rowCount,c.colCount):o}function F(a,b,c,d){var e,f,g,h,i,j,k,l,m;for(e=0;e<a.length;e++)for(f=a[e],g=f.PS,f.displayDateAxis&&(i=f.dateAxisData(),h=d?D(b,c,i):E(b,c,i),f.dateAxisData(h)),j=0;j<g.length;j++)k=g[j],m=k.data(),d?(b<=k.row&&(k.row+=c),l=D(b,c,m)):(b<=k.column&&(k.column+=c),l=E(b,c,m)),k.data(l)}function G(a,b,c){var d=I(c.col,c.col+c.colCount-1,a,a+b-1);return d?h(c.row,d.start,c.rowCount,d.end-d.start+1):o}function H(a,b,c){var d=I(c.row,c.row+c.rowCount-1,a,a+b-1);return d?h(d.start,c.col,d.end-d.start+1,c.colCount):o}function I(a,b,c,d){var e,f,g,h,i,j,k=-1;if(d<a)return g=d-c+1,k=a-g,e=b-g,{start:k,end:e};if(c>b)return k=a,e=b,{start:k,end:e};if(c<=a){for(h=b-a+1,i=0,f=a;f<=d&&f<=b;f++)i++;return k=c,e=k+h-i-1,{start:k,end:e}}for(j=0,f=a;f<=b;f++)k===-1&&(f<c||f>d)&&(k=f),(f<c||f>d)&&j++;return k!==-1&&j>0?(e=k+j-1,{start:k,end:e}):o}function J(a,b,c,d){var e,f,g,h,j,l,m,n,o,p;for(e=0;e<a.length;e++){if(f=a[e],f.displayDateAxis){if(h=f.dateAxisData(),g=d?H(b,c,h):G(b,c,h),i(g)){f.clear(),k(a,f);continue}f.dateAxisData(g)}for(j=[],j=j.concat(f.PS),l=0;l<j.length;l++)m=j[l],n=d?m.row:m.column,n>=b&&n<b+c?f.remove(m):(b<=n&&(d?m.row-=c:m.column-=c),p=m.data(),o=d?H(b,c,p):G(b,c,p),i(o)?f.remove(m):m.data(o));f.count()<=0&&k(a,f)}}b.EmptyValueStyle={gaps:0,zero:1,connect:2},b.SparklineAxisMinMax={individual:0,group:1,custom:2},v=z.pc.bc(255,149,179,215),w=z.pc.bc(255,36,64,98),x={axisColor:"black",firstMarkerColor:v,highMarkerColor:"Blue",lastMarkerColor:v,lowMarkerColor:"Blue",markersColor:w,negativeColor:"Brown",seriesColor:w,displayEmptyCellsAs:0,rightToLeft:!1,displayHidden:!1,displayXAxis:!1,showFirst:!1,showHigh:!1,showLast:!1,showLow:!1,showNegative:!1,showMarkers:!1,manualMax:0,manualMin:0,maxAxisType:0,minAxisType:0,lineWeight:1};function K(a){var b,c=this;c.options={};for(b in x)x.hasOwnProperty(b)&&(c.options[b]=a&&a[b]?a[b]:x[b]);c.WS=o}K.prototype={constructor:K,clone:function(){return new K(this.options)},toJSON:function(){var a,b=this,c=b.options,d={};for(a in c)x[a]!==c[a]&&(d[a]=c[a]);return e(d)?p:d}},b.SparklineSetting=K,b.SparklineType={line:0,column:1,winloss:2},b.DataOrientation={vertical:0,horizontal:1};function L(a,b){var c=this;c.displayDateAxis=!1,c.ZA=o,c.PS=[],c.XS=o,c.YS=1,c.setting=b,c.sparklineType=a}L.prototype={constructor:L,add:function(a){var b=this;a&&(b.PS.push(a),a.group(b),b.QS(),b.onGroupChanged())},clear:function(){this.PS=[]},remove:function(a){var b=this,c=b.PS;return k(c,a),a.onSparklineChanged(),a.cb=b.clone(),b.QS(),b.onGroupChanged(),c},contains:function(a){return l(this.PS,a)},onGroupChanged:function(){var a,b,c=this.PS;if(c)for(a=0;a<c.length;a++)b=c[a],b&&b.onSparklineChanged()},clone:function(){var a=this,b=a.setting?a.setting.clone():o,c=new L(a.sparklineType,b);return c.displayDateAxis=a.displayDateAxis,c.XS=a.XS,c.YS=a.YS,c},dateAxisData:function(a){var b,c=this;return 0===arguments.length?c.XS:(b=c.XS,c.XS=a,void(b!==a&&c.onGroupChanged()))},dateAxisOrientation:function(a){var b,c=this;return 0===arguments.length?c.YS:(b=c.YS,c.YS=a,void(b!==a&&c.onGroupChanged()))},count:function(){return this.PS.length},QS:function(){var a,b,c,d,e,f,g,h,i=this,j=i.setting,k=i.PS;if(j&&(a=j.options,a.groupMaxValue=-r,a.groupMinValue=r,b=1===a.maxAxisType,c=1===a.minAxisType,b||c))for(d=0;d<k.length;d++)e=k[d],f=i.ZS(e),g=f.min,h=f.max,b&&a.groupMaxValue<h&&(a.groupMaxValue=h),c&&a.groupMinValue>g&&(a.groupMinValue=g)},ZS:function(a){var b,c,d,e,f=-r,g=r,h=a.data();if(h)for(b=a.$S(h,a.dataOrientation(),!1),c=0;c<b.length;c++)d=b[c],d===m&&(d=0),"number"==typeof d&&(e=d,f=f<e?e:f,g=g>e?e:g);return{min:g,max:f}},toJSON:function(){var a,b,c,d,f;function g(a,b){var c=!1;return"setting"===a||"axisReference"===a?c=b===o:"displayDateAxis"===a?c=b===!1:"axisOrientation"===a?c=1===b:"sparklines"===a&&(c=0===b.length),c}a=this,b={setting:a.setting?a.setting.toJSON():o,displayDateAxis:a.displayDateAxis,sparklineType:a.sparklineType,axisReference:a.XS,axisOrientation:a.YS,sparklines:a.PS.map(function(a){return a.toJSON()})},c={};for(d in b)b.hasOwnProperty(d)&&(f=b[d],g(d,f)||(c[d]=f));return e(c)?p:c},fromJSON:function(a,b){var c,d,e,f,g,h,j,k,l;if(a&&(c=this,d=a.displayDateAxis,e=a.sparklineType,f=a.axisReference,g=a.axisOrientation,h=a.sparklines,c.setting=new K(a.setting),i(d)||(c.displayDateAxis=d),i(e)||(c.sparklineType=e),i(f)||(c.XS=f),i(g)||(c.YS=g),h))for(c.PS=[],j=0,k=h.length;j<k;j++)l=new M,l.fromJSON(h[j],b),c.add(l)}},b.SparklineGroup=L;function M(a,b,c,d,e,f){var g=this;g.row=a,g.column=b,g._S=d,g.aT=c,g.cb=new L(e,f),g.cb.add(g)}M.prototype={constructor:M,group:function(a){var b,c,d=this;return 0===arguments.length?(b=d.cb,b||(b=new L,b.add(d),d.cb=b),b):(c=d.cb,a!==c&&(c&&c.remove(d),d.cb=a,a&&(a.contains(d)||a.add(d)),d.onSparklineChanged()),d)},sparklineType:function(a){var b,c=this;return 0===arguments.length?c.group().sparklineType:(b=c.group(),b.sparklineType!==a&&(b.sparklineType=a,c.onSparklineChanged()),c)},onSparklineChanged:function(){var a=this,b=a.bT();b&&b.Wq(y.Events.SparklineChanged,{sheet:b,sheetName:b.Cj,sparkline:a})},setting:function(a){var b=this,c=b.group();return 0===arguments.length?c.setting:(c.setting=a,b)},data:function(a){var b=this;return 0===arguments.length?b.aT:(b.aT!==a&&(b.aT=a,b.onSparklineChanged()),b)},dataOrientation:function(a){var b=this;return 0===arguments.length?b._S:(b._S!==a&&(b._S=a,b.onSparklineChanged()),b)},dateAxisData:function(a){var b=this,c=b.group();return 0===arguments.length?c.dateAxisData():(c.dateAxisData(a),b)},dateAxisOrientation:function(a){var b=this,c=b.group();return 0===arguments.length?c.dateAxisOrientation():(c.dateAxisOrientation(a),b)},displayDateAxis:function(a){var b=this,c=b.group();return 0===arguments.length?c.displayDateAxis:(c.displayDateAxis=a,b)},clone:function(){var a=this,b=new M;return b.row=a.row,b.column=a.column,b.data(a.data()),b.dataOrientation(a.dataOrientation()),b.group(a.group().clone()),b},paintSparkline:function(a,b,c,d,e){var f=this,g=f.bT(),h={sparklineType:f.sparklineType(),displayDateAxis:f.displayDateAxis(),zoomFactor:g._zoomFactor,values:f.$S(f.data(),f.dataOrientation()),dateValues:f.$S(f.dateAxisData(),f.dateAxisOrientation(),!0),settings:f.setting(),getColor:function(a){if(g&&a){var b=y.Rm.Om(g,a);if(b)return b}return a}};(new n).paint(a,h,b,c,d,e)},$S:function(a,b,c){var d=this,e=d.bT(),f=d.setting().options.displayHidden;return M.cT(p,e,f,a,b,c)},bT:function(){var a=this.group(),b=a&&a.ZA;return b?b.kj:o},toJSON:function(){var a=this;return{row:a.row,col:a.column,orientation:a._S,data:a.aT}},fromJSON:function(a){var b,c,d,e,f,g;a&&(b=this,c=a.row,d=a.col,e=a.orientation,f=a.data,i(c)||(b.row=c),i(d)||(b.column=d),i(e)||(b._S=e),f&&(g=f,b.aT=h(g.row,g.col,g.rowCount,g.colCount)))}},M.cT=function(a,b,c,d,e,f){var g,h,j,k,l,n="number",o=[],p=1===e;if(b&&d)for(g=0,h=p?d.colCount:d.rowCount;g<h;g++)j=p?0:g,k=p?g:0,l=a?a[j][k]:b.getValue(d.row+j,d.col+k),!c&&(b.getRowHeight(d.row+j)<=0||b.getColumnWidth(d.col+k)<=0)?l=NaN:i(l)||(f?l=typeof l===n?z.l.Xb(l):Date.parse(l):typeof l!==n&&(l=m)),o.push(l);return o},b.Sparkline=M,a.exports=b},function(a,b){a.exports=GC.Spread.Sheets},function(a,b){a.exports=GC.Spread.Common},function(a,b){a.exports=GC.Spread.Sparklines},function(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L=c(6),M=c(2),N=c(4),O=c(1),P=c(3);b=O,d=L&&L.Convert.Fh,e=L&&L.Functions,f=e&&e.Function,g=e&&e.bi,h=P.j.Fa,i=M.GC$,j=M.Workbook,k=i.inherit,l=i.extend,m=N.SparklineRender,n=N.SparklineExRenders,o=null,p=isNaN,q=parseFloat,r=NaN,s="PIESPARKLINE",t="AREASPARKLINE",u="SCATTERSPARKLINE",v="BULLETSPARKLINE",w="SPREADSPARKLINE",x="STACKEDSPARKLINE",y="HBARSPARKLINE",z="VBARSPARKLINE",A="VARISPARKLINE",B="BOXPLOTSPARKLINE",C="CASCADESPARKLINE",D="PARETOSPARKLINE",E="MONTHSPARKLINE",F="YEARSPARKLINE",G="LINESPARKLINE",H="COLUMNSPARKLINE",I="WINLOSSSPARKLINE";function Q(a){return 0===a}function R(a){return 0===a||2===a}function S(a){var b,c,e,f,g,h,i=[];if(d(a))for(b=0,c=a.getRangeCount();b<c;b++)for(e=a.getRowCount(b),f=a.getColumnCount(b),g=0;g<e;g++)for(h=0;h<f;h++)i.push(a.getValue(b,g,h));return i}function T(a,b){var c,e,f,g,h,i=[];if(d(a)&&(c=a.getRangeCount(),c>b))for(e=a.getRowCount(b),f=a.getColumnCount(b),g=0;g<e;g++)for(i[g]=[],h=0;h<f;h++)i[g].push(a.getValue(b,g,h));return i}function U(a){var b;return d(a)?b=a.getValue(0,0,0):h(a)||(b=a),b}J=b.SparklineExValue=function(a,b){this.name=a,this.value=b};function V(){var a,b,c=this.createFunction();c&&(a=c.name,b=c.evaluate,c.evaluate=function(){var c=b.call(this,arguments);return c?new J(a,c):o},this.Cj=a,a&&!e.findGlobalFunction(a)&&(e.ci[a]=c)),this.typeName=""}l(V.prototype,{name:function(){return this.Cj},createFunction:function(){return o},paint:function(a,b,c,d,e,f,g){},toJSON:function(){var a,b={};for(a in this)this.hasOwnProperty(a)&&(b[a]=this[a]);return b},fromJSON:function(a){if(a)for(var b in a)h(a[b])||(this[b]=a[b])}}),b.SparklineEx=V;function W(){V.call(this)}k(W,V),l(W.prototype,{createFunction:function(){var a=new f(s,1,255);return a.evaluate=function(a){var b=a[0],c=S(b);return c.length<=0&&!h(b)&&c.push(b),{values:c,colors:Array.prototype.slice.call(a,1)}},a.acceptsReference=Q,a},paint:n[s]}),b.PieSparkline=W;function X(){V.call(this)}k(X,V),l(X.prototype,{createFunction:function(){var a=new f(t,1,7);return a.evaluate=function(a){return{points:S(a[0]),mini:a[1],maxi:a[2],line1:a[3],line2:a[4],colorPositive:a[5],colorNegative:a[6]}},a.acceptsReference=Q,a},paint:n[t]}),b.AreaSparkline=X;function Y(){V.call(this)}k(Y,V),l(Y.prototype,{createFunction:function(){var a=new f(u,1,18);return a.evaluate=function(a){var b=T(a[0],0),c=T(a[1],0);return{points1:b,points2:c,minX:a[2],maxX:a[3],minY:a[4],maxY:a[5],hLine:a[6],vLine:a[7],xMinZone:a[8],xMaxZone:a[9],yMinZone:a[10],yMaxZone:a[11],tags:a[12],drawSymbol:a[13],drawLines:a[14],color1:a[15],color2:a[16],dash:a[17]}},a.acceptsReference=function(a){return 0===a||1===a},a},paint:n[u]}),b.ScatterSparkline=Y;function Z(){V.call(this)}k(Z,V),l(Z.prototype,{createFunction:function(){var a=new f(v,3,9);return a.evaluate=function(a){return{measure:U(a[0]),target:U(a[1]),maxi:U(a[2]),good:U(a[3]),bad:U(a[4]),forecast:U(a[5]),tickUnit:U(a[6]),colorScheme:a[7],vertical:a[8]}},a.acceptsReference=function(a){return 0<=a&&a<=6},a},paint:n[v]}),b.BulletSparkline=Z;function $(){V.call(this)}k($,V),l($.prototype,{createFunction:function(){function a(a){var b,c,d,e,f=[];for(c=0,d=0,e=a.length;c<e;c++)b=q(a[c]),!p(b)&&isFinite(b)&&(f[d++]=b);return f}function b(a){var b,c,d,e,f,g={};for(b=0,d=a.length;b<d;b++)c=a[b],g[c]?g[c]++:g[c]=1;e=[];for(f in g)g.hasOwnProperty(f)&&e.push({key:q(f),value:g[f]});return e.sort(function(a,b){return a.key-b.key})}var c=new f(w,1,7);return c.evaluate=function(c){var d,e,f,g,i,j,k,l,m=S(c[0]),n=[];if(!h(m)&&(m=a(m),n=b(m),d=c[4],3===d))for(e=0,f=n.length;e<f;e++){for(g=n[e],i=g.value,j=[],k=Math.max(100,10*i),l=0;l<k+i-1;l++)j.push(Math.random());g.randomNumbers=j}return{spreadData:n,showAverage:c[1],scaleStart:c[2],scaleEnd:c[3],style:d,colorScheme:c[5],vertical:c[6]}},c.acceptsReference=Q,c},paint:n[w]}),b.SpreadSparkline=$;function _(){V.call(this)}k(_,V),l(_.prototype,{createFunction:function(){var a=new f(x,1,13);return a.evaluate=function(a){return{points:S(a[0]),colorRange:S(a[1]),labelRange:S(a[2]),maximum:a[3],targetRed:a[4],targetGreen:a[5],targetBlue:a[6],targetYellow:a[7],color:a[8],highlightPosition:a[9],vertical:a[10],textOrientation:a[11],textSize:a[12]}},a.acceptsReference=function(a){return 0<=a&&a<=2},a},paint:n[x]}),b.StackedSparkline=_;function aa(){V.call(this)}k(aa,V),l(aa.prototype,{createFunction:function(){var a=new f(y,1,2);return a.evaluate=function(a){return{value:U(a[0]),colorScheme:a[1]}},a.acceptsReference=Q,a},paint:n[y]}),b.HBarSparkline=aa;function ba(){V.call(this)}k(ba,V),l(ba.prototype,{createFunction:function(){var a=new f(z,1,2);return a.evaluate=function(a){return{value:U(a[0]),colorScheme:a[1]}},a.acceptsReference=Q,a},paint:n[z]}),b.VBarSparkline=ba;function ca(){V.call(this)}k(ca,V),l(ca.prototype,{createFunction:function(){var a=new f(A,1,10);return a.evaluate=function(a){return{variance:U(a[0]),reference:U(a[1]),mini:U(a[2]),maxi:U(a[3]),mark:U(a[4]),tickUnit:U(a[5]),legend:a[6],colorPositive:a[7],colorNegative:a[8],vertical:a[9]}},a.acceptsReference=function(a){return 0<=a&&a<=5},a},paint:n[A]}),b.VariSparkline=ca;function da(){V.call(this)}k(da,V),l(da.prototype,{createFunction:function(){function a(a,b){return d(a)&&!p(b)&&0<=b&&b<=100?g.PERCENTILE.evaluate(a,b/100):r}function b(a){return d(a)?g.STDEVP.evaluate(a):r}var c=new f(B,1,10);return c.evaluate=function(c){var d=c[0];return{points:S(d),boxPlotClass:c[1],showAverage:c[2],scaleStart:U(c[3]),scaleEnd:U(c[4]),acceptableStart:U(c[5]),acceptableEnd:U(c[6]),colorScheme:c[7],style:c[8],vertical:c[9],perc02:a(d,2),perc09:a(d,9),perc10:a(d,10),perc90:a(d,90),perc91:a(d,91),perc98:a(d,98),q1:a(d,25),q3:a(d,75),median:a(d,50),stDev:b(d)}},c.acceptsReference=Q,c},paint:n[B]}),b.BoxPlotSparkline=da;function ea(){V.call(this)}k(ea,V),l(ea.prototype,{createFunction:function(){var a=new f(C,1,8);return a.evaluate=function(a){return{points:S(a[0]),pointIndex:U(a[1]),labels:S(a[2]),minimum:U(a[3]),maximum:U(a[4]),colorPositive:a[5],colorNegative:a[6],vertical:a[7]}},a.acceptsReference=R,a.acceptsArray=R,a},paint:n[C]}),b.CascadeSparkline=ea;function fa(){V.call(this)}k(fa,V),l(fa.prototype,{createFunction:function(){var a=new f(D,1,8);return a.evaluate=function(a){return{points:S(a[0]),pointIndex:U(a[1]),colorRange:S(a[2]),target:U(a[3]),target2:U(a[4]),highlightPosition:U(a[5]),label:a[6],vertical:a[7]}},a.acceptsReference=R,a.acceptsArray=R,a},paint:n[D]}),b.ParetoSparkline=fa;function ga(){V.call(this)}k(ga,V),l(ga.prototype,{createFunction:function(){var a=new f(E,3,7);return a.evaluate=function(a){var b,c,e,f,g,h,i,j,k,l=a[0],m=a[1],n=a[2],o=n;for(d(n)&&(o=T(n,0)),b=a[3],c=[],d(b)&&(c=T(b,0)),e=[],f=[],g=0,h=o.length;g<h;g++)i=o[g],i&&(j=i[0],j&&j.getFullYear()===l&&j.getMonth()+1===m&&(k=j.getDate()-1,e[k]=i[1],c.length>0&&(f[k]=c[g][0])));return c.length>0?{year:l,month:m,values:e,colors:f}:{year:l,month:m,values:e,emptyColor:b,startColor:a[4],middleColor:a[5],endColor:a[6]}},a.acceptsReference=function(a){return 2===a||3===a},a},paint:n[E]}),b.MonthSparkline=ga;function ha(){V.call(this)}k(ha,V),l(ha.prototype,{createFunction:function(){var a=new f(F,2,6);return a.evaluate=function(a){var b,c,e,f,g,h,i,j,k,l,m,n;function o(a,b){switch(b){case 2:var c=a%4===0&&a%100!==0||a%400===0;return c?29:28;case 4:case 6:case 9:case 11:return 30;default:return 31}}function p(a){var b,c=a.getFullYear(),d=a.getMonth(),e=a.getDate();for(b=1;b<d+1;b++)e+=o(c,b);return e}for(b=a[0],c=a[1],e=c,d(c)&&(e=T(c,0)),f=a[2],g=[],d(f)&&(g=T(f,0)),h=[],i=[],j=0,k=e.length;j<k;j++)l=e[j],l&&(m=l[0],m&&m.getFullYear()===b&&(n=p(m)-1,h[n]=l[1],g.length>0&&(i[n]=g[j][0])));return g.length>0?{year:b,values:h,colors:i}:{year:b,values:h,emptyColor:f,startColor:a[3],middleColor:a[4],endColor:a[5]}},a.acceptsReference=function(a){return 1===a||2===a},a},paint:n[F]}),b.YearSparkline=ha;function ia(a,b){function c(a){var b,c,d,e,f,g={},i=!1,j=!0,k="",l="";if(a){for(a=a.substr(1,a.length-2),b=0,c=a.length;b<c;b++)d=a.charAt(b),":"===d?j=!1:","!==d||i?"'"===d||'"'===d||("("===d?i=!0:")"===d&&(i=!1),j?k+=d:l+=d):(g[k]=l,k="",l="",j=!0);k&&(g[k]=l);for(e in g)g.hasOwnProperty(e)&&(f=g[e],h(f)||("TRUE"===f.toUpperCase()?g[e]=!0:"FALSE"===f.toUpperCase()?g[e]=!1:!p(f)&&isFinite(f)&&(g[e]=q(f))))}return g}function e(a){return new M.Range(a.getRow(0),a.getColumn(0),a.getRowCount(0),a.getColumnCount(0))}var g=new f(a,2,5);return g.evaluate=function(a){var f,g,i,j,k,l,m,n,o,p,q,r=a[0];if(d(r)&&(f=r.getRangeCount(),f>0)){g=e(r),i=a[1],j=a[2],d(j)&&(f=j.getRangeCount(),f>0&&(k=e(j),l=a[3])),m=c(a[4]||"{}"),n={ac:"axisColor",fmc:"firstMarkerColor",hmc:"highMarkerColor",lastmc:"lastMarkerColor",lowmc:"lowMarkerColor",mc:"markersColor",nc:"negativeColor",sc:"seriesColor",deca:"displayEmptyCellsAs",rtl:"rightToLeft",dh:"displayHidden",dxa:"displayXAxis",sf:"showFirst",sh:"showHigh",slast:"showLast",slow:"showLow",sn:"showNegative",sm:"showMarkers",mmax:"manualMax",mmin:"manualMin",maxat:"maxAxisType",minat:"minAxisType",lw:"lineWeight"};for(o in n)n.hasOwnProperty(o)&&m.hasOwnProperty(o)&&(m[n[o]]=m[o]);return p=new O.SparklineSetting(m),q=p.options,1===q.maxAxisType&&(q.maxAxisType=0),1===q.minAxisType&&(q.minAxisType=0),{data:g,dataOrientation:i,dateAxisData:k,dateAxisOrientation:l,sparklineType:b,displayDateAxis:k&&!h(l),setting:p,values:T(r,0),dateValues:T(j,0)}}},g.acceptsReference=R,g}function ja(a,b,c,d,e,f,g){var h=O.Sparkline.cT,i=g.sheet,j=b.setting,k=j.options.displayHidden,l={sparklineType:b.sparklineType,displayDateAxis:b.displayDateAxis,zoomFactor:g.zoomFactor,values:h(b.values,i,k,b.data,b.dataOrientation),dateValues:h(b.dateValues,i,k,b.dateAxisData,b.dateAxisOrientation,!0),settings:j,getColor:function(a){if(i&&a){var b=M.Rm.Om(i,a);if(b)return b}return a}};(new m).paint(a,l,c,d,e,f)}function ka(){V.call(this)}k(ka,V),l(ka.prototype,{createFunction:function(){return ia(G,0)},paint:ja}),b.LineSparkline=ka;function la(){V.call(this)}k(la,V),l(la.prototype,{createFunction:function(){return ia(H,1)},paint:ja}),b.ColumnSparkline=la;function ma(){V.call(this)}k(ma,V),l(ma.prototype,{createFunction:function(){return ia(I,2)},paint:ja}),b.WinlossSparkline=ma,K={};function na(a){a&&(K[a.name()]=a)}f&&(na(new W),na(new X),na(new Y),na(new Z),na(new $),na(new _),na(new aa),na(new ba),na(new ca),na(new da),na(new ea),na(new fa),na(new ga),na(new ha),na(new ka),na(new la),na(new ma)),l(j.prototype,{addSparklineEx:function(a){var b=this.dT||(this.dT={});a&&(b[a.name()]=a)},getSparklineEx:function(a){var b,c=K[a];return c?c:(b=this.dT,b&&b[a])},removeSparklineEx:function(a){var b=this.dT;b&&(b[a]=void 0)}}),j.$n("sparklineEx",{toJson:function(a){var b,c,d,e=this.dT,f=[];if(e){for(b in e)e.hasOwnProperty(b)&&(c=e[b],d=c.toJSON(),d&&d.typeName&&f.push(d));f.length>0&&(a.sparklineExs=f)}},fromJson:function(a){var b,c,d,e,f=a.sparklineExs;if(f)for(b=0;b<f.length;b++)c=f[b],d=M.getTypeFromString(c.typeName),d&&(e=new d,e.fromJSON(c),this.addSparklineEx(e))}}),a.exports=b},function(a,b){a.exports=GC.Spread.CalcEngine}]);