@omegagrid/bundle 0.9.31 → 0.9.32
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 +2 -2
- package/package.json +18 -18
package/omegagrid.js
CHANGED
|
@@ -3700,7 +3700,7 @@
|
|
|
3700
3700
|
padding-right: 2px;
|
|
3701
3701
|
}
|
|
3702
3702
|
|
|
3703
|
-
`,Uf={enabled:!1,includeChildren:!0,includeParents:!0},Gf={enabled:!0,reversed:!1},qf={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:12,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},Yf=/^(?!.*[\\\/\*\[\]\:\?"])(.{1,31})$/;function Zf(t){return Yf.test(t)}function Xf(t){return["\\","/","*","[","]",":","?",'"'].forEach((e=>t=t.replace(new RegExp(`\\${e}`,"g"),""))),t}function Qf(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 Kf(t,e){const i=Q(e);return Q(t)?(t=t.toString().trim()).startsWith("=")?0==Qf(e,i?t.substring(1):parseFloat(t.substring(1))):t.startsWith(">=")?Qf(e,i?t.substring(2):parseFloat(t.substring(2)))>=0:t.startsWith("<=")?Qf(e,i?t.substring(2):parseFloat(t.substring(2)))<=0:t.startsWith(">")?Qf(e,i?t.substring(1):parseFloat(t.substring(1)))>0:t.startsWith("<")?Qf(e,i?t.substring(1):parseFloat(t.substring(1)))<0:0==Qf(e,i?t:isNaN(t)?t||"":parseFloat(t)):e==t}const Jf=new Map([["=",["==",1,0]],["<>",["!=",1,0]],[">",[">",1,0]],["<",["<",1,0]],[">=",[">=",1,0]],["<=",["<=",1,0]],["+",["+",2,0]],["-",["-",2,0]],["*",["*",3,0]],["/",["/",3,0]]]),tv=t=>["=",">","<",">=","<="].includes(t),ev=t=>["+","-","*","/"].includes(t),iv=t=>ev(t)||tv(t);function ov(t,e,i){switch(i){case"+":return t+e;case"-":return t-e;case"*":return t*e;case"/":return t/e;case"=":return 0==Qf(t,e);case">":return Qf(t,e)>0;case"<":return Qf(t,e)<0;case">=":return Qf(t,e)>=0;case"<=":return Qf(t,e)<=0;default:throw new Error(`Invalid operator: ${i}`)}}function rv(t,e,i){const o=Array.isArray(t),r=Array.isArray(e);if(!o&&!r)return[[ov(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:ov(n,c,i);s.push(h)}a.push(s)}return a}var sv;!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"}(sv||(sv={}));const nv=t=>t===sv.Number||t===sv.Boolean||t===sv.String||t===sv.Cell||t===sv.Variable||t===sv.Range,av=t=>t>=48&&t<=57,lv=t=>"true"===(t=t.toLowerCase())||"false"===t,cv=t=>t>=65&&t<=90||t>=97&&t<=122||t>=192&&t<=687,hv={decimalPoint:".",stringQuote:'"',sheetQuote:"'",argumentSeparator:","};class dv{constructor(t){this.options=Object.assign(hv,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(av(r)){for(l=(d?"-":"")+o,++a;a<i;)if(o=t.charAt(a),r=o.charCodeAt(0),av(r))l+=o,++a;else{if(o!==this.options.decimalPoint)break;l+=".",++a}d=!1,e.push([l,sv.Number])}else if(cv(r)||"$"==o){l=o,s=null,++a;do{if(o=t.charAt(a),r=o.charCodeAt(0),cv(r)||av(r)||"."===o||"$"===o||"_"===o)"_"==o?s=sv.Variable:av(r)&&!c&&null==s&&(s=sv.Cell),l+=o,++a,a==i&&e.push([l,s||sv.Variable]);else{if("("==o){e.push([l.toUpperCase(),sv.Function]),e.push([o,sv.OpenBracket]),++a;break}if("'"==o)e.push([l,sv.Sheet]),l="",e.push([o,sv.SheetQuote]),c=!0,++a;else if(":"==o)s=sv.Range,l+=o,++a;else{if(!c||" "!=o){if("!"==o){""!==l&&e.push([l,sv.Sheet]),e.push([o,sv.SheetSeparator]),c=!1,l="",++a;break}e.push([l,s||(lv(l)?sv.Boolean:sv.Variable)]);break}l+=o,++a}}}while(a<i)}else if(iv(o)){if("-"===o&&av(t.charCodeAt(a+1))&&(null==n||"("==n[0]||tv(n[0])||n[1]==sv.ArgumentSeparator))d=!0;else{for(l=o;tv(t.charAt(a+1));)l+=t.charAt(++a);e.push([l,sv.Operator])}++a}else if("("===o)e.push([o,sv.OpenBracket]),++a;else if(")"===o)e.push([o,sv.CloseBracket]),++a;else if("'"===o)e.push([o,sv.SheetQuote]),c=!0,++a;else if(o===this.options.argumentSeparator)e.push([o,sv.ArgumentSeparator]),++a;else if(o===this.options.stringQuote){for(h=!1,e.push([o,sv.StringQuote]),l="";++a<i;){if(o=t.charAt(a),o===this.options.stringQuote){h=!0,++a;break}l+=o}e.push([l,sv.String]),h&&e.push([this.options.stringQuote,sv.StringQuote])}else e.push([o,sv.Unknown]),++a;n=e[e.length-1]}return e}}function uv(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 pv=/(?:'?([\w\s]*)'?!)?(\$?)([a-z]*)(\$?)(\d*)(?::(\$?)([a-z]*)(\$?)(\d*))?/i;class gv{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=uv(this.c1,t,i,r);r&&(e+=this.c1+t!=s&&0!=t?t>0?1:-1:0),this.c1=s,this.r1=uv(this.r1,e,o,r),this.c2=uv(this.c2,t,i,r),this.r2=uv(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 gv(e,o,i,r,this.sheet):null}unite(t){return this.normalize(),t.normalize(),new gv(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 gv(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?vv(this.c1):"")+(0===this.r1&&this.r2===1/0?"":(this.r1Anchor?"$":"")+mv(this.r1)),i=t?(this.c2Anchor?"$":"")+(!isNaN(this.c2)&&this.c2<1/0?vv(this.c2):"")+(this.r2Anchor?"$":"")+(!isNaN(this.r2)&&this.r2<1/0?mv(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 gv(this.c1,this.r1),this.c2<1/0?new gv(this.c2,this.r1):null],[this.r2<1/0?new gv(this.c1,this.r2):null,this.r2<1/0&&this.c2<1/0?new gv(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 gv(e,t)}static fromA1(t){const e=pv.exec(t),i=new gv(e[3]?bv(e[3]):null,e[5]?fv(e[5]):null,e[7]?bv(e[7]):null,e[9]?fv(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 mv(t){return(t+1).toString()}function fv(t){return parseInt(t)-1}function vv(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 bv(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 yv(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 wv(t){return t.formula.cells.map((e=>t.cell.model.getCellByRange(e[1])))}function xv(t){let e=t;for(;Array.isArray(e);)e=e.length>0?e[0]:null;return e}function kv(t){return Array.isArray(t)?t:[[t]]}function Cv(t,e,i,o){if(!Array.isArray(t))return e(t,i,o);for(let o=0;o<t.length;o++)if(!1===Cv(t[o],e,null==i?o:i,null==i?void 0:o))return!1}gv.fromA1s=(t,e=";")=>t.split(e).map((t=>gv.fromA1(t))),gv.toA1s=(t,e=";")=>t.map((t=>t.A1)).join(e),gv.fromCoords=t=>new gv(t.c1,t.r1,t.c2,t.r2),gv.fullColumn=t=>new gv(t,0,t,1/0),gv.fullRow=t=>new gv(0,t,1/0,t);const Mv=new Set(["SUMPRODUCT","FILTER"]),_v=t=>Mv.has(t),Sv=t=>!!(t&&t.length>0&&"="==t.charAt(0)),Ev=t=>Sv(t)?t:"="+(t??""),zv=t=>Sv(t)?t.substring(1):t,Iv=["#5B97FF","#FF616B","#B77CFF","#00B02C","#FC58BE","#FF9000","#2EB0B3"],Lv=t=>Iv[t%Iv.length],Rv=new Map([["FORMULATEXT","_xlfn."],["CONCAT","_xlfn."],["INDIRECT","_xlfn."],["ISOWEEKNUM","_xlfn."],["SWITCH","_xlfn."],["XOR","_xlfn."]]);class Tv{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([sv.Cell,sv.Range].includes(e[1])){const o=(t?"'"+t+"'!":"")+e[0];this._colors.set(o,{color:Lv(this._colors.size),address:e[0],sheet:t,type:e[1],tokenIndex:i}),t=null}else e[1]==sv.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(![sv.Cell,sv.Range].includes(e[1]))return-1;if(0==t||this._tokens[t-1][1]!=sv.SheetSeparator)return-1;let i=t-2;for(;i>=0;){if(this._tokens[i][1]==sv.Sheet)return i;i--}return-1}removeSheetToken(t){if(this._tokens[t][1]!=sv.Sheet&&(t=this.findSheetTokenIndex(t)),t>-1){t>0&&this._tokens[t-1][1]==sv.SheetQuote&&t--;let e=t;for(;e<this._tokens.length&&[sv.SheetSeparator,sv.SheetQuote,sv.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==sv.Sheet&&/\s/.test(e)?(o.push([this.tokenizer.options.sheetQuote,sv.SheetQuote]),o.push([e,sv.Sheet]),o.push([this.tokenizer.options.sheetQuote,sv.SheetQuote])):o.push([e,i]),o.push(["!",sv.SheetSeparator]),this._tokens.splice(t,0,...o),o.length}clone(){return new Tv(this.createFormulaString(),this.tokenizer)}updateDependecies(){let t;this._variables=[],this._cells=[],this._ranges=[],this._tokens.forEach(((e,i)=>{switch(e[1]){case sv.Sheet:t=e[0];break;case sv.Variable:this._variables.push([i,e[0],t]),t=void 0;break;case sv.Cell:this._cells.push([i,gv.fromA1(e[0]),t]),t=void 0;break;case sv.Range:this._ranges.push([i,gv.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 sv.SheetQuote:n+="'";break;case sv.SheetSeparator:n+="!";break;case sv.Sheet:r=o[0],n+=t?`<span style="font-style:italic">${r}</span>`:r;break;case sv.Variable:n+=o[0];break;case sv.Range:case sv.Cell:s=(r?"'"+r+"'!":"")+o[0],n+=t?`<span style="color:${this.getNamedColor(s)}">${o[0]}</span>`:o[0],r=null;break;case sv.StringQuote:n+=i.stringQuote;break;case sv.String:n+=o[0].replace(new RegExp(i.stringQuote,"g"),"\\"+i.stringQuote);break;case sv.ArgumentSeparator:n+=i.argumentSeparator;break;case sv.Function:n+=(e?(a=o[0],Rv.get(a)??""):"")+o[0];break;case sv.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 sv.Sheet:l=o[0];break;case sv.Cell:case sv.Range:t.push({t:o[0],tt:o[1],s:l}),l=null;break;case sv.Number:case sv.String:case sv.Boolean:case sv.Variable:t.push({t:o[0],tt:o[1]});break;case sv.Operator:for(0==t.length&&t.push({t:"",tt:sv.Operand}),s=Jf.get(o[0]);e.length>0&&(n=Jf.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 sv.Function:case sv.OpenBracket:e.push(o);break;case sv.ArgumentSeparator:for(;e.length>0&&(r=e[e.length-1],![sv.OpenBracket,sv.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 sv.CloseBracket:for(a=[];e.length>0&&e[e.length-1][1]!==sv.OpenBracket;)r=e.pop(),r[1]==sv.Operator?a.push({t:r[0],tt:r[1],c:[t.pop(),t.pop()].reverse()}):r[1]==sv.ArgumentSeparator&&t.length>0&&a.push(t.pop());e.pop(),e.length>0&&e[e.length-1][1]===sv.Function?(r=e.pop(),a=a.reverse(),t.length>0&&i[c-1][1]!==sv.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 sv.Range:return"t.rn('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case sv.Cell:return"t.cl('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case sv.Operand:return"t.cl()";case sv.Variable:return i||e?.tt===sv.Function?"t.nr('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")":"t.nv('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case sv.String:return"'"+t.t.replace(/'/g,"\\'")+"'";case sv.Boolean:return"T"==t.t[0].toUpperCase()?"1":"0";case sv.Function:return o=t.c.map((e=>this.createExpressionJSCode(e,t,i||_v(t.t)))),"t.fn('"+t.t+"').call(ctx"+(o.length>0?","+o.join(","):"")+")";case sv.Operator:return i?(o=t.c.map((e=>this.createExpressionJSCode(e,t,i||_v(t.t)))),"t.op("+o[0]+","+o[1]+",'"+t.t+"')"):Jf.has(t.t)?"("+t.c.map((e=>this.createExpressionJSCode(e,t,i))).join(Jf.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]==sv.Sheet&&o[0]==t&&(o[0]=e,i=!0)})),i}}function Av(t,e){return e&&(t=ur(this.cell.model.options.locale,vr(e,"d"),!1)(t)),null==t?"":t.toString()}function Ov(t,e){return(t=null==t?"":t.toString()).substring(0,e)}function $v(t,e){return(t=null==t?"":t.toString()).substring(Math.max(0,t.length-e),t.length)}function Dv(t,e,i){return(t=null==t?"":t.toString()).substring(e,e+i)}function Nv(...t){let e="";return Cv(t,(t=>e+=null==t?"":t.toString())),e}function Pv(...t){return Nv(...t)}function jv(t){return(t=null==t?"":t.toString()).length}function Hv(t){return(t=null==t?"":t.toString()).toLowerCase()}function Fv(t){return(t=null==t?"":t.toString()).toUpperCase()}function Bv(t){return t instanceof Date?t:Q(t)?Yo(t,Eo()):rr(t)}function Wv(t){return tt(t)?t:or(t instanceof Date?t:Yo(t,Eo()))}function Vv(t){return Q(t)?Wv(t):t}function Uv(t,e){const i=Bv(t).getDay();switch(e){case 2:return i;case 3:return i-1;default:return i%7+1}}function Gv(t,e,i){return sr(Wv(xv(t)),e)}function qv(){return or(ne(new Date))}function Yv(t){return null==(t=xv(t))||""===t}function Zv(t,e,i){return or(new Date(t,e-1,i))}function Xv(t){return Bv(t).getFullYear()}function Qv(t){return Bv(t).getMonth()+1}function Kv(t){return Bv(t).getDate()}function Jv(t,e){const i=Bv(t);return i.setMonth(i.getMonth()+e+1),i.setDate(0),or(i)}function tb(t){return xi(Bv(t))}function eb(t){return Math.acos(t)}function ib(t){return Math.acosh(t)}function ob(t){return Math.PI/2-Math.atan(t)}function rb(t){return.5*Math.log((t+1)/(t-1))}function sb(t){return Math.asin(t)}function nb(t){return Math.asinh(t)}function ab(t){return Math.atan(t)}function lb(t){return Math.atanh(t)}function cb(t){return Math.cos(t)}function hb(t){return Math.cosh(t)}function db(t){return 1/Math.tan(t)}function ub(t){return 1/Math.tanh(t)}function pb(t){return 1/Math.sin(t)}function gb(t){return 1/Math.sinh(t)}function mb(t){return 180*t/Math.PI}function fb(){return Math.PI}function vb(t){return 1/Math.cos(t)}function bb(t){return 1/Math.cosh(t)}function yb(t){return Math.sin(t)}function wb(t){return Math.sinh(t)}function xb(t){return Math.tan(t)}function kb(t){return Math.tanh(t)}function Cb(t){return Math.abs(t)}function Mb(t){if(t<0)throw new Error("#NUM");return Math.ceil(t)}function _b(t){return(t=Math.ceil(t))%2==0?t:t+1}function Sb(t){return Math.pow(Math.E,t)}function Eb(t){return t<0?-1:0==t?1:t*Eb(t-1)}function zb(t){return t<=0?1:t*zb(t-2)}function Ib(t){return Math.floor(t)}function Lb(t){return t%1!=0}function Rb(t){return!Lb(t)&&t%2==0}function Tb(t){return Lb(t)||t%2==1}function Ab(t){return Math.log(t)}function Ob(t,e){return Math.log(t)/Math.log(e)}function $b(t){return Math.log10(t)}function Db(t,e){return t%e}function Nb(t){return(t=Math.ceil(t))%2==0?t+1:t}function Pb(t,e){return Math.pow(t,e)}function jb(...t){let e=1;return Cv(t,(t=>e*=t||1)),e}function Hb(t,e){return Math.floor(t/e)}function Fb(t){return t*Math.PI/180}function Bb(){return Math.random()}function Wb(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 Vb(t,e){return t=Math.ceil(t),e=Math.floor(e),Math.floor(Math.random()*(e-t+1))+t}function Ub(t,e){return t.toFixed(e)}function Gb(t,e){return e=e||0,Math.floor(t*Math.pow(10,e))/Math.pow(10,e)}function qb(t,e){return e=e||0,Math.ceil(t*Math.pow(10,e))/Math.pow(10,e)}function Yb(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 Zb(t){return t<0?-1:t>0?1:0}function Xb(t){return Math.sqrt(t)}function Qb(t){return Math.sqrt(Math.PI*t)}function Kb(...t){let e=0;return Cv(t,(t=>e+=null==t?0:1)),e}function Jb(...t){let e=0;return Cv(t,(t=>e+=null==t?1:0)),e}function ty(t,e){let i=0;return Cv(t,(t=>i+=Kf(e,t)?1:0)),i}function ey(...t){let e=0;const i=new Map;return Cv(t,(t=>{i.has(t)||(i.set(t,t),++e)})),e}function iy(...t){let e=0;return Cv(t,(t=>e+=isNaN(t)||null==t||""===t?0:t)),e}function oy(t,e,i){let o=0;if(i){const r=kv(i);Cv(t,((t,i,s)=>o+=Kf(e,t)&&r[i]&&r[i][s]&&!isNaN(r[i][s])?r[i][s]:0))}else Cv(t,(t=>o+=Kf(e,t)&&!isNaN(t)?t:0));return o}function ry(t,e){let i=0;return Cv(t,(t=>i+=Kf(e,t)&&!isNaN(t)?t*t:0)),i}function sy(...t){let e=0;const i=t.shift();if(0===t.length)Cv(i,(t=>e+=isNaN(t)?0:t));else{const o=kv(t[0]);Cv(i,((t,i,r)=>e+=o[i]&&o[i][r]&&!isNaN(t)&&!isNaN(o[i][r])?t*o[i][r]:0))}return e}function ny(t,e){return t=null==t?"":t.toString(),e?e=>e==t:(t=t.toLowerCase(),e=>(e??"").toString().toLowerCase()==t)}function ay(t,e,i=1){const o=new gv(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 ly(t,e,i,o=!1){let r,s;const n=ny(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 cy(t,e,i,o=!1){let r,s;const n=ny(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 hy(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 dy(t,...e){let i=null,o=0;return Cv(e,(e=>{if(t==++o)return i=e,!1})),i}function uy(t){return(t?gv.fromA1(t).c1:this.cell.c)+1}function py(t){return(t?gv.fromA1(t).r1:this.cell.r)+1}function gy(t){return Array.isArray(t)?t[0]?.length:1}function my(t){return Array.isArray(t)?t.length:1}function fy(){const t=wv(this)[0];return t&&t.hasFormula?" "+Ev(t.formula):""}function vy(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 by(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 yy(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 wy(t,e,i,o,r){const s=wv(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 xy(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 ky=[[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]],Cy=[[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 My(t){const e=t*t;let i,o=ky[0][4]*e,r=e;for(i=0;i<3;i+=1)o=(o+ky[0][i])*e,r=(r+Cy[0][i])*e;return t*(o+ky[0][3])/(r+Cy[0][3])}function _y(...t){let e=!0;return Cv(t,(t=>{if(!t)return e=!1})),e}function Sy(...t){let e=!1;return Cv(t,(t=>{if(t)return e=!0})),e}function Ey(...t){let e=null;return Cv(t,(t=>{e=null===e?!!t:!!t!=e})),e}function zy(...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 Iy(t,e,i){return t?e:i}function Ly(t){return!t}function Ry(){return!1}function Ty(){return!0}function Ay(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 Oy=i(235),$y=i.n(Oy),Dy=i(5949),Ny=i.n(Dy);function Py(...t){let e=0,i=0;return Cv(t,(t=>{null==t||isNaN(t)||(e+=t||0,++i)})),e/i}function jy(t,e){const i=Ny()(),o=kv(t),r=kv(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 Hy(...t){const e=function(t){const e=[];return Cv(t,(t=>e.push(t))),e}(t),i=$y()(e.length,e,1);return e.reduce(((t,e)=>t+Math.abs(e-i)),0)/e.length}function Fy(...t){let e=1/0;return Cv(t,(t=>e=Math.min(e,t))),e}function By(...t){let e=-1/0;return Cv(t,(t=>e=Math.max(e,t))),e}function Wy(t,e){Object.keys(e).forEach((i=>t.set(nt(i,"_").replace(/_/g,".").toUpperCase(),e[i])))}const Vy=new Map;Wy(Vy,_),Wy(Vy,S),Wy(Vy,E),Wy(Vy,z),Wy(Vy,L),Wy(Vy,I),Wy(Vy,R);class Uy{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(gv.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=Vy.get(t);if(e)return e;throw new Error(`Function "${t}" not found`)},this.op=(t,e,i)=>rv(t,e,i)}}function Gy(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 qy(t,e,i){const o=new Tv(t.formula,t.model.calculations.tokenizer),r=[];for(let t=0;t<i;t++)r.push(Ev(o.shift({index:0,offset:1,direction:e,allSheets:!0}).createFormulaString()));return r}function Yy(t,e,i,o){const r=t.getCellMatrix(e);let s;"right"==o?s=qr(r):"down"==o?s=Gr(r):"left"==o?s=Vr(r):"up"==o&&(s=Vr(Gr(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?qy(t[t.length-1],o,a):Gy(t,a)));return"down"==o?l=Gr(l):"left"==o?l=Vr(l):"up"==o&&(l=Ur(Gr(l))),t.spillValues({cell:t.getCellByRange(i.bounds[0][0]),values:l,propertyCell:t.getCellByRange(e.bounds[0][0]),displayValues:n})}function Zy(t){return t.pattern&&"string"==typeof t.pattern&&(t.pattern=new RegExp(t.pattern)),t}function Xy(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 Qy{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?Ev(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?Zy(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=Zy(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 Ky(t){const e={};return t.split(";").forEach((t=>{const[i,o]=t.split(":");e[i]=o.trim()})),e}const Jy=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"}]]),tw=(()=>{const t=new Map;return Jy.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 ew(t){return"middle"==t?"center":t}function iw(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 ow=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=tw.get(o);return{style:(r?r.get(i):null)??"thin",color:e.length>2?iw(e[2]):"CCCCCC"}},rw=t=>{const e=Jy.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"},sw=(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=$r(o,.75);break;case"mediumGray":t.backgroundColor=$r(o,.5);break;case"lightGray":t.backgroundColor=$r(o,.25);break;case"gray125":t.backgroundColor=$r(o,.125);break;case"gray0625":t.backgroundColor=$r(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},nw=(t,e)=>(t.backgroundImage=`linear-gradient(${(e.angle??0)+90}deg,${e.stops.map((t=>`#${t.rgb} ${100*t.v}%`)).join(",")})`,t),aw=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=$t(t.sz)),t.color&&(e.color="#"+t.color),t.top&&(e.borderTop=rw(t.top)),t.right&&(e.borderRight=rw(t.right)),t.bottom&&(e.borderBottom=rw(t.bottom)),t.left&&(e.borderLeft=rw(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?sw(e,t):t.stops&&t.stops.length?nw(e,t):t.fgColor?e.backgroundColor="#"+t.fgColor:t.bgColor&&(e.backgroundColor="#"+t.bgColor),e},lw=t=>{const e=Z(t)?t:Ky(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=ow(r);break;case"borderTopColor":case"border-top-color":i.top?i.top.color=iw(r):i.top={style:"thin",color:iw(r)};break;case"borderRight":case"border-right":i.right=ow(r);break;case"borderRightColor":case"border-right-color":i.right?i.right.color=iw(r):i.right={style:"thin",color:iw(r)};break;case"borderBottom":case"border-bottom":i.bottom=ow(r);break;case"borderBottomColor":case"border-bottom-color":i.bottom?i.bottom.color=iw(r):i.bottom={style:"thin",color:iw(r)};break;case"borderLeft":case"border-left":i.left=ow(r);break;case"borderLeftColor":case"border-left-color":i.left?i.left.color=iw(r):i.left={style:"thin",color:iw(r)};break;case"border":o=ow(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=ew(r);break;case"whiteSpace":case"white-space":i.alignment=i.alignment||{},i.alignment.wrapText=r&&"nowrap"!=r;break;case"color":i.color=iw(r);break;case"background":case"backgroundColor":i.fgColor=iw(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},cw={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):or(Yo(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?or(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},hw=new Map;class dw extends Qy{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&&Sv(t.toString()))this._value=void 0,this.formula=t;else{let e=cw[this.type](t,this);Xy(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=cw[this.type](this.model.calculations.evaluate(this),this),this._evaluated=!0,this._value}get value2(){return this.hasFormula?Ev(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?ur(o,i,r):this.model.options.numberFormatter;if("g"==e){if(null!=i)return ur(o,i,r);if(tt(s))return this.model.options.numberFormatter}else{if("t"==e)return null==i?null:ur(o,i,!1);if("d"==e)return i?Zo(o,i):this.model.options.dateFormatter;if("s"==e&&this.editorContent)return(t=>{if(t=t||null,!hw.has(t))if(t){const e=t.reduce(((t,e)=>t.set(e.k,e.v)),new Map);hw.set(t,(t=>e.has(t)?e.get(t):t))}else hw.set(t,(t=>t));return hw.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 gv.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=aw(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=aw(i)}validate(){return!this.validation||Xy(this,this.value)}toString(){return this.address}}const uw={property:"value",enabled:!0};class pw extends(Lr(Qy)){get comparer(){return this._comparer}set comparer(t){this._comparer=t}get filter(){return this._filter??(this.model.options.filters?.enabled?uw:{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 vv(this.index)}get range(){return new gv(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?uw:!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 gw;!function(t){t[t.Asc=1]="Asc",t[t.Desc=-1]="Desc"}(gw||(gw={}));const mw={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},fw={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},vw=(t,e)=>t.origIndex-e.origIndex;class bw{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(),Er().info(`sorting applied: ${JSON.stringify(this.settings)}`))}constructor(t,e=[]){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==gw.Desc&&null===e?(this.settings.splice(this.colMap.get(t),1),o=null):o?(o.ord=gw.Desc,this.settings.splice(this.colMap.get(t),1)):o={c:t,ord:gw.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==gw.Asc?i.comparer:(t,e)=>-i.comparer(t,e):e.ord==gw.Asc?mw[i.type??"t"]:fw[i.type??"t"]:(Er().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(vw),this.model.indexRowsByTree()}persistSort(){this.model.rows.forEach(((t,e)=>t.origIndex=e))}}class yw{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=Zo("en-US")(this.date,"yyyy-MM-dd HH:mm:ss")),t}}class ww{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 yw?t:new yw(t)))||[]),this.cleanCell(t)},e&&this.populate(e)}populate(t){t.forEach((t=>{const e=t.a1||new gv(t.c,t.r).A1;this._commentMap.has(e)||this._commentMap.set(e,[]),this._commentMap.get(e).push(new yw(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=gv.fromA1(e);i.shift(t),i.A1!=e&&(this._commentMap.set(i.A1,this._commentMap.get(e)),this._commentMap.delete(e))}))}}function xw(t,e,i){t.forEach((t=>t.forEach((t=>{t[1]==e&&(t[1]=i)}))))}class kw{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=gv.fromA1(t).removeAnchors(),r=gv.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)=>{gv.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)),xw(this._cellDependants,t,e),xw(this._cellDependencies,t,e),xw(this._rangeDependants,t,e),xw(this._rangeDependencies,t,e)}}class Cw{get dependencies(){return this._dependencies}constructor(t,e){this.model=t,this._dependencies=new kw(t,e)}}function Mw(t){return t instanceof RangeError?"Maximum call stack size exceeded"==t.message?"infinite loop":t.message:t.toString()}class _w extends Cw{get tokenizer(){return this._tokenizer}get formulas(){return this._formulas}constructor(t){super(t,"calculations"),this._tokenizer=new dv,this._formulas=new Map,this.context=new Uy(t)}createFormula(t){const e=new Tv(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 Tv(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:Mw(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 Sw="#ff0000",Ew="#fcd53f",zw="#00bb5e",Iw="#555555",Lw=new Map([["3Arrows",[{icon:["fas","down"],color:Sw},{icon:["fas","right"],color:Ew},{icon:["fas","up"],color:zw}]],["3ArrowsGray",[{icon:["fas","down"],color:Iw},{icon:["fas","right"],color:Iw},{icon:["fas","up"],color:Iw}]],["3Flags",[{icon:["fas","flag-pennant"],color:Sw},{icon:["fas","flag-pennant"],color:Ew},{icon:["fas","flag-pennant"],color:zw}]],["3TrafficLights1",[{icon:["fas","circle"],color:Sw},{icon:["fas","circle"],color:Ew},{icon:["fas","circle"],color:zw}]],["3TrafficLights2",[{icon:["fas","square-o"],color:Sw},{icon:["fas","square-o"],color:Ew},{icon:["fas","square-o"],color:zw}]],["3Signs",[{icon:["fas","square"],rotation:45,color:Sw},{icon:["fas","triangle"],color:Ew},{icon:["fas","circle"],color:zw}]],["3Symbols",[{icon:["fas","circle-xmark"],color:Sw},{icon:["fas","circle-exclamation"],color:Ew},{icon:["fas","circle-check"],color:zw}]],["3Symbols2",[{icon:["fas","xmark"],color:Sw},{icon:["fas","exclamation"],color:Ew},{icon:["fas","check"],color:zw}]],["3Stars",[{icon:["fal","star"],color:Ew},{icon:["fas","star-half-stroke"],color:Ew},{icon:["fas","star"],color:Ew}]],["3Triangles",[{icon:"caret-down",color:Sw},{icon:"dash",color:Ew},{icon:"caret-up",color:zw}]],["4Arrows",[{icon:["fas","down"],color:Sw},{icon:["fas","down-right"],color:Ew},{icon:["fas","up-right"],color:Ew},{icon:["fas","up"],color:zw}]],["4ArrowsGray",[{icon:["fas","down"],color:Iw},{icon:["fas","down-right"],color:Iw},{icon:["fas","up-right"],color:Iw},{icon:["fas","up"],color:Iw}]],["4RedToBlack",[{icon:["fas","circle"],color:"#000000"},{icon:["fas","circle"],color:"#b1b1b1"},{icon:["fas","circle"],color:"#edb2a3"},{icon:["fas","circle"],color:Sw}]],["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:Sw},{icon:["fas","circle"],color:Ew},{icon:["fas","circle"],color:zw}]],["5Arrows",[{icon:["fas","down"],color:Sw},{icon:["fas","down-right"],color:Ew},{icon:["fas","right"],color:Ew},{icon:["fas","up-right"],color:Ew},{icon:["fas","up"],color:zw}]],["5ArrowsGray",[{icon:["fas","down"],color:Iw},{icon:["fas","down-right"],color:Iw},{icon:["fas","right"],color:Iw},{icon:["fas","up-right"],color:Iw},{icon:["fas","up"],color:Iw}]],["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"}]]]),Rw=(t,e)=>{const i=Lw.get(t);return i?i[e]:null};class Tw extends Cw{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){Er().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?Pr("#"+e.cf.cmid.color,"#"+e.cf.cmax.color,2*(n-.5)):Pr("#"+e.cf.cmin.color,"#"+e.cf.cmid.color,2*n);else{if(!e.cf.cmin?.color||!e.cf.cmax?.color)return null;s=Pr("#"+e.cf.cmin.color,"#"+e.cf.cmax.color,n)}return{color:jr(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 Tv(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||Hr(jr(Fr(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:Rw(e.cf.v,t)}}else if("num"===n.t&&i>=n.v)return{icon:Rw(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){Er().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 Bw(e.intersect(this.model.gridRange))){const e=i.A1;"formula"===t.type&&(t.firstCell||(t.firstCell=i,t.formula=t.condition?new Tv(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:gv.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:gv.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 Aw=(t,e)=>{const i=new RegExp(`${ut(t)}`,"ig");return t=>(i.lastIndex=0,i.test(ct((t[e]??"").toString())))},Ow=(t,e)=>i=>!!i[e]===t,$w=(t,e)=>{const i=t.map((t=>t.key?.toString()));return t=>null!=t[e]&&i.includes(t[e].toString())},Dw=(t,e)=>t=>!1,Nw=(t,e,i)=>(i=i??"value","b"===t?Ow(e,i):"s"===t&&Array.isArray(e)?$w(e,"value"):"s"===t?Aw(e?.toString(),"formattedValue"):"m"===t&&Array.isArray(e)?Dw(e,i):Aw(e?.toString(),"d"===t?"formattedValue":i));class Pw extends Event{constructor(){super("filter",{bubbles:!1,cancelable:!0,composed:!0})}}class jw 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(),Er().info(`filtering applied: ${JSON.stringify(this.settings)}`))}constructor(t,e=[]){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 Pw)}applyFilter(t=!0){const e=[];this.settings.forEach((t=>{const i=this.model.columns[t.c];e.push({c:t.c,matcher:Nw(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=zr.Matched,o&&t.walkUp((t=>{if(s.has(t.index)&&t.filterState>0)return!1;t.filterState=zr.ChildMatched,s.add(t.index)})),r&&t.walk((t=>{if(s.has(t.index)&&t.filterState>0)return!1;t.filterState=zr.ParentMatched,s.add(t.index)}))):n||(t.filterState=zr.Filtered),s.add(t.index)})),this.model.indexRows(),t&&this.dispatchEvent(new Pw)}resetFilter(t=!0){this.settings=[],this.colMap.clear(),this.model.rows.forEach((t=>t.filterState=zr.Matched)),this.model.indexRows(),t&&this.dispatchEvent(new Pw)}}class Hw extends Cw{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(gv.fromA1(t.location),Array.isArray(t.data)?t.data.map((t=>[gv.fromA1(t)])):t.data.split(",").map((t=>[gv.fromA1(t)])),ot({},qf.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 gv(o,e.r1).A1,[t,i.map((([t,i])=>[new gv(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 gv(e.c1,o).A1,[t,i.map((([t,i])=>[new gv(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(qf.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 Fw extends gv{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 Bw extends gv{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 gv(this.c+this.c1,this.r+this.r1)})}}class Ww extends gv{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 Vw{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)?gv.fromCoords(e):gv.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 Uw(t,e=null){const i=ot({},qf.DEFAULT_OPTIONS,e,is(t,e));return i.numberFormat?i.numberFormatter=ur(i.formatLocale,i.numberFormat):i.numberFormatter||(i.numberFormatter=ur(i.formatLocale)),i.dateFormat?i.dateFormatter=Zo(i.formatLocale,i.dateFormat):i.dateFormatter||(i.dateFormatter=Zo(i.formatLocale)),i.columnSorting&&(i.sorting=i.sorting||{enabled:!0}),"boolean"==typeof i.filters&&(i.filters={enabled:i.filters}),i.filters=Object.assign({},Uf,i.filters),"boolean"==typeof i.rowTree&&(i.rowTree={enabled:i.rowTree}),i.rowTree=Object.assign({},Gf,i.rowTree),"boolean"==typeof i.columnTree&&(i.columnTree={enabled:i.columnTree}),i.columnTree=Object.assign({},Gf,i.columnTree),i.cellValidation&&(i.cellValidation=Zy(i.cellValidation)),i}class Gw extends(Lr(Qy)){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 mv(this.index)}get range(){return new gv(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 dw(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 dw(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 qw=i(4418),Yw=i.n(qw);const Zw=t=>t?"1":"0",Xw=t=>null==t?"_":t,Qw=t=>null==t?"_":t.toString(),Kw=t=>null==t?"_":JSON.stringify(t),Jw=t=>Xw(t&&t.color?t.color:"_")+Xw(t&&t.style?t.style:"_"),tx=t=>Xw(t?t.horizontal:null)+Xw(t?t.vertical:null)+Xw(t?t.horizontal:null)+Qw(t?t.indent:null)+Zw(t?t.wrapText:null)+Qw(t?t.textRotation:null),ex=t=>Yw()("s_"+Zw(t.bold)+Zw(t.italic)+Zw(t.underline)+Qw(t.sz)+Xw(t.font)+Xw(t.color)+Jw(t.top)+Jw(t.right)+Jw(t.bottom)+Jw(t.left)+Xw(t.patternType)+Xw(t.fgColor)+Xw(t.bgColor)+tx(t.alignment)+Qw(t.angle)+Kw(t.stops)+Zw(t.hidden)+Zw(t.editable)+Kw(t.cssStyle)+Kw(t.icon));function ix(t){const e={...t};return delete e.id,delete e.hash,e}class ox{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?lw(t):t,i=e.hash?e.hash:ex(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(ix(e))}duplicate(t,e){const i=this.get(t);return this.add(ix({...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 rx(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 sx(t,e){for(const i of t)if(e[i.property]!=i.value)return!1;return!0}function nx(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)sx(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 ax(t,e,i){rx(t,e,"columns",i)}function lx(t,e,i){rx(t,e,"rows",i)}function cx(t,e){nx(t,e),ax(t,e),lx(t,e)}var hx;!function(t){t[t.NONE=0]="NONE",t[t.MERGED=1]="MERGED",t[t.HIDDEN=2]="HIDDEN"}(hx||(hx={}));class dx{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)?hx.MERGED:this._hiddenCells.has(t)?hx.HIDDEN:hx.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 gv(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 gv(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 gv(t.c,t.r).A1))),s.forEach((t=>{r[o](t),this.add(t)}))}}const ux=["index","name","rows","columns","cells","options","sparklines","rules","comments","styles","names","props","tab","theme"];class px{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 dx(this),this.styles=new ox(this),this.comments=new ww(this),this.calculations=new _w(this),this.names=new Vw(this),this.sorting=new bw(this),this.filter=new jw(this),this.sparklines=new Hw(this),this.conditionalFormats=new Tw(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??Uw(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(gv.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 gv?this.getCellByRange(t):"string"==typeof t?this.getCellByA1(t):null:this.getCellByCoords(t,e||0)}createRows(t,e=new Gw(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 Gw(this,t);return s.origIndex=e+i,s.name&&this.names.set(s.name,gv.fullRow(e)),s}));let n=-1;return o?n=Rr(s,e,{reverse:this.options.rowTree.reversed}):r?n=Tr(s,e):e.children=s,r||(o=!0),[e,s,n,o]}insertRowData(t,e,i){const o=this.createRows(i,new Gw(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];lx(this.theme,this,t),nx(this.theme,this,new gv(0,t[0].index,1/0,t[t.length-1].index))}}applyTheme(t,e){if(e)for(const t of this.getInitializedCellIterator())t.invalidateStyle();cx(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 pw(this,t);return this._filter=r.hasFilter||this._filter,r.name&&this.names.set(r.name,gv.fullColumn(o)),r})),this._levelBasedColTree=e,this._maxColumnLevel=-1,this.colRoot=new pw(this,{l:-1}),e?this._maxColumnLevel=Rr(this.columns,this.colRoot,{reverse:this.options.columnTree.reversed}):i?this._maxColumnLevel=Tr(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){Er().error(`Sparkline init error: ${t}`)}if(t.names)try{this.names.populate(t.names)}catch(t){Er().error(`Named range init error: ${t}`)}if(t.rules)try{this.conditionalFormats.populate(t.rules)}catch(t){Er().error(`Conditional formats init error: ${t}`)}if(t.theme)try{this.applyTheme(t.theme),this._theme=t.theme}catch(t){Er().error(`Theme init error: ${t}`)}if(t.comments)try{this.comments.populate(t.comments)}catch(t){Er().error(`Comment init error: ${t}`)}this._properties=t.props,this.otherSourceData={};const o=new Set(ux),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==zr.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 gv(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 gv(0,0,this.columns.length-1,this.rows.length-1)}getRangeIterator(t,e=!1){return new Fw(this,e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange))}getInitializedCellIterator(){return new Fw(this,this.gridRange,!0)}getRowIterator(t,e=!1){return t=e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange),new Ww(this,t,"rows")}getColumnIterator(t,e=!1){return t=e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange),new Ww(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 pw(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 Gw(this)));return this.rows.splice(t,0,...n),this.maxRowLevel>0&&r.insertChildren(n,t-(r.index||-1)-1),this.indexRows(),this.theme&&(lx(this.theme,this,n),nx(this.theme,this,new gv(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 gv(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?Rr:Tr;this._maxRowLevel=t(this.rows,this.rowRoot,{reverse:this.options.rowTree.reversed}),this.indexRowsByTree()}rebuildColumnTree(){const t=this._levelBasedColTree?Rr:Tr;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 gx{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 px(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 px(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 mx{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 fx{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 gv(t,e,i,o),this.activeCell=new gv(0,0)}static fromRange(t){return new fx(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=gv.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 vx={...qf,CUSTOM_CLIPBOARD_TYPE:"web application/json"};class bx{constructor(t,e,i=vx.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 yx=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 wx=class extends _n{constructor(){super(),this.render=()=>sn`
|
|
3703
|
+
`,Uf={enabled:!1,includeChildren:!0,includeParents:!0},Gf={enabled:!0,reversed:!1},qf={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:12,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},Yf=/^(?!.*[\\\/\*\[\]\:\?"])(.{1,31})$/;function Zf(t){return Yf.test(t)}function Xf(t){return["\\","/","*","[","]",":","?",'"'].forEach((e=>t=t.replace(new RegExp(`\\${e}`,"g"),""))),t}function Qf(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 Kf(t,e){const i=Q(e);return Q(t)?(t=t.toString().trim()).startsWith("=")?0==Qf(e,i?t.substring(1):parseFloat(t.substring(1))):t.startsWith(">=")?Qf(e,i?t.substring(2):parseFloat(t.substring(2)))>=0:t.startsWith("<=")?Qf(e,i?t.substring(2):parseFloat(t.substring(2)))<=0:t.startsWith(">")?Qf(e,i?t.substring(1):parseFloat(t.substring(1)))>0:t.startsWith("<")?Qf(e,i?t.substring(1):parseFloat(t.substring(1)))<0:0==Qf(e,i?t:isNaN(t)?t||"":parseFloat(t)):e==t}const Jf=new Map([["=",["==",1,0]],["<>",["!=",1,0]],[">",[">",1,0]],["<",["<",1,0]],[">=",[">=",1,0]],["<=",["<=",1,0]],["+",["+",2,0]],["-",["-",2,0]],["*",["*",3,0]],["/",["/",3,0]]]),tv=t=>["=",">","<",">=","<="].includes(t),ev=t=>["+","-","*","/"].includes(t),iv=t=>ev(t)||tv(t);function ov(t,e,i){switch(i){case"+":return t+e;case"-":return t-e;case"*":return t*e;case"/":return t/e;case"=":return 0==Qf(t,e);case">":return Qf(t,e)>0;case"<":return Qf(t,e)<0;case">=":return Qf(t,e)>=0;case"<=":return Qf(t,e)<=0;default:throw new Error(`Invalid operator: ${i}`)}}function rv(t,e,i){const o=Array.isArray(t),r=Array.isArray(e);if(!o&&!r)return[[ov(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:ov(n,c,i);s.push(h)}a.push(s)}return a}var sv;!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"}(sv||(sv={}));const nv=t=>t===sv.Number||t===sv.Boolean||t===sv.String||t===sv.Cell||t===sv.Variable||t===sv.Range,av=t=>t>=48&&t<=57,lv=t=>"true"===(t=t.toLowerCase())||"false"===t,cv=t=>t>=65&&t<=90||t>=97&&t<=122||t>=192&&t<=687,hv={decimalPoint:".",stringQuote:'"',sheetQuote:"'",argumentSeparator:","};class dv{constructor(t){this.options=Object.assign(hv,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(av(r)){for(l=(d?"-":"")+o,++a;a<i;)if(o=t.charAt(a),r=o.charCodeAt(0),av(r))l+=o,++a;else{if(o!==this.options.decimalPoint)break;l+=".",++a}d=!1,e.push([l,sv.Number])}else if(cv(r)||"$"==o){l=o,s=null,++a;do{if(o=t.charAt(a),r=o.charCodeAt(0),cv(r)||av(r)||"."===o||"$"===o||"_"===o)"_"==o?s=sv.Variable:av(r)&&!c&&null==s&&(s=sv.Cell),l+=o,++a,a==i&&e.push([l,s||sv.Variable]);else{if("("==o){e.push([l.toUpperCase(),sv.Function]),e.push([o,sv.OpenBracket]),++a;break}if("'"==o)e.push([l,sv.Sheet]),l="",e.push([o,sv.SheetQuote]),c=!0,++a;else if(":"==o)s=sv.Range,l+=o,++a;else{if(!c||" "!=o){if("!"==o){""!==l&&e.push([l,sv.Sheet]),e.push([o,sv.SheetSeparator]),c=!1,l="",++a;break}e.push([l,s||(lv(l)?sv.Boolean:sv.Variable)]);break}l+=o,++a}}}while(a<i)}else if(iv(o)){if("-"===o&&av(t.charCodeAt(a+1))&&(null==n||"("==n[0]||tv(n[0])||n[1]==sv.ArgumentSeparator))d=!0;else{for(l=o;tv(t.charAt(a+1));)l+=t.charAt(++a);e.push([l,sv.Operator])}++a}else if("("===o)e.push([o,sv.OpenBracket]),++a;else if(")"===o)e.push([o,sv.CloseBracket]),++a;else if("'"===o)e.push([o,sv.SheetQuote]),c=!0,++a;else if(o===this.options.argumentSeparator)e.push([o,sv.ArgumentSeparator]),++a;else if(o===this.options.stringQuote){for(h=!1,e.push([o,sv.StringQuote]),l="";++a<i;){if(o=t.charAt(a),o===this.options.stringQuote){h=!0,++a;break}l+=o}e.push([l,sv.String]),h&&e.push([this.options.stringQuote,sv.StringQuote])}else e.push([o,sv.Unknown]),++a;n=e[e.length-1]}return e}}function uv(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 pv=/(?:'?([\w\s]*)'?!)?(\$?)([a-z]*)(\$?)(\d*)(?::(\$?)([a-z]*)(\$?)(\d*))?/i;class gv{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=uv(this.c1,t,i,r);r&&(e+=this.c1+t!=s&&0!=t?t>0?1:-1:0),this.c1=s,this.r1=uv(this.r1,e,o,r),this.c2=uv(this.c2,t,i,r),this.r2=uv(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 gv(e,o,i,r,this.sheet):null}unite(t){return this.normalize(),t.normalize(),new gv(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 gv(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?vv(this.c1):"")+(0===this.r1&&this.r2===1/0?"":(this.r1Anchor?"$":"")+mv(this.r1)),i=t?(this.c2Anchor?"$":"")+(!isNaN(this.c2)&&this.c2<1/0?vv(this.c2):"")+(this.r2Anchor?"$":"")+(!isNaN(this.r2)&&this.r2<1/0?mv(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 gv(this.c1,this.r1),this.c2<1/0?new gv(this.c2,this.r1):null],[this.r2<1/0?new gv(this.c1,this.r2):null,this.r2<1/0&&this.c2<1/0?new gv(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 gv(e,t)}static fromA1(t){const e=pv.exec(t),i=new gv(e[3]?bv(e[3]):null,e[5]?fv(e[5]):null,e[7]?bv(e[7]):null,e[9]?fv(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 mv(t){return(t+1).toString()}function fv(t){return parseInt(t)-1}function vv(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 bv(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 yv(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 wv(t){return t.formula.cells.map((e=>t.cell.model.getCellByRange(e[1])))}function xv(t){let e=t;for(;Array.isArray(e);)e=e.length>0?e[0]:null;return e}function kv(t){return Array.isArray(t)?t:[[t]]}function Cv(t,e,i,o){if(!Array.isArray(t))return e(t,i,o);for(let o=0;o<t.length;o++)if(!1===Cv(t[o],e,null==i?o:i,null==i?void 0:o))return!1}gv.fromA1s=(t,e=";")=>t.split(e).map((t=>gv.fromA1(t))),gv.toA1s=(t,e=";")=>t.map((t=>t.A1)).join(e),gv.fromCoords=t=>new gv(t.c1,t.r1,t.c2,t.r2),gv.fullColumn=t=>new gv(t,0,t,1/0),gv.fullRow=t=>new gv(0,t,1/0,t);const Mv=new Set(["SUMPRODUCT","FILTER"]),_v=t=>Mv.has(t),Sv=t=>!!(t&&t.length>0&&"="==t.charAt(0)),Ev=t=>Sv(t)?t:"="+(t??""),zv=t=>Sv(t)?t.substring(1):t,Iv=["#5B97FF","#FF616B","#B77CFF","#00B02C","#FC58BE","#FF9000","#2EB0B3"],Lv=t=>Iv[t%Iv.length],Rv=new Map([["FORMULATEXT","_xlfn."],["CONCAT","_xlfn."],["INDIRECT","_xlfn."],["ISOWEEKNUM","_xlfn."],["SWITCH","_xlfn."],["XOR","_xlfn."]]);class Tv{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([sv.Cell,sv.Range].includes(e[1])){const o=(t?"'"+t+"'!":"")+e[0];this._colors.set(o,{color:Lv(this._colors.size),address:e[0],sheet:t,type:e[1],tokenIndex:i}),t=null}else e[1]==sv.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(![sv.Cell,sv.Range].includes(e[1]))return-1;if(0==t||this._tokens[t-1][1]!=sv.SheetSeparator)return-1;let i=t-2;for(;i>=0;){if(this._tokens[i][1]==sv.Sheet)return i;i--}return-1}removeSheetToken(t){if(this._tokens[t][1]!=sv.Sheet&&(t=this.findSheetTokenIndex(t)),t>-1){t>0&&this._tokens[t-1][1]==sv.SheetQuote&&t--;let e=t;for(;e<this._tokens.length&&[sv.SheetSeparator,sv.SheetQuote,sv.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==sv.Sheet&&/\s/.test(e)?(o.push([this.tokenizer.options.sheetQuote,sv.SheetQuote]),o.push([e,sv.Sheet]),o.push([this.tokenizer.options.sheetQuote,sv.SheetQuote])):o.push([e,i]),o.push(["!",sv.SheetSeparator]),this._tokens.splice(t,0,...o),o.length}clone(){return new Tv(this.createFormulaString(),this.tokenizer)}updateDependecies(){let t;this._variables=[],this._cells=[],this._ranges=[],this._tokens.forEach(((e,i)=>{switch(e[1]){case sv.Sheet:t=e[0];break;case sv.Variable:this._variables.push([i,e[0],t]),t=void 0;break;case sv.Cell:this._cells.push([i,gv.fromA1(e[0]),t]),t=void 0;break;case sv.Range:this._ranges.push([i,gv.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 sv.SheetQuote:n+="'";break;case sv.SheetSeparator:n+="!";break;case sv.Sheet:r=o[0],n+=t?`<span style="font-style:italic">${r}</span>`:r;break;case sv.Variable:n+=o[0];break;case sv.Range:case sv.Cell:s=(r?"'"+r+"'!":"")+o[0],n+=t?`<span style="color:${this.getNamedColor(s)}">${o[0]}</span>`:o[0],r=null;break;case sv.StringQuote:n+=i.stringQuote;break;case sv.String:n+=o[0].replace(new RegExp(i.stringQuote,"g"),"\\"+i.stringQuote);break;case sv.ArgumentSeparator:n+=i.argumentSeparator;break;case sv.Function:n+=(e?(a=o[0],Rv.get(a)??""):"")+o[0];break;case sv.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 sv.Sheet:l=o[0];break;case sv.Cell:case sv.Range:t.push({t:o[0],tt:o[1],s:l}),l=null;break;case sv.Number:case sv.String:case sv.Boolean:case sv.Variable:t.push({t:o[0],tt:o[1]});break;case sv.Operator:for(0==t.length&&t.push({t:"",tt:sv.Operand}),s=Jf.get(o[0]);e.length>0&&(n=Jf.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 sv.Function:case sv.OpenBracket:e.push(o);break;case sv.ArgumentSeparator:for(;e.length>0&&(r=e[e.length-1],![sv.OpenBracket,sv.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 sv.CloseBracket:for(a=[];e.length>0&&e[e.length-1][1]!==sv.OpenBracket;)r=e.pop(),r[1]==sv.Operator?a.push({t:r[0],tt:r[1],c:[t.pop(),t.pop()].reverse()}):r[1]==sv.ArgumentSeparator&&t.length>0&&a.push(t.pop());e.pop(),e.length>0&&e[e.length-1][1]===sv.Function?(r=e.pop(),a=a.reverse(),t.length>0&&i[c-1][1]!==sv.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 sv.Range:return"t.rn('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case sv.Cell:return"t.cl('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case sv.Operand:return"t.cl()";case sv.Variable:return i||e?.tt===sv.Function?"t.nr('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")":"t.nv('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case sv.String:return"'"+t.t.replace(/'/g,"\\'")+"'";case sv.Boolean:return"T"==t.t[0].toUpperCase()?"1":"0";case sv.Function:return o=t.c.map((e=>this.createExpressionJSCode(e,t,i||_v(t.t)))),"t.fn('"+t.t+"').call(ctx"+(o.length>0?","+o.join(","):"")+")";case sv.Operator:return i?(o=t.c.map((e=>this.createExpressionJSCode(e,t,i||_v(t.t)))),"t.op("+o[0]+","+o[1]+",'"+t.t+"')"):Jf.has(t.t)?"("+t.c.map((e=>this.createExpressionJSCode(e,t,i))).join(Jf.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]==sv.Sheet&&o[0]==t&&(o[0]=e,i=!0)})),i}}function Av(t,e){return e&&(t=ur(this.cell.model.options.locale,vr(e,"d"),!1)(t)),null==t?"":t.toString()}function Ov(t,e){return(t=null==t?"":t.toString()).substring(0,e)}function $v(t,e){return(t=null==t?"":t.toString()).substring(Math.max(0,t.length-e),t.length)}function Dv(t,e,i){return(t=null==t?"":t.toString()).substring(e,e+i)}function Nv(...t){let e="";return Cv(t,(t=>e+=null==t?"":t.toString())),e}function Pv(...t){return Nv(...t)}function jv(t){return(t=null==t?"":t.toString()).length}function Hv(t){return(t=null==t?"":t.toString()).toLowerCase()}function Fv(t){return(t=null==t?"":t.toString()).toUpperCase()}function Bv(t){return t instanceof Date?t:Q(t)?Yo(t,Eo()):rr(t)}function Wv(t){return tt(t)?t:or(t instanceof Date?t:Yo(t,Eo()))}function Vv(t){return Q(t)?Wv(t):t}function Uv(t,e){const i=Bv(t).getDay();switch(e){case 2:return i;case 3:return i-1;default:return i%7+1}}function Gv(t,e,i){return sr(Wv(xv(t)),e)}function qv(){return or(ne(new Date))}function Yv(t){return null==(t=xv(t))||""===t}function Zv(t,e,i){return or(new Date(t,e-1,i))}function Xv(t){return Bv(t).getFullYear()}function Qv(t){return Bv(t).getMonth()+1}function Kv(t){return Bv(t).getDate()}function Jv(t,e){const i=Bv(t);return i.setMonth(i.getMonth()+e+1),i.setDate(0),or(i)}function tb(t){return xi(Bv(t))}function eb(t){return Math.acos(t)}function ib(t){return Math.acosh(t)}function ob(t){return Math.PI/2-Math.atan(t)}function rb(t){return.5*Math.log((t+1)/(t-1))}function sb(t){return Math.asin(t)}function nb(t){return Math.asinh(t)}function ab(t){return Math.atan(t)}function lb(t){return Math.atanh(t)}function cb(t){return Math.cos(t)}function hb(t){return Math.cosh(t)}function db(t){return 1/Math.tan(t)}function ub(t){return 1/Math.tanh(t)}function pb(t){return 1/Math.sin(t)}function gb(t){return 1/Math.sinh(t)}function mb(t){return 180*t/Math.PI}function fb(){return Math.PI}function vb(t){return 1/Math.cos(t)}function bb(t){return 1/Math.cosh(t)}function yb(t){return Math.sin(t)}function wb(t){return Math.sinh(t)}function xb(t){return Math.tan(t)}function kb(t){return Math.tanh(t)}function Cb(t){return Math.abs(t)}function Mb(t){if(t<0)throw new Error("#NUM");return Math.ceil(t)}function _b(t){return(t=Math.ceil(t))%2==0?t:t+1}function Sb(t){return Math.pow(Math.E,t)}function Eb(t){return t<0?-1:0==t?1:t*Eb(t-1)}function zb(t){return t<=0?1:t*zb(t-2)}function Ib(t){return Math.floor(t)}function Lb(t){return t%1!=0}function Rb(t){return!Lb(t)&&t%2==0}function Tb(t){return Lb(t)||t%2==1}function Ab(t){return Math.log(t)}function Ob(t,e){return Math.log(t)/Math.log(e)}function $b(t){return Math.log10(t)}function Db(t,e){return t%e}function Nb(t){return(t=Math.ceil(t))%2==0?t+1:t}function Pb(t,e){return Math.pow(t,e)}function jb(...t){let e=1;return Cv(t,(t=>e*=t||1)),e}function Hb(t,e){return Math.floor(t/e)}function Fb(t){return t*Math.PI/180}function Bb(){return Math.random()}function Wb(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 Vb(t,e){return t=Math.ceil(t),e=Math.floor(e),Math.floor(Math.random()*(e-t+1))+t}function Ub(t,e){return t.toFixed(e)}function Gb(t,e){return e=e||0,Math.floor(t*Math.pow(10,e))/Math.pow(10,e)}function qb(t,e){return e=e||0,Math.ceil(t*Math.pow(10,e))/Math.pow(10,e)}function Yb(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 Zb(t){return t<0?-1:t>0?1:0}function Xb(t){return Math.sqrt(t)}function Qb(t){return Math.sqrt(Math.PI*t)}function Kb(...t){let e=0;return Cv(t,(t=>e+=null==t?0:1)),e}function Jb(...t){let e=0;return Cv(t,(t=>e+=null==t?1:0)),e}function ty(t,e){let i=0;return Cv(t,(t=>i+=Kf(e,t)?1:0)),i}function ey(...t){let e=0;const i=new Map;return Cv(t,(t=>{i.has(t)||(i.set(t,t),++e)})),e}function iy(...t){let e=0;return Cv(t,(t=>e+=isNaN(t)||null==t||""===t?0:t)),e}function oy(t,e,i){let o=0;if(i){const r=kv(i);Cv(t,((t,i,s)=>o+=Kf(e,t)&&r[i]&&r[i][s]&&!isNaN(r[i][s])?r[i][s]:0))}else Cv(t,(t=>o+=Kf(e,t)&&!isNaN(t)?t:0));return o}function ry(t,e){let i=0;return Cv(t,(t=>i+=Kf(e,t)&&!isNaN(t)?t*t:0)),i}function sy(...t){let e=0;const i=t.shift();if(0===t.length)Cv(i,(t=>e+=isNaN(t)?0:t));else{const o=kv(t[0]);Cv(i,((t,i,r)=>e+=o[i]&&o[i][r]&&!isNaN(t)&&!isNaN(o[i][r])?t*o[i][r]:0))}return e}function ny(t,e){return t=null==t?"":t.toString(),e?e=>e==t:(t=t.toLowerCase(),e=>(e??"").toString().toLowerCase()==t)}function ay(t,e,i=1){const o=new gv(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 ly(t,e,i,o=!1){let r,s;const n=ny(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 cy(t,e,i,o=!1){let r,s;const n=ny(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 hy(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 dy(t,...e){let i=null,o=0;return Cv(e,(e=>{if(t==++o)return i=e,!1})),i}function uy(t){return(t?gv.fromA1(t).c1:this.cell.c)+1}function py(t){return(t?gv.fromA1(t).r1:this.cell.r)+1}function gy(t){return Array.isArray(t)?t[0]?.length:1}function my(t){return Array.isArray(t)?t.length:1}function fy(){const t=wv(this)[0];return t&&t.hasFormula?" "+Ev(t.formula):""}function vy(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 by(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 yy(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 wy(t,e,i,o,r){const s=wv(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 xy(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 ky=[[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]],Cy=[[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 My(t){const e=t*t;let i,o=ky[0][4]*e,r=e;for(i=0;i<3;i+=1)o=(o+ky[0][i])*e,r=(r+Cy[0][i])*e;return t*(o+ky[0][3])/(r+Cy[0][3])}function _y(...t){let e=!0;return Cv(t,(t=>{if(!t)return e=!1})),e}function Sy(...t){let e=!1;return Cv(t,(t=>{if(t)return e=!0})),e}function Ey(...t){let e=null;return Cv(t,(t=>{e=null===e?!!t:!!t!=e})),e}function zy(...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 Iy(t,e,i){return t?e:i}function Ly(t){return!t}function Ry(){return!1}function Ty(){return!0}function Ay(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 Oy=i(235),$y=i.n(Oy),Dy=i(5949),Ny=i.n(Dy);function Py(...t){let e=0,i=0;return Cv(t,(t=>{null==t||isNaN(t)||(e+=t||0,++i)})),e/i}function jy(t,e){const i=Ny()(),o=kv(t),r=kv(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 Hy(...t){const e=function(t){const e=[];return Cv(t,(t=>e.push(t))),e}(t),i=$y()(e.length,e,1);return e.reduce(((t,e)=>t+Math.abs(e-i)),0)/e.length}function Fy(...t){let e=1/0;return Cv(t,(t=>e=Math.min(e,t))),e}function By(...t){let e=-1/0;return Cv(t,(t=>e=Math.max(e,t))),e}function Wy(t,e){Object.keys(e).forEach((i=>t.set(nt(i,"_").replace(/_/g,".").toUpperCase(),e[i])))}const Vy=new Map;Wy(Vy,_),Wy(Vy,S),Wy(Vy,E),Wy(Vy,z),Wy(Vy,L),Wy(Vy,I),Wy(Vy,R);class Uy{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(gv.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=Vy.get(t);if(e)return e;throw new Error(`Function "${t}" not found`)},this.op=(t,e,i)=>rv(t,e,i)}}function Gy(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 qy(t,e,i){const o=new Tv(t.formula,t.model.calculations.tokenizer),r=[];for(let t=0;t<i;t++)r.push(Ev(o.shift({index:0,offset:1,direction:e,allSheets:!0}).createFormulaString()));return r}function Yy(t,e,i,o){const r=t.getCellMatrix(e);let s;"right"==o?s=qr(r):"down"==o?s=Gr(r):"left"==o?s=Vr(r):"up"==o&&(s=Vr(Gr(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?qy(t[t.length-1],o,a):Gy(t,a)));return"down"==o?l=Gr(l):"left"==o?l=Vr(l):"up"==o&&(l=Ur(Gr(l))),t.spillValues({cell:t.getCellByRange(i.bounds[0][0]),values:l,propertyCell:t.getCellByRange(e.bounds[0][0]),displayValues:n})}function Zy(t){return t.pattern&&"string"==typeof t.pattern&&(t.pattern=new RegExp(t.pattern)),t}function Xy(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 Qy{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?Ev(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?Zy(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=Zy(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 Ky(t){const e={};return t.split(";").forEach((t=>{const[i,o]=t.split(":");e[i]=o.trim()})),e}const Jy=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"}]]),tw=(()=>{const t=new Map;return Jy.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 ew(t){return"middle"==t?"center":t}function iw(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 ow=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=tw.get(o);return{style:(r?r.get(i):null)??"thin",color:e.length>2?iw(e[2]):"CCCCCC"}},rw=t=>{const e=Jy.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"},sw=(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=$r(o,.75);break;case"mediumGray":t.backgroundColor=$r(o,.5);break;case"lightGray":t.backgroundColor=$r(o,.25);break;case"gray125":t.backgroundColor=$r(o,.125);break;case"gray0625":t.backgroundColor=$r(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},nw=(t,e)=>(t.backgroundImage=`linear-gradient(${(e.angle??0)+90}deg,${e.stops.map((t=>`#${t.rgb} ${100*t.v}%`)).join(",")})`,t),aw=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=$t(t.sz)),t.color&&(e.color="#"+t.color),t.top&&(e.borderTop=rw(t.top)),t.right&&(e.borderRight=rw(t.right)),t.bottom&&(e.borderBottom=rw(t.bottom)),t.left&&(e.borderLeft=rw(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?sw(e,t):t.stops&&t.stops.length?nw(e,t):t.fgColor?e.backgroundColor="#"+t.fgColor:t.bgColor&&(e.backgroundColor="#"+t.bgColor),e},lw=t=>{const e=Z(t)?t:Ky(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=ow(r);break;case"borderTopColor":case"border-top-color":i.top?i.top.color=iw(r):i.top={style:"thin",color:iw(r)};break;case"borderRight":case"border-right":i.right=ow(r);break;case"borderRightColor":case"border-right-color":i.right?i.right.color=iw(r):i.right={style:"thin",color:iw(r)};break;case"borderBottom":case"border-bottom":i.bottom=ow(r);break;case"borderBottomColor":case"border-bottom-color":i.bottom?i.bottom.color=iw(r):i.bottom={style:"thin",color:iw(r)};break;case"borderLeft":case"border-left":i.left=ow(r);break;case"borderLeftColor":case"border-left-color":i.left?i.left.color=iw(r):i.left={style:"thin",color:iw(r)};break;case"border":o=ow(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=ew(r);break;case"whiteSpace":case"white-space":i.alignment=i.alignment||{},i.alignment.wrapText=r&&"nowrap"!=r;break;case"color":i.color=iw(r);break;case"background":case"backgroundColor":i.fgColor=iw(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},cw={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):or(Yo(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?or(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},hw=new Map;class dw extends Qy{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&&Sv(t.toString()))this._value=void 0,this.formula=t;else{let e=cw[this.type](t,this);Xy(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=cw[this.type](this.model.calculations.evaluate(this),this),this._evaluated=!0,this._value}get value2(){return this.hasFormula?Ev(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?ur(o,i,r):this.model.options.numberFormatter;if("g"==e){if(null!=i)return ur(o,i,r);if(tt(s))return this.model.options.numberFormatter}else{if("t"==e)return null==i?null:ur(o,i,!1);if("d"==e)return i?Zo(o,i):this.model.options.dateFormatter;if("s"==e&&this.editorContent)return(t=>{if(t=t||null,!hw.has(t))if(t){const e=t.reduce(((t,e)=>t.set(e.k,e.v)),new Map);hw.set(t,(t=>e.has(t)?e.get(t):t))}else hw.set(t,(t=>t));return hw.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 gv.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=aw(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=aw(i)}validate(){return!this.validation||Xy(this,this.value)}toString(){return this.address}}const uw={property:"value",enabled:!0};class pw extends(Lr(Qy)){get comparer(){return this._comparer}set comparer(t){this._comparer=t}get filter(){return this._filter??(this.model.options.filters?.enabled?uw:{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 vv(this.index)}get range(){return new gv(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?uw:!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 gw;!function(t){t[t.Asc=1]="Asc",t[t.Desc=-1]="Desc"}(gw||(gw={}));const mw={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},fw={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},vw=(t,e)=>t.origIndex-e.origIndex;class bw{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(),Er().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==gw.Desc&&null===e?(this.settings.splice(this.colMap.get(t),1),o=null):o?(o.ord=gw.Desc,this.settings.splice(this.colMap.get(t),1)):o={c:t,ord:gw.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==gw.Asc?i.comparer:(t,e)=>-i.comparer(t,e):e.ord==gw.Asc?mw[i.type??"t"]:fw[i.type??"t"]:(Er().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(vw),this.model.indexRowsByTree()}persistSort(){this.model.rows.forEach(((t,e)=>t.origIndex=e))}}class yw{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=Zo("en-US")(this.date,"yyyy-MM-dd HH:mm:ss")),t}}class ww{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 yw?t:new yw(t)))||[]),this.cleanCell(t)},e&&this.populate(e)}populate(t){t.forEach((t=>{const e=t.a1||new gv(t.c,t.r).A1;this._commentMap.has(e)||this._commentMap.set(e,[]),this._commentMap.get(e).push(new yw(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=gv.fromA1(e);i.shift(t),i.A1!=e&&(this._commentMap.set(i.A1,this._commentMap.get(e)),this._commentMap.delete(e))}))}}function xw(t,e,i){t.forEach((t=>t.forEach((t=>{t[1]==e&&(t[1]=i)}))))}class kw{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=gv.fromA1(t).removeAnchors(),r=gv.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)=>{gv.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)),xw(this._cellDependants,t,e),xw(this._cellDependencies,t,e),xw(this._rangeDependants,t,e),xw(this._rangeDependencies,t,e)}}class Cw{get dependencies(){return this._dependencies}constructor(t,e){this.model=t,this._dependencies=new kw(t,e)}}function Mw(t){return t instanceof RangeError?"Maximum call stack size exceeded"==t.message?"infinite loop":t.message:t.toString()}class _w extends Cw{get tokenizer(){return this._tokenizer}get formulas(){return this._formulas}constructor(t){super(t,"calculations"),this._tokenizer=new dv,this._formulas=new Map,this.context=new Uy(t)}createFormula(t){const e=new Tv(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 Tv(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:Mw(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 Sw="#ff0000",Ew="#fcd53f",zw="#00bb5e",Iw="#555555",Lw=new Map([["3Arrows",[{icon:["fas","down"],color:Sw},{icon:["fas","right"],color:Ew},{icon:["fas","up"],color:zw}]],["3ArrowsGray",[{icon:["fas","down"],color:Iw},{icon:["fas","right"],color:Iw},{icon:["fas","up"],color:Iw}]],["3Flags",[{icon:["fas","flag-pennant"],color:Sw},{icon:["fas","flag-pennant"],color:Ew},{icon:["fas","flag-pennant"],color:zw}]],["3TrafficLights1",[{icon:["fas","circle"],color:Sw},{icon:["fas","circle"],color:Ew},{icon:["fas","circle"],color:zw}]],["3TrafficLights2",[{icon:["fas","square-o"],color:Sw},{icon:["fas","square-o"],color:Ew},{icon:["fas","square-o"],color:zw}]],["3Signs",[{icon:["fas","square"],rotation:45,color:Sw},{icon:["fas","triangle"],color:Ew},{icon:["fas","circle"],color:zw}]],["3Symbols",[{icon:["fas","circle-xmark"],color:Sw},{icon:["fas","circle-exclamation"],color:Ew},{icon:["fas","circle-check"],color:zw}]],["3Symbols2",[{icon:["fas","xmark"],color:Sw},{icon:["fas","exclamation"],color:Ew},{icon:["fas","check"],color:zw}]],["3Stars",[{icon:["fal","star"],color:Ew},{icon:["fas","star-half-stroke"],color:Ew},{icon:["fas","star"],color:Ew}]],["3Triangles",[{icon:"caret-down",color:Sw},{icon:"dash",color:Ew},{icon:"caret-up",color:zw}]],["4Arrows",[{icon:["fas","down"],color:Sw},{icon:["fas","down-right"],color:Ew},{icon:["fas","up-right"],color:Ew},{icon:["fas","up"],color:zw}]],["4ArrowsGray",[{icon:["fas","down"],color:Iw},{icon:["fas","down-right"],color:Iw},{icon:["fas","up-right"],color:Iw},{icon:["fas","up"],color:Iw}]],["4RedToBlack",[{icon:["fas","circle"],color:"#000000"},{icon:["fas","circle"],color:"#b1b1b1"},{icon:["fas","circle"],color:"#edb2a3"},{icon:["fas","circle"],color:Sw}]],["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:Sw},{icon:["fas","circle"],color:Ew},{icon:["fas","circle"],color:zw}]],["5Arrows",[{icon:["fas","down"],color:Sw},{icon:["fas","down-right"],color:Ew},{icon:["fas","right"],color:Ew},{icon:["fas","up-right"],color:Ew},{icon:["fas","up"],color:zw}]],["5ArrowsGray",[{icon:["fas","down"],color:Iw},{icon:["fas","down-right"],color:Iw},{icon:["fas","right"],color:Iw},{icon:["fas","up-right"],color:Iw},{icon:["fas","up"],color:Iw}]],["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"}]]]),Rw=(t,e)=>{const i=Lw.get(t);return i?i[e]:null};class Tw extends Cw{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){Er().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?Pr("#"+e.cf.cmid.color,"#"+e.cf.cmax.color,2*(n-.5)):Pr("#"+e.cf.cmin.color,"#"+e.cf.cmid.color,2*n);else{if(!e.cf.cmin?.color||!e.cf.cmax?.color)return null;s=Pr("#"+e.cf.cmin.color,"#"+e.cf.cmax.color,n)}return{color:jr(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 Tv(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||Hr(jr(Fr(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:Rw(e.cf.v,t)}}else if("num"===n.t&&i>=n.v)return{icon:Rw(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){Er().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 Bw(e.intersect(this.model.gridRange))){const e=i.A1;"formula"===t.type&&(t.firstCell||(t.firstCell=i,t.formula=t.condition?new Tv(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:gv.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:gv.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 Aw=(t,e)=>{const i=new RegExp(`${ut(t)}`,"ig");return t=>(i.lastIndex=0,i.test(ct((t[e]??"").toString())))},Ow=(t,e)=>i=>!!i[e]===t,$w=(t,e)=>{const i=t.map((t=>t.key?.toString()));return t=>null!=t[e]&&i.includes(t[e].toString())},Dw=(t,e)=>t=>!1,Nw=(t,e,i)=>(i=i??"value","b"===t?Ow(e,i):"s"===t&&Array.isArray(e)?$w(e,"value"):"s"===t?Aw(e?.toString(),"formattedValue"):"m"===t&&Array.isArray(e)?Dw(e,i):Aw(e?.toString(),"d"===t?"formattedValue":i));class Pw extends Event{constructor(){super("filter",{bubbles:!1,cancelable:!0,composed:!0})}}class jw 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(),Er().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 Pw)}applyFilter(t=!0){const e=[];this.settings.forEach((t=>{const i=this.model.columns[t.c];e.push({c:t.c,matcher:Nw(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=zr.Matched,o&&t.walkUp((t=>{if(s.has(t.index)&&t.filterState>0)return!1;t.filterState=zr.ChildMatched,s.add(t.index)})),r&&t.walk((t=>{if(s.has(t.index)&&t.filterState>0)return!1;t.filterState=zr.ParentMatched,s.add(t.index)}))):n||(t.filterState=zr.Filtered),s.add(t.index)})),this.model.indexRows(),t&&this.dispatchEvent(new Pw)}resetFilter(t=!0){this.settings=[],this.colMap.clear(),this.model.rows.forEach((t=>t.filterState=zr.Matched)),this.model.indexRows(),t&&this.dispatchEvent(new Pw)}}class Hw extends Cw{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(gv.fromA1(t.location),Array.isArray(t.data)?t.data.map((t=>[gv.fromA1(t)])):t.data.split(",").map((t=>[gv.fromA1(t)])),ot({},qf.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 gv(o,e.r1).A1,[t,i.map((([t,i])=>[new gv(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 gv(e.c1,o).A1,[t,i.map((([t,i])=>[new gv(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(qf.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 Fw extends gv{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 Bw extends gv{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 gv(this.c+this.c1,this.r+this.r1)})}}class Ww extends gv{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 Vw{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)?gv.fromCoords(e):gv.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 Uw(t,e=null){const i=ot({},qf.DEFAULT_OPTIONS,e,is(t,e));return i.numberFormat?i.numberFormatter=ur(i.formatLocale,i.numberFormat):i.numberFormatter||(i.numberFormatter=ur(i.formatLocale)),i.dateFormat?i.dateFormatter=Zo(i.formatLocale,i.dateFormat):i.dateFormatter||(i.dateFormatter=Zo(i.formatLocale)),i.columnSorting&&(i.sorting=i.sorting||{enabled:!0}),"boolean"==typeof i.filters&&(i.filters={enabled:i.filters}),i.filters=Object.assign({},Uf,i.filters),"boolean"==typeof i.rowTree&&(i.rowTree={enabled:i.rowTree}),i.rowTree=Object.assign({},Gf,i.rowTree),"boolean"==typeof i.columnTree&&(i.columnTree={enabled:i.columnTree}),i.columnTree=Object.assign({},Gf,i.columnTree),i.cellValidation&&(i.cellValidation=Zy(i.cellValidation)),i}class Gw extends(Lr(Qy)){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 mv(this.index)}get range(){return new gv(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 dw(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 dw(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 qw=i(4418),Yw=i.n(qw);const Zw=t=>t?"1":"0",Xw=t=>null==t?"_":t,Qw=t=>null==t?"_":t.toString(),Kw=t=>null==t?"_":JSON.stringify(t),Jw=t=>Xw(t&&t.color?t.color:"_")+Xw(t&&t.style?t.style:"_"),tx=t=>Xw(t?t.horizontal:null)+Xw(t?t.vertical:null)+Xw(t?t.horizontal:null)+Qw(t?t.indent:null)+Zw(t?t.wrapText:null)+Qw(t?t.textRotation:null),ex=t=>Yw()("s_"+Zw(t.bold)+Zw(t.italic)+Zw(t.underline)+Qw(t.sz)+Xw(t.font)+Xw(t.color)+Jw(t.top)+Jw(t.right)+Jw(t.bottom)+Jw(t.left)+Xw(t.patternType)+Xw(t.fgColor)+Xw(t.bgColor)+tx(t.alignment)+Qw(t.angle)+Kw(t.stops)+Zw(t.hidden)+Zw(t.editable)+Kw(t.cssStyle)+Kw(t.icon));function ix(t){const e={...t};return delete e.id,delete e.hash,e}class ox{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?lw(t):t,i=e.hash?e.hash:ex(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(ix(e))}duplicate(t,e){const i=this.get(t);return this.add(ix({...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 rx(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 sx(t,e){for(const i of t)if(e[i.property]!=i.value)return!1;return!0}function nx(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)sx(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 ax(t,e,i){rx(t,e,"columns",i)}function lx(t,e,i){rx(t,e,"rows",i)}function cx(t,e){nx(t,e),ax(t,e),lx(t,e)}var hx;!function(t){t[t.NONE=0]="NONE",t[t.MERGED=1]="MERGED",t[t.HIDDEN=2]="HIDDEN"}(hx||(hx={}));class dx{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)?hx.MERGED:this._hiddenCells.has(t)?hx.HIDDEN:hx.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 gv(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 gv(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 gv(t.c,t.r).A1))),s.forEach((t=>{r[o](t),this.add(t)}))}}const ux=["index","name","rows","columns","cells","options","sparklines","rules","comments","styles","names","props","tab","theme"];class px{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 dx(this),this.styles=new ox(this),this.comments=new ww(this),this.calculations=new _w(this),this.names=new Vw(this),this.sorting=new bw(this),this.filter=new jw(this),this.sparklines=new Hw(this),this.conditionalFormats=new Tw(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??Uw(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(gv.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 gv?this.getCellByRange(t):"string"==typeof t?this.getCellByA1(t):null:this.getCellByCoords(t,e||0)}createRows(t,e=new Gw(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 Gw(this,t);return s.origIndex=e+i,s.name&&this.names.set(s.name,gv.fullRow(e)),s}));let n=-1;return o?n=Rr(s,e,{reverse:this.options.rowTree.reversed}):r?n=Tr(s,e):e.children=s,r||(o=!0),[e,s,n,o]}insertRowData(t,e,i){const o=this.createRows(i,new Gw(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];lx(this.theme,this,t),nx(this.theme,this,new gv(0,t[0].index,1/0,t[t.length-1].index))}}applyTheme(t,e){if(e)for(const t of this.getInitializedCellIterator())t.invalidateStyle();cx(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 pw(this,t);return this._filter=r.hasFilter||this._filter,r.name&&this.names.set(r.name,gv.fullColumn(o)),r})),this._levelBasedColTree=e,this._maxColumnLevel=-1,this.colRoot=new pw(this,{l:-1}),e?this._maxColumnLevel=Rr(this.columns,this.colRoot,{reverse:this.options.columnTree.reversed}):i?this._maxColumnLevel=Tr(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){Er().error(`Sparkline init error: ${t}`)}if(t.names)try{this.names.populate(t.names)}catch(t){Er().error(`Named range init error: ${t}`)}if(t.rules)try{this.conditionalFormats.populate(t.rules)}catch(t){Er().error(`Conditional formats init error: ${t}`)}if(t.theme)try{this.applyTheme(t.theme),this._theme=t.theme}catch(t){Er().error(`Theme init error: ${t}`)}if(t.comments)try{this.comments.populate(t.comments)}catch(t){Er().error(`Comment init error: ${t}`)}this._properties=t.props,this.otherSourceData={};const o=new Set(ux),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==zr.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 gv(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 gv(0,0,this.columns.length-1,this.rows.length-1)}getRangeIterator(t,e=!1){return new Fw(this,e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange))}getInitializedCellIterator(){return new Fw(this,this.gridRange,!0)}getRowIterator(t,e=!1){return t=e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange),new Ww(this,t,"rows")}getColumnIterator(t,e=!1){return t=e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange),new Ww(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 pw(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 Gw(this)));return this.rows.splice(t,0,...n),this.maxRowLevel>0&&r.insertChildren(n,t-(r.index||-1)-1),this.indexRows(),this.theme&&(lx(this.theme,this,n),nx(this.theme,this,new gv(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 gv(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?Rr:Tr;this._maxRowLevel=t(this.rows,this.rowRoot,{reverse:this.options.rowTree.reversed}),this.indexRowsByTree()}rebuildColumnTree(){const t=this._levelBasedColTree?Rr:Tr;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 gx{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 px(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 px(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 mx{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 fx{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 gv(t,e,i,o),this.activeCell=new gv(0,0)}static fromRange(t){return new fx(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=gv.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 vx={...qf,CUSTOM_CLIPBOARD_TYPE:"web application/json"};class bx{constructor(t,e,i=vx.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 yx=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 wx=class extends _n{constructor(){super(),this.render=()=>sn`
|
|
3704
3704
|
<og-icon id="filterIcon" .icon="${{icon:"filter"}}"></og-icon>
|
|
3705
3705
|
<div class="text">${Y(this.value)?sn`
|
|
3706
3706
|
<og-icon .icon="${this.value?"square-check":"square"}"></og-icon>
|
|
@@ -9344,4 +9344,4 @@ milkdown-block-handle {
|
|
|
9344
9344
|
`:null}
|
|
9345
9345
|
</div>
|
|
9346
9346
|
</og-panel>
|
|
9347
|
-
`: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?gv.fromA1(this.categoryRangeInput.value):null,this.model.seriesRange=this.seriesRangeInput?.value?gv.fromA1(this.seriesRangeInput.value):null,this.model.dataRange=gv.fromA1(this.dataRangeInput.value),this.dispatchEvent(new Yr({value:this.model}))}async updated(){this.editTitle&&this.titleInput&&(await this.titleInput.updateComplete,this.titleInput.focus(),this.titleInput.selectAll())}};Yz.styles=[Gz],qz([Ln({type:Object})],Yz.prototype,"model",void 0),qz([Rn()],Yz.prototype,"editTitle",void 0),qz([An("#title")],Yz.prototype,"titleInput",void 0),qz([An("#type")],Yz.prototype,"typeList",void 0),qz([An("#dataRange")],Yz.prototype,"dataRangeInput",void 0),qz([An("#seriesRange")],Yz.prototype,"seriesRangeInput",void 0),qz([An("#categoryRange")],Yz.prototype,"categoryRangeInput",void 0),Yz=qz([En("og-plugin-chart-form")],Yz);const Zz=Fa().themes.get("dark");Object.assign(Zz.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 Xz=Fa().themes.get("light");Object.assign(Xz.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 Qz=i(6946),Kz=i(6471),Jz=i(4969),tI=i(9502),eI=i(7706),iI=i(1480),oI=i(2006),rI=i(7503),sI=i(7873),nI=i(8746),aI=i(2570),lI=i(8815),cI=i(6390),hI=i(6593),dI=i(895),uI=i(9083),pI=i(6093),gI=i(9685),mI=i(9849),fI=i(8268),vI=i(4693),bI=i(3599),yI=i(782),wI=i(754),xI=i(5700),kI=i(4731),CI=i(7291),MI=i(597),_I=i(1474),SI=i(6224),EI=i(6239),zI=i(6828),II=i(2212),LI=i(863),RI=i(3602),TI=i(1985),AI=i(886),OI=i(7201),$I=i(9937),DI=i(8450),NI=i(9630),PI=i(9766),jI=i(388),HI=i(1903),FI=i(398),BI=i(6105),WI=i(6147),VI=i(5722),UI=i(5576),GI=i(3131),qI=i(6308),YI=i(9645),ZI=i(3199),XI=i(871),QI=i(5251),KI=i(6426),JI=i(2643),tL=i(8522),eL=i(6398),iL=i(2525),oL=i(8434),rL=i(6138),sL=i(5835),nL=i(5654),aL=i(6659),lL=i(2977),cL=i(4480),hL=i(9886),dL=i(6815),uL=i(1582),pL=i(2968),gL=i(394),mL=i(7024),fL=i(7853),vL=i(8249),bL=i(2869),yL=i(486),wL=i(5735),xL=i(470),kL=i(4612),CL=i(4018),ML=i(1476),_L=i(3194),SL=i(3525),EL=i(7541),zL=i(4104),IL=i(6686),LL=i(7719),RL=i(3898),TL=i(8153),AL=i(3690),OL=i(1776),$L=i(4980),DL=i(5578),NL=i(9613),PL=i(1119),jL=i(8444),HL=i(2978),FL=i(9130),BL=i(2127),WL=i(2732),VL=i(4287),UL=i(4045),GL=i(7642),qL=i(1367),YL=i(320),ZL=i(821),XL=i(102),QL=i(7683),KL=i(3980),JL=i(576),tR=i(654),eR=i(73),iR=i(140),oR=i(8129),rR=i(5087),sR=i(6992),nR=i(8247),aR=i(8038),lR=i(5286),cR=i(9179),hR=i(1808),dR=i(9459),uR=i(2883),pR=i(9124),gR=i(7067),mR=i(1054),fR=i(7325),vR=i(1272),bR=i(3359),yR=i(6562),wR=i(4193),xR=i(6348),kR=i(2435),CR=i(9111),MR=i(9318),_R=i(7294),SR=i(4479),ER=i(2409),zR=i(3091),IR=i(5789),LR=i(5890),RR=i(3874),TR=i(2907),AR=i(1175),OR=i(1686),$R=i(703),DR=i(6606),NR=i(4194),PR=i(6228),jR=i(62),HR=i(2072),FR=i(9744),BR=i(25),WR=i(2618),VR=i(1988),UR=i(8013),GR=i(1133),qR=i(362),YR=i(6845),ZR=i(6800),XR=i(1103),QR=i(4933),KR=i(7284),JR=i(2620),tT=i(2366),eT=i(7457),iT=i(2449),oT=i(2),rT=i(5697),sT=i(7069),nT=i(4716),aT=i(4740),lT=i(4557),cT=i(1868),hT=i(8647),dT=i(5127),uT=i(4816),pT=i(4009),gT=i(5104),mT=i(2830),fT=i(3093),vT=i(5029),bT=i(3514),yT=i(2142),wT=i(4999),xT=i(7523),kT=i(346),CT=i(7917),MT=i(3976),_T=i(9801),ST=i(2464),ET=i(5511),zT=i(5210),IT=i(5815),LT=i(3339),RT=i(7472),TT=i(8811),AT=i(8548),OT=i(6880),$T=i(1840),DT=i(5547),NT=i(4788),PT=i(9467),jT=i(9187),HT=i(9217),FT=i(7897),BT=i(2644),WT=i(6204),VT=i(1472),UT=i(1247),GT=i(7406),qT=i(925),YT=i(7455),ZT=i(3771),XT=i(1549),QT=i(3541),KT=i(3140),JT=i(9800),tA=i(229),eA=i(2677),iA=i(1844),oA=i(3245),rA=i(9056),sA=i(7535),nA=i(2359),aA=i(15),lA=i(5569),cA=i(2014),hA=i(1599),dA=i(6521),uA=i(232),pA=i(9745),gA=i(9594),mA=i(6979),fA=i(4494),vA=i(312),bA=i(4983),yA=i(1258),wA=i(6313),xA=i(12),kA=i(8003),CA=i(7830),MA=i(8875),_A=i(3911),SA=i(1817),EA=i(478),zA=i(2585),IA=i(6564),LA=i(2884),RA=i(3825),TA=i(7348),AA=i(9277),OA=i(4118),$A=i(9200),DA=i(51),NA=i(2872),PA=i(4702),jA=i(9281),HA=i(1394),FA=i(7295),BA=i(2936),WA=i(3789),VA=i(3614),UA=i(4827),GA=i(9204),qA=i(9113),YA=i(4058);const ZA=[Qz.mw,Kz.mw,Jz.mw,tI.mw,eI.mw,iI.mw,oI.mw,rI.mw,nI.mw,lI.mw,aI.mw,cI.mw,hI.mw,dI.mw,uI.mw,pI.mw,gI.mw,mI.mw,fI.mw,vI.mw,bI.mw,yI.mw,wI.mw,xI.mw,kI.mw,CI.mw,MI.mw,_I.mw,SI.mw,zI.mw,II.mw,LI.mw,RI.mw,TI.mw,AI.mw,OI.mw,$I.mw,DI.mw,NI.mw,PI.mw,jI.mw,HI.mw,BI.mw,FI.mw,WI.mw,VI.mw,UI.mw,GI.mw,qI.mw,YI.mw,ZI.mw,XI.mw,QI.mw,KI.mw,JI.mw,tL.mw,iL.mw,oL.mw,rL.mw,sL.mw,nL.mw,aL.mw,lL.mw,cL.mw,hL.mw,dL.mw,uL.mw,pL.mw,gL.mw,mL.mw,fL.mw,vL.mw,bL.mw,yL.mw,wL.mw,eL.mw,xL.mw,kL.mw,CL.mw,ML.mw,_L.mw,SL.mw,EL.mw,zL.mw,IL.mw,LL.mw,RL.mw,TL.mw,AL.mw,OL.mw,$L.mw,DL.mw,NL.mw,PL.mw,jL.mw,HL.mw,FL.mw,BL.mw,WL.mw,VL.mw,UL.mw,GL.mw,qL.mw,YL.mw,ZL.mw,XL.mw,QL.mw,KL.mw,JL.mw,tR.mw,eR.mw,iR.mw,oR.mw,rR.mw,sR.mw,nR.mw,aR.mw,EI.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,sI.mw],XA=[CR.mw,MR.mw,_R.mw,SR.mw,ER.mw,zR.mw,IR.mw,LR.mw,TR.mw,OR.mw,AR.mw,DR.mw,$R.mw,NR.mw,PR.mw,jR.mw,HR.mw,FR.mw,BR.mw,WR.mw,VR.mw,UR.mw,XR.mw,QR.mw,KR.mw,JR.mw,tT.mw,eT.mw,iT.mw,rT.mw,sT.mw,nT.mw,dT.mw,uT.mw,pT.mw,gT.mw,mT.mw,fT.mw,vT.mw,bT.mw,GR.mw,qR.mw,ZR.mw,YR.mw,yT.mw,wT.mw,xT.mw,kT.mw,CT.mw,MT.mw,_T.mw,ST.mw,aT.mw,lT.mw,cT.mw,hT.mw,zT.mw,IT.mw,LT.mw,RT.mw,TT.mw,AT.mw,OT.mw,$T.mw,DT.mw,NT.mw,PT.mw,jT.mw,HT.mw,FT.mw,BT.mw,WT.mw,VT.mw,UT.mw,GT.mw,ET.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,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,IA.mw,LA.mw,RA.mw,TA.mw,AA.mw,oT.mw,OA.mw,$A.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,RR.mw],QA={xlsx:F,charts:B},KA={name:"@omegagrid/bundle",version:"0.9.
|
|
9347
|
+
`: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?gv.fromA1(this.categoryRangeInput.value):null,this.model.seriesRange=this.seriesRangeInput?.value?gv.fromA1(this.seriesRangeInput.value):null,this.model.dataRange=gv.fromA1(this.dataRangeInput.value),this.dispatchEvent(new Yr({value:this.model}))}async updated(){this.editTitle&&this.titleInput&&(await this.titleInput.updateComplete,this.titleInput.focus(),this.titleInput.selectAll())}};Yz.styles=[Gz],qz([Ln({type:Object})],Yz.prototype,"model",void 0),qz([Rn()],Yz.prototype,"editTitle",void 0),qz([An("#title")],Yz.prototype,"titleInput",void 0),qz([An("#type")],Yz.prototype,"typeList",void 0),qz([An("#dataRange")],Yz.prototype,"dataRangeInput",void 0),qz([An("#seriesRange")],Yz.prototype,"seriesRangeInput",void 0),qz([An("#categoryRange")],Yz.prototype,"categoryRangeInput",void 0),Yz=qz([En("og-plugin-chart-form")],Yz);const Zz=Fa().themes.get("dark");Object.assign(Zz.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 Xz=Fa().themes.get("light");Object.assign(Xz.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 Qz=i(6946),Kz=i(6471),Jz=i(4969),tI=i(9502),eI=i(7706),iI=i(1480),oI=i(2006),rI=i(7503),sI=i(7873),nI=i(8746),aI=i(2570),lI=i(8815),cI=i(6390),hI=i(6593),dI=i(895),uI=i(9083),pI=i(6093),gI=i(9685),mI=i(9849),fI=i(8268),vI=i(4693),bI=i(3599),yI=i(782),wI=i(754),xI=i(5700),kI=i(4731),CI=i(7291),MI=i(597),_I=i(1474),SI=i(6224),EI=i(6239),zI=i(6828),II=i(2212),LI=i(863),RI=i(3602),TI=i(1985),AI=i(886),OI=i(7201),$I=i(9937),DI=i(8450),NI=i(9630),PI=i(9766),jI=i(388),HI=i(1903),FI=i(398),BI=i(6105),WI=i(6147),VI=i(5722),UI=i(5576),GI=i(3131),qI=i(6308),YI=i(9645),ZI=i(3199),XI=i(871),QI=i(5251),KI=i(6426),JI=i(2643),tL=i(8522),eL=i(6398),iL=i(2525),oL=i(8434),rL=i(6138),sL=i(5835),nL=i(5654),aL=i(6659),lL=i(2977),cL=i(4480),hL=i(9886),dL=i(6815),uL=i(1582),pL=i(2968),gL=i(394),mL=i(7024),fL=i(7853),vL=i(8249),bL=i(2869),yL=i(486),wL=i(5735),xL=i(470),kL=i(4612),CL=i(4018),ML=i(1476),_L=i(3194),SL=i(3525),EL=i(7541),zL=i(4104),IL=i(6686),LL=i(7719),RL=i(3898),TL=i(8153),AL=i(3690),OL=i(1776),$L=i(4980),DL=i(5578),NL=i(9613),PL=i(1119),jL=i(8444),HL=i(2978),FL=i(9130),BL=i(2127),WL=i(2732),VL=i(4287),UL=i(4045),GL=i(7642),qL=i(1367),YL=i(320),ZL=i(821),XL=i(102),QL=i(7683),KL=i(3980),JL=i(576),tR=i(654),eR=i(73),iR=i(140),oR=i(8129),rR=i(5087),sR=i(6992),nR=i(8247),aR=i(8038),lR=i(5286),cR=i(9179),hR=i(1808),dR=i(9459),uR=i(2883),pR=i(9124),gR=i(7067),mR=i(1054),fR=i(7325),vR=i(1272),bR=i(3359),yR=i(6562),wR=i(4193),xR=i(6348),kR=i(2435),CR=i(9111),MR=i(9318),_R=i(7294),SR=i(4479),ER=i(2409),zR=i(3091),IR=i(5789),LR=i(5890),RR=i(3874),TR=i(2907),AR=i(1175),OR=i(1686),$R=i(703),DR=i(6606),NR=i(4194),PR=i(6228),jR=i(62),HR=i(2072),FR=i(9744),BR=i(25),WR=i(2618),VR=i(1988),UR=i(8013),GR=i(1133),qR=i(362),YR=i(6845),ZR=i(6800),XR=i(1103),QR=i(4933),KR=i(7284),JR=i(2620),tT=i(2366),eT=i(7457),iT=i(2449),oT=i(2),rT=i(5697),sT=i(7069),nT=i(4716),aT=i(4740),lT=i(4557),cT=i(1868),hT=i(8647),dT=i(5127),uT=i(4816),pT=i(4009),gT=i(5104),mT=i(2830),fT=i(3093),vT=i(5029),bT=i(3514),yT=i(2142),wT=i(4999),xT=i(7523),kT=i(346),CT=i(7917),MT=i(3976),_T=i(9801),ST=i(2464),ET=i(5511),zT=i(5210),IT=i(5815),LT=i(3339),RT=i(7472),TT=i(8811),AT=i(8548),OT=i(6880),$T=i(1840),DT=i(5547),NT=i(4788),PT=i(9467),jT=i(9187),HT=i(9217),FT=i(7897),BT=i(2644),WT=i(6204),VT=i(1472),UT=i(1247),GT=i(7406),qT=i(925),YT=i(7455),ZT=i(3771),XT=i(1549),QT=i(3541),KT=i(3140),JT=i(9800),tA=i(229),eA=i(2677),iA=i(1844),oA=i(3245),rA=i(9056),sA=i(7535),nA=i(2359),aA=i(15),lA=i(5569),cA=i(2014),hA=i(1599),dA=i(6521),uA=i(232),pA=i(9745),gA=i(9594),mA=i(6979),fA=i(4494),vA=i(312),bA=i(4983),yA=i(1258),wA=i(6313),xA=i(12),kA=i(8003),CA=i(7830),MA=i(8875),_A=i(3911),SA=i(1817),EA=i(478),zA=i(2585),IA=i(6564),LA=i(2884),RA=i(3825),TA=i(7348),AA=i(9277),OA=i(4118),$A=i(9200),DA=i(51),NA=i(2872),PA=i(4702),jA=i(9281),HA=i(1394),FA=i(7295),BA=i(2936),WA=i(3789),VA=i(3614),UA=i(4827),GA=i(9204),qA=i(9113),YA=i(4058);const ZA=[Qz.mw,Kz.mw,Jz.mw,tI.mw,eI.mw,iI.mw,oI.mw,rI.mw,nI.mw,lI.mw,aI.mw,cI.mw,hI.mw,dI.mw,uI.mw,pI.mw,gI.mw,mI.mw,fI.mw,vI.mw,bI.mw,yI.mw,wI.mw,xI.mw,kI.mw,CI.mw,MI.mw,_I.mw,SI.mw,zI.mw,II.mw,LI.mw,RI.mw,TI.mw,AI.mw,OI.mw,$I.mw,DI.mw,NI.mw,PI.mw,jI.mw,HI.mw,BI.mw,FI.mw,WI.mw,VI.mw,UI.mw,GI.mw,qI.mw,YI.mw,ZI.mw,XI.mw,QI.mw,KI.mw,JI.mw,tL.mw,iL.mw,oL.mw,rL.mw,sL.mw,nL.mw,aL.mw,lL.mw,cL.mw,hL.mw,dL.mw,uL.mw,pL.mw,gL.mw,mL.mw,fL.mw,vL.mw,bL.mw,yL.mw,wL.mw,eL.mw,xL.mw,kL.mw,CL.mw,ML.mw,_L.mw,SL.mw,EL.mw,zL.mw,IL.mw,LL.mw,RL.mw,TL.mw,AL.mw,OL.mw,$L.mw,DL.mw,NL.mw,PL.mw,jL.mw,HL.mw,FL.mw,BL.mw,WL.mw,VL.mw,UL.mw,GL.mw,qL.mw,YL.mw,ZL.mw,XL.mw,QL.mw,KL.mw,JL.mw,tR.mw,eR.mw,iR.mw,oR.mw,rR.mw,sR.mw,nR.mw,aR.mw,EI.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,sI.mw],XA=[CR.mw,MR.mw,_R.mw,SR.mw,ER.mw,zR.mw,IR.mw,LR.mw,TR.mw,OR.mw,AR.mw,DR.mw,$R.mw,NR.mw,PR.mw,jR.mw,HR.mw,FR.mw,BR.mw,WR.mw,VR.mw,UR.mw,XR.mw,QR.mw,KR.mw,JR.mw,tT.mw,eT.mw,iT.mw,rT.mw,sT.mw,nT.mw,dT.mw,uT.mw,pT.mw,gT.mw,mT.mw,fT.mw,vT.mw,bT.mw,GR.mw,qR.mw,ZR.mw,YR.mw,yT.mw,wT.mw,xT.mw,kT.mw,CT.mw,MT.mw,_T.mw,ST.mw,aT.mw,lT.mw,cT.mw,hT.mw,zT.mw,IT.mw,LT.mw,RT.mw,TT.mw,AT.mw,OT.mw,$T.mw,DT.mw,NT.mw,PT.mw,jT.mw,HT.mw,FT.mw,BT.mw,WT.mw,VT.mw,UT.mw,GT.mw,ET.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,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,IA.mw,LA.mw,RA.mw,TA.mw,AA.mw,oT.mw,OA.mw,$A.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,RR.mw],QA={xlsx:F,charts:B},KA={name:"@omegagrid/bundle",version:"0.9.32"};Fa().activate("light"),Ld.styleDefault="fal",Rd.add(ZA),Rd.add(XA)})(),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.32",
|
|
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.32",
|
|
23
|
+
"@omegagrid/calendar": "^0.9.32",
|
|
24
|
+
"@omegagrid/code": "^0.9.32",
|
|
25
|
+
"@omegagrid/commands": "^0.9.32",
|
|
26
|
+
"@omegagrid/core": "^0.9.32",
|
|
27
|
+
"@omegagrid/dialog": "^0.9.32",
|
|
28
|
+
"@omegagrid/editor": "^0.9.32",
|
|
29
|
+
"@omegagrid/form": "^0.9.32",
|
|
30
|
+
"@omegagrid/grid": "^0.9.32",
|
|
31
|
+
"@omegagrid/localize": "^0.9.32",
|
|
32
|
+
"@omegagrid/markdown": "^0.9.32",
|
|
33
|
+
"@omegagrid/plugin-charts": "^0.9.32",
|
|
34
|
+
"@omegagrid/plugin-xlsx": "^0.9.32",
|
|
35
|
+
"@omegagrid/statusbar": "^0.9.32",
|
|
36
|
+
"@omegagrid/tabs": "^0.9.32",
|
|
37
|
+
"@omegagrid/toolbar": "^0.9.32",
|
|
38
|
+
"@omegagrid/tree": "^0.9.32",
|
|
39
39
|
"lit": "^3.1.1"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|