@omegagrid/bundle 0.9.53 → 0.9.54
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/omegagrid.js +5 -5
- package/package.json +18 -18
package/omegagrid.js
CHANGED
|
@@ -3741,7 +3741,7 @@
|
|
|
3741
3741
|
padding-right: 2px;
|
|
3742
3742
|
}
|
|
3743
3743
|
|
|
3744
|
-
`,Xf=(t,e,i)=>{for(const i of e)if(i[0]===t)return(0,i[1])();return i?.()},Qf={enabled:!1,includeChildren:!0,includeParents:!0},Kf={enabled:!0,reversed:!1},Jf={ROW_HEIGHT:22,RESIZE_TRESHOLD:10,ROW_HEADER_WIDTH:60,SLIDER_SIZE:12,EXPANDER_SIZE:13,MAX_CACHE_ITEMS:5e3,CACHE_CLEAN_INTERVAL:30,COMMENT_HIDE_TIMEOUT:1e3,SELECTOR_BORDER_WIDTH:1,MIN_ROW_HEIGHT:5,MIN_COL_WIDTH:5,SPARKLINE_GAP:4,AUTOSCROLL_TRESHOLD:100,AUTOSCROLL_RATIO:1.1,AUTOSCROLL_INTERVAL:100,DEFAULT_SPARKLINE_OPTIONS:{minValue:"auto",maxValue:"auto",type:"line",style:{color:"0094FF",weight:1},marker:{color:"ff0000"}},DEFAULT_OPTIONS:{rows:100,columns:20,readOnly:!1,rowNumbers:!0,rowPriority:2,rowTree:{enabled:!0},columnTree:{enabled:!0},colLetters:!0,emptyPlaceholder:!0,freezeTop:0,fontSize:14,rowHeight:22,rowResize:!0,columnWidth:100,columnResize:!0,columnPriority:1,freezeLeft:0,freezeRight:0,freezeBottom:0,maxSortingColumns:3,numberFormat:null,levelIndentFactor:2,cellIndentFactor:10,emptyClickable:!1,grid:!0,autofill:!0,undoRedo:!0,commandWindow:!0,cellCache:!0,singleCellModel:!1,zoom:1,editing:{rowInsertion:!0,rowDeletion:!0,colInsertion:!0,colDeletion:!0,rowOutline:!0,colOutline:!0,dateCalendarEditor:!1},comments:{hideTimeout:1e3,offsetX:30,offsetY:-30,zIndex:500,headerPosition:"top"},scrolling:{verticalOverscroll:!0,horizontalOverscroll:!0,scrollbarVisibilityTreshold:100},selecting:{enabled:!0,multiSelect:!0},events:{click:{mouseMoveTreshold:10}},clipboard:{pasteProps:["v","dv"],rowPasteMode:"rewrite_append",columnPasteMode:"rewrite"},print:{dpi:600,margins:{left:6.35,right:6.35,top:19.05,bottom:19.05,header:7.62,footer:7.62},orientation:"portrait",paper:"A4"}},MAX_COMMENT_AUTOHEIGHT:300,MIN_COMMENT_AUTOHEIGHT:25,...G},tv=/^(?!.*[\\\/\*\[\]\:\?"])(.{1,31})$/;function ev(t){return tv.test(t)}function iv(t){return["\\","/","*","[","]",":","?",'"'].forEach((e=>t=t.replace(new RegExp(`\\${e}`,"g"),""))),t}function ov(t,e){return!isNaN(t)&&null!=t||!isNaN(e)&&null!=e||(t=null==t?"":ct(t.toString()).toLowerCase(),e=null==e?"":ct(e.toString()).toLowerCase()),t>e?1:t<e?-1:0}function rv(t,e){const i=Q(e);return Q(t)?(t=t.toString().trim()).startsWith("=")?0==ov(e,i?t.substring(1):parseFloat(t.substring(1))):t.startsWith(">=")?ov(e,i?t.substring(2):parseFloat(t.substring(2)))>=0:t.startsWith("<=")?ov(e,i?t.substring(2):parseFloat(t.substring(2)))<=0:t.startsWith(">")?ov(e,i?t.substring(1):parseFloat(t.substring(1)))>0:t.startsWith("<")?ov(e,i?t.substring(1):parseFloat(t.substring(1)))<0:0==ov(e,i?t:isNaN(t)?t||"":parseFloat(t)):e==t}const sv=new Map([["=",["==",1,0]],["<>",["!=",1,0]],[">",[">",1,0]],["<",["<",1,0]],[">=",[">=",1,0]],["<=",["<=",1,0]],["+",["+",2,0]],["-",["-",2,0]],["*",["*",3,0]],["/",["/",3,0]]]),nv=t=>["=",">","<",">=","<="].includes(t),av=t=>["+","-","*","/"].includes(t),lv=t=>av(t)||nv(t);function cv(t,e,i){switch(i){case"+":return t+e;case"-":return t-e;case"*":return t*e;case"/":return t/e;case"=":return 0==ov(t,e);case">":return ov(t,e)>0;case"<":return ov(t,e)<0;case">=":return ov(t,e)>=0;case"<=":return ov(t,e)<=0;default:throw new Error(`Invalid operator: ${i}`)}}function hv(t,e,i){const o=Array.isArray(t),r=Array.isArray(e);if(!o&&!r)return[[cv(t,e,i)]];const s=Math.max(o?t.length:0,r?e.length:0),n=Math.max(o?t[0].length:0,r?e[0].length:0),a=[];for(let l=0;l<s;l++){const s=[];for(let a=0;a<n;a++){const n=o?t[l]?.[a]:t,c=r?e[l]?.[a]:e,h=null==n&&null==c?null:cv(n,c,i);s.push(h)}a.push(s)}return a}var dv;!function(t){t[t.Number=0]="Number",t[t.Boolean=1]="Boolean",t[t.String=2]="String",t[t.StringQuote=3]="StringQuote",t[t.Function=4]="Function",t[t.ArgumentSeparator=5]="ArgumentSeparator",t[t.OpenBracket=6]="OpenBracket",t[t.CloseBracket=7]="CloseBracket",t[t.Operator=8]="Operator",t[t.Cell=9]="Cell",t[t.Variable=10]="Variable",t[t.Range=11]="Range",t[t.Sheet=12]="Sheet",t[t.SheetQuote=13]="SheetQuote",t[t.SheetSeparator=14]="SheetSeparator",t[t.Unknown=15]="Unknown",t[t.Operand=16]="Operand"}(dv||(dv={}));const uv=t=>t===dv.Number||t===dv.Boolean||t===dv.String||t===dv.Cell||t===dv.Variable||t===dv.Range,pv=t=>t>=48&&t<=57,gv=t=>"true"===(t=t.toLowerCase())||"false"===t,mv=t=>t>=65&&t<=90||t>=97&&t<=122||t>=192&&t<=687,fv={decimalPoint:".",stringQuote:'"',sheetQuote:"'",argumentSeparator:","};class vv{constructor(t){this.options=Object.assign(fv,t)}tokenize(t){const e=[],i=t.length;let o,r,s,n,a=0,l="",c=!1,h=!1,d=!1;for(;a<i;){if(o=t.charAt(a),r=o.charCodeAt(0),"="==o&&0==a)++a;else if(pv(r)){for(l=(d?"-":"")+o,++a;a<i;)if(o=t.charAt(a),r=o.charCodeAt(0),pv(r))l+=o,++a;else{if(o!==this.options.decimalPoint)break;l+=".",++a}d=!1,e.push([l,dv.Number])}else if(mv(r)||"$"==o){l=o,s=null,++a;do{if(o=t.charAt(a),r=o.charCodeAt(0),mv(r)||pv(r)||"."===o||"$"===o||"_"===o)"_"==o?s=dv.Variable:pv(r)&&!c&&null==s&&(s=dv.Cell),l+=o,++a,a==i&&e.push([l,s||dv.Variable]);else{if("("==o){e.push([l.toUpperCase(),dv.Function]),e.push([o,dv.OpenBracket]),++a;break}if("'"==o)e.push([l,dv.Sheet]),l="",e.push([o,dv.SheetQuote]),c=!0,++a;else if(":"==o)s=dv.Range,l+=o,++a;else{if(!c||" "!=o){if("!"==o){""!==l&&e.push([l,dv.Sheet]),e.push([o,dv.SheetSeparator]),c=!1,l="",++a;break}e.push([l,s||(gv(l)?dv.Boolean:dv.Variable)]);break}l+=o,++a}}}while(a<i)}else if(lv(o)){if("-"===o&&pv(t.charCodeAt(a+1))&&(null==n||"("==n[0]||nv(n[0])||n[1]==dv.ArgumentSeparator))d=!0;else{for(l=o;nv(t.charAt(a+1));)l+=t.charAt(++a);e.push([l,dv.Operator])}++a}else if("("===o)e.push([o,dv.OpenBracket]),++a;else if(")"===o)e.push([o,dv.CloseBracket]),++a;else if("'"===o)e.push([o,dv.SheetQuote]),c=!0,++a;else if(o===this.options.argumentSeparator)e.push([o,dv.ArgumentSeparator]),++a;else if(o===this.options.stringQuote){for(h=!1,e.push([o,dv.StringQuote]),l="";++a<i;){if(o=t.charAt(a),o===this.options.stringQuote){h=!0,++a;break}l+=o}e.push([l,dv.String]),h&&e.push([this.options.stringQuote,dv.StringQuote])}else e.push([o,dv.Unknown]),++a;n=e[e.length-1]}return e}}function bv(t,e,i=null,o=!0){return t+=e,0==e?t:t>=0?i?o?t%i:Math.min(t,i-1):t:o&&i?i+t%i:Math.max(t,0)}const yv=/(?:'?([\w\s]*)'?!)?(\$?)([a-z]*)(\$?)(\d*)(?::(\$?)([a-z]*)(\$?)(\d*))?/i;class wv{constructor(t,e,i,o,r){this.setCoords(t,e,i,o),this.sheet=r}setCoords(t,e,i,o){this.c1=null==t&&null==i?0:t,this.r1=null==e&&null==o?0:e,this.c2=null==o&&null!=t||null!=i?null==i?t:i:1/0,this.r2=null==i&&null!=e||null!=o?null==o?e:o:1/0,this.normalize()}get size(){return{columns:this.c2-this.c1+1,rows:this.r2-this.r1+1}}get count(){const{columns:t,rows:e}=this.size;return t*e}normalize(){const[t,e]=[Math.min(this.c1,this.c2),Math.max(this.c1,this.c2)],[i,o]=[Math.min(this.r1,this.r2),Math.max(this.r1,this.r2)];return this.c1=t,this.c2=e,this.r1=i,this.r2=o,this}move(t,e,i=null,o=null,r=!0){const s=bv(this.c1,t,i,r);r&&(e+=this.c1+t!=s&&0!=t?t>0?1:-1:0),this.c1=s,this.r1=bv(this.r1,e,o,r),this.c2=bv(this.c2,t,i,r),this.r2=bv(this.r2,e,o,r)}contains(t){return t.c1>=this.c1&&t.c2<=this.c2&&t.r1>=this.r1&&t.r2<=this.r2}containsColumn(t){return this.c1<=t&&this.c2>=t}containsRow(t){return this.r1<=t&&this.r2>=t}removeAnchors(){return this.c1Anchor=!1,this.c2Anchor=!1,this.r1Anchor=!1,this.r2Anchor=!1,this}addAnchors(){return this.c1Anchor=!0,this.c2Anchor=!0,this.r1Anchor=!0,this.r2Anchor=!0,this}shiftLeft(t,e=1,i=null,o=!1){return t<=this.c1&&(o||!this.c1Anchor)&&(null==i||this.c1<=i)&&(this.c1-=e),t<=this.c2&&(o||!this.c2Anchor)&&(null==i||this.c2<=i)&&(this.c2-=e),this}shiftRight(t,e=1,i=null,o=!1){return t<=this.c1&&(o||!this.c1Anchor)&&(null==i||this.c1<=i)&&(this.c1+=e),t<=this.c2&&(o||!this.c2Anchor)&&(null==i||this.c2<=i)&&(this.c2+=e),this}shiftUp(t,e=1,i=null,o=!1){return t<=this.r1&&(o||!this.r1Anchor)&&(null==i||this.r1<=i)&&(this.r1-=e),t<=this.r2&&(o||!this.r2Anchor)&&(null==i||this.r2<=i)&&(this.r2-=e),this}shiftDown(t,e=1,i=null,o=!1){return t<=this.r1&&(o||!this.r1Anchor)&&(null==i||this.r1<=i)&&(this.r1+=e),t<=this.r2&&(o||!this.r2Anchor)&&(null==i||this.r2<=i)&&(this.r2+=e),this}shift(t){const{index:e,offset:i,direction:o,maxIndex:r,ignoreAnchors:s}=t;switch(o){case"down":return this.shiftDown(e,i,r,s);case"up":return this.shiftUp(e,i,r,s);case"left":return this.shiftLeft(e,i,r,s);case"right":return this.shiftRight(e,i,r,s)}}intersect(t){this.normalize(),t.normalize();const e=Math.max(t.c1,this.c1),i=Math.min(t.c2,this.c2),o=Math.max(t.r1,this.r1),r=Math.min(t.r2,this.r2);return e<=i&&o<=r?new wv(e,o,i,r,this.sheet):null}unite(t){return this.normalize(),t.normalize(),new wv(Math.min(this.c1,t.c1),Math.min(this.r1,t.r1),Math.max(this.c2,t.c2),Math.max(this.r2,t.r2),this.sheet)}clone(){const t=new wv(this.c1,this.r1,this.c2,this.r2,this.sheet);return t.c1Anchor=this.c1Anchor,t.r1Anchor=this.r1Anchor,t.c2Anchor=this.c2Anchor,t.r2Anchor=this.r2Anchor,t}equals(t,e=!1){return t.c1==this.c1&&t.r1==this.r1&&t.c2==this.c2&&t.r2==this.r2&&(0==e||t.c1Anchor==this.c1Anchor&&t.r1Anchor==this.r1Anchor&&t.c2Anchor==this.c2Anchor&&t.r2Anchor==this.r2Anchor)}get isCell(){return this.c2==this.c2&&this.r2==this.r1}get isRange(){return this.c2!=this.c1||this.r2!=this.r1}get isColumn(){return 0==this.r1&&this.r2==1/0}get isRow(){return 0==this.c1&&this.c2==1/0}get A1(){const t=this.isRange,e=(this.c1Anchor?"$":"")+(0!==this.c1||this.c2!==1/0?Cv(this.c1):"")+(0===this.r1&&this.r2===1/0?"":(this.r1Anchor?"$":"")+xv(this.r1)),i=t?(this.c2Anchor?"$":"")+(!isNaN(this.c2)&&this.c2<1/0?Cv(this.c2):"")+(this.r2Anchor?"$":"")+(!isNaN(this.r2)&&this.r2<1/0?xv(this.r2):""):e;return(null==this.sheet?"":((o=this.sheet).indexOf(" ")>-1?"'"+o+"'":o)+"!")+(e==i?e:e+":"+i);var o}get bounds(){return[[new wv(this.c1,this.r1),this.c2<1/0?new wv(this.c2,this.r1):null],[this.r2<1/0?new wv(this.c1,this.r2):null,this.r2<1/0&&this.c2<1/0?new wv(this.c2,this.r2):null]]}*cells(){for(let t=this.r1;t<=this.r2;t++)for(let e=this.c1;e<=this.c2;e++)yield new wv(e,t)}static fromA1(t){const e=yv.exec(t),i=new wv(e[3]?Mv(e[3]):null,e[5]?kv(e[5]):null,e[7]?Mv(e[7]):null,e[9]?kv(e[9]):null,e[1]||null);return!e[2]&&e[3]||(i.c1Anchor=!0),!e[4]&&e[5]||(i.r1Anchor=!0),(e[6]||e[2]&&!e[7])&&(i.c2Anchor=!0),(e[8]||e[4]&&!e[9])&&(i.r2Anchor=!0),i}}function xv(t){return(t+1).toString()}function kv(t){return parseInt(t)-1}function Cv(t){++t;let e,i="";for(;t>0;)e=(t-1)%26,i=String.fromCharCode(e+65)+i,t=(t-e-1)/26;return i}function Mv(t){const e=t.length;let i=0;for(let o=0;o<e;o++)i+=(t.charCodeAt(o)-64)*Math.pow(26,e-o-1);return i-1}function _v(t){return t.sort(((t,e)=>{const i=Math.min(t.r1,t.r2),o=Math.min(e.r1,e.r2),r=Math.min(t.c1,t.c2),s=Math.min(e.c1,e.c2);return i<o?-1:i>o?1:r<s?-1:s>r?1:0}))}function Sv(t){return t.formula.cells.map((e=>t.cell.model.getCellByRange(e[1])))}function Ev(t){let e=t;for(;Array.isArray(e);)e=e.length>0?e[0]:null;return e}function zv(t){return Array.isArray(t)?t:[[t]]}function Lv(t,e,i,o){if(!Array.isArray(t))return e(t,i,o);for(let o=0;o<t.length;o++)if(!1===Lv(t[o],e,null==i?o:i,null==i?void 0:o))return!1}wv.fromA1s=(t,e=";")=>t.split(e).map((t=>wv.fromA1(t))),wv.toA1s=(t,e=";")=>t.map((t=>t.A1)).join(e),wv.fromCoords=t=>new wv(t.c1,t.r1,t.c2,t.r2),wv.fullColumn=t=>new wv(t,0,t,1/0),wv.fullRow=t=>new wv(0,t,1/0,t);const Iv=new Set(["SUMPRODUCT","FILTER"]),Rv=t=>Iv.has(t),Tv=t=>!!(t&&t.length>0&&"="==t.charAt(0)),Av=t=>Tv(t)?t:"="+(t??""),$v=t=>Tv(t)?t.substring(1):t,Ov=["#5B97FF","#FF616B","#B77CFF","#00B02C","#FC58BE","#FF9000","#2EB0B3"],Dv=t=>Ov[t%Ov.length],Nv=new Map([["FORMULATEXT","_xlfn."],["CONCAT","_xlfn."],["INDIRECT","_xlfn."],["ISOWEEKNUM","_xlfn."],["SWITCH","_xlfn."],["XOR","_xlfn."]]);class Pv{get fn(){return this._fn??(this._fn=new Function("t","ctx","return "+this.compile()))}get tokens(){return this._tokens}get variables(){return this._variables}get cells(){return this._cells}get ranges(){return this._ranges}get colors(){if(!this._colors){let t;this._colors=new Map,this._tokens.forEach(((e,i)=>{if([dv.Cell,dv.Range].includes(e[1])){const o=(t?"'"+t+"'!":"")+e[0];this._colors.set(o,{color:Dv(this._colors.size),address:e[0],sheet:t,type:e[1],tokenIndex:i}),t=null}else e[1]==dv.Sheet&&(t=e[0])}))}return this._colors}constructor(t,e){this.expression=t,this.tokenizer=e,this._tokens=e.tokenize(this.expression),this.updateDependecies()}findTokenIndexAtPosition(t){let e=0;return this._tokens.findIndex((i=>{const o=i[0].length;if(t>=e&&t<=e+o)return!0;e+=o}))}findSheetTokenIndex(t){const e=this._tokens[t];if(![dv.Cell,dv.Range].includes(e[1]))return-1;if(0==t||this._tokens[t-1][1]!=dv.SheetSeparator)return-1;let i=t-2;for(;i>=0;){if(this._tokens[i][1]==dv.Sheet)return i;i--}return-1}removeSheetToken(t){if(this._tokens[t][1]!=dv.Sheet&&(t=this.findSheetTokenIndex(t)),t>-1){t>0&&this._tokens[t-1][1]==dv.SheetQuote&&t--;let e=t;for(;e<this._tokens.length&&[dv.SheetSeparator,dv.SheetQuote,dv.Sheet].includes(this._tokens[e][1]);)e++;return this._tokens.splice(t,e-t),e-t}return 0}getNamedColor(t){return this.colors.get(t)?.color??"inherit"}getTokenPosition(t){let e=0;for(let i=0;i<t;i++)e+=this._tokens[i][0].length;return{min:e,max:e+this._tokens[t][0].length}}updateToken(t,e){this._fn=null,this._formula=null,this._xlFormula=null,this._tokens[t][0]=e}removeToken(t){this._fn=null,this._formula=null,this._xlFormula=null,this._tokens.splice(t,1)}insertToken(t,e,i){this._fn=null,this._formula=null,this._xlFormula=null;const o=[];return i==dv.Sheet&&/\s/.test(e)?(o.push([this.tokenizer.options.sheetQuote,dv.SheetQuote]),o.push([e,dv.Sheet]),o.push([this.tokenizer.options.sheetQuote,dv.SheetQuote])):o.push([e,i]),o.push(["!",dv.SheetSeparator]),this._tokens.splice(t,0,...o),o.length}clone(){return new Pv(this.createFormulaString(),this.tokenizer)}updateDependecies(){let t;this._variables=[],this._cells=[],this._ranges=[],this._tokens.forEach(((e,i)=>{switch(e[1]){case dv.Sheet:t=e[0];break;case dv.Variable:this._variables.push([i,e[0],t]),t=void 0;break;case dv.Cell:this._cells.push([i,wv.fromA1(e[0]),t]),t=void 0;break;case dv.Range:this._ranges.push([i,wv.fromA1(e[0]),t]),t=void 0}}))}createFormulaString(t=!1,e=!1){const i=this.tokenizer.options;let o,r,s,n="";for(let l=0;l<this._tokens.length;l++)switch(o=this._tokens[l],o[1]){case dv.SheetQuote:n+="'";break;case dv.SheetSeparator:n+="!";break;case dv.Sheet:r=o[0],n+=t?`<span style="font-style:italic">${r}</span>`:r;break;case dv.Variable:n+=o[0];break;case dv.Range:case dv.Cell:s=(r?"'"+r+"'!":"")+o[0],n+=t?`<span style="color:${this.getNamedColor(s)}">${o[0]}</span>`:o[0],r=null;break;case dv.StringQuote:n+=i.stringQuote;break;case dv.String:n+=o[0].replace(new RegExp(i.stringQuote,"g"),"\\"+i.stringQuote);break;case dv.ArgumentSeparator:n+=i.argumentSeparator;break;case dv.Function:n+=(e?(a=o[0],Nv.get(a)??""):"")+o[0];break;case dv.Unknown:n+=t?`<span style="background:#f00;color:#fff">${o[0]}</span>`:o[0];break;default:n+=o[0]}var a;return n}createExpressionTree(){const t=[],e=[],i=this.tokens;let o,r,s,n,a,l=null;for(let c=0;c<i.length;c++)switch(o=i[c],o[1]){case dv.Sheet:l=o[0];break;case dv.Cell:case dv.Range:t.push({t:o[0],tt:o[1],s:l}),l=null;break;case dv.Number:case dv.String:case dv.Boolean:case dv.Variable:t.push({t:o[0],tt:o[1]});break;case dv.Operator:for(0==t.length&&t.push({t:"",tt:dv.Operand}),s=sv.get(o[0]);e.length>0&&(n=sv.get(e[e.length-1][0]),n)&&(0===s[2]&&s[1]<=n[1]||1===s[2]&&s[1]<n[1]);)r=e.pop(),a=[t.pop(),t.pop()].reverse(),t.push({t:r[0],tt:r[1],c:a});e.push(o);break;case dv.Function:case dv.OpenBracket:e.push(o);break;case dv.ArgumentSeparator:for(;e.length>0&&(r=e[e.length-1],![dv.OpenBracket,dv.ArgumentSeparator].includes(r[1]));)r=e.pop(),a=[t.pop(),t.pop()].reverse(),t.push({t:r[0],tt:r[1],c:a});e.push(o);break;case dv.CloseBracket:for(a=[];e.length>0&&e[e.length-1][1]!==dv.OpenBracket;)r=e.pop(),r[1]==dv.Operator?a.push({t:r[0],tt:r[1],c:[t.pop(),t.pop()].reverse()}):r[1]==dv.ArgumentSeparator&&t.length>0&&a.push(t.pop());e.pop(),e.length>0&&e[e.length-1][1]===dv.Function?(r=e.pop(),a=a.reverse(),t.length>0&&i[c-1][1]!==dv.OpenBracket&&a.unshift(t.pop()),t.push({t:r[0],tt:r[1],c:a})):t.push(...a)}for(;e.length>0;)r=e.pop(),t.push({t:r[0],tt:r[1],c:[t.pop(),t.pop()].reverse()});return t.pop()}createExpressionJSCode(t,e,i){let o;switch(t.tt){case dv.Range:return"t.rn('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case dv.Cell:return"t.cl('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case dv.Operand:return"t.cl()";case dv.Variable:return i||e?.tt===dv.Function?"t.nr('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")":"t.nv('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case dv.String:return"'"+t.t.replace(/'/g,"\\'")+"'";case dv.Boolean:return"T"==t.t[0].toUpperCase()?"1":"0";case dv.Function:return o=t.c.map((e=>this.createExpressionJSCode(e,t,i||Rv(t.t)))),"t.fn('"+t.t+"').call(ctx"+(o.length>0?","+o.join(","):"")+")";case dv.Operator:return i?(o=t.c.map((e=>this.createExpressionJSCode(e,t,i||Rv(t.t)))),"t.op("+o[0]+","+o[1]+",'"+t.t+"')"):sv.has(t.t)?"("+t.c.map((e=>this.createExpressionJSCode(e,t,i))).join(sv.get(t.t)[0])+")":null;default:return t.t}}compile(){const t=this.createExpressionTree();return this.createExpressionJSCode(t)}toString(t=!1){return(t?"=":"")+(this._formula??(this._formula=this.createFormulaString()))}toExcelString(){return this._xlFormula??(this._xlFormula=this.createFormulaString(!1,!0))}shift(t){const{index:e,offset:i,direction:o,maxIndex:r,sheet:s,allSheets:n}=t;return this._cells&&this._cells.forEach((t=>{if(n||null==t[2]||t[2]==s){switch(o){case"up":t[1].shiftUp(e,i,r);break;case"right":t[1].shiftRight(e,i,r);break;case"down":t[1].shiftDown(e,i,r);break;case"left":t[1].shiftLeft(e,i,r)}this._tokens[t[0]][0]=t[1].A1}})),this._ranges&&this._ranges.forEach((t=>{if(n||null==t[2]||t[2]==s){switch(o){case"up":t[1].shiftUp(e,i,r);break;case"right":t[1].shiftRight(e,i,r);break;case"down":t[1].shiftDown(e,i,r);break;case"left":t[1].shiftLeft(e,i,r)}this._tokens[t[0]][0]=t[1].A1}})),this}hasSheetReference(t){for(const e of this._cells)if(e[2]==t)return!0;for(const e of this._ranges)if(e[2]==t)return!0;for(const e of this._variables)if(e[2]==t)return!0;return!1}renameSheet(t,e){let i=!1;return this._tokens.forEach((o=>{o[1]==dv.Sheet&&o[0]==t&&(o[0]=e,i=!0)})),i}}function jv(t,e){return e&&(t=gr(this.cell.model.options.locale,yr(e,"d"),!1)(t)),null==t?"":t.toString()}function Hv(t,e){return(t=null==t?"":t.toString()).substring(0,e)}function Fv(t,e){return(t=null==t?"":t.toString()).substring(Math.max(0,t.length-e),t.length)}function Bv(t,e,i){return(t=null==t?"":t.toString()).substring(e,e+i)}function Wv(...t){let e="";return Lv(t,(t=>e+=null==t?"":t.toString())),e}function Vv(...t){return Wv(...t)}function Uv(t){return(t=null==t?"":t.toString()).length}function Gv(t){return(t=null==t?"":t.toString()).toLowerCase()}function qv(t){return(t=null==t?"":t.toString()).toUpperCase()}function Yv(t){return t instanceof Date?t:Q(t)?Xo(t,Lo()):nr(t)}function Zv(t){return tt(t)?t:sr(t instanceof Date?t:Xo(t,Lo()))}function Xv(t){return Q(t)?Zv(t):t}function Qv(t,e){const i=Yv(t).getDay();switch(e){case 2:return i;case 3:return i-1;default:return i%7+1}}function Kv(t,e,i){return ar(Zv(Ev(t)),e)}function Jv(){return sr(le(new Date))}function tb(t){return null==(t=Ev(t))||""===t}function eb(t,e,i){return sr(new Date(t,e-1,i))}function ib(t){return Yv(t).getFullYear()}function ob(t){return Yv(t).getMonth()+1}function rb(t){return Yv(t).getDate()}function sb(t,e){const i=Yv(t);return i.setMonth(i.getMonth()+e+1),i.setDate(0),sr(i)}function nb(t){return Ci(Yv(t))}function ab(t){return Math.acos(t)}function lb(t){return Math.acosh(t)}function cb(t){return Math.PI/2-Math.atan(t)}function hb(t){return.5*Math.log((t+1)/(t-1))}function db(t){return Math.asin(t)}function ub(t){return Math.asinh(t)}function pb(t){return Math.atan(t)}function gb(t){return Math.atanh(t)}function mb(t){return Math.cos(t)}function fb(t){return Math.cosh(t)}function vb(t){return 1/Math.tan(t)}function bb(t){return 1/Math.tanh(t)}function yb(t){return 1/Math.sin(t)}function wb(t){return 1/Math.sinh(t)}function xb(t){return 180*t/Math.PI}function kb(){return Math.PI}function Cb(t){return 1/Math.cos(t)}function Mb(t){return 1/Math.cosh(t)}function _b(t){return Math.sin(t)}function Sb(t){return Math.sinh(t)}function Eb(t){return Math.tan(t)}function zb(t){return Math.tanh(t)}function Lb(t){return Math.abs(t)}function Ib(t){if(t<0)throw new Error("#NUM");return Math.ceil(t)}function Rb(t){return(t=Math.ceil(t))%2==0?t:t+1}function Tb(t){return Math.pow(Math.E,t)}function Ab(t){return t<0?-1:0==t?1:t*Ab(t-1)}function $b(t){return t<=0?1:t*$b(t-2)}function Ob(t){return Math.floor(t)}function Db(t){return t%1!=0}function Nb(t){return!Db(t)&&t%2==0}function Pb(t){return Db(t)||t%2==1}function jb(t){return Math.log(t)}function Hb(t,e){return Math.log(t)/Math.log(e)}function Fb(t){return Math.log10(t)}function Bb(t,e){return t%e}function Wb(t){return(t=Math.ceil(t))%2==0?t+1:t}function Vb(t,e){return Math.pow(t,e)}function Ub(...t){let e=1;return Lv(t,(t=>e*=t||1)),e}function Gb(t,e){return Math.floor(t/e)}function qb(t){return t*Math.PI/180}function Yb(){return Math.random()}function Zb(t,e){const i=Array(t).fill(null).map((()=>Array(e)));for(let o=0;o<t;o++)for(let t=0;t<e;t++)i[o][t]=Math.random();return i}function Xb(t,e){return t=Math.ceil(t),e=Math.floor(e),Math.floor(Math.random()*(e-t+1))+t}function Qb(t,e){return t.toFixed(e)}function Kb(t,e){return e=e||0,Math.floor(t*Math.pow(10,e))/Math.pow(10,e)}function Jb(t,e){return e=e||0,Math.ceil(t*Math.pow(10,e))/Math.pow(10,e)}function ty(t,e,i=1,o=1){const r=Array(t).fill(null).map((()=>Array(e)));let s=i;for(let i=0;i<t;i++)for(let t=0;t<e;t++)r[i][t]=s,s+=o;return r}function ey(t){return t<0?-1:t>0?1:0}function iy(t){return Math.sqrt(t)}function oy(t){return Math.sqrt(Math.PI*t)}function ry(...t){let e=0;return Lv(t,(t=>e+=null==t?0:1)),e}function sy(...t){let e=0;return Lv(t,(t=>e+=null==t?1:0)),e}function ny(t,e){let i=0;return Lv(t,(t=>i+=rv(e,t)?1:0)),i}function ay(...t){let e=0;const i=new Map;return Lv(t,(t=>{i.has(t)||(i.set(t,t),++e)})),e}function ly(...t){let e=0;return Lv(t,(t=>e+=isNaN(t)||null==t||""===t?0:t)),e}function cy(t,e,i){let o=0;if(i){const r=zv(i);Lv(t,((t,i,s)=>o+=rv(e,t)&&r[i]&&r[i][s]&&!isNaN(r[i][s])?r[i][s]:0))}else Lv(t,(t=>o+=rv(e,t)&&!isNaN(t)?t:0));return o}function hy(t,e){let i=0;return Lv(t,(t=>i+=rv(e,t)&&!isNaN(t)?t*t:0)),i}function dy(...t){let e=0;const i=t.shift();if(0===t.length)Lv(i,(t=>e+=isNaN(t)?0:t));else{const o=zv(t[0]);Lv(i,((t,i,r)=>e+=o[i]&&o[i][r]&&!isNaN(t)&&!isNaN(o[i][r])?t*o[i][r]:0))}return e}function uy(t,e){return t=null==t?"":t.toString(),e?e=>e==t:(t=t.toLowerCase(),e=>(e??"").toString().toLowerCase()==t)}function py(t,e,i=1){const o=new wv(Math.max((e||0)-1,0),Math.max((t||0)-1,0));return 1!=i&&2!=i||(o.r1Anchor=!0),1!=i&&3!=i||(o.c1Anchor=!0),o.A1}function gy(t,e,i,o=!1){let r,s;const n=uy(t,o);for(r=0;r<e.length;r++)for(s=0;s<e[r].length;s++)if(n(e[r][s]))return e[r][i-1];return null}function my(t,e,i,o=!1){let r,s;const n=uy(t,o);for(r=0;r<e.length;r++)for(s=0;s<e[r].length;s++)if(n(e[r][s]))return e[i-1][s];return null}function fy(t,e,i){let o,r;t:for(o=0;o<e.length;o++)for(r=0;r<e[o].length;r++)if(e[o][r]==t)break t;return i?i[o]?i[o][r]:null:e[o][e[o].length-1]}function vy(t,...e){let i=null,o=0;return Lv(e,(e=>{if(t==++o)return i=e,!1})),i}function by(t){return(t?wv.fromA1(t).c1:this.cell.c)+1}function yy(t){return(t?wv.fromA1(t).r1:this.cell.r)+1}function wy(t){return Array.isArray(t)?t[0]?.length:1}function xy(t){return Array.isArray(t)?t.length:1}function ky(){const t=Sv(this)[0];return t&&t.hasFormula?" "+Av(t.formula):""}function Cy(t,e,i){return e=e||1,i=i||1,Array.isArray(t)?t[e-1]?t[e-1][i-1]:null:1==e&&1==i?t:null}function My(t){const e=this.cell,i=e.model,o=i.getCellByA1(t);let r;return i.calculations.dependencies.cellDependencies.has(e.address)?r=i.calculations.dependencies.cellDependencies.get(e.address):(r=new Map,i.calculations.dependencies.cellDependencies.set(e.address,r)),r.set(o.address,[o.range]),i.calculations.dependencies.cellDependants.has(o.address)?r=i.calculations.dependencies.cellDependants.get(o.address):(r=new Map,i.calculations.dependencies.cellDependants.set(o.address,r)),r.set(e.address,[e.range]),o.value}function _y(t,e,i=0){let o,r;for(o=0;o<e.length;o++)for(r=0;r<e[o].length;r++){if(0==i&&e[o][r]==t)return Math.max(o+1,r+1);if(1==i&&e[o][r]>t)return Math.max(o+1,r+1);if(-1==i&&e[o][r]<t)return Math.max(o+1,r+1)}return null}function Sy(t,e,i,o,r){const s=Sv(this)[0],n=[];o=o||1,r=r||1;for(let t=0;t<o;t++){const o=[];for(let n=0;n<r;n++){const r=s.model.rows[s.r+t+e].cell(s.c+n+i);o.push(r?s.value:null)}n.push(o)}return n}function Ey(t,e){const i=[];if(t.length==e.length)for(let o=0;o<t.length;o++){let r=!0;for(let t=0;t<e[o].length;t++)if(!e[o][t]){r=!1;break}r&&i.push(t[o])}return i}const zy=[[3.1611237438705655,113.86415415105016,377.485237685302,3209.3775891384694,.18577770618460315],[.5641884969886701,8.883149794388377,66.11919063714163,298.6351381974001,881.952221241769,1712.0476126340707,2051.0783778260716,1230.3393547979972,2.1531153547440383e-8],[.30532663496123236,.36034489994980445,.12578172611122926,.016083785148742275,.0006587491615298378,.016315387137302097]],Ly=[[23.601290952344122,244.02463793444417,1282.6165260773723,2844.236833439171],[15.744926110709835,117.6939508913125,537.1811018620099,1621.3895745666903,3290.7992357334597,4362.619090143247,3439.3676741437216,1230.3393548037495],[2.568520192289822,1.8729528499234604,.5279051029514285,.06051834131244132,.0023352049762686918]];function Iy(t){const e=t*t;let i,o=zy[0][4]*e,r=e;for(i=0;i<3;i+=1)o=(o+zy[0][i])*e,r=(r+Ly[0][i])*e;return t*(o+zy[0][3])/(r+Ly[0][3])}function Ry(...t){let e=!0;return Lv(t,(t=>{if(!t)return e=!1})),e}function Ty(...t){let e=!1;return Lv(t,(t=>{if(t)return e=!0})),e}function Ay(...t){let e=null;return Lv(t,(t=>{e=null===e?!!t:!!t!=e})),e}function $y(...t){const e=t[0];for(let i=1;i<t.length;i+=2){if(i==t.length-1)return t[i];if(e==t[i])return t[i+1]}return null}function Oy(t,e,i){return t?e:i}function Dy(t){return!t}function Ny(){return!1}function Py(){return!0}function jy(t,e){return e=""===e?null:e,this.cell.hasError?(this.cell.error.handled=!0,e):t===1/0||t===-1/0||Number.isNaN(t)?e:t}var Hy=i(235),Fy=i.n(Hy),By=i(5949),Wy=i.n(By);function Vy(...t){let e=0,i=0;return Lv(t,(t=>{null==t||isNaN(t)||(e+=t||0,++i)})),e/i}function Uy(t,e){const i=Wy()(),o=zv(t),r=zv(e);for(let t=0;t<o.length;t++)for(let e=0;e<o[t].length;e++)i(o[t][e],(r[t]?r[t][e]:1)??1);return i()}function Gy(...t){const e=function(t){const e=[];return Lv(t,(t=>e.push(t))),e}(t),i=Fy()(e.length,e,1);return e.reduce(((t,e)=>t+Math.abs(e-i)),0)/e.length}function qy(...t){let e=1/0;return Lv(t,(t=>e=Math.min(e,t))),e}function Yy(...t){let e=-1/0;return Lv(t,(t=>e=Math.max(e,t))),e}function Zy(t,e){Object.keys(e).forEach((i=>t.set(nt(i,"_").replace(/_/g,".").toUpperCase(),e[i])))}const Xy=new Map;Zy(Xy,_),Zy(Xy,S),Zy(Xy,E),Zy(Xy,z),Zy(Xy,I),Zy(Xy,L),Zy(Xy,R);class Qy{constructor(t){this.model=t,this.getModel=t=>{const e=t?this.model.getConnectedModel(t):this.model;if(e)return e;throw new Error(`Sheet "${t}" not found`)},this.cl=(t,e)=>{const i=this.getModel(e);if(null==t)return this.currentCell.value;const o=i.getCellByA1(t);return o?o.value:(this.currentCell.error={message:`undefined cell ${t}`},null)},this.rn=(t,e)=>this.getModel(e).getValuesInRange(wv.fromA1(t)),this.nv=(t,e)=>this.getModel(e).getCellByName(t,this.currentCell.range).value,this.nr=(t,e)=>{const i=this.getModel(e).getValueMatrixByName(t);return 1===i.length&&1===i[0].length?i[0][0]:i},this.fn=t=>{const e=Xy.get(t);if(e)return e;throw new Error(`Function "${t}" not found`)},this.op=(t,e,i)=>hv(t,e,i)}}function Ky(t,e){const i=Array(e).fill(null);let o=0,r=[];if(t.length>1){r=t.map((t=>parseFloat(t.value)||0)),o=r[1]-r[0];for(let t=2;t<r.length;t++)if(r[t]-r[t-1]!==o){o=0;break}}if(0==o)for(let o=0;o<e;o++)i[o]=t[o%t.length]?.value;else{let t=r[r.length-1];for(let r=0;r<e;r++)t=i[r]=t+o}return i}function Jy(t,e,i){const o=new Pv(t.formula,t.model.calculations.tokenizer),r=[];for(let t=0;t<i;t++)r.push(Av(o.shift({index:0,offset:1,direction:e,allSheets:!0}).createFormulaString()));return r}function tw(t,e,i,o){const r=t.getCellMatrix(e);let s;"right"==o?s=Zr(r):"down"==o?s=Yr(r):"left"==o?s=Gr(r):"up"==o&&(s=Gr(Yr(r)));const n=new Array(i.size.rows);for(let t=0;t<i.size.rows;t++){n[t]=new Array(i.size.columns);for(let e=0;e<i.size.columns;e++){const i=r.length>t?r[t][r[t].length>e?e:0]:r[0][e];n[t][e]=i.hasDisplayValue?i.displayValue:null}}const a=i.size["down"==o||"up"==o?"rows":"columns"];let l=s.map((t=>t[t.length-1].hasFormula?Jy(t[t.length-1],o,a):Ky(t,a)));return"down"==o?l=Yr(l):"left"==o?l=Gr(l):"up"==o&&(l=qr(Yr(l))),t.spillValues({cell:t.getCellByRange(i.bounds[0][0]),values:l,propertyCell:t.getCellByRange(e.bounds[0][0]),displayValues:n})}function ew(t){return t.pattern&&"string"==typeof t.pattern&&(t.pattern=new RegExp(t.pattern)),t}function iw(t,e){const i=t.validation;if(!i)return!0;if(i.allowInvalid)return!0;let o=!0;return i.pattern&&(i.pattern.test((e??"").toString())||(o=!1)),i.validate&&(i.validate(t,e)||(o=!1)),o}class ow{get address(){return null}get renderer(){return this._renderer}set renderer(t){this._renderer=t}get afterRenderer(){return this._afterRenderer}set afterRenderer(t){this._afterRenderer=t}get commentRenderer(){return this._commentRenderer}set commentRenderer(t){this._commentRenderer=t}get type(){return this._type}set type(t){this._type=t}get name(){return this._name}set name(t){this._name=t}get style(){return this._style}set style(t){this._style=t}get commentable(){return this._commentable}set commentable(t){this._commentable=t}get clickable(){return this._clickable}set clickable(t){this._clickable=t}get editable(){return this._editable}set editable(t){this._editable=t}get validation(){return this._validation}set validation(t){this._validation=t}get hasFormula(){return!!this._formula}get formula(){return this._formula}set formula(t){this._formula=t?t.replace(/^=/,""):null}get value2(){return this.hasFormula?Av(this.formula):null}get editorContent(){return this._editorContent}set editorContent(t){this._editorContent=t}get adapter(){return this._adapter}set adapter(t){this._adapter=t}get properties(){return this._properties}set properties(t){this._properties=t}getProperty(t){return this._properties?.[t]}setProperty(t,e){this._properties||(this._properties={}),this._properties[t]=e}get format(){return this._format}set format(t){this._format=t,this._valueFormatter=null}get valueFormatter(){return this._valueFormatter}constructor(t,e){this.model=t,this._type=null,this._clickable=!1,e&&this.populate(e)}populate(t){this._renderer=t.renderer,this._afterRenderer=t.afterRenderer,this._commentRenderer=t.commentRenderer,this._name=t.name,this._type=t.t,this._editorContent=t.content,this._adapter=t.adapter,this._format=t.z,this._formula=t.f,this._editable=t.e,this._commentable=t.commentable,this._clickable=t.clickable,this._validation=t.validation?ew(t.validation):null,this._properties=t.props,this._style=null==t.s?null:this.model.styles.add(t.s)?.id}update(t){const e={};if("renderer"in t&&(e.renderer=this._renderer,this._renderer=t.renderer),"afterRenderer"in t&&(this._afterRenderer=t.afterRenderer),"commentRenderer"in t&&(this._commentRenderer=t.commentRenderer),"name"in t&&(e.name=this._name,this._name=t.name),"t"in t&&(e.t=this._type,this._type=t.t),"content"in t&&(e.content=this._editorContent,this._editorContent=t.content),"adapter"in t&&(e.adapter=this._adapter,this._adapter=t.adapter),"z"in t&&(e.z=this._format,this._format=t.z),"f"in t&&(e.f=this._formula,this._formula=t.f),"e"in t&&(e.e=this._editable,this._editable=t.e),"commentable"in t&&(e.commentable=this._commentable,this._commentable=t.commentable),"clickable"in t&&(e.clickable=this._clickable,this._clickable=t.clickable),"validation"in t&&(e.validation=this._validation,this._validation=ew(t.validation)),"props"in t&&(e.props=this._properties,this._properties=t.props),"s"in t){const i=this.model.styles.add(t.s).id;this._style!==i&&(e.s=this._style,this._style=i)}return e}getSourceData(){const t={};return null!=this._type&&(t.t=this._type),null!=this._format&&(t.z=this._format),null!=this._formula&&(t.f=this._formula),null!=this._editable&&(t.e=this._editable),null!=this._commentable&&(t.commentable=this._commentable),null!=this._clickable&&(t.clickable=this._clickable),this._properties&&(t.props=rt(this._properties)),null!=this._editorContent&&(t.content=Z(this._editorContent)?rt(this._editorContent):this._editorContent),null!=this._style&&(t.s=this._style),null!=this._name&&(t.name=this._name),t}setStyleProperties(t,e=!1){this.style=e?this.model.styles.set(this.style,t).id:this.model.styles.duplicate(this.style,t).id}removeStyleProperties(t){null!==this.style&&this.model.styles.unset(this.style,t)}get composedStyle(){return this.model.styles.get(this.style)}}function rw(t){const e={};return t.split(";").forEach((t=>{const[i,o]=t.split(":");e[i]=o.trim()})),e}const sw=new Map([["thin",{width:1.5,style:"solid"}],["medium",{width:2,style:"solid"}],["thick",{width:3,style:"solid"}],["double",{width:3,style:"double"}],["dotted",{width:1.5,style:"dotted"}],["hair",{width:1,style:"solid"}],["dashed",{width:1.5,style:"dashed"}],["mediumDashed",{width:2,style:"dashed"}],["dashDot",{width:1.5,style:"dashed"}],["mediumDashDot",{width:2,style:"dashed"}],["dashDotDot",{width:1.5,style:"dotted"}],["mediumDashDotDot",{width:2,style:"dotted"}],["slantDashDot",{width:1.5,style:"dashed"}],["none",{width:1.5,style:"solid"}]]),nw=(()=>{const t=new Map;return sw.forEach(((e,i)=>{let o=t.get(e.style);o||(o=t.set(e.style,new Map).get(e.style)),o.set(e.width,i)})),t})();function aw(t){return"middle"==t?"center":t}function lw(t){return 3==(t="#"==t.charAt(0)?t.substring(1):t).length?t[0]+t[0]+t[1]+t[1]+t[2]+t[2]:t}const cw=t=>{if("none"==t)return null;const e=t.split(" "),i=parseInt(e[0].charAt(0))||1,o=e.length>1?e[1]:"solid",r=nw.get(o);return{style:(r?r.get(i):null)??"thin",color:e.length>2?lw(e[2]):"CCCCCC"}},hw=t=>{const e=sw.get(t.style||"none");return e?[Dt(e.width),e.style,"none"==t.style?"var(--og-cell-background)":t.color?`#${t.color}`:"var(--og-border-color)"].join(" "):"none"},dw=(t,e)=>{const i="#"+(e.fgColor||"000000"),o="#"+(e.bgColor||"FFFFFF");switch(e.patternType){case"solid":t.backgroundColor=i||o;break;case"darkGray":t.backgroundColor=Nr(o,.75);break;case"mediumGray":t.backgroundColor=Nr(o,.5);break;case"lightGray":t.backgroundColor=Nr(o,.25);break;case"gray125":t.backgroundColor=Nr(o,.125);break;case"gray0625":t.backgroundColor=Nr(o,.0625);break;case"darkHorizontal":t.backgroundImage=`linear-gradient(0deg, ${i} 33.33%, ${o} 33.33%, ${o} 50%, ${i} 50%, ${i} 83.33%, ${o} 83.33%, ${o} 100%)`,t.backgroundSize="6px 6px";break;case"darkVertical":t.backgroundImage=`linear-gradient(90deg, ${i} 33.33%, ${o} 33.33%, ${o} 50%, ${i} 50%, ${i} 83.33%, ${o} 83.33%, ${o} 100%)`,t.backgroundSize="6px 6px";break;case"darkDown":t.backgroundImage=`linear-gradient(45deg, ${i} 33.33%, ${o} 33.33%, ${o} 50%, ${i} 50%, ${i} 83.33%, ${o} 83.33%, ${o} 100%)`,t.backgroundSize="6px 6px";break;case"darkUp":t.backgroundImage=`linear-gradient(-45deg, ${i} 33.33%, ${o} 33.33%, ${o} 50%, ${i} 50%, ${i} 83.33%, ${o} 83.33%, ${o} 100%)`,t.backgroundSize="6px 6px";break;case"lightHorizontal":t.backgroundImage=`linear-gradient(0deg, ${o} 25%, ${i} 25%, ${i} 50%, ${o} 50%, ${o} 75%, ${i} 75%, ${i} 100%)`,t.backgroundSize="4px 4px";break;case"lightVertical":t.backgroundImage=`linear-gradient(90deg, ${o} 25%, ${i} 25%, ${i} 50%, ${o} 50%, ${o} 75%, ${i} 75%, ${i} 100%)`,t.backgroundSize="4px 4px";break;case"lightDown":t.backgroundImage=`linear-gradient(45deg, ${o} 25%, ${i} 25%, ${i} 50%, ${o} 50%, ${o} 75%, ${i} 75%, ${i} 100%)`,t.backgroundSize="4px 4px";break;case"lightUp":t.backgroundImage=`linear-gradient(-45deg, ${o} 25%, ${i} 25%, ${i} 50%, ${o} 50%, ${o} 75%, ${i} 75%, ${i} 100%)`,t.backgroundSize="4px 4px";break;case"darkGrid":t.backgroundImage=`linear-gradient(${o} 0.5px, transparent 0.5px), linear-gradient(90deg, ${o} 0.5px, transparent 0.5px)`,t.backgroundSize="2px 2px";break;case"lightGrid":t.backgroundImage=`linear-gradient(${o} 0.5px, transparent 0.5px), linear-gradient(90deg, ${o} 0.5px, transparent 0.5px)`,t.backgroundSize="1px 1px";break;case"darkTrellis":t.backgroundImage=`linear-gradient(45deg, ${o} 0.5px, transparent 0.5px), linear-gradient(90deg, ${o} 0.5px, transparent 0.5px)`,t.backgroundSize="2px 2px";break;case"lightTrellis":t.backgroundImage=`linear-gradient(45deg, ${o} 0.5px, transparent 0.5px), linear-gradient(90deg, ${o} 0.5px, transparent 0.5px)`,t.backgroundSize="1px 1px"}return t},uw=(t,e)=>(t.backgroundImage=`linear-gradient(${(e.angle??0)+90}deg,${e.stops.map((t=>`#${t.rgb} ${100*t.v}%`)).join(",")})`,t),pw=t=>{const e=t.cssStyle?{...t.cssStyle}:{};return null!=t.bold&&(e.fontWeight=t.bold?"bold":"normal"),t.italic&&(e.fontStyle="italic"),t.underline?e.textDecoration="underline":t.strike&&(e.textDecoration="line-through"),t.sz&&(e.fontSize=Ot(t.sz)),t.color&&(e.color="#"+t.color),t.top&&(e.borderTop=hw(t.top)),t.right&&(e.borderRight=hw(t.right)),t.bottom&&(e.borderBottom=hw(t.bottom)),t.left&&(e.borderLeft=hw(t.left)),(t.top||t.right||t.bottom||t.left)&&(e.zIndex="1"),t.alignment&&t.alignment.vertical&&(e.display="flex",e.justifyContent=t.alignment.horizontal,e.alignItems="top"==t.alignment.vertical?"start":"bottom"==t.alignment.vertical?"end":"center"),t.alignment&&t.alignment.horizontal&&(e.textAlign=t.alignment.horizontal),t.alignment&&t.alignment.wrapText&&(e.display="flex",e.justifyContent=e.justifyContent??e.textAlign??"left",e.alignItems=e.alignItems??"center",e.whiteSpace="pre-wrap"),t.patternType?dw(e,t):t.stops&&t.stops.length?uw(e,t):t.fgColor?e.backgroundColor="#"+t.fgColor:t.bgColor&&(e.backgroundColor="#"+t.bgColor),e},gw=t=>{const e=Z(t)?t:rw(t),i={};let o;for(const t in e){const r=e[t];if(null!=r)switch(t){case"borderTop":case"border-top":i.top=cw(r);break;case"borderTopColor":case"border-top-color":i.top?i.top.color=lw(r):i.top={style:"thin",color:lw(r)};break;case"borderRight":case"border-right":i.right=cw(r);break;case"borderRightColor":case"border-right-color":i.right?i.right.color=lw(r):i.right={style:"thin",color:lw(r)};break;case"borderBottom":case"border-bottom":i.bottom=cw(r);break;case"borderBottomColor":case"border-bottom-color":i.bottom?i.bottom.color=lw(r):i.bottom={style:"thin",color:lw(r)};break;case"borderLeft":case"border-left":i.left=cw(r);break;case"borderLeftColor":case"border-left-color":i.left?i.left.color=lw(r):i.left={style:"thin",color:lw(r)};break;case"border":o=cw(r),i.top=i.top||o,i.right=i.right||o,i.bottom=i.bottom||o,i.left=i.left||o;break;case"textAlign":case"text-align":i.alignment=i.alignment||{},i.alignment.horizontal=r;break;case"verticalAlign":case"vertical-align":i.alignment=i.alignment||{},i.alignment.vertical=aw(r);break;case"whiteSpace":case"white-space":i.alignment=i.alignment||{},i.alignment.wrapText=r&&"nowrap"!=r;break;case"color":i.color=lw(r);break;case"background":case"backgroundColor":i.fgColor=lw(r);break;case"fontSize":case"font-size":i.sz=parseFloat(r);break;case"fontWeight":case"font-weight":i.bold="bold"==r;break;case"fontStyle":case"font-style":i.italic="italic"==r;break;default:i[t]=r}}return i},mw={n:t=>{const e=Q(t)?parseFloat(t.replace(",",".")):t;return Number.isNaN(e)?t:e},t:t=>t,d:(t,e)=>{if(null==t||""===t)return null;if(Q(t))try{return K(t)?J(t):sr(Xo(t,e.model.options.formatLocale))}catch(i){return e.model.logger.error(`Invalid date value in cell ${e.address}: ${t}`),null}return t instanceof Date?sr(t):t},tm:t=>Q(t)?new Date(t):t,dt:t=>Q(t)?new Date(t):t,b:t=>!!t&&"0"!==t&&"false"!==t.toString().toLowerCase(),s:t=>t,m:t=>t,g:t=>{if(null==t||""===t)return null;const e=parseFloat(t.toString().replace(",","."));return isNaN(e)?t:e},a:t=>Q(t)&&""!==t?JSON.parse(t):t,h:t=>t},fw=new Map;class vw extends ow{get tooltip(){return this._tooltip}set tooltip(t){this._tooltip=t}get hasTooltip(){return null!=this._tooltip}get merge(){return this.model.merges.mergedCells.get(this.address)}get row(){return this._row}set row(t){this._row=t}get r(){return this._row.index}get column(){return this._column}set column(t){this._column=t}get c(){return this._column.index}get hasValue(){return null!=this._value}get value(){return this._evaluated||this.evaluate(),this._value}set value(t){if(t&&Tv(t.toString()))this._value=void 0,this.formula=t;else{let e=mw[this.type](t,this);iw(this,e)||(e=void 0),e!==this._value&&(this._value=e,this._displayValue=void 0),this.row.data&&this.column.data&&(this.row.data[this.column.data]=this._value)}}evaluate(){return this._value=mw[this.type](this.model.calculations.evaluate(this),this),this._evaluated=!0,this._value}get value2(){return this.hasFormula?Av(this.formula):this.value}get hasDisplayValue(){return null!=this._displayValue}get displayValue(){return this._displayValue}set displayValue(t){this._displayValue=t}get prefersDisplayValue(){return["s","m"].includes(this.type)}get error(){return this._error}set error(t){this._error=t}get hasError(){return!!this._error}clearError(){this._error=void 0}get spillRange(){return this._spillRange}get prevSpillRange(){return this._prevSpillRange}set spillRange(t){!this._spillRange||t&&this._spillRange.equals(t)||(this._prevSpillRange=this._spillRange),this._spillRange=t}get isSpillSource(){return null!=this._spillRange}get spillSource(){return this._spillSource}get isSpilled(){return null!=this._spillSource}spillValue(t,e){this.value=t,this._spillSource=e}clearSpilledValue(){this._spillSource=void 0,this._value=void 0}get hasSparkline(){return null===this._sparkline?this._sparkline=this.model.sparklines.has(this.address):this._sparkline}get hasComment(){return null===this._hasComment?this._hasComment=(this.model.comments.get(this.address)??[]).length>0:this._hasComment}get comments(){return this.model.comments.get(this.address)}get valueFormatter(){const t=super.valueFormatter??this.row.valueFormatter??this.column.valueFormatter;if(t)return t;const e=this.type,i=this.format,{formatLocale:o,fixNumberFormat:r}=this.model.options,s=this.value;if(null==s||""===s)return null;if("n"==e)return null!=i?gr(o,i,r):this.model.options.numberFormatter;if("g"==e){if(null!=i)return gr(o,i,r);if(tt(s))return this.model.options.numberFormatter}else{if("t"==e)return null==i?null:gr(o,i,!1);if("d"==e)return i?Qo(o,i):this.model.options.dateFormatter;if("s"==e&&this.editorContent)return(t=>{if(t=t||null,!fw.has(t))if(t){const e=t.reduce(((t,e)=>t.set(e.k,e.v)),new Map);fw.set(t,(t=>e.has(t)?e.get(t):t))}else fw.set(t,(t=>t));return fw.get(t)})(this.editorContent)}return null}get formattedValue(){return null==this.value?"":this.hasDisplayValue?this.displayValue:this.valueFormatter?this.valueFormatter(this.value):this.value.toString()}get elm1(){return this.row.priority>=this.column.priority?this.row:this.column}get elm2(){return this.row.priority<this.column.priority?this.row:this.column}get clickable(){return super.clickable??this.elm1.clickable??this.elm2.clickable}get type(){return super.type??this.elm1.type??this.elm2.type??"g"}set type(t){this._type=t}get editorContent(){return super.editorContent??this.elm1.editorContent??this.elm2.editorContent??null}get adapter(){return super.adapter??this.elm1.adapter??this.elm2.adapter}set adapter(t){this._adapter=t}get address(){return this.column.address+this.row.address}get range(){return wv.fromA1(this.address)}get validation(){return super.validation??this.elm1.validation??this.elm2.validation??this.model.options.cellValidation}get editable(){return super.editable??this.elm1.editable??this.elm2.editable??this.model.options.editable}set editable(t){this._editable=t}get commentable(){return super.commentable??this.elm1.commentable??this.elm2.commentable??this.model.options.commentable}get renderer(){return super.renderer??this.elm1.renderer??this.elm2.renderer}get afterRenderer(){return super.afterRenderer??this.elm1.afterRenderer??this.elm2.afterRenderer??this.model.options.afterRenderer}get commentRenderer(){return super.commentRenderer??this.elm1.commentRenderer??this.elm2.commentRenderer??this.model.options.comments.renderer}get format(){return super.format??this.elm1.format??this.elm2.format}set format(t){super.format=t}get hyperlink(){return this._hyperlink}set hyperlink(t){this._hyperlink=t}get hasOwnFormula(){return!!this._formula}get hasFormula(){return null==this._hasFormula&&(this._hasFormula=!!this.formula),this._hasFormula}get formula(){return this._formula??this.elm1.formula??this.elm2.formula}set formula(t){super.formula=t,this.refreshFormula()}invalidateValue(){this.hasFormula?(this._value=void 0,this._evaluated=!1):this._evaluated=!0,this.clearError()}refreshFormula(){this.invalidateValue(),this._hasFormula=null}clearFormula(){this._formula=null,this._hasFormula=!1,this._evaluated=!0}constructor(t,e){super(t),this._evaluated=!0,this._sparkline=null,this._hasComment=null,this._hasStyle=null,this.row=t.rows[e.r],this.column=t.columns[e.c],this.populate(e)}populate(t){super.populate(t),this._tooltip=t.tooltip,this._hyperlink=t.hl,null!=t.f&&""!==t.f?this._evaluated=!1:null!=t.v&&(this.value=t.v),this._displayValue=t.dv}update(t){const e=super.update(t);return"tooltip"in t&&(e.tooltip=this._tooltip,this._tooltip=t.tooltip),"hl"in t&&(e.hl=this._hyperlink,this._hyperlink=t.hl),"f"in t?this._evaluated=!1:"v"in t&&(e.v=this.value,this.value=t.v),"dv"in t&&(e.dv=this._displayValue,this._displayValue=t.dv),e}getSourceData(t){const e=super.getSourceData();return this.merge&&(e.cs=this.merge.cs,e.rs=this.merge.rs),null!=this.value&&(e.v=this.value),this.hasTooltip&&(e.tooltip=this._tooltip),this._hyperlink&&(e.hl=this._hyperlink),t&&t.displayValue&&this.hasDisplayValue&&(e.dv=this._displayValue),e}createComposedStyle(t,e,i){const o=[];return t=t||this.column.style,e=e||this.row.style,null!=t&&null!=e?this.column.priority>this.row.priority?o.push(e,t):o.push(t,e):null!=t?o.push(t):null!=e&&o.push(e),null!=this.style&&o.push(this.style),null!=i&&o.push(i),o.length>0?this.model.styles.merge(...o):null}get composedStyle(){if(null===this._hasStyle){const t=this.createComposedStyle(null,null,this.model.conditionalFormats.evaluate(this));this._hasStyle=null!=t,this._composedStyle=t}return this._composedStyle}get calculatedIndent(){const t=this.composedStyle;return t?.alignment?.indent?t.alignment.indent:this.column.levelIndent&&this.row.level>0?this.row.level*this.model.options.levelIndentFactor:null}get cssStyle(){if(!1===this._hasStyle)return null;if(!this._cssStyle){const t=this.composedStyle;t&&(this._cssStyle=pw(t))}return this._cssStyle}invalidateStyle(){this._hasComment=null,this._hasStyle=null,this._composedStyle=null,this._cssStyle=null,this._sparkline=null}setStyleProperties(t){super.setStyleProperties(t),this.invalidateStyle()}removeStyleProperties(t){super.removeStyleProperties(t),this.invalidateStyle()}previewStyleProperties(t,e="cell"){const i=Object.assign({},this.createComposedStyle("column"==e?t:null,"row"==e?t:null)??{});if("cell"==e)for(const e in t)i[e]=t[e];this._hasStyle=!0,this._cssStyle=pw(i)}validate(){return!this.validation||iw(this,this.value)}toString(){return this.address}}const bw={property:"value",enabled:!0};class yw extends(Tr(ow)){get comparer(){return this._comparer}set comparer(t){this._comparer=t}get filter(){return this._filter??(this.model.options.filters?.enabled?bw:{enabled:!1})}set filter(t){this._filter=t}get hasFilter(){return this.filter.enabled}get sorting(){return this._sorting??this.model.options.columnSorting}set sorting(t){this._sorting=t}get width(){return this._width??this.model.options.columnWidth}set width(t){this._width=t}get levelIndent(){return this._levelIndent}set levelIndent(t){this._levelIndent=t}get levelButtons(){return this._levelButtons}set levelButtons(t){this._levelButtons=t}get priority(){return this._priority}set priority(t){this._priority=t}get address(){return Cv(this.index)}get range(){return new wv(this.index,null,this.index,null)}get hasFormula(){return!!this._formula}get formula(){return this._formula}set formula(t){super.formula=t;const e=this.index;this.model.rows.forEach((t=>t.cells[e]?.refreshFormula()))}constructor(t,e){super(t,e),null==this._priority&&(this._priority=t.options.columnPriority)}get mergedHeaders(){return this._mergedHeaders??(this._mergedHeaders=this._header?.filter((t=>t.cs>1||t.rs>1))??[])}updateMergedHeaders(){this._mergedHeaders=null}set header(t){this._mergedHeaders=null,this._header=t}get header(){if(!this._header||this._header.length<this.model.headerCount){this._header=this._header??[];for(let t=this._header.length;t<this.model.headerCount;t++)this._header.push({r:t})}return this._header}hasHeaderTooltip(t){const e=this.header?.[t];return e&&null!=e.tooltip}convertSourceHeader(t){return Array.isArray(t)?t.map(((t,e)=>{if(null==(t=t??{r:e}).height&&(t.height=t.h),t.r=e,null==t.style&&(t.style=t.s),t._style=null==t.style?null:this.model.styles.add(t.style).id,null!=this.model.options.headers?.style){const e=this.model.styles.add(this.model.options.headers.style).id;t._style=this.model.styles.merge(t._style,e).id}return t})):Q(t)?[{label:t,r:0}]:null}populate(t){super.populate(t),this._width=null==t.w||"auto"==t.w?null:t.w,this._levelIndent=t.levelIndent,this._levelButtons=t.levelButtons,this._header=this.convertSourceHeader(t.header),this._sorting=t.sorting,this._filter=Z(t.filter)?Object.assign({enabled:!0},t.filter):t.filter?bw:!1===t.filter?{enabled:!1}:null,this._comparer=t.comparer,this.data=t.data,this._mergedHeaders=null,null!=t.priority&&(this._priority=t.priority)}getSourceData(){const t=super.getSourceData();return null!=this._width&&(t.w=this._width),null!=this._levelIndent&&(t.levelIndent=this._levelIndent),null!=this._levelButtons&&(t.levelButtons=this._levelButtons),null!=this._header&&(t.header=this._header),null!=this._sorting&&(t.sorting=this._sorting),null!=this._filter&&(t.filter=this._filter),null!=this.data&&(t.data=this.data),t}expand(t){super.expand(t),this.model.indexVisibleColumns()}collapse(){super.collapse(),this.model.indexVisibleColumns()}get prev(){return this.model.columns[this.index-1]}get next(){return this.model.columns[this.index+1]}get prevVisible(){const t=this.model.visibleColumnIndex[this.index];return null==t||0===t?null:this.model.visibleColumns[t-1]}get nextVisible(){const t=this.model.visibleColumnIndex[this.index];return null==t?null:this.model.visibleColumns[t+1]}calculateRealColspan(t){let e=1,i=this.nextVisible;for(;i&&i.index-this.index<t&&e<t;)++e,i=i.nextVisible;return e}cell(t){return this.model.rows[t].cell(this.index)}clearCalculatedValues(){this.model.rows.forEach((t=>{const e=t.cells[this.index];e&&this.model.calculations.refreshFormula(e)}))}}var ww;!function(t){t[t.Asc=1]="Asc",t[t.Desc=-1]="Desc"}(ww||(ww={}));const xw={g:(t,e)=>t.value==e.value?0:t.value>e.value?1:-1,t:(t,e)=>(t.value||"").toString().localeCompare((e.value||"").toString()),s:(t,e)=>t.value==e.value?0:t.value>e.value?1:-1,m:(t,e)=>t.value==e.value?0:t.value>e.value?1:-1,n:(t,e)=>t.value-e.value,d:(t,e)=>(t.value instanceof Date?t.value.getTime():0)-(e.value instanceof Date?e.value.getTime():0),tm:(t,e)=>(t.value instanceof Date?t.value.getTime():0)-(e.value instanceof Date?e.value.getTime():0),dt:(t,e)=>(t.value instanceof Date?t.value.getTime():0)-(e.value instanceof Date?e.value.getTime():0),b:(t,e)=>t.value-e.value,h:(t,e)=>(t.value||"").localeCompare(e.value),a:()=>0},kw={g:(t,e)=>e.value==t.value?0:e.value>t.value?1:-1,t:(t,e)=>(e.value||"").toString().localeCompare((t.value||"").toString()),s:(t,e)=>e.value==t.value?0:e.value>t.value?1:-1,m:(t,e)=>e.value==t.value?0:e.value>t.value?1:-1,n:(t,e)=>e.value-t.value,d:(t,e)=>(e.value instanceof Date?e.value.getTime():0)-(t.value instanceof Date?t.value.getTime():0),tm:(t,e)=>(e.value instanceof Date?e.value.getTime():0)-(t.value instanceof Date?t.value.getTime():0),dt:(t,e)=>(e.value instanceof Date?e.value.getTime():0)-(t.value instanceof Date?t.value.getTime():0),b:(t,e)=>e.value-t.value,h:(t,e)=>(e.value||"").localeCompare(t.value),a:()=>0},Cw=(t,e)=>t.origIndex-e.origIndex;class Mw{get settings(){return this._settings}set settings(t){this._settings=t||[],this.colMap.clear(),this.settings.length>0&&(this.settings.forEach(((t,e)=>this.colMap.set(t.c,e))),this.applySort(),Lr().info(`sorting applied: ${JSON.stringify(this.settings)}`))}constructor(t,e=null){this.model=t,this.colMap=new Map,this._settings=[],this.settings=e}get(t){return this.colMap.has(t)?this.settings[this.colMap.get(t)]:null}sort(t,e=null,i=!1){let o=this.get(t);return o&&o.ord==ww.Desc&&null===e?(this.settings.splice(this.colMap.get(t),1),o=null):o?(o.ord=ww.Desc,this.settings.splice(this.colMap.get(t),1)):o={c:t,ord:ww.Asc},o&&(null!==e&&(o.ord=e),this.colMap.set(t,0),this.settings.unshift(o)),this.settings.length>this.model.options.maxSortingColumns&&this.settings.pop(),this.colMap.clear(),this.settings.forEach(((t,e)=>{t.index=e,this.colMap.set(t.c,e)})),i||(this.settings.length>0?this.applySort():this.resetSort()),o}applySort(){const t=this.model,e=this.settings.map((e=>{const i=t.columns[e.c];return i?i.comparer?e.ord==ww.Asc?i.comparer:(t,e)=>-i.comparer(t,e):e.ord==ww.Asc?xw[i.type??"t"]:kw[i.type??"t"]:(Lr().warn(`Column sorting: Column with index ${e.c} not found`),null)})).filter((t=>t)),i=e.length;let o,r,s;t.rowRoot.sort(((t,n)=>{if(!1===t.sortable||!1===n.sortable)return t.origIndex-n.origIndex;for(r=0;r<i;r++)if(s=this.settings[r].c,o=e[r](t.cell(s),n.cell(s)),0!=o)return o;return 0})),t.indexRowsByTree()}resetSort(){this.settings=[],this.colMap.clear(),this.model.rowRoot.sort(Cw),this.model.indexRowsByTree()}persistSort(){this.model.rows.forEach(((t,e)=>t.origIndex=e))}}class _w{get properties(){return this._properties}set properties(t){this._properties=t}constructor(t){t&&this.pupulate(t)}pupulate(t){this.author=t.author,this.text=t.text,this.date=t.date?new Date(t.date):null,this.data=t.data,this.readOnly=!!t.readOnly,this._properties=t.props}getSourceData(){const t={};return this._properties&&(t.props=this._properties),this.author&&(t.author=this.author),this.text&&(t.text=this.text),this.data&&(t.data=this.data),null!==this.readOnly&&(t.readOnly=this.readOnly),this.date&&(t.date=Qo("en-US")(this.date,"yyyy-MM-dd HH:mm:ss")),t}}class Sw{constructor(t,e){this.model=t,this._commentMap=new Map,this.has=t=>this._commentMap.has(t),this.delete=t=>this._commentMap.delete(t),this.cleanCell=t=>{this.has(t)&&this._commentMap.set(t,this.get(t).filter((t=>(t.text??"").length>0||null!=t.data)))},this.get=t=>(this.has(t)||this._commentMap.set(t,[]),this._commentMap.get(t)),this.set=(t,e)=>{this._commentMap.set(t,e?.map((t=>t instanceof _w?t:new _w(t)))||[]),this.cleanCell(t)},e&&this.populate(e)}populate(t){t.forEach((t=>{const e=t.a1||new wv(t.c,t.r).A1;this._commentMap.has(e)||this._commentMap.set(e,[]),this._commentMap.get(e).push(new _w(t))})),this._commentMap.forEach((t=>{t.sort(((t,e)=>(e.date?e.date.getTime():0)-(t.date?t.date.getTime():0)))}))}shift(t){Array.from(this._commentMap.keys()).forEach((e=>{const i=wv.fromA1(e);i.shift(t),i.A1!=e&&(this._commentMap.set(i.A1,this._commentMap.get(e)),this._commentMap.delete(e))}))}}function Ew(t,e,i){t.forEach((t=>t.forEach((t=>{t[1]==e&&(t[1]=i)}))))}class zw{get cellDependencies(){return this._cellDependencies}get cellDependants(){return this._cellDependants}get rangeDependencies(){return this._rangeDependencies}get rangeDependants(){return this._rangeDependants}get sheetDependencies(){return this._sheetDependencies}get sheetDependants(){return this._sheetDependants}constructor(t,e="calculations"){this.model=t,this.modelPart=e,this._cellDependencies=new Map,this._cellDependants=new Map,this._rangeDependencies=new Map,this._rangeDependants=new Map,this._sheetDependencies=new Map,this._sheetDependants=new Map}clear(){this._cellDependants.clear(),this._cellDependencies.clear(),this._rangeDependencies.clear(),this._rangeDependants.clear()}clearCellDependecies(t){return this._cellDependencies.has(t)&&this._cellDependencies.delete(t),this._rangeDependencies.has(t)&&this._rangeDependants.delete(t),this}has(t){return this._cellDependencies.has(t)||this._rangeDependencies.has(t)}add(t,e,i){const o=wv.fromA1(t).removeAnchors(),r=wv.fromA1(e).removeAnchors();e=r.A1;const s=r.isRange,n=s?this._rangeDependencies:this._cellDependencies;let a=null;if((n.has(t)?n.get(t):n.set(t,new Map).get(t)).set(e,[r,i]),i){const t=this.model.getConnectedModel(i);t&&(t.calculations.dependencies.sheetDependants.set(this.model.name,this.model.name),this.sheetDependencies.set(i,i),a=s?t.calculations.dependencies.rangeDependants:t.calculations.dependencies.cellDependants),i=this.model.name}else a=s?this._rangeDependants:this._cellDependants;a&&(a.has(e)||a.set(e,new Map),a.get(e).set(t,[o,i]))}getDependants(t,e=null){let i,o;const r=t.A1;return e=e??new Map,this._cellDependants.has(r)&&this._cellDependants.get(r).forEach((([t,s])=>{e.has(t)||(s&&(o=this.model.getConnectedModel(s)),i=o||this.model,e.set(t,[i.getCellByRange(t),s]),o?o[this.modelPart].dependencies.getDependants(t).forEach(((t,i)=>{e.set(i,[t[0],t[1]??s])})):(t.A1!=r||o)&&i.calculations.dependencies.getDependants(t,e))})),this._rangeDependants.forEach(((i,o)=>{wv.fromA1(o).contains(t)&&i.forEach((([t,i])=>{e.has(t)||(e.delete(t),this.getDependants(t,e.set(t,[(i?this.model.getConnectedModel(i):this.model).getCellByRange(t),i])))}))})),e}renameSheet(t,e){this._sheetDependants.has(t)&&(this._sheetDependants.delete(t),this._sheetDependants.set(e,e)),this._sheetDependencies.has(t)&&(this._sheetDependencies.delete(t),this._sheetDependencies.set(e,e)),Ew(this._cellDependants,t,e),Ew(this._cellDependencies,t,e),Ew(this._rangeDependants,t,e),Ew(this._rangeDependencies,t,e)}}class Lw{get dependencies(){return this._dependencies}constructor(t,e){this.model=t,this._dependencies=new zw(t,e)}}function Iw(t){return t instanceof RangeError?"Maximum call stack size exceeded"==t.message?"infinite loop":t.message:t.toString()}class Rw extends Lw{get tokenizer(){return this._tokenizer}get formulas(){return this._formulas}constructor(t){super(t,"calculations"),this._tokenizer=new vv,this._formulas=new Map,this.context=new Qy(t)}createFormula(t){const e=new Pv(t.formula,this.tokenizer);return this._formulas.set(t.address,e),t.hasOwnFormula&&(t.formula=e.createFormulaString()),this.createDependecies(t),e}createDependecies(t){const e=t.address;if(this.formulas.has(e)){const i=this.formulas.get(e);i.ranges.forEach((([t,i,o])=>this._dependencies.add(e,i.A1,o))),i.cells.forEach((([t,i,o])=>this._dependencies.add(e,i.A1,o))),i.variables.forEach((([i,o])=>{const r=this.model.getCellByName(o,t.range);r&&this._dependencies.add(e,r.address,null)}))}return this}refreshFormula(t){return t.refreshFormula(),this.formulas.delete(t.address),this.clearDependecies(t),this}updateDependencies(t){return this.clearDependecies(t).getFormula(t),this}getFormula(t){return this._formulas.has(t.address)?this._formulas.get(t.address):this.createFormula(t)}refresh(){this.dependencies.clear(),this._formulas.clear()}clearDependecies(t){const e=t.address;return this.dependencies.clearCellDependecies(e),this.formulas.delete(e),this}evaluateFormula(t,e){return this.context.currentCell=e,t.fn(this.context,{cell:e,formula:t})}evaluateExpression(t,e){this.context.currentCell=e;const i=new Pv(t,this.tokenizer);return i.fn(this.context,{cell:e,formula:i})}evaluate(t,e){if(!t)return null;let i=null;if(t.hasFormula){const o=this.getFormula(t);try{t.clearError(),this.context.currentCell=t,i=o.fn(this.context,{cell:t,formula:o}),Array.isArray(i)?(e||this.model.spillValues({cell:t,values:i}).range,i=i.length>0&&i[0].length>0?i[0][0]:null,e&&(t.value=i)):t.value=i}catch(e){t.error={message:Iw(e)}}}else i=t.value;return i}evaluateAll(){this.model.rows.forEach((t=>this.model.columns.forEach(((e,i)=>t.cell(i).evaluate()))))}calculateViewport(t){const e=[];return t.rows.forEach((t=>t.cells.forEach((t=>{if(t.hasFormula){if(!t.hasValue&&(this.evaluate(t),t.spillRange))for(const i of this.model.getRangeIterator(t.spillRange))e.push(i);e.push(t)}})))),e}shift(t){this.getFormulaCells().forEach((e=>{e.formula=this.getFormula(e).shift(t).createFormulaString(!1),this.updateDependencies(e)}));const e=this.model.name;return this.dependencies.sheetDependants.forEach((i=>{const o=this.model.getConnectedModel(i);o?.calculations.getFormulaCells().forEach((i=>{const r=o.calculations.getFormula(i);r.hasSheetReference(e)&&(i.formula=r.shift(t).createFormulaString(!1),o.calculations.updateDependencies(i))}))})),this}getFormulaCells(){const t=this.model,e=[];let i;const o=t.rows.length,r=t.columns.length;for(let s=0;s<o;s++){i=t.rows[s];for(let t=0;t<r;t++)i.hasCellFormula(t)&&e.push(i.cell(t))}return e}renameSheet(t,e){let i=!1;return this.dependencies.renameSheet(t,e),this.getFormulaCells().forEach((o=>{const r=this.getFormula(o);r.renameSheet(t,e)&&(o.formula=r.createFormulaString(),this.refreshFormula(o),i=!0)})),i}invalidateCellDependants(t){const e=[];return this.dependencies.getDependants(t.range).forEach((([t,i])=>{e.push([t,i]),t.invalidateValue()})),e}invalidateDependants(t){const e=new Map,i=new Map;for(const i of t)this.invalidateCellDependants(i).forEach((([t,i])=>e.set(t,i)));e.forEach(((t,e)=>i.set(e,t)));for(const i of t)e.set(i,null);return e.forEach(((t,e)=>{this.model.sparklines.dependencies.getDependants(e.range).forEach((([t,e])=>{i.set(t,e)})),this.model.conditionalFormats.dependencies.getDependants(e.range).forEach((([t,e])=>{this.model.conditionalFormats.invalidateExtremes(t),t.invalidateStyle(),i.set(t,e)}))})),i}}const Tw="#ff0000",Aw="#fcd53f",$w="#00bb5e",Ow="#555555",Dw=new Map([["3Arrows",[{icon:["fas","down"],color:Tw},{icon:["fas","right"],color:Aw},{icon:["fas","up"],color:$w}]],["3ArrowsGray",[{icon:["fas","down"],color:Ow},{icon:["fas","right"],color:Ow},{icon:["fas","up"],color:Ow}]],["3Flags",[{icon:["fas","flag-pennant"],color:Tw},{icon:["fas","flag-pennant"],color:Aw},{icon:["fas","flag-pennant"],color:$w}]],["3TrafficLights1",[{icon:["fas","circle"],color:Tw},{icon:["fas","circle"],color:Aw},{icon:["fas","circle"],color:$w}]],["3TrafficLights2",[{icon:["fas","square-o"],color:Tw},{icon:["fas","square-o"],color:Aw},{icon:["fas","square-o"],color:$w}]],["3Signs",[{icon:["fas","square"],rotation:45,color:Tw},{icon:["fas","triangle"],color:Aw},{icon:["fas","circle"],color:$w}]],["3Symbols",[{icon:["fas","circle-xmark"],color:Tw},{icon:["fas","circle-exclamation"],color:Aw},{icon:["fas","circle-check"],color:$w}]],["3Symbols2",[{icon:["fas","xmark"],color:Tw},{icon:["fas","exclamation"],color:Aw},{icon:["fas","check"],color:$w}]],["3Stars",[{icon:["fal","star"],color:Aw},{icon:["fas","star-half-stroke"],color:Aw},{icon:["fas","star"],color:Aw}]],["3Triangles",[{icon:"caret-down",color:Tw},{icon:"dash",color:Aw},{icon:"caret-up",color:$w}]],["4Arrows",[{icon:["fas","down"],color:Tw},{icon:["fas","down-right"],color:Aw},{icon:["fas","up-right"],color:Aw},{icon:["fas","up"],color:$w}]],["4ArrowsGray",[{icon:["fas","down"],color:Ow},{icon:["fas","down-right"],color:Ow},{icon:["fas","up-right"],color:Ow},{icon:["fas","up"],color:Ow}]],["4RedToBlack",[{icon:["fas","circle"],color:"#000000"},{icon:["fas","circle"],color:"#b1b1b1"},{icon:["fas","circle"],color:"#edb2a3"},{icon:["fas","circle"],color:Tw}]],["4Rating",[{icon:"signal-bars-weak",color:"#4a7db1"},{icon:"signal-bars-fair",color:"#4a7db1"},{icon:"signal-bars-good",color:"#4a7db1"},{icon:["fas","signal-bars"],color:"#4a7db1"}]],["4TrafficLights",[{icon:["fas","circle"],color:"#000000"},{icon:["fas","circle"],color:Tw},{icon:["fas","circle"],color:Aw},{icon:["fas","circle"],color:$w}]],["5Arrows",[{icon:["fas","down"],color:Tw},{icon:["fas","down-right"],color:Aw},{icon:["fas","right"],color:Aw},{icon:["fas","up-right"],color:Aw},{icon:["fas","up"],color:$w}]],["5ArrowsGray",[{icon:["fas","down"],color:Ow},{icon:["fas","down-right"],color:Ow},{icon:["fas","right"],color:Ow},{icon:["fas","up-right"],color:Ow},{icon:["fas","up"],color:Ow}]],["5Rating",[{icon:["fal","signal-bars"]},{icon:["fal","signal-bars-weak"],color:"#4a7db1"},{icon:["fal","signal-bars-fair"],color:"#4a7db1"},{icon:["fal","signal-bars-good"],color:"#4a7db1"},{icon:["fas","signal-bars"],color:"#4a7db1"}]],["5Quarters",[{icon:["fal","circle"],color:"#505050"},{icon:["fas","circle-quarter-stroke"],color:"#505050"},{icon:["fas","circle-half-stroke"],color:"#505050"},{icon:["fas","circle-three-quarters-stroke"],color:"#505050"},{icon:["fas","circle"],color:"#505050"}]]]),Nw=(t,e)=>{const i=Dw.get(t);return i?i[e]:null};class Pw extends Lw{constructor(t,e){super(t,"conditionalFormats"),this.formats=[],this.cellFormatMap=new Map,this.extremes=new Map,e&&this.populate(e)}populate(t){t.forEach((t=>{try{this.add(t)}catch(e){Lr().error(`conditional format error: ${JSON.stringify(t)}`,e)}}))}refresh(){this.dependencies.clear(),this.cellFormatMap.clear(),this.extremes.clear(),this.formats.forEach((t=>this.initConditionalFormat(t)))}clearCellDependecies(t){const e=t.address;return this.dependencies.clearCellDependecies(e),this.cellFormatMap.get(e).forEach((t=>({cf:t.cf}))),this}getExtremes(t){if(this.extremes.has(t.key))return this.extremes.get(t.key);const e=[1/0,-1/0];return t.ranges.forEach((t=>{for(const i of this.model.getValuesInRange(t))for(const t of i)null!=t&&(isNaN(t)||(e[0]=Math.min(e[0],t),e[1]=Math.max(e[1],t)))})),t.cmin&&("num"==t.cmin.t?e[0]=t.cmin.v:"percent"==t.cmin.t&&(e[0]=e[0]+(e[1]-e[0])*t.cmin.v/100)),t.cmax&&("num"==t.cmax.t?e[1]=t.cmax.v:"percent"==t.cmax.t&&(e[1]=e[0]+(e[1]-e[0])*t.cmax.v/100)),this.extremes.set(t.key,e),e}invalidateExtremes(t){this.cellFormatMap.get(t.address).forEach((t=>this.extremes.delete(t.cf.key)))}evaluateScaleFormat(t,e){const i=t.value;if(null==i)return null;const[o,r]=this.getExtremes(e.cf);let s;const n=(i-o)/(r-o);if(e.cf.cmid?.color)s=.5==n?"#"+e.cf.cmid.color:n>.5?Hr("#"+e.cf.cmid.color,"#"+e.cf.cmax.color,2*(n-.5)):Hr("#"+e.cf.cmin.color,"#"+e.cf.cmid.color,2*n);else{if(!e.cf.cmin?.color||!e.cf.cmax?.color)return null;s=Hr("#"+e.cf.cmin.color,"#"+e.cf.cmax.color,n)}return{color:Fr(s).substring(1),fgColor:s.substring(1)}}evaluateBarFormat(t,e){const i=t.value;if(null==i)return null;const o=this.getExtremes(e.cf);let r=o[0];const s=o[1],n=r<0;n||(r-=.1*(s-r));const a=Math.round(100*(i-r)/(s-r));e.initialized||(e.initialized=!0,e.cf.ranges.forEach((e=>this._dependencies.add(t.address,e.A1,null))));const l=[];if(n){const t=Math.round(-100*r/(s-r));i>=0?(l.push(`#00000000 ${t}%`),l.push(`#${e.cf.color} ${t}%`),l.push(`#${e.cf.color} ${a}%`),l.push(`#00000000 ${a}%`)):(l.push(`#00000000 ${a}%`),l.push(`#ff0000 ${a}%`),l.push(`#ff0000 ${t}%`),l.push(`#00000000 ${t}%`))}else l.push(`#${e.cf.color} ${a}%`),l.push(`#00000000 ${a}%`);return{cssStyle:{backgroundClip:"padding-box",backgroundImage:`linear-gradient(90deg, ${l.join(",")})`}}}evaluateFormulaFormat(t,e){if(!e.initialized&&e.cf.condition){e.initialized=!0;const i=t.address,o=new Pv(e.cf.condition,this.model.calculations.tokenizer);e.f=o.shift({index:0,offset:t.c-e.cf.firstCell.c1,direction:"right"}).shift({index:0,offset:t.r-e.cf.firstCell.r1,direction:"down"}),o.cells.forEach((t=>this._dependencies.add(i,t[1].A1,t[2]))),o.ranges.forEach((t=>this._dependencies.add(i,t[1].A1,t[2]))),o.variables.forEach((([e,o])=>{const r=this.model.getCellByName(o,t.range);r&&this._dependencies.add(i,r.address,null)}))}if(e.f&&!this.model.calculations.evaluateFormula(e.f,t))return null;const i={...e.cf.style};return i.color||Br(Fr(Wr(e.cf.style.fgColor))),i}evaluateIconFormat(t,e){const i=t.value;if(null==i)return null;const[o,r]=this.getExtremes(e.cf);let s;for(let t=e.cf.thresh.length-1;t>=0;t--){const n=e.cf.thresh[t];if("percent"===n.t){if(null==s&&(s=100*(i-o)/(r-o)),s>=n.v)return{icon:Nw(e.cf.v,t)}}else if("num"===n.t&&i>=n.v)return{icon:Nw(e.cf.v,t)}}return null}evaluate(t){const e=t.address,i=this.cellFormatMap.get(e);if(!i)return null;let o=null,r=null;for(const e of i){try{switch(e.cf.type){case"formula":r=this.evaluateFormulaFormat(t,e);break;case"scale":r=this.evaluateScaleFormat(t,e);break;case"bar":r=this.evaluateBarFormat(t,e);break;case"icon":r=this.evaluateIconFormat(t,e);break;default:r=null}}catch(t){Lr().error(`Conditional format error: ${JSON.stringify(e)}`,t)}if(r&&(o=o?{...o,...r}:r,e.cf.stop))break}return o}initConditionalFormat(t){return t.firstCell=null,t.ranges.forEach((e=>{for(const i of new Yw(e.intersect(this.model.gridRange))){const e=i.A1;"formula"===t.type&&(t.firstCell||(t.firstCell=i,t.formula=t.condition?new Pv(t.condition,this.model.calculations.tokenizer):null)),(this.cellFormatMap.get(e)||this.cellFormatMap.set(e,[]).get(e)).push({cf:t})}})),t}add(t){const e={key:t.ranges,ranges:wv.fromA1s(t.ranges),type:t.type||"formula",firstCell:null,formula:null,style:t.style?this.model.styles.add(t.style):null,condition:t.condition,stop:!!t.stop,cmin:t.cmin,cmid:t.cmid,cmax:t.cmax,color:t.color,v:t.v,thresh:t.thresh};this.formats.push(this.initConditionalFormat(e))}getSourceData(){return this.formats.map((t=>({type:t.type,ranges:wv.toA1s(t.ranges),style:t.style,condition:t.condition,stop:t.stop,cmin:t.cmin,cmid:t.cmid,cmax:t.cmax,color:t.color,v:t.v,thresh:t.thresh})))}}const jw=(t,e)=>{const i=new RegExp(`${ut(t)}`,"ig");return t=>(i.lastIndex=0,i.test(ct((t[e]??"").toString())))},Hw=(t,e)=>i=>!!i[e]===t,Fw=(t,e)=>{const i=t.map((t=>t.key?.toString()));return t=>null!=t[e]&&i.includes(t[e].toString())},Bw=(t,e)=>t=>!1,Ww=(t,e,i)=>(i=i??"value","b"===t?Hw(e,i):"s"===t&&Array.isArray(e)?Fw(e,"value"):"s"===t?jw(e?.toString(),"formattedValue"):"m"===t&&Array.isArray(e)?Bw(e,i):jw(e?.toString(),"d"===t?"formattedValue":i));class Vw extends Event{constructor(){super("filter",{bubbles:!1,cancelable:!0,composed:!0})}}class Uw extends EventTarget{get settings(){return this._settings}set settings(t){this._settings=t||[],this.colMap.clear(),this.settings.length>0&&(this.settings.forEach(((t,e)=>this.colMap.set(t.c,e))),this.applyFilter(),Lr().info(`filtering applied: ${JSON.stringify(this.settings)}`))}constructor(t,e=null){super(),this.model=t,this.custom=!1,this.colMap=new Map,this._settings=[],this.settings=e}get(t){return this.colMap.has(t)?this.settings[this.colMap.get(t)]:null}filter(t,e=!0){const i=this.get(t.c),o=null===t.term||""===t.term;i&&o?(this.settings.splice(this.colMap.get(t.c),1),this.colMap.delete(t.c)):i?i.term=t.term:o||(this.colMap.set(t.c,this.settings.length),this.settings.push(t)),this.custom||(this.settings.length>0?this.applyFilter(!1):this.resetFilter(!1)),e&&this.dispatchEvent(new Vw)}applyFilter(t=!0){const e=[];this.settings.forEach((t=>{const i=this.model.columns[t.c];e.push({c:t.c,matcher:Ww(i.type,t.term,i.filter?.property)})}));const i=e.length,o=this.model.options.filters?.includeParents??!0,r=this.model.options.filters?.includeChildren??!0,s=new Set;this.model.rows.forEach((t=>{const n=s.has(t.index);(t=>{if(!t.filterable)return!0;for(let o=0;o<i;o++)if(!e[o].matcher(t.cell(e[o].c)))return!1;return!0})(t)?(t.filterState=Ir.Matched,o&&t.walkUp((t=>{if(s.has(t.index)&&t.filterState>0)return!1;t.filterState=Ir.ChildMatched,s.add(t.index)})),r&&t.walk((t=>{if(s.has(t.index)&&t.filterState>0)return!1;t.filterState=Ir.ParentMatched,s.add(t.index)}))):n||(t.filterState=Ir.Filtered),s.add(t.index)})),this.model.indexRows(),t&&this.dispatchEvent(new Vw)}resetFilter(t=!0){this.settings=[],this.colMap.clear(),this.model.rows.forEach((t=>t.filterState=Ir.Matched)),this.model.indexRows(),t&&this.dispatchEvent(new Vw)}}class Gw extends Lw{constructor(t,e){super(t,"sparklines"),this.model=t,this.map=new Map,this.groups=new Map,this.extremes=new Map,this.maxIndex=0,this.updateRangeMap=!1,this.populate(e)}populate(t){t?.forEach((t=>{try{this.add(wv.fromA1(t.location),Array.isArray(t.data)?t.data.map((t=>[wv.fromA1(t)])):t.data.split(",").map((t=>[wv.fromA1(t)])),ot({},Jf.DEFAULT_SPARKLINE_OPTIONS,t.options))}catch(e){this.model.logger.error(`sparkline error: ${JSON.stringify(t)}`,e)}}))}getSourceData(){const t=[];return this.groups.forEach((e=>{t.push({location:e.locRange.A1,data:e.dataRanges.map((t=>t[0].A1)).join(","),options:{minValue:e.minValue,maxValue:e.maxValue,type:e.type,style:e.style,marker:e.marker}})})),t}has(t){return this.map.has(t)}get(t){return this.map.get(t)}createDependencies(t){this.map.get(t)[1].forEach((e=>this._dependencies.add(t,e[0].A1,e[1])))}updateRangeMaps(){this.dependencies.clear(),this.map.clear(),this.groups.forEach(((t,e)=>this.createRangeMap(e,t.locRange,t.dataRanges)))}getValues(t){this.updateRangeMap&&this.updateRangeMaps();const e=this.map.get(t),i=e[1][0][1]?this.model.getConnectedModel(e[1][0][1]):this.model;return this._dependencies.has(t)||this.createDependencies(t),e[1].flatMap((t=>i.getValuesInRange(t[0])[0]))}getExtremes(t){const e=this.map.get(t),i=e[1][0][1]?this.model.getConnectedModel(e[1][0][1]):this.model,o=this.groups.get(e[0]);let r,s,n,a;return null==o.minValue||Q(o.minValue)?"auto"==(o.minValue||"auto")?(r=r??lt(...e[1].map((t=>i.getValuesInRange(t[0])))),n=r[0]):(this.extremes.has(e[0])||this.extremes.set(e[0],lt(...o.dataRanges.map((t=>i.getValuesInRange(t[0]))))),s=this.extremes.get(e[0]),n=s[0]):n=o.minValue,null==o.maxValue||Q(o.maxValue)?"auto"==(o.maxValue||"auto")?(r=r??lt(...e[1].map((t=>i.getValuesInRange(t[0])))),a=r[1]):(this.extremes.has(e[0])||this.extremes.set(e[0],lt(...o.dataRanges.map((t=>i.getValuesInRange(t[0]))))),s=this.extremes.get(e[0]),a=s[1]):a=o.maxValue,[n,a]}createRangeMap(t,e,i){e=e.intersect(this.model.gridRange);const o=i[0][0].size,r=e.size;if(r.columns>1&&r.rows>1)return void this.model.logger?.error(`invalid sparkline location range: ${e.A1}`);let s=!1;if(s=1==r.columns&&1==r.rows?o.rows>1:r.columns>1,s)for(let o=e.c1;o<=e.c2;o++)this.map.set(new wv(o,e.r1).A1,[t,i.map((([t,i])=>[new wv(t.c1+o-e.c1,t.r1,t.c1+o-e.c1,t.r2),i]))]);else for(let o=e.r1;o<=e.r2;o++)this.map.set(new wv(e.c1,o).A1,[t,i.map((([t,i])=>[new wv(t.c1,t.r1+o-e.r1,t.c2,t.r1+o-e.r1),i]))])}add(t,e,i){const o=++this.maxIndex;t&&e&&this.createRangeMap(o,t,e),this.groups.set(o,Object.assign({dataRanges:e,locRange:t},JSON.parse(JSON.stringify(Jf.DEFAULT_SPARKLINE_OPTIONS)),i))}update(t,e,i,o){const r=this.groups.get(t);Object.assign(r,{dataRanges:i,locRange:e},o),this.updateRangeMap=!0}delete(t){this.groups.delete(t),this.updateRangeMap=!0}shift(t){this.groups.forEach((e=>{e.dataRanges.forEach((([e])=>e.shift(t))),e.locRange.shift(t)})),this.updateRangeMaps()}}class qw extends wv{constructor(t,e,i=!1){super(e.c1,e.r1,e.c2,e.r2),this.model=t,this.initializedOnly=i,this.r=0,this.c=-1,this.done=!1}[Symbol.iterator](){return this}nextInitialized(){let t;for(;!this.done&&!t;)this.c<this.size.columns-1?this.c++:this.r<this.size.rows-1&&(this.c=0,this.r++),t=this.model.rows[this.r].cells[this.c],this.done=this.c>=this.size.columns-1&&this.r>=this.size.rows-1;return t}next(){if(this.done)return{done:!0};this.c<this.size.columns-1?this.c++:this.r<this.size.rows-1&&(this.c=0,this.r++),this.done=this.c>=this.size.columns-1&&this.r>=this.size.rows-1;const t=this.model.rows[this.r+this.r1],e=this.c+this.c1,i=this.initializedOnly&&!t.isCellInitialized(e)?this.nextInitialized():t?.cell(e);return i?{done:!1,value:i}:{done:!0}}forEach(t){let e;for(;e=this.next().value;)t(e)}}class Yw extends wv{constructor(t){super(t.c1,t.r1,t.c2,t.r2),this.r=0,this.c=-1,this.done=!1}[Symbol.iterator](){return this}next(){return this.done?{done:!0}:(this.c<this.size.columns-1?this.c++:this.r<this.size.rows-1&&(this.c=0,this.r++),this.done=this.c==this.size.columns-1&&this.r==this.size.rows-1,{done:!1,value:new wv(this.c+this.c1,this.r+this.r1)})}}class Zw extends wv{constructor(t,e,i){super(e.c1,e.r1,e.c2,e.r2),this.model=t,this.i=0,this.done=!1,this.axis=i,this.key="rows"===i?"r1":"c1"}[Symbol.iterator](){return this}next(){if(this.done)return{done:!0};this.i<this.size[this.axis]-1&&this.i++,this.done=this.i>=this.size[this.axis]-1;const t=this.model[this.axis][this.i+this[this.key]];return t?{done:!1,value:t}:{done:!0}}forEach(t){let e;for(;e=this.next().value;)t(e)}}class Xw{constructor(t,e){this.model=t,this.names=new Map,this.rangeMap=new Map,e&&this.populate(e)}populate(t){t.forEach((({name:t,ref:e})=>this.set(t,Z(e)?wv.fromCoords(e):wv.fromA1(e))))}set(t,e){this.names.set(t,e),this.rangeMap.set(e.A1,t)}delete(t){const e=this.names.get(t);e&&(this.rangeMap.delete(e.A1),this.names.delete(t))}findCellByName(t){let e;const i=this.model.rows,o=this.model.columns.length;for(let r=0;r<i.length;r++){e=i[r];for(let i=0;i<o;i++)if(e.hasCellName(i)){const o=e.cell(i);if(o.name==t)return o.range}}return null}getCellByName(t,e){const i=this.names.get(t)??this.findCellByName(t);return i?i.isColumn?this.model.rows.length>e.r1?this.model.columns[i.c1].cell(e.r1):null:i.isRow?this.model.columns.length>e.c1?this.model.rows[i.r1].cell(e.c1):null:this.model.rows[i.r1].cell(i.c1):null}getRangeByName(t,e=!0){const i=this.names.get(t);return e?i?.intersect(this.model.gridRange):i}shift(t){this.names.forEach(((e,i)=>{const o=e.A1;e.shift(t);const r=e.A1;o!=r&&(this.rangeMap.delete(o),this.rangeMap.set(r,i))}))}getSourceData(){const t=[];return this.names.forEach(((e,i)=>{t.push({name:i,ref:e.A1})})),t}}function Qw(t,e=null){const i=ot({},Jf.DEFAULT_OPTIONS,e,rs(t,e));return i.numberFormat?i.numberFormatter=gr(i.formatLocale,i.numberFormat):i.numberFormatter||(i.numberFormatter=gr(i.formatLocale)),i.dateFormat?i.dateFormatter=Qo(i.formatLocale,i.dateFormat):i.dateFormatter||(i.dateFormatter=Qo(i.formatLocale)),i.columnSorting&&(i.sorting=i.sorting||{enabled:!0}),"boolean"==typeof i.filters&&(i.filters={enabled:i.filters}),i.filters=Object.assign({},Qf,i.filters),"boolean"==typeof i.rowTree&&(i.rowTree={enabled:i.rowTree}),i.rowTree=Object.assign({},Kf,i.rowTree),"boolean"==typeof i.columnTree&&(i.columnTree={enabled:i.columnTree}),i.columnTree=Object.assign({},Kf,i.columnTree),i.cellValidation&&(i.cellValidation=ew(i.cellValidation)),i}class Kw extends(Tr(ow)){get cells(){return this._cells}get data(){return this._data}set data(t){this._data=t}get height(){return this._height??this.model.options.rowHeight}set height(t){this._height=t}get priority(){return this._priority}set priority(t){this._priority=t}get address(){return xv(this.index)}get range(){return new wv(null,this.index,null,this.index)}get hasFormula(){return!!this._formula}get formula(){return this._formula}set formula(t){super.formula=t,this.model.columns.forEach((t=>this.cell(t.index).refreshFormula()))}get values(){return this.model.columns.map((t=>this.cell(t.index).value))}cell(t,e){if(this.model.options.singleCellModel)return this._singleCell||(this._singleCell=new vw(this.model,{c:t,r:this.index})),this._singleCell.row=this,this._singleCell.column=this.model.columns[t],this._singleCell;let i=this._cells[t];if((e||!i)&&this.model.columns[t]){if(i=new vw(this.model,e??{c:t,r:this.index}),this._data){const e=this.model.columns[t].data;if(null!=e){const t=this._data[e];Z(t)?(t.comment&&this.model.comments.set(i.address,[t.comment]),i.populate(t)):i.hasValue||(i.value=t)}}i.name&&this.model.names.set(i.name,i.range),this._cells[t]=i}return i}constructor(t,e){super(t,e),this.isCellInitialized=t=>!!this.cells[t],this._cells=[],null==this._priority&&(this._priority=t.options.rowPriority)}populate(t){super.populate(t),this._height=null==t.h||"auto"==t.h?this.model.options.rowHeight:t.h,t.data&&(Array.isArray(t.data)?this._data=[...t.data]:this._data={...t.data}),null!=t.priority&&(this._priority=t.priority)}getSourceData(){const t=super.getSourceData();return null!=this._height&&this._height!=this.model.options.rowHeight&&(t.h=this._height),t}expand(t){super.expand(t),this.model.indexVisibleRows()}collapse(){super.collapse(),this.model.indexVisibleRows()}get prev(){return this.model.rows[this.index-1]}get next(){return this.model.rows[this.index+1]}get prevVisible(){let t=this.prev;for(;t&&!t.visible;)t=t.prev;return t}get nextVisible(){let t=this.next;for(;t&&!t.visible;)t=t.next;return t}hasCellFormula(t){return this.cells[t]&&this.cells[t].hasFormula||this._data&&this._data[this.model.columns[t].data]&&this._data[this.model.columns[t].data].f}hasCellName(t){return this.cells[t]&&null!=this.cells[t].name||this._data&&this._data[this.model.columns[t].data]&&null!=this._data[this.model.columns[t].data].name}insertColumns(t,e,i=!1){let o;const r=this.model.columns.length,s=this.model.calculations;if(i)for(let i=0;i<r;i++)this.hasCellFormula(i)&&(o=this.cell(i),o.formula=s.getFormula(o).shift({index:t,offset:e,direction:"right"}).createFormulaString(!1));t<this.cells.length&&this.cells.splice(t,0,...Array(e).fill(null))}deleteColumns(t,e,i=!1){let o;const r=this.model.columns.length,s=this.model.calculations;if(i)for(let i=0;i<r;i++)this.hasCellFormula(i)&&(o=this.cell(i),o.formula=s.getFormula(o).shift({index:t,offset:e,direction:"left"}).createFormulaString(!1));return t<this.cells.length?this.cells.splice(t,e):null}clearCalculatedValues(){this.cells.forEach((t=>t&&this.model.calculations.refreshFormula(t)))}}var Jw=i(4418),tx=i.n(Jw);const ex=t=>t?"1":"0",ix=t=>null==t?"_":t,ox=t=>null==t?"_":t.toString(),rx=t=>null==t?"_":JSON.stringify(t),sx=t=>ix(t&&t.color?t.color:"_")+ix(t&&t.style?t.style:"_"),nx=t=>ix(t?t.horizontal:null)+ix(t?t.vertical:null)+ix(t?t.horizontal:null)+ox(t?t.indent:null)+ex(t?t.wrapText:null)+ox(t?t.textRotation:null),ax=t=>tx()("s_"+ex(t.bold)+ex(t.italic)+ex(t.underline)+ox(t.sz)+ix(t.font)+ix(t.color)+sx(t.top)+sx(t.right)+sx(t.bottom)+sx(t.left)+ix(t.patternType)+ix(t.fgColor)+ix(t.bgColor)+nx(t.alignment)+ox(t.angle)+rx(t.stops)+ex(t.hidden)+ex(t.editable)+rx(t.cssStyle)+rx(t.icon));function lx(t){const e={...t};return delete e.id,delete e.hash,e}class cx{constructor(t){this.model=t,this._count=0,this.hashmap=new Map,this.map=new Map}add(t){if(!isNaN(t))return this.get(t);const e=this.model.options.cssStyles?gw(t):t,i=e.hash?e.hash:ax(e);return this.hashmap.has(i)?this.map.get(this.hashmap.get(i)):(null==e.id&&(e.id=this._count),this._count=Math.max(e.id+1,this._count+1),e.hash=i,this.hashmap.set(i,e.id),this.map.set(e.id,e),e)}populate(t){t.forEach((t=>this.add(t)))}get(t){return this.map.has(t)?this.map.get(t):null}remove(t){const e="object"==typeof t?t:this.map.get(t);this.hashmap.delete(e.hash),this.map.delete(e.id)}merge(...t){const e=Object.assign({},...t.map((t=>Z(t)?t:this.get(t))));return this.add(lx(e))}duplicate(t,e){const i=this.get(t);return this.add(lx({...i,...e}))}set(t,e){let i=this.map.has(t)?this.map.get(t):{};for(const t in e)i[t]=e[t];return i=i.id?i:this.add(i),i}unset(t,e){if(this.map.has(t)){const i=this.map.get(t);for(const t of e)delete i[t]}}getSourceData(){return Array.from(this.map.values())}clean(){const t=new Map(Array.from(this.map.entries()).map((([t])=>[t,0])));this.model.columns.forEach((e=>{const i=t.get(e.style);null!=i&&t.set(e.style,i+1)})),this.model.rows.forEach((e=>{const i=t.get(e.style);null!=i&&t.set(e.style,i+1),e.cells.forEach((e=>{const i=t.get(e.style);null!=i&&t.set(e.style,i+1)}))})),t.forEach(((t,e)=>{0==t&&this.remove(e)}))}}function hx(t,e,i,o){const r=o??("rows"==i?e.rows:e.columns),s=function(t){const e=new Map;for(const i of t)e.has(i.level)||e.set(i.level,[]),e.get(i.level).push(i);return e}(r),n=t[i]??[];for(const t of n){let o;if(o=t.index>-1?[r[t.index]]:t.level>-1?s.get(t.level):r,t.name){const e=t.name instanceof RegExp?t.name:new RegExp(ut(t.name));o=o.filter((t=>e.test(t.name)))}o?.forEach((o=>{null!=t.priority&&(o.priority=t.priority),t.type?e.conditionalFormats.add(Object.assign({ranges:`${o.address}:${o.address}`},t)):(o.style=e.styles.add(t.style).id,"rows"==i&&null!=t.height?o.height=t.height:"columns"==i&&null!=t.width&&(o.width=t.width))}))}}function dx(t,e){for(const i of t)if(e[i.property]!=i.value)return!1;return!0}function ux(t,e,i){const o=t.cells??[];for(const t of o)if(t.conditions?.length){const o=e.getRangeIterator(i??e.gridRange);for(const i of o)dx(t.conditions,i)&&(i.style=e.styles.add(t.style).id)}else if(t.type)e.conditionalFormats.add(Object.assign({ranges:"A:"+e.columns[e.columns.length-1].address},t));else for(const i of e.columns)null==i.style&&(i.style=e.styles.add(t.style).id)}function px(t,e,i){hx(t,e,"columns",i)}function gx(t,e,i){hx(t,e,"rows",i)}function mx(t,e){ux(t,e),px(t,e),gx(t,e)}var fx;!function(t){t[t.NONE=0]="NONE",t[t.MERGED=1]="MERGED",t[t.HIDDEN=2]="HIDDEN"}(fx||(fx={}));class vx{get mergedCells(){return this._mergedCells}get hiddenCells(){return this._hiddenCells}constructor(t){this.model=t,this._mergedCells=new Map,this._hiddenCells=new Map}clear(){this._mergedCells.clear(),this._hiddenCells.clear()}getMergeState(t){return this._mergedCells.has(t)?fx.MERGED:this._hiddenCells.has(t)?fx.HIDDEN:fx.NONE}indexMergedRange(t){const e=t.A1,i=this._mergedCells.get(e);if(!i)return;const o=i.r,r=i.c,s=t.clone(),n=this.model.rows[o]?.cell(r);if(n)for(let t=0;t<i.rs;t++)for(let e=0;e<i.cs;e++)0==t&&0==e||(s.r1=o+t,s.c1=r+e,s.r2=s.r1,s.c2=s.c1,this._hiddenCells.set(s.A1,i));else this.remove(e)}add(t){const e=new wv(t.c,t.r),i=e.A1;if(this._mergedCells.has(i))this.remove(i);else if(this._hiddenCells.has(i))return;this._mergedCells.set(i,t),this.indexMergedRange(e)}remove(t){const e=this._mergedCells.get(t);if(!e)return;this._mergedCells.delete(t);const i=e.r,o=e.c,r=new wv(o,i);this._hiddenCells.delete(t);for(let t=0;t<e.rs;t++)for(let s=0;s<e.cs;s++)0==t&&0==s||(r.r1=i+t,r.c1=o+s,r.r2=r.r1,r.c2=r.c1,this._hiddenCells.delete(r.A1))}shift(t){const{index:e,offset:i,direction:o}=t,r={down:t=>{e<=t.r?t.r+=i:e>t.r&&e<t.r+t.rs&&(t.rs+=i)},up:t=>{e<=t.r?t.r-=i:e>t.r&&e<t.r+t.rs&&(t.rs-=i)},right:t=>{e<=t.c?t.c+=i:e>t.c&&e<t.c+t.cs&&(t.cs+=i)},left:t=>{e<=t.c?t.c-=i:e>t.c&&e<t.c+t.cs&&(t.cs-=i)}},s=[...this._mergedCells.values()];s.forEach((t=>this.remove(new wv(t.c,t.r).A1))),s.forEach((t=>{r[o](t),this.add(t)}))}}const bx=["index","name","rows","columns","cells","options","sparklines","rules","comments","styles","names","props","tab","theme"];class yx{get mergedHeaders(){return this._mergedHeaders}get hasFilter(){return this._filter}get hasRowTree(){return this._maxRowLevel>0}get hasRowTreeEnabled(){return this.hasRowTree&&this.options.rowTree.enabled}get maxRowLevel(){return this._maxRowLevel}get hasColumnTree(){return this._maxColumnLevel>0}get hasColumnTreeEnabled(){return this.hasColumnTree&&this.options.columnTree.enabled}get maxColumnLevel(){return this._maxColumnLevel}get headerCount(){return this._headerCount}get columnHeaderCount(){return this.headerCount+(this.hasColumnTreeEnabled?1:0)+(this.hasFilter?1:0)}get properties(){return this._properties}set properties(t){this._properties=t}get theme(){return this._theme}set theme(t){this._theme=t}constructor(t,e,i){this.otherModels={},this.autofitColumns=new Set,this.autofitRows=new Set,this.merges=new vx(this),this.styles=new cx(this),this.comments=new Sw(this),this.calculations=new Rw(this),this.names=new Xw(this),this.sorting=new Mw(this),this.filter=new Uw(this),this.sparklines=new Gw(this),this.conditionalFormats=new Pw(this),this._filter=!1,this._maxRowLevel=0,this._maxColumnLevel=0,this._headerCount=0,this._levelBasedRowTree=!0,this._levelBasedColTree=!0,this.clearRows=()=>(this.rowRoot.clearChildren(),this.rows=[],this.rows),this.clearColumns=()=>this.columns=[],this.logger=i,this.options=e??Qw(t.options),this.populate(t)}getConnectedModel(t){return this.group?this.group.get(t):null}getModelByRange(t){return t.sheet?this.getConnectedModel(t.sheet):this}getCellByA1(t){return this.getCellByRange(wv.fromA1(t))}getCellByRange(t){return this.getCellByCoords(t.r1,t.c1)}getCellByCoords(t,e){return this.rows[t]?.cell(e)}cell(t,e){return isNaN(t)?t instanceof wv?this.getCellByRange(t):"string"==typeof t?this.getCellByA1(t):null:this.getCellByCoords(t,e||0)}createRows(t,e=new Kw(this,{l:-1}),i=0){let o=!1,r=!1;this.autofitRows.clear();const s=t.map(((t,e)=>{t||(t={}),isNaN(t.l)||(o=!0),null!=t.p&&(r=!0),"auto"==t.h&&this.autofitRows.add(e);const s=new Kw(this,t);return s.origIndex=e+i,s.name&&this.names.set(s.name,wv.fullRow(e)),s}));let n=-1;return o?n=Ar(s,e,{reverse:this.options.rowTree.reversed}):r?n=$r(s,e):e.children=s,r||(o=!0),[e,s,n,o]}insertRowData(t,e,i){const o=this.createRows(i,new Kw(this,{l:t.level}),e);if(this._maxRowLevel=Math.max(this._maxRowLevel,o[2]),t.insertChildren(o[0].children,e),this.indexRowsByTree(),this.theme){const t=o[1];gx(this.theme,this,t),ux(this.theme,this,new wv(0,t[0].index,1/0,t[t.length-1].index))}}applyTheme(t,e){if(e)for(const t of this.getInitializedCellIterator())t.invalidateStyle();mx(t,this)}populate(t){this.index=t.index,this.name=t.name??this.name,this.tab=t.tab;let e=!1,i=!1;if(t.columns||(t.columns=new Array(this.options.columns).fill({})),t.rows||(t.rows=new Array(this.options.rows).fill({})),t.styles&&this.styles.populate(t.styles),this.autofitColumns.clear(),this.columns=t.columns.map(((t,o)=>{t||(t={}),t.l>0&&(e=!0),null!=t.p&&(i=!0),"auto"==t.w&&this.autofitColumns.add(o);const r=new yw(this,t);return this._filter=r.hasFilter||this._filter,r.name&&this.names.set(r.name,wv.fullColumn(o)),r})),this._levelBasedColTree=e,this._maxColumnLevel=-1,this.colRoot=new yw(this,{l:-1}),e?this._maxColumnLevel=Ar(this.columns,this.colRoot,{reverse:this.options.columnTree.reversed}):i?this._maxColumnLevel=$r(this.columns,this.colRoot):this.colRoot.children=this.columns,i||(this._levelBasedColTree=!0),this.indexColumns(),this.indexVisibleColumns(),[this.rowRoot,this.rows,this._maxRowLevel,this._levelBasedRowTree]=this.createRows(t.rows),this.indexRows(),this.indexVisibleRows(),this.options.pageSize&&this.options.pageSize<=this.rows.length&&(this.rowRoot.count=1/0),this.merges.clear(),t.comments=t.comments||[],t.cells?.forEach(((e,i)=>{const o=this.rows[e.r]?this.rows[e.r].cell(e.c,e):null;o?(e.cs>1||e.rs>1)&&this.merges.add({r:o.r,c:o.c,rs:e.rs||1,cs:e.cs||1}):this.logger?.error(`invalid cell definition (index ${i}): ${JSON.stringify(e)}`),o&&e.comment&&t.comments.push(Object.assign(e.comment,{c:e.c,r:e.r}))})),t.sparklines)try{this.sparklines.populate(t.sparklines)}catch(t){Lr().error(`Sparkline init error: ${t}`)}if(t.names)try{this.names.populate(t.names)}catch(t){Lr().error(`Named range init error: ${t}`)}if(t.rules)try{this.conditionalFormats.populate(t.rules)}catch(t){Lr().error(`Conditional formats init error: ${t}`)}if(t.theme)try{this.applyTheme(t.theme),this._theme=t.theme}catch(t){Lr().error(`Theme init error: ${t}`)}if(t.comments)try{this.comments.populate(t.comments)}catch(t){Lr().error(`Comment init error: ${t}`)}this._properties=t.props,this.otherSourceData={};const o=new Set(bx),r=Object.keys(t).filter((t=>!o.has(t)));r.forEach((e=>this.otherSourceData[e]=t[e])),this.options.sorting?.defaultSettings&&(this.sorting.settings=this.options.sorting.defaultSettings),this.options.filters?.defaultSettings&&(this.filter.settings=this.options.filters.defaultSettings),this.calcHeaderHeights()}getSourceData(){const t={index:this.index,name:this.name,tab:this.tab,columns:this.columns.map((t=>t.getSourceData())),rows:this.rows.map((t=>t.getSourceData())),styles:this.styles.getSourceData(),rules:this.conditionalFormats.getSourceData(),sparklines:this.sparklines.getSourceData(),names:this.names.getSourceData(),options:this.options};this._properties&&(t.props=this._properties);const e=[];let i;for(let t=0;t<this.rows.length;t++)for(let o=0;o<this.columns.length;o++)i=this.rows[t].cell(o).getSourceData(),Object.keys(i).length>0&&(i.r=t,i.c=o,e.push(i));e.length>0&&(t.cells=e);const o=[];return this.styles.clean(),this.styles.map.forEach((t=>o.push(t))),o.length>0&&(t.styles=o),new Set([...Object.keys(this.otherModels??{}),...Object.keys(this.otherSourceData??{})]).forEach((e=>t[e]=this.otherModels[e]?Array.from(this.otherModels[e]).map((t=>t.getSourceData())):this.otherSourceData[e])),t}calcHeaderHeights(){this._headerCount=0,this._headerHeights=[],this.columns.forEach((t=>{this._headerCount=t.header?t.header.length:this._headerCount,this._headerHeights.length<this._headerCount&&this._headerHeights.push(...Array(this._headerCount-this._headerHeights.length).fill(0)),t.header?.forEach(((t,e)=>{e>=this._headerHeights.length&&this._headerHeights.push(0),this._headerHeights[e]=Math.max(this._headerHeights[e],t.height??0)}))}))}indexRows(){this.visibleRows=[],this.rows.forEach(((t,e)=>{t.index=e,t.isLoaded||(t.collapsed=!0),t.hidden||t.filterState==Ir.Filtered||(t.visibleIndex=this.visibleRows.length,this.visibleRows.push(t))}))}indexVisibleRows(){this.visibleRows=[];let t=0;if(this._levelBasedRowTree){if(this.rowRoot.walkVisible((e=>{e.visibleIndex=t++,this.visibleRows.push(e)})),this.options.rowTree.reversed){const e=new Array(this.visibleRows.length);this.visibleRows.forEach(((i,o)=>{t=this.visibleRows.length-o-1,i.visibleIndex=t,e[t]=i})),this.visibleRows=e}}else this.rowRoot.walkVisible((t=>this.visibleRows[t.index]=t)),this.visibleRows=this.visibleRows.filter((e=>!!e&&(e.visibleIndex=t++,!0)))}indexRowsByTree(){this.rows=[];let t=0;this.rowRoot.walk((e=>{e.index=t++,this.rows.push(e)})),this.options.rowTree.reversed&&this.rows.reverse(),this.indexVisibleRows()}indexColumns(){this.visibleColumns=[],this.columns.forEach(((t,e)=>{t.index=e,t.hidden||this.visibleColumns.push(t)}))}indexVisibleColumns(){this.visibleColumns=[],this.visibleColumnIndex={};let t=0;if(this.colRoot.walkVisible((e=>{e.visibleIndex=t,this.visibleColumnIndex[e.index]=t++,this.visibleColumns.push(e)})),this.options.columnTree.reversed){this.visibleColumnIndex={};const e=new Array(this.visibleColumns.length);this.visibleColumns.forEach(((i,o)=>{t=this.visibleColumns.length-o-1,i.visibleIndex=t,this.visibleColumnIndex[i.index]=t,e[t]=i})),this.visibleColumns=e}this.indexHeaders()}indexHeaders(){this._mergedHeaders=[],this._headerCount=0,this.colRoot.walkVisible((t=>{this._headerCount=Math.max(t.header?t.header.length:0,this._headerCount),t.mergedHeaders.forEach((e=>this._mergedHeaders.push({h:e,c:t.index,r:e.r,cs:t.calculateRealColspan(e.cs??1),rs:e.rs??1})))})),this._mergedHeaders.forEach((t=>{if(!t.h.hidden)for(let e=t.c;e<t.c+t.cs;e++)for(let i=t.r;i<t.r+t.rs;i++)(i>t.r||e>t.c)&&this.columns[e]&&this.columns[e].header[i]&&(this.columns[e].header[i].hidden=!0)})),this.calcHeaderHeights()}removeHeader(t){this.columns.forEach((e=>{t<e.header.length&&e.header.splice(t,1)})),this.indexHeaders()}clear(){this.clearRows(),this.clearColumns(),this.resetViewport()}resetViewport(){return this._viewport=null,this}getViewport(t,e,i){const o=[],r=[];let s,n,a=e.h,l=0;for(l=0;l<i.t;l++)s=this.visibleRows[l],a-=s.height,o.push(s);for(l=this.visibleRows.length-i.b;l<this.visibleRows.length;l++)s=this.visibleRows[l],a-=s.height;for(l=i.t+t.r;a>0&&l<this.visibleRows.length;)s=this.visibleRows[l++],a-=s.height,o.push(s);for(l=this.visibleRows.length-i.b;l<this.visibleRows.length;l++)o.push(this.visibleRows[l]);let c=e.w,h=0;for(h=0;h<i.l;h++)n=this.visibleColumns[h],c-=n.width,r.push(n);for(h=this.visibleColumns.length-i.r;h<this.visibleColumns.length;h++)n=this.visibleColumns[h],c-=n.width;for(h=i.l+t.c;c>0&&h<this.visibleColumns.length;)n=this.visibleColumns[h++],c-=n.width,r.push(n);for(h=this.visibleColumns.length-i.r;h<this.visibleColumns.length;h++)r.push(this.visibleColumns[h]);return this._viewport={rows:o,columns:r}}calculateViewport(){return this._viewport?this.calculations.calculateViewport(this._viewport):[]}getValuesInRange(t,e=!1){if(!(t=t.intersect(this.gridRange)))return[];const{columns:i,rows:o}=t.size,r=new Array(o);let s,n=0,a=0;for(let o=t.r1;o<=t.r2;o++){r[n]=new Array(i),a=0,s=this.rows[o];for(let i=t.c1;i<=t.c2;i++)r[n][a++]=e?s.cell(i).formattedValue:s.cell(i).value;++n}return r}setRowExpandLevel(t){this.rows.forEach((e=>{e.collapsed=!e.isLoaded&&!e.isPartialyLoaded||e.level>=t,e.level<=t&&(e.hidden=!1)})),this.indexVisibleRows()}setColumnExpandLevel(t){this.columns.forEach((e=>e.collapsed=e.level>=t)),this.indexVisibleColumns()}getViewportRange(){return this._viewport?new wv(this._viewport.columns[0].index,this._viewport.rows[0].index,this._viewport.columns[this._viewport.columns.length-1].index,this._viewport.rows[this._viewport.rows.length-1].index):null}get gridRange(){return new wv(0,0,this.columns.length-1,this.rows.length-1)}getRangeIterator(t,e=!1){return new qw(this,e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange))}getInitializedCellIterator(){return new qw(this,this.gridRange,!0)}getRowIterator(t,e=!1){return t=e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange),new Zw(this,t,"rows")}getColumnIterator(t,e=!1){return t=e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange),new Zw(this,t,"columns")}getCellArray(t){const e=[];for(const i of this.getRangeIterator(t))e.push(i);return e}transformRangeToMatrix(t,e){let i,o,r;const s=[];for(let n=(t=t.intersect(this.gridRange)).r1;n<=t.r2;n++)if(i=this.rows[n],i){r=[];for(let s=t.c1;s<=t.c2;s++)o=i.cell(s),o&&r.push(e(o));s.push(r)}return s}getCellMatrix(t){return this.getModelByRange(t)?.transformRangeToMatrix(t,(t=>t))}getValueMatrix(t){return this.getModelByRange(t)?.transformRangeToMatrix(t,(t=>t.value))}shift(t){t.sheet=this.name,this.merges.shift(t),this.calculations.shift(t),this.names.shift(t),this.comments.shift(t),this.sparklines.shift(t)}clearCalculations(t=!1){t&&this.group?this.group.models.forEach((t=>t.calculations.refresh())):this.calculations.refresh()}refreshSparklines(){this.sparklines.updateRangeMaps();for(const t of this.getInitializedCellIterator())t.invalidateStyle()}clearCalculatedStyles(){this.conditionalFormats.refresh();const t=[];for(const e of this.getInitializedCellIterator())t.push(e),e.invalidateStyle()}insertColumns(t,e,i=!1){const o=this.columns[Math.min(this.columns.length-1,t)].parent;i&&++t,this.shift({index:t,offset:e,direction:"right"});for(let i=0;i<this.rows.length;i++)this.rows[i].insertColumns(t,e,!1);const r=new Array(e).fill(null).map((()=>new yw(this)));return this.columns.splice(t,0,...r),this.maxColumnLevel>0&&o.insertChildren(r,t-(o.index||-1)-1),this.indexColumns(),this.clearCalculations(!0),r}deleteColumns(t,e){const i=this.columns[t].parent;this.shift({index:t,offset:e,direction:"left"});const o=[];for(let i=0;i<this.rows.length;i++)o.push(this.rows[i].deleteColumns(t,e,!1));const r=this.columns.splice(t,e);return i?.deleteChildren(r),this.indexColumns(),this.clearCalculations(!0),r}insertRows(t,e,i=!1){const o=Math.min(this.rows.length-1,t),r=o<0?this.rowRoot:this.rows[o].parent;i&&++t;const s=isNaN(e)?e.length:e;this.shift({index:t,offset:s,direction:"down"});const n=isNaN(e)?e:new Array(s).fill(null).map((()=>new Kw(this)));return this.rows.splice(t,0,...n),this.maxRowLevel>0&&r.insertChildren(n,t-(r.index||-1)-1),this.indexRows(),this.theme&&(gx(this.theme,this,n),ux(this.theme,this,new wv(0,n[0].index,1/0,n[n.length-1].index))),this.clearCalculations(!0),n}deleteRows(t,e){const i=this.rows[t].parent;this.shift({index:t,offset:e,direction:"up"});const o=this.rows.splice(t,e);return i?.deleteChildren(o),this.indexRows(),this.clearCalculations(!0),o}moveRows(t,e,i){const o=this.rows.splice(t,e);return this.rows.splice(i,0,...o),this.shift({index:t,offset:i-t,direction:"down",maxIndex:t+e-1}),this.indexRows(),this.clearCalculations(!0),o}moveColumns(t,e,i){const o=this.columns.splice(t,e);return this.columns.splice(i,0,...o),this.shift({index:t,offset:i-t,direction:"right",maxIndex:t+e-1}),this.indexColumns(),this.clearCalculations(!0),o}spillValues(t){const{cell:e,values:i,displayValues:o,propertyCell:r}=t,s=[],n=[],a=0===i.length||0===i[0].length;let l,c;const h=a?null:new wv(e.c,e.r,e.c+i[0].length-1,e.r+i.length-1);if(e.spillRange&&this.getRangeIterator(e.spillRange,!0).forEach((t=>{e==t||h?.contains(t.range)||t.clearSpilledValue()})),e.spillRange=h,a)return{cells:s,oldValues:n,range:null};for(let t=h.r1;t<=h.r2;t++){if(l=this.rows[t],!l)continue;const a=t-h.r1;for(let t=h.c1;t<=h.c2;t++){const d=t-h.c1;c=l.cell(t),c.editable&&(n.push(c.value2),c.spillValue(i[a][d],e),r&&(c.format=r.format,c.type=r.type),o&&null!=o[a][d]&&(c.displayValue=o[a][d]),s.push(c))}}return{cells:s,oldValues:n,range:h}}getCellByName(t,e,i=!0){return this.names.getCellByName(t,e)||(this.group&&i?this.group.getCellByName(t,e):null)}getRangeByName(t,e=!0){return this.names.getRangeByName(t)||(this.group&&e?this.group.getRangeByName(t):null)}getValueMatrixByName(t,e=!0){const i=this.names.getRangeByName(t);return i?this.getValueMatrix(i):this.group&&e?this.group.getValueMatrixByName(t):null}rebuildRowTree(){const t=this._levelBasedRowTree?Ar:$r;this._maxRowLevel=t(this.rows,this.rowRoot,{reverse:this.options.rowTree.reversed}),this.indexRowsByTree()}rebuildColumnTree(){const t=this._levelBasedColTree?Ar:$r;this._maxColumnLevel=t(this.columns,this.colRoot,{reverse:this.options.columnTree.reversed}),this.indexColumns()}calculateCellOffset(t){let e=0,i=0;for(let i=0;i<t.c1&&this.columns[i];i++)e+=this.columns[i].width;for(let e=0;e<t.r1&&this.rows[e];e++)i+=this.rows[e].height;return{x:e,y:i}}}class wx{get errors(){return this._errors}get(t){return this.models.get(t)}has(t){return this.models.has(t)}getNewName(){let t;do{t=`sheet${this._max}`}while(this.models.has(t));return t}add(t){if(t.index=t.index??this._max,++this._max,t.name=t.name||this.getNewName(),this.models.has(t.name))throw Error(`sheet "${t.name}" already exists`);return this.models.set(t.name,t),t.group=this,t}duplicate(t){const e=this.get(t);if(!e)return;const i=new yx(e.getSourceData(),e.options);let o=1;for(;this.models.has(`${t}_${o}`);)++o;return i.name=`${t}_${o}`,this.add(i),i}remove(t){return this.models.delete(t),this}rename(t,e){if(this.has(t)){if(this.has(e))throw new Error(`Model '${e}' already exists`);const i=this.get(t);i.name=e,this.models.set(e,i),this.models.delete(t),this.models.forEach((i=>{i.calculations.renameSheet(t,e)&&i.calculateViewport()}))}return this}clear(){this.models.clear(),this._errors=[]}constructor(t){this._max=0,this.models=new Map,this.themes=new Map,this._errors=[],t&&this.populate(t)}populate(t){this.clear(),t.models.forEach((t=>{const e=new yx(t);try{this.add(e)}catch(t){this.errors.push(t)}})),t.themes&&t.themes.forEach((t=>this.themes.set(t.name,t)))}getSourceData(){const t={models:[]};return this.models.forEach((e=>t.models.push(e.getSourceData()))),t}getCellByName(t,e){for(const i of this.models.values()){const o=i.getCellByName(t,e,!1);if(o)return o}return null}getRangeByName(t){for(const e of this.models.values()){const i=e.getRangeByName(t,!1);if(i)return i}return null}getValueMatrixByName(t){for(const e of this.models.values()){const i=e.getValueMatrixByName(t,!1);if(i)return i}return null}}class xx{constructor(t){this.model=t,this.stack=[],this.restack=[]}push(t){return this.restack=[],t.timestamp||(t.timestamp=Date.now()),this.stack.push(t),this}pop(t=1){let e=0;const i=[];for(;e++<t&&this.stack.length>0;){const t=this.stack.pop();i.push(t),this.restack.push(t)}return i}pop2(t=1){let e=0;const i=[];for(;e++<t&&this.restack.length>0;){const t=this.restack.pop();i.push(t),this.stack.push(t)}return i}}class kx{get activeCellCoords(){return{c:this.range.c1+this.activeCell.c1,r:this.range.r1+this.activeCell.r1}}constructor(t,e,i,o){this.hidden=!1,this.range=new wv(t,e,i,o),this.activeCell=new wv(0,0)}static fromRange(t){return new kx(t.c1,t.r1,t.c2,t.r2)}setCoords(t,e,i,o){this.range.setCoords(t,e,i,o),this.activeCell.setCoords(0,0)}setRange(t){"string"==typeof t&&(t=wv.fromA1(t)),this.range.setCoords(t.c1,t.r1,t.c2,t.r2),this.activeCell.setCoords(0,0)}move(t,e,i,o){this.range.setCoords(this.range.c1+this.activeCell.c1,this.range.r1+this.activeCell.r1,this.range.c1+this.activeCell.c2,this.range.r1+this.activeCell.r2),this.range.move(t,e,i,o,!1),this.activeCell.setCoords(0,0)}moveRange(t,e,i,o){this.range.move(t,e,i,o,!0)}moveActiveCell(t,e){const{columns:i,rows:o}=this.range.size;this.activeCell.move(t,e,i,o,!0)}}const Cx={...Jf,CUSTOM_CLIPBOARD_TYPE:"web application/json"};class Mx{constructor(t,e,i=Cx.MAX_CACHE_ITEMS){this.maxCacheItems=i,this.queue=[],this.disabled=!1,this.table=new Array(e).fill(null).map((()=>new Array(t)))}get(t,e){return this.table[e][t]}delete(t,e){return this.table[e][t]=null,this}deleteColumn(t){for(let e=0;e<this.table.length;e++)this.table[e][t]=null;return this}deleteRow(t){return this.table[t]=new Array(this.table[0].length).fill(null),this}set(t,e,i){this.disabled||(this.get(t,e)||this.queue.push([e,t]),this.table[e][t]=i)}clear(){this.queue=[],this.table=this.table.map((t=>new Array(t.length)))}clean(){if(this.maxCacheItems>0&&this.queue.length>this.maxCacheItems){let t=this.queue.length;for(let e=0;e<this.queue.length;e++){const i=this.queue[e];if(!this.table[i[0]][i[1]].parentNode&&(this.queue[e]=null,this.table[i[0]][i[1]]=null,--t<=this.maxCacheItems))break}t<this.queue.length&&(this.queue=this.queue.filter((t=>t)))}}}var _x=function(t,e,i,o){var r,s=arguments.length,n=s<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,e,i,o);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(n=(s<3?r(n):s>3?r(e,i,n):r(e,i))||n);return s>3&&n&&Object.defineProperty(e,i,n),n};let Sx=class extends En{constructor(){super(),this.render=()=>an`
|
|
3744
|
+
`,Xf=(t,e,i)=>{for(const i of e)if(i[0]===t)return(0,i[1])();return i?.()},Qf={enabled:!1,includeChildren:!0,includeParents:!0},Kf={enabled:!0,reversed:!1},Jf={ROW_HEIGHT:22,RESIZE_TRESHOLD:10,ROW_HEADER_WIDTH:60,SLIDER_SIZE:12,EXPANDER_SIZE:13,MAX_CACHE_ITEMS:5e3,CACHE_CLEAN_INTERVAL:30,COMMENT_HIDE_TIMEOUT:1e3,SELECTOR_BORDER_WIDTH:1,MIN_ROW_HEIGHT:5,MIN_COL_WIDTH:5,SPARKLINE_GAP:4,AUTOSCROLL_TRESHOLD:100,AUTOSCROLL_RATIO:1.1,AUTOSCROLL_INTERVAL:100,DEFAULT_SPARKLINE_OPTIONS:{minValue:"auto",maxValue:"auto",type:"line",style:{color:"0094FF",weight:1},marker:{color:"ff0000"}},DEFAULT_OPTIONS:{rows:100,columns:20,readOnly:!1,rowNumbers:!0,rowPriority:2,rowTree:{enabled:!0},columnTree:{enabled:!0},colLetters:!0,emptyPlaceholder:!0,freezeTop:0,fontSize:14,rowHeight:22,rowResize:!0,columnWidth:100,columnResize:!0,columnPriority:1,freezeLeft:0,freezeRight:0,freezeBottom:0,maxSortingColumns:3,numberFormat:null,levelIndentFactor:2,cellIndentFactor:10,emptyClickable:!1,grid:!0,autofill:!0,undoRedo:!0,commandWindow:!0,cellCache:!0,singleCellModel:!1,zoom:1,editing:{rowInsertion:!0,rowDeletion:!0,colInsertion:!0,colDeletion:!0,rowOutline:!0,colOutline:!0,dateCalendarEditor:!1},comments:{hideTimeout:1e3,offsetX:30,offsetY:-30,zIndex:500,headerPosition:"top"},scrolling:{verticalOverscroll:!0,horizontalOverscroll:!0,scrollbarVisibilityTreshold:100},selecting:{enabled:!0,multiSelect:!0},events:{click:{mouseMoveTreshold:10}},clipboard:{pasteProps:["v","dv"],rowPasteMode:"rewrite_append",columnPasteMode:"rewrite"},print:{dpi:600,margins:{left:6.35,right:6.35,top:19.05,bottom:19.05,header:7.62,footer:7.62},orientation:"portrait",paper:"A4"}},MAX_COMMENT_AUTOHEIGHT:300,MIN_COMMENT_AUTOHEIGHT:25,...G},tv=/^(?!.*[\\\/\*\[\]\:\?"])(.{1,31})$/;function ev(t){return tv.test(t)}function iv(t){return["\\","/","*","[","]",":","?",'"'].forEach((e=>t=t.replace(new RegExp(`\\${e}`,"g"),""))),t}function ov(t,e){return!isNaN(t)&&null!=t||!isNaN(e)&&null!=e||(t=null==t?"":ct(t.toString()).toLowerCase(),e=null==e?"":ct(e.toString()).toLowerCase()),t>e?1:t<e?-1:0}function rv(t,e){const i=Q(e);return Q(t)?(t=t.toString().trim()).startsWith("=")?0==ov(e,i?t.substring(1):parseFloat(t.substring(1))):t.startsWith(">=")?ov(e,i?t.substring(2):parseFloat(t.substring(2)))>=0:t.startsWith("<=")?ov(e,i?t.substring(2):parseFloat(t.substring(2)))<=0:t.startsWith(">")?ov(e,i?t.substring(1):parseFloat(t.substring(1)))>0:t.startsWith("<")?ov(e,i?t.substring(1):parseFloat(t.substring(1)))<0:0==ov(e,i?t:isNaN(t)?t||"":parseFloat(t)):e==t}const sv=new Map([["=",["==",1,0]],["<>",["!=",1,0]],[">",[">",1,0]],["<",["<",1,0]],[">=",[">=",1,0]],["<=",["<=",1,0]],["+",["+",2,0]],["-",["-",2,0]],["*",["*",3,0]],["/",["/",3,0]]]),nv=t=>["=",">","<",">=","<="].includes(t),av=t=>["+","-","*","/"].includes(t),lv=t=>av(t)||nv(t);function cv(t,e,i){switch(i){case"+":return t+e;case"-":return t-e;case"*":return t*e;case"/":return t/e;case"=":return 0==ov(t,e);case">":return ov(t,e)>0;case"<":return ov(t,e)<0;case">=":return ov(t,e)>=0;case"<=":return ov(t,e)<=0;default:throw new Error(`Invalid operator: ${i}`)}}function hv(t,e,i){const o=Array.isArray(t),r=Array.isArray(e);if(!o&&!r)return[[cv(t,e,i)]];const s=Math.max(o?t.length:0,r?e.length:0),n=Math.max(o?t[0].length:0,r?e[0].length:0),a=[];for(let l=0;l<s;l++){const s=[];for(let a=0;a<n;a++){const n=o?t[l]?.[a]:t,c=r?e[l]?.[a]:e,h=null==n&&null==c?null:cv(n,c,i);s.push(h)}a.push(s)}return a}var dv;!function(t){t[t.Number=0]="Number",t[t.Boolean=1]="Boolean",t[t.String=2]="String",t[t.StringQuote=3]="StringQuote",t[t.Function=4]="Function",t[t.ArgumentSeparator=5]="ArgumentSeparator",t[t.OpenBracket=6]="OpenBracket",t[t.CloseBracket=7]="CloseBracket",t[t.Operator=8]="Operator",t[t.Cell=9]="Cell",t[t.Variable=10]="Variable",t[t.Range=11]="Range",t[t.Sheet=12]="Sheet",t[t.SheetQuote=13]="SheetQuote",t[t.SheetSeparator=14]="SheetSeparator",t[t.Unknown=15]="Unknown",t[t.Operand=16]="Operand"}(dv||(dv={}));const uv=t=>t===dv.Number||t===dv.Boolean||t===dv.String||t===dv.Cell||t===dv.Variable||t===dv.Range,pv=t=>t>=48&&t<=57,gv=t=>"true"===(t=t.toLowerCase())||"false"===t,mv=t=>t>=65&&t<=90||t>=97&&t<=122||t>=192&&t<=687,fv={decimalPoint:".",stringQuote:'"',sheetQuote:"'",argumentSeparator:","};class vv{constructor(t){this.options=Object.assign(fv,t)}tokenize(t){const e=[],i=t.length;let o,r,s,n,a=0,l="",c=!1,h=!1,d=!1;for(;a<i;){if(o=t.charAt(a),r=o.charCodeAt(0),"="==o&&0==a)++a;else if(pv(r)){for(l=(d?"-":"")+o,++a;a<i;)if(o=t.charAt(a),r=o.charCodeAt(0),pv(r))l+=o,++a;else{if(o!==this.options.decimalPoint)break;l+=".",++a}d=!1,e.push([l,dv.Number])}else if(mv(r)||"$"==o){l=o,s=null,++a;do{if(o=t.charAt(a),r=o.charCodeAt(0),mv(r)||pv(r)||"."===o||"$"===o||"_"===o)"_"==o?s=dv.Variable:pv(r)&&!c&&null==s&&(s=dv.Cell),l+=o,++a,a==i&&e.push([l,s||dv.Variable]);else{if("("==o){e.push([l.toUpperCase(),dv.Function]),e.push([o,dv.OpenBracket]),++a;break}if("'"==o)e.push([l,dv.Sheet]),l="",e.push([o,dv.SheetQuote]),c=!0,++a;else if(":"==o)s=dv.Range,l+=o,++a;else{if(!c||" "!=o){if("!"==o){""!==l&&e.push([l,dv.Sheet]),e.push([o,dv.SheetSeparator]),c=!1,l="",++a;break}e.push([l,s||(gv(l)?dv.Boolean:dv.Variable)]);break}l+=o,++a}}}while(a<i)}else if(lv(o)){if("-"===o&&pv(t.charCodeAt(a+1))&&(null==n||"("==n[0]||nv(n[0])||n[1]==dv.ArgumentSeparator))d=!0;else{for(l=o;nv(t.charAt(a+1));)l+=t.charAt(++a);e.push([l,dv.Operator])}++a}else if("("===o)e.push([o,dv.OpenBracket]),++a;else if(")"===o)e.push([o,dv.CloseBracket]),++a;else if("'"===o)e.push([o,dv.SheetQuote]),c=!0,++a;else if(o===this.options.argumentSeparator)e.push([o,dv.ArgumentSeparator]),++a;else if(o===this.options.stringQuote){for(h=!1,e.push([o,dv.StringQuote]),l="";++a<i;){if(o=t.charAt(a),o===this.options.stringQuote){h=!0,++a;break}l+=o}e.push([l,dv.String]),h&&e.push([this.options.stringQuote,dv.StringQuote])}else e.push([o,dv.Unknown]),++a;n=e[e.length-1]}return e}}function bv(t,e,i=null,o=!0){return t+=e,0==e?t:t>=0?i?o?t%i:Math.min(t,i-1):t:o&&i?i+t%i:Math.max(t,0)}const yv=/(?:'?([\w\s]*)'?!)?(\$?)([a-z]*)(\$?)(\d*)(?::(\$?)([a-z]*)(\$?)(\d*))?/i;class wv{constructor(t,e,i,o,r){this.setCoords(t,e,i,o),this.sheet=r}setCoords(t,e,i,o){this.c1=null==t&&null==i?0:t,this.r1=null==e&&null==o?0:e,this.c2=null==o&&null!=t||null!=i?null==i?t:i:1/0,this.r2=null==i&&null!=e||null!=o?null==o?e:o:1/0,this.normalize()}get size(){return{columns:this.c2-this.c1+1,rows:this.r2-this.r1+1}}get count(){const{columns:t,rows:e}=this.size;return t*e}normalize(){const[t,e]=[Math.min(this.c1,this.c2),Math.max(this.c1,this.c2)],[i,o]=[Math.min(this.r1,this.r2),Math.max(this.r1,this.r2)];return this.c1=t,this.c2=e,this.r1=i,this.r2=o,this}move(t,e,i=null,o=null,r=!0){const s=bv(this.c1,t,i,r);r&&(e+=this.c1+t!=s&&0!=t?t>0?1:-1:0),this.c1=s,this.r1=bv(this.r1,e,o,r),this.c2=bv(this.c2,t,i,r),this.r2=bv(this.r2,e,o,r)}contains(t){return t.c1>=this.c1&&t.c2<=this.c2&&t.r1>=this.r1&&t.r2<=this.r2}containsColumn(t){return this.c1<=t&&this.c2>=t}containsRow(t){return this.r1<=t&&this.r2>=t}removeAnchors(){return this.c1Anchor=!1,this.c2Anchor=!1,this.r1Anchor=!1,this.r2Anchor=!1,this}addAnchors(){return this.c1Anchor=!0,this.c2Anchor=!0,this.r1Anchor=!0,this.r2Anchor=!0,this}shiftLeft(t,e=1,i=null,o=!1){return t<=this.c1&&(o||!this.c1Anchor)&&(null==i||this.c1<=i)&&(this.c1-=e),t<=this.c2&&(o||!this.c2Anchor)&&(null==i||this.c2<=i)&&(this.c2-=e),this}shiftRight(t,e=1,i=null,o=!1){return t<=this.c1&&(o||!this.c1Anchor)&&(null==i||this.c1<=i)&&(this.c1+=e),t<=this.c2&&(o||!this.c2Anchor)&&(null==i||this.c2<=i)&&(this.c2+=e),this}shiftUp(t,e=1,i=null,o=!1){return t<=this.r1&&(o||!this.r1Anchor)&&(null==i||this.r1<=i)&&(this.r1-=e),t<=this.r2&&(o||!this.r2Anchor)&&(null==i||this.r2<=i)&&(this.r2-=e),this}shiftDown(t,e=1,i=null,o=!1){return t<=this.r1&&(o||!this.r1Anchor)&&(null==i||this.r1<=i)&&(this.r1+=e),t<=this.r2&&(o||!this.r2Anchor)&&(null==i||this.r2<=i)&&(this.r2+=e),this}shift(t){const{index:e,offset:i,direction:o,maxIndex:r,ignoreAnchors:s}=t;switch(o){case"down":return this.shiftDown(e,i,r,s);case"up":return this.shiftUp(e,i,r,s);case"left":return this.shiftLeft(e,i,r,s);case"right":return this.shiftRight(e,i,r,s)}}intersect(t){this.normalize(),t.normalize();const e=Math.max(t.c1,this.c1),i=Math.min(t.c2,this.c2),o=Math.max(t.r1,this.r1),r=Math.min(t.r2,this.r2);return e<=i&&o<=r?new wv(e,o,i,r,this.sheet):null}unite(t){return this.normalize(),t.normalize(),new wv(Math.min(this.c1,t.c1),Math.min(this.r1,t.r1),Math.max(this.c2,t.c2),Math.max(this.r2,t.r2),this.sheet)}clone(){const t=new wv(this.c1,this.r1,this.c2,this.r2,this.sheet);return t.c1Anchor=this.c1Anchor,t.r1Anchor=this.r1Anchor,t.c2Anchor=this.c2Anchor,t.r2Anchor=this.r2Anchor,t}equals(t,e=!1){return t.c1==this.c1&&t.r1==this.r1&&t.c2==this.c2&&t.r2==this.r2&&(0==e||t.c1Anchor==this.c1Anchor&&t.r1Anchor==this.r1Anchor&&t.c2Anchor==this.c2Anchor&&t.r2Anchor==this.r2Anchor)}get isCell(){return this.c2==this.c2&&this.r2==this.r1}get isRange(){return this.c2!=this.c1||this.r2!=this.r1}get isColumn(){return 0==this.r1&&this.r2==1/0}get isRow(){return 0==this.c1&&this.c2==1/0}get A1(){const t=this.isRange,e=(this.c1Anchor?"$":"")+(0!==this.c1||this.c2!==1/0?Cv(this.c1):"")+(0===this.r1&&this.r2===1/0?"":(this.r1Anchor?"$":"")+xv(this.r1)),i=t?(this.c2Anchor?"$":"")+(!isNaN(this.c2)&&this.c2<1/0?Cv(this.c2):"")+(this.r2Anchor?"$":"")+(!isNaN(this.r2)&&this.r2<1/0?xv(this.r2):""):e;return(null==this.sheet?"":((o=this.sheet).indexOf(" ")>-1?"'"+o+"'":o)+"!")+(e==i?e:e+":"+i);var o}get bounds(){return[[new wv(this.c1,this.r1),this.c2<1/0?new wv(this.c2,this.r1):null],[this.r2<1/0?new wv(this.c1,this.r2):null,this.r2<1/0&&this.c2<1/0?new wv(this.c2,this.r2):null]]}*cells(){for(let t=this.r1;t<=this.r2;t++)for(let e=this.c1;e<=this.c2;e++)yield new wv(e,t)}static fromA1(t){const e=yv.exec(t),i=new wv(e[3]?Mv(e[3]):null,e[5]?kv(e[5]):null,e[7]?Mv(e[7]):null,e[9]?kv(e[9]):null,e[1]||null);return!e[2]&&e[3]||(i.c1Anchor=!0),!e[4]&&e[5]||(i.r1Anchor=!0),(e[6]||e[2]&&!e[7])&&(i.c2Anchor=!0),(e[8]||e[4]&&!e[9])&&(i.r2Anchor=!0),i}}function xv(t){return(t+1).toString()}function kv(t){return parseInt(t)-1}function Cv(t){++t;let e,i="";for(;t>0;)e=(t-1)%26,i=String.fromCharCode(e+65)+i,t=(t-e-1)/26;return i}function Mv(t){const e=t.length;let i=0;for(let o=0;o<e;o++)i+=(t.charCodeAt(o)-64)*Math.pow(26,e-o-1);return i-1}function _v(t){return t.sort(((t,e)=>{const i=Math.min(t.r1,t.r2),o=Math.min(e.r1,e.r2),r=Math.min(t.c1,t.c2),s=Math.min(e.c1,e.c2);return i<o?-1:i>o?1:r<s?-1:s>r?1:0}))}function Sv(t){return t.formula.cells.map((e=>t.cell.model.getCellByRange(e[1])))}function Ev(t){let e=t;for(;Array.isArray(e);)e=e.length>0?e[0]:null;return e}function zv(t){return Array.isArray(t)?t:[[t]]}function Lv(t,e,i,o){if(!Array.isArray(t))return e(t,i,o);for(let o=0;o<t.length;o++)if(!1===Lv(t[o],e,null==i?o:i,null==i?void 0:o))return!1}wv.fromA1s=(t,e=";")=>t.split(e).map((t=>wv.fromA1(t))),wv.toA1s=(t,e=";")=>t.map((t=>t.A1)).join(e),wv.fromCoords=t=>new wv(t.c1,t.r1,t.c2,t.r2),wv.fullColumn=t=>new wv(t,0,t,1/0),wv.fullRow=t=>new wv(0,t,1/0,t);const Iv=new Set(["SUMPRODUCT","FILTER"]),Rv=t=>Iv.has(t),Tv=t=>!!(t&&t.length>0&&"="==t.charAt(0)),Av=t=>Tv(t)?t:"="+(t??""),$v=t=>Tv(t)?t.substring(1):t,Ov=["#5B97FF","#FF616B","#B77CFF","#00B02C","#FC58BE","#FF9000","#2EB0B3"],Dv=t=>Ov[t%Ov.length],Nv=new Map([["FORMULATEXT","_xlfn."],["CONCAT","_xlfn."],["INDIRECT","_xlfn."],["ISOWEEKNUM","_xlfn."],["SWITCH","_xlfn."],["XOR","_xlfn."]]);class Pv{get fn(){return this._fn??(this._fn=new Function("t","ctx","return "+this.compile()))}get tokens(){return this._tokens}get variables(){return this._variables}get cells(){return this._cells}get ranges(){return this._ranges}get colors(){if(!this._colors){let t;this._colors=new Map,this._tokens.forEach(((e,i)=>{if([dv.Cell,dv.Range].includes(e[1])){const o=(t?"'"+t+"'!":"")+e[0];this._colors.set(o,{color:Dv(this._colors.size),address:e[0],sheet:t,type:e[1],tokenIndex:i}),t=null}else e[1]==dv.Sheet&&(t=e[0])}))}return this._colors}constructor(t,e){this.expression=t,this.tokenizer=e,this._tokens=e.tokenize(this.expression),this.updateDependecies()}findTokenIndexAtPosition(t){let e=0;return this._tokens.findIndex((i=>{const o=i[0].length;if(t>=e&&t<=e+o)return!0;e+=o}))}findSheetTokenIndex(t){const e=this._tokens[t];if(![dv.Cell,dv.Range].includes(e[1]))return-1;if(0==t||this._tokens[t-1][1]!=dv.SheetSeparator)return-1;let i=t-2;for(;i>=0;){if(this._tokens[i][1]==dv.Sheet)return i;i--}return-1}removeSheetToken(t){if(this._tokens[t][1]!=dv.Sheet&&(t=this.findSheetTokenIndex(t)),t>-1){t>0&&this._tokens[t-1][1]==dv.SheetQuote&&t--;let e=t;for(;e<this._tokens.length&&[dv.SheetSeparator,dv.SheetQuote,dv.Sheet].includes(this._tokens[e][1]);)e++;return this._tokens.splice(t,e-t),e-t}return 0}getNamedColor(t){return this.colors.get(t)?.color??"inherit"}getTokenPosition(t){let e=0;for(let i=0;i<t;i++)e+=this._tokens[i][0].length;return{min:e,max:e+this._tokens[t][0].length}}updateToken(t,e){this._fn=null,this._formula=null,this._xlFormula=null,this._tokens[t][0]=e}removeToken(t){this._fn=null,this._formula=null,this._xlFormula=null,this._tokens.splice(t,1)}insertToken(t,e,i){this._fn=null,this._formula=null,this._xlFormula=null;const o=[];return i==dv.Sheet&&/\s/.test(e)?(o.push([this.tokenizer.options.sheetQuote,dv.SheetQuote]),o.push([e,dv.Sheet]),o.push([this.tokenizer.options.sheetQuote,dv.SheetQuote])):o.push([e,i]),o.push(["!",dv.SheetSeparator]),this._tokens.splice(t,0,...o),o.length}clone(){return new Pv(this.createFormulaString(),this.tokenizer)}updateDependecies(){let t;this._variables=[],this._cells=[],this._ranges=[],this._tokens.forEach(((e,i)=>{switch(e[1]){case dv.Sheet:t=e[0];break;case dv.Variable:this._variables.push([i,e[0],t]),t=void 0;break;case dv.Cell:this._cells.push([i,wv.fromA1(e[0]),t]),t=void 0;break;case dv.Range:this._ranges.push([i,wv.fromA1(e[0]),t]),t=void 0}}))}createFormulaString(t=!1,e=!1){const i=this.tokenizer.options;let o,r,s,n="";for(let l=0;l<this._tokens.length;l++)switch(o=this._tokens[l],o[1]){case dv.SheetQuote:n+="'";break;case dv.SheetSeparator:n+="!";break;case dv.Sheet:r=o[0],n+=t?`<span style="font-style:italic">${r}</span>`:r;break;case dv.Variable:n+=o[0];break;case dv.Range:case dv.Cell:s=(r?"'"+r+"'!":"")+o[0],n+=t?`<span style="color:${this.getNamedColor(s)}">${o[0]}</span>`:o[0],r=null;break;case dv.StringQuote:n+=i.stringQuote;break;case dv.String:n+=o[0].replace(new RegExp(i.stringQuote,"g"),"\\"+i.stringQuote);break;case dv.ArgumentSeparator:n+=i.argumentSeparator;break;case dv.Function:n+=(e?(a=o[0],Nv.get(a)??""):"")+o[0];break;case dv.Unknown:n+=t?`<span style="background:#f00;color:#fff">${o[0]}</span>`:o[0];break;default:n+=o[0]}var a;return n}createExpressionTree(){const t=[],e=[],i=this.tokens;let o,r,s,n,a,l=null;for(let c=0;c<i.length;c++)switch(o=i[c],o[1]){case dv.Sheet:l=o[0];break;case dv.Cell:case dv.Range:t.push({t:o[0],tt:o[1],s:l}),l=null;break;case dv.Number:case dv.String:case dv.Boolean:case dv.Variable:t.push({t:o[0],tt:o[1]});break;case dv.Operator:for(0==t.length&&t.push({t:"",tt:dv.Operand}),s=sv.get(o[0]);e.length>0&&(n=sv.get(e[e.length-1][0]),n)&&(0===s[2]&&s[1]<=n[1]||1===s[2]&&s[1]<n[1]);)r=e.pop(),a=[t.pop(),t.pop()].reverse(),t.push({t:r[0],tt:r[1],c:a});e.push(o);break;case dv.Function:case dv.OpenBracket:e.push(o);break;case dv.ArgumentSeparator:for(;e.length>0&&(r=e[e.length-1],![dv.OpenBracket,dv.ArgumentSeparator].includes(r[1]));)r=e.pop(),a=[t.pop(),t.pop()].reverse(),t.push({t:r[0],tt:r[1],c:a});e.push(o);break;case dv.CloseBracket:for(a=[];e.length>0&&e[e.length-1][1]!==dv.OpenBracket;)r=e.pop(),r[1]==dv.Operator?a.push({t:r[0],tt:r[1],c:[t.pop(),t.pop()].reverse()}):r[1]==dv.ArgumentSeparator&&t.length>0&&a.push(t.pop());e.pop(),e.length>0&&e[e.length-1][1]===dv.Function?(r=e.pop(),a=a.reverse(),t.length>0&&i[c-1][1]!==dv.OpenBracket&&a.unshift(t.pop()),t.push({t:r[0],tt:r[1],c:a})):t.push(...a)}for(;e.length>0;)r=e.pop(),t.push({t:r[0],tt:r[1],c:[t.pop(),t.pop()].reverse()});return t.pop()}createExpressionJSCode(t,e,i){let o;switch(t.tt){case dv.Range:return"t.rn('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case dv.Cell:return"t.cl('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case dv.Operand:return"t.cl()";case dv.Variable:return i||e?.tt===dv.Function?"t.nr('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")":"t.nv('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case dv.String:return"'"+t.t.replace(/'/g,"\\'")+"'";case dv.Boolean:return"T"==t.t[0].toUpperCase()?"1":"0";case dv.Function:return o=t.c.map((e=>this.createExpressionJSCode(e,t,i||Rv(t.t)))),"t.fn('"+t.t+"').call(ctx"+(o.length>0?","+o.join(","):"")+")";case dv.Operator:return i?(o=t.c.map((e=>this.createExpressionJSCode(e,t,i||Rv(t.t)))),"t.op("+o[0]+","+o[1]+",'"+t.t+"')"):sv.has(t.t)?"("+t.c.map((e=>this.createExpressionJSCode(e,t,i))).join(sv.get(t.t)[0])+")":null;default:return t.t}}compile(){const t=this.createExpressionTree();return this.createExpressionJSCode(t)}toString(t=!1){return(t?"=":"")+(this._formula??(this._formula=this.createFormulaString()))}toExcelString(){return this._xlFormula??(this._xlFormula=this.createFormulaString(!1,!0))}shift(t){const{index:e,offset:i,direction:o,maxIndex:r,sheet:s,allSheets:n}=t;return this._cells&&this._cells.forEach((t=>{if(n||null==t[2]||t[2]==s){switch(o){case"up":t[1].shiftUp(e,i,r);break;case"right":t[1].shiftRight(e,i,r);break;case"down":t[1].shiftDown(e,i,r);break;case"left":t[1].shiftLeft(e,i,r)}this._tokens[t[0]][0]=t[1].A1}})),this._ranges&&this._ranges.forEach((t=>{if(n||null==t[2]||t[2]==s){switch(o){case"up":t[1].shiftUp(e,i,r);break;case"right":t[1].shiftRight(e,i,r);break;case"down":t[1].shiftDown(e,i,r);break;case"left":t[1].shiftLeft(e,i,r)}this._tokens[t[0]][0]=t[1].A1}})),this}hasSheetReference(t){for(const e of this._cells)if(e[2]==t)return!0;for(const e of this._ranges)if(e[2]==t)return!0;for(const e of this._variables)if(e[2]==t)return!0;return!1}renameSheet(t,e){let i=!1;return this._tokens.forEach((o=>{o[1]==dv.Sheet&&o[0]==t&&(o[0]=e,i=!0)})),i}}function jv(t,e){return e&&(t=gr(this.cell.model.options.locale,yr(e,"d"),!1)(t)),null==t?"":t.toString()}function Hv(t,e){return(t=null==t?"":t.toString()).substring(0,e)}function Fv(t,e){return(t=null==t?"":t.toString()).substring(Math.max(0,t.length-e),t.length)}function Bv(t,e,i){return(t=null==t?"":t.toString()).substring(e,e+i)}function Wv(...t){let e="";return Lv(t,(t=>e+=null==t?"":t.toString())),e}function Vv(...t){return Wv(...t)}function Uv(t){return(t=null==t?"":t.toString()).length}function Gv(t){return(t=null==t?"":t.toString()).toLowerCase()}function qv(t){return(t=null==t?"":t.toString()).toUpperCase()}function Yv(t){return t instanceof Date?t:Q(t)?Xo(t,Lo()):nr(t)}function Zv(t){return tt(t)?t:sr(t instanceof Date?t:Xo(t,Lo()))}function Xv(t){return Q(t)?Zv(t):t}function Qv(t,e){const i=Yv(t).getDay();switch(e){case 2:return i;case 3:return i-1;default:return i%7+1}}function Kv(t,e,i){return ar(Zv(Ev(t)),e)}function Jv(){return sr(le(new Date))}function tb(t){return null==(t=Ev(t))||""===t}function eb(t,e,i){return sr(new Date(t,e-1,i))}function ib(t){return Yv(t).getFullYear()}function ob(t){return Yv(t).getMonth()+1}function rb(t){return Yv(t).getDate()}function sb(t,e){const i=Yv(t);return i.setMonth(i.getMonth()+e+1),i.setDate(0),sr(i)}function nb(t){return Ci(Yv(t))}function ab(t){return Math.acos(t)}function lb(t){return Math.acosh(t)}function cb(t){return Math.PI/2-Math.atan(t)}function hb(t){return.5*Math.log((t+1)/(t-1))}function db(t){return Math.asin(t)}function ub(t){return Math.asinh(t)}function pb(t){return Math.atan(t)}function gb(t){return Math.atanh(t)}function mb(t){return Math.cos(t)}function fb(t){return Math.cosh(t)}function vb(t){return 1/Math.tan(t)}function bb(t){return 1/Math.tanh(t)}function yb(t){return 1/Math.sin(t)}function wb(t){return 1/Math.sinh(t)}function xb(t){return 180*t/Math.PI}function kb(){return Math.PI}function Cb(t){return 1/Math.cos(t)}function Mb(t){return 1/Math.cosh(t)}function _b(t){return Math.sin(t)}function Sb(t){return Math.sinh(t)}function Eb(t){return Math.tan(t)}function zb(t){return Math.tanh(t)}function Lb(t){return Math.abs(t)}function Ib(t){if(t<0)throw new Error("#NUM");return Math.ceil(t)}function Rb(t){return(t=Math.ceil(t))%2==0?t:t+1}function Tb(t){return Math.pow(Math.E,t)}function Ab(t){return t<0?-1:0==t?1:t*Ab(t-1)}function $b(t){return t<=0?1:t*$b(t-2)}function Ob(t){return Math.floor(t)}function Db(t){return t%1!=0}function Nb(t){return!Db(t)&&t%2==0}function Pb(t){return Db(t)||t%2==1}function jb(t){return Math.log(t)}function Hb(t,e){return Math.log(t)/Math.log(e)}function Fb(t){return Math.log10(t)}function Bb(t,e){return t%e}function Wb(t){return(t=Math.ceil(t))%2==0?t+1:t}function Vb(t,e){return Math.pow(t,e)}function Ub(...t){let e=1;return Lv(t,(t=>e*=t||1)),e}function Gb(t,e){return Math.floor(t/e)}function qb(t){return t*Math.PI/180}function Yb(){return Math.random()}function Zb(t,e){const i=Array(t).fill(null).map((()=>Array(e)));for(let o=0;o<t;o++)for(let t=0;t<e;t++)i[o][t]=Math.random();return i}function Xb(t,e){return t=Math.ceil(t),e=Math.floor(e),Math.floor(Math.random()*(e-t+1))+t}function Qb(t,e){return t.toFixed(e)}function Kb(t,e){return e=e||0,Math.floor(t*Math.pow(10,e))/Math.pow(10,e)}function Jb(t,e){return e=e||0,Math.ceil(t*Math.pow(10,e))/Math.pow(10,e)}function ty(t,e,i=1,o=1){const r=Array(t).fill(null).map((()=>Array(e)));let s=i;for(let i=0;i<t;i++)for(let t=0;t<e;t++)r[i][t]=s,s+=o;return r}function ey(t){return t<0?-1:t>0?1:0}function iy(t){return Math.sqrt(t)}function oy(t){return Math.sqrt(Math.PI*t)}function ry(...t){let e=0;return Lv(t,(t=>e+=null==t?0:1)),e}function sy(...t){let e=0;return Lv(t,(t=>e+=null==t?1:0)),e}function ny(t,e){let i=0;return Lv(t,(t=>i+=rv(e,t)?1:0)),i}function ay(...t){let e=0;const i=new Map;return Lv(t,(t=>{i.has(t)||(i.set(t,t),++e)})),e}function ly(...t){let e=0;return Lv(t,(t=>e+=isNaN(t)||null==t||""===t?0:t)),e}function cy(t,e,i){let o=0;if(i){const r=zv(i);Lv(t,((t,i,s)=>o+=rv(e,t)&&r[i]&&r[i][s]&&!isNaN(r[i][s])?r[i][s]:0))}else Lv(t,(t=>o+=rv(e,t)&&!isNaN(t)?t:0));return o}function hy(t,e){let i=0;return Lv(t,(t=>i+=rv(e,t)&&!isNaN(t)?t*t:0)),i}function dy(...t){let e=0;const i=t.shift();if(0===t.length)Lv(i,(t=>e+=isNaN(t)?0:t));else{const o=zv(t[0]);Lv(i,((t,i,r)=>e+=o[i]&&o[i][r]&&!isNaN(t)&&!isNaN(o[i][r])?t*o[i][r]:0))}return e}function uy(t,e){return t=null==t?"":t.toString(),e?e=>e==t:(t=t.toLowerCase(),e=>(e??"").toString().toLowerCase()==t)}function py(t,e,i=1){const o=new wv(Math.max((e||0)-1,0),Math.max((t||0)-1,0));return 1!=i&&2!=i||(o.r1Anchor=!0),1!=i&&3!=i||(o.c1Anchor=!0),o.A1}function gy(t,e,i,o=!1){let r,s;const n=uy(t,o);for(r=0;r<e.length;r++)for(s=0;s<e[r].length;s++)if(n(e[r][s]))return e[r][i-1];return null}function my(t,e,i,o=!1){let r,s;const n=uy(t,o);for(r=0;r<e.length;r++)for(s=0;s<e[r].length;s++)if(n(e[r][s]))return e[i-1][s];return null}function fy(t,e,i){let o,r;t:for(o=0;o<e.length;o++)for(r=0;r<e[o].length;r++)if(e[o][r]==t)break t;return i?i[o]?i[o][r]:null:e[o][e[o].length-1]}function vy(t,...e){let i=null,o=0;return Lv(e,(e=>{if(t==++o)return i=e,!1})),i}function by(t){return(t?wv.fromA1(t).c1:this.cell.c)+1}function yy(t){return(t?wv.fromA1(t).r1:this.cell.r)+1}function wy(t){return Array.isArray(t)?t[0]?.length:1}function xy(t){return Array.isArray(t)?t.length:1}function ky(){const t=Sv(this)[0];return t&&t.hasFormula?" "+Av(t.formula):""}function Cy(t,e,i){return e=e||1,i=i||1,Array.isArray(t)?t[e-1]?t[e-1][i-1]:null:1==e&&1==i?t:null}function My(t){const e=this.cell,i=e.model,o=i.getCellByA1(t);let r;return i.calculations.dependencies.cellDependencies.has(e.address)?r=i.calculations.dependencies.cellDependencies.get(e.address):(r=new Map,i.calculations.dependencies.cellDependencies.set(e.address,r)),r.set(o.address,[o.range]),i.calculations.dependencies.cellDependants.has(o.address)?r=i.calculations.dependencies.cellDependants.get(o.address):(r=new Map,i.calculations.dependencies.cellDependants.set(o.address,r)),r.set(e.address,[e.range]),o.value}function _y(t,e,i=0){let o,r;for(o=0;o<e.length;o++)for(r=0;r<e[o].length;r++){if(0==i&&e[o][r]==t)return Math.max(o+1,r+1);if(1==i&&e[o][r]>t)return Math.max(o+1,r+1);if(-1==i&&e[o][r]<t)return Math.max(o+1,r+1)}return null}function Sy(t,e,i,o,r){const s=Sv(this)[0],n=[];o=o||1,r=r||1;for(let t=0;t<o;t++){const o=[];for(let n=0;n<r;n++){const r=s.model.rows[s.r+t+e].cell(s.c+n+i);o.push(r?s.value:null)}n.push(o)}return n}function Ey(t,e){const i=[];if(t.length==e.length)for(let o=0;o<t.length;o++){let r=!0;for(let t=0;t<e[o].length;t++)if(!e[o][t]){r=!1;break}r&&i.push(t[o])}return i}const zy=[[3.1611237438705655,113.86415415105016,377.485237685302,3209.3775891384694,.18577770618460315],[.5641884969886701,8.883149794388377,66.11919063714163,298.6351381974001,881.952221241769,1712.0476126340707,2051.0783778260716,1230.3393547979972,2.1531153547440383e-8],[.30532663496123236,.36034489994980445,.12578172611122926,.016083785148742275,.0006587491615298378,.016315387137302097]],Ly=[[23.601290952344122,244.02463793444417,1282.6165260773723,2844.236833439171],[15.744926110709835,117.6939508913125,537.1811018620099,1621.3895745666903,3290.7992357334597,4362.619090143247,3439.3676741437216,1230.3393548037495],[2.568520192289822,1.8729528499234604,.5279051029514285,.06051834131244132,.0023352049762686918]];function Iy(t){const e=t*t;let i,o=zy[0][4]*e,r=e;for(i=0;i<3;i+=1)o=(o+zy[0][i])*e,r=(r+Ly[0][i])*e;return t*(o+zy[0][3])/(r+Ly[0][3])}function Ry(...t){let e=!0;return Lv(t,(t=>{if(!t)return e=!1})),e}function Ty(...t){let e=!1;return Lv(t,(t=>{if(t)return e=!0})),e}function Ay(...t){let e=null;return Lv(t,(t=>{e=null===e?!!t:!!t!=e})),e}function $y(...t){const e=t[0];for(let i=1;i<t.length;i+=2){if(i==t.length-1)return t[i];if(e==t[i])return t[i+1]}return null}function Oy(t,e,i){return t?e:i}function Dy(t){return!t}function Ny(){return!1}function Py(){return!0}function jy(t,e){return e=""===e?null:e,this.cell.hasError?(this.cell.error.handled=!0,e):t===1/0||t===-1/0||Number.isNaN(t)?e:t}var Hy=i(235),Fy=i.n(Hy),By=i(5949),Wy=i.n(By);function Vy(...t){let e=0,i=0;return Lv(t,(t=>{null==t||isNaN(t)||(e+=t||0,++i)})),e/i}function Uy(t,e){const i=Wy()(),o=zv(t),r=zv(e);for(let t=0;t<o.length;t++)for(let e=0;e<o[t].length;e++)i(o[t][e],(r[t]?r[t][e]:1)??1);return i()}function Gy(...t){const e=function(t){const e=[];return Lv(t,(t=>e.push(t))),e}(t),i=Fy()(e.length,e,1);return e.reduce(((t,e)=>t+Math.abs(e-i)),0)/e.length}function qy(...t){let e=1/0;return Lv(t,(t=>e=Math.min(e,t))),e}function Yy(...t){let e=-1/0;return Lv(t,(t=>e=Math.max(e,t))),e}function Zy(t,e){Object.keys(e).forEach((i=>t.set(nt(i,"_").replace(/_/g,".").toUpperCase(),e[i])))}const Xy=new Map;Zy(Xy,_),Zy(Xy,S),Zy(Xy,E),Zy(Xy,z),Zy(Xy,I),Zy(Xy,L),Zy(Xy,R);class Qy{constructor(t){this.model=t,this.getModel=t=>{const e=t?this.model.getConnectedModel(t):this.model;if(e)return e;throw new Error(`Sheet "${t}" not found`)},this.cl=(t,e)=>{const i=this.getModel(e);if(null==t)return this.currentCell.value;const o=i.getCellByA1(t);return o?o.value:(this.currentCell.error={message:`undefined cell ${t}`},null)},this.rn=(t,e)=>this.getModel(e).getValuesInRange(wv.fromA1(t)),this.nv=(t,e)=>this.getModel(e).getCellByName(t,this.currentCell.range).value,this.nr=(t,e)=>{const i=this.getModel(e).getValueMatrixByName(t);return 1===i.length&&1===i[0].length?i[0][0]:i},this.fn=t=>{const e=Xy.get(t);if(e)return e;throw new Error(`Function "${t}" not found`)},this.op=(t,e,i)=>hv(t,e,i)}}function Ky(t,e){const i=Array(e).fill(null);let o=0,r=[];if(t.length>1){r=t.map((t=>parseFloat(t.value)||0)),o=r[1]-r[0];for(let t=2;t<r.length;t++)if(r[t]-r[t-1]!==o){o=0;break}}if(0==o)for(let o=0;o<e;o++)i[o]=t[o%t.length]?.value;else{let t=r[r.length-1];for(let r=0;r<e;r++)t=i[r]=t+o}return i}function Jy(t,e,i){const o=new Pv(t.formula,t.model.calculations.tokenizer),r=[];for(let t=0;t<i;t++)r.push(Av(o.shift({index:0,offset:1,direction:e,allSheets:!0}).createFormulaString()));return r}function tw(t,e,i,o){const r=t.getCellMatrix(e);let s;"right"==o?s=Zr(r):"down"==o?s=Yr(r):"left"==o?s=Gr(r):"up"==o&&(s=Gr(Yr(r)));const n=new Array(i.size.rows);for(let t=0;t<i.size.rows;t++){n[t]=new Array(i.size.columns);for(let e=0;e<i.size.columns;e++){const i=r.length>t?r[t][r[t].length>e?e:0]:r[0][e];n[t][e]=i.hasDisplayValue?i.displayValue:null}}const a=i.size["down"==o||"up"==o?"rows":"columns"];let l=s.map((t=>t[t.length-1].hasFormula?Jy(t[t.length-1],o,a):Ky(t,a)));return"down"==o?l=Yr(l):"left"==o?l=Gr(l):"up"==o&&(l=qr(Yr(l))),t.spillValues({cell:t.getCellByRange(i.bounds[0][0]),values:l,propertyCell:t.getCellByRange(e.bounds[0][0]),displayValues:n})}function ew(t){return t.pattern&&"string"==typeof t.pattern&&(t.pattern=new RegExp(t.pattern)),t}function iw(t,e){const i=t.validation;if(!i)return!0;if(i.allowInvalid)return!0;let o=!0;return i.pattern&&(i.pattern.test((e??"").toString())||(o=!1)),i.validate&&(i.validate(t,e)||(o=!1)),o}class ow{get address(){return null}get renderer(){return this._renderer}set renderer(t){this._renderer=t}get afterRenderer(){return this._afterRenderer}set afterRenderer(t){this._afterRenderer=t}get commentRenderer(){return this._commentRenderer}set commentRenderer(t){this._commentRenderer=t}get type(){return this._type}set type(t){this._type=t}get name(){return this._name}set name(t){this._name=t}get style(){return this._style}set style(t){this._style=t}get commentable(){return this._commentable}set commentable(t){this._commentable=t}get clickable(){return this._clickable}set clickable(t){this._clickable=t}get editable(){return this._editable}set editable(t){this._editable=t}get validation(){return this._validation}set validation(t){this._validation=t}get hasFormula(){return!!this._formula}get formula(){return this._formula}set formula(t){this._formula=t?t.replace(/^=/,""):null}get value2(){return this.hasFormula?Av(this.formula):null}get editorContent(){return this._editorContent}set editorContent(t){this._editorContent=t}get adapter(){return this._adapter}set adapter(t){this._adapter=t}get properties(){return this._properties}set properties(t){this._properties=t}getProperty(t){return this._properties?.[t]}setProperty(t,e){this._properties||(this._properties={}),this._properties[t]=e}get format(){return this._format}set format(t){this._format=t,this._valueFormatter=null}get valueFormatter(){return this._valueFormatter}constructor(t,e){this.model=t,this._type=null,this._clickable=!1,e&&this.populate(e)}populate(t){this._renderer=t.renderer,this._afterRenderer=t.afterRenderer,this._commentRenderer=t.commentRenderer,this._name=t.name,this._type=t.t,this._editorContent=t.content,this._adapter=t.adapter,this._format=t.z,this._formula=t.f,this._editable=t.e,this._commentable=t.commentable,this._clickable=t.clickable,this._validation=t.validation?ew(t.validation):null,this._properties=t.props,this._style=null==t.s?null:this.model.styles.add(t.s)?.id}update(t){const e={};if("renderer"in t&&(e.renderer=this._renderer,this._renderer=t.renderer),"afterRenderer"in t&&(this._afterRenderer=t.afterRenderer),"commentRenderer"in t&&(this._commentRenderer=t.commentRenderer),"name"in t&&(e.name=this._name,this._name=t.name),"t"in t&&(e.t=this._type,this._type=t.t),"content"in t&&(e.content=this._editorContent,this._editorContent=t.content),"adapter"in t&&(e.adapter=this._adapter,this._adapter=t.adapter),"z"in t&&(e.z=this._format,this._format=t.z),"f"in t&&(e.f=this._formula,this._formula=t.f),"e"in t&&(e.e=this._editable,this._editable=t.e),"commentable"in t&&(e.commentable=this._commentable,this._commentable=t.commentable),"clickable"in t&&(e.clickable=this._clickable,this._clickable=t.clickable),"validation"in t&&(e.validation=this._validation,this._validation=ew(t.validation)),"props"in t&&(e.props=this._properties,this._properties=t.props),"s"in t){const i=this.model.styles.add(t.s).id;this._style!==i&&(e.s=this._style,this._style=i)}return e}getSourceData(){const t={};return null!=this._type&&(t.t=this._type),null!=this._format&&(t.z=this._format),null!=this._formula&&(t.f=this._formula),null!=this._editable&&(t.e=this._editable),null!=this._commentable&&(t.commentable=this._commentable),null!=this._clickable&&(t.clickable=this._clickable),this._properties&&(t.props=rt(this._properties)),null!=this._editorContent&&(t.content=Z(this._editorContent)?rt(this._editorContent):this._editorContent),null!=this._style&&(t.s=this._style),null!=this._name&&(t.name=this._name),t}setStyleProperties(t,e=!1){this.style=e?this.model.styles.set(this.style,t).id:this.model.styles.duplicate(this.style,t).id}removeStyleProperties(t){null!==this.style&&this.model.styles.unset(this.style,t)}get composedStyle(){return this.model.styles.get(this.style)}}function rw(t){const e={};return t.split(";").forEach((t=>{const[i,o]=t.split(":");e[i]=o.trim()})),e}const sw=new Map([["thin",{width:1.5,style:"solid"}],["medium",{width:2,style:"solid"}],["thick",{width:3,style:"solid"}],["double",{width:3,style:"double"}],["dotted",{width:1.5,style:"dotted"}],["hair",{width:1,style:"solid"}],["dashed",{width:1.5,style:"dashed"}],["mediumDashed",{width:2,style:"dashed"}],["dashDot",{width:1.5,style:"dashed"}],["mediumDashDot",{width:2,style:"dashed"}],["dashDotDot",{width:1.5,style:"dotted"}],["mediumDashDotDot",{width:2,style:"dotted"}],["slantDashDot",{width:1.5,style:"dashed"}],["none",{width:1.5,style:"solid"}]]),nw=(()=>{const t=new Map;return sw.forEach(((e,i)=>{let o=t.get(e.style);o||(o=t.set(e.style,new Map).get(e.style)),o.set(e.width,i)})),t})();function aw(t){return"middle"==t?"center":t}function lw(t){return 3==(t="#"==t.charAt(0)?t.substring(1):t).length?t[0]+t[0]+t[1]+t[1]+t[2]+t[2]:t}const cw=t=>{if("none"==t)return null;const e=t.split(" "),i=parseInt(e[0].charAt(0))||1,o=e.length>1?e[1]:"solid",r=nw.get(o);return{style:(r?r.get(i):null)??"thin",color:e.length>2?lw(e[2]):"CCCCCC"}},hw=t=>{const e=sw.get(t.style||"none");return e?[Dt(e.width),e.style,"none"==t.style?"var(--og-cell-background)":t.color?`#${t.color}`:"var(--og-border-color)"].join(" "):"none"},dw=(t,e)=>{const i="#"+(e.fgColor||"000000"),o="#"+(e.bgColor||"FFFFFF");switch(e.patternType){case"solid":t.backgroundColor=i||o;break;case"darkGray":t.backgroundColor=Nr(o,.75);break;case"mediumGray":t.backgroundColor=Nr(o,.5);break;case"lightGray":t.backgroundColor=Nr(o,.25);break;case"gray125":t.backgroundColor=Nr(o,.125);break;case"gray0625":t.backgroundColor=Nr(o,.0625);break;case"darkHorizontal":t.backgroundImage=`linear-gradient(0deg, ${i} 33.33%, ${o} 33.33%, ${o} 50%, ${i} 50%, ${i} 83.33%, ${o} 83.33%, ${o} 100%)`,t.backgroundSize="6px 6px";break;case"darkVertical":t.backgroundImage=`linear-gradient(90deg, ${i} 33.33%, ${o} 33.33%, ${o} 50%, ${i} 50%, ${i} 83.33%, ${o} 83.33%, ${o} 100%)`,t.backgroundSize="6px 6px";break;case"darkDown":t.backgroundImage=`linear-gradient(45deg, ${i} 33.33%, ${o} 33.33%, ${o} 50%, ${i} 50%, ${i} 83.33%, ${o} 83.33%, ${o} 100%)`,t.backgroundSize="6px 6px";break;case"darkUp":t.backgroundImage=`linear-gradient(-45deg, ${i} 33.33%, ${o} 33.33%, ${o} 50%, ${i} 50%, ${i} 83.33%, ${o} 83.33%, ${o} 100%)`,t.backgroundSize="6px 6px";break;case"lightHorizontal":t.backgroundImage=`linear-gradient(0deg, ${o} 25%, ${i} 25%, ${i} 50%, ${o} 50%, ${o} 75%, ${i} 75%, ${i} 100%)`,t.backgroundSize="4px 4px";break;case"lightVertical":t.backgroundImage=`linear-gradient(90deg, ${o} 25%, ${i} 25%, ${i} 50%, ${o} 50%, ${o} 75%, ${i} 75%, ${i} 100%)`,t.backgroundSize="4px 4px";break;case"lightDown":t.backgroundImage=`linear-gradient(45deg, ${o} 25%, ${i} 25%, ${i} 50%, ${o} 50%, ${o} 75%, ${i} 75%, ${i} 100%)`,t.backgroundSize="4px 4px";break;case"lightUp":t.backgroundImage=`linear-gradient(-45deg, ${o} 25%, ${i} 25%, ${i} 50%, ${o} 50%, ${o} 75%, ${i} 75%, ${i} 100%)`,t.backgroundSize="4px 4px";break;case"darkGrid":t.backgroundImage=`linear-gradient(${o} 0.5px, transparent 0.5px), linear-gradient(90deg, ${o} 0.5px, transparent 0.5px)`,t.backgroundSize="2px 2px";break;case"lightGrid":t.backgroundImage=`linear-gradient(${o} 0.5px, transparent 0.5px), linear-gradient(90deg, ${o} 0.5px, transparent 0.5px)`,t.backgroundSize="1px 1px";break;case"darkTrellis":t.backgroundImage=`linear-gradient(45deg, ${o} 0.5px, transparent 0.5px), linear-gradient(90deg, ${o} 0.5px, transparent 0.5px)`,t.backgroundSize="2px 2px";break;case"lightTrellis":t.backgroundImage=`linear-gradient(45deg, ${o} 0.5px, transparent 0.5px), linear-gradient(90deg, ${o} 0.5px, transparent 0.5px)`,t.backgroundSize="1px 1px"}return t},uw=(t,e)=>(t.backgroundImage=`linear-gradient(${(e.angle??0)+90}deg,${e.stops.map((t=>`#${t.rgb} ${100*t.v}%`)).join(",")})`,t),pw=t=>{const e=t.cssStyle?{...t.cssStyle}:{};return null!=t.bold&&(e.fontWeight=t.bold?"bold":"normal"),t.italic&&(e.fontStyle="italic"),t.underline?e.textDecoration="underline":t.strike&&(e.textDecoration="line-through"),t.sz&&(e.fontSize=Ot(t.sz)),t.color&&(e.color="#"+t.color),t.top&&(e.borderTop=hw(t.top)),t.right&&(e.borderRight=hw(t.right)),t.bottom&&(e.borderBottom=hw(t.bottom)),t.left&&(e.borderLeft=hw(t.left)),(t.top||t.right||t.bottom||t.left)&&(e.zIndex="1"),t.alignment&&t.alignment.vertical&&(e.display="flex",e.justifyContent=t.alignment.horizontal,e.alignItems="top"==t.alignment.vertical?"start":"bottom"==t.alignment.vertical?"end":"center"),t.alignment&&t.alignment.horizontal&&(e.textAlign=t.alignment.horizontal),t.alignment&&t.alignment.wrapText&&(e.display="flex",e.justifyContent=e.justifyContent??e.textAlign??"left",e.alignItems=e.alignItems??"center",e.whiteSpace="pre-wrap"),t.patternType?dw(e,t):t.stops&&t.stops.length?uw(e,t):t.fgColor?e.backgroundColor="#"+t.fgColor:t.bgColor&&(e.backgroundColor="#"+t.bgColor),e},gw=t=>{const e=Z(t)?t:rw(t),i={};let o;for(const t in e){const r=e[t];if(null!=r)switch(t){case"borderTop":case"border-top":i.top=cw(r);break;case"borderTopColor":case"border-top-color":i.top?i.top.color=lw(r):i.top={style:"thin",color:lw(r)};break;case"borderRight":case"border-right":i.right=cw(r);break;case"borderRightColor":case"border-right-color":i.right?i.right.color=lw(r):i.right={style:"thin",color:lw(r)};break;case"borderBottom":case"border-bottom":i.bottom=cw(r);break;case"borderBottomColor":case"border-bottom-color":i.bottom?i.bottom.color=lw(r):i.bottom={style:"thin",color:lw(r)};break;case"borderLeft":case"border-left":i.left=cw(r);break;case"borderLeftColor":case"border-left-color":i.left?i.left.color=lw(r):i.left={style:"thin",color:lw(r)};break;case"border":o=cw(r),i.top=i.top||o,i.right=i.right||o,i.bottom=i.bottom||o,i.left=i.left||o;break;case"textAlign":case"text-align":i.alignment=i.alignment||{},i.alignment.horizontal=r;break;case"verticalAlign":case"vertical-align":i.alignment=i.alignment||{},i.alignment.vertical=aw(r);break;case"whiteSpace":case"white-space":i.alignment=i.alignment||{},i.alignment.wrapText=r&&"nowrap"!=r;break;case"color":i.color=lw(r);break;case"background":case"backgroundColor":case"background-color":i.fgColor=lw(r);break;case"fontSize":case"font-size":i.sz=parseFloat(r);break;case"fontWeight":case"font-weight":i.bold="bold"==r;break;case"fontStyle":case"font-style":i.italic="italic"==r;break;default:i[t]=r}}return i},mw={n:t=>{const e=Q(t)?parseFloat(t.replace(",",".")):t;return Number.isNaN(e)?t:e},t:t=>t,d:(t,e)=>{if(null==t||""===t)return null;if(Q(t))try{return K(t)?J(t):sr(Xo(t,e.model.options.formatLocale))}catch(i){return e.model.logger.error(`Invalid date value in cell ${e.address}: ${t}`),null}return t instanceof Date?sr(t):t},tm:t=>Q(t)?new Date(t):t,dt:t=>Q(t)?new Date(t):t,b:t=>!!t&&"0"!==t&&"false"!==t.toString().toLowerCase(),s:t=>t,m:t=>t,g:t=>{if(null==t||""===t)return null;const e=parseFloat(t.toString().replace(",","."));return isNaN(e)?t:e},a:t=>Q(t)&&""!==t?JSON.parse(t):t,h:t=>t},fw=new Map;class vw extends ow{get tooltip(){return this._tooltip}set tooltip(t){this._tooltip=t}get hasTooltip(){return null!=this._tooltip}get merge(){return this.model.merges.mergedCells.get(this.address)}get row(){return this._row}set row(t){this._row=t}get r(){return this._row.index}get column(){return this._column}set column(t){this._column=t}get c(){return this._column.index}get hasValue(){return null!=this._value}get value(){return this._evaluated||this.evaluate(),this._value}set value(t){if(t&&Tv(t.toString()))this._value=void 0,this.formula=t;else{let e=mw[this.type](t,this);iw(this,e)||(e=void 0),e!==this._value&&(this._value=e,this._displayValue=void 0),this.row.data&&this.column.data&&(this.row.data[this.column.data]=this._value)}}evaluate(){return this._value=mw[this.type](this.model.calculations.evaluate(this),this),this._evaluated=!0,this._value}get value2(){return this.hasFormula?Av(this.formula):this.value}get hasDisplayValue(){return null!=this._displayValue}get displayValue(){return this._displayValue}set displayValue(t){this._displayValue=t}get prefersDisplayValue(){return["s","m"].includes(this.type)}get error(){return this._error}set error(t){this._error=t}get hasError(){return!!this._error}clearError(){this._error=void 0}get spillRange(){return this._spillRange}get prevSpillRange(){return this._prevSpillRange}set spillRange(t){!this._spillRange||t&&this._spillRange.equals(t)||(this._prevSpillRange=this._spillRange),this._spillRange=t}get isSpillSource(){return null!=this._spillRange}get spillSource(){return this._spillSource}get isSpilled(){return null!=this._spillSource}spillValue(t,e){this.value=t,this._spillSource=e}clearSpilledValue(){this._spillSource=void 0,this._value=void 0}get hasSparkline(){return null===this._sparkline?this._sparkline=this.model.sparklines.has(this.address):this._sparkline}get hasComment(){return null===this._hasComment?this._hasComment=(this.model.comments.get(this.address)??[]).length>0:this._hasComment}get comments(){return this.model.comments.get(this.address)}get valueFormatter(){const t=super.valueFormatter??this.row.valueFormatter??this.column.valueFormatter;if(t)return t;const e=this.type,i=this.format,{formatLocale:o,fixNumberFormat:r}=this.model.options,s=this.value;if(null==s||""===s)return null;if("n"==e)return null!=i?gr(o,i,r):this.model.options.numberFormatter;if("g"==e){if(null!=i)return gr(o,i,r);if(tt(s))return this.model.options.numberFormatter}else{if("t"==e)return null==i?null:gr(o,i,!1);if("d"==e)return i?Qo(o,i):this.model.options.dateFormatter;if("s"==e&&this.editorContent)return(t=>{if(t=t||null,!fw.has(t))if(t){const e=t.reduce(((t,e)=>t.set(e.k,e.v)),new Map);fw.set(t,(t=>e.has(t)?e.get(t):t))}else fw.set(t,(t=>t));return fw.get(t)})(this.editorContent)}return null}get formattedValue(){return null==this.value?"":this.hasDisplayValue?this.displayValue:this.valueFormatter?this.valueFormatter(this.value):this.value.toString()}get elm1(){return this.row.priority>=this.column.priority?this.row:this.column}get elm2(){return this.row.priority<this.column.priority?this.row:this.column}get clickable(){return super.clickable??this.elm1.clickable??this.elm2.clickable}get type(){return super.type??this.elm1.type??this.elm2.type??"g"}set type(t){this._type=t}get editorContent(){return super.editorContent??this.elm1.editorContent??this.elm2.editorContent??null}get adapter(){return super.adapter??this.elm1.adapter??this.elm2.adapter}set adapter(t){this._adapter=t}get address(){return this.column.address+this.row.address}get range(){return wv.fromA1(this.address)}get validation(){return super.validation??this.elm1.validation??this.elm2.validation??this.model.options.cellValidation}get editable(){return super.editable??this.elm1.editable??this.elm2.editable??this.model.options.editable}set editable(t){this._editable=t}get commentable(){return super.commentable??this.elm1.commentable??this.elm2.commentable??this.model.options.commentable}get renderer(){return super.renderer??this.elm1.renderer??this.elm2.renderer}get afterRenderer(){return super.afterRenderer??this.elm1.afterRenderer??this.elm2.afterRenderer??this.model.options.afterRenderer}get commentRenderer(){return super.commentRenderer??this.elm1.commentRenderer??this.elm2.commentRenderer??this.model.options.comments.renderer}get format(){return super.format??this.elm1.format??this.elm2.format}set format(t){super.format=t}get hyperlink(){return this._hyperlink}set hyperlink(t){this._hyperlink=t}get hasOwnFormula(){return!!this._formula}get hasFormula(){return null==this._hasFormula&&(this._hasFormula=!!this.formula),this._hasFormula}get formula(){return this._formula??this.elm1.formula??this.elm2.formula}set formula(t){super.formula=t,this.refreshFormula()}invalidateValue(){this.hasFormula?(this._value=void 0,this._evaluated=!1):this._evaluated=!0,this.clearError()}refreshFormula(){this.invalidateValue(),this._hasFormula=null}clearFormula(){this._formula=null,this._hasFormula=!1,this._evaluated=!0}constructor(t,e){super(t),this._evaluated=!0,this._sparkline=null,this._hasComment=null,this._hasStyle=null,this.row=t.rows[e.r],this.column=t.columns[e.c],this.populate(e)}populate(t){super.populate(t),this._tooltip=t.tooltip,this._hyperlink=t.hl,null!=t.f&&""!==t.f?this._evaluated=!1:null!=t.v&&(this.value=t.v),this._displayValue=t.dv}update(t){const e=super.update(t);return"tooltip"in t&&(e.tooltip=this._tooltip,this._tooltip=t.tooltip),"hl"in t&&(e.hl=this._hyperlink,this._hyperlink=t.hl),"f"in t?this._evaluated=!1:"v"in t&&(e.v=this.value,this.value=t.v),"dv"in t&&(e.dv=this._displayValue,this._displayValue=t.dv),e}getSourceData(t){const e=super.getSourceData();return this.merge&&(e.cs=this.merge.cs,e.rs=this.merge.rs),null!=this.value&&(e.v=this.value),this.hasTooltip&&(e.tooltip=this._tooltip),this._hyperlink&&(e.hl=this._hyperlink),t&&t.displayValue&&this.hasDisplayValue&&(e.dv=this._displayValue),e}createComposedStyle(t,e,i){const o=[];return t=t||this.column.style,e=e||this.row.style,null!=t&&null!=e?this.column.priority>this.row.priority?o.push(e,t):o.push(t,e):null!=t?o.push(t):null!=e&&o.push(e),null!=this.style&&o.push(this.style),null!=i&&o.push(i),o.length>0?this.model.styles.merge(...o):null}get composedStyle(){if(null===this._hasStyle){const t=this.createComposedStyle(null,null,this.model.conditionalFormats.evaluate(this));this._hasStyle=null!=t,this._composedStyle=t}return this._composedStyle}get calculatedIndent(){const t=this.composedStyle;return t?.alignment?.indent?t.alignment.indent:this.column.levelIndent&&this.row.level>0?this.row.level*this.model.options.levelIndentFactor:null}get cssStyle(){if(!1===this._hasStyle)return null;if(!this._cssStyle){const t=this.composedStyle;t&&(this._cssStyle=pw(t))}return this._cssStyle}invalidateStyle(){this._hasComment=null,this._hasStyle=null,this._composedStyle=null,this._cssStyle=null,this._sparkline=null}setStyleProperties(t){super.setStyleProperties(t),this.invalidateStyle()}removeStyleProperties(t){super.removeStyleProperties(t),this.invalidateStyle()}previewStyleProperties(t,e="cell"){const i=Object.assign({},this.createComposedStyle("column"==e?t:null,"row"==e?t:null)??{});if("cell"==e)for(const e in t)i[e]=t[e];this._hasStyle=!0,this._cssStyle=pw(i)}validate(){return!this.validation||iw(this,this.value)}toString(){return this.address}}const bw={property:"value",enabled:!0};class yw extends(Tr(ow)){get comparer(){return this._comparer}set comparer(t){this._comparer=t}get filter(){return this._filter??(this.model.options.filters?.enabled?bw:{enabled:!1})}set filter(t){this._filter=t}get hasFilter(){return this.filter.enabled}get sorting(){return this._sorting??this.model.options.columnSorting}set sorting(t){this._sorting=t}get width(){return this._width??this.model.options.columnWidth}set width(t){this._width=t}get levelIndent(){return this._levelIndent}set levelIndent(t){this._levelIndent=t}get levelButtons(){return this._levelButtons}set levelButtons(t){this._levelButtons=t}get priority(){return this._priority}set priority(t){this._priority=t}get address(){return Cv(this.index)}get range(){return new wv(this.index,null,this.index,null)}get hasFormula(){return!!this._formula}get formula(){return this._formula}set formula(t){super.formula=t;const e=this.index;this.model.rows.forEach((t=>t.cells[e]?.refreshFormula()))}constructor(t,e){super(t,e),null==this._priority&&(this._priority=t.options.columnPriority)}get mergedHeaders(){return this._mergedHeaders??(this._mergedHeaders=this._header?.filter((t=>t.cs>1||t.rs>1))??[])}updateMergedHeaders(){this._mergedHeaders=null}set header(t){this._mergedHeaders=null,this._header=t}get header(){if(!this._header||this._header.length<this.model.headerCount){this._header=this._header??[];for(let t=this._header.length;t<this.model.headerCount;t++)this._header.push({r:t})}return this._header}hasHeaderTooltip(t){const e=this.header?.[t];return e&&null!=e.tooltip}convertSourceHeader(t){return Array.isArray(t)?t.map(((t,e)=>{if(null==(t=t??{r:e}).height&&(t.height=t.h),t.r=e,null==t.style&&(t.style=t.s),t._style=null==t.style?null:this.model.styles.add(t.style).id,null!=this.model.options.headers?.style){const e=this.model.styles.add(this.model.options.headers.style).id;t._style=this.model.styles.merge(t._style,e).id}return t})):Q(t)?[{label:t,r:0}]:null}populate(t){super.populate(t),this._width=null==t.w||"auto"==t.w?null:t.w,this._levelIndent=t.levelIndent,this._levelButtons=t.levelButtons,this._header=this.convertSourceHeader(t.header),this._sorting=t.sorting,this._filter=Z(t.filter)?Object.assign({enabled:!0},t.filter):t.filter?bw:!1===t.filter?{enabled:!1}:null,this._comparer=t.comparer,this.data=t.data,this._mergedHeaders=null,null!=t.priority&&(this._priority=t.priority)}getSourceData(){const t=super.getSourceData();return null!=this._width&&(t.w=this._width),null!=this._levelIndent&&(t.levelIndent=this._levelIndent),null!=this._levelButtons&&(t.levelButtons=this._levelButtons),null!=this._header&&(t.header=this._header),null!=this._sorting&&(t.sorting=this._sorting),null!=this._filter&&(t.filter=this._filter),null!=this.data&&(t.data=this.data),t}expand(t){super.expand(t),this.model.indexVisibleColumns()}collapse(){super.collapse(),this.model.indexVisibleColumns()}get prev(){return this.model.columns[this.index-1]}get next(){return this.model.columns[this.index+1]}get prevVisible(){const t=this.model.visibleColumnIndex[this.index];return null==t||0===t?null:this.model.visibleColumns[t-1]}get nextVisible(){const t=this.model.visibleColumnIndex[this.index];return null==t?null:this.model.visibleColumns[t+1]}calculateRealColspan(t){let e=1,i=this.nextVisible;for(;i&&i.index-this.index<t&&e<t;)++e,i=i.nextVisible;return e}cell(t){return this.model.rows[t].cell(this.index)}clearCalculatedValues(){this.model.rows.forEach((t=>{const e=t.cells[this.index];e&&this.model.calculations.refreshFormula(e)}))}}var ww;!function(t){t[t.Asc=1]="Asc",t[t.Desc=-1]="Desc"}(ww||(ww={}));const xw={g:(t,e)=>t.value==e.value?0:t.value>e.value?1:-1,t:(t,e)=>(t.value||"").toString().localeCompare((e.value||"").toString()),s:(t,e)=>t.value==e.value?0:t.value>e.value?1:-1,m:(t,e)=>t.value==e.value?0:t.value>e.value?1:-1,n:(t,e)=>t.value-e.value,d:(t,e)=>(t.value instanceof Date?t.value.getTime():0)-(e.value instanceof Date?e.value.getTime():0),tm:(t,e)=>(t.value instanceof Date?t.value.getTime():0)-(e.value instanceof Date?e.value.getTime():0),dt:(t,e)=>(t.value instanceof Date?t.value.getTime():0)-(e.value instanceof Date?e.value.getTime():0),b:(t,e)=>t.value-e.value,h:(t,e)=>(t.value||"").localeCompare(e.value),a:()=>0},kw={g:(t,e)=>e.value==t.value?0:e.value>t.value?1:-1,t:(t,e)=>(e.value||"").toString().localeCompare((t.value||"").toString()),s:(t,e)=>e.value==t.value?0:e.value>t.value?1:-1,m:(t,e)=>e.value==t.value?0:e.value>t.value?1:-1,n:(t,e)=>e.value-t.value,d:(t,e)=>(e.value instanceof Date?e.value.getTime():0)-(t.value instanceof Date?t.value.getTime():0),tm:(t,e)=>(e.value instanceof Date?e.value.getTime():0)-(t.value instanceof Date?t.value.getTime():0),dt:(t,e)=>(e.value instanceof Date?e.value.getTime():0)-(t.value instanceof Date?t.value.getTime():0),b:(t,e)=>e.value-t.value,h:(t,e)=>(e.value||"").localeCompare(t.value),a:()=>0},Cw=(t,e)=>t.origIndex-e.origIndex;class Mw{get settings(){return this._settings}set settings(t){this._settings=t||[],this.colMap.clear(),this.settings.length>0&&(this.settings.forEach(((t,e)=>this.colMap.set(t.c,e))),this.applySort(),Lr().info(`sorting applied: ${JSON.stringify(this.settings)}`))}constructor(t,e=null){this.model=t,this.colMap=new Map,this._settings=[],this.settings=e}get(t){return this.colMap.has(t)?this.settings[this.colMap.get(t)]:null}sort(t,e=null,i=!1){let o=this.get(t);return o&&o.ord==ww.Desc&&null===e?(this.settings.splice(this.colMap.get(t),1),o=null):o?(o.ord=ww.Desc,this.settings.splice(this.colMap.get(t),1)):o={c:t,ord:ww.Asc},o&&(null!==e&&(o.ord=e),this.colMap.set(t,0),this.settings.unshift(o)),this.settings.length>this.model.options.maxSortingColumns&&this.settings.pop(),this.colMap.clear(),this.settings.forEach(((t,e)=>{t.index=e,this.colMap.set(t.c,e)})),i||(this.settings.length>0?this.applySort():this.resetSort()),o}applySort(){const t=this.model,e=this.settings.map((e=>{const i=t.columns[e.c];return i?i.comparer?e.ord==ww.Asc?i.comparer:(t,e)=>-i.comparer(t,e):e.ord==ww.Asc?xw[i.type??"t"]:kw[i.type??"t"]:(Lr().warn(`Column sorting: Column with index ${e.c} not found`),null)})).filter((t=>t)),i=e.length;let o,r,s;t.rowRoot.sort(((t,n)=>{if(!1===t.sortable||!1===n.sortable)return t.origIndex-n.origIndex;for(r=0;r<i;r++)if(s=this.settings[r].c,o=e[r](t.cell(s),n.cell(s)),0!=o)return o;return 0})),t.indexRowsByTree()}resetSort(){this.settings=[],this.colMap.clear(),this.model.rowRoot.sort(Cw),this.model.indexRowsByTree()}persistSort(){this.model.rows.forEach(((t,e)=>t.origIndex=e))}}class _w{get properties(){return this._properties}set properties(t){this._properties=t}constructor(t){t&&this.pupulate(t)}pupulate(t){this.author=t.author,this.text=t.text,this.date=t.date?new Date(t.date):null,this.data=t.data,this.readOnly=!!t.readOnly,this._properties=t.props}getSourceData(){const t={};return this._properties&&(t.props=this._properties),this.author&&(t.author=this.author),this.text&&(t.text=this.text),this.data&&(t.data=this.data),null!==this.readOnly&&(t.readOnly=this.readOnly),this.date&&(t.date=Qo("en-US")(this.date,"yyyy-MM-dd HH:mm:ss")),t}}class Sw{constructor(t,e){this.model=t,this._commentMap=new Map,this.has=t=>this._commentMap.has(t),this.delete=t=>this._commentMap.delete(t),this.cleanCell=t=>{this.has(t)&&this._commentMap.set(t,this.get(t).filter((t=>(t.text??"").length>0||null!=t.data)))},this.get=t=>(this.has(t)||this._commentMap.set(t,[]),this._commentMap.get(t)),this.set=(t,e)=>{this._commentMap.set(t,e?.map((t=>t instanceof _w?t:new _w(t)))||[]),this.cleanCell(t)},e&&this.populate(e)}populate(t){t.forEach((t=>{const e=t.a1||new wv(t.c,t.r).A1;this._commentMap.has(e)||this._commentMap.set(e,[]),this._commentMap.get(e).push(new _w(t))})),this._commentMap.forEach((t=>{t.sort(((t,e)=>(e.date?e.date.getTime():0)-(t.date?t.date.getTime():0)))}))}shift(t){Array.from(this._commentMap.keys()).forEach((e=>{const i=wv.fromA1(e);i.shift(t),i.A1!=e&&(this._commentMap.set(i.A1,this._commentMap.get(e)),this._commentMap.delete(e))}))}}function Ew(t,e,i){t.forEach((t=>t.forEach((t=>{t[1]==e&&(t[1]=i)}))))}class zw{get cellDependencies(){return this._cellDependencies}get cellDependants(){return this._cellDependants}get rangeDependencies(){return this._rangeDependencies}get rangeDependants(){return this._rangeDependants}get sheetDependencies(){return this._sheetDependencies}get sheetDependants(){return this._sheetDependants}constructor(t,e="calculations"){this.model=t,this.modelPart=e,this._cellDependencies=new Map,this._cellDependants=new Map,this._rangeDependencies=new Map,this._rangeDependants=new Map,this._sheetDependencies=new Map,this._sheetDependants=new Map}clear(){this._cellDependants.clear(),this._cellDependencies.clear(),this._rangeDependencies.clear(),this._rangeDependants.clear()}clearCellDependecies(t){return this._cellDependencies.has(t)&&this._cellDependencies.delete(t),this._rangeDependencies.has(t)&&this._rangeDependants.delete(t),this}has(t){return this._cellDependencies.has(t)||this._rangeDependencies.has(t)}add(t,e,i){const o=wv.fromA1(t).removeAnchors(),r=wv.fromA1(e).removeAnchors();e=r.A1;const s=r.isRange,n=s?this._rangeDependencies:this._cellDependencies;let a=null;if((n.has(t)?n.get(t):n.set(t,new Map).get(t)).set(e,[r,i]),i){const t=this.model.getConnectedModel(i);t&&(t.calculations.dependencies.sheetDependants.set(this.model.name,this.model.name),this.sheetDependencies.set(i,i),a=s?t.calculations.dependencies.rangeDependants:t.calculations.dependencies.cellDependants),i=this.model.name}else a=s?this._rangeDependants:this._cellDependants;a&&(a.has(e)||a.set(e,new Map),a.get(e).set(t,[o,i]))}getDependants(t,e=null){let i,o;const r=t.A1;return e=e??new Map,this._cellDependants.has(r)&&this._cellDependants.get(r).forEach((([t,s])=>{e.has(t)||(s&&(o=this.model.getConnectedModel(s)),i=o||this.model,e.set(t,[i.getCellByRange(t),s]),o?o[this.modelPart].dependencies.getDependants(t).forEach(((t,i)=>{e.set(i,[t[0],t[1]??s])})):(t.A1!=r||o)&&i.calculations.dependencies.getDependants(t,e))})),this._rangeDependants.forEach(((i,o)=>{wv.fromA1(o).contains(t)&&i.forEach((([t,i])=>{e.has(t)||(e.delete(t),this.getDependants(t,e.set(t,[(i?this.model.getConnectedModel(i):this.model).getCellByRange(t),i])))}))})),e}renameSheet(t,e){this._sheetDependants.has(t)&&(this._sheetDependants.delete(t),this._sheetDependants.set(e,e)),this._sheetDependencies.has(t)&&(this._sheetDependencies.delete(t),this._sheetDependencies.set(e,e)),Ew(this._cellDependants,t,e),Ew(this._cellDependencies,t,e),Ew(this._rangeDependants,t,e),Ew(this._rangeDependencies,t,e)}}class Lw{get dependencies(){return this._dependencies}constructor(t,e){this.model=t,this._dependencies=new zw(t,e)}}function Iw(t){return t instanceof RangeError?"Maximum call stack size exceeded"==t.message?"infinite loop":t.message:t.toString()}class Rw extends Lw{get tokenizer(){return this._tokenizer}get formulas(){return this._formulas}constructor(t){super(t,"calculations"),this._tokenizer=new vv,this._formulas=new Map,this.context=new Qy(t)}createFormula(t){const e=new Pv(t.formula,this.tokenizer);return this._formulas.set(t.address,e),t.hasOwnFormula&&(t.formula=e.createFormulaString()),this.createDependecies(t),e}createDependecies(t){const e=t.address;if(this.formulas.has(e)){const i=this.formulas.get(e);i.ranges.forEach((([t,i,o])=>this._dependencies.add(e,i.A1,o))),i.cells.forEach((([t,i,o])=>this._dependencies.add(e,i.A1,o))),i.variables.forEach((([i,o])=>{const r=this.model.getCellByName(o,t.range);r&&this._dependencies.add(e,r.address,null)}))}return this}refreshFormula(t){return t.refreshFormula(),this.formulas.delete(t.address),this.clearDependecies(t),this}updateDependencies(t){return this.clearDependecies(t).getFormula(t),this}getFormula(t){return this._formulas.has(t.address)?this._formulas.get(t.address):this.createFormula(t)}refresh(){this.dependencies.clear(),this._formulas.clear()}clearDependecies(t){const e=t.address;return this.dependencies.clearCellDependecies(e),this.formulas.delete(e),this}evaluateFormula(t,e){return this.context.currentCell=e,t.fn(this.context,{cell:e,formula:t})}evaluateExpression(t,e){this.context.currentCell=e;const i=new Pv(t,this.tokenizer);return i.fn(this.context,{cell:e,formula:i})}evaluate(t,e){if(!t)return null;let i=null;if(t.hasFormula){const o=this.getFormula(t);try{t.clearError(),this.context.currentCell=t,i=o.fn(this.context,{cell:t,formula:o}),Array.isArray(i)?(e||this.model.spillValues({cell:t,values:i}).range,i=i.length>0&&i[0].length>0?i[0][0]:null,e&&(t.value=i)):t.value=i}catch(e){t.error={message:Iw(e)}}}else i=t.value;return i}evaluateAll(){this.model.rows.forEach((t=>this.model.columns.forEach(((e,i)=>t.cell(i).evaluate()))))}calculateViewport(t){const e=[];return t.rows.forEach((t=>t.cells.forEach((t=>{if(t.hasFormula){if(!t.hasValue&&(this.evaluate(t),t.spillRange))for(const i of this.model.getRangeIterator(t.spillRange))e.push(i);e.push(t)}})))),e}shift(t){this.getFormulaCells().forEach((e=>{e.formula=this.getFormula(e).shift(t).createFormulaString(!1),this.updateDependencies(e)}));const e=this.model.name;return this.dependencies.sheetDependants.forEach((i=>{const o=this.model.getConnectedModel(i);o?.calculations.getFormulaCells().forEach((i=>{const r=o.calculations.getFormula(i);r.hasSheetReference(e)&&(i.formula=r.shift(t).createFormulaString(!1),o.calculations.updateDependencies(i))}))})),this}getFormulaCells(){const t=this.model,e=[];let i;const o=t.rows.length,r=t.columns.length;for(let s=0;s<o;s++){i=t.rows[s];for(let t=0;t<r;t++)i.hasCellFormula(t)&&e.push(i.cell(t))}return e}renameSheet(t,e){let i=!1;return this.dependencies.renameSheet(t,e),this.getFormulaCells().forEach((o=>{const r=this.getFormula(o);r.renameSheet(t,e)&&(o.formula=r.createFormulaString(),this.refreshFormula(o),i=!0)})),i}invalidateCellDependants(t){const e=[];return this.dependencies.getDependants(t.range).forEach((([t,i])=>{e.push([t,i]),t.invalidateValue()})),e}invalidateDependants(t){const e=new Map,i=new Map;for(const i of t)this.invalidateCellDependants(i).forEach((([t,i])=>e.set(t,i)));e.forEach(((t,e)=>i.set(e,t)));for(const i of t)e.set(i,null);return e.forEach(((t,e)=>{this.model.sparklines.dependencies.getDependants(e.range).forEach((([t,e])=>{i.set(t,e)})),this.model.conditionalFormats.dependencies.getDependants(e.range).forEach((([t,e])=>{this.model.conditionalFormats.invalidateExtremes(t),t.invalidateStyle(),i.set(t,e)}))})),i}}const Tw="#ff0000",Aw="#fcd53f",$w="#00bb5e",Ow="#555555",Dw=new Map([["3Arrows",[{icon:["fas","down"],color:Tw},{icon:["fas","right"],color:Aw},{icon:["fas","up"],color:$w}]],["3ArrowsGray",[{icon:["fas","down"],color:Ow},{icon:["fas","right"],color:Ow},{icon:["fas","up"],color:Ow}]],["3Flags",[{icon:["fas","flag-pennant"],color:Tw},{icon:["fas","flag-pennant"],color:Aw},{icon:["fas","flag-pennant"],color:$w}]],["3TrafficLights1",[{icon:["fas","circle"],color:Tw},{icon:["fas","circle"],color:Aw},{icon:["fas","circle"],color:$w}]],["3TrafficLights2",[{icon:["fas","square-o"],color:Tw},{icon:["fas","square-o"],color:Aw},{icon:["fas","square-o"],color:$w}]],["3Signs",[{icon:["fas","square"],rotation:45,color:Tw},{icon:["fas","triangle"],color:Aw},{icon:["fas","circle"],color:$w}]],["3Symbols",[{icon:["fas","circle-xmark"],color:Tw},{icon:["fas","circle-exclamation"],color:Aw},{icon:["fas","circle-check"],color:$w}]],["3Symbols2",[{icon:["fas","xmark"],color:Tw},{icon:["fas","exclamation"],color:Aw},{icon:["fas","check"],color:$w}]],["3Stars",[{icon:["fal","star"],color:Aw},{icon:["fas","star-half-stroke"],color:Aw},{icon:["fas","star"],color:Aw}]],["3Triangles",[{icon:"caret-down",color:Tw},{icon:"dash",color:Aw},{icon:"caret-up",color:$w}]],["4Arrows",[{icon:["fas","down"],color:Tw},{icon:["fas","down-right"],color:Aw},{icon:["fas","up-right"],color:Aw},{icon:["fas","up"],color:$w}]],["4ArrowsGray",[{icon:["fas","down"],color:Ow},{icon:["fas","down-right"],color:Ow},{icon:["fas","up-right"],color:Ow},{icon:["fas","up"],color:Ow}]],["4RedToBlack",[{icon:["fas","circle"],color:"#000000"},{icon:["fas","circle"],color:"#b1b1b1"},{icon:["fas","circle"],color:"#edb2a3"},{icon:["fas","circle"],color:Tw}]],["4Rating",[{icon:"signal-bars-weak",color:"#4a7db1"},{icon:"signal-bars-fair",color:"#4a7db1"},{icon:"signal-bars-good",color:"#4a7db1"},{icon:["fas","signal-bars"],color:"#4a7db1"}]],["4TrafficLights",[{icon:["fas","circle"],color:"#000000"},{icon:["fas","circle"],color:Tw},{icon:["fas","circle"],color:Aw},{icon:["fas","circle"],color:$w}]],["5Arrows",[{icon:["fas","down"],color:Tw},{icon:["fas","down-right"],color:Aw},{icon:["fas","right"],color:Aw},{icon:["fas","up-right"],color:Aw},{icon:["fas","up"],color:$w}]],["5ArrowsGray",[{icon:["fas","down"],color:Ow},{icon:["fas","down-right"],color:Ow},{icon:["fas","right"],color:Ow},{icon:["fas","up-right"],color:Ow},{icon:["fas","up"],color:Ow}]],["5Rating",[{icon:["fal","signal-bars"]},{icon:["fal","signal-bars-weak"],color:"#4a7db1"},{icon:["fal","signal-bars-fair"],color:"#4a7db1"},{icon:["fal","signal-bars-good"],color:"#4a7db1"},{icon:["fas","signal-bars"],color:"#4a7db1"}]],["5Quarters",[{icon:["fal","circle"],color:"#505050"},{icon:["fas","circle-quarter-stroke"],color:"#505050"},{icon:["fas","circle-half-stroke"],color:"#505050"},{icon:["fas","circle-three-quarters-stroke"],color:"#505050"},{icon:["fas","circle"],color:"#505050"}]]]),Nw=(t,e)=>{const i=Dw.get(t);return i?i[e]:null};class Pw extends Lw{constructor(t,e){super(t,"conditionalFormats"),this.formats=[],this.cellFormatMap=new Map,this.extremes=new Map,e&&this.populate(e)}populate(t){t.forEach((t=>{try{this.add(t)}catch(e){Lr().error(`conditional format error: ${JSON.stringify(t)}`,e)}}))}refresh(){this.dependencies.clear(),this.cellFormatMap.clear(),this.extremes.clear(),this.formats.forEach((t=>this.initConditionalFormat(t)))}clearCellDependecies(t){const e=t.address;return this.dependencies.clearCellDependecies(e),this.cellFormatMap.get(e).forEach((t=>({cf:t.cf}))),this}getExtremes(t){if(this.extremes.has(t.key))return this.extremes.get(t.key);const e=[1/0,-1/0];return t.ranges.forEach((t=>{for(const i of this.model.getValuesInRange(t))for(const t of i)null!=t&&(isNaN(t)||(e[0]=Math.min(e[0],t),e[1]=Math.max(e[1],t)))})),t.cmin&&("num"==t.cmin.t?e[0]=t.cmin.v:"percent"==t.cmin.t&&(e[0]=e[0]+(e[1]-e[0])*t.cmin.v/100)),t.cmax&&("num"==t.cmax.t?e[1]=t.cmax.v:"percent"==t.cmax.t&&(e[1]=e[0]+(e[1]-e[0])*t.cmax.v/100)),this.extremes.set(t.key,e),e}invalidateExtremes(t){this.cellFormatMap.get(t.address).forEach((t=>this.extremes.delete(t.cf.key)))}evaluateScaleFormat(t,e){const i=t.value;if(null==i)return null;const[o,r]=this.getExtremes(e.cf);let s;const n=(i-o)/(r-o);if(e.cf.cmid?.color)s=.5==n?"#"+e.cf.cmid.color:n>.5?Hr("#"+e.cf.cmid.color,"#"+e.cf.cmax.color,2*(n-.5)):Hr("#"+e.cf.cmin.color,"#"+e.cf.cmid.color,2*n);else{if(!e.cf.cmin?.color||!e.cf.cmax?.color)return null;s=Hr("#"+e.cf.cmin.color,"#"+e.cf.cmax.color,n)}return{color:Fr(s).substring(1),fgColor:s.substring(1)}}evaluateBarFormat(t,e){const i=t.value;if(null==i)return null;const o=this.getExtremes(e.cf);let r=o[0];const s=o[1],n=r<0;n||(r-=.1*(s-r));const a=Math.round(100*(i-r)/(s-r));e.initialized||(e.initialized=!0,e.cf.ranges.forEach((e=>this._dependencies.add(t.address,e.A1,null))));const l=[];if(n){const t=Math.round(-100*r/(s-r));i>=0?(l.push(`#00000000 ${t}%`),l.push(`#${e.cf.color} ${t}%`),l.push(`#${e.cf.color} ${a}%`),l.push(`#00000000 ${a}%`)):(l.push(`#00000000 ${a}%`),l.push(`#ff0000 ${a}%`),l.push(`#ff0000 ${t}%`),l.push(`#00000000 ${t}%`))}else l.push(`#${e.cf.color} ${a}%`),l.push(`#00000000 ${a}%`);return{cssStyle:{backgroundClip:"padding-box",backgroundImage:`linear-gradient(90deg, ${l.join(",")})`}}}evaluateFormulaFormat(t,e){if(!e.initialized&&e.cf.condition){e.initialized=!0;const i=t.address,o=new Pv(e.cf.condition,this.model.calculations.tokenizer);e.f=o.shift({index:0,offset:t.c-e.cf.firstCell.c1,direction:"right"}).shift({index:0,offset:t.r-e.cf.firstCell.r1,direction:"down"}),o.cells.forEach((t=>this._dependencies.add(i,t[1].A1,t[2]))),o.ranges.forEach((t=>this._dependencies.add(i,t[1].A1,t[2]))),o.variables.forEach((([e,o])=>{const r=this.model.getCellByName(o,t.range);r&&this._dependencies.add(i,r.address,null)}))}if(e.f&&!this.model.calculations.evaluateFormula(e.f,t))return null;const i={...e.cf.style};return i.color||Br(Fr(Wr(e.cf.style.fgColor))),i}evaluateIconFormat(t,e){const i=t.value;if(null==i)return null;const[o,r]=this.getExtremes(e.cf);let s;for(let t=e.cf.thresh.length-1;t>=0;t--){const n=e.cf.thresh[t];if("percent"===n.t){if(null==s&&(s=100*(i-o)/(r-o)),s>=n.v)return{icon:Nw(e.cf.v,t)}}else if("num"===n.t&&i>=n.v)return{icon:Nw(e.cf.v,t)}}return null}evaluate(t){const e=t.address,i=this.cellFormatMap.get(e);if(!i)return null;let o=null,r=null;for(const e of i){try{switch(e.cf.type){case"formula":r=this.evaluateFormulaFormat(t,e);break;case"scale":r=this.evaluateScaleFormat(t,e);break;case"bar":r=this.evaluateBarFormat(t,e);break;case"icon":r=this.evaluateIconFormat(t,e);break;default:r=null}}catch(t){Lr().error(`Conditional format error: ${JSON.stringify(e)}`,t)}if(r&&(o=o?{...o,...r}:r,e.cf.stop))break}return o}initConditionalFormat(t){return t.firstCell=null,t.ranges.forEach((e=>{for(const i of new Yw(e.intersect(this.model.gridRange))){const e=i.A1;"formula"===t.type&&(t.firstCell||(t.firstCell=i,t.formula=t.condition?new Pv(t.condition,this.model.calculations.tokenizer):null)),(this.cellFormatMap.get(e)||this.cellFormatMap.set(e,[]).get(e)).push({cf:t})}})),t}add(t){const e={key:t.ranges,ranges:wv.fromA1s(t.ranges),type:t.type||"formula",firstCell:null,formula:null,style:t.style?this.model.styles.add(t.style):null,condition:t.condition,stop:!!t.stop,cmin:t.cmin,cmid:t.cmid,cmax:t.cmax,color:t.color,v:t.v,thresh:t.thresh};this.formats.push(this.initConditionalFormat(e))}getSourceData(){return this.formats.map((t=>({type:t.type,ranges:wv.toA1s(t.ranges),style:t.style,condition:t.condition,stop:t.stop,cmin:t.cmin,cmid:t.cmid,cmax:t.cmax,color:t.color,v:t.v,thresh:t.thresh})))}}const jw=(t,e)=>{const i=new RegExp(`${ut(t)}`,"ig");return t=>(i.lastIndex=0,i.test(ct((t[e]??"").toString())))},Hw=(t,e)=>i=>!!i[e]===t,Fw=(t,e)=>{const i=t.map((t=>t.key?.toString()));return t=>null!=t[e]&&i.includes(t[e].toString())},Bw=(t,e)=>t=>!1,Ww=(t,e,i)=>(i=i??"value","b"===t?Hw(e,i):"s"===t&&Array.isArray(e)?Fw(e,"value"):"s"===t?jw(e?.toString(),"formattedValue"):"m"===t&&Array.isArray(e)?Bw(e,i):jw(e?.toString(),"d"===t?"formattedValue":i));class Vw extends Event{constructor(){super("filter",{bubbles:!1,cancelable:!0,composed:!0})}}class Uw extends EventTarget{get settings(){return this._settings}set settings(t){this._settings=t||[],this.colMap.clear(),this.settings.length>0&&(this.settings.forEach(((t,e)=>this.colMap.set(t.c,e))),this.applyFilter(),Lr().info(`filtering applied: ${JSON.stringify(this.settings)}`))}constructor(t,e=null){super(),this.model=t,this.custom=!1,this.colMap=new Map,this._settings=[],this.settings=e}get(t){return this.colMap.has(t)?this.settings[this.colMap.get(t)]:null}filter(t,e=!0){const i=this.get(t.c),o=null===t.term||""===t.term;i&&o?(this.settings.splice(this.colMap.get(t.c),1),this.colMap.delete(t.c)):i?i.term=t.term:o||(this.colMap.set(t.c,this.settings.length),this.settings.push(t)),this.custom||(this.settings.length>0?this.applyFilter(!1):this.resetFilter(!1)),e&&this.dispatchEvent(new Vw)}applyFilter(t=!0){const e=[];this.settings.forEach((t=>{const i=this.model.columns[t.c];e.push({c:t.c,matcher:Ww(i.type,t.term,i.filter?.property)})}));const i=e.length,o=this.model.options.filters?.includeParents??!0,r=this.model.options.filters?.includeChildren??!0,s=new Set;this.model.rows.forEach((t=>{const n=s.has(t.index);(t=>{if(!t.filterable)return!0;for(let o=0;o<i;o++)if(!e[o].matcher(t.cell(e[o].c)))return!1;return!0})(t)?(t.filterState=Ir.Matched,o&&t.walkUp((t=>{if(s.has(t.index)&&t.filterState>0)return!1;t.filterState=Ir.ChildMatched,s.add(t.index)})),r&&t.walk((t=>{if(s.has(t.index)&&t.filterState>0)return!1;t.filterState=Ir.ParentMatched,s.add(t.index)}))):n||(t.filterState=Ir.Filtered),s.add(t.index)})),this.model.indexRows(),t&&this.dispatchEvent(new Vw)}resetFilter(t=!0){this.settings=[],this.colMap.clear(),this.model.rows.forEach((t=>t.filterState=Ir.Matched)),this.model.indexRows(),t&&this.dispatchEvent(new Vw)}}class Gw extends Lw{constructor(t,e){super(t,"sparklines"),this.model=t,this.map=new Map,this.groups=new Map,this.extremes=new Map,this.maxIndex=0,this.updateRangeMap=!1,this.populate(e)}populate(t){t?.forEach((t=>{try{this.add(wv.fromA1(t.location),Array.isArray(t.data)?t.data.map((t=>[wv.fromA1(t)])):t.data.split(",").map((t=>[wv.fromA1(t)])),ot({},Jf.DEFAULT_SPARKLINE_OPTIONS,t.options))}catch(e){this.model.logger.error(`sparkline error: ${JSON.stringify(t)}`,e)}}))}getSourceData(){const t=[];return this.groups.forEach((e=>{t.push({location:e.locRange.A1,data:e.dataRanges.map((t=>t[0].A1)).join(","),options:{minValue:e.minValue,maxValue:e.maxValue,type:e.type,style:e.style,marker:e.marker}})})),t}has(t){return this.map.has(t)}get(t){return this.map.get(t)}createDependencies(t){this.map.get(t)[1].forEach((e=>this._dependencies.add(t,e[0].A1,e[1])))}updateRangeMaps(){this.dependencies.clear(),this.map.clear(),this.groups.forEach(((t,e)=>this.createRangeMap(e,t.locRange,t.dataRanges)))}getValues(t){this.updateRangeMap&&this.updateRangeMaps();const e=this.map.get(t),i=e[1][0][1]?this.model.getConnectedModel(e[1][0][1]):this.model;return this._dependencies.has(t)||this.createDependencies(t),e[1].flatMap((t=>i.getValuesInRange(t[0])[0]))}getExtremes(t){const e=this.map.get(t),i=e[1][0][1]?this.model.getConnectedModel(e[1][0][1]):this.model,o=this.groups.get(e[0]);let r,s,n,a;return null==o.minValue||Q(o.minValue)?"auto"==(o.minValue||"auto")?(r=r??lt(...e[1].map((t=>i.getValuesInRange(t[0])))),n=r[0]):(this.extremes.has(e[0])||this.extremes.set(e[0],lt(...o.dataRanges.map((t=>i.getValuesInRange(t[0]))))),s=this.extremes.get(e[0]),n=s[0]):n=o.minValue,null==o.maxValue||Q(o.maxValue)?"auto"==(o.maxValue||"auto")?(r=r??lt(...e[1].map((t=>i.getValuesInRange(t[0])))),a=r[1]):(this.extremes.has(e[0])||this.extremes.set(e[0],lt(...o.dataRanges.map((t=>i.getValuesInRange(t[0]))))),s=this.extremes.get(e[0]),a=s[1]):a=o.maxValue,[n,a]}createRangeMap(t,e,i){e=e.intersect(this.model.gridRange);const o=i[0][0].size,r=e.size;if(r.columns>1&&r.rows>1)return void this.model.logger?.error(`invalid sparkline location range: ${e.A1}`);let s=!1;if(s=1==r.columns&&1==r.rows?o.rows>1:r.columns>1,s)for(let o=e.c1;o<=e.c2;o++)this.map.set(new wv(o,e.r1).A1,[t,i.map((([t,i])=>[new wv(t.c1+o-e.c1,t.r1,t.c1+o-e.c1,t.r2),i]))]);else for(let o=e.r1;o<=e.r2;o++)this.map.set(new wv(e.c1,o).A1,[t,i.map((([t,i])=>[new wv(t.c1,t.r1+o-e.r1,t.c2,t.r1+o-e.r1),i]))])}add(t,e,i){const o=++this.maxIndex;t&&e&&this.createRangeMap(o,t,e),this.groups.set(o,Object.assign({dataRanges:e,locRange:t},JSON.parse(JSON.stringify(Jf.DEFAULT_SPARKLINE_OPTIONS)),i))}update(t,e,i,o){const r=this.groups.get(t);Object.assign(r,{dataRanges:i,locRange:e},o),this.updateRangeMap=!0}delete(t){this.groups.delete(t),this.updateRangeMap=!0}shift(t){this.groups.forEach((e=>{e.dataRanges.forEach((([e])=>e.shift(t))),e.locRange.shift(t)})),this.updateRangeMaps()}}class qw extends wv{constructor(t,e,i=!1){super(e.c1,e.r1,e.c2,e.r2),this.model=t,this.initializedOnly=i,this.r=0,this.c=-1,this.done=!1}[Symbol.iterator](){return this}nextInitialized(){let t;for(;!this.done&&!t;)this.c<this.size.columns-1?this.c++:this.r<this.size.rows-1&&(this.c=0,this.r++),t=this.model.rows[this.r].cells[this.c],this.done=this.c>=this.size.columns-1&&this.r>=this.size.rows-1;return t}next(){if(this.done)return{done:!0};this.c<this.size.columns-1?this.c++:this.r<this.size.rows-1&&(this.c=0,this.r++),this.done=this.c>=this.size.columns-1&&this.r>=this.size.rows-1;const t=this.model.rows[this.r+this.r1],e=this.c+this.c1,i=this.initializedOnly&&!t.isCellInitialized(e)?this.nextInitialized():t?.cell(e);return i?{done:!1,value:i}:{done:!0}}forEach(t){let e;for(;e=this.next().value;)t(e)}}class Yw extends wv{constructor(t){super(t.c1,t.r1,t.c2,t.r2),this.r=0,this.c=-1,this.done=!1}[Symbol.iterator](){return this}next(){return this.done?{done:!0}:(this.c<this.size.columns-1?this.c++:this.r<this.size.rows-1&&(this.c=0,this.r++),this.done=this.c==this.size.columns-1&&this.r==this.size.rows-1,{done:!1,value:new wv(this.c+this.c1,this.r+this.r1)})}}class Zw extends wv{constructor(t,e,i){super(e.c1,e.r1,e.c2,e.r2),this.model=t,this.i=0,this.done=!1,this.axis=i,this.key="rows"===i?"r1":"c1"}[Symbol.iterator](){return this}next(){if(this.done)return{done:!0};this.i<this.size[this.axis]-1&&this.i++,this.done=this.i>=this.size[this.axis]-1;const t=this.model[this.axis][this.i+this[this.key]];return t?{done:!1,value:t}:{done:!0}}forEach(t){let e;for(;e=this.next().value;)t(e)}}class Xw{constructor(t,e){this.model=t,this.names=new Map,this.rangeMap=new Map,e&&this.populate(e)}populate(t){t.forEach((({name:t,ref:e})=>this.set(t,Z(e)?wv.fromCoords(e):wv.fromA1(e))))}set(t,e){this.names.set(t,e),this.rangeMap.set(e.A1,t)}delete(t){const e=this.names.get(t);e&&(this.rangeMap.delete(e.A1),this.names.delete(t))}findCellByName(t){let e;const i=this.model.rows,o=this.model.columns.length;for(let r=0;r<i.length;r++){e=i[r];for(let i=0;i<o;i++)if(e.hasCellName(i)){const o=e.cell(i);if(o.name==t)return o.range}}return null}getCellByName(t,e){const i=this.names.get(t)??this.findCellByName(t);return i?i.isColumn?this.model.rows.length>e.r1?this.model.columns[i.c1].cell(e.r1):null:i.isRow?this.model.columns.length>e.c1?this.model.rows[i.r1].cell(e.c1):null:this.model.rows[i.r1].cell(i.c1):null}getRangeByName(t,e=!0){const i=this.names.get(t);return e?i?.intersect(this.model.gridRange):i}shift(t){this.names.forEach(((e,i)=>{const o=e.A1;e.shift(t);const r=e.A1;o!=r&&(this.rangeMap.delete(o),this.rangeMap.set(r,i))}))}getSourceData(){const t=[];return this.names.forEach(((e,i)=>{t.push({name:i,ref:e.A1})})),t}}function Qw(t,e=null){const i=ot({},Jf.DEFAULT_OPTIONS,e,rs(t,e));return i.numberFormat?i.numberFormatter=gr(i.formatLocale,i.numberFormat):i.numberFormatter||(i.numberFormatter=gr(i.formatLocale)),i.dateFormat?i.dateFormatter=Qo(i.formatLocale,i.dateFormat):i.dateFormatter||(i.dateFormatter=Qo(i.formatLocale)),i.columnSorting&&(i.sorting=i.sorting||{enabled:!0}),"boolean"==typeof i.filters&&(i.filters={enabled:i.filters}),i.filters=Object.assign({},Qf,i.filters),"boolean"==typeof i.rowTree&&(i.rowTree={enabled:i.rowTree}),i.rowTree=Object.assign({},Kf,i.rowTree),"boolean"==typeof i.columnTree&&(i.columnTree={enabled:i.columnTree}),i.columnTree=Object.assign({},Kf,i.columnTree),i.cellValidation&&(i.cellValidation=ew(i.cellValidation)),i}class Kw extends(Tr(ow)){get cells(){return this._cells}get data(){return this._data}set data(t){this._data=t}get height(){return this._height??this.model.options.rowHeight}set height(t){this._height=t}get priority(){return this._priority}set priority(t){this._priority=t}get address(){return xv(this.index)}get range(){return new wv(null,this.index,null,this.index)}get hasFormula(){return!!this._formula}get formula(){return this._formula}set formula(t){super.formula=t,this.model.columns.forEach((t=>this.cell(t.index).refreshFormula()))}get values(){return this.model.columns.map((t=>this.cell(t.index).value))}cell(t,e){if(this.model.options.singleCellModel)return this._singleCell||(this._singleCell=new vw(this.model,{c:t,r:this.index})),this._singleCell.row=this,this._singleCell.column=this.model.columns[t],this._singleCell;let i=this._cells[t];if((e||!i)&&this.model.columns[t]){if(i=new vw(this.model,e??{c:t,r:this.index}),this._data){const e=this.model.columns[t].data;if(null!=e){const t=this._data[e];Z(t)?(t.comment&&this.model.comments.set(i.address,[t.comment]),i.populate(t)):i.hasValue||(i.value=t)}}i.name&&this.model.names.set(i.name,i.range),this._cells[t]=i}return i}constructor(t,e){super(t,e),this.isCellInitialized=t=>!!this.cells[t],this._cells=[],null==this._priority&&(this._priority=t.options.rowPriority)}populate(t){super.populate(t),this._height=null==t.h||"auto"==t.h?this.model.options.rowHeight:t.h,t.data&&(Array.isArray(t.data)?this._data=[...t.data]:this._data={...t.data}),null!=t.priority&&(this._priority=t.priority)}getSourceData(){const t=super.getSourceData();return null!=this._height&&this._height!=this.model.options.rowHeight&&(t.h=this._height),t}expand(t){super.expand(t),this.model.indexVisibleRows()}collapse(){super.collapse(),this.model.indexVisibleRows()}get prev(){return this.model.rows[this.index-1]}get next(){return this.model.rows[this.index+1]}get prevVisible(){let t=this.prev;for(;t&&!t.visible;)t=t.prev;return t}get nextVisible(){let t=this.next;for(;t&&!t.visible;)t=t.next;return t}hasCellFormula(t){return this.cells[t]&&this.cells[t].hasFormula||this._data&&this._data[this.model.columns[t].data]&&this._data[this.model.columns[t].data].f}hasCellName(t){return this.cells[t]&&null!=this.cells[t].name||this._data&&this._data[this.model.columns[t].data]&&null!=this._data[this.model.columns[t].data].name}insertColumns(t,e,i=!1){let o;const r=this.model.columns.length,s=this.model.calculations;if(i)for(let i=0;i<r;i++)this.hasCellFormula(i)&&(o=this.cell(i),o.formula=s.getFormula(o).shift({index:t,offset:e,direction:"right"}).createFormulaString(!1));t<this.cells.length&&this.cells.splice(t,0,...Array(e).fill(null))}deleteColumns(t,e,i=!1){let o;const r=this.model.columns.length,s=this.model.calculations;if(i)for(let i=0;i<r;i++)this.hasCellFormula(i)&&(o=this.cell(i),o.formula=s.getFormula(o).shift({index:t,offset:e,direction:"left"}).createFormulaString(!1));return t<this.cells.length?this.cells.splice(t,e):null}clearCalculatedValues(){this.cells.forEach((t=>t&&this.model.calculations.refreshFormula(t)))}}var Jw=i(4418),tx=i.n(Jw);const ex=t=>t?"1":"0",ix=t=>null==t?"_":t,ox=t=>null==t?"_":t.toString(),rx=t=>null==t?"_":JSON.stringify(t),sx=t=>ix(t&&t.color?t.color:"_")+ix(t&&t.style?t.style:"_"),nx=t=>ix(t?t.horizontal:null)+ix(t?t.vertical:null)+ix(t?t.horizontal:null)+ox(t?t.indent:null)+ex(t?t.wrapText:null)+ox(t?t.textRotation:null),ax=t=>tx()("s_"+ex(t.bold)+ex(t.italic)+ex(t.underline)+ox(t.sz)+ix(t.font)+ix(t.color)+sx(t.top)+sx(t.right)+sx(t.bottom)+sx(t.left)+ix(t.patternType)+ix(t.fgColor)+ix(t.bgColor)+nx(t.alignment)+ox(t.angle)+rx(t.stops)+ex(t.hidden)+ex(t.editable)+rx(t.cssStyle)+rx(t.icon));function lx(t){const e={...t};return delete e.id,delete e.hash,e}class cx{constructor(t){this.model=t,this._count=0,this.hashmap=new Map,this.map=new Map}add(t){if(!isNaN(t))return this.get(t);const e=this.model.options.cssStyles?gw(t):t,i=e.hash?e.hash:ax(e);return this.hashmap.has(i)?this.map.get(this.hashmap.get(i)):(null==e.id&&(e.id=this._count),this._count=Math.max(e.id+1,this._count+1),e.hash=i,this.hashmap.set(i,e.id),this.map.set(e.id,e),e)}populate(t){t.forEach((t=>this.add(t)))}get(t){return this.map.has(t)?this.map.get(t):null}remove(t){const e="object"==typeof t?t:this.map.get(t);this.hashmap.delete(e.hash),this.map.delete(e.id)}merge(...t){const e=Object.assign({},...t.map((t=>Z(t)?t:this.get(t))));return this.add(lx(e))}duplicate(t,e){const i=this.get(t);return this.add(lx({...i,...e}))}set(t,e){let i=this.map.has(t)?this.map.get(t):{};for(const t in e)i[t]=e[t];return i=i.id?i:this.add(i),i}unset(t,e){if(this.map.has(t)){const i=this.map.get(t);for(const t of e)delete i[t]}}getSourceData(){return Array.from(this.map.values())}clean(){const t=new Map(Array.from(this.map.entries()).map((([t])=>[t,0])));this.model.columns.forEach((e=>{const i=t.get(e.style);null!=i&&t.set(e.style,i+1)})),this.model.rows.forEach((e=>{const i=t.get(e.style);null!=i&&t.set(e.style,i+1),e.cells.forEach((e=>{const i=t.get(e.style);null!=i&&t.set(e.style,i+1)}))})),t.forEach(((t,e)=>{0==t&&this.remove(e)}))}}function hx(t,e,i,o){const r=o??("rows"==i?e.rows:e.columns),s=function(t){const e=new Map;for(const i of t)e.has(i.level)||e.set(i.level,[]),e.get(i.level).push(i);return e}(r),n=t[i]??[];for(const t of n){let o;if(o=t.index>-1?[r[t.index]]:t.level>-1?s.get(t.level):r,t.name){const e=t.name instanceof RegExp?t.name:new RegExp(ut(t.name));o=o.filter((t=>e.test(t.name)))}o?.forEach((o=>{null!=t.priority&&(o.priority=t.priority),t.type?e.conditionalFormats.add(Object.assign({ranges:`${o.address}:${o.address}`},t)):(o.style=e.styles.add(t.style).id,"rows"==i&&null!=t.height?o.height=t.height:"columns"==i&&null!=t.width&&(o.width=t.width))}))}}function dx(t,e){for(const i of t)if(e[i.property]!=i.value)return!1;return!0}function ux(t,e,i){const o=t.cells??[];for(const t of o)if(t.conditions?.length){const o=e.getRangeIterator(i??e.gridRange);for(const i of o)dx(t.conditions,i)&&(i.style=e.styles.add(t.style).id)}else if(t.type)e.conditionalFormats.add(Object.assign({ranges:"A:"+e.columns[e.columns.length-1].address},t));else for(const i of e.columns)null==i.style&&(i.style=e.styles.add(t.style).id)}function px(t,e,i){hx(t,e,"columns",i)}function gx(t,e,i){hx(t,e,"rows",i)}function mx(t,e){ux(t,e),px(t,e),gx(t,e)}var fx;!function(t){t[t.NONE=0]="NONE",t[t.MERGED=1]="MERGED",t[t.HIDDEN=2]="HIDDEN"}(fx||(fx={}));class vx{get mergedCells(){return this._mergedCells}get hiddenCells(){return this._hiddenCells}constructor(t){this.model=t,this._mergedCells=new Map,this._hiddenCells=new Map}clear(){this._mergedCells.clear(),this._hiddenCells.clear()}getMergeState(t){return this._mergedCells.has(t)?fx.MERGED:this._hiddenCells.has(t)?fx.HIDDEN:fx.NONE}indexMergedRange(t){const e=t.A1,i=this._mergedCells.get(e);if(!i)return;const o=i.r,r=i.c,s=t.clone(),n=this.model.rows[o]?.cell(r);if(n)for(let t=0;t<i.rs;t++)for(let e=0;e<i.cs;e++)0==t&&0==e||(s.r1=o+t,s.c1=r+e,s.r2=s.r1,s.c2=s.c1,this._hiddenCells.set(s.A1,i));else this.remove(e)}add(t){const e=new wv(t.c,t.r),i=e.A1;if(this._mergedCells.has(i))this.remove(i);else if(this._hiddenCells.has(i))return;this._mergedCells.set(i,t),this.indexMergedRange(e)}remove(t){const e=this._mergedCells.get(t);if(!e)return;this._mergedCells.delete(t);const i=e.r,o=e.c,r=new wv(o,i);this._hiddenCells.delete(t);for(let t=0;t<e.rs;t++)for(let s=0;s<e.cs;s++)0==t&&0==s||(r.r1=i+t,r.c1=o+s,r.r2=r.r1,r.c2=r.c1,this._hiddenCells.delete(r.A1))}shift(t){const{index:e,offset:i,direction:o}=t,r={down:t=>{e<=t.r?t.r+=i:e>t.r&&e<t.r+t.rs&&(t.rs+=i)},up:t=>{e<=t.r?t.r-=i:e>t.r&&e<t.r+t.rs&&(t.rs-=i)},right:t=>{e<=t.c?t.c+=i:e>t.c&&e<t.c+t.cs&&(t.cs+=i)},left:t=>{e<=t.c?t.c-=i:e>t.c&&e<t.c+t.cs&&(t.cs-=i)}},s=[...this._mergedCells.values()];s.forEach((t=>this.remove(new wv(t.c,t.r).A1))),s.forEach((t=>{r[o](t),this.add(t)}))}}const bx=["index","name","rows","columns","cells","options","sparklines","rules","comments","styles","names","props","tab","theme"];class yx{get mergedHeaders(){return this._mergedHeaders}get hasFilter(){return this._filter}get hasRowTree(){return this._maxRowLevel>0}get hasRowTreeEnabled(){return this.hasRowTree&&this.options.rowTree.enabled}get maxRowLevel(){return this._maxRowLevel}get hasColumnTree(){return this._maxColumnLevel>0}get hasColumnTreeEnabled(){return this.hasColumnTree&&this.options.columnTree.enabled}get maxColumnLevel(){return this._maxColumnLevel}get headerCount(){return this._headerCount}get columnHeaderCount(){return this.headerCount+(this.hasColumnTreeEnabled?1:0)+(this.hasFilter?1:0)}get properties(){return this._properties}set properties(t){this._properties=t}get theme(){return this._theme}set theme(t){this._theme=t}constructor(t,e,i){this.otherModels={},this.autofitColumns=new Set,this.autofitRows=new Set,this.merges=new vx(this),this.styles=new cx(this),this.comments=new Sw(this),this.calculations=new Rw(this),this.names=new Xw(this),this.sorting=new Mw(this),this.filter=new Uw(this),this.sparklines=new Gw(this),this.conditionalFormats=new Pw(this),this._filter=!1,this._maxRowLevel=0,this._maxColumnLevel=0,this._headerCount=0,this._levelBasedRowTree=!0,this._levelBasedColTree=!0,this.clearRows=()=>(this.rowRoot.clearChildren(),this.rows=[],this.rows),this.clearColumns=()=>this.columns=[],this.logger=i,this.options=e??Qw(t.options),this.populate(t)}getConnectedModel(t){return this.group?this.group.get(t):null}getModelByRange(t){return t.sheet?this.getConnectedModel(t.sheet):this}getCellByA1(t){return this.getCellByRange(wv.fromA1(t))}getCellByRange(t){return this.getCellByCoords(t.r1,t.c1)}getCellByCoords(t,e){return this.rows[t]?.cell(e)}cell(t,e){return isNaN(t)?t instanceof wv?this.getCellByRange(t):"string"==typeof t?this.getCellByA1(t):null:this.getCellByCoords(t,e||0)}createRows(t,e=new Kw(this,{l:-1}),i=0){let o=!1,r=!1;this.autofitRows.clear();const s=t.map(((t,e)=>{t||(t={}),isNaN(t.l)||(o=!0),null!=t.p&&(r=!0),"auto"==t.h&&this.autofitRows.add(e);const s=new Kw(this,t);return s.origIndex=e+i,s.name&&this.names.set(s.name,wv.fullRow(e)),s}));let n=-1;return o?n=Ar(s,e,{reverse:this.options.rowTree.reversed}):r?n=$r(s,e):e.children=s,r||(o=!0),[e,s,n,o]}insertRowData(t,e,i){const o=this.createRows(i,new Kw(this,{l:t.level}),e);if(this._maxRowLevel=Math.max(this._maxRowLevel,o[2]),t.insertChildren(o[0].children,e),this.indexRowsByTree(),this.theme){const t=o[1];gx(this.theme,this,t),ux(this.theme,this,new wv(0,t[0].index,1/0,t[t.length-1].index))}}applyTheme(t,e){if(e)for(const t of this.getInitializedCellIterator())t.invalidateStyle();mx(t,this)}populate(t){this.index=t.index,this.name=t.name??this.name,this.tab=t.tab;let e=!1,i=!1;if(t.columns||(t.columns=new Array(this.options.columns).fill({})),t.rows||(t.rows=new Array(this.options.rows).fill({})),t.styles&&this.styles.populate(t.styles),this.autofitColumns.clear(),this.columns=t.columns.map(((t,o)=>{t||(t={}),t.l>0&&(e=!0),null!=t.p&&(i=!0),"auto"==t.w&&this.autofitColumns.add(o);const r=new yw(this,t);return this._filter=r.hasFilter||this._filter,r.name&&this.names.set(r.name,wv.fullColumn(o)),r})),this._levelBasedColTree=e,this._maxColumnLevel=-1,this.colRoot=new yw(this,{l:-1}),e?this._maxColumnLevel=Ar(this.columns,this.colRoot,{reverse:this.options.columnTree.reversed}):i?this._maxColumnLevel=$r(this.columns,this.colRoot):this.colRoot.children=this.columns,i||(this._levelBasedColTree=!0),this.indexColumns(),this.indexVisibleColumns(),[this.rowRoot,this.rows,this._maxRowLevel,this._levelBasedRowTree]=this.createRows(t.rows),this.indexRows(),this.indexVisibleRows(),this.options.pageSize&&this.options.pageSize<=this.rows.length&&(this.rowRoot.count=1/0),this.merges.clear(),t.comments=t.comments||[],t.cells?.forEach(((e,i)=>{const o=this.rows[e.r]?this.rows[e.r].cell(e.c,e):null;o?(e.cs>1||e.rs>1)&&this.merges.add({r:o.r,c:o.c,rs:e.rs||1,cs:e.cs||1}):this.logger?.error(`invalid cell definition (index ${i}): ${JSON.stringify(e)}`),o&&e.comment&&t.comments.push(Object.assign(e.comment,{c:e.c,r:e.r}))})),t.sparklines)try{this.sparklines.populate(t.sparklines)}catch(t){Lr().error(`Sparkline init error: ${t}`)}if(t.names)try{this.names.populate(t.names)}catch(t){Lr().error(`Named range init error: ${t}`)}if(t.rules)try{this.conditionalFormats.populate(t.rules)}catch(t){Lr().error(`Conditional formats init error: ${t}`)}if(t.theme)try{this.applyTheme(t.theme),this._theme=t.theme}catch(t){Lr().error(`Theme init error: ${t}`)}if(t.comments)try{this.comments.populate(t.comments)}catch(t){Lr().error(`Comment init error: ${t}`)}this._properties=t.props,this.otherSourceData={};const o=new Set(bx),r=Object.keys(t).filter((t=>!o.has(t)));r.forEach((e=>this.otherSourceData[e]=t[e])),this.options.sorting?.defaultSettings&&(this.sorting.settings=this.options.sorting.defaultSettings),this.options.filters?.defaultSettings&&(this.filter.settings=this.options.filters.defaultSettings),this.calcHeaderHeights()}getSourceData(){const t={index:this.index,name:this.name,tab:this.tab,columns:this.columns.map((t=>t.getSourceData())),rows:this.rows.map((t=>t.getSourceData())),styles:this.styles.getSourceData(),rules:this.conditionalFormats.getSourceData(),sparklines:this.sparklines.getSourceData(),names:this.names.getSourceData(),options:this.options};this._properties&&(t.props=this._properties);const e=[];let i;for(let t=0;t<this.rows.length;t++)for(let o=0;o<this.columns.length;o++)i=this.rows[t].cell(o).getSourceData(),Object.keys(i).length>0&&(i.r=t,i.c=o,e.push(i));e.length>0&&(t.cells=e);const o=[];return this.styles.clean(),this.styles.map.forEach((t=>o.push(t))),o.length>0&&(t.styles=o),new Set([...Object.keys(this.otherModels??{}),...Object.keys(this.otherSourceData??{})]).forEach((e=>t[e]=this.otherModels[e]?Array.from(this.otherModels[e]).map((t=>t.getSourceData())):this.otherSourceData[e])),t}calcHeaderHeights(){this._headerCount=0,this._headerHeights=[],this.columns.forEach((t=>{this._headerCount=t.header?t.header.length:this._headerCount,this._headerHeights.length<this._headerCount&&this._headerHeights.push(...Array(this._headerCount-this._headerHeights.length).fill(0)),t.header?.forEach(((t,e)=>{e>=this._headerHeights.length&&this._headerHeights.push(0),this._headerHeights[e]=Math.max(this._headerHeights[e],t.height??0)}))}))}indexRows(){this.visibleRows=[],this.rows.forEach(((t,e)=>{t.index=e,t.isLoaded||(t.collapsed=!0),t.hidden||t.filterState==Ir.Filtered||(t.visibleIndex=this.visibleRows.length,this.visibleRows.push(t))}))}indexVisibleRows(){this.visibleRows=[];let t=0;if(this._levelBasedRowTree){if(this.rowRoot.walkVisible((e=>{e.visibleIndex=t++,this.visibleRows.push(e)})),this.options.rowTree.reversed){const e=new Array(this.visibleRows.length);this.visibleRows.forEach(((i,o)=>{t=this.visibleRows.length-o-1,i.visibleIndex=t,e[t]=i})),this.visibleRows=e}}else this.rowRoot.walkVisible((t=>this.visibleRows[t.index]=t)),this.visibleRows=this.visibleRows.filter((e=>!!e&&(e.visibleIndex=t++,!0)))}indexRowsByTree(){this.rows=[];let t=0;this.rowRoot.walk((e=>{e.index=t++,this.rows.push(e)})),this.options.rowTree.reversed&&this.rows.reverse(),this.indexVisibleRows()}indexColumns(){this.visibleColumns=[],this.columns.forEach(((t,e)=>{t.index=e,t.hidden||this.visibleColumns.push(t)}))}indexVisibleColumns(){this.visibleColumns=[],this.visibleColumnIndex={};let t=0;if(this.colRoot.walkVisible((e=>{e.visibleIndex=t,this.visibleColumnIndex[e.index]=t++,this.visibleColumns.push(e)})),this.options.columnTree.reversed){this.visibleColumnIndex={};const e=new Array(this.visibleColumns.length);this.visibleColumns.forEach(((i,o)=>{t=this.visibleColumns.length-o-1,i.visibleIndex=t,this.visibleColumnIndex[i.index]=t,e[t]=i})),this.visibleColumns=e}this.indexHeaders()}indexHeaders(){this._mergedHeaders=[],this._headerCount=0,this.colRoot.walkVisible((t=>{this._headerCount=Math.max(t.header?t.header.length:0,this._headerCount),t.mergedHeaders.forEach((e=>this._mergedHeaders.push({h:e,c:t.index,r:e.r,cs:t.calculateRealColspan(e.cs??1),rs:e.rs??1})))})),this._mergedHeaders.forEach((t=>{if(!t.h.hidden)for(let e=t.c;e<t.c+t.cs;e++)for(let i=t.r;i<t.r+t.rs;i++)(i>t.r||e>t.c)&&this.columns[e]&&this.columns[e].header[i]&&(this.columns[e].header[i].hidden=!0)})),this.calcHeaderHeights()}removeHeader(t){this.columns.forEach((e=>{t<e.header.length&&e.header.splice(t,1)})),this.indexHeaders()}clear(){this.clearRows(),this.clearColumns(),this.resetViewport()}resetViewport(){return this._viewport=null,this}getViewport(t,e,i){const o=[],r=[];let s,n,a=e.h,l=0;for(l=0;l<i.t;l++)s=this.visibleRows[l],a-=s.height,o.push(s);for(l=this.visibleRows.length-i.b;l<this.visibleRows.length;l++)s=this.visibleRows[l],a-=s.height;for(l=i.t+t.r;a>0&&l<this.visibleRows.length;)s=this.visibleRows[l++],a-=s.height,o.push(s);for(l=this.visibleRows.length-i.b;l<this.visibleRows.length;l++)o.push(this.visibleRows[l]);let c=e.w,h=0;for(h=0;h<i.l;h++)n=this.visibleColumns[h],c-=n.width,r.push(n);for(h=this.visibleColumns.length-i.r;h<this.visibleColumns.length;h++)n=this.visibleColumns[h],c-=n.width;for(h=i.l+t.c;c>0&&h<this.visibleColumns.length;)n=this.visibleColumns[h++],c-=n.width,r.push(n);for(h=this.visibleColumns.length-i.r;h<this.visibleColumns.length;h++)r.push(this.visibleColumns[h]);return this._viewport={rows:o,columns:r}}calculateViewport(){return this._viewport?this.calculations.calculateViewport(this._viewport):[]}getValuesInRange(t,e=!1){if(!(t=t.intersect(this.gridRange)))return[];const{columns:i,rows:o}=t.size,r=new Array(o);let s,n=0,a=0;for(let o=t.r1;o<=t.r2;o++){r[n]=new Array(i),a=0,s=this.rows[o];for(let i=t.c1;i<=t.c2;i++)r[n][a++]=e?s.cell(i).formattedValue:s.cell(i).value;++n}return r}setRowExpandLevel(t){this.rows.forEach((e=>{e.collapsed=!e.isLoaded&&!e.isPartialyLoaded||e.level>=t,e.level<=t&&(e.hidden=!1)})),this.indexVisibleRows()}setColumnExpandLevel(t){this.columns.forEach((e=>e.collapsed=e.level>=t)),this.indexVisibleColumns()}getViewportRange(){return this._viewport?new wv(this._viewport.columns[0].index,this._viewport.rows[0].index,this._viewport.columns[this._viewport.columns.length-1].index,this._viewport.rows[this._viewport.rows.length-1].index):null}get gridRange(){return new wv(0,0,this.columns.length-1,this.rows.length-1)}getRangeIterator(t,e=!1){return new qw(this,e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange))}getInitializedCellIterator(){return new qw(this,this.gridRange,!0)}getRowIterator(t,e=!1){return t=e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange),new Zw(this,t,"rows")}getColumnIterator(t,e=!1){return t=e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange),new Zw(this,t,"columns")}getCellArray(t){const e=[];for(const i of this.getRangeIterator(t))e.push(i);return e}transformRangeToMatrix(t,e){let i,o,r;const s=[];for(let n=(t=t.intersect(this.gridRange)).r1;n<=t.r2;n++)if(i=this.rows[n],i){r=[];for(let s=t.c1;s<=t.c2;s++)o=i.cell(s),o&&r.push(e(o));s.push(r)}return s}getCellMatrix(t){return this.getModelByRange(t)?.transformRangeToMatrix(t,(t=>t))}getValueMatrix(t){return this.getModelByRange(t)?.transformRangeToMatrix(t,(t=>t.value))}shift(t){t.sheet=this.name,this.merges.shift(t),this.calculations.shift(t),this.names.shift(t),this.comments.shift(t),this.sparklines.shift(t)}clearCalculations(t=!1){t&&this.group?this.group.models.forEach((t=>t.calculations.refresh())):this.calculations.refresh()}refreshSparklines(){this.sparklines.updateRangeMaps();for(const t of this.getInitializedCellIterator())t.invalidateStyle()}clearCalculatedStyles(){this.conditionalFormats.refresh();const t=[];for(const e of this.getInitializedCellIterator())t.push(e),e.invalidateStyle()}insertColumns(t,e,i=!1){const o=this.columns[Math.min(this.columns.length-1,t)].parent;i&&++t,this.shift({index:t,offset:e,direction:"right"});for(let i=0;i<this.rows.length;i++)this.rows[i].insertColumns(t,e,!1);const r=new Array(e).fill(null).map((()=>new yw(this)));return this.columns.splice(t,0,...r),this.maxColumnLevel>0&&o.insertChildren(r,t-(o.index||-1)-1),this.indexColumns(),this.clearCalculations(!0),r}deleteColumns(t,e){const i=this.columns[t].parent;this.shift({index:t,offset:e,direction:"left"});const o=[];for(let i=0;i<this.rows.length;i++)o.push(this.rows[i].deleteColumns(t,e,!1));const r=this.columns.splice(t,e);return i?.deleteChildren(r),this.indexColumns(),this.clearCalculations(!0),r}insertRows(t,e,i=!1){const o=Math.min(this.rows.length-1,t),r=o<0?this.rowRoot:this.rows[o].parent;i&&++t;const s=isNaN(e)?e.length:e;this.shift({index:t,offset:s,direction:"down"});const n=isNaN(e)?e:new Array(s).fill(null).map((()=>new Kw(this)));return this.rows.splice(t,0,...n),this.maxRowLevel>0&&r.insertChildren(n,t-(r.index||-1)-1),this.indexRows(),this.theme&&(gx(this.theme,this,n),ux(this.theme,this,new wv(0,n[0].index,1/0,n[n.length-1].index))),this.clearCalculations(!0),n}deleteRows(t,e){const i=this.rows[t].parent;this.shift({index:t,offset:e,direction:"up"});const o=this.rows.splice(t,e);return i?.deleteChildren(o),this.indexRows(),this.clearCalculations(!0),o}moveRows(t,e,i){const o=this.rows.splice(t,e);return this.rows.splice(i,0,...o),this.shift({index:t,offset:i-t,direction:"down",maxIndex:t+e-1}),this.indexRows(),this.clearCalculations(!0),o}moveColumns(t,e,i){const o=this.columns.splice(t,e);return this.columns.splice(i,0,...o),this.shift({index:t,offset:i-t,direction:"right",maxIndex:t+e-1}),this.indexColumns(),this.clearCalculations(!0),o}spillValues(t){const{cell:e,values:i,displayValues:o,propertyCell:r}=t,s=[],n=[],a=0===i.length||0===i[0].length;let l,c;const h=a?null:new wv(e.c,e.r,e.c+i[0].length-1,e.r+i.length-1);if(e.spillRange&&this.getRangeIterator(e.spillRange,!0).forEach((t=>{e==t||h?.contains(t.range)||t.clearSpilledValue()})),e.spillRange=h,a)return{cells:s,oldValues:n,range:null};for(let t=h.r1;t<=h.r2;t++){if(l=this.rows[t],!l)continue;const a=t-h.r1;for(let t=h.c1;t<=h.c2;t++){const d=t-h.c1;c=l.cell(t),c.editable&&(n.push(c.value2),c.spillValue(i[a][d],e),r&&(c.format=r.format,c.type=r.type),o&&null!=o[a][d]&&(c.displayValue=o[a][d]),s.push(c))}}return{cells:s,oldValues:n,range:h}}getCellByName(t,e,i=!0){return this.names.getCellByName(t,e)||(this.group&&i?this.group.getCellByName(t,e):null)}getRangeByName(t,e=!0){return this.names.getRangeByName(t)||(this.group&&e?this.group.getRangeByName(t):null)}getValueMatrixByName(t,e=!0){const i=this.names.getRangeByName(t);return i?this.getValueMatrix(i):this.group&&e?this.group.getValueMatrixByName(t):null}rebuildRowTree(){const t=this._levelBasedRowTree?Ar:$r;this._maxRowLevel=t(this.rows,this.rowRoot,{reverse:this.options.rowTree.reversed}),this.indexRowsByTree()}rebuildColumnTree(){const t=this._levelBasedColTree?Ar:$r;this._maxColumnLevel=t(this.columns,this.colRoot,{reverse:this.options.columnTree.reversed}),this.indexColumns()}calculateCellOffset(t){let e=0,i=0;for(let i=0;i<t.c1&&this.columns[i];i++)e+=this.columns[i].width;for(let e=0;e<t.r1&&this.rows[e];e++)i+=this.rows[e].height;return{x:e,y:i}}}class wx{get errors(){return this._errors}get(t){return this.models.get(t)}has(t){return this.models.has(t)}getNewName(){let t;do{t=`sheet${this._max}`}while(this.models.has(t));return t}add(t){if(t.index=t.index??this._max,++this._max,t.name=t.name||this.getNewName(),this.models.has(t.name))throw Error(`sheet "${t.name}" already exists`);return this.models.set(t.name,t),t.group=this,t}duplicate(t){const e=this.get(t);if(!e)return;const i=new yx(e.getSourceData(),e.options);let o=1;for(;this.models.has(`${t}_${o}`);)++o;return i.name=`${t}_${o}`,this.add(i),i}remove(t){return this.models.delete(t),this}rename(t,e){if(this.has(t)){if(this.has(e))throw new Error(`Model '${e}' already exists`);const i=this.get(t);i.name=e,this.models.set(e,i),this.models.delete(t),this.models.forEach((i=>{i.calculations.renameSheet(t,e)&&i.calculateViewport()}))}return this}clear(){this.models.clear(),this._errors=[]}constructor(t){this._max=0,this.models=new Map,this.themes=new Map,this._errors=[],t&&this.populate(t)}populate(t){this.clear(),t.models.forEach((t=>{const e=new yx(t);try{this.add(e)}catch(t){this.errors.push(t)}})),t.themes&&t.themes.forEach((t=>this.themes.set(t.name,t)))}getSourceData(){const t={models:[]};return this.models.forEach((e=>t.models.push(e.getSourceData()))),t}getCellByName(t,e){for(const i of this.models.values()){const o=i.getCellByName(t,e,!1);if(o)return o}return null}getRangeByName(t){for(const e of this.models.values()){const i=e.getRangeByName(t,!1);if(i)return i}return null}getValueMatrixByName(t){for(const e of this.models.values()){const i=e.getValueMatrixByName(t,!1);if(i)return i}return null}}class xx{constructor(t){this.model=t,this.stack=[],this.restack=[]}push(t){return this.restack=[],t.timestamp||(t.timestamp=Date.now()),this.stack.push(t),this}pop(t=1){let e=0;const i=[];for(;e++<t&&this.stack.length>0;){const t=this.stack.pop();i.push(t),this.restack.push(t)}return i}pop2(t=1){let e=0;const i=[];for(;e++<t&&this.restack.length>0;){const t=this.restack.pop();i.push(t),this.stack.push(t)}return i}}class kx{get activeCellCoords(){return{c:this.range.c1+this.activeCell.c1,r:this.range.r1+this.activeCell.r1}}constructor(t,e,i,o){this.hidden=!1,this.range=new wv(t,e,i,o),this.activeCell=new wv(0,0)}static fromRange(t){return new kx(t.c1,t.r1,t.c2,t.r2)}setCoords(t,e,i,o){this.range.setCoords(t,e,i,o),this.activeCell.setCoords(0,0)}setRange(t){"string"==typeof t&&(t=wv.fromA1(t)),this.range.setCoords(t.c1,t.r1,t.c2,t.r2),this.activeCell.setCoords(0,0)}move(t,e,i,o){this.range.setCoords(this.range.c1+this.activeCell.c1,this.range.r1+this.activeCell.r1,this.range.c1+this.activeCell.c2,this.range.r1+this.activeCell.r2),this.range.move(t,e,i,o,!1),this.activeCell.setCoords(0,0)}moveRange(t,e,i,o){this.range.move(t,e,i,o,!0)}moveActiveCell(t,e){const{columns:i,rows:o}=this.range.size;this.activeCell.move(t,e,i,o,!0)}}const Cx={...Jf,CUSTOM_CLIPBOARD_TYPE:"web application/json"};class Mx{constructor(t,e,i=Cx.MAX_CACHE_ITEMS){this.maxCacheItems=i,this.queue=[],this.disabled=!1,this.table=new Array(e).fill(null).map((()=>new Array(t)))}get(t,e){return this.table[e][t]}delete(t,e){return this.table[e][t]=null,this}deleteColumn(t){for(let e=0;e<this.table.length;e++)this.table[e][t]=null;return this}deleteRow(t){return this.table[t]=new Array(this.table[0].length).fill(null),this}set(t,e,i){this.disabled||(this.get(t,e)||this.queue.push([e,t]),this.table[e][t]=i)}clear(){this.queue=[],this.table=this.table.map((t=>new Array(t.length)))}clean(){if(this.maxCacheItems>0&&this.queue.length>this.maxCacheItems){let t=this.queue.length;for(let e=0;e<this.queue.length;e++){const i=this.queue[e];if(!this.table[i[0]][i[1]].parentNode&&(this.queue[e]=null,this.table[i[0]][i[1]]=null,--t<=this.maxCacheItems))break}t<this.queue.length&&(this.queue=this.queue.filter((t=>t)))}}}var _x=function(t,e,i,o){var r,s=arguments.length,n=s<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,e,i,o);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(n=(s<3?r(n):s>3?r(e,i,n):r(e,i))||n);return s>3&&n&&Object.defineProperty(e,i,n),n};let Sx=class extends En{constructor(){super(),this.render=()=>an`
|
|
3745
3745
|
<og-icon id="filterIcon" .icon="${{icon:"filter"}}"></og-icon>
|
|
3746
3746
|
<div class="text">${Y(this.value)?an`
|
|
3747
3747
|
<og-icon .icon="${this.value?"square-check":"square"}"></og-icon>
|
|
@@ -5166,10 +5166,10 @@
|
|
|
5166
5166
|
<og-calendar-dropdown
|
|
5167
5167
|
@change="${this._onChange}"
|
|
5168
5168
|
.options="${{selectMode:"single",autoClose:!0,allowEmpty:!0}}"
|
|
5169
|
-
?cross="${!this.model
|
|
5169
|
+
?cross="${!this.model?.props?.required}"
|
|
5170
5170
|
.value="${this.date}"
|
|
5171
|
-
.caption="${this.model
|
|
5172
|
-
.placeholder="${this.model
|
|
5171
|
+
.caption="${this.model?.props?.caption}"
|
|
5172
|
+
.placeholder="${this.model?.props?.placeholder}">
|
|
5173
5173
|
</og-calendar-dropdown>
|
|
5174
5174
|
`}get formattedValue(){return this.value?(this.value instanceof Date&&(this.value=[this.value.getFullYear(),(this.value.getMonth()+1).toString().padStart(2,"0"),this.value.getDate().toString().padStart(2,"0")].join("")),[[this.value,0,1]]):null}get date(){return Q(this.value)?(Xo(this.value,Lo()),new Date(this.value)):this.value instanceof Date?this.value:null}};wM.styles=[...gM.styles,xs`
|
|
5175
5175
|
og-calendar-dropdown {
|
|
@@ -9473,4 +9473,4 @@ milkdown-block-handle {
|
|
|
9473
9473
|
`:null}
|
|
9474
9474
|
</div>
|
|
9475
9475
|
</og-panel>
|
|
9476
|
-
`:null,this.addEventListener("mousedown",(t=>t.stopPropagation()))}getTypeIndex(t){const e=this.types.findIndex((e=>e.type==t.type&&e.grouping==(t.grouping||"standard")));return e>-1?e:null}updateModel(){if(this.editTitle=!1,!this.model)return;this.titleInput&&(this.model.title=this.titleInput.value);const t=this.types[this.typeList.value];this.model.type=t.type,this.model.grouping=t.grouping,this.model.categoriesRange=this.categoryRangeInput?.value?wv.fromA1(this.categoryRangeInput.value):null,this.model.seriesRange=this.seriesRangeInput?.value?wv.fromA1(this.seriesRangeInput.value):null,this.model.dataRange=wv.fromA1(this.dataRangeInput.value),this.dispatchEvent(new Xr({value:this.model}))}async updated(){this.editTitle&&this.titleInput&&(await this.titleInput.updateComplete,this.titleInput.focus(),this.titleInput.selectAll())}};hL.styles=[lL],cL([Tn({type:Object})],hL.prototype,"model",void 0),cL([An()],hL.prototype,"editTitle",void 0),cL([On("#title")],hL.prototype,"titleInput",void 0),cL([On("#type")],hL.prototype,"typeList",void 0),cL([On("#dataRange")],hL.prototype,"dataRangeInput",void 0),cL([On("#seriesRange")],hL.prototype,"seriesRangeInput",void 0),cL([On("#categoryRange")],hL.prototype,"categoryRangeInput",void 0),hL=cL([Ln("og-plugin-chart-form")],hL);const dL=Wa().themes.get("dark");Object.assign(dL.definition,{"highcharts-title-font-size":"16px","highcharts-subtitle-font-size":"14px","highcharts-color-0":"#2caffe","highcharts-color-1":"#544fc5","highcharts-color-2":"#00e272","highcharts-color-3":"#fe6a35","highcharts-color-4":"#6b8abc","highcharts-color-5":"#d568fb","highcharts-color-6":"#2ee0ca","highcharts-color-7":"#fa4b42","highcharts-color-8":"#feb56a","highcharts-color-9":"#91e8e1","highcharts-background-color":"rgb(48, 48, 48)","highcharts-neutral-color-100":"rgb(255, 255, 255)","highcharts-neutral-color-80":"rgb(214, 214, 214)","highcharts-neutral-color-60":"rgb(173, 173, 173)","highcharts-neutral-color-40":"rgb(133, 133, 133)","highcharts-neutral-color-20":"rgb(92, 92, 92)","highcharts-neutral-color-10":"rgb(71, 71, 71)","highcharts-neutral-color-5":"rgb(61, 61, 61)","highcharts-neutral-color-3":"rgb(57, 57, 57)","highcharts-highlight-color-100":"rgb(122, 167, 255)","highcharts-highlight-color-80":"rgb(108, 144, 214)","highcharts-highlight-color-60":"rgb(94, 121, 173)","highcharts-highlight-color-20":"rgb(65, 74, 92)","highcharts-highlight-color-10":"rgb(58, 63, 71)"});const uL=Wa().themes.get("light");Object.assign(uL.definition,{"highcharts-title-font-size":"16px","chart-background-color":"#2a2a2b","highcharts-color-0":"#2caffe","highcharts-color-1":"#544fc5","highcharts-color-2":"#00e272","highcharts-color-3":"#fe6a35","highcharts-color-4":"#6b8abc","highcharts-color-5":"#d568fb","highcharts-color-6":"#2ee0ca","highcharts-color-7":"#fa4b42","highcharts-color-8":"#feb56a","highcharts-color-9":"#91e8e1","highcharts-background-color":"#ffffff","highcharts-neutral-color-100":"#000000","highcharts-neutral-color-80":"#333333","highcharts-neutral-color-60":"#666666","highcharts-neutral-color-40":"#999999","highcharts-neutral-color-20":"#cccccc","highcharts-neutral-color-10":"#e6e6e6","highcharts-neutral-color-5":"#f2f2f2","highcharts-neutral-color-3":"#f7f7f7","highcharts-highlight-color-100":"#0022ff","highcharts-highlight-color-80":"#334eff","highcharts-highlight-color-60":"#667aff","highcharts-highlight-color-20":"#ccd3ff","highcharts-highlight-color-10":"#e6e9ff","highcharts-positive-color":"#06b535","highcharts-negative-color":"#f21313","highcharts-annotation-color-0":"rgba(130, 170, 255, 0.4)","highcharts-annotation-color-1":"rgba(139, 191, 216, 0.4)","highcharts-annotation-color-2":"rgba(150, 216, 192, 0.4)","highcharts-annotation-color-3":"rgba(156, 229, 161, 0.4)","highcharts-annotation-color-4":"rgba(162, 241, 130, 0.4)","highcharts-annotation-color-5":"rgba(169, 255, 101, 0.4)"});var pL=i(6946),gL=i(6471),mL=i(4969),fL=i(9502),vL=i(7706),bL=i(1480),yL=i(2006),wL=i(7503),xL=i(7873),kL=i(8746),CL=i(2570),ML=i(8815),_L=i(6390),SL=i(6593),EL=i(895),zL=i(9083),LL=i(6093),IL=i(9685),RL=i(9849),TL=i(8268),AL=i(4693),$L=i(3599),OL=i(782),DL=i(754),NL=i(5700),PL=i(4731),jL=i(7291),HL=i(597),FL=i(1474),BL=i(6224),WL=i(6239),VL=i(6828),UL=i(2212),GL=i(863),qL=i(3602),YL=i(1985),ZL=i(886),XL=i(7201),QL=i(9937),KL=i(8450),JL=i(9630),tI=i(9766),eI=i(388),iI=i(1903),oI=i(398),rI=i(6105),sI=i(6147),nI=i(5722),aI=i(5576),lI=i(3131),cI=i(6308),hI=i(9645),dI=i(3199),uI=i(871),pI=i(5251),gI=i(6426),mI=i(2643),fI=i(8522),vI=i(6398),bI=i(2525),yI=i(8434),wI=i(6138),xI=i(5835),kI=i(5654),CI=i(6659),MI=i(2977),_I=i(4480),SI=i(9886),EI=i(6815),zI=i(1582),LI=i(2968),II=i(394),RI=i(7024),TI=i(7853),AI=i(8249),$I=i(2869),OI=i(486),DI=i(5735),NI=i(470),PI=i(4612),jI=i(4018),HI=i(1476),FI=i(3194),BI=i(3525),WI=i(7541),VI=i(4104),UI=i(6686),GI=i(7719),qI=i(3898),YI=i(8153),ZI=i(3690),XI=i(1776),QI=i(4980),KI=i(5578),JI=i(9613),tR=i(1119),eR=i(8444),iR=i(2978),oR=i(9130),rR=i(2127),sR=i(2732),nR=i(4287),aR=i(4045),lR=i(7642),cR=i(1367),hR=i(320),dR=i(821),uR=i(102),pR=i(7683),gR=i(3980),mR=i(576),fR=i(654),vR=i(73),bR=i(140),yR=i(8129),wR=i(5087),xR=i(6992),kR=i(8247),CR=i(8038),MR=i(5286),_R=i(9179),SR=i(1808),ER=i(9459),zR=i(2883),LR=i(9124),IR=i(7067),RR=i(1054),TR=i(7325),AR=i(1272),$R=i(3359),OR=i(6562),DR=i(4193),NR=i(6348),PR=i(2435),jR=i(7544),HR=i(4470),FR=i(9111),BR=i(9318),WR=i(7294),VR=i(4479),UR=i(2409),GR=i(3091),qR=i(5789),YR=i(5890),ZR=i(3874),XR=i(2907),QR=i(1175),KR=i(1686),JR=i(703),tT=i(6606),eT=i(4194),iT=i(6228),oT=i(62),rT=i(2072),sT=i(9744),nT=i(25),aT=i(2618),lT=i(1988),cT=i(8013),hT=i(1133),dT=i(362),uT=i(6845),pT=i(6800),gT=i(1103),mT=i(4933),fT=i(7284),vT=i(2620),bT=i(2366),yT=i(7457),wT=i(2449),xT=i(2),kT=i(5697),CT=i(7069),MT=i(4716),_T=i(4740),ST=i(4557),ET=i(1868),zT=i(8647),LT=i(5127),IT=i(4816),RT=i(4009),TT=i(5104),AT=i(2830),$T=i(3093),OT=i(5029),DT=i(3514),NT=i(2142),PT=i(4999),jT=i(7523),HT=i(346),FT=i(7917),BT=i(3976),WT=i(9801),VT=i(2464),UT=i(5511),GT=i(5210),qT=i(5815),YT=i(3339),ZT=i(7472),XT=i(8811),QT=i(8548),KT=i(6880),JT=i(1840),tA=i(5547),eA=i(4788),iA=i(9467),oA=i(9187),rA=i(9217),sA=i(7897),nA=i(2644),aA=i(6204),lA=i(1472),cA=i(1247),hA=i(7406),dA=i(925),uA=i(7455),pA=i(3771),gA=i(1549),mA=i(3541),fA=i(3140),vA=i(9800),bA=i(229),yA=i(2677),wA=i(1844),xA=i(3245),kA=i(9056),CA=i(7535),MA=i(2359),_A=i(15),SA=i(5569),EA=i(2014),zA=i(1599),LA=i(6521),IA=i(232),RA=i(9745),TA=i(9594),AA=i(6979),$A=i(4494),OA=i(312),DA=i(4983),NA=i(1258),PA=i(6313),jA=i(12),HA=i(8003),FA=i(7830),BA=i(8875),WA=i(3911),VA=i(1817),UA=i(478),GA=i(2585),qA=i(6564),YA=i(2884),ZA=i(3825),XA=i(7348),QA=i(9277),KA=i(4118),JA=i(9200),t$=i(51),e$=i(2872),i$=i(4702),o$=i(9281),r$=i(1394),s$=i(7295),n$=i(2936),a$=i(3789),l$=i(3614),c$=i(4827),h$=i(9204),d$=i(9113),u$=i(4058),p$=i(9939),g$=i(1139);const m$=[pL.mw,gL.mw,mL.mw,fL.mw,vL.mw,bL.mw,yL.mw,wL.mw,kL.mw,ML.mw,CL.mw,_L.mw,SL.mw,EL.mw,zL.mw,LL.mw,IL.mw,RL.mw,TL.mw,AL.mw,$L.mw,OL.mw,DL.mw,NL.mw,PL.mw,jL.mw,HL.mw,FL.mw,BL.mw,VL.mw,UL.mw,GL.mw,qL.mw,YL.mw,ZL.mw,XL.mw,QL.mw,KL.mw,JL.mw,tI.mw,eI.mw,iI.mw,rI.mw,oI.mw,sI.mw,nI.mw,aI.mw,lI.mw,cI.mw,hI.mw,dI.mw,uI.mw,pI.mw,gI.mw,mI.mw,fI.mw,bI.mw,yI.mw,wI.mw,xI.mw,kI.mw,CI.mw,MI.mw,_I.mw,SI.mw,EI.mw,zI.mw,LI.mw,II.mw,RI.mw,TI.mw,AI.mw,$I.mw,OI.mw,DI.mw,vI.mw,NI.mw,PI.mw,jI.mw,HI.mw,FI.mw,BI.mw,WI.mw,VI.mw,UI.mw,GI.mw,qI.mw,YI.mw,ZI.mw,XI.mw,QI.mw,KI.mw,JI.mw,tR.mw,eR.mw,iR.mw,oR.mw,rR.mw,sR.mw,nR.mw,aR.mw,lR.mw,cR.mw,hR.mw,dR.mw,uR.mw,pR.mw,gR.mw,mR.mw,fR.mw,vR.mw,bR.mw,yR.mw,wR.mw,xR.mw,kR.mw,CR.mw,WL.mw,MR.mw,_R.mw,SR.mw,ER.mw,zR.mw,LR.mw,IR.mw,RR.mw,TR.mw,AR.mw,$R.mw,OR.mw,DR.mw,NR.mw,PR.mw,xL.mw,jR.mw,HR.mw],f$=[FR.mw,BR.mw,WR.mw,VR.mw,UR.mw,GR.mw,qR.mw,YR.mw,XR.mw,KR.mw,QR.mw,tT.mw,JR.mw,eT.mw,iT.mw,oT.mw,rT.mw,sT.mw,nT.mw,aT.mw,lT.mw,cT.mw,gT.mw,mT.mw,fT.mw,vT.mw,bT.mw,yT.mw,wT.mw,kT.mw,CT.mw,MT.mw,LT.mw,IT.mw,RT.mw,TT.mw,AT.mw,$T.mw,OT.mw,DT.mw,hT.mw,dT.mw,pT.mw,uT.mw,NT.mw,PT.mw,jT.mw,HT.mw,FT.mw,BT.mw,WT.mw,VT.mw,_T.mw,ST.mw,ET.mw,zT.mw,GT.mw,qT.mw,YT.mw,ZT.mw,XT.mw,QT.mw,KT.mw,JT.mw,tA.mw,eA.mw,iA.mw,oA.mw,rA.mw,sA.mw,nA.mw,aA.mw,lA.mw,cA.mw,hA.mw,UT.mw,dA.mw,uA.mw,pA.mw,gA.mw,mA.mw,fA.mw,vA.mw,bA.mw,yA.mw,wA.mw,xA.mw,kA.mw,CA.mw,MA.mw,_A.mw,SA.mw,EA.mw,zA.mw,LA.mw,IA.mw,RA.mw,TA.mw,AA.mw,$A.mw,OA.mw,DA.mw,NA.mw,PA.mw,jA.mw,HA.mw,FA.mw,BA.mw,WA.mw,VA.mw,UA.mw,GA.mw,qA.mw,YA.mw,ZA.mw,XA.mw,QA.mw,xT.mw,KA.mw,JA.mw,t$.mw,e$.mw,i$.mw,o$.mw,r$.mw,s$.mw,n$.mw,a$.mw,l$.mw,c$.mw,h$.mw,d$.mw,u$.mw,ZR.mw,p$.mw,g$.mw],v$={xlsx:F,charts:B},b$={name:"@omegagrid/bundle",version:"0.9.
|
|
9476
|
+
`:null,this.addEventListener("mousedown",(t=>t.stopPropagation()))}getTypeIndex(t){const e=this.types.findIndex((e=>e.type==t.type&&e.grouping==(t.grouping||"standard")));return e>-1?e:null}updateModel(){if(this.editTitle=!1,!this.model)return;this.titleInput&&(this.model.title=this.titleInput.value);const t=this.types[this.typeList.value];this.model.type=t.type,this.model.grouping=t.grouping,this.model.categoriesRange=this.categoryRangeInput?.value?wv.fromA1(this.categoryRangeInput.value):null,this.model.seriesRange=this.seriesRangeInput?.value?wv.fromA1(this.seriesRangeInput.value):null,this.model.dataRange=wv.fromA1(this.dataRangeInput.value),this.dispatchEvent(new Xr({value:this.model}))}async updated(){this.editTitle&&this.titleInput&&(await this.titleInput.updateComplete,this.titleInput.focus(),this.titleInput.selectAll())}};hL.styles=[lL],cL([Tn({type:Object})],hL.prototype,"model",void 0),cL([An()],hL.prototype,"editTitle",void 0),cL([On("#title")],hL.prototype,"titleInput",void 0),cL([On("#type")],hL.prototype,"typeList",void 0),cL([On("#dataRange")],hL.prototype,"dataRangeInput",void 0),cL([On("#seriesRange")],hL.prototype,"seriesRangeInput",void 0),cL([On("#categoryRange")],hL.prototype,"categoryRangeInput",void 0),hL=cL([Ln("og-plugin-chart-form")],hL);const dL=Wa().themes.get("dark");Object.assign(dL.definition,{"highcharts-title-font-size":"16px","highcharts-subtitle-font-size":"14px","highcharts-color-0":"#2caffe","highcharts-color-1":"#544fc5","highcharts-color-2":"#00e272","highcharts-color-3":"#fe6a35","highcharts-color-4":"#6b8abc","highcharts-color-5":"#d568fb","highcharts-color-6":"#2ee0ca","highcharts-color-7":"#fa4b42","highcharts-color-8":"#feb56a","highcharts-color-9":"#91e8e1","highcharts-background-color":"rgb(48, 48, 48)","highcharts-neutral-color-100":"rgb(255, 255, 255)","highcharts-neutral-color-80":"rgb(214, 214, 214)","highcharts-neutral-color-60":"rgb(173, 173, 173)","highcharts-neutral-color-40":"rgb(133, 133, 133)","highcharts-neutral-color-20":"rgb(92, 92, 92)","highcharts-neutral-color-10":"rgb(71, 71, 71)","highcharts-neutral-color-5":"rgb(61, 61, 61)","highcharts-neutral-color-3":"rgb(57, 57, 57)","highcharts-highlight-color-100":"rgb(122, 167, 255)","highcharts-highlight-color-80":"rgb(108, 144, 214)","highcharts-highlight-color-60":"rgb(94, 121, 173)","highcharts-highlight-color-20":"rgb(65, 74, 92)","highcharts-highlight-color-10":"rgb(58, 63, 71)"});const uL=Wa().themes.get("light");Object.assign(uL.definition,{"highcharts-title-font-size":"16px","chart-background-color":"#2a2a2b","highcharts-color-0":"#2caffe","highcharts-color-1":"#544fc5","highcharts-color-2":"#00e272","highcharts-color-3":"#fe6a35","highcharts-color-4":"#6b8abc","highcharts-color-5":"#d568fb","highcharts-color-6":"#2ee0ca","highcharts-color-7":"#fa4b42","highcharts-color-8":"#feb56a","highcharts-color-9":"#91e8e1","highcharts-background-color":"#ffffff","highcharts-neutral-color-100":"#000000","highcharts-neutral-color-80":"#333333","highcharts-neutral-color-60":"#666666","highcharts-neutral-color-40":"#999999","highcharts-neutral-color-20":"#cccccc","highcharts-neutral-color-10":"#e6e6e6","highcharts-neutral-color-5":"#f2f2f2","highcharts-neutral-color-3":"#f7f7f7","highcharts-highlight-color-100":"#0022ff","highcharts-highlight-color-80":"#334eff","highcharts-highlight-color-60":"#667aff","highcharts-highlight-color-20":"#ccd3ff","highcharts-highlight-color-10":"#e6e9ff","highcharts-positive-color":"#06b535","highcharts-negative-color":"#f21313","highcharts-annotation-color-0":"rgba(130, 170, 255, 0.4)","highcharts-annotation-color-1":"rgba(139, 191, 216, 0.4)","highcharts-annotation-color-2":"rgba(150, 216, 192, 0.4)","highcharts-annotation-color-3":"rgba(156, 229, 161, 0.4)","highcharts-annotation-color-4":"rgba(162, 241, 130, 0.4)","highcharts-annotation-color-5":"rgba(169, 255, 101, 0.4)"});var pL=i(6946),gL=i(6471),mL=i(4969),fL=i(9502),vL=i(7706),bL=i(1480),yL=i(2006),wL=i(7503),xL=i(7873),kL=i(8746),CL=i(2570),ML=i(8815),_L=i(6390),SL=i(6593),EL=i(895),zL=i(9083),LL=i(6093),IL=i(9685),RL=i(9849),TL=i(8268),AL=i(4693),$L=i(3599),OL=i(782),DL=i(754),NL=i(5700),PL=i(4731),jL=i(7291),HL=i(597),FL=i(1474),BL=i(6224),WL=i(6239),VL=i(6828),UL=i(2212),GL=i(863),qL=i(3602),YL=i(1985),ZL=i(886),XL=i(7201),QL=i(9937),KL=i(8450),JL=i(9630),tI=i(9766),eI=i(388),iI=i(1903),oI=i(398),rI=i(6105),sI=i(6147),nI=i(5722),aI=i(5576),lI=i(3131),cI=i(6308),hI=i(9645),dI=i(3199),uI=i(871),pI=i(5251),gI=i(6426),mI=i(2643),fI=i(8522),vI=i(6398),bI=i(2525),yI=i(8434),wI=i(6138),xI=i(5835),kI=i(5654),CI=i(6659),MI=i(2977),_I=i(4480),SI=i(9886),EI=i(6815),zI=i(1582),LI=i(2968),II=i(394),RI=i(7024),TI=i(7853),AI=i(8249),$I=i(2869),OI=i(486),DI=i(5735),NI=i(470),PI=i(4612),jI=i(4018),HI=i(1476),FI=i(3194),BI=i(3525),WI=i(7541),VI=i(4104),UI=i(6686),GI=i(7719),qI=i(3898),YI=i(8153),ZI=i(3690),XI=i(1776),QI=i(4980),KI=i(5578),JI=i(9613),tR=i(1119),eR=i(8444),iR=i(2978),oR=i(9130),rR=i(2127),sR=i(2732),nR=i(4287),aR=i(4045),lR=i(7642),cR=i(1367),hR=i(320),dR=i(821),uR=i(102),pR=i(7683),gR=i(3980),mR=i(576),fR=i(654),vR=i(73),bR=i(140),yR=i(8129),wR=i(5087),xR=i(6992),kR=i(8247),CR=i(8038),MR=i(5286),_R=i(9179),SR=i(1808),ER=i(9459),zR=i(2883),LR=i(9124),IR=i(7067),RR=i(1054),TR=i(7325),AR=i(1272),$R=i(3359),OR=i(6562),DR=i(4193),NR=i(6348),PR=i(2435),jR=i(7544),HR=i(4470),FR=i(9111),BR=i(9318),WR=i(7294),VR=i(4479),UR=i(2409),GR=i(3091),qR=i(5789),YR=i(5890),ZR=i(3874),XR=i(2907),QR=i(1175),KR=i(1686),JR=i(703),tT=i(6606),eT=i(4194),iT=i(6228),oT=i(62),rT=i(2072),sT=i(9744),nT=i(25),aT=i(2618),lT=i(1988),cT=i(8013),hT=i(1133),dT=i(362),uT=i(6845),pT=i(6800),gT=i(1103),mT=i(4933),fT=i(7284),vT=i(2620),bT=i(2366),yT=i(7457),wT=i(2449),xT=i(2),kT=i(5697),CT=i(7069),MT=i(4716),_T=i(4740),ST=i(4557),ET=i(1868),zT=i(8647),LT=i(5127),IT=i(4816),RT=i(4009),TT=i(5104),AT=i(2830),$T=i(3093),OT=i(5029),DT=i(3514),NT=i(2142),PT=i(4999),jT=i(7523),HT=i(346),FT=i(7917),BT=i(3976),WT=i(9801),VT=i(2464),UT=i(5511),GT=i(5210),qT=i(5815),YT=i(3339),ZT=i(7472),XT=i(8811),QT=i(8548),KT=i(6880),JT=i(1840),tA=i(5547),eA=i(4788),iA=i(9467),oA=i(9187),rA=i(9217),sA=i(7897),nA=i(2644),aA=i(6204),lA=i(1472),cA=i(1247),hA=i(7406),dA=i(925),uA=i(7455),pA=i(3771),gA=i(1549),mA=i(3541),fA=i(3140),vA=i(9800),bA=i(229),yA=i(2677),wA=i(1844),xA=i(3245),kA=i(9056),CA=i(7535),MA=i(2359),_A=i(15),SA=i(5569),EA=i(2014),zA=i(1599),LA=i(6521),IA=i(232),RA=i(9745),TA=i(9594),AA=i(6979),$A=i(4494),OA=i(312),DA=i(4983),NA=i(1258),PA=i(6313),jA=i(12),HA=i(8003),FA=i(7830),BA=i(8875),WA=i(3911),VA=i(1817),UA=i(478),GA=i(2585),qA=i(6564),YA=i(2884),ZA=i(3825),XA=i(7348),QA=i(9277),KA=i(4118),JA=i(9200),t$=i(51),e$=i(2872),i$=i(4702),o$=i(9281),r$=i(1394),s$=i(7295),n$=i(2936),a$=i(3789),l$=i(3614),c$=i(4827),h$=i(9204),d$=i(9113),u$=i(4058),p$=i(9939),g$=i(1139);const m$=[pL.mw,gL.mw,mL.mw,fL.mw,vL.mw,bL.mw,yL.mw,wL.mw,kL.mw,ML.mw,CL.mw,_L.mw,SL.mw,EL.mw,zL.mw,LL.mw,IL.mw,RL.mw,TL.mw,AL.mw,$L.mw,OL.mw,DL.mw,NL.mw,PL.mw,jL.mw,HL.mw,FL.mw,BL.mw,VL.mw,UL.mw,GL.mw,qL.mw,YL.mw,ZL.mw,XL.mw,QL.mw,KL.mw,JL.mw,tI.mw,eI.mw,iI.mw,rI.mw,oI.mw,sI.mw,nI.mw,aI.mw,lI.mw,cI.mw,hI.mw,dI.mw,uI.mw,pI.mw,gI.mw,mI.mw,fI.mw,bI.mw,yI.mw,wI.mw,xI.mw,kI.mw,CI.mw,MI.mw,_I.mw,SI.mw,EI.mw,zI.mw,LI.mw,II.mw,RI.mw,TI.mw,AI.mw,$I.mw,OI.mw,DI.mw,vI.mw,NI.mw,PI.mw,jI.mw,HI.mw,FI.mw,BI.mw,WI.mw,VI.mw,UI.mw,GI.mw,qI.mw,YI.mw,ZI.mw,XI.mw,QI.mw,KI.mw,JI.mw,tR.mw,eR.mw,iR.mw,oR.mw,rR.mw,sR.mw,nR.mw,aR.mw,lR.mw,cR.mw,hR.mw,dR.mw,uR.mw,pR.mw,gR.mw,mR.mw,fR.mw,vR.mw,bR.mw,yR.mw,wR.mw,xR.mw,kR.mw,CR.mw,WL.mw,MR.mw,_R.mw,SR.mw,ER.mw,zR.mw,LR.mw,IR.mw,RR.mw,TR.mw,AR.mw,$R.mw,OR.mw,DR.mw,NR.mw,PR.mw,xL.mw,jR.mw,HR.mw],f$=[FR.mw,BR.mw,WR.mw,VR.mw,UR.mw,GR.mw,qR.mw,YR.mw,XR.mw,KR.mw,QR.mw,tT.mw,JR.mw,eT.mw,iT.mw,oT.mw,rT.mw,sT.mw,nT.mw,aT.mw,lT.mw,cT.mw,gT.mw,mT.mw,fT.mw,vT.mw,bT.mw,yT.mw,wT.mw,kT.mw,CT.mw,MT.mw,LT.mw,IT.mw,RT.mw,TT.mw,AT.mw,$T.mw,OT.mw,DT.mw,hT.mw,dT.mw,pT.mw,uT.mw,NT.mw,PT.mw,jT.mw,HT.mw,FT.mw,BT.mw,WT.mw,VT.mw,_T.mw,ST.mw,ET.mw,zT.mw,GT.mw,qT.mw,YT.mw,ZT.mw,XT.mw,QT.mw,KT.mw,JT.mw,tA.mw,eA.mw,iA.mw,oA.mw,rA.mw,sA.mw,nA.mw,aA.mw,lA.mw,cA.mw,hA.mw,UT.mw,dA.mw,uA.mw,pA.mw,gA.mw,mA.mw,fA.mw,vA.mw,bA.mw,yA.mw,wA.mw,xA.mw,kA.mw,CA.mw,MA.mw,_A.mw,SA.mw,EA.mw,zA.mw,LA.mw,IA.mw,RA.mw,TA.mw,AA.mw,$A.mw,OA.mw,DA.mw,NA.mw,PA.mw,jA.mw,HA.mw,FA.mw,BA.mw,WA.mw,VA.mw,UA.mw,GA.mw,qA.mw,YA.mw,ZA.mw,XA.mw,QA.mw,xT.mw,KA.mw,JA.mw,t$.mw,e$.mw,i$.mw,o$.mw,r$.mw,s$.mw,n$.mw,a$.mw,l$.mw,c$.mw,h$.mw,d$.mw,u$.mw,ZR.mw,p$.mw,g$.mw],v$={xlsx:F,charts:B},b$={name:"@omegagrid/bundle",version:"0.9.54"};Wa().activate("light"),Ad.styleDefault="fal",$d.add(m$),$d.add(f$)})(),window.Omegagrid=o})();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@omegagrid/bundle",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.54",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"description": "Distribution package for Omegagrid library",
|
|
6
6
|
"main": "omegagrid.js",
|
|
@@ -19,23 +19,23 @@
|
|
|
19
19
|
"@fortawesome/fontawesome-svg-core": "^7.0.1",
|
|
20
20
|
"@fortawesome/pro-light-svg-icons": "^7.0.1",
|
|
21
21
|
"@fortawesome/pro-solid-svg-icons": "^7.0.1",
|
|
22
|
-
"@omegagrid/bucket": "^0.9.
|
|
23
|
-
"@omegagrid/calendar": "^0.9.
|
|
24
|
-
"@omegagrid/code": "^0.9.
|
|
25
|
-
"@omegagrid/commands": "^0.9.
|
|
26
|
-
"@omegagrid/core": "^0.9.
|
|
27
|
-
"@omegagrid/dialog": "^0.9.
|
|
28
|
-
"@omegagrid/editor": "^0.9.
|
|
29
|
-
"@omegagrid/form": "^0.9.
|
|
30
|
-
"@omegagrid/grid": "^0.9.
|
|
31
|
-
"@omegagrid/localize": "^0.9.
|
|
32
|
-
"@omegagrid/markdown": "^0.9.
|
|
33
|
-
"@omegagrid/plugin-charts": "^0.9.
|
|
34
|
-
"@omegagrid/plugin-xlsx": "^0.9.
|
|
35
|
-
"@omegagrid/statusbar": "^0.9.
|
|
36
|
-
"@omegagrid/tabs": "^0.9.
|
|
37
|
-
"@omegagrid/toolbar": "^0.9.
|
|
38
|
-
"@omegagrid/tree": "^0.9.
|
|
22
|
+
"@omegagrid/bucket": "^0.9.54",
|
|
23
|
+
"@omegagrid/calendar": "^0.9.54",
|
|
24
|
+
"@omegagrid/code": "^0.9.54",
|
|
25
|
+
"@omegagrid/commands": "^0.9.54",
|
|
26
|
+
"@omegagrid/core": "^0.9.54",
|
|
27
|
+
"@omegagrid/dialog": "^0.9.54",
|
|
28
|
+
"@omegagrid/editor": "^0.9.54",
|
|
29
|
+
"@omegagrid/form": "^0.9.54",
|
|
30
|
+
"@omegagrid/grid": "^0.9.54",
|
|
31
|
+
"@omegagrid/localize": "^0.9.54",
|
|
32
|
+
"@omegagrid/markdown": "^0.9.54",
|
|
33
|
+
"@omegagrid/plugin-charts": "^0.9.54",
|
|
34
|
+
"@omegagrid/plugin-xlsx": "^0.9.54",
|
|
35
|
+
"@omegagrid/statusbar": "^0.9.54",
|
|
36
|
+
"@omegagrid/tabs": "^0.9.54",
|
|
37
|
+
"@omegagrid/toolbar": "^0.9.54",
|
|
38
|
+
"@omegagrid/tree": "^0.9.54",
|
|
39
39
|
"lit": "^3.1.1"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|