@omegagrid/bundle 0.6.24 → 0.6.26
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 +3 -3
- package/package.json +18 -18
package/omegagrid.js
CHANGED
|
@@ -2656,7 +2656,7 @@
|
|
|
2656
2656
|
padding-right: 2px;
|
|
2657
2657
|
}
|
|
2658
2658
|
|
|
2659
|
-
`,Nm={enabled:!1,includeChildren:!0,includeParents:!0},Pm={enabled:!0,reversed:!1},jm={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:2,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,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"}},...W},Vm=/^(?!.*[\\\/\*\[\]\:\?"])(.{1,31})$/;function Bm(t){return Vm.test(t)}function Fm(t){return["\\","/","*","[","]",":","?",'"'].forEach((e=>t=t.replace(new RegExp(`\\${e}`,"g"),""))),t}function Wm(t,e){return!isNaN(t)&&null!=t||!isNaN(e)&&null!=e||(t=null==t?"":at(t.toString()).toLowerCase(),e=null==e?"":at(e.toString()).toLowerCase()),t>e?1:t<e?-1:0}function Um(t,e){const i=Z(e);return Z(t)?(t=t.toString().trim()).startsWith("=")?0==Wm(e,i?t.substring(1):parseFloat(t.substring(1))):t.startsWith(">=")?Wm(e,i?t.substring(2):parseFloat(t.substring(2)))>=0:t.startsWith("<=")?Wm(e,i?t.substring(2):parseFloat(t.substring(2)))<=0:t.startsWith(">")?Wm(e,i?t.substring(1):parseFloat(t.substring(1)))>0:t.startsWith("<")?Wm(e,i?t.substring(1):parseFloat(t.substring(1)))<0:0==Wm(e,i?t:isNaN(t)?t||"":parseFloat(t)):e==t}const Gm=new Map([["=",["==",1,0]],[">",[">",1,0]],["<",["<",1,0]],[">=",[">=",1,0]],["<=",["<=",1,0]],["+",["+",2,0]],["-",["-",2,0]],["*",["*",3,0]],["/",["/",3,0]]]),qm=t=>["=",">","<",">=","<="].includes(t),Ym=t=>["+","-","*","/"].includes(t),Zm=t=>Ym(t)||qm(t);function Xm(t,e,i){switch(i){case"+":return t+e;case"-":return t-e;case"*":return t*e;case"/":return t/e;case"=":return 0==Wm(t,e);case">":return Wm(t,e)>0;case"<":return Wm(t,e)<0;case">=":return Wm(t,e)>=0;case"<=":return Wm(t,e)<=0;default:throw new Error(`Invalid operator: ${i}`)}}function Qm(t,e,i){const o=Array.isArray(t),n=Array.isArray(e);if(!o&&!n)return[[Xm(t,e,i)]];const r=Math.max(o?t.length:0,n?e.length:0),s=Math.max(o?t[0].length:0,n?e[0].length:0),a=[];for(let l=0;l<r;l++){const r=[];for(let a=0;a<s;a++){const s=o?t[l]?.[a]:t,c=n?e[l]?.[a]:e,h=null==s&&null==c?null:Xm(s,c,i);r.push(h)}a.push(r)}return a}var Km;!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"}(Km||(Km={}));const Jm=t=>t===Km.Number||t===Km.Boolean||t===Km.String||t===Km.Cell||t===Km.Variable||t===Km.Range,tv=t=>t>=48&&t<=57,ev=t=>"true"===(t=t.toLowerCase())||"false"===t,iv=t=>t>=65&&t<=90||t>=97&&t<=122||t>=192&&t<=687,ov={decimalPoint:".",stringQuote:'"',sheetQuote:"'",argumentSeparator:","};class nv{constructor(t){this.options=Object.assign(ov,t)}tokenize(t){const e=[],i=t.length;let o,n,r,s,a=0,l="",c=!1,h=!1,d=!1;for(;a<i;){if(o=t.charAt(a),n=o.charCodeAt(0),"="==o&&0==a)++a;else if(tv(n)){for(l=(d?"-":"")+o,++a;a<i;)if(o=t.charAt(a),n=o.charCodeAt(0),tv(n))l+=o,++a;else{if(o!==this.options.decimalPoint)break;l+=".",++a}d=!1,e.push([l,Km.Number])}else if(iv(n)||"$"==o){l=o,r=null,++a;do{if(o=t.charAt(a),n=o.charCodeAt(0),iv(n)||tv(n)||"."===o||"$"===o||"_"===o)"_"==o?r=Km.Variable:tv(n)&&!c&&null==r&&(r=Km.Cell),l+=o,++a,a==i&&e.push([l,r||Km.Variable]);else{if("("==o){e.push([l.toUpperCase(),Km.Function]),e.push([o,Km.OpenBracket]),++a;break}if("'"==o)e.push([l,Km.Sheet]),l="",e.push([o,Km.SheetQuote]),c=!0,++a;else if(":"==o)r=Km.Range,l+=o,++a;else{if(!c||" "!=o){if("!"==o){""!==l&&e.push([l,Km.Sheet]),e.push([o,Km.SheetSeparator]),c=!1,l="",++a;break}e.push([l,r||(ev(l)?Km.Boolean:Km.Variable)]);break}l+=o,++a}}}while(a<i)}else if(Zm(o)){if("-"===o&&tv(t.charCodeAt(a+1))&&(null==s||"("==s[0]||qm(s[0])||s[1]==Km.ArgumentSeparator))d=!0;else{for(l=o;qm(t.charAt(a+1));)l+=t.charAt(++a);e.push([l,Km.Operator])}++a}else if("("===o)e.push([o,Km.OpenBracket]),++a;else if(")"===o)e.push([o,Km.CloseBracket]),++a;else if("'"===o)e.push([o,Km.SheetQuote]),c=!0,++a;else if(o===this.options.argumentSeparator)e.push([o,Km.ArgumentSeparator]),++a;else if(o===this.options.stringQuote){for(h=!1,e.push([o,Km.StringQuote]),l="";++a<i;){if(o=t.charAt(a),o===this.options.stringQuote){h=!0,++a;break}l+=o}e.push([l,Km.String]),h&&e.push([this.options.stringQuote,Km.StringQuote])}else e.push([o,Km.Unknown]),++a;s=e[e.length-1]}return e}}function rv(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 sv=/(?:'?([\w\s]*)'?!)?(\$?)([a-z]*)(\$?)(\d*)(?::(\$?)([a-z]*)(\$?)(\d*))?/i;class av{constructor(t,e,i,o,n){this.setCoords(t,e,i,o),this.sheet=n}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,n=!0){const r=rv(this.c1,t,i,n);n&&(e+=this.c1+t!=r&&0!=t?t>0?1:-1:0),this.c1=r,this.r1=rv(this.r1,e,o,n),this.c2=rv(this.c2,t,i,n),this.r2=rv(this.r2,e,o,n)}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:n,ignoreAnchors:r}=t;switch(o){case"down":return this.shiftDown(e,i,n,r);case"up":return this.shiftUp(e,i,n,r);case"left":return this.shiftLeft(e,i,n,r);case"right":return this.shiftRight(e,i,n,r)}}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),n=Math.min(t.r2,this.r2);return e<=i&&o<=n?new av(e,o,i,n,this.sheet):null}unite(t){return this.normalize(),t.normalize(),new av(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 av(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?hv(this.c1):"")+(0===this.r1&&this.r2===1/0?"":(this.r1Anchor?"$":"")+lv(this.r1)),i=t?(this.c2Anchor?"$":"")+(!isNaN(this.c2)&&this.c2<1/0?hv(this.c2):"")+(this.r2Anchor?"$":"")+(!isNaN(this.r2)&&this.r2<1/0?lv(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 av(this.c1,this.r1),this.c2<1/0?new av(this.c2,this.r1):null],[this.r2<1/0?new av(this.c1,this.r2):null,this.r2<1/0&&this.c2<1/0?new av(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 av(e,t)}static fromA1(t){const e=sv.exec(t),i=new av(e[3]?dv(e[3]):null,e[5]?cv(e[5]):null,e[7]?dv(e[7]):null,e[9]?cv(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 lv(t){return(t+1).toString()}function cv(t){return parseInt(t)-1}function hv(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 dv(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 uv(t){return t.sort(((t,e)=>{const i=Math.min(t.r1,t.r2),o=Math.min(e.r1,e.r2),n=Math.min(t.c1,t.c2),r=Math.min(e.c1,e.c2);return i<o?-1:i>o?1:n<r?-1:r>n?1:0}))}function pv(t){return t.formula.cells.map((e=>t.cell.model.getCellByRange(e[1])))}function gv(t){let e=t;for(;Array.isArray(e);)e=e.length>0?e[0]:null;return e}function fv(t){return Array.isArray(t)?t:[[t]]}function mv(t,e,i,o){if(!Array.isArray(t))return e(t,i,o);for(let o=0;o<t.length;o++)if(!1===mv(t[o],e,null==i?o:i,null==i?void 0:o))return!1}av.fromA1s=(t,e=";")=>t.split(e).map((t=>av.fromA1(t))),av.toA1s=(t,e=";")=>t.map((t=>t.A1)).join(e),av.fromCoords=t=>new av(t.c1,t.r1,t.c2,t.r2),av.fullColumn=t=>new av(t,0,t,1/0),av.fullRow=t=>new av(0,t,1/0,t);const vv=new Set(["SUMPRODUCT","FILTER"]),bv=t=>vv.has(t),yv=t=>!!(t&&t.length>0&&"="==t.charAt(0)),wv=t=>yv(t)?t:"="+(t??""),xv=t=>yv(t)?t.substring(1):t,kv=["#5B97FF","#FF616B","#B77CFF","#00B02C","#FC58BE","#FF9000","#2EB0B3"],Cv=t=>kv[t%kv.length],Mv=new Map([["FORMULATEXT","_xlfn."],["CONCAT","_xlfn."],["INDIRECT","_xlfn."],["ISOWEEKNUM","_xlfn."],["SWITCH","_xlfn."],["XOR","_xlfn."]]);class _v{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([Km.Cell,Km.Range].includes(e[1])){const o=(t?"'"+t+"'!":"")+e[0];this._colors.set(o,{color:Cv(this._colors.size),address:e[0],sheet:t,type:e[1],tokenIndex:i}),t=null}else e[1]==Km.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(![Km.Cell,Km.Range].includes(e[1]))return-1;if(0==t||this._tokens[t-1][1]!=Km.SheetSeparator)return-1;let i=t-2;for(;i>=0;){if(this._tokens[i][1]==Km.Sheet)return i;i--}return-1}removeSheetToken(t){if(this._tokens[t][1]!=Km.Sheet&&(t=this.findSheetTokenIndex(t)),t>-1){t>0&&this._tokens[t-1][1]==Km.SheetQuote&&t--;let e=t;for(;e<this._tokens.length&&[Km.SheetSeparator,Km.SheetQuote,Km.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==Km.Sheet&&/\s/.test(e)?(o.push([this.tokenizer.options.sheetQuote,Km.SheetQuote]),o.push([e,Km.Sheet]),o.push([this.tokenizer.options.sheetQuote,Km.SheetQuote])):o.push([e,i]),o.push(["!",Km.SheetSeparator]),this._tokens.splice(t,0,...o),o.length}clone(){return new _v(this.createFormulaString(),this.tokenizer)}updateDependecies(){let t;this._variables=[],this._cells=[],this._ranges=[],this._tokens.forEach(((e,i)=>{switch(e[1]){case Km.Sheet:t=e[0];break;case Km.Variable:this._variables.push([i,e[0],t]),t=void 0;break;case Km.Cell:this._cells.push([i,av.fromA1(e[0]),t]),t=void 0;break;case Km.Range:this._ranges.push([i,av.fromA1(e[0]),t]),t=void 0}}))}createFormulaString(t=!1,e=!1){const i=this.tokenizer.options;let o,n,r,s="";for(let l=0;l<this._tokens.length;l++)switch(o=this._tokens[l],o[1]){case Km.SheetQuote:s+="'";break;case Km.SheetSeparator:s+="!";break;case Km.Sheet:n=o[0],s+=t?`<span style="font-style:italic">${n}</span>`:n;break;case Km.Variable:s+=o[0];break;case Km.Range:case Km.Cell:r=(n?"'"+n+"'!":"")+o[0],s+=t?`<span style="color:${this.getNamedColor(r)}">${o[0]}</span>`:o[0],n=null;break;case Km.StringQuote:s+=i.stringQuote;break;case Km.String:s+=o[0].replace(new RegExp(i.stringQuote,"g"),"\\"+i.stringQuote);break;case Km.ArgumentSeparator:s+=i.argumentSeparator;break;case Km.Function:s+=(e?(a=o[0],Mv.get(a)??""):"")+o[0];break;case Km.Unknown:s+=t?`<span style="background:#f00;color:#fff">${o[0]}</span>`:o[0];break;default:s+=o[0]}var a;return s}createExpressionTree(){const t=[],e=[],i=this.tokens;let o,n,r,s,a,l=null;for(let c=0;c<i.length;c++)switch(o=i[c],o[1]){case Km.Sheet:l=o[0];break;case Km.Cell:case Km.Range:t.push({t:o[0],tt:o[1],s:l}),l=null;break;case Km.Number:case Km.String:case Km.Boolean:case Km.Variable:t.push({t:o[0],tt:o[1]});break;case Km.Operator:for(0==t.length&&t.push({t:"",tt:Km.Operand}),r=Gm.get(o[0]);e.length>0&&(s=Gm.get(e[e.length-1][0]),s)&&(0===r[2]&&r[1]<=s[1]||1===r[2]&&r[1]<s[1]);)n=e.pop(),a=[t.pop(),t.pop()].reverse(),t.push({t:n[0],tt:n[1],c:a});e.push(o);break;case Km.Function:case Km.OpenBracket:e.push(o);break;case Km.ArgumentSeparator:for(;e.length>0&&(n=e[e.length-1],![Km.OpenBracket,Km.ArgumentSeparator].includes(n[1]));)n=e.pop(),a=[t.pop(),t.pop()].reverse(),t.push({t:n[0],tt:n[1],c:a});e.push(o);break;case Km.CloseBracket:for(a=[];e.length>0&&e[e.length-1][1]!==Km.OpenBracket;)n=e.pop(),n[1]==Km.Operator?a.push({t:n[0],tt:n[1],c:[t.pop(),t.pop()].reverse()}):n[1]==Km.ArgumentSeparator&&t.length>0&&a.push(t.pop());e.pop(),e.length>0&&e[e.length-1][1]===Km.Function?(n=e.pop(),a=a.reverse(),t.length>0&&i[c-1][1]!==Km.OpenBracket&&a.unshift(t.pop()),t.push({t:n[0],tt:n[1],c:a})):t.push(...a)}for(;e.length>0;)n=e.pop(),t.push({t:n[0],tt:n[1],c:[t.pop(),t.pop()].reverse()});return t.pop()}createExpressionJSCode(t,e,i){let o;switch(t.tt){case Km.Range:return"t.rn('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case Km.Cell:return"t.cl('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case Km.Operand:return"t.cl()";case Km.Variable:return i||e?.tt===Km.Function?"t.nr('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")":"t.nv('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case Km.String:return"'"+t.t.replace(/'/g,"\\'")+"'";case Km.Boolean:return"T"==t.t[0].toUpperCase()?"1":"0";case Km.Function:return o=t.c.map((e=>this.createExpressionJSCode(e,t,i||bv(t.t)))),"t.fn('"+t.t+"').call(ctx"+(o.length>0?","+o.join(","):"")+")";case Km.Operator:return i?(o=t.c.map((e=>this.createExpressionJSCode(e,t,i||bv(t.t)))),"t.op("+o[0]+","+o[1]+",'"+t.t+"')"):Gm.has(t.t)?"("+t.c.map((e=>this.createExpressionJSCode(e,t,i))).join(Gm.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:n,sheet:r,allSheets:s}=t;return this._cells&&this._cells.forEach((t=>{if(s||null==t[2]||t[2]==r){switch(o){case"up":t[1].shiftUp(e,i,n);break;case"right":t[1].shiftRight(e,i,n);break;case"down":t[1].shiftDown(e,i,n);break;case"left":t[1].shiftLeft(e,i,n)}this._tokens[t[0]][0]=t[1].A1}})),this._ranges&&this._ranges.forEach((t=>{if(s||null==t[2]||t[2]==r){switch(o){case"up":t[1].shiftUp(e,i,n);break;case"right":t[1].shiftRight(e,i,n);break;case"down":t[1].shiftDown(e,i,n);break;case"left":t[1].shiftLeft(e,i,n)}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]==Km.Sheet&&o[0]==t&&(o[0]=e,i=!0)})),i}}function Sv(t,e){return e&&(t=Yo(this.cell.model.options.locale,Jo(e,"d"),!1)(t)),null==t?"":t.toString()}function Ev(t,e){return(t=null==t?"":t.toString()).substring(0,e)}function zv(t,e){return(t=null==t?"":t.toString()).substring(Math.max(0,t.length-e),t.length)}function Lv(t,e,i){return(t=null==t?"":t.toString()).substring(e,e+i)}function Rv(...t){let e="";return mv(t,(t=>e+=null==t?"":t.toString())),e}function Iv(t){return t instanceof Date?t:Z(t)?Ro(t,po()):jo(t)}function Hv(t){return K(t)?t:Po(t instanceof Date?t:Ro(t,po()))}function Tv(t){return Z(t)?Hv(t):t}function Av(t,e){const i=Iv(t).getDay();switch(e){case 2:return i;case 3:return i-1;default:return i%7+1}}function Ov(t,e,i){return Vo(Hv(gv(t)),e)}function $v(){return Po(new Date)}function Dv(t){return null==(t=gv(t))||""===t}function Nv(t,e,i){return Po(new Date(t,e-1,i))}function Pv(t){return Iv(t).getFullYear()}function jv(t){return Iv(t).getMonth()+1}function Vv(t){return Iv(t).getDate()}function Bv(t,e){const i=Iv(t);return i.setMonth(i.getMonth()+e+1),i.setDate(0),Po(i)}function Fv(t){return fi(Iv(t))}function Wv(t){return Math.acos(t)}function Uv(t){return Math.acosh(t)}function Gv(t){return Math.PI/2-Math.atan(t)}function qv(t){return.5*Math.log((t+1)/(t-1))}function Yv(t){return Math.asin(t)}function Zv(t){return Math.asinh(t)}function Xv(t){return Math.atan(t)}function Qv(t){return Math.atanh(t)}function Kv(t){return Math.cos(t)}function Jv(t){return Math.cosh(t)}function tb(t){return 1/Math.tan(t)}function eb(t){return 1/Math.tanh(t)}function ib(t){return 1/Math.sin(t)}function ob(t){return 1/Math.sinh(t)}function nb(t){return 180*t/Math.PI}function rb(){return Math.PI}function sb(t){return 1/Math.cos(t)}function ab(t){return 1/Math.cosh(t)}function lb(t){return Math.sin(t)}function cb(t){return Math.sinh(t)}function hb(t){return Math.tan(t)}function db(t){return Math.tanh(t)}function ub(t){return Math.abs(t)}function pb(t){if(t<0)throw new Error("#NUM");return Math.ceil(t)}function gb(t){return(t=Math.ceil(t))%2==0?t:t+1}function fb(t){return Math.pow(Math.E,t)}function mb(t){return t<0?-1:0==t?1:t*mb(t-1)}function vb(t){return t<=0?1:t*vb(t-2)}function bb(t){return Math.floor(t)}function yb(t){return t%1!=0}function wb(t){return!yb(t)&&t%2==0}function xb(t){return yb(t)||t%2==1}function kb(t){return Math.log(t)}function Cb(t,e){return Math.log(t)/Math.log(e)}function Mb(t){return Math.log10(t)}function _b(t,e){return t%e}function Sb(t){return(t=Math.ceil(t))%2==0?t+1:t}function Eb(t,e){return Math.pow(t,e)}function zb(...t){let e=1;return mv(t,(t=>e*=t||1)),e}function Lb(t,e){return Math.floor(t/e)}function Rb(t){return t*Math.PI/180}function Ib(){return Math.random()}function Hb(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 Tb(t,e){return t=Math.ceil(t),e=Math.floor(e),Math.floor(Math.random()*(e-t+1))+t}function Ab(t,e){return t.toFixed(e)}function Ob(t,e){return e=e||0,Math.floor(t*Math.pow(10,e))/Math.pow(10,e)}function $b(t,e){return e=e||0,Math.ceil(t*Math.pow(10,e))/Math.pow(10,e)}function Db(t,e,i=1,o=1){const n=Array(t).fill(null).map((()=>Array(e)));let r=i;for(let i=0;i<t;i++)for(let t=0;t<e;t++)n[i][t]=r,r+=o;return n}function Nb(t){return t<0?-1:t>0?1:0}function Pb(t){return Math.sqrt(t)}function jb(t){return Math.sqrt(Math.PI*t)}function Vb(...t){let e=0;return mv(t,(t=>e+=null==t?0:1)),e}function Bb(...t){let e=0;return mv(t,(t=>e+=null==t?1:0)),e}function Fb(t,e){let i=0;return mv(t,(t=>i+=Um(e,t)?1:0)),i}function Wb(...t){let e=0;const i=new Map;return mv(t,(t=>{i.has(t)||(i.set(t,t),++e)})),e}function Ub(...t){let e=0;return mv(t,(t=>e+=isNaN(t)?0:t)),e}function Gb(t,e,i){let o=0;if(i){const n=fv(i);mv(t,((t,i,r)=>o+=Um(e,t)&&n[i]&&n[i][r]&&!isNaN(n[i][r])?n[i][r]:0))}else mv(t,(t=>o+=Um(e,t)&&!isNaN(t)?t:0));return o}function qb(t,e){let i=0;return mv(t,(t=>i+=Um(e,t)&&!isNaN(t)?t*t:0)),i}function Yb(...t){let e=0;const i=t.shift();if(0===t.length)mv(i,(t=>e+=isNaN(t)?0:t));else{const o=fv(t[0]);mv(i,((t,i,n)=>e+=o[i]&&o[i][n]&&!isNaN(t)&&!isNaN(o[i][n])?t*o[i][n]:0))}return e}function Zb(t,e){return t=null==t?"":t.toString(),e?e=>e==t:(t=t.toLowerCase(),e=>(e??"").toString().toLowerCase().includes(t))}function Xb(t,e,i=1){const o=new av(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 Qb(t,e,i,o=!1){let n,r;const s=Zb(t,o);for(n=0;n<e.length;n++)for(r=0;r<e[n].length;r++)if(s(e[n][r]))return e[n][i-1];return null}function Kb(t,e,i,o=!1){let n,r;const s=Zb(t,o);for(n=0;n<e.length;n++)for(r=0;r<e[n].length;r++)if(s(e[n][r]))return e[i-1][r];return null}function Jb(t,e,i){let o,n;t:for(o=0;o<e.length;o++)for(n=0;n<e[o].length;n++)if(e[o][n]==t)break t;return i?i[o]?i[o][n]:null:e[o][e[o].length-1]}function ty(t,...e){let i=null,o=0;return mv(e,(e=>{if(t==++o)return i=e,!1})),i}function ey(t){return(t?av.fromA1(t).c1:this.cell.c)+1}function iy(t){return(t?av.fromA1(t).r1:this.cell.r)+1}function oy(t){return Array.isArray(t)?t[0]?.length:1}function ny(t){return Array.isArray(t)?t.length:1}function ry(){const t=pv(this)[0];return t&&t.hasFormula?" "+wv(t.formula):""}function sy(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 ay(t){const e=this.cell,i=e.model,o=i.getCellByA1(t);let n;return i.calculations.dependencies.cellDependencies.has(e.address)?n=i.calculations.dependencies.cellDependencies.get(e.address):(n=new Map,i.calculations.dependencies.cellDependencies.set(e.address,n)),n.set(o.address,[o.range]),i.calculations.dependencies.cellDependants.has(o.address)?n=i.calculations.dependencies.cellDependants.get(o.address):(n=new Map,i.calculations.dependencies.cellDependants.set(o.address,n)),n.set(e.address,[e.range]),o.value}function ly(t,e,i=0){let o,n;for(o=0;o<e.length;o++)for(n=0;n<e[o].length;n++){if(0==i&&e[o][n]==t)return Math.max(o+1,n+1);if(1==i&&e[o][n]>t)return Math.max(o+1,n+1);if(-1==i&&e[o][n]<t)return Math.max(o+1,n+1)}return null}function cy(t,e,i,o,n){const r=pv(this)[0],s=[];o=o||1,n=n||1;for(let t=0;t<o;t++){const o=[];for(let s=0;s<n;s++){const n=r.model.rows[r.r+t+e].cell(r.c+s+i);o.push(n?r.value:null)}s.push(o)}return s}function hy(t,e){const i=[];if(t.length==e.length)for(let o=0;o<t.length;o++){let n=!0;for(let t=0;t<e[o].length;t++)if(!e[o][t]){n=!1;break}n&&i.push(t[o])}return i}const dy=[[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]],uy=[[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 py(t){const e=t*t;let i,o=dy[0][4]*e,n=e;for(i=0;i<3;i+=1)o=(o+dy[0][i])*e,n=(n+uy[0][i])*e;return t*(o+dy[0][3])/(n+uy[0][3])}function gy(...t){let e=!0;return mv(t,(t=>{if(!t)return e=!1})),e}function fy(...t){let e=!1;return mv(t,(t=>{if(t)return e=!0})),e}function my(...t){let e=null;return mv(t,(t=>{e=null===e?!!t:!!t!=e})),e}function vy(...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 by(t,e,i){return t?e:i}function yy(t){return!t}function wy(){return!1}function xy(){return!0}function ky(t,e){return e=""===e?null:e,t===1/0||t===-1/0||Number.isNaN(t)?e:t}var Cy=i(235),My=i.n(Cy),_y=i(5949),Sy=i.n(_y);function Ey(...t){let e=0,i=0;return mv(t,(t=>{null==t||isNaN(t)||(e+=t||0,++i)})),e/i}function zy(t,e){const i=Sy()(),o=fv(t),n=fv(e);for(let t=0;t<o.length;t++)for(let e=0;e<o[t].length;e++)i(o[t][e],(n[t]?n[t][e]:1)??1);return i()}function Ly(...t){const e=function(t){const e=[];return mv(t,(t=>e.push(t))),e}(t),i=My()(e.length,e,1);return e.reduce(((t,e)=>t+Math.abs(e-i)),0)/e.length}function Ry(...t){let e=1/0;return mv(t,(t=>e=Math.min(e,t))),e}function Iy(...t){let e=-1/0;return mv(t,(t=>e=Math.max(e,t))),e}function Hy(t,e){Object.keys(e).forEach((i=>t.set(nt(i,"_").replace(/_/g,".").toUpperCase(),e[i])))}const Ty=new Map;Hy(Ty,C),Hy(Ty,M),Hy(Ty,_),Hy(Ty,S),Hy(Ty,z),Hy(Ty,E),Hy(Ty,L);class Ay{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);return(null==t?this.currentCell:i.getCellByA1(t)).value},this.rn=(t,e)=>this.getModel(e).getValuesInRange(av.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=Ty.get(t);if(e)return e;throw new Error(`Function "${t}" not found`)},this.op=(t,e,i)=>Qm(t,e,i)}}function Oy(t,e){const i=Array(e).fill(null);let o=0,n=[];if(t.length>1){n=t.map((t=>parseFloat(t.value)||0)),o=n[1]-n[0];for(let t=2;t<n.length;t++)if(n[t]-n[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=n[n.length-1];for(let n=0;n<e;n++)t=i[n]=t+o}return i}function $y(t,e,i){const o=new _v(t.formula,t.model.calculations.tokenizer),n=[];for(let t=0;t<i;t++)n.push(wv(o.shift({index:0,offset:1,direction:e,allSheets:!0}).createFormulaString()));return n}function Dy(t,e,i,o){const n=t.getCellMatrix(e);let r;"right"==o?r=Ln(n):"down"==o?r=zn(n):"left"==o?r=Sn(n):"up"==o&&(r=Sn(zn(n)));const s=new Array(i.size.rows);for(let t=0;t<i.size.rows;t++){s[t]=new Array(i.size.columns);for(let e=0;e<i.size.columns;e++){const i=n.length>t?n[t][n[t].length>e?e:0]:n[0][e];s[t][e]=i.hasDisplayValue?i.displayValue:null}}const a=i.size["down"==o||"up"==o?"rows":"columns"];let l=r.map((t=>t[t.length-1].hasFormula?$y(t[t.length-1],o,a):Oy(t,a)));return"down"==o?l=zn(l):"left"==o?l=Sn(l):"up"==o&&(l=En(zn(l))),t.spillValues({cell:t.getCellByRange(i.bounds[0][0]),values:l,propertyCell:t.getCellByRange(e.bounds[0][0]),displayValues:s})}class Ny{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 allowInvalid(){return this._allowInvalid}set allowInvalid(t){this._allowInvalid=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?wv(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._allowInvalid=t.allowInvalid,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),"allowInvalid"in t&&(e.allowInvalid=this._allowInvalid,this._allowInvalid=t.allowInvalid),"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=it(this._properties)),null!=this._editorContent&&(t.content=q(this._editorContent)?it(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 Py(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"}]]),Vy=(()=>{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 By(t){return"middle"==t?"center":t}function Fy(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 Wy=t=>{if("none"==t)return null;const e=t.split(" "),i=parseInt(e[0].charAt(0))||1,o=e.length>1?e[1]:"solid",n=Vy.get(o);return{style:(n?n.get(i):null)??"thin",color:e.length>2?Fy(e[2]):"CCCCCC"}},Uy=t=>{const e=jy.get(t.style||"none");return e?[Ht(e.width),e.style,"none"==t.style?"var(--og-cell-background)":`#${t.color}`].join(" "):"none"},Gy=(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=vn(o,.75);break;case"mediumGray":t.backgroundColor=vn(o,.5);break;case"lightGray":t.backgroundColor=vn(o,.25);break;case"gray125":t.backgroundColor=vn(o,.125);break;case"gray0625":t.backgroundColor=vn(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},qy=(t,e)=>(t.backgroundImage=`linear-gradient(${(e.angle??0)+90}deg,${e.stops.map((t=>`#${t.rgb} ${100*t.v}%`)).join(",")})`,t),Yy=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=It(t.sz)),t.color&&(e.color="#"+t.color),t.top&&(e.borderTop=Uy(t.top)),t.right&&(e.borderRight=Uy(t.right)),t.bottom&&(e.borderBottom=Uy(t.bottom)),t.left&&(e.borderLeft=Uy(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??"left",e.alignItems=e.alignItems??"center",e.whiteSpace="pre-wrap"),t.patternType?Gy(e,t):t.stops&&t.stops.length?qy(e,t):t.fgColor?e.backgroundColor="#"+t.fgColor:t.bgColor&&(e.backgroundColor="#"+t.bgColor),e},Zy=t=>{const e=q(t)?t:Py(t),i={};let o;for(const t in e){const n=e[t];if(null!=n)switch(t){case"borderTop":case"border-top":i.top=Wy(n);break;case"borderTopColor":case"border-top-color":i.top?i.top.color=Fy(n):i.top={style:"thin",color:Fy(n)};break;case"borderRight":case"border-right":i.right=Wy(n);break;case"borderRightColor":case"border-right-color":i.right?i.right.color=Fy(n):i.right={style:"thin",color:Fy(n)};break;case"borderBottom":case"border-bottom":i.bottom=Wy(n);break;case"borderBottomColor":case"border-bottom-color":i.bottom?i.bottom.color=Fy(n):i.bottom={style:"thin",color:Fy(n)};break;case"borderLeft":case"border-left":i.left=Wy(n);break;case"borderLeftColor":case"border-left-color":i.left?i.left.color=Fy(n):i.left={style:"thin",color:Fy(n)};break;case"border":o=Wy(n),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=n;break;case"verticalAlign":case"vertical-align":i.alignment=i.alignment||{},i.alignment.vertical=By(n);break;case"whiteSpace":case"white-space":i.alignment=i.alignment||{},i.alignment.wrapText=n&&"nowrap"!=n;break;case"color":i.color=Fy(n);break;case"background":case"backgroundColor":i.fgColor=Fy(n);break;case"fontSize":case"font-size":i.sz=parseFloat(n);break;case"fontWeight":case"font-weight":i.bold="bold"==n;break;case"fontStyle":case"font-style":i.italic="italic"==n;break;default:i[t]=n}}return i},Xy={n:t=>{const e=Z(t)?parseFloat(t):t;return Number.isNaN(e)?t:e},t:t=>t,d:(t,e)=>Z(t)?X(t)?Q(t):Po(Ro(t,e.model.options.formatLocale)):t instanceof Date?Po(t):t,tm:t=>Z(t)?new Date(t):t,dt:t=>Z(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)return null;const e=parseFloat(t);return isNaN(e)?t:e},a:t=>Z(t)?JSON.parse(t):t,h:t=>t},Qy=new Map;class Ky extends Ny{get tooltip(){return this._tooltip}set tooltip(t){this._tooltip=t}get hasTooltip(){return null!=this._tooltip}get rowspan(){return this._rowspan}set rowspan(t){this._rowspan=t}get colspan(){return this._colspan}set colspan(t){this._colspan=t}get r(){return this.row.index}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&&yv(t.toString()))this._value=void 0,this.formula=t;else{const e=Xy[this.type](t,this);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=Xy[this.type](this.model.calculations.evaluate(this),this),this._evaluated=!0,this._value}get value2(){return this.hasFormula?wv(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:n}=this.model.options,r=this.value;if(null==r||""===r)return null;if("n"==e)return null!=i?Yo(o,i,n):this.model.options.numberFormatter;if("g"==e){if(null!=i)return Yo(o,i,n);if(K(r))return this.model.options.numberFormatter}else{if("t"==e)return null==i?null:Yo(o,i,!1);if("d"==e)return i?Io(o,i):this.model.options.dateFormatter;if("s"==e&&this.editorContent)return(t=>{if(t=t||null,!Qy.has(t))if(t){const e=t.reduce(((t,e)=>t.set(e.k,e.v)),new Map);Qy.set(t,(t=>e.has(t)?e.get(t):t))}else Qy.set(t,(t=>t));return Qy.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 av.fromA1(this.address)}get allowInvalid(){return super.allowInvalid??this.elm1.allowInvalid??this.elm2.allowInvalid??this.model.options.allowInvalid}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 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._colspan=t.cs??1,this._rowspan=t.rs??1,this._tooltip=t.tooltip,null!=t.f?this._evaluated=!1:null!=t.v&&(this.value=t.v),this._displayValue=t.dv}update(t){const e=super.update(t);return"cs"in t&&(e.cs=this._colspan,this._colspan=t.cs),"rs"in t&&(e.rs=this._rowspan,this._rowspan=t.rs),"tooltip"in t&&(e.tooltip=this._tooltip,this._tooltip=t.tooltip),"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._colspan>1&&(e.cs=this._colspan),this._rowspan>1&&(e.rs=this._rowspan),null!=this.value&&(e.v=this.value),this.hasTooltip&&(e.tooltip=this._tooltip),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=Yy(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=Yy(i)}toString(){return this.address}}const Jy={property:"value",enabled:!0};class tw extends(un(Ny)){get comparer(){return this._comparer}set comparer(t){this._comparer=t}get filter(){return this._filter??(this.model.options.filters?.enabled?Jy:{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 hv(this.index)}get range(){return new av(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}convertSourceHeader(t){return Array.isArray(t)?t.map(((t,e)=>(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,t))):Z(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=q(t.filter)?Object.assign({enabled:!0},t.filter):t.filter?Jy:!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 ew;!function(t){t[t.Asc=1]="Asc",t[t.Desc=-1]="Desc"}(ew||(ew={}));const iw={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},ow={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},nw=(t,e)=>t.origIndex-e.origIndex;class rw 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.applySort(),cn().info(`sorting applied: ${JSON.stringify(this.settings)}`))}constructor(t,e=[]){super(),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==ew.Desc&&null===e?(this.settings.splice(this.colMap.get(t),1),o=null):o?(o.ord=ew.Desc,this.settings.splice(this.colMap.get(t),1)):o={c:t,ord:ew.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==ew.Asc?i.comparer:(t,e)=>-i.comparer(t,e):e.ord==ew.Asc?iw[i.type??"t"]:ow[i.type??"t"]:(cn().warn(`Column sorting: Column with index ${e.c} not found`),null)})).filter((t=>t)),i=e.length;let o,n,r;t.rowRoot.sort(((t,s)=>{if(!1===t.sortable||!1===s.sortable)return t.origIndex-s.origIndex;for(n=0;n<i;n++)if(r=this.settings[n].c,o=e[n](t.cell(r),s.cell(r)),0!=o)return o;return 0})),t.indexRowsByTree()}resetSort(){this.settings=[],this.colMap.clear(),this.model.rowRoot.sort(nw),this.model.indexRowsByTree()}persistSort(){this.model.rows.forEach(((t,e)=>t.origIndex=e))}}class sw{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=Io("en-US")(this.date,"yyyy-MM-dd HH:mm:ss")),t}}class aw{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),this.cleanCell(t)},e&&this.populate(e)}populate(t){t.forEach((t=>{const e=t.a1||new av(t.c,t.r).A1;this._commentMap.has(e)||this._commentMap.set(e,[]),this._commentMap.get(e).push(new sw(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=av.fromA1(e);i.shift(t),i.A1!=e&&(this._commentMap.set(i.A1,this._commentMap.get(e)),this._commentMap.delete(e))}))}}class lw{get tokenizer(){return this._tokenizer}get dependencies(){return this._dependencies}get formulas(){return this._formulas}constructor(t){this.model=t,this._tokenizer=new nv,this._formulas=new Map,this._dependencies=new vw(t),this.context=new Ay(t)}createFormula(t){const e=new _v(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 n=this.model.getCellByName(o,t.range);n&&this._dependencies.add(e,n.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 _v(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=function(t){return t instanceof RangeError?"Maximum call stack size exceeded"==t.message?"infinite loop":t.message:t.toString()}(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 n=o.calculations.getFormula(i);n.hasSheetReference(e)&&(i.formula=n.shift(t).createFormulaString(!1),o.calculations.updateDependencies(i))}))})),this}getFormulaCells(){const t=this.model,e=[];let i;const o=t.rows.length,n=t.columns.length;for(let r=0;r<o;r++){i=t.rows[r];for(let t=0;t<n;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 n=this.getFormula(o);n.renameSheet(t,e)&&(o.formula=n.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 cw="#ff0000",hw="#fcd53f",dw="#00bb5e",uw="#555555",pw=new Map([["3Arrows",[{icon:["fas","down"],color:cw},{icon:["fas","right"],color:hw},{icon:["fas","up"],color:dw}]],["3ArrowsGray",[{icon:["fas","down"],color:uw},{icon:["fas","right"],color:uw},{icon:["fas","up"],color:uw}]],["3Flags",[{icon:["fas","flag-pennant"],color:cw},{icon:["fas","flag-pennant"],color:hw},{icon:["fas","flag-pennant"],color:dw}]],["3TrafficLights1",[{icon:["fas","circle"],color:cw},{icon:["fas","circle"],color:hw},{icon:["fas","circle"],color:dw}]],["3TrafficLights2",[{icon:["fas","square-o"],color:cw},{icon:["fas","square-o"],color:hw},{icon:["fas","square-o"],color:dw}]],["3Signs",[{icon:["fas","square"],rotation:45,color:cw},{icon:["fas","triangle"],color:hw},{icon:["fas","circle"],color:dw}]],["3Symbols",[{icon:["fas","circle-xmark"],color:cw},{icon:["fas","circle-exclamation"],color:hw},{icon:["fas","circle-check"],color:dw}]],["3Symbols2",[{icon:["fas","xmark"],color:cw},{icon:["fas","exclamation"],color:hw},{icon:["fas","check"],color:dw}]],["3Stars",[{icon:["fal","star"],color:hw},{icon:["fas","star-half-stroke"],color:hw},{icon:["fas","star"],color:hw}]],["3Triangles",[{icon:"caret-down",color:cw},{icon:"dash",color:hw},{icon:"caret-up",color:dw}]],["4Arrows",[{icon:["fas","down"],color:cw},{icon:["fas","down-right"],color:hw},{icon:["fas","up-right"],color:hw},{icon:["fas","up"],color:dw}]],["4ArrowsGray",[{icon:["fas","down"],color:uw},{icon:["fas","down-right"],color:uw},{icon:["fas","up-right"],color:uw},{icon:["fas","up"],color:uw}]],["4RedToBlack",[{icon:["fas","circle"],color:"#000000"},{icon:["fas","circle"],color:"#b1b1b1"},{icon:["fas","circle"],color:"#edb2a3"},{icon:["fas","circle"],color:cw}]],["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:cw},{icon:["fas","circle"],color:hw},{icon:["fas","circle"],color:dw}]],["5Arrows",[{icon:["fas","down"],color:cw},{icon:["fas","down-right"],color:hw},{icon:["fas","right"],color:hw},{icon:["fas","up-right"],color:hw},{icon:["fas","up"],color:dw}]],["5ArrowsGray",[{icon:["fas","down"],color:uw},{icon:["fas","down-right"],color:uw},{icon:["fas","right"],color:uw},{icon:["fas","up-right"],color:uw},{icon:["fas","up"],color:uw}]],["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"}]]]),gw=(t,e)=>{const i=pw.get(t);return i?i[e]:null};class fw{get dependencies(){return this._dependencies}constructor(t,e){this.model=t,this.formats=[],this.cellFormatMap=new Map,this.extremes=new Map,this._dependencies=new vw(t),e&&this.populate(e)}populate(t){t.forEach((t=>{try{this.add(t)}catch(e){cn().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)){let e=1/0,i=-1/0;t.ranges.forEach((t=>{for(const o of this.model.getValuesInRange(t))for(const t of o)null!=t&&(isNaN(t)||(e=Math.min(e,t),i=Math.max(i,t)))})),this.extremes.set(t.key,[e,i])}return this.extremes.get(t.key)}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,n]=this.getExtremes(e.cf);let r;const s=(i-o)/(n-o);if(e.cf.cmid?.color)r=.5==s?"#"+e.cf.cmid.color:s>.5?wn("#"+e.cf.cmid.color,"#"+e.cf.cmax.color,2*(s-.5)):wn("#"+e.cf.cmin.color,"#"+e.cf.cmid.color,2*s);else{if(!e.cf.cmin?.color||!e.cf.cmax?.color)return null;r=wn("#"+e.cf.cmin.color,"#"+e.cf.cmax.color,s)}return{color:xn(r).substring(1),fgColor:r.substring(1)}}evaluateBarFormat(t,e){const i=t.value;if(null==i)return null;const o=this.getExtremes(e.cf);let n=o[0];const r=o[1],s=n<0;s||(n-=.1*(r-n));const a=Math.round(100*(i-n)/(r-n));e.initialized||(e.initialized=!0,e.cf.ranges.forEach((e=>this._dependencies.add(t.address,e.A1,null))));const l=[];if(s){const t=Math.round(-100*n/(r-n));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 _v(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 n=this.model.getCellByName(o,t.range);n&&this._dependencies.add(i,n.address,null)}))}if(e.f&&!this.model.calculations.evaluateFormula(e.f,t))return null;const i={...e.cf.style};return i.color||kn(xn(Cn(e.cf.style.fgColor))),i}evaluateIconFormat(t,e){const i=t.value;if(null==i)return null;const[o,n]=this.getExtremes(e.cf);let r;for(let t=e.cf.thresh.length-1;t>=0;t--){const s=e.cf.thresh[t];if("percent"===s.t){if(null==r&&(r=100*(i-o)/(n-o)),r>=s.v)return{icon:gw(e.cf.v,t)}}else if("num"===s.t&&i>=s.v)return{icon:gw(e.cf.v,t)}}return null}evaluate(t){const e=t.address,i=this.cellFormatMap.get(e);if(!i)return null;let o=null,n=null;for(const e of i){try{switch(e.cf.type){case"formula":n=this.evaluateFormulaFormat(t,e);break;case"scale":n=this.evaluateScaleFormat(t,e);break;case"bar":n=this.evaluateBarFormat(t,e);break;case"icon":n=this.evaluateIconFormat(t,e);break;default:n=null}}catch(t){cn().error(`Conditional format error: ${JSON.stringify(e)}`,t)}if(n&&(o=o?{...o,...n}:n,e.cf.stop))break}return o}initConditionalFormat(t){return t.firstCell=null,t.ranges.forEach((e=>{for(const i of new Ew(e.intersect(this.model.gridRange))){const e=i.A1;"formula"===t.type&&(t.firstCell||(t.firstCell=i,t.formula=t.condition?new _v(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:av.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:av.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})))}}function mw(t,e,i){t.forEach((t=>t.forEach((t=>{t[1]==e&&(t[1]=i)}))))}class vw{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){this.model=t,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=av.fromA1(t).removeAnchors(),n=av.fromA1(e).removeAnchors();e=n.A1;const r=n.isRange,s=r?this._rangeDependencies:this._cellDependencies;let a=null;if((s.has(t)?s.get(t):s.set(t,new Map).get(t)).set(e,[n,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=r?t.calculations.dependencies.rangeDependants:t.calculations.dependencies.cellDependants),i=this.model.name}else a=r?this._rangeDependants:this._cellDependants;a&&(a.has(e)||a.set(e,new Map),a.get(e).set(t,[o,i]))}getDependants(t,e=null){const i=t.A1;return e=e??new Map,this._cellDependants.has(i)&&this._cellDependants.get(i).forEach((([t,o])=>{if(e.has(t))return;const n=e.set(t,[(o?this.model.getConnectedModel(o):this.model).getCellByRange(t),o]);t.A1!=i&&this.getDependants(t,n)})),this._rangeDependants.forEach(((i,o)=>{av.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)),mw(this._cellDependants,t,e),mw(this._cellDependencies,t,e),mw(this._rangeDependants,t,e),mw(this._rangeDependencies,t,e)}}const bw=(t,e)=>{const i=new RegExp(`${ht(t)}`,"ig");return t=>(i.lastIndex=0,i.test(at((t[e]??"").toString())))},yw=(t,e)=>i=>!!i[e]===t,ww=(t,e)=>{const i=t.map((t=>t.key?.toString()));return t=>null!=t[e]&&i.includes(t[e].toString())},xw=(t,e)=>t=>!1,kw=(t,e,i)=>(i=i??"value","b"===t?yw(e,i):"s"===t&&Array.isArray(e)?ww(e,"value"):"s"===t?bw(e?.toString(),"formattedValue"):"m"===t&&Array.isArray(e)?xw(e,i):bw(e?.toString(),"d"===t?"formattedValue":i));class Cw extends Event{constructor(){super("filter",{bubbles:!1,cancelable:!0,composed:!0})}}class Mw extends EventTarget{constructor(t){super(),this.model=t,this.settings=new Map,this.custom=!1}get(t){return this.settings.has(t)?this.settings.get(t):null}filter(t,e=!0){null===t.term||""===t.term?this.settings.delete(t.c):this.settings.set(t.c,t),this.custom||(this.settings.size>0?this.applyFilter(!1):this.resetFilter(!1)),e&&this.dispatchEvent(new Cw)}applyFilter(t=!0){const e=[];this.settings.forEach(((t,i)=>{const o=this.model.columns[i];e.push({c:i,matcher:kw(o.type,t.term,o.filter?.property)})}));const i=e.length,o=this.model.options.filters?.includeParents??!0,n=this.model.options.filters?.includeChildren??!0,r=new Set;this.model.rows.forEach((t=>{const s=r.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=hn.Matched,o&&t.walkUp((t=>{if(r.has(t.index)&&t.filterState>0)return!1;t.filterState=hn.ChildMatched,r.add(t.index)})),n&&t.walk((t=>{if(r.has(t.index)&&t.filterState>0)return!1;t.filterState=hn.ParentMatched,r.add(t.index)}))):s||(t.filterState=hn.Filtered),r.add(t.index)})),this.model.indexRows(),t&&this.dispatchEvent(new Cw)}resetFilter(t=!0){this.settings.clear(),this.model.rows.forEach((t=>t.filterState=hn.Matched)),this.model.indexRows(),t&&this.dispatchEvent(new Cw)}}class _w{get dependencies(){return this._dependencies}constructor(t,e){this.model=t,this.map=new Map,this.groups=new Map,this.extremes=new Map,this.maxIndex=0,this.updateRangeMap=!1,this._dependencies=new vw(t),this.populate(e)}populate(t){t?.forEach((t=>{try{this.add(av.fromA1(t.location),Array.isArray(t.data)?t.data.map((t=>[av.fromA1(t)])):t.data.split(",").map((t=>[av.fromA1(t)])),et({},jm.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 n,r,s,a;return null==o.minValue||Z(o.minValue)?"auto"==(o.minValue||"auto")?(n=n??st(...e[1].map((t=>i.getValuesInRange(t[0])))),s=n[0]):(this.extremes.has(e[0])||this.extremes.set(e[0],st(...o.dataRanges.map((t=>i.getValuesInRange(t[0]))))),r=this.extremes.get(e[0]),s=r[0]):s=o.minValue,null==o.maxValue||Z(o.maxValue)?"auto"==(o.maxValue||"auto")?(n=n??st(...e[1].map((t=>i.getValuesInRange(t[0])))),a=n[1]):(this.extremes.has(e[0])||this.extremes.set(e[0],st(...o.dataRanges.map((t=>i.getValuesInRange(t[0]))))),r=this.extremes.get(e[0]),a=r[1]):a=o.maxValue,[s,a]}createRangeMap(t,e,i){e=e.intersect(this.model.gridRange);const o=i[0][0].size,n=e.size;if(n.columns>1&&n.rows>1)return void this.model.logger?.error(`invalid sparkline location range: ${e.A1}`);let r=!1;if(r=1==n.columns&&1==n.rows?o.rows>1:n.columns>1,r)for(let o=e.c1;o<=e.c2;o++)this.map.set(new av(o,e.r1).A1,[t,i.map((([t,i])=>[new av(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 av(e.c1,o).A1,[t,i.map((([t,i])=>[new av(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(jm.DEFAULT_SPARKLINE_OPTIONS)),i))}update(t,e,i,o){const n=this.groups.get(t);Object.assign(n,{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 Sw extends av{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 Ew extends av{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 av(this.c+this.c1,this.r+this.r1)})}}class zw{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,q(e)?av.fromCoords(e):av.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 n=0;n<i.length;n++){e=i[n];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 n=e.A1;o!=n&&(this.rangeMap.delete(o),this.rangeMap.set(n,i))}))}}function Lw(t,e=null){const i=et({},jm.DEFAULT_OPTIONS,e,$n(t,e));return i.numberFormat?i.numberFormatter=Yo(i.formatLocale,i.numberFormat):i.numberFormatter||(i.numberFormatter=Yo(i.formatLocale)),i.dateFormat?i.dateFormatter=Io(i.formatLocale,i.dateFormat):i.dateFormatter||(i.dateFormatter=Io(i.formatLocale)),i.columnSorting&&(i.sorting=i.sorting||{enabled:!0}),"boolean"==typeof i.filters&&(i.filters={enabled:i.filters}),i.filters=Object.assign({},Nm,i.filters),"boolean"==typeof i.rowTree&&(i.rowTree={enabled:i.rowTree}),i.rowTree=Object.assign({},Pm,i.rowTree),"boolean"==typeof i.columnTree&&(i.columnTree={enabled:i.columnTree}),i.columnTree=Object.assign({},Pm,i.columnTree),i}class Rw extends(un(Ny)){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 lv(this.index)}get range(){return new av(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 Ky(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 Ky(this.model,e??{c:t,r:this.index}),this._data){const e=this.model.columns[t].data;null!=e&&(q(this._data[e])?i.populate(this._data[e]):i.hasValue||(i.value=this._data[e]))}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,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 n=this.model.columns.length,r=this.model.calculations;if(i)for(let i=0;i<n;i++)this.hasCellFormula(i)&&(o=this.cell(i),o.formula=r.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 n=this.model.columns.length,r=this.model.calculations;if(i)for(let i=0;i<n;i++)this.hasCellFormula(i)&&(o=this.cell(i),o.formula=r.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 Iw=i(4418),Hw=i.n(Iw);const Tw=t=>t?"1":"0",Aw=t=>null==t?"_":t,Ow=t=>null==t?"_":t.toString(),$w=t=>null==t?"_":JSON.stringify(t),Dw=t=>Aw(t&&t.color?t.color:"_")+Aw(t&&t.style?t.style:"_"),Nw=t=>Aw(t?t.horizontal:null)+Aw(t?t.vertical:null)+Aw(t?t.horizontal:null)+Ow(t?t.indent:null)+Tw(t?t.wrapText:null)+Ow(t?t.textRotation:null),Pw=t=>Hw()("s_"+Tw(t.bold)+Tw(t.italic)+Tw(t.underline)+Ow(t.sz)+Aw(t.font)+Aw(t.color)+Dw(t.top)+Dw(t.right)+Dw(t.bottom)+Dw(t.left)+Aw(t.patternType)+Aw(t.fgColor)+Aw(t.bgColor)+Nw(t.alignment)+Ow(t.angle)+$w(t.stops)+Tw(t.hidden)+Tw(t.editable)+$w(t.cssStyle)+$w(t.icon));function jw(t){const e={...t};return delete e.id,delete e.hash,e}class Vw{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?Zy(t):t,i=e.hash?e.hash:Pw(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=>q(t)?t:this.get(t))));return this.add(jw(e))}duplicate(t,e){const i=this.get(t);return this.add(jw({...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 Bw(t,e,i){const o="rows"==i?e.rows:e.columns,n=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}(o);for(const r of t){let t;if(t=r.index>-1?[o[r.index]]:r.level>-1?n.get(r.level):o,r.name){const e=r.name instanceof RegExp?r.name:new RegExp(ht(r.name));t=t.filter((t=>e.test(t.name)))}t.forEach((t=>{r.type?e.conditionalFormats.add(Object.assign({ranges:`${t.address}:${t.address}`},r)):(t.style=e.styles.add(r.style).id,"rows"==i&&null!=r.height?t.height=r.height:"columns"==i&&null!=r.width&&(t.width=r.width))}))}}function Fw(t,e){!function(t,e){for(const i of t)if(i.type)e.conditionalFormats.add(Object.assign({ranges:"A:"+e.columns[e.columns.length-1].address},i));else for(const t of e.columns)null==t.style&&(t.style=e.styles.add(i.style).id)}(t.cells??[],e),Bw(t.columns??[],e,"columns"),Bw(t.rows??[],e,"rows")}const Ww=["index","name","rows","columns","cells","options","sparklines","rules","comments","styles","names","props","tab","theme"];class Uw{get comments(){return this._comments}get calculations(){return this._calculations}get names(){return this._names}get sparklines(){return this._sparklines}get conditionalFormats(){return this._conditionalFormats}get mergedHeaders(){return this._mergedHeaders}get mergedCells(){return this._mergedCells}get hiddenCells(){return this._hiddenCells}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}constructor(t,e,i){this.otherModels={},this.autofitColumns=new Set,this.autofitRows=new Set,this.styles=new Vw(this),this._comments=new aw(this),this._calculations=new lw(this),this._names=new zw(this),this._sparklines=new _w(this),this._conditionalFormats=new fw(this),this._hiddenCells=new Map,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??Lw(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(av.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 av?this.getCellByRange(t):"string"==typeof t?this.getCellByA1(t):null:this.getCellByCoords(t,e||0)}createRows(t,e=new Rw(this,{l:-1}),i=0){let o=!1,n=!1;this.autofitRows.clear();const r=t.map(((t,e)=>{t||(t={}),isNaN(t.l)||(o=!0),null!=t.p&&(n=!0),"auto"==t.h&&this.autofitRows.add(e);const r=new Rw(this,t);return r.origIndex=e+i,r.name&&this.names.set(r.name,av.fullRow(e)),r}));let s=-1;return o?s=pn(r,e,{reverse:this.options.rowTree.reversed}):n?s=gn(r,e):e.children=r,[e,r,s,o]}insertRowData(t,e,i){const o=this.createRows(i,new Rw(this,{l:t.level}),e);this._maxRowLevel=Math.max(this._maxRowLevel,o[2]),t.insertChildren(o[0].children,e),this.indexRowsByTree()}applyTheme(t,e){if(e)for(const t of this.getInitializedCellIterator())t.invalidateStyle();Fw(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 n=new tw(this,t);return this._filter=n.hasFilter||this._filter,n.name&&this.names.set(n.name,av.fullColumn(o)),n})),this._levelBasedColTree=e,this._maxColumnLevel=-1,this.colRoot=new tw(this,{l:-1}),e?this._maxColumnLevel=pn(this.columns,this.colRoot,{reverse:this.options.columnTree.reversed}):i?this._maxColumnLevel=gn(this.columns,this.colRoot):this.colRoot.children=this.columns,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._mergedCells=[],t.cells?.forEach(((t,e)=>{const i=this.rows[t.r]?this.rows[t.r].cell(t.c,t):null;i?(i.colspan>1||i.rowspan>1)&&this._mergedCells.push({r:i.r,c:i.c,rs:i.rowspan,cs:i.colspan}):this.logger?.error(`invalid cell definition (index ${e}): ${JSON.stringify(t)}`)})),this.indexHiddenCells(),t.sparklines)try{this.sparklines.populate(t.sparklines)}catch(t){cn().error(`Sparkline init error: ${t}`)}if(t.names)try{this.names.populate(t.names)}catch(t){cn().error(`Named range init error: ${t}`)}if(t.rules)try{this.conditionalFormats.populate(t.rules)}catch(t){cn().error(`Conditional formats init error: ${t}`)}if(t.theme)try{this.applyTheme(t.theme)}catch(t){cn().error(`Theme init error: ${t}`)}if(t.comments)try{this.comments.populate(t.comments)}catch(t){cn().error(`Comment init error: ${t}`)}this._properties=t.props,this.otherSourceData={};const o=new Set(Ww),n=Object.keys(t).filter((t=>!o.has(t)));n.forEach((e=>this.otherSourceData[e]=t[e])),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(),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==hn.Filtered||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=[],n=[];let r,s,a=e.h,l=0;for(l=0;l<i.t;l++)r=this.visibleRows[l],a-=r.height,o.push(r);for(l=this.visibleRows.length-i.b;l<this.visibleRows.length;l++)r=this.visibleRows[l],a-=r.height;for(l=i.t+t.r;a>0&&l<this.visibleRows.length;)r=this.visibleRows[l++],a-=r.height,o.push(r);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++)s=this.visibleColumns[h],c-=s.width,n.push(s);for(h=this.visibleColumns.length-i.r;h<this.visibleColumns.length;h++)s=this.visibleColumns[h],c-=s.width;for(h=i.l+t.c;c>0&&h<this.visibleColumns.length;)s=this.visibleColumns[h++],c-=s.width,n.push(s);for(h=this.visibleColumns.length-i.r;h<this.visibleColumns.length;h++)n.push(this.visibleColumns[h]);return this._viewport={rows:o,columns:n}}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,n=new Array(o);let r,s=0,a=0;for(let o=t.r1;o<=t.r2;o++){n[s]=new Array(i),a=0,r=this.rows[o];for(let i=t.c1;i<=t.c2;i++)n[s][a++]=e?r.cell(i).formattedValue:r.cell(i).value;++s}return n}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 av(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 av(0,0,this.columns.length-1,this.rows.length-1)}getRangeIterator(t,e=!1){return new Sw(this,e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange))}getInitializedCellIterator(){return new Sw(this,this.gridRange,!0)}getCellArray(t){const e=[];for(const i of this.getRangeIterator(t))e.push(i);return e}transformRangeToMatrix(t,e){let i,o,n;const r=[];for(let s=(t=t.intersect(this.gridRange)).r1;s<=t.r2;s++)if(i=this.rows[s],i){n=[];for(let r=t.c1;r<=t.c2;r++)o=i.cell(r),o&&n.push(e(o));r.push(n)}return r}getCellMatrix(t){return this.getModelByRange(t)?.transformRangeToMatrix(t,(t=>t))}getValueMatrix(t){return this.getModelByRange(t)?.transformRangeToMatrix(t,(t=>t.value))}shiftMerges(t){const{index:e,offset:i,direction:o}=t,n={down:t=>{e<=t.r?t.r+=i:e>t.r&&e<t.r+t.rs&&(this.rows[t.r].cell(t.c).rowspan=t.rs+=i)},up:t=>{e<=t.r?t.r-=i:e>t.r&&e<t.r+t.rs&&(this.rows[t.r].cell(t.c).rowspan=t.rs-=i)},right:t=>{e<=t.c?t.c+=i:e>t.c&&e<t.c+t.cs&&(this.rows[t.r].cell(t.c).colspan=t.cs+=i)},left:t=>{e<=t.c?t.c-=i:e>t.c&&e<t.c+t.cs&&(this.rows[t.r].cell(t.c).colspan=t.cs-=i)}};this.mergedCells.forEach(n[o]),this.indexHiddenCells()}indexHiddenCells(){this._hiddenCells.clear(),this.mergedCells.forEach((t=>{if(!(t.r>0||this._hiddenCells.has(t.r)&&this._hiddenCells.get(t.r).has(t.c)))for(let e=t.r;e<t.r+t.rs;e++)for(let i=t.c;i<t.c+t.cs;i++)(e>t.r||i>t.c)&&(this._hiddenCells.has(e)||this._hiddenCells.set(e,new Map),this._hiddenCells.get(e).set(i,t))}))}shift(t){t.sheet=this.name,this.shiftMerges(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 n=new Array(e).fill(null).map((()=>new tw(this)));return this.columns.splice(t,0,...n),this.maxColumnLevel>0&&o.insertChildren(n,t-(o.index||-1)-1),this.indexColumns(),this.clearCalculations(!0),n}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 n=this.columns.splice(t,e);return i?.deleteChildren(n),this.indexColumns(),this.clearCalculations(!0),n}insertRows(t,e,i=!1){const o=Math.min(this.rows.length-1,t),n=o<0?this.rowRoot:this.rows[o].parent;i&&++t;const r=isNaN(e)?e.length:e;this.shift({index:t,offset:r,direction:"down"});const s=isNaN(e)?e:new Array(r).fill(null).map((()=>new Rw(this)));return this.rows.splice(t,0,...s),this.maxRowLevel>0&&n.insertChildren(s,t-(n.index||-1)-1),this.indexRows(),this.clearCalculations(!0),s}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:n}=t,r=[],s=[],a=0===i.length||0===i[0].length;let l,c;const h=a?null:new av(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:r,oldValues:s,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&&(s.push(c.value2),c.spillValue(i[a][d],e),n&&(c.format=n.format,c.type=n.type),o&&null!=o[a][d]&&(c.displayValue=o[a][d]),r.push(c))}}return{cells:r,oldValues:s,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?pn:gn;this._maxRowLevel=t(this.rows,this.rowRoot,{reverse:this.options.rowTree.reversed}),this.indexRowsByTree()}rebuildColumnTree(){const t=this._levelBasedColTree?pn:gn;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 Gw{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 Uw(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 Uw(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 qw{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 Yw{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 av(t,e,i,o),this.activeCell=new av(0,0)}static fromRange(t){return new Yw(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=av.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 Zw={...jm,CUSTOM_CLIPBOARD_TYPE:"web application/json"};class Xw{constructor(t,e,i=Zw.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 Qw=function(t,e,i,o){var n,r=arguments.length,s=r<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,i,o);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(s=(r<3?n(s):r>3?n(e,i,s):n(e,i))||s);return r>3&&s&&Object.defineProperty(e,i,s),s};let Kw=class extends es{constructor(){super(),this.render=()=>Or`
|
|
2659
|
+
`,Nm={enabled:!1,includeChildren:!0,includeParents:!0},Pm={enabled:!0,reversed:!1},jm={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:2,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,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"}},...W},Vm=/^(?!.*[\\\/\*\[\]\:\?"])(.{1,31})$/;function Bm(t){return Vm.test(t)}function Fm(t){return["\\","/","*","[","]",":","?",'"'].forEach((e=>t=t.replace(new RegExp(`\\${e}`,"g"),""))),t}function Wm(t,e){return!isNaN(t)&&null!=t||!isNaN(e)&&null!=e||(t=null==t?"":at(t.toString()).toLowerCase(),e=null==e?"":at(e.toString()).toLowerCase()),t>e?1:t<e?-1:0}function Um(t,e){const i=Z(e);return Z(t)?(t=t.toString().trim()).startsWith("=")?0==Wm(e,i?t.substring(1):parseFloat(t.substring(1))):t.startsWith(">=")?Wm(e,i?t.substring(2):parseFloat(t.substring(2)))>=0:t.startsWith("<=")?Wm(e,i?t.substring(2):parseFloat(t.substring(2)))<=0:t.startsWith(">")?Wm(e,i?t.substring(1):parseFloat(t.substring(1)))>0:t.startsWith("<")?Wm(e,i?t.substring(1):parseFloat(t.substring(1)))<0:0==Wm(e,i?t:isNaN(t)?t||"":parseFloat(t)):e==t}const Gm=new Map([["=",["==",1,0]],[">",[">",1,0]],["<",["<",1,0]],[">=",[">=",1,0]],["<=",["<=",1,0]],["+",["+",2,0]],["-",["-",2,0]],["*",["*",3,0]],["/",["/",3,0]]]),qm=t=>["=",">","<",">=","<="].includes(t),Ym=t=>["+","-","*","/"].includes(t),Zm=t=>Ym(t)||qm(t);function Xm(t,e,i){switch(i){case"+":return t+e;case"-":return t-e;case"*":return t*e;case"/":return t/e;case"=":return 0==Wm(t,e);case">":return Wm(t,e)>0;case"<":return Wm(t,e)<0;case">=":return Wm(t,e)>=0;case"<=":return Wm(t,e)<=0;default:throw new Error(`Invalid operator: ${i}`)}}function Qm(t,e,i){const o=Array.isArray(t),n=Array.isArray(e);if(!o&&!n)return[[Xm(t,e,i)]];const r=Math.max(o?t.length:0,n?e.length:0),s=Math.max(o?t[0].length:0,n?e[0].length:0),a=[];for(let l=0;l<r;l++){const r=[];for(let a=0;a<s;a++){const s=o?t[l]?.[a]:t,c=n?e[l]?.[a]:e,h=null==s&&null==c?null:Xm(s,c,i);r.push(h)}a.push(r)}return a}var Km;!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"}(Km||(Km={}));const Jm=t=>t===Km.Number||t===Km.Boolean||t===Km.String||t===Km.Cell||t===Km.Variable||t===Km.Range,tv=t=>t>=48&&t<=57,ev=t=>"true"===(t=t.toLowerCase())||"false"===t,iv=t=>t>=65&&t<=90||t>=97&&t<=122||t>=192&&t<=687,ov={decimalPoint:".",stringQuote:'"',sheetQuote:"'",argumentSeparator:","};class nv{constructor(t){this.options=Object.assign(ov,t)}tokenize(t){const e=[],i=t.length;let o,n,r,s,a=0,l="",c=!1,h=!1,d=!1;for(;a<i;){if(o=t.charAt(a),n=o.charCodeAt(0),"="==o&&0==a)++a;else if(tv(n)){for(l=(d?"-":"")+o,++a;a<i;)if(o=t.charAt(a),n=o.charCodeAt(0),tv(n))l+=o,++a;else{if(o!==this.options.decimalPoint)break;l+=".",++a}d=!1,e.push([l,Km.Number])}else if(iv(n)||"$"==o){l=o,r=null,++a;do{if(o=t.charAt(a),n=o.charCodeAt(0),iv(n)||tv(n)||"."===o||"$"===o||"_"===o)"_"==o?r=Km.Variable:tv(n)&&!c&&null==r&&(r=Km.Cell),l+=o,++a,a==i&&e.push([l,r||Km.Variable]);else{if("("==o){e.push([l.toUpperCase(),Km.Function]),e.push([o,Km.OpenBracket]),++a;break}if("'"==o)e.push([l,Km.Sheet]),l="",e.push([o,Km.SheetQuote]),c=!0,++a;else if(":"==o)r=Km.Range,l+=o,++a;else{if(!c||" "!=o){if("!"==o){""!==l&&e.push([l,Km.Sheet]),e.push([o,Km.SheetSeparator]),c=!1,l="",++a;break}e.push([l,r||(ev(l)?Km.Boolean:Km.Variable)]);break}l+=o,++a}}}while(a<i)}else if(Zm(o)){if("-"===o&&tv(t.charCodeAt(a+1))&&(null==s||"("==s[0]||qm(s[0])||s[1]==Km.ArgumentSeparator))d=!0;else{for(l=o;qm(t.charAt(a+1));)l+=t.charAt(++a);e.push([l,Km.Operator])}++a}else if("("===o)e.push([o,Km.OpenBracket]),++a;else if(")"===o)e.push([o,Km.CloseBracket]),++a;else if("'"===o)e.push([o,Km.SheetQuote]),c=!0,++a;else if(o===this.options.argumentSeparator)e.push([o,Km.ArgumentSeparator]),++a;else if(o===this.options.stringQuote){for(h=!1,e.push([o,Km.StringQuote]),l="";++a<i;){if(o=t.charAt(a),o===this.options.stringQuote){h=!0,++a;break}l+=o}e.push([l,Km.String]),h&&e.push([this.options.stringQuote,Km.StringQuote])}else e.push([o,Km.Unknown]),++a;s=e[e.length-1]}return e}}function rv(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 sv=/(?:'?([\w\s]*)'?!)?(\$?)([a-z]*)(\$?)(\d*)(?::(\$?)([a-z]*)(\$?)(\d*))?/i;class av{constructor(t,e,i,o,n){this.setCoords(t,e,i,o),this.sheet=n}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,n=!0){const r=rv(this.c1,t,i,n);n&&(e+=this.c1+t!=r&&0!=t?t>0?1:-1:0),this.c1=r,this.r1=rv(this.r1,e,o,n),this.c2=rv(this.c2,t,i,n),this.r2=rv(this.r2,e,o,n)}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:n,ignoreAnchors:r}=t;switch(o){case"down":return this.shiftDown(e,i,n,r);case"up":return this.shiftUp(e,i,n,r);case"left":return this.shiftLeft(e,i,n,r);case"right":return this.shiftRight(e,i,n,r)}}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),n=Math.min(t.r2,this.r2);return e<=i&&o<=n?new av(e,o,i,n,this.sheet):null}unite(t){return this.normalize(),t.normalize(),new av(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 av(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?hv(this.c1):"")+(0===this.r1&&this.r2===1/0?"":(this.r1Anchor?"$":"")+lv(this.r1)),i=t?(this.c2Anchor?"$":"")+(!isNaN(this.c2)&&this.c2<1/0?hv(this.c2):"")+(this.r2Anchor?"$":"")+(!isNaN(this.r2)&&this.r2<1/0?lv(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 av(this.c1,this.r1),this.c2<1/0?new av(this.c2,this.r1):null],[this.r2<1/0?new av(this.c1,this.r2):null,this.r2<1/0&&this.c2<1/0?new av(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 av(e,t)}static fromA1(t){const e=sv.exec(t),i=new av(e[3]?dv(e[3]):null,e[5]?cv(e[5]):null,e[7]?dv(e[7]):null,e[9]?cv(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 lv(t){return(t+1).toString()}function cv(t){return parseInt(t)-1}function hv(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 dv(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 uv(t){return t.sort(((t,e)=>{const i=Math.min(t.r1,t.r2),o=Math.min(e.r1,e.r2),n=Math.min(t.c1,t.c2),r=Math.min(e.c1,e.c2);return i<o?-1:i>o?1:n<r?-1:r>n?1:0}))}function pv(t){return t.formula.cells.map((e=>t.cell.model.getCellByRange(e[1])))}function gv(t){let e=t;for(;Array.isArray(e);)e=e.length>0?e[0]:null;return e}function fv(t){return Array.isArray(t)?t:[[t]]}function mv(t,e,i,o){if(!Array.isArray(t))return e(t,i,o);for(let o=0;o<t.length;o++)if(!1===mv(t[o],e,null==i?o:i,null==i?void 0:o))return!1}av.fromA1s=(t,e=";")=>t.split(e).map((t=>av.fromA1(t))),av.toA1s=(t,e=";")=>t.map((t=>t.A1)).join(e),av.fromCoords=t=>new av(t.c1,t.r1,t.c2,t.r2),av.fullColumn=t=>new av(t,0,t,1/0),av.fullRow=t=>new av(0,t,1/0,t);const vv=new Set(["SUMPRODUCT","FILTER"]),bv=t=>vv.has(t),yv=t=>!!(t&&t.length>0&&"="==t.charAt(0)),wv=t=>yv(t)?t:"="+(t??""),xv=t=>yv(t)?t.substring(1):t,kv=["#5B97FF","#FF616B","#B77CFF","#00B02C","#FC58BE","#FF9000","#2EB0B3"],Cv=t=>kv[t%kv.length],Mv=new Map([["FORMULATEXT","_xlfn."],["CONCAT","_xlfn."],["INDIRECT","_xlfn."],["ISOWEEKNUM","_xlfn."],["SWITCH","_xlfn."],["XOR","_xlfn."]]);class _v{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([Km.Cell,Km.Range].includes(e[1])){const o=(t?"'"+t+"'!":"")+e[0];this._colors.set(o,{color:Cv(this._colors.size),address:e[0],sheet:t,type:e[1],tokenIndex:i}),t=null}else e[1]==Km.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(![Km.Cell,Km.Range].includes(e[1]))return-1;if(0==t||this._tokens[t-1][1]!=Km.SheetSeparator)return-1;let i=t-2;for(;i>=0;){if(this._tokens[i][1]==Km.Sheet)return i;i--}return-1}removeSheetToken(t){if(this._tokens[t][1]!=Km.Sheet&&(t=this.findSheetTokenIndex(t)),t>-1){t>0&&this._tokens[t-1][1]==Km.SheetQuote&&t--;let e=t;for(;e<this._tokens.length&&[Km.SheetSeparator,Km.SheetQuote,Km.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==Km.Sheet&&/\s/.test(e)?(o.push([this.tokenizer.options.sheetQuote,Km.SheetQuote]),o.push([e,Km.Sheet]),o.push([this.tokenizer.options.sheetQuote,Km.SheetQuote])):o.push([e,i]),o.push(["!",Km.SheetSeparator]),this._tokens.splice(t,0,...o),o.length}clone(){return new _v(this.createFormulaString(),this.tokenizer)}updateDependecies(){let t;this._variables=[],this._cells=[],this._ranges=[],this._tokens.forEach(((e,i)=>{switch(e[1]){case Km.Sheet:t=e[0];break;case Km.Variable:this._variables.push([i,e[0],t]),t=void 0;break;case Km.Cell:this._cells.push([i,av.fromA1(e[0]),t]),t=void 0;break;case Km.Range:this._ranges.push([i,av.fromA1(e[0]),t]),t=void 0}}))}createFormulaString(t=!1,e=!1){const i=this.tokenizer.options;let o,n,r,s="";for(let l=0;l<this._tokens.length;l++)switch(o=this._tokens[l],o[1]){case Km.SheetQuote:s+="'";break;case Km.SheetSeparator:s+="!";break;case Km.Sheet:n=o[0],s+=t?`<span style="font-style:italic">${n}</span>`:n;break;case Km.Variable:s+=o[0];break;case Km.Range:case Km.Cell:r=(n?"'"+n+"'!":"")+o[0],s+=t?`<span style="color:${this.getNamedColor(r)}">${o[0]}</span>`:o[0],n=null;break;case Km.StringQuote:s+=i.stringQuote;break;case Km.String:s+=o[0].replace(new RegExp(i.stringQuote,"g"),"\\"+i.stringQuote);break;case Km.ArgumentSeparator:s+=i.argumentSeparator;break;case Km.Function:s+=(e?(a=o[0],Mv.get(a)??""):"")+o[0];break;case Km.Unknown:s+=t?`<span style="background:#f00;color:#fff">${o[0]}</span>`:o[0];break;default:s+=o[0]}var a;return s}createExpressionTree(){const t=[],e=[],i=this.tokens;let o,n,r,s,a,l=null;for(let c=0;c<i.length;c++)switch(o=i[c],o[1]){case Km.Sheet:l=o[0];break;case Km.Cell:case Km.Range:t.push({t:o[0],tt:o[1],s:l}),l=null;break;case Km.Number:case Km.String:case Km.Boolean:case Km.Variable:t.push({t:o[0],tt:o[1]});break;case Km.Operator:for(0==t.length&&t.push({t:"",tt:Km.Operand}),r=Gm.get(o[0]);e.length>0&&(s=Gm.get(e[e.length-1][0]),s)&&(0===r[2]&&r[1]<=s[1]||1===r[2]&&r[1]<s[1]);)n=e.pop(),a=[t.pop(),t.pop()].reverse(),t.push({t:n[0],tt:n[1],c:a});e.push(o);break;case Km.Function:case Km.OpenBracket:e.push(o);break;case Km.ArgumentSeparator:for(;e.length>0&&(n=e[e.length-1],![Km.OpenBracket,Km.ArgumentSeparator].includes(n[1]));)n=e.pop(),a=[t.pop(),t.pop()].reverse(),t.push({t:n[0],tt:n[1],c:a});e.push(o);break;case Km.CloseBracket:for(a=[];e.length>0&&e[e.length-1][1]!==Km.OpenBracket;)n=e.pop(),n[1]==Km.Operator?a.push({t:n[0],tt:n[1],c:[t.pop(),t.pop()].reverse()}):n[1]==Km.ArgumentSeparator&&t.length>0&&a.push(t.pop());e.pop(),e.length>0&&e[e.length-1][1]===Km.Function?(n=e.pop(),a=a.reverse(),t.length>0&&i[c-1][1]!==Km.OpenBracket&&a.unshift(t.pop()),t.push({t:n[0],tt:n[1],c:a})):t.push(...a)}for(;e.length>0;)n=e.pop(),t.push({t:n[0],tt:n[1],c:[t.pop(),t.pop()].reverse()});return t.pop()}createExpressionJSCode(t,e,i){let o;switch(t.tt){case Km.Range:return"t.rn('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case Km.Cell:return"t.cl('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case Km.Operand:return"t.cl()";case Km.Variable:return i||e?.tt===Km.Function?"t.nr('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")":"t.nv('"+t.t+"'"+(t.s?",'"+t.s+"'":"")+")";case Km.String:return"'"+t.t.replace(/'/g,"\\'")+"'";case Km.Boolean:return"T"==t.t[0].toUpperCase()?"1":"0";case Km.Function:return o=t.c.map((e=>this.createExpressionJSCode(e,t,i||bv(t.t)))),"t.fn('"+t.t+"').call(ctx"+(o.length>0?","+o.join(","):"")+")";case Km.Operator:return i?(o=t.c.map((e=>this.createExpressionJSCode(e,t,i||bv(t.t)))),"t.op("+o[0]+","+o[1]+",'"+t.t+"')"):Gm.has(t.t)?"("+t.c.map((e=>this.createExpressionJSCode(e,t,i))).join(Gm.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:n,sheet:r,allSheets:s}=t;return this._cells&&this._cells.forEach((t=>{if(s||null==t[2]||t[2]==r){switch(o){case"up":t[1].shiftUp(e,i,n);break;case"right":t[1].shiftRight(e,i,n);break;case"down":t[1].shiftDown(e,i,n);break;case"left":t[1].shiftLeft(e,i,n)}this._tokens[t[0]][0]=t[1].A1}})),this._ranges&&this._ranges.forEach((t=>{if(s||null==t[2]||t[2]==r){switch(o){case"up":t[1].shiftUp(e,i,n);break;case"right":t[1].shiftRight(e,i,n);break;case"down":t[1].shiftDown(e,i,n);break;case"left":t[1].shiftLeft(e,i,n)}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]==Km.Sheet&&o[0]==t&&(o[0]=e,i=!0)})),i}}function Sv(t,e){return e&&(t=Yo(this.cell.model.options.locale,Jo(e,"d"),!1)(t)),null==t?"":t.toString()}function Ev(t,e){return(t=null==t?"":t.toString()).substring(0,e)}function zv(t,e){return(t=null==t?"":t.toString()).substring(Math.max(0,t.length-e),t.length)}function Lv(t,e,i){return(t=null==t?"":t.toString()).substring(e,e+i)}function Rv(...t){let e="";return mv(t,(t=>e+=null==t?"":t.toString())),e}function Iv(t){return t instanceof Date?t:Z(t)?Ro(t,po()):jo(t)}function Hv(t){return K(t)?t:Po(t instanceof Date?t:Ro(t,po()))}function Tv(t){return Z(t)?Hv(t):t}function Av(t,e){const i=Iv(t).getDay();switch(e){case 2:return i;case 3:return i-1;default:return i%7+1}}function Ov(t,e,i){return Vo(Hv(gv(t)),e)}function $v(){return Po(ie(new Date))}function Dv(t){return null==(t=gv(t))||""===t}function Nv(t,e,i){return Po(new Date(t,e-1,i))}function Pv(t){return Iv(t).getFullYear()}function jv(t){return Iv(t).getMonth()+1}function Vv(t){return Iv(t).getDate()}function Bv(t,e){const i=Iv(t);return i.setMonth(i.getMonth()+e+1),i.setDate(0),Po(i)}function Fv(t){return fi(Iv(t))}function Wv(t){return Math.acos(t)}function Uv(t){return Math.acosh(t)}function Gv(t){return Math.PI/2-Math.atan(t)}function qv(t){return.5*Math.log((t+1)/(t-1))}function Yv(t){return Math.asin(t)}function Zv(t){return Math.asinh(t)}function Xv(t){return Math.atan(t)}function Qv(t){return Math.atanh(t)}function Kv(t){return Math.cos(t)}function Jv(t){return Math.cosh(t)}function tb(t){return 1/Math.tan(t)}function eb(t){return 1/Math.tanh(t)}function ib(t){return 1/Math.sin(t)}function ob(t){return 1/Math.sinh(t)}function nb(t){return 180*t/Math.PI}function rb(){return Math.PI}function sb(t){return 1/Math.cos(t)}function ab(t){return 1/Math.cosh(t)}function lb(t){return Math.sin(t)}function cb(t){return Math.sinh(t)}function hb(t){return Math.tan(t)}function db(t){return Math.tanh(t)}function ub(t){return Math.abs(t)}function pb(t){if(t<0)throw new Error("#NUM");return Math.ceil(t)}function gb(t){return(t=Math.ceil(t))%2==0?t:t+1}function fb(t){return Math.pow(Math.E,t)}function mb(t){return t<0?-1:0==t?1:t*mb(t-1)}function vb(t){return t<=0?1:t*vb(t-2)}function bb(t){return Math.floor(t)}function yb(t){return t%1!=0}function wb(t){return!yb(t)&&t%2==0}function xb(t){return yb(t)||t%2==1}function kb(t){return Math.log(t)}function Cb(t,e){return Math.log(t)/Math.log(e)}function Mb(t){return Math.log10(t)}function _b(t,e){return t%e}function Sb(t){return(t=Math.ceil(t))%2==0?t+1:t}function Eb(t,e){return Math.pow(t,e)}function zb(...t){let e=1;return mv(t,(t=>e*=t||1)),e}function Lb(t,e){return Math.floor(t/e)}function Rb(t){return t*Math.PI/180}function Ib(){return Math.random()}function Hb(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 Tb(t,e){return t=Math.ceil(t),e=Math.floor(e),Math.floor(Math.random()*(e-t+1))+t}function Ab(t,e){return t.toFixed(e)}function Ob(t,e){return e=e||0,Math.floor(t*Math.pow(10,e))/Math.pow(10,e)}function $b(t,e){return e=e||0,Math.ceil(t*Math.pow(10,e))/Math.pow(10,e)}function Db(t,e,i=1,o=1){const n=Array(t).fill(null).map((()=>Array(e)));let r=i;for(let i=0;i<t;i++)for(let t=0;t<e;t++)n[i][t]=r,r+=o;return n}function Nb(t){return t<0?-1:t>0?1:0}function Pb(t){return Math.sqrt(t)}function jb(t){return Math.sqrt(Math.PI*t)}function Vb(...t){let e=0;return mv(t,(t=>e+=null==t?0:1)),e}function Bb(...t){let e=0;return mv(t,(t=>e+=null==t?1:0)),e}function Fb(t,e){let i=0;return mv(t,(t=>i+=Um(e,t)?1:0)),i}function Wb(...t){let e=0;const i=new Map;return mv(t,(t=>{i.has(t)||(i.set(t,t),++e)})),e}function Ub(...t){let e=0;return mv(t,(t=>e+=isNaN(t)?0:t)),e}function Gb(t,e,i){let o=0;if(i){const n=fv(i);mv(t,((t,i,r)=>o+=Um(e,t)&&n[i]&&n[i][r]&&!isNaN(n[i][r])?n[i][r]:0))}else mv(t,(t=>o+=Um(e,t)&&!isNaN(t)?t:0));return o}function qb(t,e){let i=0;return mv(t,(t=>i+=Um(e,t)&&!isNaN(t)?t*t:0)),i}function Yb(...t){let e=0;const i=t.shift();if(0===t.length)mv(i,(t=>e+=isNaN(t)?0:t));else{const o=fv(t[0]);mv(i,((t,i,n)=>e+=o[i]&&o[i][n]&&!isNaN(t)&&!isNaN(o[i][n])?t*o[i][n]:0))}return e}function Zb(t,e){return t=null==t?"":t.toString(),e?e=>e==t:(t=t.toLowerCase(),e=>(e??"").toString().toLowerCase().includes(t))}function Xb(t,e,i=1){const o=new av(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 Qb(t,e,i,o=!1){let n,r;const s=Zb(t,o);for(n=0;n<e.length;n++)for(r=0;r<e[n].length;r++)if(s(e[n][r]))return e[n][i-1];return null}function Kb(t,e,i,o=!1){let n,r;const s=Zb(t,o);for(n=0;n<e.length;n++)for(r=0;r<e[n].length;r++)if(s(e[n][r]))return e[i-1][r];return null}function Jb(t,e,i){let o,n;t:for(o=0;o<e.length;o++)for(n=0;n<e[o].length;n++)if(e[o][n]==t)break t;return i?i[o]?i[o][n]:null:e[o][e[o].length-1]}function ty(t,...e){let i=null,o=0;return mv(e,(e=>{if(t==++o)return i=e,!1})),i}function ey(t){return(t?av.fromA1(t).c1:this.cell.c)+1}function iy(t){return(t?av.fromA1(t).r1:this.cell.r)+1}function oy(t){return Array.isArray(t)?t[0]?.length:1}function ny(t){return Array.isArray(t)?t.length:1}function ry(){const t=pv(this)[0];return t&&t.hasFormula?" "+wv(t.formula):""}function sy(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 ay(t){const e=this.cell,i=e.model,o=i.getCellByA1(t);let n;return i.calculations.dependencies.cellDependencies.has(e.address)?n=i.calculations.dependencies.cellDependencies.get(e.address):(n=new Map,i.calculations.dependencies.cellDependencies.set(e.address,n)),n.set(o.address,[o.range]),i.calculations.dependencies.cellDependants.has(o.address)?n=i.calculations.dependencies.cellDependants.get(o.address):(n=new Map,i.calculations.dependencies.cellDependants.set(o.address,n)),n.set(e.address,[e.range]),o.value}function ly(t,e,i=0){let o,n;for(o=0;o<e.length;o++)for(n=0;n<e[o].length;n++){if(0==i&&e[o][n]==t)return Math.max(o+1,n+1);if(1==i&&e[o][n]>t)return Math.max(o+1,n+1);if(-1==i&&e[o][n]<t)return Math.max(o+1,n+1)}return null}function cy(t,e,i,o,n){const r=pv(this)[0],s=[];o=o||1,n=n||1;for(let t=0;t<o;t++){const o=[];for(let s=0;s<n;s++){const n=r.model.rows[r.r+t+e].cell(r.c+s+i);o.push(n?r.value:null)}s.push(o)}return s}function hy(t,e){const i=[];if(t.length==e.length)for(let o=0;o<t.length;o++){let n=!0;for(let t=0;t<e[o].length;t++)if(!e[o][t]){n=!1;break}n&&i.push(t[o])}return i}const dy=[[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]],uy=[[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 py(t){const e=t*t;let i,o=dy[0][4]*e,n=e;for(i=0;i<3;i+=1)o=(o+dy[0][i])*e,n=(n+uy[0][i])*e;return t*(o+dy[0][3])/(n+uy[0][3])}function gy(...t){let e=!0;return mv(t,(t=>{if(!t)return e=!1})),e}function fy(...t){let e=!1;return mv(t,(t=>{if(t)return e=!0})),e}function my(...t){let e=null;return mv(t,(t=>{e=null===e?!!t:!!t!=e})),e}function vy(...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 by(t,e,i){return t?e:i}function yy(t){return!t}function wy(){return!1}function xy(){return!0}function ky(t,e){return e=""===e?null:e,t===1/0||t===-1/0||Number.isNaN(t)?e:t}var Cy=i(235),My=i.n(Cy),_y=i(5949),Sy=i.n(_y);function Ey(...t){let e=0,i=0;return mv(t,(t=>{null==t||isNaN(t)||(e+=t||0,++i)})),e/i}function zy(t,e){const i=Sy()(),o=fv(t),n=fv(e);for(let t=0;t<o.length;t++)for(let e=0;e<o[t].length;e++)i(o[t][e],(n[t]?n[t][e]:1)??1);return i()}function Ly(...t){const e=function(t){const e=[];return mv(t,(t=>e.push(t))),e}(t),i=My()(e.length,e,1);return e.reduce(((t,e)=>t+Math.abs(e-i)),0)/e.length}function Ry(...t){let e=1/0;return mv(t,(t=>e=Math.min(e,t))),e}function Iy(...t){let e=-1/0;return mv(t,(t=>e=Math.max(e,t))),e}function Hy(t,e){Object.keys(e).forEach((i=>t.set(nt(i,"_").replace(/_/g,".").toUpperCase(),e[i])))}const Ty=new Map;Hy(Ty,C),Hy(Ty,M),Hy(Ty,_),Hy(Ty,S),Hy(Ty,z),Hy(Ty,E),Hy(Ty,L);class Ay{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);return(null==t?this.currentCell:i.getCellByA1(t)).value},this.rn=(t,e)=>this.getModel(e).getValuesInRange(av.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=Ty.get(t);if(e)return e;throw new Error(`Function "${t}" not found`)},this.op=(t,e,i)=>Qm(t,e,i)}}function Oy(t,e){const i=Array(e).fill(null);let o=0,n=[];if(t.length>1){n=t.map((t=>parseFloat(t.value)||0)),o=n[1]-n[0];for(let t=2;t<n.length;t++)if(n[t]-n[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=n[n.length-1];for(let n=0;n<e;n++)t=i[n]=t+o}return i}function $y(t,e,i){const o=new _v(t.formula,t.model.calculations.tokenizer),n=[];for(let t=0;t<i;t++)n.push(wv(o.shift({index:0,offset:1,direction:e,allSheets:!0}).createFormulaString()));return n}function Dy(t,e,i,o){const n=t.getCellMatrix(e);let r;"right"==o?r=Ln(n):"down"==o?r=zn(n):"left"==o?r=Sn(n):"up"==o&&(r=Sn(zn(n)));const s=new Array(i.size.rows);for(let t=0;t<i.size.rows;t++){s[t]=new Array(i.size.columns);for(let e=0;e<i.size.columns;e++){const i=n.length>t?n[t][n[t].length>e?e:0]:n[0][e];s[t][e]=i.hasDisplayValue?i.displayValue:null}}const a=i.size["down"==o||"up"==o?"rows":"columns"];let l=r.map((t=>t[t.length-1].hasFormula?$y(t[t.length-1],o,a):Oy(t,a)));return"down"==o?l=zn(l):"left"==o?l=Sn(l):"up"==o&&(l=En(zn(l))),t.spillValues({cell:t.getCellByRange(i.bounds[0][0]),values:l,propertyCell:t.getCellByRange(e.bounds[0][0]),displayValues:s})}class Ny{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 allowInvalid(){return this._allowInvalid}set allowInvalid(t){this._allowInvalid=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?wv(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._allowInvalid=t.allowInvalid,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),"allowInvalid"in t&&(e.allowInvalid=this._allowInvalid,this._allowInvalid=t.allowInvalid),"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=it(this._properties)),null!=this._editorContent&&(t.content=q(this._editorContent)?it(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 Py(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"}]]),Vy=(()=>{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 By(t){return"middle"==t?"center":t}function Fy(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 Wy=t=>{if("none"==t)return null;const e=t.split(" "),i=parseInt(e[0].charAt(0))||1,o=e.length>1?e[1]:"solid",n=Vy.get(o);return{style:(n?n.get(i):null)??"thin",color:e.length>2?Fy(e[2]):"CCCCCC"}},Uy=t=>{const e=jy.get(t.style||"none");return e?[Ht(e.width),e.style,"none"==t.style?"var(--og-cell-background)":`#${t.color}`].join(" "):"none"},Gy=(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=vn(o,.75);break;case"mediumGray":t.backgroundColor=vn(o,.5);break;case"lightGray":t.backgroundColor=vn(o,.25);break;case"gray125":t.backgroundColor=vn(o,.125);break;case"gray0625":t.backgroundColor=vn(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},qy=(t,e)=>(t.backgroundImage=`linear-gradient(${(e.angle??0)+90}deg,${e.stops.map((t=>`#${t.rgb} ${100*t.v}%`)).join(",")})`,t),Yy=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=It(t.sz)),t.color&&(e.color="#"+t.color),t.top&&(e.borderTop=Uy(t.top)),t.right&&(e.borderRight=Uy(t.right)),t.bottom&&(e.borderBottom=Uy(t.bottom)),t.left&&(e.borderLeft=Uy(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??"left",e.alignItems=e.alignItems??"center",e.whiteSpace="pre-wrap"),t.patternType?Gy(e,t):t.stops&&t.stops.length?qy(e,t):t.fgColor?e.backgroundColor="#"+t.fgColor:t.bgColor&&(e.backgroundColor="#"+t.bgColor),e},Zy=t=>{const e=q(t)?t:Py(t),i={};let o;for(const t in e){const n=e[t];if(null!=n)switch(t){case"borderTop":case"border-top":i.top=Wy(n);break;case"borderTopColor":case"border-top-color":i.top?i.top.color=Fy(n):i.top={style:"thin",color:Fy(n)};break;case"borderRight":case"border-right":i.right=Wy(n);break;case"borderRightColor":case"border-right-color":i.right?i.right.color=Fy(n):i.right={style:"thin",color:Fy(n)};break;case"borderBottom":case"border-bottom":i.bottom=Wy(n);break;case"borderBottomColor":case"border-bottom-color":i.bottom?i.bottom.color=Fy(n):i.bottom={style:"thin",color:Fy(n)};break;case"borderLeft":case"border-left":i.left=Wy(n);break;case"borderLeftColor":case"border-left-color":i.left?i.left.color=Fy(n):i.left={style:"thin",color:Fy(n)};break;case"border":o=Wy(n),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=n;break;case"verticalAlign":case"vertical-align":i.alignment=i.alignment||{},i.alignment.vertical=By(n);break;case"whiteSpace":case"white-space":i.alignment=i.alignment||{},i.alignment.wrapText=n&&"nowrap"!=n;break;case"color":i.color=Fy(n);break;case"background":case"backgroundColor":i.fgColor=Fy(n);break;case"fontSize":case"font-size":i.sz=parseFloat(n);break;case"fontWeight":case"font-weight":i.bold="bold"==n;break;case"fontStyle":case"font-style":i.italic="italic"==n;break;default:i[t]=n}}return i},Xy={n:t=>{const e=Z(t)?parseFloat(t):t;return Number.isNaN(e)?t:e},t:t=>t,d:(t,e)=>Z(t)?X(t)?Q(t):Po(Ro(t,e.model.options.formatLocale)):t instanceof Date?Po(t):t,tm:t=>Z(t)?new Date(t):t,dt:t=>Z(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)return null;const e=parseFloat(t);return isNaN(e)?t:e},a:t=>Z(t)?JSON.parse(t):t,h:t=>t},Qy=new Map;class Ky extends Ny{get tooltip(){return this._tooltip}set tooltip(t){this._tooltip=t}get hasTooltip(){return null!=this._tooltip}get rowspan(){return this._rowspan}set rowspan(t){this._rowspan=t}get colspan(){return this._colspan}set colspan(t){this._colspan=t}get r(){return this.row.index}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&&yv(t.toString()))this._value=void 0,this.formula=t;else{const e=Xy[this.type](t,this);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=Xy[this.type](this.model.calculations.evaluate(this),this),this._evaluated=!0,this._value}get value2(){return this.hasFormula?wv(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:n}=this.model.options,r=this.value;if(null==r||""===r)return null;if("n"==e)return null!=i?Yo(o,i,n):this.model.options.numberFormatter;if("g"==e){if(null!=i)return Yo(o,i,n);if(K(r))return this.model.options.numberFormatter}else{if("t"==e)return null==i?null:Yo(o,i,!1);if("d"==e)return i?Io(o,i):this.model.options.dateFormatter;if("s"==e&&this.editorContent)return(t=>{if(t=t||null,!Qy.has(t))if(t){const e=t.reduce(((t,e)=>t.set(e.k,e.v)),new Map);Qy.set(t,(t=>e.has(t)?e.get(t):t))}else Qy.set(t,(t=>t));return Qy.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 av.fromA1(this.address)}get allowInvalid(){return super.allowInvalid??this.elm1.allowInvalid??this.elm2.allowInvalid??this.model.options.allowInvalid}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 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._colspan=t.cs??1,this._rowspan=t.rs??1,this._tooltip=t.tooltip,null!=t.f?this._evaluated=!1:null!=t.v&&(this.value=t.v),this._displayValue=t.dv}update(t){const e=super.update(t);return"cs"in t&&(e.cs=this._colspan,this._colspan=t.cs),"rs"in t&&(e.rs=this._rowspan,this._rowspan=t.rs),"tooltip"in t&&(e.tooltip=this._tooltip,this._tooltip=t.tooltip),"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._colspan>1&&(e.cs=this._colspan),this._rowspan>1&&(e.rs=this._rowspan),null!=this.value&&(e.v=this.value),this.hasTooltip&&(e.tooltip=this._tooltip),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=Yy(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=Yy(i)}toString(){return this.address}}const Jy={property:"value",enabled:!0};class tw extends(un(Ny)){get comparer(){return this._comparer}set comparer(t){this._comparer=t}get filter(){return this._filter??(this.model.options.filters?.enabled?Jy:{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 hv(this.index)}get range(){return new av(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}convertSourceHeader(t){return Array.isArray(t)?t.map(((t,e)=>(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,t))):Z(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=q(t.filter)?Object.assign({enabled:!0},t.filter):t.filter?Jy:!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 ew;!function(t){t[t.Asc=1]="Asc",t[t.Desc=-1]="Desc"}(ew||(ew={}));const iw={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},ow={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},nw=(t,e)=>t.origIndex-e.origIndex;class rw 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.applySort(),cn().info(`sorting applied: ${JSON.stringify(this.settings)}`))}constructor(t,e=[]){super(),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==ew.Desc&&null===e?(this.settings.splice(this.colMap.get(t),1),o=null):o?(o.ord=ew.Desc,this.settings.splice(this.colMap.get(t),1)):o={c:t,ord:ew.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==ew.Asc?i.comparer:(t,e)=>-i.comparer(t,e):e.ord==ew.Asc?iw[i.type??"t"]:ow[i.type??"t"]:(cn().warn(`Column sorting: Column with index ${e.c} not found`),null)})).filter((t=>t)),i=e.length;let o,n,r;t.rowRoot.sort(((t,s)=>{if(!1===t.sortable||!1===s.sortable)return t.origIndex-s.origIndex;for(n=0;n<i;n++)if(r=this.settings[n].c,o=e[n](t.cell(r),s.cell(r)),0!=o)return o;return 0})),t.indexRowsByTree()}resetSort(){this.settings=[],this.colMap.clear(),this.model.rowRoot.sort(nw),this.model.indexRowsByTree()}persistSort(){this.model.rows.forEach(((t,e)=>t.origIndex=e))}}class sw{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=Io("en-US")(this.date,"yyyy-MM-dd HH:mm:ss")),t}}class aw{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),this.cleanCell(t)},e&&this.populate(e)}populate(t){t.forEach((t=>{const e=t.a1||new av(t.c,t.r).A1;this._commentMap.has(e)||this._commentMap.set(e,[]),this._commentMap.get(e).push(new sw(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=av.fromA1(e);i.shift(t),i.A1!=e&&(this._commentMap.set(i.A1,this._commentMap.get(e)),this._commentMap.delete(e))}))}}class lw{get tokenizer(){return this._tokenizer}get dependencies(){return this._dependencies}get formulas(){return this._formulas}constructor(t){this.model=t,this._tokenizer=new nv,this._formulas=new Map,this._dependencies=new vw(t),this.context=new Ay(t)}createFormula(t){const e=new _v(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 n=this.model.getCellByName(o,t.range);n&&this._dependencies.add(e,n.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 _v(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=function(t){return t instanceof RangeError?"Maximum call stack size exceeded"==t.message?"infinite loop":t.message:t.toString()}(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 n=o.calculations.getFormula(i);n.hasSheetReference(e)&&(i.formula=n.shift(t).createFormulaString(!1),o.calculations.updateDependencies(i))}))})),this}getFormulaCells(){const t=this.model,e=[];let i;const o=t.rows.length,n=t.columns.length;for(let r=0;r<o;r++){i=t.rows[r];for(let t=0;t<n;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 n=this.getFormula(o);n.renameSheet(t,e)&&(o.formula=n.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 cw="#ff0000",hw="#fcd53f",dw="#00bb5e",uw="#555555",pw=new Map([["3Arrows",[{icon:["fas","down"],color:cw},{icon:["fas","right"],color:hw},{icon:["fas","up"],color:dw}]],["3ArrowsGray",[{icon:["fas","down"],color:uw},{icon:["fas","right"],color:uw},{icon:["fas","up"],color:uw}]],["3Flags",[{icon:["fas","flag-pennant"],color:cw},{icon:["fas","flag-pennant"],color:hw},{icon:["fas","flag-pennant"],color:dw}]],["3TrafficLights1",[{icon:["fas","circle"],color:cw},{icon:["fas","circle"],color:hw},{icon:["fas","circle"],color:dw}]],["3TrafficLights2",[{icon:["fas","square-o"],color:cw},{icon:["fas","square-o"],color:hw},{icon:["fas","square-o"],color:dw}]],["3Signs",[{icon:["fas","square"],rotation:45,color:cw},{icon:["fas","triangle"],color:hw},{icon:["fas","circle"],color:dw}]],["3Symbols",[{icon:["fas","circle-xmark"],color:cw},{icon:["fas","circle-exclamation"],color:hw},{icon:["fas","circle-check"],color:dw}]],["3Symbols2",[{icon:["fas","xmark"],color:cw},{icon:["fas","exclamation"],color:hw},{icon:["fas","check"],color:dw}]],["3Stars",[{icon:["fal","star"],color:hw},{icon:["fas","star-half-stroke"],color:hw},{icon:["fas","star"],color:hw}]],["3Triangles",[{icon:"caret-down",color:cw},{icon:"dash",color:hw},{icon:"caret-up",color:dw}]],["4Arrows",[{icon:["fas","down"],color:cw},{icon:["fas","down-right"],color:hw},{icon:["fas","up-right"],color:hw},{icon:["fas","up"],color:dw}]],["4ArrowsGray",[{icon:["fas","down"],color:uw},{icon:["fas","down-right"],color:uw},{icon:["fas","up-right"],color:uw},{icon:["fas","up"],color:uw}]],["4RedToBlack",[{icon:["fas","circle"],color:"#000000"},{icon:["fas","circle"],color:"#b1b1b1"},{icon:["fas","circle"],color:"#edb2a3"},{icon:["fas","circle"],color:cw}]],["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:cw},{icon:["fas","circle"],color:hw},{icon:["fas","circle"],color:dw}]],["5Arrows",[{icon:["fas","down"],color:cw},{icon:["fas","down-right"],color:hw},{icon:["fas","right"],color:hw},{icon:["fas","up-right"],color:hw},{icon:["fas","up"],color:dw}]],["5ArrowsGray",[{icon:["fas","down"],color:uw},{icon:["fas","down-right"],color:uw},{icon:["fas","right"],color:uw},{icon:["fas","up-right"],color:uw},{icon:["fas","up"],color:uw}]],["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"}]]]),gw=(t,e)=>{const i=pw.get(t);return i?i[e]:null};class fw{get dependencies(){return this._dependencies}constructor(t,e){this.model=t,this.formats=[],this.cellFormatMap=new Map,this.extremes=new Map,this._dependencies=new vw(t),e&&this.populate(e)}populate(t){t.forEach((t=>{try{this.add(t)}catch(e){cn().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)){let e=1/0,i=-1/0;t.ranges.forEach((t=>{for(const o of this.model.getValuesInRange(t))for(const t of o)null!=t&&(isNaN(t)||(e=Math.min(e,t),i=Math.max(i,t)))})),this.extremes.set(t.key,[e,i])}return this.extremes.get(t.key)}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,n]=this.getExtremes(e.cf);let r;const s=(i-o)/(n-o);if(e.cf.cmid?.color)r=.5==s?"#"+e.cf.cmid.color:s>.5?wn("#"+e.cf.cmid.color,"#"+e.cf.cmax.color,2*(s-.5)):wn("#"+e.cf.cmin.color,"#"+e.cf.cmid.color,2*s);else{if(!e.cf.cmin?.color||!e.cf.cmax?.color)return null;r=wn("#"+e.cf.cmin.color,"#"+e.cf.cmax.color,s)}return{color:xn(r).substring(1),fgColor:r.substring(1)}}evaluateBarFormat(t,e){const i=t.value;if(null==i)return null;const o=this.getExtremes(e.cf);let n=o[0];const r=o[1],s=n<0;s||(n-=.1*(r-n));const a=Math.round(100*(i-n)/(r-n));e.initialized||(e.initialized=!0,e.cf.ranges.forEach((e=>this._dependencies.add(t.address,e.A1,null))));const l=[];if(s){const t=Math.round(-100*n/(r-n));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 _v(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 n=this.model.getCellByName(o,t.range);n&&this._dependencies.add(i,n.address,null)}))}if(e.f&&!this.model.calculations.evaluateFormula(e.f,t))return null;const i={...e.cf.style};return i.color||kn(xn(Cn(e.cf.style.fgColor))),i}evaluateIconFormat(t,e){const i=t.value;if(null==i)return null;const[o,n]=this.getExtremes(e.cf);let r;for(let t=e.cf.thresh.length-1;t>=0;t--){const s=e.cf.thresh[t];if("percent"===s.t){if(null==r&&(r=100*(i-o)/(n-o)),r>=s.v)return{icon:gw(e.cf.v,t)}}else if("num"===s.t&&i>=s.v)return{icon:gw(e.cf.v,t)}}return null}evaluate(t){const e=t.address,i=this.cellFormatMap.get(e);if(!i)return null;let o=null,n=null;for(const e of i){try{switch(e.cf.type){case"formula":n=this.evaluateFormulaFormat(t,e);break;case"scale":n=this.evaluateScaleFormat(t,e);break;case"bar":n=this.evaluateBarFormat(t,e);break;case"icon":n=this.evaluateIconFormat(t,e);break;default:n=null}}catch(t){cn().error(`Conditional format error: ${JSON.stringify(e)}`,t)}if(n&&(o=o?{...o,...n}:n,e.cf.stop))break}return o}initConditionalFormat(t){return t.firstCell=null,t.ranges.forEach((e=>{for(const i of new Ew(e.intersect(this.model.gridRange))){const e=i.A1;"formula"===t.type&&(t.firstCell||(t.firstCell=i,t.formula=t.condition?new _v(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:av.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:av.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})))}}function mw(t,e,i){t.forEach((t=>t.forEach((t=>{t[1]==e&&(t[1]=i)}))))}class vw{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){this.model=t,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=av.fromA1(t).removeAnchors(),n=av.fromA1(e).removeAnchors();e=n.A1;const r=n.isRange,s=r?this._rangeDependencies:this._cellDependencies;let a=null;if((s.has(t)?s.get(t):s.set(t,new Map).get(t)).set(e,[n,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=r?t.calculations.dependencies.rangeDependants:t.calculations.dependencies.cellDependants),i=this.model.name}else a=r?this._rangeDependants:this._cellDependants;a&&(a.has(e)||a.set(e,new Map),a.get(e).set(t,[o,i]))}getDependants(t,e=null){const i=t.A1;return e=e??new Map,this._cellDependants.has(i)&&this._cellDependants.get(i).forEach((([t,o])=>{if(e.has(t))return;const n=e.set(t,[(o?this.model.getConnectedModel(o):this.model).getCellByRange(t),o]);t.A1!=i&&this.getDependants(t,n)})),this._rangeDependants.forEach(((i,o)=>{av.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)),mw(this._cellDependants,t,e),mw(this._cellDependencies,t,e),mw(this._rangeDependants,t,e),mw(this._rangeDependencies,t,e)}}const bw=(t,e)=>{const i=new RegExp(`${ht(t)}`,"ig");return t=>(i.lastIndex=0,i.test(at((t[e]??"").toString())))},yw=(t,e)=>i=>!!i[e]===t,ww=(t,e)=>{const i=t.map((t=>t.key?.toString()));return t=>null!=t[e]&&i.includes(t[e].toString())},xw=(t,e)=>t=>!1,kw=(t,e,i)=>(i=i??"value","b"===t?yw(e,i):"s"===t&&Array.isArray(e)?ww(e,"value"):"s"===t?bw(e?.toString(),"formattedValue"):"m"===t&&Array.isArray(e)?xw(e,i):bw(e?.toString(),"d"===t?"formattedValue":i));class Cw extends Event{constructor(){super("filter",{bubbles:!1,cancelable:!0,composed:!0})}}class Mw extends EventTarget{constructor(t){super(),this.model=t,this.settings=new Map,this.custom=!1}get(t){return this.settings.has(t)?this.settings.get(t):null}filter(t,e=!0){null===t.term||""===t.term?this.settings.delete(t.c):this.settings.set(t.c,t),this.custom||(this.settings.size>0?this.applyFilter(!1):this.resetFilter(!1)),e&&this.dispatchEvent(new Cw)}applyFilter(t=!0){const e=[];this.settings.forEach(((t,i)=>{const o=this.model.columns[i];e.push({c:i,matcher:kw(o.type,t.term,o.filter?.property)})}));const i=e.length,o=this.model.options.filters?.includeParents??!0,n=this.model.options.filters?.includeChildren??!0,r=new Set;this.model.rows.forEach((t=>{const s=r.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=hn.Matched,o&&t.walkUp((t=>{if(r.has(t.index)&&t.filterState>0)return!1;t.filterState=hn.ChildMatched,r.add(t.index)})),n&&t.walk((t=>{if(r.has(t.index)&&t.filterState>0)return!1;t.filterState=hn.ParentMatched,r.add(t.index)}))):s||(t.filterState=hn.Filtered),r.add(t.index)})),this.model.indexRows(),t&&this.dispatchEvent(new Cw)}resetFilter(t=!0){this.settings.clear(),this.model.rows.forEach((t=>t.filterState=hn.Matched)),this.model.indexRows(),t&&this.dispatchEvent(new Cw)}}class _w{get dependencies(){return this._dependencies}constructor(t,e){this.model=t,this.map=new Map,this.groups=new Map,this.extremes=new Map,this.maxIndex=0,this.updateRangeMap=!1,this._dependencies=new vw(t),this.populate(e)}populate(t){t?.forEach((t=>{try{this.add(av.fromA1(t.location),Array.isArray(t.data)?t.data.map((t=>[av.fromA1(t)])):t.data.split(",").map((t=>[av.fromA1(t)])),et({},jm.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 n,r,s,a;return null==o.minValue||Z(o.minValue)?"auto"==(o.minValue||"auto")?(n=n??st(...e[1].map((t=>i.getValuesInRange(t[0])))),s=n[0]):(this.extremes.has(e[0])||this.extremes.set(e[0],st(...o.dataRanges.map((t=>i.getValuesInRange(t[0]))))),r=this.extremes.get(e[0]),s=r[0]):s=o.minValue,null==o.maxValue||Z(o.maxValue)?"auto"==(o.maxValue||"auto")?(n=n??st(...e[1].map((t=>i.getValuesInRange(t[0])))),a=n[1]):(this.extremes.has(e[0])||this.extremes.set(e[0],st(...o.dataRanges.map((t=>i.getValuesInRange(t[0]))))),r=this.extremes.get(e[0]),a=r[1]):a=o.maxValue,[s,a]}createRangeMap(t,e,i){e=e.intersect(this.model.gridRange);const o=i[0][0].size,n=e.size;if(n.columns>1&&n.rows>1)return void this.model.logger?.error(`invalid sparkline location range: ${e.A1}`);let r=!1;if(r=1==n.columns&&1==n.rows?o.rows>1:n.columns>1,r)for(let o=e.c1;o<=e.c2;o++)this.map.set(new av(o,e.r1).A1,[t,i.map((([t,i])=>[new av(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 av(e.c1,o).A1,[t,i.map((([t,i])=>[new av(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(jm.DEFAULT_SPARKLINE_OPTIONS)),i))}update(t,e,i,o){const n=this.groups.get(t);Object.assign(n,{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 Sw extends av{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 Ew extends av{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 av(this.c+this.c1,this.r+this.r1)})}}class zw{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,q(e)?av.fromCoords(e):av.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 n=0;n<i.length;n++){e=i[n];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 n=e.A1;o!=n&&(this.rangeMap.delete(o),this.rangeMap.set(n,i))}))}}function Lw(t,e=null){const i=et({},jm.DEFAULT_OPTIONS,e,$n(t,e));return i.numberFormat?i.numberFormatter=Yo(i.formatLocale,i.numberFormat):i.numberFormatter||(i.numberFormatter=Yo(i.formatLocale)),i.dateFormat?i.dateFormatter=Io(i.formatLocale,i.dateFormat):i.dateFormatter||(i.dateFormatter=Io(i.formatLocale)),i.columnSorting&&(i.sorting=i.sorting||{enabled:!0}),"boolean"==typeof i.filters&&(i.filters={enabled:i.filters}),i.filters=Object.assign({},Nm,i.filters),"boolean"==typeof i.rowTree&&(i.rowTree={enabled:i.rowTree}),i.rowTree=Object.assign({},Pm,i.rowTree),"boolean"==typeof i.columnTree&&(i.columnTree={enabled:i.columnTree}),i.columnTree=Object.assign({},Pm,i.columnTree),i}class Rw extends(un(Ny)){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 lv(this.index)}get range(){return new av(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 Ky(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 Ky(this.model,e??{c:t,r:this.index}),this._data){const e=this.model.columns[t].data;null!=e&&(q(this._data[e])?i.populate(this._data[e]):i.hasValue||(i.value=this._data[e]))}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,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 n=this.model.columns.length,r=this.model.calculations;if(i)for(let i=0;i<n;i++)this.hasCellFormula(i)&&(o=this.cell(i),o.formula=r.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 n=this.model.columns.length,r=this.model.calculations;if(i)for(let i=0;i<n;i++)this.hasCellFormula(i)&&(o=this.cell(i),o.formula=r.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 Iw=i(4418),Hw=i.n(Iw);const Tw=t=>t?"1":"0",Aw=t=>null==t?"_":t,Ow=t=>null==t?"_":t.toString(),$w=t=>null==t?"_":JSON.stringify(t),Dw=t=>Aw(t&&t.color?t.color:"_")+Aw(t&&t.style?t.style:"_"),Nw=t=>Aw(t?t.horizontal:null)+Aw(t?t.vertical:null)+Aw(t?t.horizontal:null)+Ow(t?t.indent:null)+Tw(t?t.wrapText:null)+Ow(t?t.textRotation:null),Pw=t=>Hw()("s_"+Tw(t.bold)+Tw(t.italic)+Tw(t.underline)+Ow(t.sz)+Aw(t.font)+Aw(t.color)+Dw(t.top)+Dw(t.right)+Dw(t.bottom)+Dw(t.left)+Aw(t.patternType)+Aw(t.fgColor)+Aw(t.bgColor)+Nw(t.alignment)+Ow(t.angle)+$w(t.stops)+Tw(t.hidden)+Tw(t.editable)+$w(t.cssStyle)+$w(t.icon));function jw(t){const e={...t};return delete e.id,delete e.hash,e}class Vw{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?Zy(t):t,i=e.hash?e.hash:Pw(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=>q(t)?t:this.get(t))));return this.add(jw(e))}duplicate(t,e){const i=this.get(t);return this.add(jw({...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 Bw(t,e,i){const o="rows"==i?e.rows:e.columns,n=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}(o);for(const r of t){let t;if(t=r.index>-1?[o[r.index]]:r.level>-1?n.get(r.level):o,r.name){const e=r.name instanceof RegExp?r.name:new RegExp(ht(r.name));t=t.filter((t=>e.test(t.name)))}t.forEach((t=>{r.type?e.conditionalFormats.add(Object.assign({ranges:`${t.address}:${t.address}`},r)):(t.style=e.styles.add(r.style).id,"rows"==i&&null!=r.height?t.height=r.height:"columns"==i&&null!=r.width&&(t.width=r.width))}))}}function Fw(t,e){!function(t,e){for(const i of t)if(i.type)e.conditionalFormats.add(Object.assign({ranges:"A:"+e.columns[e.columns.length-1].address},i));else for(const t of e.columns)null==t.style&&(t.style=e.styles.add(i.style).id)}(t.cells??[],e),Bw(t.columns??[],e,"columns"),Bw(t.rows??[],e,"rows")}const Ww=["index","name","rows","columns","cells","options","sparklines","rules","comments","styles","names","props","tab","theme"];class Uw{get comments(){return this._comments}get calculations(){return this._calculations}get names(){return this._names}get sparklines(){return this._sparklines}get conditionalFormats(){return this._conditionalFormats}get mergedHeaders(){return this._mergedHeaders}get mergedCells(){return this._mergedCells}get hiddenCells(){return this._hiddenCells}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}constructor(t,e,i){this.otherModels={},this.autofitColumns=new Set,this.autofitRows=new Set,this.styles=new Vw(this),this._comments=new aw(this),this._calculations=new lw(this),this._names=new zw(this),this._sparklines=new _w(this),this._conditionalFormats=new fw(this),this._hiddenCells=new Map,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??Lw(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(av.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 av?this.getCellByRange(t):"string"==typeof t?this.getCellByA1(t):null:this.getCellByCoords(t,e||0)}createRows(t,e=new Rw(this,{l:-1}),i=0){let o=!1,n=!1;this.autofitRows.clear();const r=t.map(((t,e)=>{t||(t={}),isNaN(t.l)||(o=!0),null!=t.p&&(n=!0),"auto"==t.h&&this.autofitRows.add(e);const r=new Rw(this,t);return r.origIndex=e+i,r.name&&this.names.set(r.name,av.fullRow(e)),r}));let s=-1;return o?s=pn(r,e,{reverse:this.options.rowTree.reversed}):n?s=gn(r,e):e.children=r,[e,r,s,o]}insertRowData(t,e,i){const o=this.createRows(i,new Rw(this,{l:t.level}),e);this._maxRowLevel=Math.max(this._maxRowLevel,o[2]),t.insertChildren(o[0].children,e),this.indexRowsByTree()}applyTheme(t,e){if(e)for(const t of this.getInitializedCellIterator())t.invalidateStyle();Fw(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 n=new tw(this,t);return this._filter=n.hasFilter||this._filter,n.name&&this.names.set(n.name,av.fullColumn(o)),n})),this._levelBasedColTree=e,this._maxColumnLevel=-1,this.colRoot=new tw(this,{l:-1}),e?this._maxColumnLevel=pn(this.columns,this.colRoot,{reverse:this.options.columnTree.reversed}):i?this._maxColumnLevel=gn(this.columns,this.colRoot):this.colRoot.children=this.columns,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._mergedCells=[],t.cells?.forEach(((t,e)=>{const i=this.rows[t.r]?this.rows[t.r].cell(t.c,t):null;i?(i.colspan>1||i.rowspan>1)&&this._mergedCells.push({r:i.r,c:i.c,rs:i.rowspan,cs:i.colspan}):this.logger?.error(`invalid cell definition (index ${e}): ${JSON.stringify(t)}`)})),this.indexHiddenCells(),t.sparklines)try{this.sparklines.populate(t.sparklines)}catch(t){cn().error(`Sparkline init error: ${t}`)}if(t.names)try{this.names.populate(t.names)}catch(t){cn().error(`Named range init error: ${t}`)}if(t.rules)try{this.conditionalFormats.populate(t.rules)}catch(t){cn().error(`Conditional formats init error: ${t}`)}if(t.theme)try{this.applyTheme(t.theme)}catch(t){cn().error(`Theme init error: ${t}`)}if(t.comments)try{this.comments.populate(t.comments)}catch(t){cn().error(`Comment init error: ${t}`)}this._properties=t.props,this.otherSourceData={};const o=new Set(Ww),n=Object.keys(t).filter((t=>!o.has(t)));n.forEach((e=>this.otherSourceData[e]=t[e])),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(),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==hn.Filtered||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=[],n=[];let r,s,a=e.h,l=0;for(l=0;l<i.t;l++)r=this.visibleRows[l],a-=r.height,o.push(r);for(l=this.visibleRows.length-i.b;l<this.visibleRows.length;l++)r=this.visibleRows[l],a-=r.height;for(l=i.t+t.r;a>0&&l<this.visibleRows.length;)r=this.visibleRows[l++],a-=r.height,o.push(r);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++)s=this.visibleColumns[h],c-=s.width,n.push(s);for(h=this.visibleColumns.length-i.r;h<this.visibleColumns.length;h++)s=this.visibleColumns[h],c-=s.width;for(h=i.l+t.c;c>0&&h<this.visibleColumns.length;)s=this.visibleColumns[h++],c-=s.width,n.push(s);for(h=this.visibleColumns.length-i.r;h<this.visibleColumns.length;h++)n.push(this.visibleColumns[h]);return this._viewport={rows:o,columns:n}}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,n=new Array(o);let r,s=0,a=0;for(let o=t.r1;o<=t.r2;o++){n[s]=new Array(i),a=0,r=this.rows[o];for(let i=t.c1;i<=t.c2;i++)n[s][a++]=e?r.cell(i).formattedValue:r.cell(i).value;++s}return n}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 av(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 av(0,0,this.columns.length-1,this.rows.length-1)}getRangeIterator(t,e=!1){return new Sw(this,e&&this._viewport?t.intersect(this.getViewportRange()):t.intersect(this.gridRange))}getInitializedCellIterator(){return new Sw(this,this.gridRange,!0)}getCellArray(t){const e=[];for(const i of this.getRangeIterator(t))e.push(i);return e}transformRangeToMatrix(t,e){let i,o,n;const r=[];for(let s=(t=t.intersect(this.gridRange)).r1;s<=t.r2;s++)if(i=this.rows[s],i){n=[];for(let r=t.c1;r<=t.c2;r++)o=i.cell(r),o&&n.push(e(o));r.push(n)}return r}getCellMatrix(t){return this.getModelByRange(t)?.transformRangeToMatrix(t,(t=>t))}getValueMatrix(t){return this.getModelByRange(t)?.transformRangeToMatrix(t,(t=>t.value))}shiftMerges(t){const{index:e,offset:i,direction:o}=t,n={down:t=>{e<=t.r?t.r+=i:e>t.r&&e<t.r+t.rs&&(this.rows[t.r].cell(t.c).rowspan=t.rs+=i)},up:t=>{e<=t.r?t.r-=i:e>t.r&&e<t.r+t.rs&&(this.rows[t.r].cell(t.c).rowspan=t.rs-=i)},right:t=>{e<=t.c?t.c+=i:e>t.c&&e<t.c+t.cs&&(this.rows[t.r].cell(t.c).colspan=t.cs+=i)},left:t=>{e<=t.c?t.c-=i:e>t.c&&e<t.c+t.cs&&(this.rows[t.r].cell(t.c).colspan=t.cs-=i)}};this.mergedCells.forEach(n[o]),this.indexHiddenCells()}indexHiddenCells(){this._hiddenCells.clear(),this.mergedCells.forEach((t=>{if(!(t.r>0||this._hiddenCells.has(t.r)&&this._hiddenCells.get(t.r).has(t.c)))for(let e=t.r;e<t.r+t.rs;e++)for(let i=t.c;i<t.c+t.cs;i++)(e>t.r||i>t.c)&&(this._hiddenCells.has(e)||this._hiddenCells.set(e,new Map),this._hiddenCells.get(e).set(i,t))}))}shift(t){t.sheet=this.name,this.shiftMerges(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 n=new Array(e).fill(null).map((()=>new tw(this)));return this.columns.splice(t,0,...n),this.maxColumnLevel>0&&o.insertChildren(n,t-(o.index||-1)-1),this.indexColumns(),this.clearCalculations(!0),n}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 n=this.columns.splice(t,e);return i?.deleteChildren(n),this.indexColumns(),this.clearCalculations(!0),n}insertRows(t,e,i=!1){const o=Math.min(this.rows.length-1,t),n=o<0?this.rowRoot:this.rows[o].parent;i&&++t;const r=isNaN(e)?e.length:e;this.shift({index:t,offset:r,direction:"down"});const s=isNaN(e)?e:new Array(r).fill(null).map((()=>new Rw(this)));return this.rows.splice(t,0,...s),this.maxRowLevel>0&&n.insertChildren(s,t-(n.index||-1)-1),this.indexRows(),this.clearCalculations(!0),s}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:n}=t,r=[],s=[],a=0===i.length||0===i[0].length;let l,c;const h=a?null:new av(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:r,oldValues:s,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&&(s.push(c.value2),c.spillValue(i[a][d],e),n&&(c.format=n.format,c.type=n.type),o&&null!=o[a][d]&&(c.displayValue=o[a][d]),r.push(c))}}return{cells:r,oldValues:s,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?pn:gn;this._maxRowLevel=t(this.rows,this.rowRoot,{reverse:this.options.rowTree.reversed}),this.indexRowsByTree()}rebuildColumnTree(){const t=this._levelBasedColTree?pn:gn;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 Gw{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 Uw(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 Uw(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 qw{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 Yw{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 av(t,e,i,o),this.activeCell=new av(0,0)}static fromRange(t){return new Yw(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=av.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 Zw={...jm,CUSTOM_CLIPBOARD_TYPE:"web application/json"};class Xw{constructor(t,e,i=Zw.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 Qw=function(t,e,i,o){var n,r=arguments.length,s=r<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,i,o);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(s=(r<3?n(s):r>3?n(e,i,s):n(e,i))||s);return r>3&&s&&Object.defineProperty(e,i,s),s};let Kw=class extends es{constructor(){super(),this.render=()=>Or`
|
|
2660
2660
|
<og-icon id="filterIcon" .icon="${{icon:"filter"}}"></og-icon>
|
|
2661
2661
|
<div class="text">${G(this.value)?Or`
|
|
2662
2662
|
<og-icon .icon="${this.value?"square-check":"square"}"></og-icon>
|
|
@@ -6593,7 +6593,7 @@ milkdown-block-handle {
|
|
|
6593
6593
|
text-align: center;
|
|
6594
6594
|
margin-left: 1px;
|
|
6595
6595
|
}
|
|
6596
|
-
`],nE([ss({type:Object})],rE.prototype,"item",void 0),nE([ss({type:String})],rE.prototype,"value",void 0),nE([cs("og-dropdown")],rE.prototype,"dropdown",void 0),nE([cs("#btnContent")],rE.prototype,"btnContent",void 0),rE=nE([os("og-toolbar-colorpicker")],rE);class sE{static init(t){this.path=t}static async get(){return this.xlsx||(this.xlsx=await this.load()),this.xlsx}static getSync(){return this.xlsx}static load(){if(!jn.require)throw new Error("AMDLoader is not initialized");return jn.require.config({paths:{xlsx:this.path+"/xlsx.full.min"}}),new Promise((t=>jn.require(["xlsx"],(()=>t(self.XLSX)))))}}const aE="aaaaaa",lE={bottom:{style:"thin",color:aE},top:{style:"thin",color:aE},right:{style:"thin",color:aE},left:{style:"thin",color:aE}},cE={exportHiddenRows:!0,exportHiddenColumns:!0,gridLines:!0,defaultBorders:!1,dropdownCells:"value"},hE={alignment:{vertical:"center",horizontal:"center"},bold:!0},dE={g:"n",b:"b",t:"s",n:"n",d:"d",dt:"d",s:"s",m:"s",tm:"s",h:"s",a:"z"};function uE(t,e){return(e.exportHiddenColumns?t.columns:t.visibleColumns).map((e=>({level:e.level,wpx:e.width,hidden:null==e.visibleIndex||t.visibleColumns[e.visibleIndex]!=e})))}function pE(t,e){const i=e.exportHiddenRows?t.rows:t.visibleRows,o=t.headerCount,n=new Array(i.length+o);return[...Array(o).keys()].map((t=>n[t]={level:0})),i.map(((e,i)=>n[i+o]={level:e.level,hpt:.75*e.height,hidden:null==e.visibleIndex||t.visibleRows[e.visibleIndex]!=e})),n}function gE(t,e){const i=t.headerCount,o=e.exportHiddenColumns?t=>t.c:e=>t.columns[e.c].visibleIndex,n=t.hiddenCells,r=[];return t.mergedCells.forEach((t=>{n.get(t.r)?.get(t.c)||r.push({s:{c:o(t),r:t.r+i},e:{c:o(t)+t.cs-1,r:t.r+i+t.rs-1}})})),t.mergedHeaders.forEach((t=>{t.h?.hidden||r.push({s:{c:o(t),r:t.r},e:{c:o(t)+t.cs-1,r:t.r+t.rs-1}})})),r}function fE(t,e){const i=t.headerCount,o=e.exportHiddenColumns?t.columns:t.visibleColumns,n=yE(e);return[...Array(i).keys()].map((e=>o.map((i=>{const o=i.header[e],r={t:o?"s":"z",s:hE};return o&&(o.html?r.h=`<span>${o.label}</span>`:null!=o.label?r.v=o.label:r.t="z"),n&&(r.s||(r.s={}),r.s=Object.assign({},n,r.s)),null!=o._style&&(r.s=Object.assign({},r.s,bE(t.styles.get(o._style)))),r}))))}function mE(t){return{rgb:t}}function vE(t){return{style:t.style,color:mE(t.color)}}function bE(t){const e={};return t.color&&(e.color=mE(t.color)),t.bgColor&&(e.bgColor=mE(t.bgColor)),t.fgColor&&(e.fgColor=mE(t.fgColor)),t.patternType&&(e.patternType=t.patternType),t.alignment&&(e.alignment=t.alignment),null!=t.bold&&(e.bold=t.bold),t.sz&&(e.sz=t.sz),t.bottom&&(e.bottom=vE(t.bottom)),t.top&&(e.top=vE(t.top)),t.right&&(e.right=vE(t.right)),t.left&&(e.left=vE(t.left)),null!=t.angle&&(e.angle=t.angle),t.stops&&(e.stops=t.stops.map((t=>({v:t.v,rgb:t.rgb})))),e}function yE(t){const e=!0===t.defaultBorders?lE:t.defaultBorders;return e?function(t){const e={};return t.bottom&&(e.bottom=vE(t.bottom)),t.top&&(e.top=vE(t.top)),t.right&&(e.right=vE(t.right)),t.left&&(e.left=vE(t.left)),e}(e):null}function wE(t,e){e=_E(e);const i=t.headerCount,o=new lw(t),n=new Array(i+t.rows.length),r=new Map,s=yE(e),a=t.options.dateFormat||"yyyy-MM-dd",l="displayValue"==e.dropdownCells;fE(t,e).forEach(((t,e)=>n[e]=t));const c=e.exportHiddenRows?t.rows:t.visibleRows,h=e.exportHiddenColumns?t.columns:t.visibleColumns;return c.forEach(((t,e)=>n[e+i]=h.map((e=>{const n=t.cell(e.index),c=dE[n.type],h={t:n.hasValue?c:"z"};n.hasFormula?h.f=i>0?o.getFormula(n).clone().shift({index:0,offset:i,direction:"down"}).toExcelString():o?o.getFormula(n).toExcelString():n.formula:n.hasValue&&!n.isSpilled&&("s"==h.t?h.v=l?n.formattedValue.toString():n.value.toString():"z"!=h.t&&(h.v=n.value),"g"==n.type?Z(h.v)?h.t="s":h.t="n":"d"==n.type&&K(h.v)&&(h.t="n",h.z=a));const d=n.composedStyle;if(d&&(r.has(d.id)||r.set(d.id,bE(d)),h.s={...r.get(d.id)}),function(t,e){const i=t.calculatedIndent;i>0&&(e.s||(e.s={}),e.s.alignment||(e.s.alignment={}),e.s.alignment.indent=i)}(n,h),n.hasComment){const t=n.model.comments.get(n.address);h.c=t.filter((t=>(t.text??"").length>0)).map((t=>({a:t.author?t.author.name??t.author.id:"",t:t.text}))),h.c.hidden=!0}return null==h.z&&("n"==h.t?h.z=n.format??"General":"d"==h.t&&(h.z=n.format??a)),"n"!=h.t&&"d"!=h.t||null!=h.z||(h.z=n.format??("d"==h.t?a:"General")),s&&(h.s||(h.s={}),h.s=Object.assign({},s,h.s)),h})))),n}function xE(t,e){return t||e?{t:(t=Object.assign({},e,t)).t,v:t.v,color:mE(t.color)}:null}function kE(t){const e=t.headerCount;return t.conditionalFormats.getSourceData().map((t=>({ref:av.fromA1s(t.ranges).map((t=>t.shiftDown(0,e,null,!0).A1)).join(" "),t:t.type,f:t.condition&&qm(t.condition[0])?"A1"+t.condition:t.condition??null,s:t.style?bE(t.style):null,stop:t.stop,cmin:xE(t.cmin,"bar"==t.type?{t:"min",color:t.color}:null),cmid:t.cmid?xE(t.cmid,{v:50,t:"percentile"}):null,cmax:xE(t.cmax,"bar"==t.type?{t:"max",color:t.color}:null),color:mE(t.color),v:t.v,thresh:t.thresh})))}function CE(t){return null==t.options.rowTree.reversed?t.rows.length<2?"above":t.rows[0].level>t.rows[1].level?"below":"above":t.options.rowTree.reversed?"below":"above"}function ME(t){return null==t.options.columnTree.reversed?t.columns.length<2?"left":t.columns[0].level>t.columns[1].level?"right":"left":t.options.columnTree.reversed?"right":"left"}const _E=t=>{const e=Object.assign({},cE,t);return e.defaultBorders&&(e.defaultBorders=lE),e};function SE(t,e){e=_E(e);const i={};return i["!cols"]=uE(t,e),i["!rows"]=pE(t,e),i["!merges"]=gE(t,e),i["!condfmt"]=kE(t),i["!outline"]={above:"above"==CE(t),left:"left"==ME(t)},t.options.freezeLeft||t.options.freezeTop?i["!freeze"]=`${hv(t.options.freezeLeft)}${t.headerCount+t.options.freezeTop+1}`:t.headerCount>0&&(i["!freeze"]=`A${t.headerCount+1}`),i["!gridlines"]=e.gridLines,i["!print"]={},i}async function EE(t,e){const i=sE.get(),o=i instanceof Promise?await i:i;e=_E(e);const n=o.utils.book_new();return t.forEach(((t,i)=>{t.calculations.evaluateAll();const r={...e,...t.exportOptions},s=o.utils.sheet_add_aoa(SE(t,r),wE(t,r));let a=t.name||`Sheet${i+1}`;t.name=a,a.length>31&&(a=a.substring(0,31)),o.utils.book_append_sheet(n,s,a)})),n.Workbook=n.Workbook||{},t.forEach((t=>{const e=n.SheetNames.indexOf(t.name);e<0||(n.Workbook.Sheets||(n.Workbook.Sheets=[]),n.Workbook.Sheets[e]||(n.Workbook.Sheets[e]={}),t.tab?.hidden&&(n.Workbook.Sheets[e].Hidden=2))})),n}async function zE(t,e=null){const i=sE.get(),o=i instanceof Promise?await i:i;return e?o.writeFile(t,e,{cellStyles:!0,bookSST:!0}):o.writeXLSX(t,{cellStyles:!0,bookSST:!0,type:"buffer"})}const LE={b:"b",s:"t",n:"n",d:"d",z:"g",e:"t"};function RE(t){return t.rgb}function IE(t){return{color:RE(t.color),style:t.style}}function HE(t){const e={};return t.color&&(e.color=RE(t.color)),t.bgColor&&(e.bgColor=RE(t.bgColor)),t.fgColor&&(e.fgColor=RE(t.fgColor)),e.fgColor||"000000"!=e.color||(e.color=null),t.alignment&&(e.alignment=t.alignment),t.bold&&(e.bold=t.bold),t.sz&&(e.sz=t.sz),t.top&&(e.top=IE(t.top)),t.bottom&&(e.bottom=IE(t.bottom)),t.left&&(e.left=IE(t.left)),t.right&&(e.right=IE(t.right)),e}function TE(t,e){const i=t["!ref"]?av.fromA1(t["!ref"]):av.fromA1("A1:T100"),o={},n={};if(t["!freeze"]){const e=av.fromA1(t["!freeze"]);n.freezeLeft=e.c1,n.freezeTop=e.r1}return o.options=n,o.rows=function(t,e){const i=t["!rows"]??[],o=new Array(e);let n;for(let t=0;t<e;t++)n=i[t],o[t]={l:(n?n.level:0)||0,h:n?n.hpx:null};return o}(t,i.r2+1),o.columns=function(t,e){const i=t["!cols"]??[],o=new Array(e);let n;for(let t=0;t<e;t++)n=i[t],o[t]={l:(n?n.level:0)||0,w:n?n.wpx:null};return o}(t,i.c2+1),o.cells=function(t){const e=[],i=new Map;(t["!merges"]??[]).forEach((t=>{const e=new av(t.s.c,t.s.r);i.set(e.A1,{c:t.s.c,cs:t.e.c-t.s.c+1,r:t.s.r,rs:t.e.r-t.s.r+1})}));for(const o in t){if("!"==o[0])continue;const n=t[o],r=av.fromA1(o),s={r:r.r1,c:r.c1,t:LE[n.t]},a=i.get(o);a&&(s.cs=a.cs,s.rs=a.rs),n.s&&(s.s=HE(n.s)),n.f?s.f=xv(n.f):s.v=n.v,["n","d"].includes(n.t)&&null!=n.z&&"General"!=n.z&&(s.z=Jo(n.z,"d")),e.push(s)}return e}(t),o.names=e,o.rules=function(t){return t["!condfmt"]?.filter((t=>["formula","scale","bar"].includes(t.t))).map((t=>{const e={type:t.t,ranges:t.ref.toString().replace(/\s/g,";")};return e.style=t.s?HE(t.s):null,e.cmin=t.cmin?{t:t.cmin.t,color:t.cmin.color?RE(t.cmin.color):null}:null,e.cmid=t.cmid?{t:t.cmid.t,color:t.cmid.color?RE(t.cmid.color):null}:null,e.cmax=t.cmax?{t:t.cmax.t,color:t.cmax.color?RE(t.cmax.color):null}:null,e.color=t.color?RE(t.color):null,e.condition=t.f,e.stop=!0,e}))}(t),o}function AE(t){const e=new Map;return t.Workbook.Names.forEach((({Name:t,Ref:i})=>{const[o,n]=i.split("!");if(!n)return;let r=e.get(o);r||e.set(o,r=[]);const s=av.fromA1(n);s.c1Anchor&&!s.r1Anchor?(s.r1=0,s.r2=1/0):!s.c1Anchor&&s.r1Anchor&&(s.c1=0,s.c2=1/0),s.removeAnchors(),r.push({name:t,ref:s.A1})})),e}async function OE(t,e){return performance.mark("start_import"),DE(await t.arrayBuffer(),e)}function $E(t){const e=AE(t);performance.mark("sheets_start");const i={models:[],layout:{items:[{tabs:[]}]}};for(const o in t.Sheets)performance.mark(`sheet_start_${o}`),i.layout.items[0].tabs.push({id:o}),i.models.push({...TE(t.Sheets[o],e.get(o)),name:o}),performance.mark(`sheet_end_${o}`);return performance.mark("sheets_end"),i}async function DE(t,e){performance.mark("array_buffer");const i=t instanceof ArrayBuffer?new Uint8Array(t):t,o=(await sE.get()).read(i,Object.assign({cellNF:!0,cellText:!1,cellStyles:!0,type:"buffer"},e||{}));return performance.mark("wb_read"),$E(o)}class NE extends ad{init(t){sE.get(),t.commands.register({section:"plugin",name:"export xlsx",fn:async()=>{const e=t.getGridContainer().model.models;zE(await EE(Array.from(e,(t=>t[1]))),"export.xlsx")}}),t.addEventListener("drop",(async e=>{if(e.preventDefault(),e.dataTransfer.files.length){const i=e.dataTransfer.files[0];t.setSourceData(await OE(i))}}))}}NE.pluginName="xlsx";class PE{get dataRange(){return this._dataRange}set dataRange(t){this._dataRange=t,this.invalidateData()}get seriesRange(){return this._seriesRange}set seriesRange(t){this._seriesRange=t,this.invalidateData()}get categoriesRange(){return this._categoriesRange}set categoriesRange(t){this._categoriesRange=t,this.invalidateData()}get title(){return this._title}set title(t){this._title=t,this.invalidateData()}get size(){return this._size}set size(t){this._size=t}get location(){return this._location}set location(t){this._location=t,this.invalidateData()}get type(){return this._type}set type(t){this._type=t,this.invalidateData()}get grouping(){return this._grouping}set grouping(t){this._grouping=t,this.invalidateData()}get datasheetName(){return this.dataRange?.sheet}get dependencies(){if(this._dependencies)return this._dependencies;if(this._dependencies=new Set,this.seriesRange)for(const t of this.seriesRange.cells())this._dependencies.add(t.A1);if(this.categoriesRange)for(const t of this.categoriesRange.cells())this._dependencies.add(t.A1);if(this.dataRange)for(const t of this.dataRange.cells())this._dependencies.add(t.A1);return this._dependencies}invalidateData(){this._options=void 0,this._dependencies=void 0}constructor(t,e){this.model=t,this._inverted=!1,this.populate(e),this.init()}populate(t){this._dataRange=av.fromA1(t.dataRange),this._title=t.title,this._size=t.size,this._location=t.location,this._type=t.type,this._grouping=t.grouping,this.zIndex=t.zIndex,t.seriesRange&&(this._seriesRange=av.fromA1(t.seriesRange)),t.categoriesRange&&(this._categoriesRange=av.fromA1(t.categoriesRange))}getSourceData(){return{dataRange:this.dataRange.A1,seriesRange:this.seriesRange?.A1,categoriesRange:this.categoriesRange?.A1,title:this.title,size:this.size,location:this.location,type:this.type,grouping:this.grouping,zIndex:this.zIndex}}getSeriesData(t,e){return t.map(((t,i)=>{return{type:this.type,name:e[i],stacking:(o=this.grouping,"stacked"===o?"normal":"percentStacked"===o?"percent":void 0),data:t.map((t=>({y:t})))};var o}))}init(){if(this._options)return this._options;let t,e,i=this.model.getValueMatrix(this.dataRange);this.seriesRange&&(this._inverted=this.seriesRange.isColumn,t=this.model.getValueMatrix(this.seriesRange).flat()),this.categoriesRange&&(this._inverted=this.seriesRange.isRow,e=this.model.getValueMatrix(this.categoriesRange).flat()),this._inverted||(i=zn(i));const o=i.length,n=i[0].length;return t||(t=Array.from({length:o},((t,e)=>`Series ${e+1}`))),e||(e=Array.from({length:n},((t,e)=>(e+1).toString()))),this._options={plotOptions:{},series:this.getSeriesData(i,t),xAxis:{categories:e}},"pie"==this.type&&(this._options.plotOptions.pie={dataLabels:{enabled:!1},showInLegend:!0},this._options.series[0].data.forEach(((t,i)=>{t.name=e[i]})),this._options.series=[this._options.series[0]]),this._options}getOptions(){return this._options||this.init(),this._options}}class jE extends ad{constructor(){super(...arguments),this.charts=new Map,this.dependencies=new Map,this.grids=new Set,this.getChartFactory=t=>()=>{const e=ft("og-plugin-chart");return e.model=t,this.charts.set(t.index,e),e},this._onEdit=t=>{const e=this.getAffectedModels(t.grid.model.name,t.cells.map((t=>t.address)));e.forEach((t=>this.charts.get(t)?.refresh()))}}get models(){return this.grid.model.otherModels[jE.pluginName]}getChartByModel(t){return this.charts.get(t.index)}getAffectedModels(t,e){const i=new Set;return e.forEach((e=>{const o=this.dependencies.get(t)?.get(e);o&&o.forEach((t=>i.add(t)))})),Array.from(i)}addModel(t){const e=new PE(this.grid.model,t);e.index=this.models.size;const i=e.datasheetName||this.grid.model.name,o=this.dependencies.get(i)??new Map;if(this.dependencies.set(i,o),null==e.title&&(e.title=`Chart #${this.models.size+1}`),e.dependencies.forEach((t=>{const i=o.get(t)||[];i.push(e.index),o.set(t,i)})),this.models.add(e),this.grid.objects.add({model:e,createComponent:this.getChartFactory(e)}),i){const t=this.grid.getConnectedGrid(i);this.grids.has(t)||(t.addEventListener("grid.edit",this._onEdit),this.grids.add(t))}return e}clear(){this.models.clear(),this.charts=new Map,this.dependencies=new Map}init(t){this.grid=t,t.model.otherModels[jE.pluginName]=new Set,t.addEventListener("grid.loadmodel",(t=>{this.clear(),t.grid.model.otherSourceData.charts&&t.grid.model.otherSourceData.charts.forEach((t=>this.addModel(t)))})),t.addEventListener("grid.edit",this._onEdit),this.grids.add(t)}}jE.pluginName="charts";class VE extends ad{constructor(){super(...arguments),this._onModelChange=t=>{this.getGridByModel(t.value).plugins.get("charts").getChartByModel(t.value).refresh()},this.openSidebar=()=>this.editor.rightSidebarComponent="charts",this.closeSidebar=()=>this.editor.rightSidebarComponent=null,this.toggleSidebar=(t=null)=>!1===(t??!1)||"charts"==this.editor.rightSidebarComponent?this.closeSidebar():this.openSidebar()}get editor(){return this._editor}getGridByModel(t){return this.editor.group.getGridByModel(t.model)}init(t){this._editor=t;const e=t.createComponent;t.createComponent=t=>"charts"===t?(this.chartList||(this.chartList=ft("og-plugin-chart-list"),this.chartList.addEventListener("change",this._onModelChange)),this.chartList.filter=this._filter,this._filter=null,this.chartList):e?e(t):null,t.addEventListener("editor.toolbar.init",(()=>{const e=t.toolbar.toolbar3Config.slice(),i=e.findIndex((t=>"sparklines"===t.id))||0;e.splice(i,0,{type:"togglebutton",id:"charts",icon:{icon:"chart-column"},title:"Charts"}),t.toolbar.toolbar3Config=e})),t.addEventListener("editor.toolbar.action",(t=>{"charts"===t.action.key&&this.toggleSidebar()})),t.addEventListener("grid.init",(t=>{t.grid.plugins.register(new jE)})),t.addEventListener("grid.object.activate",(t=>{t.object instanceof PE&&(this.openSidebar(),this.chartList?this.chartList.filter=t.object.title:this._filter=t.object.title)})),t.addEventListener("grid.object.deactivate",(()=>{this.chartList&&(this.chartList.filter=null)}))}}VE.pluginName="chartEditor";class BE{static init(t){"string"==typeof t?BE.path=t:BE.highcharts=t}static async get(){return this.highcharts||(this.highcharts=await this.load()),this.highcharts}static getSync(){return this.highcharts}static async load(){if(BE.highcharts)return BE.highcharts;const t=window.define;return window.define=void 0,new Promise(((e,i)=>Vn.load(`${this.path}/highcharts.js`).then((()=>{window.Highcharts?(BE.highcharts=window.Highcharts,e(window.Highcharts)):i("Failed to load Highcharts")})).catch((t=>{console.error("Failed to load Highcharts",t),i(t)})).then((()=>{window.define=t}))))}}const FE={chart:{styledMode:!0}};async function WE(t){const e=await BE.get(),i={chart:{type:"column",reflow:!1},title:{text:t.title},series:[{type:"column",name:"Corn",data:[387749,28e4,129e3,64300,54e3,34300]},{type:"column",name:"Wheat",data:[45321,14e4,1e4,140500,19500,113500]}]};return e.merge(i,t.getOptions())}async function UE(t,e){const i=await BE.get(),o=await WE(t);return i.chart(e,i.merge(o,FE,{chart:{}}))}const GE=Xn`
|
|
6596
|
+
`],nE([ss({type:Object})],rE.prototype,"item",void 0),nE([ss({type:String})],rE.prototype,"value",void 0),nE([cs("og-dropdown")],rE.prototype,"dropdown",void 0),nE([cs("#btnContent")],rE.prototype,"btnContent",void 0),rE=nE([os("og-toolbar-colorpicker")],rE);class sE{static init(t){this.path=t}static async get(){return this.xlsx||(this.xlsx=await this.load()),this.xlsx}static getSync(){return this.xlsx}static load(){if(!jn.require)throw new Error("AMDLoader is not initialized");return jn.require.config({paths:{xlsx:this.path+"/xlsx.full.min"}}),new Promise((t=>jn.require(["xlsx"],(()=>t(self.XLSX)))))}}const aE="aaaaaa",lE={bottom:{style:"thin",color:aE},top:{style:"thin",color:aE},right:{style:"thin",color:aE},left:{style:"thin",color:aE}},cE={exportHiddenRows:!0,exportHiddenColumns:!0,gridLines:!0,defaultBorders:!1,dropdownCells:"value"},hE={alignment:{vertical:"center",horizontal:"center"},bold:!0},dE={g:"n",b:"b",t:"s",n:"n",d:"d",dt:"d",s:"s",m:"s",tm:"s",h:"s",a:"z"};function uE(t,e){return(e.exportHiddenColumns?t.columns:t.visibleColumns).map((e=>({level:e.level,wpx:e.width,hidden:null==e.visibleIndex||t.visibleColumns[e.visibleIndex]!=e})))}function pE(t,e){const i=e.exportHiddenRows?t.rows:t.visibleRows,o=t.headerCount,n=new Array(i.length+o);return[...Array(o).keys()].map((t=>n[t]={level:0})),i.map(((e,i)=>n[i+o]={level:e.level,hpt:.75*e.height,hidden:null==e.visibleIndex||t.visibleRows[e.visibleIndex]!=e})),n}function gE(t,e){const i=t.headerCount,o=e.exportHiddenColumns?t=>t.c:e=>t.columns[e.c].visibleIndex,n=t.hiddenCells,r=[];return t.mergedCells.forEach((t=>{n.get(t.r)?.get(t.c)||r.push({s:{c:o(t),r:t.r+i},e:{c:o(t)+t.cs-1,r:t.r+i+t.rs-1}})})),t.mergedHeaders.forEach((t=>{t.h?.hidden||r.push({s:{c:o(t),r:t.r},e:{c:o(t)+t.cs-1,r:t.r+t.rs-1}})})),r}function fE(t,e){const i=t.headerCount,o=e.exportHiddenColumns?t.columns:t.visibleColumns,n=yE(e);return[...Array(i).keys()].map((e=>o.map((i=>{const o=i.header[e],r={t:o?"s":"z",s:hE};return o&&(o.html?r.h=`<span>${o.label}</span>`:null!=o.label?r.v=o.label:r.t="z"),n&&(r.s||(r.s={}),r.s=Object.assign({},n,r.s)),null!=o._style&&(r.s=Object.assign({},r.s,bE(t.styles.get(o._style)))),r}))))}function mE(t){return{rgb:t}}function vE(t){return{style:t.style,color:mE(t.color)}}function bE(t){const e={};return t.color&&(e.color=mE(t.color)),t.bgColor&&(e.bgColor=mE(t.bgColor)),t.fgColor&&(e.fgColor=mE(t.fgColor)),t.patternType&&(e.patternType=t.patternType),t.alignment&&(e.alignment=t.alignment),null!=t.bold&&(e.bold=t.bold),t.sz&&(e.sz=t.sz),t.bottom&&(e.bottom=vE(t.bottom)),t.top&&(e.top=vE(t.top)),t.right&&(e.right=vE(t.right)),t.left&&(e.left=vE(t.left)),null!=t.angle&&(e.angle=t.angle),t.stops&&(e.stops=t.stops.map((t=>({v:t.v,rgb:t.rgb})))),e}function yE(t){const e=!0===t.defaultBorders?lE:t.defaultBorders;return e?function(t){const e={};return t.bottom&&(e.bottom=vE(t.bottom)),t.top&&(e.top=vE(t.top)),t.right&&(e.right=vE(t.right)),t.left&&(e.left=vE(t.left)),e}(e):null}function wE(t,e){e=_E(e);const i=t.headerCount,o=new lw(t),n=new Array(i+t.rows.length),r=new Map,s=yE(e),a=t.options.dateFormat||"yyyy-MM-dd",l="displayValue"==e.dropdownCells;fE(t,e).forEach(((t,e)=>n[e]=t));const c=e.exportHiddenRows?t.rows:t.visibleRows,h=e.exportHiddenColumns?t.columns:t.visibleColumns;return c.forEach(((t,e)=>n[e+i]=h.map((e=>{const n=t.cell(e.index),c=dE[n.type],h={t:n.hasValue?c:"z"};n.hasFormula?h.f=i>0?o.getFormula(n).clone().shift({index:0,offset:i,direction:"down"}).toExcelString():o?o.getFormula(n).toExcelString():n.formula:n.hasValue&&!n.isSpilled&&("s"==h.t?h.v=l?n.formattedValue.toString():n.value.toString():"z"!=h.t&&(h.v=n.value),"g"==n.type?Z(h.v)?h.t="s":h.t="n":"d"==n.type&&K(h.v)&&(h.t="n",h.z=a));const d=n.composedStyle;if(d&&(r.has(d.id)||r.set(d.id,bE(d)),h.s={...r.get(d.id)}),function(t,e){const i=t.calculatedIndent;i>0&&(e.s||(e.s={}),e.s.alignment||(e.s.alignment={}),e.s.alignment.indent=i)}(n,h),n.hasComment){const t=n.model.comments.get(n.address);h.c=t.filter((t=>(t.text??"").length>0)).map((t=>({a:t.author?t.author.name??t.author.id:"",t:t.text}))),h.c.hidden=!0}return null==h.z&&("n"==h.t?h.z=n.format??"General":"d"==h.t&&(h.z=n.format??a)),"n"!=h.t&&"d"!=h.t||null!=h.z||(h.z=n.format??("d"==h.t?a:"General")),s&&(h.s||(h.s={}),h.s=Object.assign({},s,h.s)),h})))),n}function xE(t,e){return t||e?{t:(t=Object.assign({},e,t)).t,v:t.v,color:mE(t.color)}:null}function kE(t){const e=t.headerCount;return t.conditionalFormats.getSourceData().map((t=>({ref:av.fromA1s(t.ranges).map((t=>t.shiftDown(0,e,null,!0).A1)).join(" "),t:t.type,f:t.condition&&qm(t.condition[0])?"A1"+t.condition:t.condition??null,s:t.style?bE(t.style):null,stop:t.stop,cmin:xE(t.cmin,"bar"==t.type?{t:"min",color:t.color}:null),cmid:t.cmid?xE(t.cmid,{v:50,t:"percentile"}):null,cmax:xE(t.cmax,"bar"==t.type?{t:"max",color:t.color}:null),color:mE(t.color),v:t.v,thresh:t.thresh})))}function CE(t){return null==t.options.rowTree.reversed?t.rows.length<2?"above":t.rows[0].level>t.rows[1].level?"below":"above":t.options.rowTree.reversed?"below":"above"}function ME(t){return null==t.options.columnTree.reversed?t.columns.length<2?"left":t.columns[0].level>t.columns[1].level?"right":"left":t.options.columnTree.reversed?"right":"left"}const _E=t=>{const e=Object.assign({},cE,t);return e.defaultBorders&&(e.defaultBorders=lE),e};function SE(t,e){e=_E(e);const i={};return i["!cols"]=uE(t,e),i["!rows"]=pE(t,e),i["!merges"]=gE(t,e),i["!condfmt"]=kE(t),i["!outline"]={above:"above"==CE(t),left:"left"==ME(t)},t.options.freezeLeft||t.options.freezeTop?i["!freeze"]=`${hv(t.options.freezeLeft)}${t.headerCount+t.options.freezeTop+1}`:t.headerCount>0&&(i["!freeze"]=`A${t.headerCount+1}`),i["!gridlines"]=e.gridLines,i["!print"]={},i}async function EE(t,e){const i=sE.get(),o=i instanceof Promise?await i:i;e=_E(e);const n=o.utils.book_new();return t.forEach(((t,i)=>{t.calculations.evaluateAll();const r={...e,...t.exportOptions},s=o.utils.sheet_add_aoa(SE(t,r),wE(t,r));let a=t.name||`Sheet${i+1}`;t.name=a,a.length>31&&(a=a.substring(0,31)),o.utils.book_append_sheet(n,s,a)})),n.Workbook=n.Workbook||{},t.forEach((t=>{const e=n.SheetNames.indexOf(t.name);e<0||(n.Workbook.Sheets||(n.Workbook.Sheets=[]),n.Workbook.Sheets[e]||(n.Workbook.Sheets[e]={}),t.tab?.hidden&&(n.Workbook.Sheets[e].Hidden=1))})),n}async function zE(t,e=null){const i=sE.get(),o=i instanceof Promise?await i:i;return e?o.writeFile(t,e,{cellStyles:!0,bookSST:!0}):o.writeXLSX(t,{cellStyles:!0,bookSST:!0,type:"buffer"})}const LE={b:"b",s:"t",n:"n",d:"d",z:"g",e:"t"};function RE(t){return t.rgb}function IE(t){return{color:RE(t.color),style:t.style}}function HE(t){const e={};return t.color&&(e.color=RE(t.color)),t.bgColor&&(e.bgColor=RE(t.bgColor)),t.fgColor&&(e.fgColor=RE(t.fgColor)),e.fgColor||"000000"!=e.color||(e.color=null),t.alignment&&(e.alignment=t.alignment),t.bold&&(e.bold=t.bold),t.sz&&(e.sz=t.sz),t.top&&(e.top=IE(t.top)),t.bottom&&(e.bottom=IE(t.bottom)),t.left&&(e.left=IE(t.left)),t.right&&(e.right=IE(t.right)),e}function TE(t,e){const i=t["!ref"]?av.fromA1(t["!ref"]):av.fromA1("A1:T100"),o={},n={};if(t["!freeze"]){const e=av.fromA1(t["!freeze"]);n.freezeLeft=e.c1,n.freezeTop=e.r1}return o.options=n,o.rows=function(t,e){const i=t["!rows"]??[],o=new Array(e);let n;for(let t=0;t<e;t++)n=i[t],o[t]={l:(n?n.level:0)||0,h:n?n.hpx:null};return o}(t,i.r2+1),o.columns=function(t,e){const i=t["!cols"]??[],o=new Array(e);let n;for(let t=0;t<e;t++)n=i[t],o[t]={l:(n?n.level:0)||0,w:n?n.wpx:null};return o}(t,i.c2+1),o.cells=function(t){const e=[],i=new Map;(t["!merges"]??[]).forEach((t=>{const e=new av(t.s.c,t.s.r);i.set(e.A1,{c:t.s.c,cs:t.e.c-t.s.c+1,r:t.s.r,rs:t.e.r-t.s.r+1})}));for(const o in t){if("!"==o[0])continue;const n=t[o],r=av.fromA1(o),s={r:r.r1,c:r.c1,t:LE[n.t]},a=i.get(o);a&&(s.cs=a.cs,s.rs=a.rs),n.s&&(s.s=HE(n.s)),n.f?s.f=xv(n.f):s.v=n.v,["n","d"].includes(n.t)&&null!=n.z&&"General"!=n.z&&(s.z=Jo(n.z,"d")),e.push(s)}return e}(t),o.names=e,o.rules=function(t){return t["!condfmt"]?.filter((t=>["formula","scale","bar"].includes(t.t))).map((t=>{const e={type:t.t,ranges:t.ref.toString().replace(/\s/g,";")};return e.style=t.s?HE(t.s):null,e.cmin=t.cmin?{t:t.cmin.t,color:t.cmin.color?RE(t.cmin.color):null}:null,e.cmid=t.cmid?{t:t.cmid.t,color:t.cmid.color?RE(t.cmid.color):null}:null,e.cmax=t.cmax?{t:t.cmax.t,color:t.cmax.color?RE(t.cmax.color):null}:null,e.color=t.color?RE(t.color):null,e.condition=t.f,e.stop=!0,e}))}(t),o}function AE(t){const e=new Map;return t.Workbook.Names.forEach((({Name:t,Ref:i})=>{const[o,n]=i.split("!");if(!n)return;let r=e.get(o);r||e.set(o,r=[]);const s=av.fromA1(n);s.c1Anchor&&!s.r1Anchor?(s.r1=0,s.r2=1/0):!s.c1Anchor&&s.r1Anchor&&(s.c1=0,s.c2=1/0),s.removeAnchors(),r.push({name:t,ref:s.A1})})),e}async function OE(t,e){return performance.mark("start_import"),DE(await t.arrayBuffer(),e)}function $E(t){const e=AE(t);performance.mark("sheets_start");const i={models:[],layout:{items:[{tabs:[]}]}};for(const o in t.Sheets)performance.mark(`sheet_start_${o}`),i.layout.items[0].tabs.push({id:o}),i.models.push({...TE(t.Sheets[o],e.get(o)),name:o}),performance.mark(`sheet_end_${o}`);return performance.mark("sheets_end"),i}async function DE(t,e){performance.mark("array_buffer");const i=t instanceof ArrayBuffer?new Uint8Array(t):t,o=(await sE.get()).read(i,Object.assign({cellNF:!0,cellText:!1,cellStyles:!0,type:"buffer"},e||{}));return performance.mark("wb_read"),$E(o)}class NE extends ad{init(t){sE.get(),t.commands.register({section:"plugin",name:"export xlsx",fn:async()=>{const e=t.getGridContainer().model.models;zE(await EE(Array.from(e,(t=>t[1]))),"export.xlsx")}}),t.addEventListener("drop",(async e=>{if(e.preventDefault(),e.dataTransfer.files.length){const i=e.dataTransfer.files[0];t.setSourceData(await OE(i))}}))}}NE.pluginName="xlsx";class PE{get dataRange(){return this._dataRange}set dataRange(t){this._dataRange=t,this.invalidateData()}get seriesRange(){return this._seriesRange}set seriesRange(t){this._seriesRange=t,this.invalidateData()}get categoriesRange(){return this._categoriesRange}set categoriesRange(t){this._categoriesRange=t,this.invalidateData()}get title(){return this._title}set title(t){this._title=t,this.invalidateData()}get size(){return this._size}set size(t){this._size=t}get location(){return this._location}set location(t){this._location=t,this.invalidateData()}get type(){return this._type}set type(t){this._type=t,this.invalidateData()}get grouping(){return this._grouping}set grouping(t){this._grouping=t,this.invalidateData()}get datasheetName(){return this.dataRange?.sheet}get dependencies(){if(this._dependencies)return this._dependencies;if(this._dependencies=new Set,this.seriesRange)for(const t of this.seriesRange.cells())this._dependencies.add(t.A1);if(this.categoriesRange)for(const t of this.categoriesRange.cells())this._dependencies.add(t.A1);if(this.dataRange)for(const t of this.dataRange.cells())this._dependencies.add(t.A1);return this._dependencies}invalidateData(){this._options=void 0,this._dependencies=void 0}constructor(t,e){this.model=t,this._inverted=!1,this.populate(e),this.init()}populate(t){this._dataRange=av.fromA1(t.dataRange),this._title=t.title,this._size=t.size,this._location=t.location,this._type=t.type,this._grouping=t.grouping,this.zIndex=t.zIndex,t.seriesRange&&(this._seriesRange=av.fromA1(t.seriesRange)),t.categoriesRange&&(this._categoriesRange=av.fromA1(t.categoriesRange))}getSourceData(){return{dataRange:this.dataRange.A1,seriesRange:this.seriesRange?.A1,categoriesRange:this.categoriesRange?.A1,title:this.title,size:this.size,location:this.location,type:this.type,grouping:this.grouping,zIndex:this.zIndex}}getSeriesData(t,e){return t.map(((t,i)=>{return{type:this.type,name:e[i],stacking:(o=this.grouping,"stacked"===o?"normal":"percentStacked"===o?"percent":void 0),data:t.map((t=>({y:t})))};var o}))}init(){if(this._options)return this._options;let t,e,i=this.model.getValueMatrix(this.dataRange);this.seriesRange&&(this._inverted=this.seriesRange.isColumn,t=this.model.getValueMatrix(this.seriesRange).flat()),this.categoriesRange&&(this._inverted=this.seriesRange.isRow,e=this.model.getValueMatrix(this.categoriesRange).flat()),this._inverted||(i=zn(i));const o=i.length,n=i[0].length;return t||(t=Array.from({length:o},((t,e)=>`Series ${e+1}`))),e||(e=Array.from({length:n},((t,e)=>(e+1).toString()))),this._options={plotOptions:{},series:this.getSeriesData(i,t),xAxis:{categories:e}},"pie"==this.type&&(this._options.plotOptions.pie={dataLabels:{enabled:!1},showInLegend:!0},this._options.series[0].data.forEach(((t,i)=>{t.name=e[i]})),this._options.series=[this._options.series[0]]),this._options}getOptions(){return this._options||this.init(),this._options}}class jE extends ad{constructor(){super(...arguments),this.charts=new Map,this.dependencies=new Map,this.grids=new Set,this.getChartFactory=t=>()=>{const e=ft("og-plugin-chart");return e.model=t,this.charts.set(t.index,e),e},this._onEdit=t=>{const e=this.getAffectedModels(t.grid.model.name,t.cells.map((t=>t.address)));e.forEach((t=>this.charts.get(t)?.refresh()))}}get models(){return this.grid.model.otherModels[jE.pluginName]}getChartByModel(t){return this.charts.get(t.index)}getAffectedModels(t,e){const i=new Set;return e.forEach((e=>{const o=this.dependencies.get(t)?.get(e);o&&o.forEach((t=>i.add(t)))})),Array.from(i)}addModel(t){const e=new PE(this.grid.model,t);e.index=this.models.size;const i=e.datasheetName||this.grid.model.name,o=this.dependencies.get(i)??new Map;if(this.dependencies.set(i,o),null==e.title&&(e.title=`Chart #${this.models.size+1}`),e.dependencies.forEach((t=>{const i=o.get(t)||[];i.push(e.index),o.set(t,i)})),this.models.add(e),this.grid.objects.add({model:e,createComponent:this.getChartFactory(e)}),i){const t=this.grid.getConnectedGrid(i);this.grids.has(t)||(t.addEventListener("grid.edit",this._onEdit),this.grids.add(t))}return e}clear(){this.models.clear(),this.charts=new Map,this.dependencies=new Map}init(t){this.grid=t,t.model.otherModels[jE.pluginName]=new Set,t.addEventListener("grid.loadmodel",(t=>{this.clear(),t.grid.model.otherSourceData.charts&&t.grid.model.otherSourceData.charts.forEach((t=>this.addModel(t)))})),t.addEventListener("grid.edit",this._onEdit),this.grids.add(t)}}jE.pluginName="charts";class VE extends ad{constructor(){super(...arguments),this._onModelChange=t=>{this.getGridByModel(t.value).plugins.get("charts").getChartByModel(t.value).refresh()},this.openSidebar=()=>this.editor.rightSidebarComponent="charts",this.closeSidebar=()=>this.editor.rightSidebarComponent=null,this.toggleSidebar=(t=null)=>!1===(t??!1)||"charts"==this.editor.rightSidebarComponent?this.closeSidebar():this.openSidebar()}get editor(){return this._editor}getGridByModel(t){return this.editor.group.getGridByModel(t.model)}init(t){this._editor=t;const e=t.createComponent;t.createComponent=t=>"charts"===t?(this.chartList||(this.chartList=ft("og-plugin-chart-list"),this.chartList.addEventListener("change",this._onModelChange)),this.chartList.filter=this._filter,this._filter=null,this.chartList):e?e(t):null,t.addEventListener("editor.toolbar.init",(()=>{const e=t.toolbar.toolbar3Config.slice(),i=e.findIndex((t=>"sparklines"===t.id))||0;e.splice(i,0,{type:"togglebutton",id:"charts",icon:{icon:"chart-column"},title:"Charts"}),t.toolbar.toolbar3Config=e})),t.addEventListener("editor.toolbar.action",(t=>{"charts"===t.action.key&&this.toggleSidebar()})),t.addEventListener("grid.init",(t=>{t.grid.plugins.register(new jE)})),t.addEventListener("grid.object.activate",(t=>{t.object instanceof PE&&(this.openSidebar(),this.chartList?this.chartList.filter=t.object.title:this._filter=t.object.title)})),t.addEventListener("grid.object.deactivate",(()=>{this.chartList&&(this.chartList.filter=null)}))}}VE.pluginName="chartEditor";class BE{static init(t){"string"==typeof t?BE.path=t:BE.highcharts=t}static async get(){return this.highcharts||(this.highcharts=await this.load()),this.highcharts}static getSync(){return this.highcharts}static async load(){if(BE.highcharts)return BE.highcharts;const t=window.define;return window.define=void 0,new Promise(((e,i)=>Vn.load(`${this.path}/highcharts.js`).then((()=>{window.Highcharts?(BE.highcharts=window.Highcharts,e(window.Highcharts)):i("Failed to load Highcharts")})).catch((t=>{console.error("Failed to load Highcharts",t),i(t)})).then((()=>{window.define=t}))))}}const FE={chart:{styledMode:!0}};async function WE(t){const e=await BE.get(),i={chart:{type:"column",reflow:!1},title:{text:t.title},series:[{type:"column",name:"Corn",data:[387749,28e4,129e3,64300,54e3,34300]},{type:"column",name:"Wheat",data:[45321,14e4,1e4,140500,19500,113500]}]};return e.merge(i,t.getOptions())}async function UE(t,e){const i=await BE.get(),o=await WE(t);return i.chart(e,i.merge(o,FE,{chart:{}}))}const GE=Xn`
|
|
6597
6597
|
* {
|
|
6598
6598
|
box-sizing: border-box;
|
|
6599
6599
|
}
|
|
@@ -7943,4 +7943,4 @@ milkdown-block-handle {
|
|
|
7943
7943
|
`:null}
|
|
7944
7944
|
</div>
|
|
7945
7945
|
</og-panel>
|
|
7946
|
-
`: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?av.fromA1(this.categoryRangeInput.value):null,this.model.seriesRange=this.seriesRangeInput?.value?av.fromA1(this.seriesRangeInput.value):null,this.model.dataRange=av.fromA1(this.dataRangeInput.value),this.dispatchEvent(new Rn({value:this.model}))}async updated(){this.editTitle&&this.titleInput&&(await this.titleInput.updateComplete,this.titleInput.focus(),this.titleInput.selectAll())}};ez.styles=[JE],tz([ss({type:Object})],ez.prototype,"model",void 0),tz([as()],ez.prototype,"editTitle",void 0),tz([cs("#title")],ez.prototype,"titleInput",void 0),tz([cs("#type")],ez.prototype,"typeList",void 0),tz([cs("#dataRange")],ez.prototype,"dataRangeInput",void 0),tz([cs("#seriesRange")],ez.prototype,"seriesRangeInput",void 0),tz([cs("#categoryRange")],ez.prototype,"categoryRangeInput",void 0),ez=tz([os("og-plugin-chart-form")],ez);const iz=pa().themes.get("dark");Object.assign(iz.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 oz=pa().themes.get("light");Object.assign(oz.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 nz=i(2439),rz=i(8022),sz=i(6158),az=i(127),lz=i(4505),cz=i(8659),hz=i(397),dz=i(930),uz=i(9723),pz=i(6343),gz=i(4582),fz=i(6127),mz=i(8238),vz=i(7362),bz=i(452),yz=i(5390),wz=i(3368),xz=i(6288),kz=i(7513),Cz=i(1386),Mz=i(5764),_z=i(1261),Sz=i(3071),Ez=i(3285),zz=i(2356),Lz=i(6780),Rz=i(8542),Iz=i(8385),Hz=i(1025),Tz=i(2034),Az=i(8113),Oz=i(1821),$z=i(7212),Dz=i(2583),Nz=i(5360),Pz=i(2377),jz=i(2864),Vz=i(7998),Bz=i(4101),Fz=i(7813),Wz=i(5037),Uz=i(7005),Gz=i(9626),qz=i(9517),Yz=i(1504),Zz=i(3838),Xz=i(4935),Qz=i(7699),Kz=i(3322),Jz=i(5757),tL=i(536),eL=i(1673),iL=i(8736),oL=i(196),nL=i(5133),rL=i(6092),sL=i(791),aL=i(5927),lL=i(1802),cL=i(9511),hL=i(6267),dL=i(1072),uL=i(4331),pL=i(8644),gL=i(2704),fL=i(2419),mL=i(6363),vL=i(5236),bL=i(3499),yL=i(3811),wL=i(1953),xL=i(4729),kL=i(8964),CL=i(8540),ML=i(8752),_L=i(8783),SL=i(8270),EL=i(7261),zL=i(9231),LL=i(4555),RL=i(5293),IL=i(6981),HL=i(5268),TL=i(2680),AL=i(789),OL=i(4373),$L=i(436),DL=i(8573),NL=i(1808),PL=i(3247),jL=i(5143),VL=i(2415),BL=i(2561),FL=i(5726),WL=i(7436),UL=i(4201),GL=i(8248),qL=i(6433),YL=i(2698),ZL=i(979),XL=i(9358),QL=i(9176),KL=i(1239),JL=i(4218),tR=i(8377),eR=i(3740),iR=i(5379),oR=i(9974),nR=i(8955),rR=i(3559),sR=i(809),aR=i(8014),lR=i(8265),cR=i(3300),hR=i(8724),dR=i(8033),uR=i(7700),pR=i(5741),gR=i(3478),fR=i(512),mR=i(9432),vR=i(2841),bR=i(75),yR=i(9256),wR=i(444),xR=i(5633),kR=i(3788),CR=i(3573),MR=i(9948),_R=i(1836),SR=i(7029),ER=i(8532),zR=i(6639),LR=i(1633),RR=i(9805),IR=i(2171),HR=i(875),TR=i(9595),AR=i(3894),OR=i(2803),$R=i(7765),DR=i(8804),NR=i(8654),PR=i(257),jR=i(5844),VR=i(9651),BR=i(760),FR=i(9518),WR=i(4585),UR=i(1769),GR=i(643),qR=i(5156),YR=i(822),ZR=i(8249),XR=i(3434),QR=i(9314),KR=i(3093),JR=i(7721),tI=i(588),eI=i(7645),iI=i(7148),oI=i(6795),nI=i(7047),rI=i(9428),sI=i(1879),aI=i(9779),lI=i(2476),cI=i(9648),hI=i(2896),dI=i(6817),uI=i(5196),pI=i(2762),gI=i(5981),fI=i(9014),mI=i(2611),vI=i(7946),bI=i(6301),yI=i(8020),wI=i(3987),xI=i(3192),kI=i(8796),CI=i(2489),MI=i(7324),_I=i(6069),SI=i(4155),EI=i(6977),zI=i(8055),LI=i(2653),RI=i(9492),II=i(4334),HI=i(6804),TI=i(9954),AI=i(2211),OI=i(5211),$I=i(1519),DI=i(6204),NI=i(5501),PI=i(5244),jI=i(9742),VI=i(1552),BI=i(1330),FI=i(2596),WI=i(5184),UI=i(7675),GI=i(1513),qI=i(9396),YI=i(7673),ZI=i(244),XI=i(1187),QI=i(1736),KI=i(4390),JI=i(7106),tH=i(2096),eH=i(9991),iH=i(5629),oH=i(3386),nH=i(6651),rH=i(1684),sH=i(3849),aH=i(2582),lH=i(8569),cH=i(2955),hH=i(9100),dH=i(7381),uH=i(9190),pH=i(4071),gH=i(8e3),fH=i(4633),mH=i(4374),vH=i(486),bH=i(3680),yH=i(9999),wH=i(2830),xH=i(5255),kH=i(6021),CH=i(2214),MH=i(8497),_H=i(2052),SH=i(5327),EH=i(8701);const zH=[nz.w2,rz.Jt,sz.Xk,az.Wz,lz.UR,cz.mR,hz.cb,dz.td,uz.GF,gz.xB,pz.S$,fz.Ot,mz.fU,vz.Vp,bz.HV,yz.BH,wz.Dn,xz.hy,kz.IP,Cz.Nf,Mz.jP,_z.AP,Sz._X,Ez.mu,zz.LB,Lz.hS,Rz.l5,Iz.SI,Hz.ch,Az._u,Oz.ec,$z.jb,Dz.cW,Nz.$f,Pz.qI,jz.j3,Vz.fq,Bz.ao,Fz.Uj,Wz.GE,Uz.QR,Gz.DQ,Yz.lE,qz.mE,Zz.hp,Xz.yL,Qz.ub,Kz.lL,Jz.IN,tL.B0,eL.Ce,iL.dm,oL.h0,nL.sx,rL.HF,sL.qf,lL.jw,cL.k8,hL.Am,dL.ff,uL.s6,pL.bx,gL.pS,fL.k6,mL.q9,vL.$F,bL.gK,yL.W1,wL.QL,xL.EZ,kL.DN,CL.Jy,ML.z1,_L.Gl,SL.n2,aL.Ew,EL.QL,zL.ck,LL.I2,RL.Qv,IL.CK,HL.bn,TL.bx,AL.e6,OL.yy,$L.xg,DL.AJ,NL.py,PL.I0,jL.id,VL.qp,BL.UX,FL.PA,WL.B2,UL.It,GL.PZ,qL.aG,YL.$U,ZL.S9,XL.Nb,QL.Z4,KL.qz,JL.jw,tR.cd,eR.jR,iR.qt,oR.x7,nR.oE,rR.ad,sR.IT,aR.Ts,lR.UN,cR.jb,hR.jT,dR.w9,uR.Jm,pR.CQ,Tz.$6,gR.Dw,fR.nx,mR.w2,vR.Jt,bR.Xk,yR.Wz,wR.UR,xR.mR,kR.cb,CR.td,MR.GF,SR.xB,_R.S$,zR.fU,ER.Ot,LR.Vp,RR.HV,IR.BH,HR.Dn,TR.hy,AR.IP,OR.Nf,$R.jP,DR.AP,BR._X,FR.mu,WR.LB,UR.hS,GR.l5,qR.SI,YR.ch,XR._u,QR.ec,KR.jb,oI.cW,nI.$f,rI.qI,sI.j3,aI.fq,lI.ao,cI.Uj,hI.GE,NR.QR,PR.DQ,VR.lE,jR.mE,dI.hp,uI.yL,pI.ub,gI.lL,fI.IN,mI.B0,vI.Ce,bI.dm,JR.h0,tI.sx,eI.HF,iI.qf,wI.jw,xI.k8,kI.Am,CI.ff,MI.s6,_I.bx,SI.pS,EI.k6,zI.q9,LI.$F,RI.gK,II.W1,HI.QL,TI.EZ,AI.DN,OI.Jy,$I.z1,DI.Gl,NI.n2,yI.Ew,PI.QL,jI.ck,VI.I2,BI.Qv,FI.CK,WI.bn,UI.bx,GI.e6,qI.yy,YI.xg,ZI.AJ,XI.py,QI.I0,KI.id,JI.qp,tH.UX,eH.PA,iH.B2,oH.It,nH.PZ,rH.aG,sH.$U,aH.S9,lH.Nb,cH.Z4,hH.qz,dH.jw,uH.cd,pH.jR,gH.qt,fH.x7,mH.oE,vH.ad,bH.IT,yH.Ts,wH.UN,xH.jb,kH.jT,CH.w9,MH.Jm,_H.CQ,ZR.$6,SH.Dw,EH.nx],LH={xlsx:P,charts:j},RH={name:"@omegagrid/bundle",version:"0.6.
|
|
7946
|
+
`: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?av.fromA1(this.categoryRangeInput.value):null,this.model.seriesRange=this.seriesRangeInput?.value?av.fromA1(this.seriesRangeInput.value):null,this.model.dataRange=av.fromA1(this.dataRangeInput.value),this.dispatchEvent(new Rn({value:this.model}))}async updated(){this.editTitle&&this.titleInput&&(await this.titleInput.updateComplete,this.titleInput.focus(),this.titleInput.selectAll())}};ez.styles=[JE],tz([ss({type:Object})],ez.prototype,"model",void 0),tz([as()],ez.prototype,"editTitle",void 0),tz([cs("#title")],ez.prototype,"titleInput",void 0),tz([cs("#type")],ez.prototype,"typeList",void 0),tz([cs("#dataRange")],ez.prototype,"dataRangeInput",void 0),tz([cs("#seriesRange")],ez.prototype,"seriesRangeInput",void 0),tz([cs("#categoryRange")],ez.prototype,"categoryRangeInput",void 0),ez=tz([os("og-plugin-chart-form")],ez);const iz=pa().themes.get("dark");Object.assign(iz.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 oz=pa().themes.get("light");Object.assign(oz.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 nz=i(2439),rz=i(8022),sz=i(6158),az=i(127),lz=i(4505),cz=i(8659),hz=i(397),dz=i(930),uz=i(9723),pz=i(6343),gz=i(4582),fz=i(6127),mz=i(8238),vz=i(7362),bz=i(452),yz=i(5390),wz=i(3368),xz=i(6288),kz=i(7513),Cz=i(1386),Mz=i(5764),_z=i(1261),Sz=i(3071),Ez=i(3285),zz=i(2356),Lz=i(6780),Rz=i(8542),Iz=i(8385),Hz=i(1025),Tz=i(2034),Az=i(8113),Oz=i(1821),$z=i(7212),Dz=i(2583),Nz=i(5360),Pz=i(2377),jz=i(2864),Vz=i(7998),Bz=i(4101),Fz=i(7813),Wz=i(5037),Uz=i(7005),Gz=i(9626),qz=i(9517),Yz=i(1504),Zz=i(3838),Xz=i(4935),Qz=i(7699),Kz=i(3322),Jz=i(5757),tL=i(536),eL=i(1673),iL=i(8736),oL=i(196),nL=i(5133),rL=i(6092),sL=i(791),aL=i(5927),lL=i(1802),cL=i(9511),hL=i(6267),dL=i(1072),uL=i(4331),pL=i(8644),gL=i(2704),fL=i(2419),mL=i(6363),vL=i(5236),bL=i(3499),yL=i(3811),wL=i(1953),xL=i(4729),kL=i(8964),CL=i(8540),ML=i(8752),_L=i(8783),SL=i(8270),EL=i(7261),zL=i(9231),LL=i(4555),RL=i(5293),IL=i(6981),HL=i(5268),TL=i(2680),AL=i(789),OL=i(4373),$L=i(436),DL=i(8573),NL=i(1808),PL=i(3247),jL=i(5143),VL=i(2415),BL=i(2561),FL=i(5726),WL=i(7436),UL=i(4201),GL=i(8248),qL=i(6433),YL=i(2698),ZL=i(979),XL=i(9358),QL=i(9176),KL=i(1239),JL=i(4218),tR=i(8377),eR=i(3740),iR=i(5379),oR=i(9974),nR=i(8955),rR=i(3559),sR=i(809),aR=i(8014),lR=i(8265),cR=i(3300),hR=i(8724),dR=i(8033),uR=i(7700),pR=i(5741),gR=i(3478),fR=i(512),mR=i(9432),vR=i(2841),bR=i(75),yR=i(9256),wR=i(444),xR=i(5633),kR=i(3788),CR=i(3573),MR=i(9948),_R=i(1836),SR=i(7029),ER=i(8532),zR=i(6639),LR=i(1633),RR=i(9805),IR=i(2171),HR=i(875),TR=i(9595),AR=i(3894),OR=i(2803),$R=i(7765),DR=i(8804),NR=i(8654),PR=i(257),jR=i(5844),VR=i(9651),BR=i(760),FR=i(9518),WR=i(4585),UR=i(1769),GR=i(643),qR=i(5156),YR=i(822),ZR=i(8249),XR=i(3434),QR=i(9314),KR=i(3093),JR=i(7721),tI=i(588),eI=i(7645),iI=i(7148),oI=i(6795),nI=i(7047),rI=i(9428),sI=i(1879),aI=i(9779),lI=i(2476),cI=i(9648),hI=i(2896),dI=i(6817),uI=i(5196),pI=i(2762),gI=i(5981),fI=i(9014),mI=i(2611),vI=i(7946),bI=i(6301),yI=i(8020),wI=i(3987),xI=i(3192),kI=i(8796),CI=i(2489),MI=i(7324),_I=i(6069),SI=i(4155),EI=i(6977),zI=i(8055),LI=i(2653),RI=i(9492),II=i(4334),HI=i(6804),TI=i(9954),AI=i(2211),OI=i(5211),$I=i(1519),DI=i(6204),NI=i(5501),PI=i(5244),jI=i(9742),VI=i(1552),BI=i(1330),FI=i(2596),WI=i(5184),UI=i(7675),GI=i(1513),qI=i(9396),YI=i(7673),ZI=i(244),XI=i(1187),QI=i(1736),KI=i(4390),JI=i(7106),tH=i(2096),eH=i(9991),iH=i(5629),oH=i(3386),nH=i(6651),rH=i(1684),sH=i(3849),aH=i(2582),lH=i(8569),cH=i(2955),hH=i(9100),dH=i(7381),uH=i(9190),pH=i(4071),gH=i(8e3),fH=i(4633),mH=i(4374),vH=i(486),bH=i(3680),yH=i(9999),wH=i(2830),xH=i(5255),kH=i(6021),CH=i(2214),MH=i(8497),_H=i(2052),SH=i(5327),EH=i(8701);const zH=[nz.w2,rz.Jt,sz.Xk,az.Wz,lz.UR,cz.mR,hz.cb,dz.td,uz.GF,gz.xB,pz.S$,fz.Ot,mz.fU,vz.Vp,bz.HV,yz.BH,wz.Dn,xz.hy,kz.IP,Cz.Nf,Mz.jP,_z.AP,Sz._X,Ez.mu,zz.LB,Lz.hS,Rz.l5,Iz.SI,Hz.ch,Az._u,Oz.ec,$z.jb,Dz.cW,Nz.$f,Pz.qI,jz.j3,Vz.fq,Bz.ao,Fz.Uj,Wz.GE,Uz.QR,Gz.DQ,Yz.lE,qz.mE,Zz.hp,Xz.yL,Qz.ub,Kz.lL,Jz.IN,tL.B0,eL.Ce,iL.dm,oL.h0,nL.sx,rL.HF,sL.qf,lL.jw,cL.k8,hL.Am,dL.ff,uL.s6,pL.bx,gL.pS,fL.k6,mL.q9,vL.$F,bL.gK,yL.W1,wL.QL,xL.EZ,kL.DN,CL.Jy,ML.z1,_L.Gl,SL.n2,aL.Ew,EL.QL,zL.ck,LL.I2,RL.Qv,IL.CK,HL.bn,TL.bx,AL.e6,OL.yy,$L.xg,DL.AJ,NL.py,PL.I0,jL.id,VL.qp,BL.UX,FL.PA,WL.B2,UL.It,GL.PZ,qL.aG,YL.$U,ZL.S9,XL.Nb,QL.Z4,KL.qz,JL.jw,tR.cd,eR.jR,iR.qt,oR.x7,nR.oE,rR.ad,sR.IT,aR.Ts,lR.UN,cR.jb,hR.jT,dR.w9,uR.Jm,pR.CQ,Tz.$6,gR.Dw,fR.nx,mR.w2,vR.Jt,bR.Xk,yR.Wz,wR.UR,xR.mR,kR.cb,CR.td,MR.GF,SR.xB,_R.S$,zR.fU,ER.Ot,LR.Vp,RR.HV,IR.BH,HR.Dn,TR.hy,AR.IP,OR.Nf,$R.jP,DR.AP,BR._X,FR.mu,WR.LB,UR.hS,GR.l5,qR.SI,YR.ch,XR._u,QR.ec,KR.jb,oI.cW,nI.$f,rI.qI,sI.j3,aI.fq,lI.ao,cI.Uj,hI.GE,NR.QR,PR.DQ,VR.lE,jR.mE,dI.hp,uI.yL,pI.ub,gI.lL,fI.IN,mI.B0,vI.Ce,bI.dm,JR.h0,tI.sx,eI.HF,iI.qf,wI.jw,xI.k8,kI.Am,CI.ff,MI.s6,_I.bx,SI.pS,EI.k6,zI.q9,LI.$F,RI.gK,II.W1,HI.QL,TI.EZ,AI.DN,OI.Jy,$I.z1,DI.Gl,NI.n2,yI.Ew,PI.QL,jI.ck,VI.I2,BI.Qv,FI.CK,WI.bn,UI.bx,GI.e6,qI.yy,YI.xg,ZI.AJ,XI.py,QI.I0,KI.id,JI.qp,tH.UX,eH.PA,iH.B2,oH.It,nH.PZ,rH.aG,sH.$U,aH.S9,lH.Nb,cH.Z4,hH.qz,dH.jw,uH.cd,pH.jR,gH.qt,fH.x7,mH.oE,vH.ad,bH.IT,yH.Ts,wH.UN,xH.jb,kH.jT,CH.w9,MH.Jm,_H.CQ,ZR.$6,SH.Dw,EH.nx],LH={xlsx:P,charts:j},RH={name:"@omegagrid/bundle",version:"0.6.26"};pa().activate("light"),Th.styleDefault="fal",Ah.add(...zH)})(),window.Omegagrid=o})();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@omegagrid/bundle",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.26",
|
|
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": "6.4.2",
|
|
20
20
|
"@fortawesome/pro-light-svg-icons": "6.4.2",
|
|
21
21
|
"@fortawesome/pro-solid-svg-icons": "6.4.2",
|
|
22
|
-
"@omegagrid/bucket": "^0.6.
|
|
23
|
-
"@omegagrid/calendar": "^0.6.
|
|
24
|
-
"@omegagrid/code": "^0.6.
|
|
25
|
-
"@omegagrid/commands": "^0.6.
|
|
26
|
-
"@omegagrid/core": "^0.6.
|
|
27
|
-
"@omegagrid/dialog": "^0.6.
|
|
28
|
-
"@omegagrid/editor": "^0.6.
|
|
29
|
-
"@omegagrid/form": "^0.6.
|
|
30
|
-
"@omegagrid/grid": "^0.6.
|
|
31
|
-
"@omegagrid/localize": "^0.6.
|
|
32
|
-
"@omegagrid/markdown": "^0.6.
|
|
33
|
-
"@omegagrid/plugin-charts": "^0.6.
|
|
34
|
-
"@omegagrid/plugin-xlsx": "^0.6.
|
|
35
|
-
"@omegagrid/statusbar": "^0.6.
|
|
36
|
-
"@omegagrid/tabs": "^0.6.
|
|
37
|
-
"@omegagrid/toolbar": "^0.6.
|
|
38
|
-
"@omegagrid/tree": "^0.6.
|
|
22
|
+
"@omegagrid/bucket": "^0.6.26",
|
|
23
|
+
"@omegagrid/calendar": "^0.6.26",
|
|
24
|
+
"@omegagrid/code": "^0.6.26",
|
|
25
|
+
"@omegagrid/commands": "^0.6.26",
|
|
26
|
+
"@omegagrid/core": "^0.6.26",
|
|
27
|
+
"@omegagrid/dialog": "^0.6.26",
|
|
28
|
+
"@omegagrid/editor": "^0.6.26",
|
|
29
|
+
"@omegagrid/form": "^0.6.26",
|
|
30
|
+
"@omegagrid/grid": "^0.6.26",
|
|
31
|
+
"@omegagrid/localize": "^0.6.26",
|
|
32
|
+
"@omegagrid/markdown": "^0.6.26",
|
|
33
|
+
"@omegagrid/plugin-charts": "^0.6.26",
|
|
34
|
+
"@omegagrid/plugin-xlsx": "^0.6.26",
|
|
35
|
+
"@omegagrid/statusbar": "^0.6.26",
|
|
36
|
+
"@omegagrid/tabs": "^0.6.26",
|
|
37
|
+
"@omegagrid/toolbar": "^0.6.26",
|
|
38
|
+
"@omegagrid/tree": "^0.6.26",
|
|
39
39
|
"lit": "^3.1.1"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|