@univerjs/core 0.9.0 → 0.9.1-nightly.202507051607

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/lib/umd/index.js CHANGED
@@ -5,4 +5,4 @@
5
5
  `,e.TABLE_START="",e.TABLE_ROW_START="\x1B",e.TABLE_CELL_START="",e.TABLE_CELL_END="",e.TABLE_ROW_END="",e.TABLE_END="",e.CUSTOM_RANGE_START="",e.CUSTOM_RANGE_END="",e.COLUMN_BREAK="\v",e.PAGE_BREAK="\f",e.DOCS_END="\0",e.TAB=" ",e.CUSTOM_BLOCK="\b",e.LETTER="",e.SPACE=" ",e))(at||{});function mp(e){return`${e}`}const gp=[at.TABLE_START,at.TABLE_ROW_START,at.TABLE_CELL_START,at.TABLE_CELL_END,at.TABLE_ROW_END,at.TABLE_END],Hs=e=>{const t=e.endsWith(`\r
6
6
  `)?e.slice(0,-2):e;return gp.reduce((n,r)=>n.replaceAll(r,""),t)},_p=e=>e?Hs(e).replaceAll("\r","")==="":!0,pp=e=>{const t=e.replace(/\n/g,"\r"),n=[],r=[];let s=0,i="";const o=(l,c=!0)=>{const u=t.slice(s,l);if(K.isLegalUrl(u)){const h=$t(),d=`${u}`,m={startIndex:s,endIndex:s+d.length-1,rangeId:h,rangeType:en.HYPERLINK,properties:{url:e}};r.push(m),i+=d,s=l+1,c&&(i+="\r",n.push({startIndex:l}))}else i+=t.slice(s,l+1),s=l+1,c&&n.push({startIndex:l})};let a=0;for(let l=0;l<t.length;l++)t[l]==="\r"&&(o(l),a=l);return(a!==t.length-1||t.length===1)&&o(t.length,!1),{dataStream:i,paragraphs:n,customRanges:r}},yo={id:"default_doc",documentStyle:{}};class Ep extends Us{constructor(n){var r;super();C(this,"type",we.UNIVER_DOC);C(this,"_name$",new oe.BehaviorSubject(""));C(this,"name$",this._name$.asObservable());C(this,"snapshot");this.snapshot={...yo,...n},this._name$.next((r=this.snapshot.title)!=null?r:"No Title")}getUnitId(){throw new Error("Method not implemented.")}getRev(){var n;return(n=this.snapshot.rev)!=null?n:1}incrementRev(){this.snapshot.rev=this.getRev()+1}setRev(n){this.snapshot.rev=n}setName(n){this.snapshot.title=n,this._name$.next(n)}get drawings(){return this.snapshot.drawings}get documentStyle(){return this.snapshot.documentStyle}get lists(){return this.snapshot.lists}get zoomRatio(){var n;return((n=this.snapshot.settings)==null?void 0:n.zoomRatio)||1}resetDrawing(n,r){this.snapshot.drawings=n,this.snapshot.drawingsOrder=r}getBody(){return this.snapshot.body}getSnapshot(){return this.snapshot}getBulletPresetList(){var s;const n=(s=this.snapshot.lists)!=null?s:{};return{...yr,...n}}updateDocumentId(n){this.snapshot.id=n}updateDocumentRenderConfig(n){const{documentStyle:r}=this.snapshot;r.renderConfig==null?r.renderConfig=n:r.renderConfig={...r.renderConfig,...n}}getDocumentStyle(){return this.snapshot.documentStyle}updateDocumentStyle(n){this.snapshot.documentStyle==null?this.snapshot.documentStyle=n:this.snapshot.documentStyle={...this.snapshot.documentStyle,...n}}updateDocumentDataMargin(n){const{t:r,l:s,b:i,r:o}=n,{documentStyle:a}=this.snapshot;r!=null&&(a.marginTop=r),s!=null&&(a.marginLeft=s),i!=null&&(a.marginBottom=i),o!=null&&(a.marginRight=o)}updateDocumentDataPageSize(n,r){const{documentStyle:s}=this.snapshot;if(!s.pageSize){n=n!=null?n:Number.POSITIVE_INFINITY,r=r!=null?r:Number.POSITIVE_INFINITY,s.pageSize={width:n,height:r};return}n!==void 0&&(s.pageSize.width=n),r!==void 0&&(s.pageSize.height=r)}updateDrawing(n,r){const{drawings:s}=this,{width:i,height:o,left:a,top:l}=r,c=s==null?void 0:s[n];if(!c)return;const u=c.docTransform;u.size.width=i,u.size.height=o,u.positionH.posOffset=a,u.positionV.posOffset=l}setZoomRatio(n=1){this.snapshot.settings==null?this.snapshot.settings={zoomRatio:n}:this.snapshot.settings.zoomRatio=1}setDisabled(n){this.snapshot.disabled=n}getDisabled(){return this.snapshot.disabled}getTitle(){return this.snapshot.title}}class bt extends Ep{constructor(n){var s,i;super(K.isEmptyObject(n)?L_():n);C(this,"_unitId");C(this,"headerModelMap",new Map);C(this,"footerModelMap",new Map);C(this,"change$",new oe.BehaviorSubject(0));const r=6;this._unitId=(s=this.snapshot.id)!=null?s:K.generateRandomId(r),this._initializeHeaderFooterModel(),this._name$.next((i=this.snapshot.title)!=null?i:"")}dispose(){super.dispose(),this.headerModelMap.forEach(n=>{n.dispose()}),this.footerModelMap.forEach(n=>{n.dispose()}),this._name$.complete()}getDrawings(){return this.snapshot.drawings}getDrawingsOrder(){return this.snapshot.drawingsOrder}getCustomRanges(){var n;return(n=this.snapshot.body)==null?void 0:n.customRanges}getCustomDecorations(){var n;return(n=this.snapshot.body)==null?void 0:n.customDecorations}getSettings(){return this.snapshot.settings}reset(n){if(n.id&&n.id!==this._unitId)throw new Error("Cannot reset a document model with a different unit id!");this.snapshot={...yo,...n},this._initializeHeaderFooterModel(),this.change$.next(this.change$.value+1)}getSelfOrHeaderFooterModel(n){if(n!=null){if(this.headerModelMap.has(n))return this.headerModelMap.get(n);if(this.footerModelMap.has(n))return this.footerModelMap.get(n)}return this}getUnitId(){return this._unitId}apply(n){if(!Wt.isNoop(n))return this.snapshot=Wt.apply(this.snapshot,n),n!=null&&n.some(r=>Array.isArray(r)&&((r==null?void 0:r[0])==="headers"||(r==null?void 0:r[0])==="footers"))&&(this.headerModelMap.clear(),this.footerModelMap.clear(),this._initializeHeaderFooterModel()),this.change$.next(this.change$.value+1),this.snapshot}sliceBody(n,r,s=Ao.copy){const i=this.getBody();if(i!=null)return wt(i,n,r,!1,s)}_initializeHeaderFooterModel(){const{headers:n,footers:r}=this.getSnapshot();if(n)for(const s in n){const i=n[s];this.headerModelMap.set(s,new bt(i)),this.headerModelMap.get(s).updateDocumentId(this.getUnitId())}if(r)for(const s in r){const i=r[s];this.footerModelMap.set(s,new bt(i)),this.footerModelMap.get(s).updateDocumentId(this.getUnitId())}}updateDocumentId(n){super.updateDocumentId(n),this._unitId=n}getPlainText(){var n,r;return Hs((r=(n=this.getBody())==null?void 0:n.dataStream)!=null?r:"")}}function Cp(e){const{ranges:t,id:n,type:r}=e,s=new Me;let i=0;for(let o=0;o<t.length;o++){const a=t[o],{startOffset:l,endOffset:c}=a;l>0&&s.push({t:J.RETAIN,len:l-i}),s.push({t:J.RETAIN,body:{dataStream:"",customDecorations:[{id:n,type:r,startIndex:0,endIndex:c-l-1}]},len:c-l}),i=c}return s}function Rp(e){var u,h,d;const{id:t,segmentId:n,documentDataModel:r}=e,s=r==null?void 0:r.getBody();if(!r||!s)return!1;const i=(d=(h=(u=r.getSelfOrHeaderFooterModel(n))==null?void 0:u.getBody())==null?void 0:h.customDecorations)==null?void 0:d.find(m=>m.id===t);if(!i)return!1;const o=new Me,{startIndex:a,endIndex:l}=i,c=l-a+1;return o.push({t:J.RETAIN,len:a}),o.push({t:J.RETAIN,len:c,body:{dataStream:"",customDecorations:[{startIndex:0,endIndex:c-1,id:t,type:_n.DELETED}]}}),o}function Nu(e,t,n,r){return e<=n&&t>=n||e>=n&&e<=r}function Ip(e,t){const n=[];for(let r=0,s=t.length;r<s;r++){const i=t[r];e.collapsed?i.startIndex<e.startOffset&&e.startOffset<=i.endIndex&&n.push(i):Nu(e.startOffset,e.endOffset-1,i.startIndex,i.endIndex)&&n.push(i)}return n}function Sp(e){return{...K.deepClone(e),rangeId:$t()}}function Op(e,t){const n=[];let r=e[0];for(const s of t)s<e[0]||s>e[1]||(r<s&&n.push([r,s-1]),r=s+1);return r<=e[1]&&n.push([r,e[1]]),n}function Mu(e,t,n,r){const s=[];for(let i=0,o=n.length;i<o;i++){const a=n[i];if((r===void 0||a.rangeType===r)&&Math.max(a.startIndex,e)<=Math.min(a.endIndex,t)&&s.push({...a}),a.startIndex>t)break}return s}function vp(e,t){var i,o,a,l,c;const n=Mu(e.startOffset,e.collapsed?e.startOffset:e.endOffset-1,(i=t.customRanges)!=null?i:[]),r=Math.min(e.startOffset,(a=(o=n[0])==null?void 0:o.startIndex)!=null?a:1/0),s=Math.max(e.endOffset,((c=(l=n[n.length-1])==null?void 0:l.endIndex)!=null?c:-1/0)+1);return{startOffset:r,endOffset:s,collapsed:r===s}}var No,Lu;function wp(){if(Lu)return No;Lu=1;var e=-1,t=1,n=0;function r(g,P,v,M,T){if(g===P)return g?[[n,g]]:[];if(v!=null){var w=$(g,P,v);if(w)return w}var N=a(g,P),L=g.substring(0,N);g=g.substring(N),P=P.substring(N),N=c(g,P);var D=g.substring(g.length-N);g=g.substring(0,g.length-N),P=P.substring(0,P.length-N);var F=s(g,P);return L&&F.unshift([n,L]),D&&F.push([n,D]),B(F,T),M&&h(F),F}function s(g,P){var v;if(!g)return[[t,P]];if(!P)return[[e,g]];var M=g.length>P.length?g:P,T=g.length>P.length?P:g,w=M.indexOf(T);if(w!==-1)return v=[[t,M.substring(0,w)],[n,T],[t,M.substring(w+T.length)]],g.length>P.length&&(v[0][0]=v[2][0]=e),v;if(T.length===1)return[[e,g],[t,P]];var N=u(g,P);if(N){var L=N[0],D=N[1],F=N[2],Q=N[3],z=N[4],le=r(L,F),ue=r(D,Q);return le.concat([[n,z]],ue)}return i(g,P)}function i(g,P){for(var v=g.length,M=P.length,T=Math.ceil((v+M)/2),w=T,N=2*T,L=new Array(N),D=new Array(N),F=0;F<N;F++)L[F]=-1,D[F]=-1;L[w+1]=0,D[w+1]=0;for(var Q=v-M,z=Q%2!==0,le=0,ue=0,S=0,U=0,G=0;G<T;G++){for(var V=-G+le;V<=G-ue;V+=2){var W=w+V,j;V===-G||V!==G&&L[W-1]<L[W+1]?j=L[W+1]:j=L[W-1]+1;for(var ee=j-V;j<v&&ee<M&&g.charAt(j)===P.charAt(ee);)j++,ee++;if(L[W]=j,j>v)ue+=2;else if(ee>M)le+=2;else if(z){var te=w+Q-V;if(te>=0&&te<N&&D[te]!==-1){var k=v-D[te];if(j>=k)return o(g,P,j,ee)}}}for(var X=-G+S;X<=G-U;X+=2){var te=w+X,k;X===-G||X!==G&&D[te-1]<D[te+1]?k=D[te+1]:k=D[te-1]+1;for(var Z=k-X;k<v&&Z<M&&g.charAt(v-k-1)===P.charAt(M-Z-1);)k++,Z++;if(D[te]=k,k>v)U+=2;else if(Z>M)S+=2;else if(!z){var W=w+Q-X;if(W>=0&&W<N&&L[W]!==-1){var j=L[W],ee=w+j-W;if(k=v-k,j>=k)return o(g,P,j,ee)}}}}return[[e,g],[t,P]]}function o(g,P,v,M){var T=g.substring(0,v),w=P.substring(0,M),N=g.substring(v),L=P.substring(M),D=r(T,w),F=r(N,L);return D.concat(F)}function a(g,P){if(!g||!P||g.charAt(0)!==P.charAt(0))return 0;for(var v=0,M=Math.min(g.length,P.length),T=M,w=0;v<T;)g.substring(w,T)==P.substring(w,T)?(v=T,w=v):M=T,T=Math.floor((M-v)/2+v);return x(g.charCodeAt(T-1))&&T--,T}function l(g,P){var v=g.length,M=P.length;if(v==0||M==0)return 0;v>M?g=g.substring(v-M):v<M&&(P=P.substring(0,v));var T=Math.min(v,M);if(g==P)return T;for(var w=0,N=1;;){var L=g.substring(T-N),D=P.indexOf(L);if(D==-1)return w;N+=D,(D==0||g.substring(T-N)==P.substring(0,N))&&(w=N,N++)}}function c(g,P){if(!g||!P||g.slice(-1)!==P.slice(-1))return 0;for(var v=0,M=Math.min(g.length,P.length),T=M,w=0;v<T;)g.substring(g.length-T,g.length-w)==P.substring(P.length-T,P.length-w)?(v=T,w=v):M=T,T=Math.floor((M-v)/2+v);return Y(g.charCodeAt(g.length-T))&&T--,T}function u(g,P){var v=g.length>P.length?g:P,M=g.length>P.length?P:g;if(v.length<4||M.length*2<v.length)return null;function T(ue,S,U){for(var G=ue.substring(U,U+Math.floor(ue.length/4)),V=-1,W="",j,ee,te,k;(V=S.indexOf(G,V+1))!==-1;){var X=a(ue.substring(U),S.substring(V)),Z=c(ue.substring(0,U),S.substring(0,V));W.length<Z+X&&(W=S.substring(V-Z,V)+S.substring(V,V+X),j=ue.substring(0,U-Z),ee=ue.substring(U+X),te=S.substring(0,V-Z),k=S.substring(V+X))}return W.length*2>=ue.length?[j,ee,te,k,W]:null}var w=T(v,M,Math.ceil(v.length/4)),N=T(v,M,Math.ceil(v.length/2)),L;if(!w&&!N)return null;N?w?L=w[4].length>N[4].length?w:N:L=N:L=w;var D,F,Q,z;g.length>P.length?(D=L[0],F=L[1],Q=L[2],z=L[3]):(Q=L[0],z=L[1],D=L[2],F=L[3]);var le=L[4];return[D,F,Q,z,le]}function h(g){for(var P=!1,v=[],M=0,T=null,w=0,N=0,L=0,D=0,F=0;w<g.length;)g[w][0]==n?(v[M++]=w,N=D,L=F,D=0,F=0,T=g[w][1]):(g[w][0]==t?D+=g[w][1].length:F+=g[w][1].length,T&&T.length<=Math.max(N,L)&&T.length<=Math.max(D,F)&&(g.splice(v[M-1],0,[e,T]),g[v[M-1]+1][0]=t,M--,M--,w=M>0?v[M-1]:-1,N=0,L=0,D=0,F=0,T=null,P=!0)),w++;for(P&&B(g),A(g),w=1;w<g.length;){if(g[w-1][0]==e&&g[w][0]==t){var Q=g[w-1][1],z=g[w][1],le=l(Q,z),ue=l(z,Q);le>=ue?(le>=Q.length/2||le>=z.length/2)&&(g.splice(w,0,[n,z.substring(0,le)]),g[w-1][1]=Q.substring(0,Q.length-le),g[w+1][1]=z.substring(le),w++):(ue>=Q.length/2||ue>=z.length/2)&&(g.splice(w,0,[n,Q.substring(0,ue)]),g[w-1][0]=t,g[w-1][1]=z.substring(0,z.length-ue),g[w+1][0]=e,g[w+1][1]=Q.substring(ue),w++),w++}w++}}var d=/[^a-zA-Z0-9]/,m=/\s/,_=/[\r\n]/,p=/\n\r?\n$/,I=/^\r?\n\r?\n/;function A(g){function P(ue,S){if(!ue||!S)return 6;var U=ue.charAt(ue.length-1),G=S.charAt(0),V=U.match(d),W=G.match(d),j=V&&U.match(m),ee=W&&G.match(m),te=j&&U.match(_),k=ee&&G.match(_),X=te&&ue.match(p),Z=k&&S.match(I);return X||Z?5:te||k?4:V&&!j&&ee?3:j||ee?2:V||W?1:0}for(var v=1;v<g.length-1;){if(g[v-1][0]==n&&g[v+1][0]==n){var M=g[v-1][1],T=g[v][1],w=g[v+1][1],N=c(M,T);if(N){var L=T.substring(T.length-N);M=M.substring(0,M.length-N),T=L+T.substring(0,T.length-N),w=L+w}for(var D=M,F=T,Q=w,z=P(M,T)+P(T,w);T.charAt(0)===w.charAt(0);){M+=T.charAt(0),T=T.substring(1)+w.charAt(0),w=w.substring(1);var le=P(M,T)+P(T,w);le>=z&&(z=le,D=M,F=T,Q=w)}g[v-1][1]!=D&&(D?g[v-1][1]=D:(g.splice(v-1,1),v--),g[v][1]=F,Q?g[v+1][1]=Q:(g.splice(v+1,1),v--))}v++}}function B(g,P){g.push([n,""]);for(var v=0,M=0,T=0,w="",N="",L;v<g.length;){if(v<g.length-1&&!g[v][1]){g.splice(v,1);continue}switch(g[v][0]){case t:T++,N+=g[v][1],v++;break;case e:M++,w+=g[v][1],v++;break;case n:var D=v-T-M-1;if(P){if(D>=0&&R(g[D][1])){var F=g[D][1].slice(-1);if(g[D][1]=g[D][1].slice(0,-1),w=F+w,N=F+N,!g[D][1]){g.splice(D,1),v--;var Q=D-1;g[Q]&&g[Q][0]===t&&(T++,N=g[Q][1]+N,Q--),g[Q]&&g[Q][0]===e&&(M++,w=g[Q][1]+w,Q--),D=Q}}if(O(g[v][1])){var F=g[v][1].charAt(0);g[v][1]=g[v][1].slice(1),w+=F,N+=F}}if(v<g.length-1&&!g[v][1]){g.splice(v,1);break}if(w.length>0||N.length>0){w.length>0&&N.length>0&&(L=a(N,w),L!==0&&(D>=0?g[D][1]+=N.substring(0,L):(g.splice(0,0,[n,N.substring(0,L)]),v++),N=N.substring(L),w=w.substring(L)),L=c(N,w),L!==0&&(g[v][1]=N.substring(N.length-L)+g[v][1],N=N.substring(0,N.length-L),w=w.substring(0,w.length-L)));var z=T+M;w.length===0&&N.length===0?(g.splice(v-z,z),v=v-z):w.length===0?(g.splice(v-z,z,[t,N]),v=v-z+1):N.length===0?(g.splice(v-z,z,[e,w]),v=v-z+1):(g.splice(v-z,z,[e,w],[t,N]),v=v-z+2)}v!==0&&g[v-1][0]===n?(g[v-1][1]+=g[v][1],g.splice(v,1)):v++,T=0,M=0,w="",N="";break}}g[g.length-1][1]===""&&g.pop();var le=!1;for(v=1;v<g.length-1;)g[v-1][0]===n&&g[v+1][0]===n&&(g[v][1].substring(g[v][1].length-g[v-1][1].length)===g[v-1][1]?(g[v][1]=g[v-1][1]+g[v][1].substring(0,g[v][1].length-g[v-1][1].length),g[v+1][1]=g[v-1][1]+g[v+1][1],g.splice(v-1,1),le=!0):g[v][1].substring(0,g[v+1][1].length)==g[v+1][1]&&(g[v-1][1]+=g[v+1][1],g[v][1]=g[v][1].substring(g[v+1][1].length)+g[v+1][1],g.splice(v+1,1),le=!0)),v++;le&&B(g,P)}function x(g){return g>=55296&&g<=56319}function Y(g){return g>=56320&&g<=57343}function O(g){return Y(g.charCodeAt(0))}function R(g){return x(g.charCodeAt(g.length-1))}function b(g){for(var P=[],v=0;v<g.length;v++)g[v][1].length>0&&P.push(g[v]);return P}function y(g,P,v,M){return R(g)||O(M)?null:b([[n,g],[e,P],[t,v],[n,M]])}function $(g,P,v){var M=typeof v=="number"?{index:v,length:0}:v.oldRange,T=typeof v=="number"?null:v.newRange,w=g.length,N=P.length;if(M.length===0&&(T===null||T.length===0)){var L=M.index,D=g.slice(0,L),F=g.slice(L),Q=T?T.index:null;e:{var z=L+N-w;if(Q!==null&&Q!==z||z<0||z>N)break e;var le=P.slice(0,z),ue=P.slice(z);if(ue!==F)break e;var S=Math.min(L,z),U=D.slice(0,S),G=le.slice(0,S);if(U!==G)break e;var V=D.slice(S),W=le.slice(S);return y(U,V,W,F)}e:{if(Q!==null&&Q!==L)break e;var j=L,le=P.slice(0,j),ue=P.slice(j);if(le!==D)break e;var ee=Math.min(w-j,N-j),te=F.slice(F.length-ee),k=ue.slice(ue.length-ee);if(te!==k)break e;var V=F.slice(0,F.length-ee),W=ue.slice(0,ue.length-ee);return y(D,V,W,te)}}if(M.length>0&&T&&T.length===0)e:{var U=g.slice(0,M.index),te=g.slice(M.index+M.length),S=U.length,ee=te.length;if(N<S+ee)break e;var G=P.slice(0,S),k=P.slice(N-ee);if(U!==G||te!==k)break e;var V=g.slice(S,w-ee),W=P.slice(S,N-ee);return y(U,V,W,te)}return null}function H(g,P,v,M){return r(g,P,v,M,!0)}return H.INSERT=t,H.DELETE=e,H.EQUAL=n,No=H,No}var bp=wp();const Mo=ft(bp);function Ap(e){var h,d,m;const{rangeId:t,segmentId:n,documentDataModel:r,insert:s}=e,i=(d=(h=r.getSelfOrHeaderFooterModel(n).getBody())==null?void 0:h.customRanges)==null?void 0:d.find(_=>_.rangeId===t);if(!i)return!1;const{startIndex:o,endIndex:a}=i,l=new Me,c=a-o+1;l.push({t:J.RETAIN,len:o}),l.push({t:J.RETAIN,len:c,body:{dataStream:"",customRanges:[]}}),s&&l.push({t:J.INSERT,body:s,len:s.dataStream.length});const u=a+1+((m=s==null?void 0:s.dataStream.length)!=null?m:0);return l.selections=[{startOffset:u,endOffset:u,collapsed:!0}],l}function Tp(e){const{ranges:t,rangeId:n,rangeType:r,wholeEntity:s,properties:i,body:o}=e;let a=0;const l=new Me;let c=!1;return t.forEach(u=>{var x,Y,O;const h=vp(u,o);if(!h||!o)return!1;const{startOffset:d,endOffset:m}=h,_=(x=o.customRanges)!=null?x:[],p=(R,b,y)=>{var v,M,T,w;const $=Mu(R,b,_,r),H=Math.min((M=(v=$[0])==null?void 0:v.startIndex)!=null?M:1/0,R),g=Math.max((w=(T=$[$.length-1])==null?void 0:T.endIndex)!=null?w:-1/0,b),P={rangeId:y?`${n}$${y}`:n,rangeType:r,startIndex:0,endIndex:g-H,wholeEntity:s,properties:{...i}};l.push({t:J.RETAIN,len:H-a}),l.push({t:J.RETAIN,len:g-H+1,body:{dataStream:"",customRanges:[P]},coverType:Ce.COVER}),a=g+1},I=((Y=o.paragraphs)!=null?Y:[]).filter(R=>R.startIndex<m&&R.startIndex>d),A=((O=o.customBlocks)!=null?O:[]).filter(R=>R.startIndex<m&&R.startIndex>d);Op([d,m-1],[...I.map(R=>R.startIndex),...A.map(R=>R.startIndex)]).forEach(([R,b],y)=>p(R,b,y)),c=!0,l.selections=[{startOffset:h.endOffset,endOffset:h.endOffset,collapsed:!0}]}),c?l:!1}function Du(e,t,n=0,r=null,s=!0){e.sort((c,u)=>c.startOffset-u.startOffset);const i=[],{paragraphs:o=[]}=t,a=o==null?void 0:o.find(c=>c.startIndex>=e[0].startOffset&&c.startIndex<e[0].endOffset);let l=n;if(e.forEach(c=>{const{startOffset:u,endOffset:h}=c;u>l&&(i.push({t:J.RETAIN,len:u-l}),l=u),l<h&&(i.push({t:J.DELETE,len:h-l}),l=h)}),r&&i.push({t:J.INSERT,body:r,len:r.dataStream.length}),a&&s){const c=o.find(u=>u.startIndex-n>=e[e.length-1].endOffset-1);c&&(c.startIndex>l&&(i.push({t:J.RETAIN,len:c.startIndex-l}),l=c.startIndex),i.push({t:J.RETAIN,len:1,body:{dataStream:"",paragraphs:[{...c,startIndex:0,bullet:a==null?void 0:a.bullet}]},coverType:Ce.REPLACE}))}return i}function yp(e,t,n=0){const r=[];let s=n;return e.forEach(i=>{const{startOffset:o,endOffset:a}=i;o>s&&(r.push({t:J.RETAIN,len:o-s}),s=o),a>s&&(r.push({t:J.RETAIN,len:a-s,body:{...K.deepClone(t),dataStream:""}}),s=a)}),r}const Np=e=>{var h;const{selection:t,body:n,doc:r}=e,s=t.segmentId,i=(h=r.getSelfOrHeaderFooterModel(s))==null?void 0:h.getBody();if(!i)return!1;const o=t.collapsed?null:wt(i,t.startOffset,t.endOffset),a=Mo(o?o.dataStream:"",n.dataStream);let l=0;const c=a.map(([d,m])=>{switch(d){case 0:{const _={t:J.RETAIN,body:{...wt(n,l,l+m.length,!1),dataStream:""},len:m.length};return l+=m.length,_}case 1:{const _={t:J.INSERT,body:wt(n,l,l+m.length),len:m.length};return l+=m.length,_}default:return{t:J.DELETE,len:m.length}}}),u=new Me;return u.push({t:J.RETAIN,len:t.startOffset}),u.push(...c),u};function Mp(e,t){return!!((e==null?void 0:e.length)===(t==null?void 0:t.length)&&(e!=null&&e.every((n,r)=>JSON.stringify(n)===JSON.stringify(t==null?void 0:t[r]))))}const Lp=e=>{var d;const{selection:t,body:n,doc:r,themeService:s}=e,i=t.segmentId,o=(d=r.getSelfOrHeaderFooterModel(i))==null?void 0:d.getBody();if(!o)return!1;const a=t.collapsed?null:wt(o,t.startOffset,t.endOffset),l=Mo(a?a.dataStream:"",n.dataStream);let c=0;const u=l.map(([m,_])=>{switch(m){case 0:{const p=$s(n,c,c+_.length,!1),I=$s(a,c,c+_.length,!1),A={t:J.RETAIN,body:Mp(p,I)?void 0:{textRuns:p==null?void 0:p.map(B=>{var x,Y,O,R,b,y,$;return{...B,ts:{...B.ts,cl:(O=(Y=(x=B.ts)==null?void 0:x.cl)==null?void 0:Y.rgb)!=null&&O.includes(".")?{rgb:s.getColorFromTheme((y=(b=(R=B.ts)==null?void 0:R.cl)==null?void 0:b.rgb)!=null?y:"")}:($=B.ts)==null?void 0:$.cl}}}),dataStream:""},len:_.length};return c+=_.length,A}case 1:{const p={t:J.INSERT,body:wt(n,c,c+_.length),len:_.length};return c+=_.length,p}default:return{t:J.DELETE,len:_.length}}});if(u.every(m=>m.t===J.RETAIN&&!m.body))return!1;const h=new Me;return h.push({t:J.RETAIN,len:t.startOffset}),h.push(...u),h};function Dp(e,t){const n=[],{customBlocks:r=[]}=e;for(const s of t){const{startOffset:i,endOffset:o}=s;if(!(i==null||o==null))for(const a of r){const{startIndex:l}=a;l>=i&&l<o&&n.push(a.blockId)}}return n}function Up(e,t=""){if(!t)return["body"];const{headers:n,footers:r}=e.getSnapshot();if(n==null&&r==null)throw new Error("Document data model must have headers or footers when update by segment id");if((n==null?void 0:n[t])!=null)return["headers",t,"body"];if((r==null?void 0:r[t])!=null)return["footers",t,"body"];throw new Error("Segment id not found in headers or footers")}const Pp=e=>{var p,I,A,B;const{selection:t,documentDataModel:n,drawings:r}=e,{collapsed:s,startOffset:i,segmentId:o}=t,a=new Me,l=Wt.getInstance(),c=[],u=n.getSelfOrHeaderFooterModel(o).getBody();if(!u)return!1;const h=(I=(p=n.getSnapshot().drawingsOrder)==null?void 0:p.length)!=null?I:0;let d=0;if(s)i>0&&a.push({t:J.RETAIN,len:i});else{const x=Du([t],u,0,null,!1);a.push(...x);const Y=Dp(u,[t]),O=(A=n.getDrawings())!=null?A:{},R=(B=n.getDrawingsOrder())!=null?B:[],b=Y.sort((y,$)=>R.indexOf(y)>R.indexOf($)?-1:R.indexOf(y)<R.indexOf($)?1:0);if(b.length>0)for(const y of b){const $=O[y],H=R.indexOf(y);if($==null||H<0)continue;const g=l.removeOp(["drawings",y],$),P=l.removeOp(["drawingsOrder",H],y);c.push(g),c.push(P),d++}}a.push({t:J.INSERT,body:{dataStream:"\b".repeat(r.length),customBlocks:r.map((x,Y)=>({startIndex:Y,blockId:x.drawingId}))},len:r.length});const m=Up(n,o),_=l.editOp(a.serialize(),m);c.push(_);for(const x of r){const{drawingId:Y}=x,O=l.insertOp(["drawings",Y],x),R=l.insertOp(["drawingsOrder",h-d],Y);c.push(O),c.push(R)}return c.reduce((x,Y)=>Wt.compose(x,Y),null)};function kp(e,t){if(typeof t>"u")return{startOffset:e,endOffset:e,collapsed:!0};if(t<e)throw new Error(`Cannot make a doc selection when endOffset ${t} is less than startOffset ${e}.`);return{startOffset:e,endOffset:t,collapsed:e===t}}function Fp(e){const{startOffset:t,endOffset:n,collapsed:r}=e,s=Math.min(t,n),i=Math.max(t,n);return{startOffset:s,endOffset:i,collapsed:r}}function xp(e,t,n,r){return Math.max(e,n)<=Math.min(t,r)}function Lo(e,t,n,r){const{startOffset:s,endOffset:i}=e,o=r!=null?r:Uo(t,n),a=[];let l=-1;for(let c=0;c<o.length;c++){const u=o[c],{startIndex:h}=u;(s>l&&s<=h||i>l&&i<=h||h>=s&&h<=i)&&a.push(u),l=h}return a}function Do(e,t,n){const r=[],s=Uo(t,n);for(const i of e){const o=Lo(i,t,n,s);r.push(...o)}return r}const Bp=[at.PARAGRAPH,at.TABLE_START,at.TABLE_END,at.TABLE_ROW_START,at.TABLE_CELL_START,at.TABLE_CELL_END];function Uo(e,t){const n=[];for(let r=0;r<e.length;r++){const s=e[r],{startIndex:i}=s;let o=i-1;for(;!Bp.includes(t[o])&&o>=0;)o--;n.push({...s,paragraphStart:o+1,paragraphEnd:s.startIndex})}return n}const $p=e=>{var h,d,m;const{paragraphs:t,segmentId:n,document:r}=e;let s=e.listType;const i=(d=(h=r.getSelfOrHeaderFooterModel(n).getBody())==null?void 0:h.paragraphs)!=null?d:[],o=t.every(_=>{var p;return((p=_.bullet)==null?void 0:p.listType.indexOf(s))===0});let l=K.generateRandomId(6);if(t.length===1){const _=i.indexOf(t[0]),p=i[_-1],I=i[_+1];p&&p.bullet&&p.bullet.listType.indexOf(s)===0?(l=p.bullet.listId,s!==kt.CHECK_LIST&&(s=p.bullet.listType)):I&&I.bullet&&I.bullet.listType.indexOf(s)===0&&(l=I.bullet.listId,s!==kt.CHECK_LIST&&(s=I.bullet.listType))}const c=new un;c.reset();const u=new Me;for(const _ of t){const{startIndex:p,paragraphStyle:I={},bullet:A}=_;u.push({t:J.RETAIN,len:p-c.cursor}),u.push({t:J.RETAIN,len:1,body:{dataStream:"",paragraphs:[o?{paragraphStyle:I,startIndex:0}:{startIndex:0,paragraphStyle:{...I},bullet:{nestingLevel:(m=A==null?void 0:A.nestingLevel)!=null?m:0,textStyle:{fs:20},listType:s,listId:l}}]},coverType:Ce.REPLACE}),c.moveCursorTo(p+1)}return u},Hp=e=>{var h;const{paragraphIndex:t,segmentId:n,document:r}=e,s=(h=r.getSelfOrHeaderFooterModel(n).getBody())==null?void 0:h.paragraphs;if(s==null)return!1;const i=s.find(d=>d.startIndex===t);if(!(i!=null&&i.bullet)||i.bullet.listType.indexOf(kt.CHECK_LIST)===-1)return!1;const o=new un;o.reset();const a=new Me,{startIndex:l,paragraphStyle:c={}}=i,u=i.bullet.listType===kt.CHECK_LIST?kt.CHECK_LIST_CHECKED:kt.CHECK_LIST;return a.push({t:J.RETAIN,len:l-o.cursor}),a.push({t:J.RETAIN,len:1,body:{dataStream:"",paragraphs:[{...i,paragraphStyle:c,startIndex:0,bullet:{...i.bullet,listType:u}}]},coverType:Ce.REPLACE}),o.moveCursorTo(l+1),a},Wp=e=>{var u,h;const{paragraphs:t,listType:n,segmentId:r,document:s}=e;if(((u=s.getSelfOrHeaderFooterModel(r).getBody())==null?void 0:u.paragraphs)==null)return!1;const a=K.generateRandomId(6),l=new un;l.reset();const c=new Me;for(const d of t){const{startIndex:m,paragraphStyle:_={},bullet:p}=d;c.push({t:J.RETAIN,len:m-l.cursor}),c.push({t:J.RETAIN,len:1,body:{dataStream:"",paragraphs:[{startIndex:0,paragraphStyle:_,bullet:{nestingLevel:(h=p==null?void 0:p.nestingLevel)!=null?h:0,textStyle:(p==null?void 0:p.listType)===n?p.textStyle:{fs:20},listType:n,listId:a}}]},coverType:Ce.REPLACE}),l.moveCursorTo(m+1)}return c};function jp(e,t){return t.some(n=>e.startIndex>n.startIndex&&e.startIndex<n.endIndex)}const Yp=e=>{var c,u,h;const{paragraphs:t,document:n,type:r}=e,s=new un;s.reset();const i=new Me,o=(c=n.getSnapshot().lists)!=null?c:{},a=(h=(u=n.getBody())==null?void 0:u.tables)!=null?h:[],l={...yr,...o};for(const d of t){const{startIndex:m,paragraphStyle:_={},bullet:p}=d,I=jp(d,a);if(i.push({t:J.RETAIN,len:m-s.cursor}),p){const A=p.listType;let B=l[A].nestingLevel.length-1;I&&(B=Math.min(B,2)),i.push({t:J.RETAIN,len:1,body:{dataStream:"",paragraphs:[{startIndex:0,paragraphStyle:{..._},bullet:{...p,nestingLevel:Math.max(Math.min(p.nestingLevel+r,B),0)}}]},coverType:Ce.REPLACE})}else i.push({t:J.RETAIN,len:1});s.moveCursorTo(m+1)}return i},Gp=e=>{var I,A,B,x;const{textRanges:t,segmentId:n,document:r,style:s,paragraphTextRun:i,cursor:o,deleteLen:a,textX:l}=e,c=r.getSelfOrHeaderFooterModel(n),u=(A=(I=c.getBody())==null?void 0:I.paragraphs)!=null?A:[],h=(x=(B=c.getBody())==null?void 0:B.dataStream)!=null?x:"",d=Do(t,u,h),m=new un;o&&m.moveCursorTo(o);const _=l!=null?l:new Me;d.sort((Y,O)=>Y.startIndex-O.startIndex);const p=Math.max(0,d[0].paragraphStart-1);p>m.cursor&&(_.push({t:J.RETAIN,len:p-m.cursor}),m.moveCursorTo(p)),a&&_.push({t:J.DELETE,len:a});for(const Y of d){const{startIndex:O,paragraphStyle:R={}}=Y,b=O-m.cursor;_.push({t:J.RETAIN,len:b,...i?{body:{dataStream:"",textRuns:[{ts:i,st:0,ed:b}]},coverType:Ce.REPLACE}:null}),_.push({t:J.RETAIN,len:1,body:{dataStream:"",paragraphs:[{startIndex:0,paragraphStyle:{...R,...s}}]},coverType:Ce.REPLACE}),m.moveCursorTo(O+1)}return _};class Je{}C(Je,"customRange",{add:Tp,delete:Ap,copyCustomRange:Sp,getCustomRangesInterestsWithSelection:Ip,isIntersecting:Nu}),C(Je,"customDecoration",{add:Cp,delete:Rp}),C(Je,"selection",{replace:Np,makeSelection:kp,normalizeSelection:Fp,delete:Du,replaceTextRuns:Lp,retain:yp}),C(Je,"range",{isIntersects:xp,getParagraphsInRange:Lo,getParagraphsInRanges:Do}),C(Je,"transform",{getPlainText:Hs,fromPlainText:pp,isEmptyDocument:_p}),C(Je,"paragraph",{bullet:{set:Wp,switch:$p,toggleChecklist:Hp,changeNestLevel:Yp},style:{set:Gp},util:{transform:Uo,getParagraphsInRange:Lo,getParagraphsInRanges:Do}}),C(Je,"drawing",{add:Pp});function Vp(e,t,n,r){var c;if(t==="")return e;const s={id:"mock-id",body:e,documentStyle:{}},i=new bt(s),o=t.length;let a;for(;(a=(r?i.getBody().dataStream:i.getBody().dataStream.toLowerCase()).indexOf(t))>=0;){const u=new Me,h=Wt.getInstance();if(a>0&&u.retain(a),n.length>0){const d=i.sliceBody(a,a+o),m={dataStream:n};if(Array.isArray(d==null?void 0:d.textRuns)&&d.textRuns.length&&(m.textRuns=[{...d.textRuns[0],st:0,ed:n.length}]),(c=d==null?void 0:d.customRanges)!=null&&c.length){const _=d.customRanges[0];m.customRanges=[{..._,startIndex:0,endIndex:n.length-1}]}u.insert(n.length,m)}u.delete(o),i.apply(h.editOp(u.serialize()))}const l=i.getBody();return i.dispose(),l}function zp(e){if(e.customRanges||(e.customRanges=[]),!e.paragraphs){e.paragraphs=[];for(let t=0;t<e.dataStream.length;t++)e.dataStream[t]==="\r"&&e.paragraphs.push({startIndex:t})}return e.customBlocks||(e.customBlocks=[]),e.textRuns||(e.textRuns=[]),e.customDecorations||(e.customDecorations=[]),e.sectionBreaks||(e.sectionBreaks=[]),e.tables||(e.tables=[]),e}function Uu(e){var t;return e.body=zp((t=e.body)!=null?t:{dataStream:""}),e.drawingsOrder||(e.drawingsOrder=[]),e.drawings||(e.drawings={}),e.documentStyle||(e.documentStyle={}),e}class Nr{constructor(t={}){C(this,"_style");this._style=t}static create(t={}){return new Nr(t)}get fontFamily(){return this._style.ff}get fontSize(){return this._style.fs}get italic(){return this._style.it===ae.TRUE}get bold(){return this._style.bl===ae.TRUE}get underline(){return this._style.ul&&rn.create(this._style.ul)}get bottomBorderLine(){return this._style.bbl&&rn.create(this._style.bbl)}get strikethrough(){return this._style.st&&rn.create(this._style.st)}get overline(){return this._style.ol&&rn.create(this._style.ol)}get background(){return this._style.bg}get border(){return this._style.bd}get color(){return this._style.cl}get verticalAlign(){return this._style.va}get numberFormat(){return this._style.n}copy(){return nn.create(K.deepClone(this._style))}getValue(){return{...this._style}}}class nn extends Nr{static create(t={}){return new nn(t)}constructor(t={}){super(t)}setFontFamily(t){return this._style.ff=t,this}setFontSize(t){return this._style.fs=t,this}setItalic(t){return this._style.it=t?1:0,this}setBold(t){return this._style.bl=t?1:0,this}setUnderline(t){return this._style.ul=t.build(),this}setBottomBorderLine(t){return this._style.bbl=t.build(),this}setStrikethrough(t){return this._style.st=t.build(),this}setOverline(t){return this._style.ol=t.build(),this}setBackground(t){return this._style.bg=t,this}setBorder(t){return this._style.bd=t,this}setColor(t){return this._style.cl=t,this}setVerticalAlign(t){return this._style.va=t,this}copy(){return nn.create(K.deepClone(this._style))}build(){return this.getValue()}}class rn{constructor(t={s:1}){C(this,"_decoration");this._decoration=t}static create(t={s:1}){return new rn(t)}get show(){return this._decoration.s===ae.TRUE}get followFontColor(){return this._decoration.c===ae.TRUE}get color(){return this._decoration.cl}get type(){return this._decoration.t}setShow(t){return this._decoration.s=t?1:0,this}setFollowFontColor(t){return this._decoration.c=t?1:0,this}setColor(t){return this._decoration.cl=t,this}setLineType(t){return this._decoration.t=t,this}copy(){return rn.create(K.deepClone(this._decoration))}build(){return{...this._decoration}}}class Mr{constructor(t={}){C(this,"_style");this._style=t}static create(t={}){return new Mr(t)}get indentFirstLine(){return this._style.indentFirstLine}get hanging(){return this._style.hanging}get indentStart(){return this._style.indentStart}get tabStops(){return this._style.tabStops}get indentEnd(){return this._style.indentEnd}get textStyle(){return this._style.textStyle}get headingId(){return this._style.headingId}get namedStyleType(){return this._style.namedStyleType}get horizontalAlign(){return this._style.horizontalAlign}get lineSpacing(){return this._style.lineSpacing}get direction(){return this._style.direction}get spacingRule(){return this._style.spacingRule}get snapToGrid(){return this._style.snapToGrid}get spaceAbove(){return this._style.spaceAbove}get spaceBelow(){return this._style.spaceBelow}get borderBetween(){return this._style.borderBetween}get borderTop(){return this._style.borderTop}get borderBottom(){return this._style.borderBottom}get borderLeft(){return this._style.borderLeft}get borderRight(){return this._style.borderRight}get keepLines(){return this._style.keepLines===ae.TRUE}get keepNext(){return this._style.keepNext===ae.TRUE}get wordWrap(){return this._style.wordWrap===ae.TRUE}get widowControl(){return this._style.widowControl===ae.TRUE}get shading(){return this._style.shading}get suppressHyphenation(){return this._style.suppressHyphenation===ae.TRUE}copy(){return Lr.create(K.deepClone(this._style))}getValue(){return this._style}}class Lr extends Mr{static create(t={}){return new Lr(t)}constructor(t={}){super(t)}setIndentFirstLine(t){return this._style.indentFirstLine=t,this}setHanging(t){return this._style.hanging=t,this}setIndentStart(t){return this._style.indentStart=t,this}setTabStops(t){return this._style.tabStops=t,this}setIndentEnd(t){return this._style.indentEnd=t,this}setTextStyle(t){return this._style.textStyle=t,this}setHeadingId(t){return this._style.headingId=t,this}setNamedStyleType(t){return this._style.namedStyleType=t,this}setHorizontalAlign(t){return this._style.horizontalAlign=t,this}setLineSpacing(t){return this._style.lineSpacing=t,this}setDirection(t){return this._style.direction=t,this}setSpacingRule(t){return this._style.spacingRule=t,this}setSnapToGrid(t){return this._style.snapToGrid=t?1:0,this}setSpaceAbove(t){return this._style.spaceAbove=t,this}setSpaceBelow(t){return this._style.spaceBelow=t,this}setBorderBetween(t){return this._style.borderBetween=t,this}setBorderTop(t){return this._style.borderTop=t,this}setBorderBottom(t){return this._style.borderBottom=t,this}setBorderLeft(t){return this._style.borderLeft=t,this}setBorderRight(t){return this._style.borderRight=t,this}setKeepLines(t){return this._style.keepLines=t?1:0,this}setKeepNext(t){return this._style.keepNext=t?1:0,this}setWordWrap(t){return this._style.wordWrap=t?1:0,this}setWidowControl(t){return this._style.widowControl=t?1:0,this}setShading(t){return this._style.shading=t,this}setSuppressHyphenation(t){return this._style.suppressHyphenation=t?1:0,this}copy(){return Lr.create(K.deepClone(this._style))}build(){return this.getValue()}}class sn{constructor(t){C(this,"_data");if(!t.body)throw new Error("Invalid document data, body is required");this._data=Uu(t)}static create(t){return new sn(t)}static createByBody(t){return new sn({body:t,id:"d",documentStyle:{}})}copy(){return Cn.create(K.deepClone(this._data))}slice(t,n){const{body:r,...s}=this._data;return Cn.create({...K.deepClone(s),body:wt(r,t,n)})}toPlainText(){var t,n;return Je.transform.getPlainText((n=(t=this._data.body)==null?void 0:t.dataStream)!=null?n:"").replaceAll("\r",`
7
7
  `)}getParagraphStyle(){var t,n;return Mr.create((n=(t=this._data.body)==null?void 0:t.paragraphs)==null?void 0:n[0].paragraphStyle)}getParagraphBullet(){var t,n;return(n=(t=this._data.body)==null?void 0:t.paragraphs)==null?void 0:n[0].bullet}getParagraphs(){var r,s;const t=(s=(r=this._data.body)==null?void 0:r.paragraphs)!=null?s:[];let n=0;return t.map(i=>{const o=this.slice(n,i.startIndex);return n=i.startIndex,o})}getTextRuns(){var t,n;return((n=(t=this._data.body)==null?void 0:t.textRuns)!=null?n:[]).map(r=>({...r,ts:r.ts?Nr.create(r.ts):null}))}getLinks(){var t,n,r;return(r=(n=(t=this._data.body)==null?void 0:t.customRanges)==null?void 0:n.filter(s=>s.rangeType===en.HYPERLINK))!=null?r:[]}getData(){return this._data}}class Cn extends sn{constructor(n){super(n);C(this,"_doc");this._doc=new bt(n)}static newEmptyData(){return Uu({id:"d",documentStyle:{},drawings:{},drawingsOrder:[],body:{dataStream:`\r
8
- `,customBlocks:[],customRanges:[],paragraphs:[{startIndex:0}],textRuns:[],tables:[],sectionBreaks:[]}})}static create(n){return new Cn(n!=null?n:Cn.newEmptyData())}insertText(n,r,s){var u,h;let i=((h=(u=this._data.body)==null?void 0:u.dataStream.length)!=null?h:2)-2,o,a;if(typeof n=="string"?o=n:(i=Math.min(n,i),o=r),typeof r=="object"?a=r instanceof nn?r.build():r:a=s instanceof nn?s.build():s,!o)return this;const l={dataStream:o,textRuns:a?[{ts:a,st:i,ed:i+o.length}]:[]},c=Je.selection.replace({doc:this._doc,selection:{startOffset:i,endOffset:i,collapsed:!0},body:l});if(!c)throw new Error("Insert text failed, please check.");return Me.apply(this._doc.getBody(),c.serialize()),this}insertRichText(n,r){var a,l;let s=((l=(a=this._data.body)==null?void 0:a.dataStream.length)!=null?l:2)-2,i;typeof n=="object"?i=n instanceof sn?n.getData():n:(s=Math.min(n,s),i=r instanceof sn?r.getData():r);const o=Je.selection.replace({doc:this._doc,selection:{startOffset:s,endOffset:s,collapsed:!0},body:i.body});if(!o)throw new Error("Insert text failed, please check.");return Me.apply(this._doc.getBody(),o.serialize()),this}delete(n,r){if(r!==void 0){if(!r)return this;const s=Je.selection.delete([{startOffset:n,endOffset:n+r,collapsed:!0}],this._data.body);Me.apply(this._doc.getBody(),s)}return this}setStyle(n,r,s){const i={dataStream:"",textRuns:[{ts:s instanceof nn?s.build():s,st:0,ed:r-n}]},o=Je.selection.retain([{startOffset:n,endOffset:r,collapsed:!0}],i);return Me.apply(this._doc.getBody(),o),this}setLink(n,r,s){const i=Je.customRange.add({rangeType:en.HYPERLINK,rangeId:$t(),properties:{url:s},ranges:[{startOffset:n,endOffset:r,collapsed:!1}],body:this._data.body});if(!i)throw new Error("Insert text failed, please check.");return Me.apply(this._doc.getBody(),i.serialize()),this}cancelLink(n,r){if(typeof n=="string"){const s=Je.customRange.delete({rangeId:n,documentDataModel:this._doc});if(!s)throw new Error("Insert text failed, please check.");Me.apply(this._doc.getBody(),s.serialize())}else this.slice(n,r).getLinks().forEach(i=>{const o=Je.customRange.delete({rangeId:i.rangeId,documentDataModel:this._doc});if(!o)throw new Error("Insert text failed, please check.");Me.apply(this._doc.getBody(),o.serialize())});return this}updateLink(n,r){var i,o;const s=(o=(i=this._data.body)==null?void 0:i.customRanges)==null?void 0:o.find(a=>a.rangeId===n);if(!s)throw new Error("Link not found");return s.properties.url=r,this}insertParagraph(n,r){var o,a;let s,i;return typeof n=="object"?(s={dataStream:"\r",paragraphs:[{startIndex:0,paragraphStyle:n.build()}]},i=((a=(o=this._data.body)==null?void 0:o.dataStream.length)!=null?a:2)-2):(i=n,s={dataStream:"\r",paragraphs:[{startIndex:0,paragraphStyle:r==null?void 0:r.build()}]}),this.insertRichText(i,sn.create({body:s,id:"d",documentStyle:{}})),this}insertLink(n,r,s){let i="",o="";typeof n=="string"?(i=n,o=r):(i=r,o=s);const a=Cn.createByBody({dataStream:i,customRanges:[{rangeType:en.HYPERLINK,rangeId:$t(),properties:{url:o},startIndex:0,endIndex:i.length-1}]});return typeof n=="number"?this.insertRichText(n,a):this.insertRichText(a)}}const Kp="__default_document_sub_component_id20231101__";class Pu{constructor(){C(this,"skipNextObservers",!1);C(this,"lastReturnValue");C(this,"isStopPropagation",!1)}stopPropagation(){this.isStopPropagation=!0}}class Xp extends oe.Subject{constructor(){super(...arguments);C(this,"_sortedObservers",[])}subscribe(){throw new Error("[EventSubject]: please use `subscribeEvent` instead of `subscribe` method for `EventSubject`.")}next(){throw new Error("[EventSubject]: please use `emitEvent` instead of `next` method for `EventSubject`.")}unsubscribe(){super.unsubscribe(),this._sortedObservers.length=0}complete(){super.complete(),this._sortedObservers.length=0}subscribeEvent(n){let r;typeof n=="function"?r={next:([i,o])=>n(i,o)}:r=n;const s=super.subscribe(r);return this._sortedObservers.push(r),this._sortedObservers.sort((i,o)=>{var a,l;return((a=i.priority)!=null?a:0)-((l=o.priority)!=null?l:0)}),s.add(()=>this._sortedObservers=this._sortedObservers.filter(i=>i!==r)),s}clearObservers(){this._sortedObservers.forEach(n=>{var r;return(r=n.complete)==null?void 0:r.call(n)}),this._sortedObservers.length=0}emitEvent(n){var r;if(!this.closed){const s=new Pu;s.lastReturnValue=n;for(const i of this._sortedObservers){const o=(r=i.next)==null?void 0:r.call(i,[n,s]);if(s.lastReturnValue=o,s.skipNextObservers)return{handled:!0,lastReturnValue:s.lastReturnValue,stopPropagation:s.isStopPropagation}}return{handled:this._sortedObservers.length>0,lastReturnValue:s.lastReturnValue,stopPropagation:s.isStopPropagation}}throw new Error("[EventSubject]: cannot emit event on a closed subject.")}}function qp(e){return new oe.Observable(t=>{const n=e.subscribeEvent(r=>{t.next(r)});return()=>n.unsubscribe()})}const Ws=Re.createIdentifier("core.resource-manager.service"),Po={[Pt.Editor]:"Editor",[Pt.Owner]:"Owner",[Pt.Reader]:"Reader",[Pt.UNRECOGNIZED]:"UNRECOGNIZED"},js=e=>e?{userID:`${Po[e]}_${K.generateRandomId(8)}`,name:Po[e],avatar:""}:{userID:"",name:"",avatar:"",anonymous:!0,canBindAnonymous:!1},Zp=(e,t)=>e.startsWith(Po[t]);class Dr extends ze{constructor(){super(...arguments);C(this,"_model",new Map);C(this,"_userChange$",new oe.Subject);C(this,"userChange$",this._userChange$.asObservable());C(this,"_currentUser$",new oe.BehaviorSubject(js()));C(this,"currentUser$",this._currentUser$.asObservable())}dispose(){super.dispose(),this._model.clear(),this._userChange$.complete(),this._currentUser$.complete()}getCurrentUser(){return this._currentUser$.getValue()}setCurrentUser(n){this.addUser(n),this._currentUser$.next(n)}addUser(n){this._model.set(n.userID,n),this._userChange$.next({type:"add",user:n})}getUser(n,r){const s=this._model.get(n);if(s)return s;r&&r()}delete(n){const r=this.getUser(n);this._model.delete(n),r&&this._userChange$.next({type:"delete",user:r})}clear(){this._model.clear(),this._userChange$.next({type:"clear"})}list(){return Array.from(this._model.values())}}var Jp=Object.getOwnPropertyDescriptor,Qp=(e,t,n,r)=>{for(var s=r>1?void 0:r?Jp(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},ku=(e,t)=>(n,r)=>t(n,r,e);f.AuthzIoLocalService=class{constructor(t,n){C(this,"_permissionMap",new Map([]));this._resourceManagerService=t,this._userManagerService=n,this._initSnapshot(),this._initDefaultUser()}_initDefaultUser(){const t=this._userManagerService.getCurrentUser();t&&t.userID||this._userManagerService.setCurrentUser(js(Pt.Owner))}_getRole(t){const n=this._userManagerService.getCurrentUser();return n?Zp(n.userID,t):!1}_initSnapshot(){this._resourceManagerService.registerPluginResource({toJson:t=>{const n=[...this._permissionMap.keys()].reduce((r,s)=>{const i=this._permissionMap.get(s);return r[s]=i,r},{});return JSON.stringify(n)},parseJson:t=>JSON.parse(t),pluginName:"SHEET_AuthzIoMockService_PLUGIN",businesses:[we.UNIVER_SHEET,we.UNIVER_DOC,we.UNIVER_SLIDE],onLoad:(t,n)=>{for(const r in n)this._permissionMap.set(r,n[r])},onUnLoad:()=>{this._permissionMap.clear()}})}async create(t){return $t(8)}async allowed(t){return Promise.resolve([])}async batchAllowed(t){return Promise.resolve([])}async list(t){const n=[];return t.objectIDs.forEach(r=>{const s=this._permissionMap.get(r);if(s){const i={objectID:r,unitID:t.unitID,objectType:s.objectType,name:s.name,shareOn:!1,shareRole:Pt.Owner,shareScope:-1,scope:{read:Eo.AllCollaborator,edit:Eo.AllCollaborator},creator:js(Pt.Owner),strategies:[{action:6,role:1},{action:16,role:1},{action:17,role:1},{action:18,role:1},{action:19,role:1},{action:33,role:1},{action:34,role:1},{action:35,role:1},{action:36,role:1},{action:37,role:1},{action:38,role:1},{action:39,role:1},{action:40,role:1}],actions:t.actions.map(o=>({action:o,allowed:this._getRole(Pt.Owner)||this._getRole(Pt.Editor)}))};n.push(i)}}),n}async listCollaborators(){return[]}async listRoles(){return{roles:[],actions:[]}}async deleteCollaborator(){}async update(t){}async updateCollaborator(){}async createCollaborator(){}async putCollaborators(t){}},f.AuthzIoLocalService=Qp([ku(0,Ws),ku(1,Re.Inject(Dr))],f.AuthzIoLocalService);const Fu=Re.createIdentifier("IAuthzIoIoService");var xu=typeof global=="object"&&global&&global.Object===Object&&global,eE=typeof self=="object"&&self&&self.Object===Object&&self,Rn=xu||eE||Function("return this")(),Yn=Rn.Symbol,Bu=Object.prototype,tE=Bu.hasOwnProperty,nE=Bu.toString,Ur=Yn?Yn.toStringTag:void 0;function rE(e){var t=tE.call(e,Ur),n=e[Ur];try{e[Ur]=void 0;var r=!0}catch{}var s=nE.call(e);return r&&(t?e[Ur]=n:delete e[Ur]),s}var sE=Object.prototype,iE=sE.toString;function oE(e){return iE.call(e)}var aE="[object Null]",lE="[object Undefined]",$u=Yn?Yn.toStringTag:void 0;function Pr(e){return e==null?e===void 0?lE:aE:$u&&$u in Object(e)?rE(e):oE(e)}function Gn(e){return e!=null&&typeof e=="object"}var cE="[object Symbol]";function Ys(e){return typeof e=="symbol"||Gn(e)&&Pr(e)==cE}function uE(e,t){for(var n=-1,r=e==null?0:e.length,s=Array(r);++n<r;)s[n]=t(e[n],n,e);return s}var Vn=Array.isArray,Hu=Yn?Yn.prototype:void 0,Wu=Hu?Hu.toString:void 0;function ju(e){if(typeof e=="string")return e;if(Vn(e))return uE(e,ju)+"";if(Ys(e))return Wu?Wu.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var hE=/\s/;function dE(e){for(var t=e.length;t--&&hE.test(e.charAt(t)););return t}var fE=/^\s+/;function mE(e){return e&&e.slice(0,dE(e)+1).replace(fE,"")}function Et(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Yu=NaN,gE=/^[-+]0x[0-9a-f]+$/i,_E=/^0b[01]+$/i,pE=/^0o[0-7]+$/i,EE=parseInt;function Gu(e){if(typeof e=="number")return e;if(Ys(e))return Yu;if(Et(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Et(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=mE(e);var n=_E.test(e);return n||pE.test(e)?EE(e.slice(2),n?2:8):gE.test(e)?Yu:+e}function Vu(e){return e}var CE="[object AsyncFunction]",RE="[object Function]",IE="[object GeneratorFunction]",SE="[object Proxy]";function ko(e){if(!Et(e))return!1;var t=Pr(e);return t==RE||t==IE||t==CE||t==SE}var Fo=Rn["__core-js_shared__"],zu=function(){var e=/[^.]+$/.exec(Fo&&Fo.keys&&Fo.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function OE(e){return!!zu&&zu in e}var vE=Function.prototype,wE=vE.toString;function bE(e){if(e!=null){try{return wE.call(e)}catch{}try{return e+""}catch{}}return""}var AE=/[\\^$.*+?()[\]{}|]/g,TE=/^\[object .+?Constructor\]$/,yE=Function.prototype,NE=Object.prototype,ME=yE.toString,LE=NE.hasOwnProperty,DE=RegExp("^"+ME.call(LE).replace(AE,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function UE(e){if(!Et(e)||OE(e))return!1;var t=ko(e)?DE:TE;return t.test(bE(e))}function PE(e,t){return e==null?void 0:e[t]}function xo(e,t){var n=PE(e,t);return UE(n)?n:void 0}var Ku=Object.create,kE=function(){function e(){}return function(t){if(!Et(t))return{};if(Ku)return Ku(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();function FE(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function xE(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}var BE=800,$E=16,HE=Date.now;function WE(e){var t=0,n=0;return function(){var r=HE(),s=$E-(r-n);if(n=r,s>0){if(++t>=BE)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function jE(e){return function(){return e}}var Gs=function(){try{var e=xo(Object,"defineProperty");return e({},"",{}),e}catch{}}(),YE=Gs?function(e,t){return Gs(e,"toString",{configurable:!0,enumerable:!1,value:jE(t),writable:!0})}:Vu,GE=WE(YE),VE=9007199254740991,zE=/^(?:0|[1-9]\d*)$/;function Bo(e,t){var n=typeof e;return t=t==null?VE:t,!!t&&(n=="number"||n!="symbol"&&zE.test(e))&&e>-1&&e%1==0&&e<t}function $o(e,t,n){t=="__proto__"&&Gs?Gs(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function Vs(e,t){return e===t||e!==e&&t!==t}var KE=Object.prototype,XE=KE.hasOwnProperty;function Xu(e,t,n){var r=e[t];(!(XE.call(e,t)&&Vs(r,n))||n===void 0&&!(t in e))&&$o(e,t,n)}function qE(e,t,n,r){var s=!n;n||(n={});for(var i=-1,o=t.length;++i<o;){var a=t[i],l=void 0;l===void 0&&(l=e[a]),s?$o(n,a,l):Xu(n,a,l)}return n}var qu=Math.max;function ZE(e,t,n){return t=qu(t===void 0?e.length-1:t,0),function(){for(var r=arguments,s=-1,i=qu(r.length-t,0),o=Array(i);++s<i;)o[s]=r[t+s];s=-1;for(var a=Array(t+1);++s<t;)a[s]=r[s];return a[t]=n(o),FE(e,this,a)}}function JE(e,t){return GE(ZE(e,t,Vu),e+"")}var QE=9007199254740991;function Zu(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=QE}function Ho(e){return e!=null&&Zu(e.length)&&!ko(e)}function e0(e,t,n){if(!Et(n))return!1;var r=typeof t;return(r=="number"?Ho(n)&&Bo(t,n.length):r=="string"&&t in n)?Vs(n[t],e):!1}function Ju(e){return JE(function(t,n){var r=-1,s=n.length,i=s>1?n[s-1]:void 0,o=s>2?n[2]:void 0;for(i=e.length>3&&typeof i=="function"?(s--,i):void 0,o&&e0(n[0],n[1],o)&&(i=s<3?void 0:i,s=1),t=Object(t);++r<s;){var a=n[r];a&&e(t,a,r,i)}return t})}var t0=Object.prototype;function Qu(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||t0;return e===n}function n0(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var r0="[object Arguments]";function eh(e){return Gn(e)&&Pr(e)==r0}var th=Object.prototype,s0=th.hasOwnProperty,i0=th.propertyIsEnumerable,Wo=eh(function(){return arguments}())?eh:function(e){return Gn(e)&&s0.call(e,"callee")&&!i0.call(e,"callee")};function o0(){return!1}var nh=typeof f=="object"&&f&&!f.nodeType&&f,rh=nh&&typeof module=="object"&&module&&!module.nodeType&&module,a0=rh&&rh.exports===nh,sh=a0?Rn.Buffer:void 0,l0=sh?sh.isBuffer:void 0,ih=l0||o0,c0="[object Arguments]",u0="[object Array]",h0="[object Boolean]",d0="[object Date]",f0="[object Error]",m0="[object Function]",g0="[object Map]",_0="[object Number]",p0="[object Object]",E0="[object RegExp]",C0="[object Set]",R0="[object String]",I0="[object WeakMap]",S0="[object ArrayBuffer]",O0="[object DataView]",v0="[object Float32Array]",w0="[object Float64Array]",b0="[object Int8Array]",A0="[object Int16Array]",T0="[object Int32Array]",y0="[object Uint8Array]",N0="[object Uint8ClampedArray]",M0="[object Uint16Array]",L0="[object Uint32Array]",xe={};xe[v0]=xe[w0]=xe[b0]=xe[A0]=xe[T0]=xe[y0]=xe[N0]=xe[M0]=xe[L0]=!0,xe[c0]=xe[u0]=xe[S0]=xe[h0]=xe[O0]=xe[d0]=xe[f0]=xe[m0]=xe[g0]=xe[_0]=xe[p0]=xe[E0]=xe[C0]=xe[R0]=xe[I0]=!1;function D0(e){return Gn(e)&&Zu(e.length)&&!!xe[Pr(e)]}function U0(e){return function(t){return e(t)}}var oh=typeof f=="object"&&f&&!f.nodeType&&f,kr=oh&&typeof module=="object"&&module&&!module.nodeType&&module,P0=kr&&kr.exports===oh,jo=P0&&xu.process,ah=function(){try{var e=kr&&kr.require&&kr.require("util").types;return e||jo&&jo.binding&&jo.binding("util")}catch{}}(),lh=ah&&ah.isTypedArray,ch=lh?U0(lh):D0;function k0(e,t){var n=Vn(e),r=!n&&Wo(e),s=!n&&!r&&ih(e),i=!n&&!r&&!s&&ch(e),o=n||r||s||i,a=o?n0(e.length,String):[],l=a.length;for(var c in e)o&&(c=="length"||s&&(c=="offset"||c=="parent")||i&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||Bo(c,l))||a.push(c);return a}function F0(e,t){return function(n){return e(t(n))}}function x0(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var B0=Object.prototype,$0=B0.hasOwnProperty;function H0(e){if(!Et(e))return x0(e);var t=Qu(e),n=[];for(var r in e)r=="constructor"&&(t||!$0.call(e,r))||n.push(r);return n}function uh(e){return Ho(e)?k0(e):H0(e)}var W0=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,j0=/^\w*$/;function Y0(e,t){if(Vn(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||Ys(e)?!0:j0.test(e)||!W0.test(e)||t!=null&&e in Object(t)}var Fr=xo(Object,"create");function G0(){this.__data__=Fr?Fr(null):{},this.size=0}function V0(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var z0="__lodash_hash_undefined__",K0=Object.prototype,X0=K0.hasOwnProperty;function q0(e){var t=this.__data__;if(Fr){var n=t[e];return n===z0?void 0:n}return X0.call(t,e)?t[e]:void 0}var Z0=Object.prototype,J0=Z0.hasOwnProperty;function Q0(e){var t=this.__data__;return Fr?t[e]!==void 0:J0.call(t,e)}var eC="__lodash_hash_undefined__";function tC(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Fr&&t===void 0?eC:t,this}function In(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}In.prototype.clear=G0,In.prototype.delete=V0,In.prototype.get=q0,In.prototype.has=Q0,In.prototype.set=tC;function nC(){this.__data__=[],this.size=0}function zs(e,t){for(var n=e.length;n--;)if(Vs(e[n][0],t))return n;return-1}var rC=Array.prototype,sC=rC.splice;function iC(e){var t=this.__data__,n=zs(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():sC.call(t,n,1),--this.size,!0}function oC(e){var t=this.__data__,n=zs(t,e);return n<0?void 0:t[n][1]}function aC(e){return zs(this.__data__,e)>-1}function lC(e,t){var n=this.__data__,r=zs(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function jt(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}jt.prototype.clear=nC,jt.prototype.delete=iC,jt.prototype.get=oC,jt.prototype.has=aC,jt.prototype.set=lC;var hh=xo(Rn,"Map");function cC(){this.size=0,this.__data__={hash:new In,map:new(hh||jt),string:new In}}function uC(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function Ks(e,t){var n=e.__data__;return uC(t)?n[typeof t=="string"?"string":"hash"]:n.map}function hC(e){var t=Ks(this,e).delete(e);return this.size-=t?1:0,t}function dC(e){return Ks(this,e).get(e)}function fC(e){return Ks(this,e).has(e)}function mC(e,t){var n=Ks(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}function on(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}on.prototype.clear=cC,on.prototype.delete=hC,on.prototype.get=dC,on.prototype.has=fC,on.prototype.set=mC;var gC="Expected a function";function Yo(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(gC);var n=function(){var r=arguments,s=t?t.apply(this,r):r[0],i=n.cache;if(i.has(s))return i.get(s);var o=e.apply(this,r);return n.cache=i.set(s,o)||i,o};return n.cache=new(Yo.Cache||on),n}Yo.Cache=on;var _C=500;function pC(e){var t=Yo(e,function(r){return n.size===_C&&n.clear(),r}),n=t.cache;return t}var EC=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,CC=/\\(\\)?/g,RC=pC(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(EC,function(n,r,s,i){t.push(s?i.replace(CC,"$1"):r||n)}),t});function IC(e){return e==null?"":ju(e)}function dh(e,t){return Vn(e)?e:Y0(e,t)?[e]:RC(IC(e))}function fh(e){if(typeof e=="string"||Ys(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function SC(e,t){t=dh(t,e);for(var n=0,r=t.length;e!=null&&n<r;)e=e[fh(t[n++])];return n&&n==r?e:void 0}function mh(e,t,n){var r=e==null?void 0:SC(e,t);return r===void 0?n:r}var gh=F0(Object.getPrototypeOf,Object),OC="[object Object]",vC=Function.prototype,wC=Object.prototype,_h=vC.toString,bC=wC.hasOwnProperty,AC=_h.call(Object);function TC(e){if(!Gn(e)||Pr(e)!=OC)return!1;var t=gh(e);if(t===null)return!0;var n=bC.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&_h.call(n)==AC}function yC(){this.__data__=new jt,this.size=0}function NC(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function MC(e){return this.__data__.get(e)}function LC(e){return this.__data__.has(e)}var DC=200;function UC(e,t){var n=this.__data__;if(n instanceof jt){var r=n.__data__;if(!hh||r.length<DC-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new on(r)}return n.set(e,t),this.size=n.size,this}function zn(e){var t=this.__data__=new jt(e);this.size=t.size}zn.prototype.clear=yC,zn.prototype.delete=NC,zn.prototype.get=MC,zn.prototype.has=LC,zn.prototype.set=UC;var ph=typeof f=="object"&&f&&!f.nodeType&&f,Eh=ph&&typeof module=="object"&&module&&!module.nodeType&&module,PC=Eh&&Eh.exports===ph,Ch=PC?Rn.Buffer:void 0;Ch&&Ch.allocUnsafe;function kC(e,t){return e.slice()}var Rh=Rn.Uint8Array;function FC(e){var t=new e.constructor(e.byteLength);return new Rh(t).set(new Rh(e)),t}function xC(e,t){var n=FC(e.buffer);return new e.constructor(n,e.byteOffset,e.length)}function BC(e){return typeof e.constructor=="function"&&!Qu(e)?kE(gh(e)):{}}function $C(e){return function(t,n,r){for(var s=-1,i=Object(t),o=r(t),a=o.length;a--;){var l=o[++s];if(n(i[l],l,i)===!1)break}return t}}var HC=$C(),Go=function(){return Rn.Date.now()},WC="Expected a function",jC=Math.max,YC=Math.min;function GC(e,t,n){var r,s,i,o,a,l,c=0,u=!1,h=!1,d=!0;if(typeof e!="function")throw new TypeError(WC);t=Gu(t)||0,Et(n)&&(u=!!n.leading,h="maxWait"in n,i=h?jC(Gu(n.maxWait)||0,t):i,d="trailing"in n?!!n.trailing:d);function m(R){var b=r,y=s;return r=s=void 0,c=R,o=e.apply(y,b),o}function _(R){return c=R,a=setTimeout(A,t),u?m(R):o}function p(R){var b=R-l,y=R-c,$=t-b;return h?YC($,i-y):$}function I(R){var b=R-l,y=R-c;return l===void 0||b>=t||b<0||h&&y>=i}function A(){var R=Go();if(I(R))return B(R);a=setTimeout(A,p(R))}function B(R){return a=void 0,d&&r?m(R):(r=s=void 0,o)}function x(){a!==void 0&&clearTimeout(a),c=0,r=l=s=a=void 0}function Y(){return a===void 0?o:B(Go())}function O(){var R=Go(),b=I(R);if(r=arguments,s=this,l=R,b){if(a===void 0)return _(l);if(h)return clearTimeout(a),a=setTimeout(A,t),m(l)}return a===void 0&&(a=setTimeout(A,t)),o}return O.cancel=x,O.flush=Y,O}function Vo(e,t,n){(n!==void 0&&!Vs(e[t],n)||n===void 0&&!(t in e))&&$o(e,t,n)}function VC(e){return Gn(e)&&Ho(e)}function zo(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}function zC(e){return qE(e,uh(e))}function KC(e,t,n,r,s,i,o){var a=zo(e,n),l=zo(t,n),c=o.get(l);if(c){Vo(e,n,c);return}var u=i?i(a,l,n+"",e,t,o):void 0,h=u===void 0;if(h){var d=Vn(l),m=!d&&ih(l),_=!d&&!m&&ch(l);u=l,d||m||_?Vn(a)?u=a:VC(a)?u=xE(a):m?(h=!1,u=kC(l)):_?(h=!1,u=xC(l)):u=[]:TC(l)||Wo(l)?(u=a,Wo(a)?u=zC(a):(!Et(a)||ko(a))&&(u=BC(l))):h=!1}h&&(o.set(l,u),s(u,l,r,i,o),o.delete(l)),Vo(e,n,u)}function Ko(e,t,n,r,s){e!==t&&HC(t,function(i,o){if(s||(s=new zn),Et(i))KC(e,t,o,n,Ko,r,s);else{var a=r?r(zo(e,o),i,o+"",e,t,s):void 0;a===void 0&&(a=i),Vo(e,o,a)}},uh)}var XC=Ju(function(e,t,n,r){Ko(e,t,n,r)}),Xo=Ju(function(e,t,n){Ko(e,t,n)});function qC(e,t,n,r){if(!Et(e))return e;t=dh(t,e);for(var s=-1,i=t.length,o=i-1,a=e;a!=null&&++s<i;){var l=fh(t[s]),c=n;if(l==="__proto__"||l==="constructor"||l==="prototype")return e;if(s!=o){var u=a[l];c=void 0,c===void 0&&(c=Et(u)?u:Bo(t[s+1])?[]:{})}Xu(a,l,c),a=a[l]}return e}function ZC(e,t,n){return e==null?e:qC(e,t,n)}const qo=Re.createIdentifier("univer.config-service");class Ih{constructor(){C(this,"_configChanged$",new oe.Subject);C(this,"configChanged$",this._configChanged$.asObservable());C(this,"_config",new Map)}dispose(){this._config.clear(),this._configChanged$.complete()}getConfig(t){return this._config.get(t)}setConfig(t,n,r){var o;const{merge:s=!1}=r||{};let i=(o=this._config.get(t))!=null?o:{};s?i=Xo(i,n):i=n,this._config.set(t,i),this._configChanged$.next({[t]:i})}deleteConfig(t){return this._config.delete(t)}subscribeConfigValue$(t){return new oe.Observable(n=>{Object.prototype.hasOwnProperty.call(this._config,t)&&n.next(this._config.get(t));const r=this.configChanged$.pipe(oe.filter(s=>Object.prototype.hasOwnProperty.call(s,t))).subscribe(s=>n.next(s[t]));return()=>r.unsubscribe()})}}const xr="FOCUSING_UNIT",Kn="FOCUSING_SHEET",Br="FOCUSING_DOC",$r="FOCUSING_SLIDE",JC="FOCUSING_EDITOR_BUT_HIDDEN",Sh="EDITOR_ACTIVATED",QC="FOCUSING_EDITOR_INPUT_FORMULA",Oh="FOCUSING_FX_BAR_EDITOR",eR="FOCUSING_UNIVER_EDITOR",tR="FOCUSING_EDITOR_INPUT_FORMULA",nR="FOCUSING_PANEL_EDITOR",rR="FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE",sR="FOCUSING_COMMON_DRAWINGS",iR="FORMULA_EDITOR_ACTIVATED";class vh extends ze{constructor(){super(...arguments);C(this,"_error$",new oe.Subject);C(this,"error$",this._error$.asObservable())}dispose(){this._error$.complete()}emit(n){this._error$.next({errorKey:n})}}var Zo=(e=>(e.URL="URL",e.UUID="UUID",e.BASE64="BASE64",e))(Zo||{}),wh=(e=>(e.SUCCUSS="0",e.ERROR_EXCEED_SIZE="1",e.ERROR_IMAGE_TYPE="2",e.ERROR_UPLOAD_COUNT_LIMIT="3",e.ERROR_IMAGE="4",e))(wh||{});const Jo=Re.createIdentifier("core.image-io.service"),oR={version:"0.9.0"};function aR(e="",t=ar.ZH_CN,n=""){return{id:e,sheetOrder:[],name:n,appVersion:oR.version,locale:t,styles:{},sheets:{},resources:[]}}class bh{constructor(t={}){C(this,"_styles");C(this,"_cacheMap",new cr(1e5));this._styles=t,this._generateCacheMap()}each(t){return Object.entries(this._styles).forEach(t),this}search(t,n){if(this._cacheMap.has(n))return this._cacheMap.get(n);const r=this._getExistingStyleId(t);return r||"-1"}get(t){return typeof t!="string"?t:(t=String(t),this._styles[t])}add(t,n){const r=K.generateRandomId(6);return this._styles[r]=t,this._cacheMap.set(n,r),r}setValue(t){if(t==null)return;const n=JSON.stringify(t),r=this.search(t,n);return r!=="-1"?r:this.add(t,n)}toJSON(){return this._styles}getStyleByCell(t){let n;t&&K.isObject(t.s)?n=t.s:n=(t==null?void 0:t.s)&&this.get(t.s);const r=t==null?void 0:t.interceptorStyle;return r?{...n,...r}:n}_generateCacheMap(){const{_styles:t,_cacheMap:n}=this;for(const r in t){const s=JSON.stringify(t[r]);n.set(s,r)}}_getExistingStyleId(t){const{_styles:n}=this;for(const r in n)if(K.diffValue(n[r],t))return r;return null}}const lR=(e,t)=>t.length===e.length&&!e.some(n=>t.some(r=>!tn.equals(r,n))),cR=(e,t)=>t.length===e.length&&e.every((n,r)=>{const s=t[r];return s.unitId===n.unitId&&s.sheetId===n.sheetId&&tn.equals(n.range,s.range)}),Qo={t:0,b:2,l:2,r:2},uR=e=>({sbr:.6,sbo:e,spr:.6,spo:e}),Ah=90;function Hr(e,t,n={}){const r=e.length,{textRotation:s,paddingData:i,horizontalAlign:o=St.UNSPECIFIED,verticalAlign:a=hn.UNSPECIFIED,wrapStrategy:l=dn.UNSPECIFIED,cellValueType:c}=n,{t:u,r:h,b:d,l:m}=i||Qo,{vertexAngle:_,centerAngle:p}=Lh(s),I={id:"d",body:{dataStream:`${e}${_a}`,textRuns:[{ts:t,st:0,ed:r}],paragraphs:[{startIndex:r,paragraphStyle:{horizontalAlign:o}}],sectionBreaks:[{startIndex:r+1}]},documentStyle:{pageSize:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginTop:u,marginBottom:d,marginRight:h,marginLeft:m,renderConfig:{horizontalAlign:o,verticalAlign:a,centerAngle:p,vertexAngle:_,wrapStrategy:l,cellValueType:c,zeroWidthParagraphBreak:1}},drawings:{},drawingsOrder:[]};return new bt(I)}function hR(e){if(!e)return{};const{tr:t,td:n,ht:r,vt:s,tb:i,pd:o}=e;return{textRotation:t,textDirection:n,horizontalAlign:r,verticalAlign:s,wrapStrategy:i,paddingData:o}}function Th(e){if(!e)return{};const{ff:t,fs:n,it:r,bl:s,ul:i,st:o,ol:a,cl:l}=e,c={};return t&&(c.ff=t),n&&(c.fs=n),r&&(c.it=r),s&&(c.bl=s),i&&(c.ul=i),o&&(c.st=o),a&&(c.ol=a),l&&(c.cl=l),c}function yh(e,t,n){var i;const r=e.getBody();if((i=r.customRanges)!=null&&i.some(o=>o.rangeType===en.HYPERLINK))return;const s=Je.customRange.add({ranges:[{startOffset:0,endOffset:r.dataStream.length-1,collapsed:!1}],rangeId:n,rangeType:en.HYPERLINK,body:r,properties:{url:t,refId:n}});s&&Me.apply(r,s.serialize())}function Nh(e){return e!=null}const dR='"Helvetica Neue", Helvetica, Arial, "PingFang SC", "Hiragino Sans GB", "Heiti SC", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif';function Mh(e){const t=rt.ff,n=rt.fs;if(!e){const h=`${n}pt ${t}`;return{fontCache:h,fontString:h,fontSize:n,originFontSize:n,fontFamily:t}}let r=kn.ITALIC;(e.it===0||e.it===void 0)&&(r=kn.NORMAL);let s=kn.BOLD;(e.bl===0||e.bl===void 0)&&(s=kn.NORMAL);let i=n;e.fs&&(i=Math.ceil(e.fs));let o=t;if(e.ff){let h=e.ff;h=h.replace(/"/g,"").replace(/'/g,""),h.indexOf(" ")>-1&&(h=`"${h}"`),h==null&&(h=t),o=h}const{va:a}=e;let l=i;if(a===Bt.SUBSCRIPT||a===Bt.SUPERSCRIPT){const h=fR(o,l),{sbr:d,spr:m}=h;l*=a===Bt.SUBSCRIPT?d:m}const c=`${r} ${s} ${l}pt ${o}`,u=`${c}, ${dR} `;return{fontCache:c,fontString:u,fontSize:l,originFontSize:i,fontFamily:o}}function fR(e,t){return uR(t)}function Lh(e){const{a:t=0,v:n=ae.FALSE}=e||{a:0,v:ae.FALSE};let r=0,s=t;return n===ae.TRUE&&(r=Ah,s=Ah),{centerAngle:r,vertexAngle:s}}class mR{constructor(t,n){C(this,"_columnData",{});this._config=t,this._columnData=n}getColumnData(){return this._columnData}getColVisible(t){const{_columnData:n}=this,r=n[t];return r?r.hd!==ae.TRUE:!0}getColumnStyle(t){var n;return(n=this._columnData[t])==null?void 0:n.s}setColumnStyle(t,n){const r=this.getColumnOrCreate(t);r.s=n}getHiddenCols(t=0,n=this.getSize()-1){const r=[];let s=!1,i=-1;for(let o=t;o<=n;o++){const a=this.getColVisible(o);s&&a?(s=!1,r.push({rangeType:pe.COLUMN,startColumn:i,endColumn:o-1,startRow:0,endRow:0})):!s&&!a&&(s=!0,i=o)}return s&&r.push({startRow:0,endRow:0,startColumn:i,endColumn:n,rangeType:pe.COLUMN}),r}getVisibleCols(t=0,n=this.getSize()-1){const r=[];let s=!1,i=-1;for(let o=t;o<=n;o++){const a=this.getColVisible(o);s&&!a?(s=!1,r.push({rangeType:pe.COLUMN,startColumn:i,endColumn:o-1,startRow:0,endRow:0})):!s&&a&&(s=!0,i=o)}return s&&r.push({startRow:0,endRow:0,startColumn:i,endColumn:n,rangeType:pe.COLUMN}),r}getColumnDatas(t,n){const r={};let s=0;for(let i=t;i<t+n;i++){const o=this.getColumn(i);r[s]=o!=null?o:{w:this._config.defaultColumnWidth,hd:ae.FALSE},s++}return r}getSize(){return Zt(this._columnData)}getColumnWidth(t){var n,r;return(r=(n=this._columnData[t])==null?void 0:n.w)!=null?r:this._config.defaultColumnWidth}setColumnWidth(t,n){const r=this._columnData[t];n===this._config.defaultColumnWidth?r&&(delete r.w,Object.keys(r).length===0&&delete this._columnData[t]):this._columnData[t]=r?{...r,w:n}:{w:n}}getColumn(t){return this._columnData[t]}removeColumn(t){delete this._columnData[t]}getColumnOrCreate(t){const{_columnData:n}=this,r=n[t];if(r)return r;const s={};return this._columnData[t]=s,s}setCustomMetadata(t,n){const r=this.getColumn(t);r&&(r.custom=n)}getCustomMetadata(t){var n;return(n=this.getColumn(t))==null?void 0:n.custom}}const gR=2e3;class _R{constructor(t,n,r){C(this,"_rowData");this._config=t,this._viewModel=n,this._rowData=r}getRowData(){return this._rowData}getRowStyle(t){var n;return(n=this._rowData[t])==null?void 0:n.s}setRowStyle(t,n){const r=this.getRowOrCreate(t);r.s=n}getRowDatas(t,n){const r={};let s=0;for(let i=t;i<t+n;i++){const o=this.getRow(i);r[s]=o!=null?o:{h:this._config.defaultRowHeight,hd:ae.FALSE},s++}return r}getRowHeight(t,n=1){const{_rowData:r}=this,s=this._config;let i=0;for(let o=0;o<n;o++){const a=r[o+t]||{hd:ae.FALSE,h:s.defaultRowHeight},{ia:l,ah:c,h:u=s.defaultRowHeight}=a;i+=(l==null||l===ae.TRUE)&&typeof c=="number"?c:u}return i}setRowHeight(t,n){const r=this._rowData[t];if(n===this._config.defaultRowHeight)r&&(delete r.h,Object.keys(r).length===0&&delete this._rowData[t]);else{const s=Math.min(n,gR);this._rowData[t]=r?{...r,h:s}:{h:s}}}getRow(t){return this._rowData[t]}removeRow(t){delete this._rowData[t]}getRowOrCreate(t){const{_rowData:n}=this,r=n[t];if(r)return r;const s={};return n[t]=s,s}getHiddenRows(t=0,n=this.getSize()-1){const r=[];let s=!1,i=-1;for(let o=t;o<=n;o++){const a=this.getRowRawVisible(o);s&&a?(s=!1,r.push({startRow:i,endRow:o-1,startColumn:0,endColumn:0,rangeType:pe.ROW})):!s&&!a&&(s=!0,i=o)}return s&&r.push({startRow:i,endRow:n,startColumn:0,endColumn:0,rangeType:pe.ROW}),r}getVisibleRows(t=0,n=this.getSize()-1){const r=[];let s=!1,i=-1;for(let o=t;o<=n;o++){const a=this.getRowRawVisible(o);s&&!a?(s=!1,r.push({startRow:i,endRow:o-1,startColumn:0,endColumn:0,rangeType:pe.ROW})):!s&&a&&(s=!0,i=o)}return s&&r.push({startRow:i,endRow:n,startColumn:0,endColumn:0,rangeType:pe.ROW}),r}getRowRawVisible(t){const n=this.getRow(t);return n?n.hd!==ae.TRUE:!0}getSize(){return Zt(this._rowData)}setCustomMetadata(t,n){const r=this.getRow(t);r&&(r.custom=n)}getCustomMetadata(t){var n;return(n=this.getRow(t))==null?void 0:n.custom}}const pR="DEFAULT_WORKSHEET_ROW_COUNT",Dh=1e3,ER="DEFAULT_WORKSHEET_COLUMN_COUNT",Uh=20,CR="DEFAULT_WORKSHEET_ROW_HEIGHT",Ph=24,RR="DEFAULT_WORKSHEET_COLUMN_WIDTH",kh=88,IR="DEFAULT_WORKSHEET_ROW_TITLE_WIDTH",Fh=46,SR="DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT",xh=20;function Bh(e){const t={name:"Sheet1",id:"sheet-01",tabColor:"",hidden:ae.FALSE,rowCount:Dh,columnCount:Uh,zoomRatio:1,freeze:{xSplit:0,ySplit:0,startRow:-1,startColumn:-1},scrollTop:0,scrollLeft:0,defaultColumnWidth:kh,defaultRowHeight:Ph,mergeData:[],cellData:{},rowData:{},columnData:{},showGridlines:ae.TRUE,rowHeader:{width:Fh,hidden:ae.FALSE},columnHeader:{height:xh,hidden:ae.FALSE},rightToLeft:ae.FALSE};return Object.keys(t).forEach(n=>{const r=n;typeof e[r]>"u"&&(e[r]=t[r])}),e}class OR extends ze{constructor(n){super();C(this,"_cellCache",new Map);C(this,"_rowCache",new Map);C(this,"_columnCache",new Map);C(this,"_hasRow",!1);C(this,"_hasColumn",!1);C(this,"_hasAll",!1);C(this,"_allIndex",-1);C(this,"_mergeData");C(this,"_rangeMap",new cr(5e4));C(this,"_skeletonCache",new cr(5e4));this._init(n.concat())}_init(n){this._mergeData=n,this._createCache(n)}_clearCache(){this._cellCache.clear(),this._rowCache.clear(),this._columnCache.clear(),this._hasAll=!1,this._allIndex=-1,this._rangeMap.clear(),this._skeletonCache.clear(),this._hasColumn=!1,this._hasRow=!1}_createCache(n){let r=0;for(const s of n){const{rangeType:i}=s;i===pe.ROW?this._createRowCache(s,r):i===pe.COLUMN?this._createColumnCache(s,r):i===pe.ALL?this._createCellAllCache(r):this._createCellCache(s,r),r++}}rebuild(n){this._clearCache(),this._init(n.concat())}_createRowCache(n,r){const{startRow:s,endRow:i}=n;for(let o=s;o<=i;o++)this._rowCache.set(o,r),this._hasRow=!0}_createColumnCache(n,r){const{startColumn:s,endColumn:i}=n;for(let o=s;o<=i;o++)this._columnCache.set(o,r),this._hasColumn=!0}_createCellAllCache(n){this._hasAll=!0,this._allIndex=n}_createCellCache(n,r){for(let s=n.startRow;s<=n.endRow;s++){let i=this._cellCache.get(s);i==null&&(i=new Map,this._cellCache.set(s,i));for(let o=n.startColumn;o<=n.endColumn;o++)i.set(o,r)}}add(n){this._mergeData.push(n),this._clearCache(),this._createCache(this._mergeData)}remove(n,r){const s=this._getMergeDataIndex(n,r);s!==-1&&(this._mergeData.splice(s,1),this._clearCache(),this._createCache(this._mergeData))}getMergedCell(n,r){const s=this._getMergeDataIndex(n,r);return s!==-1?this._mergeData[s]:null}getMergeDataIndex(n,r){return this._getMergeDataIndex(n,r)}isRowContainsMergedCell(n){return this._hasAll||!K.isEmptyObject(this._columnCache)?!0:this._mergeData.some(r=>r.startRow<=n&&n<=r.endRow)}isColumnContainsMergedCell(n){return this._hasAll||!K.isEmptyObject(this._rowCache)?!0:this._mergeData.some(r=>r.startColumn<=n&&n<=r.endColumn)}getMergedCellRange(n,r,s,i){const o=[],a=`${n}-${r}-${s}-${i}`;if(this._rangeMap.has(a))return this._getRangeFromCache(a);let l=0;const c=[];for(const u of this._mergeData||[])tn.intersects(u,{startRow:n,endRow:s,startColumn:r,endColumn:i})&&(o.push({...u}),c.push(l)),l++;return this._rangeMap.set(a,c),o}getMergedCellRangeForSkeleton(n,r,s,i){const o=[],a=this._mergeData,l=`${n}-${r}-${s}-${i}`;if(this._skeletonCache.has(l))return this._getSkeletonRangeFromCache(l);const c=[];for(let u=0;u<a.length;u++){const{startRow:h,endRow:d,startColumn:m,endColumn:_}=a[u];for(let p=n;p<=s;p++){let I=!1;for(let A=r;A<=i;A++)if(p>=h&&p<=d&&A>=m&&A<=_){o.push({startRow:h,endRow:d,startColumn:m,endColumn:_}),c.push(u),I=!0;break}if(I)break}}return this._skeletonCache.set(l,c),o}_getRangeFromCache(n){const r=this._rangeMap.get(n)||[],s=[];for(const i of r)s.push({...this._mergeData[i]});return s}_getSkeletonRangeFromCache(n){const r=this._skeletonCache.get(n)||[],s=[];for(const i of r)s.push({...this._mergeData[i]});return s}_getMergeDataIndex(n,r){var i;if(this._hasAll)return this._allIndex;if(this._hasRow){const o=this._rowCache.get(n);if(o!==void 0)return o}if(this._hasColumn){const o=this._columnCache.get(r);if(o!==void 0)return o}const s=(i=this._cellCache.get(n))==null?void 0:i.get(r);return s!==void 0?s:-1}getMergeDataSnapshot(){return this._mergeData}dispose(){this._clearCache(),this._mergeData=[]}}class $h extends ze{constructor(n){super();C(this,"_cellContentInterceptor",null);C(this,"_rowFilteredInterceptor",null);this.getRawCell=n}dispose(){super.dispose(),this._cellContentInterceptor=null,this._rowFilteredInterceptor=null}getCell(n,r,s,i){return this._cellContentInterceptor?this._cellContentInterceptor.getCell(n,r,bn.Value|bn.Style,s,i):this.getRawCell(n,r)}getCellValueOnly(n,r){return this._cellContentInterceptor?this._cellContentInterceptor.getCell(n,r,bn.Value):this.getRawCell(n,r)}getCellStyleOnly(n,r){return this._cellContentInterceptor?this._cellContentInterceptor.getCell(n,r,bn.Style):this.getRawCell(n,r)}getRowFiltered(n){var r,s;return(s=(r=this._rowFilteredInterceptor)==null?void 0:r.getRowFiltered(n))!=null?s:!1}registerCellContentInterceptor(n){if(this._cellContentInterceptor)throw new Error("[SheetViewModel]: Interceptor already registered.");return this._cellContentInterceptor=n,je(()=>this._cellContentInterceptor=null)}registerRowFilteredInterceptor(n){if(this._rowFilteredInterceptor)throw new Error("[SheetViewModel]: Interceptor already registered.");return this._rowFilteredInterceptor=n,je(()=>this._rowFilteredInterceptor=null)}}const Hh={isDeepClone:!1,displayRawFormula:!1,ignoreTextRotation:!1};class Wr{constructor(t,n,r){C(this,"_sheetId");C(this,"_snapshot");C(this,"_cellData");C(this,"_rowManager");C(this,"_columnManager");C(this,"_viewModel");C(this,"_spanModel");C(this,"_isRowStylePrecedeColumnStyle",!0);C(this,"_getCellHeight");var a;this.unitId=t,this._styles=r,this._snapshot=Bh(n);const{columnData:s,rowData:i,cellData:o}=this._snapshot;this._sheetId=(a=this._snapshot.id)!=null?a:K.generateRandomId(6),this._cellData=new lt(o),this._viewModel=new $h((l,c)=>this.getCellRaw(l,c)),this._rowManager=new _R(this._snapshot,this._viewModel,i),this._columnManager=new mR(this._snapshot,s),this._spanModel=new OR(this._snapshot.mergeData)}__interceptViewModel(t){t(this._viewModel)}__registerGetCellHeight(t){return this._getCellHeight=t,je(()=>{this._getCellHeight=null})}getSnapshot(){return this._snapshot}getCellHeight(t,n){return this._getCellHeight?this._getCellHeight(t,n):this._snapshot.defaultRowHeight}setMergeData(t){this._snapshot.mergeData=t,this.getSpanModel().rebuild(t)}getSpanModel(){return this._spanModel}setIsRowStylePrecedeColumnStyle(t){this._isRowStylePrecedeColumnStyle=t}getStyleDataByHash(t){return{...this._styles.get(t)}}setStyleData(t){return this._styles.setValue(t)}getColumnStyle(t,n=!1){return n?this._columnManager.getColumnStyle(t):this._styles.get(this._columnManager.getColumnStyle(t))}setColumnStyle(t,n){this._columnManager.setColumnStyle(t,n)}getRowStyle(t,n=!1){return n?this._rowManager.getRowStyle(t):this._styles.get(this._rowManager.getRowStyle(t))}setRowStyle(t,n){this._rowManager.setRowStyle(t,n)}getDefaultCellStyle(){return this._snapshot.defaultStyle}getDefaultCellStyleInternal(){const t=this._snapshot.defaultStyle;return this._styles.get(t)}setDefaultCellStyle(t){this._snapshot.defaultStyle=t}getCellStyle(t,n){const r=this.getCell(t,n);if(r){const s=r.s;return typeof s=="string"?this._styles.get(s):s}return null}getComposedCellStyle(t,n,r){const s=this.getDefaultCellStyleInternal(),i=this.getRowStyle(t),o=this.getColumnStyle(n),a=this.getCell(t,n),l=this._styles.getStyleByCell(a);return(r!=null?r:this._isRowStylePrecedeColumnStyle)?ci(s,o,i,a==null?void 0:a.themeStyle,l):ci(s,i,o,a==null?void 0:a.themeStyle,l)}getCellMatrix(){return this._cellData}getCellMatrixPrintRange(){const t=this.getCellMatrix(),n=this.getMergeData();let r=-1,s=-1,i=-1,o=-1,a=!1,l=!1;return t.forEach((c,u)=>{Object.keys(u).forEach(h=>{const d=+h,m=t.getValue(c,d),_=m!=null&&m.s?this._styles.get(m.s):null,p=(_==null?void 0:_.bd)&&(_.bd.b||_.bd.l||_.bd.r||_.bd.t||_.bd.bc_tr||_.bd.bl_tr||_.bd.ml_tr||_.bd.tl_bc||_.bd.tl_br||_.bd.tl_mr);(m&&(m.v||m.p)||_!=null&&_.bg||p)&&(a?r=Math.min(r,c):(r=c,a=!0),s=Math.max(s,c),l?i=Math.min(i,d):(l=!0,i=d),o=Math.max(o,d))})}),n.forEach(c=>{a?r=Math.min(r,c.startRow):(r=c.startRow,a=!0),s=Math.max(s,c.endRow),l?i=Math.min(i,c.startColumn):(i=c.startColumn,a=!0),o=Math.max(o,c.endColumn)}),!a||!l?null:{startColumn:i,startRow:r,endColumn:o,endRow:s}}getRowManager(){return this._rowManager}getUnitId(){return this.unitId}getSheetId(){return this._sheetId}getColumnManager(){return this._columnManager}getName(){return this._snapshot.name}clone(){const{_snapshot:t}=this,n=K.deepClone(t);return new Wr(this.unitId,n,this._styles)}getMergeData(){return this._spanModel.getMergeDataSnapshot()}getMergedCell(t,n){return this._spanModel.getMergedCell(t,n)}getMergedCellRange(t,n,r,s){return this._spanModel.getMergedCellRange(t,n,r,s)}isRowContainsMergedCell(t){return this._spanModel.isRowContainsMergedCell(t)}isColumnContainsMergedCell(t){return this._spanModel.isColumnContainsMergedCell(t)}getCellInfoInMergeData(t,n){const r=this.getMergedCell(t,n);let s=!1,i=!1,o=t,a=n,l=t,c=n;if(r){const{startRow:u,endRow:h,startColumn:d,endColumn:m}=r;t===u&&n===d?(o=h,a=m,l=u,c=d,i=!0):t>=u&&t<=h&&n>=d&&n<=m&&(o=h,a=m,l=u,c=d,s=!0)}return{actualRow:t,actualColumn:n,isMergedMainCell:i,isMerged:s,endRow:o,endColumn:a,startRow:l,startColumn:c}}getCell(t,n){return t<0||n<0?null:this._viewModel.getCell(t,n)}getCellValueOnly(t,n){return t<0||n<0?null:this._viewModel.getCellValueOnly(t,n)}getCellStyleOnly(t,n){return t<0||n<0?null:this._viewModel.getCellStyleOnly(t,n)}getCellRaw(t,n){return this.getCellMatrix().getValue(t,n)}getCellWithFilteredInterceptors(t,n,r,s){return this._viewModel.getCell(t,n,r,s)}getRowFiltered(t){return this._viewModel.getRowFiltered(t)}getRangeFilterRows(t){const n=[];for(let r=t.startRow;r<=t.endRow;r++)this.getRowFiltered(r)&&n.push(r);return n}getMatrixWithMergedCells(t,n,r,s,i=Tn.Raw){const o=this.getCellMatrix(),a=this._spanModel.getMergedCellRange(t,n,r,s),l=new lt;return po(t,r,n,s).forEach((c,u)=>{var d;let h;if(i===Tn.Raw)h=this.getCellRaw(c,u);else if(i===Tn.Intercepted)h=this.getCell(c,u);else if(i===Tn.Both){const m=this.getCellRaw(c,u);if(m){h={...m};const _=(d=this.getCell(c,u))==null?void 0:d.v;Nh(_)&&h&&(h.displayV=String(_))}}h&&l.setValue(c,u,h)}),a.forEach(c=>{const{startColumn:u,startRow:h,endColumn:d,endRow:m}=c;po(h,m,u,d).forEach((_,p)=>{_===h&&p===u&&l.setValue(_,p,{...o.getValue(_,p),rowSpan:m-h+1,colSpan:d-u+1}),(_!==h||p!==u)&&l.realDeleteValue(_,p)})}),l}getRange(t,n,r,s){return typeof t=="object"?new xn(this,t,{getStyles:()=>this._styles}):new xn(this,{startRow:t,startColumn:n,endColumn:s||n,endRow:r||t},{getStyles:()=>this._styles})}getScrollLeftTopFromSnapshot(){return{scrollLeft:this._snapshot.scrollLeft,scrollTop:this._snapshot.scrollTop}}getZoomRatio(){return this._snapshot.zoomRatio||1}getConfig(){return this._snapshot}getFreeze(){return this._snapshot.freeze}getMaxColumns(){const{_snapshot:t}=this,{columnCount:n}=t;return n}getMaxRows(){const{_snapshot:t}=this,{rowCount:n}=t;return n}getRowCount(){return this._snapshot.rowCount}setRowCount(t){this._snapshot.rowCount=t}getColumnCount(){return this._snapshot.columnCount}setColumnCount(t){this._snapshot.columnCount=t}isSheetHidden(){return this._snapshot.hidden}hasHiddenGridlines(){const{_snapshot:t}=this,{showGridlines:n}=t;return n===0}getGridlinesColor(){return this.getConfig().gridlinesColor}getTabColor(){const{_snapshot:t}=this,{tabColor:n}=t;return n}getColumnWidth(t){return this.getColumnManager().getColumnWidth(t)}getRowHeight(t){return this._viewModel.getRowFiltered(t)?0:this.getRowManager().getRowHeight(t)}isRowFiltered(t){return this._viewModel.getRowFiltered(t)}getRowVisible(t){return!this.isRowFiltered(t)&&this.getRowRawVisible(t)}getRowRawVisible(t){return this.getRowManager().getRowRawVisible(t)}getHiddenRows(t,n){const r=this.getMaxColumns()-1,s=this._rowManager.getHiddenRows(t,n);return s.forEach(i=>i.endColumn=r),s}getColVisible(t){return this._columnManager.getColVisible(t)}getHiddenCols(t,n){const r=this.getMaxRows()-1,s=this._columnManager.getHiddenCols(t,n);return s.forEach(i=>i.endRow=r),s}getVisibleRows(){const t=this.getRowCount();return this._rowManager.getVisibleRows(0,t-1)}getVisibleCols(){const t=this.getColumnCount();return this._columnManager.getVisibleCols(0,t-1)}isRightToLeft(){const{_snapshot:t}=this,{rightToLeft:n}=t;return n}getLastRowWithContent(){return this._cellData.getLength()-1}getLastColumnWithContent(){return this._cellData.getRange().endColumn}getDataRangeScope(){return this._cellData.getStartEndScope()}cellHasValue(t){return t&&(t.v!==void 0||t.f!==void 0||t.p!==void 0)}iterateByRow(t,n=!0){const{startRow:r,startColumn:s,endRow:i,endColumn:o}=t,a=this;return{[Symbol.iterator]:()=>{let l=r,c=s;return{next(){for(;;){if(c>o&&(l+=1,c=s),l>i)return{done:!0,value:void 0};const u=a.getCell(l,c),h=!u,d=a.getMergedCell(l,c);if(d){if(l!==d.startRow||c!==d.startColumn){c=d.endColumn+1;continue}if(h&&n){c=d.endColumn+1;continue}const _={row:l,col:c,value:u};return _.colSpan=d.endColumn-d.startColumn+1,_.rowSpan=d.endRow-d.startRow+1,c=d.endColumn+1,{done:!1,value:_}}if(h&&n)c+=1;else{const m={row:l,col:c,value:u};return c+=1,{done:!1,value:m}}}}}}}}iterateByColumn(t,n=!0,r=!0){const{startRow:s,startColumn:i,endRow:o,endColumn:a}=t,l=this;return{[Symbol.iterator]:()=>{let c=s,u=i;return{next(){for(;;){if(c>o&&(u+=1,c=s),u>a)return{done:!0,value:void 0};const h=l.getMergedCell(c,u);if(h){const _=c!==h.startRow,p=_||u!==h.startColumn;if(r&&p||!r&&_){c=h.endRow+1;continue}const I=l.getCell(h.startRow,h.startColumn);if(!I&&n){c=h.endRow+1;continue}const B={row:c,col:h.startColumn,value:I};return B.colSpan=h.endColumn-h.startColumn+1,B.rowSpan=h.endRow-h.startRow+1,c=h.endRow+1,{done:!1,value:B}}const d=l.getCell(c,u);if(!d&&n)c+=1;else{const _={row:c,col:u,value:d};return c+=1,{done:!1,value:_}}}}}}}}getCellDocumentModel(t,n,r=Hh){var p;if(!t)return;const{isDeepClone:s,displayRawFormula:i,ignoreTextRotation:o}={...Hh,...r};let a,l="document";const c=hR(n),u=o?rt.tr:c.textRotation||rt.tr;let h=c.horizontalAlign||rt.ht;const d=c.verticalAlign||rt.vt,m=c.wrapStrategy||rt.tb,_=c.paddingData||Qo;if(t.f&&i)a=Hr(t.f.toString(),{},{verticalAlign:d}),h=rt.ht;else if(t.p){const{centerAngle:I,vertexAngle:A}=Lh(u);a=this._updateConfigAndGetDocumentModel(s?K.deepClone(t.p):t.p,h,_,{horizontalAlign:h,verticalAlign:d,centerAngle:I,vertexAngle:A,wrapStrategy:m,zeroWidthParagraphBreak:1})}else if(t.v!=null){const I=Th(n);l=Mh(I).fontCache;let A=Wh(t);t.t===Xt.FORCE_STRING&&i&&(A=`'${A}`),a=Hr(A,I,{...c,textRotation:u,cellValueType:t.t})}return a&&t.linkUrl&&t.linkId&&yh(a,t.linkUrl,t.linkId),{documentModel:a,fontString:l,textRotation:u,wrapStrategy:m,verticalAlign:d,horizontalAlign:h,paddingData:_,fill:(p=n==null?void 0:n.bg)==null?void 0:p.rgb}}_updateConfigAndGetDocumentModel(t,n,r,s){var o,a,l,c,u;if(!s||!((o=t.body)!=null&&o.dataStream))return;t.documentStyle||(t.documentStyle={}),t.documentStyle.marginTop=(a=r.t)!=null?a:0,t.documentStyle.marginBottom=(l=r.b)!=null?l:2,t.documentStyle.marginLeft=(c=r.l)!=null?c:2,t.documentStyle.marginRight=(u=r.r)!=null?u:2,t.documentStyle.pageSize={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},t.documentStyle.renderConfig={...t.documentStyle.renderConfig,...s};const i=t.body.paragraphs||[];for(const h of i)h.paragraphStyle||(h.paragraphStyle={}),h.paragraphStyle.horizontalAlign=n;return new bt(t)}getBlankCellDocumentModel(t,n,r){const s=this.getComposedCellStyle(n,r),i=Th(s),o=this.getCellDocumentModel(t,s,{ignoreTextRotation:!0});if(o!=null)return o.documentModel==null&&(o.documentModel=Hr("",i)),o;const a="";let l="document";const c=rt.tr,u=rt.ht,h=rt.vt,d=rt.tb,m=Qo;return l=Mh({}).fontCache,{documentModel:Hr(a,i),fontString:l,textRotation:c,wrapStrategy:d,verticalAlign:h,horizontalAlign:u,paddingData:m}}getCellDocumentModelWithFormula(t,n,r){const s=this.getComposedCellStyle(n,r);return this.getCellDocumentModel(t,s,{isDeepClone:!0,displayRawFormula:!0,ignoreTextRotation:!0})}getCustomMetadata(){return this._snapshot.custom}setCustomMetadata(t){this._snapshot.custom=t}}function Wh(e){var r,s;if(!e)return"";const t=(s=(r=e.p)==null?void 0:r.body)==null?void 0:s.dataStream;if(t)return Je.transform.getPlainText(t);const n=e.v;return typeof n=="string"?e.t===Xt.BOOLEAN?n.toUpperCase():n.replace(/[\r\n]/g,""):typeof n=="number"?e.t===Xt.BOOLEAN?n?"TRUE":"FALSE":n.toString():typeof n=="boolean"?n?"TRUE":"FALSE":""}function vR(e){if(e===null)return"";if(e!=null&&e.p){const t=e==null?void 0:e.p.body;if(t==null)return"";const n=t.dataStream;return Je.transform.getPlainText(n)}return e==null?void 0:e.v}var wR=Object.getOwnPropertyDescriptor,bR=(e,t,n,r)=>{for(var s=r>1?void 0:r?wR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},AR=(e,t)=>(n,r)=>t(n,r,e);function TR(e,t){return`${e.getUnitId()}|${t.getSheetId()}`}f.Workbook=class extends Us{constructor(n={},r){super();C(this,"type",we.UNIVER_SHEET);C(this,"_sheetCreated$",new oe.Subject);C(this,"sheetCreated$",this._sheetCreated$.asObservable());C(this,"_sheetDisposed$",new oe.Subject);C(this,"sheetDisposed$",this._sheetDisposed$.asObservable());C(this,"_activeSheet$",new oe.BehaviorSubject(null));C(this,"activeSheet$",this._activeSheet$.asObservable());C(this,"_worksheets");C(this,"_styles");C(this,"_snapshot");C(this,"_unitId");C(this,"_count");C(this,"_name$");C(this,"name$");this._logService=r;const s=aR();K.isEmptyObject(n)?this._snapshot=s:this._snapshot=K.commonExtend(s,n);const{styles:i}=this._snapshot;(this._snapshot.id==null||this._snapshot.id.length===0)&&(this._snapshot.id=K.generateRandomId(6)),this._unitId=this._snapshot.id,this._styles=new bh(i),this._count=1,this._worksheets=new Map,this._name$=new oe.BehaviorSubject(n.name||""),this.name$=this._name$.asObservable(),this._parseWorksheetSnapshots()}get _activeSheet(){return this._activeSheet$.getValue()}get name(){return this._name$.getValue()}static isIRangeType(n){return typeof n=="string"||"startRow"in n||"row"in n}dispose(){super.dispose(),this._sheetCreated$.complete(),this._sheetDisposed$.complete(),this._activeSheet$.complete(),this._name$.complete()}save(){return K.deepClone(this._snapshot)}getSnapshot(){return this._snapshot}getName(){return this._snapshot.name}setName(n){this._name$.next(n),this._snapshot.name=n}getUnitId(){return this._unitId}getRev(){var n;return(n=this._snapshot.rev)!=null?n:1}incrementRev(){this._snapshot.rev=this.getRev()+1}setRev(n){this._snapshot.rev=n}addWorksheet(n,r,s){const{sheets:i,sheetOrder:o}=this._snapshot;if(i[n])return!1;i[n]=s,o.splice(r,0,n);const a=new Wr(this._unitId,s,this._styles);return this._worksheets.set(n,a),this._sheetCreated$.next(a),!0}getSheetOrders(){return this._snapshot.sheetOrder}getWorksheets(){return this._worksheets}getActiveSpreadsheet(){return this}getStyles(){return this._styles}getConfig(){return this._snapshot}getIndexBySheetId(n){const{sheetOrder:r}=this._snapshot;return r.findIndex(s=>s===n)}getActiveSheet(n){if(!this._activeSheet&&typeof n>"u")throw new Error(`[Workbook]: no active Worksheet on Workbook ${this._unitId}!`);return this._activeSheet}ensureActiveSheet(){const n=this._activeSheet;if(n)return n;const r=this._snapshot.sheetOrder;for(let i=0,o=r.length;i<o;i++){const a=this._worksheets.get(r[i]);if(a&&a.isSheetHidden()!==ae.TRUE)return this.setActiveSheet(a),a}const s=this._worksheets.get(r[0]);return this.setActiveSheet(s),s}setActiveSheet(n){this._activeSheet$.next(n)}removeSheet(n){const r=this._worksheets.get(n);return r?(this._worksheets.delete(n),this._snapshot.sheetOrder.splice(this._snapshot.sheetOrder.indexOf(n),1),delete this._snapshot.sheets[n],this._sheetDisposed$.next(r),!0):!1}getActiveSheetIndex(){const{sheetOrder:n}=this._snapshot;return n.findIndex(r=>this._worksheets.get(r)===this._activeSheet)}getSheetSize(){return this._snapshot.sheetOrder.length}getSheets(){const{sheetOrder:n}=this._snapshot;return n.map(r=>this._worksheets.get(r))}getSheetsName(){const{sheetOrder:n}=this._snapshot,r=[];return n.forEach(s=>{const i=this._worksheets.get(s);i&&r.push(i.getName())}),r}getSheetIndex(n){const{sheetOrder:r}=this._snapshot;return r.findIndex(s=>n.getSheetId()===s)}getSheetBySheetName(n){const{sheetOrder:r}=this._snapshot,s=r.find(i=>this._worksheets.get(i).getName()===n);return this._worksheets.get(s)}getSheetBySheetId(n){return this._worksheets.get(n)}getSheetByIndex(n){const{sheetOrder:r}=this._snapshot;return this._worksheets.get(r[n])}getHiddenWorksheets(){return this.getSheets().filter(n=>n.getConfig().hidden===ae.TRUE).map(n=>n.getConfig().id)}getUnhiddenWorksheets(){return this.getSheets().filter(n=>n.getConfig().hidden!==ae.TRUE).map(n=>n.getConfig().id)}load(n){this._snapshot=n}checkSheetName(n){return this.getSheetsName().includes(n)}uniqueSheetName(n="Sheet1"){let r=n;for(;this.checkSheetName(r);)r=n+this._count,this._count++;return r}generateNewSheetName(n){let r=n+this._count;for(;this.checkSheetName(r);)r=n+this._count,this._count++;return r}_parseWorksheetSnapshots(){const{_snapshot:n,_worksheets:r}=this,{sheets:s,sheetOrder:i}=n;if(K.isEmptyObject(s)){const o=K.generateRandomId();s[o]={id:o}}for(const o in s){const a=s[o],{name:l}=a;a.name=this.uniqueSheetName(l),a.name!==l&&this._logService.debug("[Workbook]",`The worksheet name ${l} is duplicated, we changed it to ${a.name}. Please fix the problem in your snapshot.`);const c=new Wr(this._unitId,a,this._styles);r.set(o,c),i.includes(o)||i.push(o)}this.ensureActiveSheet()}getCustomMetadata(){return this._snapshot.custom}setCustomMetadata(n){this._snapshot.custom=n}},f.Workbook=bR([AR(1,gt)],f.Workbook);class ea extends Us{constructor(n){var r;super();C(this,"type",we.UNIVER_SLIDE);C(this,"_activePage$",new oe.BehaviorSubject(null));C(this,"activePage$",this._activePage$.asObservable());C(this,"_name$");C(this,"name$");C(this,"_snapshot");C(this,"_unitId");this._snapshot={...kc,...n},this._unitId=(r=this._snapshot.id)!=null?r:K.generateRandomId(6),this._name$=new oe.BehaviorSubject(this._snapshot.title),this.name$=this._name$.asObservable()}get _activePage(){var r,s;const n=this._activePage$.getValue();if(!n){const i=(r=this.getPageOrder())==null?void 0:r[0];return i?(s=this.getPages())==null?void 0:s[i]:null}return n}setName(n){var r;this._snapshot.title=n,this._name$.next(n),this._unitId=(r=this._snapshot.id)!=null?r:$t(6)}getRev(){return 0}incrementRev(){}setRev(n){}getSnapshot(){return this._snapshot}getUnitId(){return this._unitId}getPages(){var n;return(n=this._snapshot.body)==null?void 0:n.pages}getPageOrder(){var n;return(n=this._snapshot.body)==null?void 0:n.pageOrder}getPage(n){const r=this.getPages();return r==null?void 0:r[n]}getElementsByPage(n){var r;return(r=this.getPage(n))==null?void 0:r.pageElements}getElement(n,r){var s;return(s=this.getElementsByPage(n))==null?void 0:s[r]}getPageSize(){return this._snapshot.pageSize}getBlankPage(){const n=$t(6);return{id:n,pageType:fo.SLIDE,zIndex:10,title:n,description:"",pageBackgroundFill:{rgb:"rgb(255,255,255)"},pageElements:{}}}setActivePage(n){this._activePage$.next(n)}getActivePage(){return this._activePage}updatePage(n,r){this._snapshot.body&&(this._snapshot.body.pages[n]=r)}appendPage(n){var i;if(!this._snapshot.body)return;this._snapshot.body.pages[n.id]=n;const r=this._activePage,s=this._snapshot.body.pageOrder.indexOf((i=r==null?void 0:r.id)!=null?i:"");this._snapshot.body.pageOrder.splice(s+1,0,n.id)}}var yR=Object.getOwnPropertyDescriptor,NR=(e,t,n,r)=>{for(var s=r>1?void 0:r?yR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},jh=(e,t)=>(n,r)=>t(n,r,e);const Xn=Re.createIdentifier("univer.current");f.UniverInstanceService=class extends ze{constructor(n,r){super();C(this,"_unitsByType",new Map);C(this,"_createHandler");C(this,"_ctorByType",new Map);C(this,"_currentUnits",new Map);C(this,"_currentUnits$",new oe.BehaviorSubject(this._currentUnits));C(this,"currentUnits$",this._currentUnits$.asObservable());C(this,"_unitAdded$",new oe.Subject);C(this,"unitAdded$",this._unitAdded$.asObservable());C(this,"_unitDisposed$",new oe.Subject);C(this,"unitDisposed$",this._unitDisposed$.asObservable());C(this,"_focused$",new oe.BehaviorSubject(null));C(this,"focused$",this._focused$.asObservable());this._injector=n,this._contextService=r}dispose(){super.dispose(),this._focused$.complete()}__setCreateHandler(n){this._createHandler=n}createUnit(n,r,s){return this._createHandler(n,r,this._ctorByType.get(n),s)}registerCtorForType(n,r){return this._ctorByType.set(n,r),{dispose:()=>{this._ctorByType.delete(n)}}}getCurrentTypeOfUnit$(n){return this.currentUnits$.pipe(oe.map(r=>{var s;return(s=r.get(n))!=null?s:null}),oe.distinctUntilChanged())}getCurrentUnitForType(n){return this._currentUnits.get(n)}getCurrentUnitOfType(n){return this.getCurrentUnitForType(n)}setCurrentUnitForType(n){const r=this._getUnitById(n);if(!r)throw new Error(`[UniverInstanceService]: no document with unitId ${n}!`);this._currentUnits.set(r[1],r[0]),this._currentUnits$.next(this._currentUnits)}getTypeOfUnitAdded$(n){return this._unitAdded$.pipe(oe.filter(r=>r.type===n))}__addUnit(n,r){var a;const s=n.type;this._unitsByType.has(s)||this._unitsByType.set(s,[]);const i=this._unitsByType.get(s),o=n.getUnitId();if(i.findIndex(l=>l.getUnitId()===o)!==-1)throw new Error(`[UniverInstanceService]: cannot create a unit with the same unit id: ${o}.`);i.push(n),this._unitAdded$.next(n),((a=r==null?void 0:r.makeCurrent)==null||a)&&this.setCurrentUnitForType(n.getUnitId())}getTypeOfUnitDisposed$(n){return this.unitDisposed$.pipe(oe.filter(r=>r.type===n))}getUnit(n,r){var i;const s=(i=this._getUnitById(n))==null?void 0:i[0];return r&&(s==null?void 0:s.type)!==r?null:s}getCurrentUniverDocInstance(){return this.getCurrentUnitForType(we.UNIVER_DOC)}getUniverDocInstance(n){return this.getUnit(n,we.UNIVER_DOC)}getUniverSheetInstance(n){return this.getUnit(n,we.UNIVER_SHEET)}getAllUnitsForType(n){var r;return(r=this._unitsByType.get(n))!=null?r:[]}changeDoc(n,r){const s=this.getAllUnitsForType(we.UNIVER_DOC),i=s.find(o=>o.getUnitId()===n);if(i!=null){const o=s.indexOf(i);s.splice(o,1)}this.__addUnit(r)}get focused(){var r;const n=this._focused$.getValue();return n?(r=this._getUnitById(n))==null?void 0:r[0]:null}focusUnit(n){this._focused$.next(n),this.focused instanceof f.Workbook?(this._contextService.setContextValue(xr,!0),this._contextService.setContextValue(Br,!1),this._contextService.setContextValue(Kn,!0),this._contextService.setContextValue($r,!1),this.setCurrentUnitForType(n)):this.focused instanceof bt?(this._contextService.setContextValue(xr,!0),this._contextService.setContextValue(Br,!0),this._contextService.setContextValue(Kn,!1),this._contextService.setContextValue($r,!1),this.setCurrentUnitForType(n)):this.focused instanceof ea?(this._contextService.setContextValue(xr,!0),this._contextService.setContextValue(Br,!1),this._contextService.setContextValue(Kn,!1),this._contextService.setContextValue($r,!0),this.setCurrentUnitForType(n)):(this._contextService.setContextValue(xr,!1),this._contextService.setContextValue(Br,!1),this._contextService.setContextValue(Kn,!1),this._contextService.setContextValue($r,!1))}getFocusedUnit(){return this.focused}getUnitType(n){const r=this._getUnitById(n);return r?r[1]:we.UNRECOGNIZED}disposeUnit(n){const r=this._getUnitById(n);if(!r)return!1;const[s,i]=r,o=this._unitsByType.get(i),a=o.indexOf(s);return o.splice(a,1),this._tryResetCurrentOnRemoval(n,i),this._tryResetFocusOnRemoval(n),this._unitDisposed$.next(s),!0}_tryResetCurrentOnRemoval(n,r){const s=this.getCurrentUnitForType(r);(s==null?void 0:s.getUnitId())===n&&(this._currentUnits.set(r,null),this._currentUnits$.next(this._currentUnits))}_tryResetFocusOnRemoval(n){var r;((r=this.focused)==null?void 0:r.getUnitId())===n&&this._focused$.next(null)}_getUnitById(n){for(const[r,s]of this._unitsByType){const i=s.find(o=>o.getUnitId()===n);if(i)return[i,r]}}},f.UniverInstanceService=NR([jh(0,Re.Inject(Re.Injector)),jh(1,An)],f.UniverInstanceService);var ke=(e=>(e[e.Starting=0]="Starting",e[e.Ready=1]="Ready",e[e.Rendered=2]="Rendered",e[e.Steady=3]="Steady",e))(ke||{});const Yh={0:"Starting",1:"Ready",2:"Rendered",3:"Steady"};var MR=Object.getOwnPropertyDescriptor,LR=(e,t,n,r)=>{for(var s=r>1?void 0:r?MR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},DR=(e,t)=>(n,r)=>t(n,r,e);class Gh extends Error{constructor(t){super(`[LifecycleService]: lifecycle stage "${Yh[t]}" will never be reached!`),this.name="LifecycleUnreachableError"}}f.LifecycleService=class extends ze{constructor(n){super();C(this,"_lifecycle$",new oe.BehaviorSubject(ke.Starting));C(this,"lifecycle$",this._lifecycle$.asObservable());C(this,"_lock",!1);this._logService=n,this._reportProgress(ke.Starting)}get stage(){return this._lifecycle$.getValue()}set stage(n){if(this._lock)throw new Error("[LifecycleService]: cannot set new stage when related logic is all handled!");if(n<this.stage)throw new Error("[LifecycleService]: lifecycle stage cannot go backward!");n!==this.stage&&(this._lock=!0,this._reportProgress(n),this._lifecycle$.next(n),this._lock=!1)}dispose(){this._lifecycle$.complete(),super.dispose()}onStage(n){return oe.firstValueFrom(this.lifecycle$.pipe(oe.filter(r=>r>=n),ai(r=>r===n),oe.map(()=>{}))).catch(r=>r.name==="EmptyError"?Promise.reject(new Gh(n)):Promise.reject(r))}subscribeWithPrevious(){return oe.merge(Vh(this.stage),this._lifecycle$.pipe(oe.skip(1))).pipe(ai(n=>n===ke.Steady))}_reportProgress(n){this._logService.debug("[LifecycleService]",`lifecycle progressed to "${Yh[n]}".`)}},f.LifecycleService=LR([DR(0,gt)],f.LifecycleService);function Vh(e){switch(e){case ke.Starting:return oe.of(ke.Starting);case ke.Ready:return oe.of(ke.Starting,ke.Ready);case ke.Rendered:return oe.of(ke.Starting,ke.Ready,ke.Rendered);default:return oe.of(ke.Starting,ke.Ready,ke.Rendered,ke.Steady)}}const UR=Re.createIdentifier("ILocalStorageService");class Sn extends ze{constructor(){super();C(this,"_currentLocale$",new oe.BehaviorSubject(ar.ZH_CN));C(this,"currentLocale$",this._currentLocale$.asObservable());C(this,"_locales",null);C(this,"localeChanged$",new oe.Subject);C(this,"t",(n,...r)=>{if(!this._locales)throw new Error("[LocaleService]: Locale not initialized");const s=n.split("."),i=this.resolveKeyPath(this._locales[this._currentLocale],s);if(typeof i=="string"){let o=i;return r.forEach((a,l)=>{o=o.replace(`{${l}}`,a)}),o}else return n});this.disposeWithMe(je(()=>{this._locales=null,this._currentLocale$.complete(),this.localeChanged$.complete()}))}get _currentLocale(){return this._currentLocale$.value}load(n){var r;this._locales=Xo((r=this._locales)!=null?r:{},n)}setLocale(n){this._currentLocale$.next(n),this.localeChanged$.next()}getLocales(){var n;return(n=this._locales)==null?void 0:n[this._currentLocale]}getCurrentLocale(){return this._currentLocale}resolveKeyPath(n,r){const s=r.shift();if(s&&n&&s in n){const i=n[s];return r.length>0&&(typeof i=="object"||Array.isArray(i))?this.resolveKeyPath(i,r):i}return null}}var PR=Object.getOwnPropertyDescriptor,kR=(e,t,n,r)=>{for(var s=r>1?void 0:r?PR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},FR=(e,t)=>(n,r)=>t(n,r,e);f.MentionIOLocalService=class{constructor(t){this._userManagerService=t}async list(t){return{list:[{type:Qr.PERSON,mentions:[{objectType:Qr.PERSON,objectId:this._userManagerService.getCurrentUser().userID,label:this._userManagerService.getCurrentUser().name,metadata:{icon:this._userManagerService.getCurrentUser().avatar}}],metadata:{},title:"PEOPLE"}],page:t.page,size:t.size,total:1}}},f.MentionIOLocalService=kR([FR(0,Re.Inject(Dr))],f.MentionIOLocalService);const zh=Re.createIdentifier("univer.service.mention-io");var ta=(e=>(e.INIT="init",e.FETCHING="fetching",e.DONE="done",e))(ta||{});const Kh=Re.createIdentifier("univer.permission-service");class Xh extends ze{constructor(){super(...arguments);C(this,"_permissionPointMap",new Map);C(this,"_permissionPointUpdate$",new oe.Subject);C(this,"permissionPointUpdate$",this._permissionPointUpdate$.asObservable());C(this,"_showComponents",!0)}setShowComponents(n){this._showComponents=n}getShowComponents(){return this._showComponents}deletePermissionPoint(n){const r=this._permissionPointMap.get(n);r&&(r.complete(),this._permissionPointMap.delete(n))}addPermissionPoint(n){const r=n instanceof oe.BehaviorSubject,s=r?n.getValue():n;if(!s.id)return!1;if(this._permissionPointMap.get(s.id))throw new Error(`${s.id} PermissionPoint already exists`);return this._permissionPointMap.set(s.id,r?n:new oe.BehaviorSubject(s)),this._permissionPointUpdate$.next(s),!0}updatePermissionPoint(n,r){const s=this._permissionPointMap.get(n);if(!s)return;const i=s.getValue();i.value=r,i.status=ta.DONE,s.next(i),this._permissionPointUpdate$.next(i)}clearPermissionMap(){this._permissionPointMap.clear()}getPermissionPoint(n){const r=this._permissionPointMap.get(n);if(r)return r.getValue()}getPermissionPoint$(n){const r=this._permissionPointMap.get(n);if(r)return r}composePermission$(n){const r=n.map(s=>{var o;const i=(o=this._permissionPointMap)==null?void 0:o.get(s);if(!i)throw new Error(`[PermissionService]: ${s} permissionPoint does not exist!`);return i.asObservable()});return oe.combineLatest(r).pipe(zr.map(s=>s))}composePermission(n){return n.map(s=>{var o;const i=(o=this._permissionPointMap)==null?void 0:o.get(s);if(!i)throw new Error(`[PermissionService]: ${s} permissionPoint does not exist!`);return i.getValue()})}getAllPermissionPoint(){const n=new Map;return this._permissionPointMap.forEach((r,s)=>{n.set(s,r)}),n}}function qh(e,t){if(!t)return e;const n=[];for(const r of e){const s=t.find(([i])=>i===r[0]);if(s){if(s[1]===null)continue;n.push([r[0],s[1]])}else n.push(r)}return n}var xR=Object.getOwnPropertyDescriptor,BR=(e,t,n,r)=>{for(var s=r>1?void 0:r?xR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},na=(e,t)=>(n,r)=>t(n,r,e);const $R=4,Zh=Symbol("DependentOn");class ra extends ze{onStarting(){}onReady(){}onRendered(){}onSteady(){}getUnitType(){return this.constructor.type}getPluginName(){return this.constructor.pluginName}}C(ra,"pluginName"),C(ra,"type",we.UNIVER_UNKNOWN);class HR{constructor(){C(this,"_plugins",[])}addPlugin(t){this._plugins.push(t)}removePlugins(){const t=this._plugins.slice();return this._plugins.length=0,t}forEachPlugin(t){this._plugins.forEach(t)}}function WR(...e){return function(t){t[Zh]=e}}f.PluginService=class{constructor(t,n,r){C(this,"_pluginRegistry",new Map);C(this,"_pluginStore",new HR);C(this,"_seenPlugins",new Set);C(this,"_loadedPlugins",new Set);C(this,"_loadedPluginTypes",new Set([we.UNIVER_UNKNOWN]));C(this,"_flushTimerByType",new Map);this._injector=t,this._lifecycleService=n,this._logService=r}dispose(){this._pluginStore.removePlugins().forEach(t=>t.dispose()),this._flushTimerByType.forEach(t=>clearTimeout(t))}registerPlugin(t,n){this._assertPluginValid(t);const r={plugin:t,options:n};this._pluginRegistry.set(t.pluginName,r),this._logService.debug("[PluginService]",`Plugin "${t.pluginName}" registered.`);const{type:s}=t;this._loadedPluginTypes.has(s)&&(s===we.UNIVER_UNKNOWN?this._loadFromPlugins([r]):this._flushType(s))}startPluginsForType(t){this._loadedPluginTypes.has(t)||this._loadPluginsForType(t)}_loadPluginsForType(t){const n=Array.from(this._pluginRegistry.keys()),r=[];n.forEach(s=>{const i=this._pluginRegistry.get(s);i.plugin.type===t&&r.push(i)}),this._loadFromPlugins(r),this._loadedPluginTypes.add(t)}_assertPluginValid(t){const{type:n,pluginName:r}=t;if(n===we.UNRECOGNIZED)throw new Error(`[PluginService]: invalid plugin type for ${t.name}. Please assign a "type" to your plugin.`);if(!r)throw new Error(`[PluginService]: no plugin name for ${t.name}. Please assign a "pluginName" to your plugin.`);if(this._seenPlugins.has(r))throw new Error(`[PluginService]: duplicated plugin name for "${r}". Maybe a plugin that dependents on "${r} has already registered it. In that case please register "${r}" before the that plugin.`);this._seenPlugins.add(t.pluginName)}_flushType(t){this._flushTimerByType.get(t)===void 0&&this._flushTimerByType.set(t,setTimeout(()=>{this._loadPluginsForType(t),this._flushTimerByType.delete(t)},$R))}_loadFromPlugins(t){const n=[],r=new Set,s=o=>{const{plugin:a}=o,{pluginName:l}=a;if(this._loadedPlugins.has(l)||r.has(l))return;r.add(l),this._pluginRegistry.delete(l);const c=a[Zh];c&&c.forEach(u=>{const h=this._pluginRegistry.get(u.pluginName);if(h)s(h);else if(!this._seenPlugins.has(u.pluginName)&&!r.has(u.pluginName)){if(a.type===we.UNIVER_UNKNOWN&&u.type!==we.UNIVER_UNKNOWN)throw new Error(`[PluginService]: cannot register a plugin with Univer type that depends on a plugin with other type. The dependent is ${a.pluginName} and the dependency is ${u.pluginName}.`);a.type!==u.type&&u.type!==we.UNIVER_UNKNOWN&&this._logService.debug("[PluginService]",`Plugin "${l}" depends on "${u.pluginName}" which has different type.`),this._logService.debug("[PluginService]",`Plugin "${l}" depends on "${u.pluginName}" which is not registered. Univer will automatically register it with default configuration.`),this._assertPluginValid(u),s({plugin:u,options:void 0})}}),n.push(o)};t.forEach(o=>s(o));const i=n.map(o=>this._initPlugin(o.plugin,o.options));this._pluginsRunLifecycle(i)}_pluginsRunLifecycle(t){const n=this._lifecycleService.stage;if(Vh(n).subscribe(r=>this._runStage(t,r)),n!==ke.Steady){const r=this._lifecycleService.lifecycle$.pipe(oe.skip(1)).subscribe(s=>{this._runStage(t,s),s===ke.Steady&&r.unsubscribe()})}}_runStage(t,n){t.forEach(r=>{switch(n){case ke.Starting:r.onStarting();break;case ke.Ready:r.onReady();break;case ke.Rendered:r.onRendered();break;case ke.Steady:r.onSteady();break}})}_initPlugin(t,n){const r=this._injector.createInstance(t,n);return this._pluginStore.addPlugin(r),this._loadedPlugins.add(t.pluginName),this._logService.debug("[PluginService]",`Plugin "${r.getPluginName()}" loaded.`),r}},f.PluginService=BR([na(0,Re.Inject(Re.Injector)),na(1,Re.Inject(f.LifecycleService)),na(2,gt)],f.PluginService);const sa=Re.createIdentifier("resource-loader-service");var jR=Object.getOwnPropertyDescriptor,YR=(e,t,n,r)=>{for(var s=r>1?void 0:r?jR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},GR=(e,t)=>(n,r)=>t(n,r,e);f.ResourceManagerService=class extends ze{constructor(n){super();C(this,"_resourceMap",new Map);C(this,"_register$",new oe.Subject);C(this,"register$",this._register$.asObservable());this._logService=n}getAllResourceHooks(){return[...this._resourceMap.values()]}getResources(n,r){return r?this.getResourcesByType(n,r):this.getAllResourceHooks().map(o=>{const a=o.toJson(n);return{name:o.pluginName,data:a}})}getResourcesByType(n,r){return this.getAllResourceHooks().filter(o=>o.businesses.includes(r)).map(o=>{const a=o.toJson(n);return{name:o.pluginName,data:a}})}registerPluginResource(n){const r=n.pluginName;if(this._resourceMap.has(r))throw new Error(`the pluginName is registered {${r}}`);return this._resourceMap.set(r,n),this._register$.next(n),je(()=>this._resourceMap.delete(r))}disposePluginResource(n){this._resourceMap.delete(n)}loadResources(n,r){this.getAllResourceHooks().forEach(s=>{var o;const i=(o=r==null?void 0:r.find(a=>a.name===s.pluginName))==null?void 0:o.data;if(i)try{const a=s.parseJson(i);s.onLoad(n,a)}catch(a){this._logService.error("[ResourceManagerService]","loadResources error",a)}})}unloadResources(n){this.getAllResourceHooks().forEach(r=>{r.onUnLoad(n)})}dispose(){this._register$.complete(),this._resourceMap.clear()}},f.ResourceManagerService=YR([GR(0,gt)],f.ResourceManagerService);class Xs extends ze{constructor(){super();C(this,"_darkMode$",new oe.BehaviorSubject(!1));C(this,"darkMode$",this._darkMode$.asObservable());C(this,"_validColorCache",new Map);C(this,"_currentTheme",Kr.defaultTheme);C(this,"_currentTheme$",new oe.BehaviorSubject(this._currentTheme));C(this,"currentTheme$",this._currentTheme$.asObservable());this.disposeWithMe(je(()=>{this._currentTheme=Kr.defaultTheme,this._currentTheme$.complete(),this._darkMode$.complete()}))}get darkMode(){return this._darkMode$.getValue()}isValidThemeColor(n){if(this._validColorCache.has(n))return this._validColorCache.get(n);let r=!1;const s=n.split(".");if(s.length===1)r=n in Kr.defaultTheme;else if(s.length===2){const[i,o]=s;r=i in Kr.defaultTheme&&o in this._currentTheme[i]}return this._validColorCache.set(n,r),r}getCurrentTheme(){return this._currentTheme}setTheme(n){this._currentTheme=n,this._currentTheme$.next(n)}setDarkMode(n){this._darkMode$.next(n)}getColorFromTheme(n){return mh(this._currentTheme,n)}}var VR=Object.getOwnPropertyDescriptor,zR=(e,t,n,r)=>{for(var s=r>1?void 0:r?VR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},ia=(e,t)=>(n,r)=>t(n,r,e);const qs=Re.createIdentifier("univer.undo-redo.service"),KR=20;class Jh{dispose(){}async dispatchToHandlers(){return!1}}const Qh="univer.command.redo",ed="univer.command.undo",td=new class extends Jh{constructor(){super(...arguments);C(this,"type",rr.COMMAND);C(this,"id",ed)}handler(t){const n=t.get(qs),r=n.pitchTopUndoElement();if(!r)return!1;const s=t.get(sr);return Jr(r.undoMutations,s)?(n.popUndoToRedo(),!0):!1}},nd=new class extends Jh{constructor(){super(...arguments);C(this,"type",rr.COMMAND);C(this,"id",Qh)}handler(t){const n=t.get(qs),r=n.pitchTopRedoElement();if(!r)return!1;const s=t.get(sr);return Jr(r.redoMutations,s)?(n.popRedoToUndo(),!0):!1}};f.LocalUndoRedoService=class extends ze{constructor(n,r,s){super();C(this,"undoRedoStatus$");C(this,"_undoRedoStatus$",new oe.BehaviorSubject({undos:0,redos:0}));C(this,"_undoStacks",new Map);C(this,"_redoStacks",new Map);C(this,"_batchingStatus",new Map);this._univerInstanceService=n,this._commandService=r,this._contextService=s,this.undoRedoStatus$=this._undoRedoStatus$.asObservable(),this.disposeWithMe(this._commandService.registerCommand(td)),this.disposeWithMe(this._commandService.registerCommand(nd)),this.disposeWithMe(je(()=>this._undoRedoStatus$.complete())),this.disposeWithMe(je(this._univerInstanceService.focused$.subscribe(()=>this._updateStatus())))}pushUndoRedo(n){const{unitID:r}=n,s=this._getRedoStack(r,!0),i=this._getUndoStack(r,!0);if(s.length=0,this._batchingStatus.has(n.unitID)){const a=this._batchingStatus.get(n.unitID),l=this._pitchUndoElement(n.unitID);a===0||!l?(o(n),this._batchingStatus.set(n.unitID,1)):this._tryBatchingElements(l,n)}else o(n);function o(a){i.push(a),i.length>KR&&i.splice(0,1)}this._updateStatus()}clearUndoRedo(n){const r=this._getRedoStack(n);r&&(r.length=0);const s=this._getUndoStack(n);s&&(s.length=0),this._updateStatus()}pitchTopUndoElement(){const n=this._getFocusedUnitId();return this._pitchUndoElement(n)}pitchTopRedoElement(){const n=this._getFocusedUnitId();return this._pitchRedoElement(n)}_pitchUndoElement(n){const r=this._getUndoStack(n);return r!=null&&r.length?r[r.length-1]:null}_pitchRedoElement(n){const r=this._getRedoStack(n);return r!=null&&r.length?r[r.length-1]:null}popUndoToRedo(){const r=this._getUndoStackForFocused().pop();r&&(this._getRedoStackForFocused().push(r),this._updateStatus())}popRedoToUndo(){const r=this._getRedoStackForFocused().pop();r&&(this._getUndoStackForFocused().push(r),this._updateStatus())}rollback(n,r){const s=r||this._getFocusedUnitId(),i=this._getUndoStack(s),o=i==null?void 0:i[(i==null?void 0:i.length)-1];o&&o.id===n&&(i.pop(),Jr(o.undoMutations,this._commandService))}__tempBatchingUndoRedo(n){if(this._batchingStatus.has(n))throw new Error("[LocalUndoRedoService]: cannot batching undo redo twice at the same time!");return this._batchingStatus.set(n,0),je(()=>this._batchingStatus.delete(n))}_updateStatus(){var i,o;const n=this._getFocusedUnitId(),r=n&&((i=this._undoStacks.get(n))==null?void 0:i.length)||0,s=n&&((o=this._redoStacks.get(n))==null?void 0:o.length)||0;this._undoRedoStatus$.next({undos:r,redos:s})}_getUndoStack(n,r=!1){let s=this._undoStacks.get(n);return!s&&r&&(s=[],this._undoStacks.set(n,s)),s||null}_getRedoStack(n,r=!1){let s=this._redoStacks.get(n);return!s&&r&&(s=[],this._redoStacks.set(n,s)),s||null}_getUndoStackForFocused(){const n=this._getFocusedUnitId();if(!n)throw new Error("No focused univer instance!");return this._getUndoStack(n,!0)}_getRedoStackForFocused(){const n=this._getFocusedUnitId();if(!n)throw new Error("No focused univer instance!");return this._getRedoStack(n,!0)}_tryBatchingElements(n,r){n.redoMutations.push(...r.redoMutations),n.undoMutations.push(...r.undoMutations)}_getFocusedUnitId(){var o,a,l,c;let n="";const r=this._contextService.getContextValue(Kn),s=this._contextService.getContextValue(Oh),i=this._contextService.getContextValue(Sh);return r?s?n=ni:i?n=ti:n=(a=(o=this._univerInstanceService.getFocusedUnit())==null?void 0:o.getUnitId())!=null?a:"":n=(c=(l=this._univerInstanceService.getFocusedUnit())==null?void 0:l.getUnitId())!=null?c:"",n}},f.LocalUndoRedoService=zR([ia(0,Xn),ia(1,sr),ia(2,An)],f.LocalUndoRedoService);class rd{constructor(t,n=100){C(this,"_imageCacheMap");this._injector=t,this._imageCacheMap=new cr(n)}_getImageCacheKey(t,n){return`${t}-${n}`}getImage(t,n,r,s){const i=this._getImageCacheKey(t,n),o=this._imageCacheMap.get(i);return o||((async()=>{const a=new Image,l=this._injector.has(Jo)?this._injector.get(Jo):null;if(t===Zo.UUID)try{a.src=await(l==null?void 0:l.getImage(n))||""}catch(c){console.error(c)}else a.src=n;a.onload=()=>{a.removeAttribute("data-error"),r==null||r()},a.onerror=()=>{a.setAttribute("data-error","true"),s==null||s()},this._imageCacheMap.set(i,a)})(),null)}}function XR(e){return!(e.length===0||e.length>31||e.startsWith("'")||e.endsWith("'")||/[:\\\/\?\*\[\]]/.test(e))}const sd=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],oa=1,jr=8;class aa{static from(t){if(!(t instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");const[n,r]=new Uint8Array(t,0,2);if(n!==219)throw new Error("Data does not appear to be in a KDBush format.");const s=r>>4;if(s!==oa)throw new Error(`Got v${s} data when expected v${oa}.`);const i=sd[r&15];if(!i)throw new Error("Unrecognized array type.");const[o]=new Uint16Array(t,2,1),[a]=new Uint32Array(t,4,1);return new aa(a,o,i,t)}constructor(t,n=64,r=Float64Array,s){if(isNaN(t)||t<0)throw new Error(`Unpexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+n,2),65535),this.ArrayType=r,this.IndexArrayType=t<65536?Uint16Array:Uint32Array;const i=sd.indexOf(this.ArrayType),o=t*2*this.ArrayType.BYTES_PER_ELEMENT,a=t*this.IndexArrayType.BYTES_PER_ELEMENT,l=(8-a%8)%8;if(i<0)throw new Error(`Unexpected typed array class: ${r}.`);s&&s instanceof ArrayBuffer?(this.data=s,this.ids=new this.IndexArrayType(this.data,jr,t),this.coords=new this.ArrayType(this.data,jr+a+l,t*2),this._pos=t*2,this._finished=!0):(this.data=new ArrayBuffer(jr+o+a+l),this.ids=new this.IndexArrayType(this.data,jr,t),this.coords=new this.ArrayType(this.data,jr+a+l,t*2),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,(oa<<4)+i]),new Uint16Array(this.data,2,1)[0]=n,new Uint32Array(this.data,4,1)[0]=t)}add(t,n){const r=this._pos>>1;return this.ids[r]=r,this.coords[this._pos++]=t,this.coords[this._pos++]=n,r}finish(){const t=this._pos>>1;if(t!==this.numItems)throw new Error(`Added ${t} items when expected ${this.numItems}.`);return la(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(t,n,r,s){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:i,coords:o,nodeSize:a}=this,l=[0,i.length-1,0],c=[];for(;l.length;){const u=l.pop()||0,h=l.pop()||0,d=l.pop()||0;if(h-d<=a){for(let I=d;I<=h;I++){const A=o[2*I],B=o[2*I+1];A>=t&&A<=r&&B>=n&&B<=s&&c.push(i[I])}continue}const m=d+h>>1,_=o[2*m],p=o[2*m+1];_>=t&&_<=r&&p>=n&&p<=s&&c.push(i[m]),(u===0?t<=_:n<=p)&&(l.push(d),l.push(m-1),l.push(1-u)),(u===0?r>=_:s>=p)&&(l.push(m+1),l.push(h),l.push(1-u))}return c}within(t,n,r){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:s,coords:i,nodeSize:o}=this,a=[0,s.length-1,0],l=[],c=r*r;for(;a.length;){const u=a.pop()||0,h=a.pop()||0,d=a.pop()||0;if(h-d<=o){for(let I=d;I<=h;I++)od(i[2*I],i[2*I+1],t,n)<=c&&l.push(s[I]);continue}const m=d+h>>1,_=i[2*m],p=i[2*m+1];od(_,p,t,n)<=c&&l.push(s[m]),(u===0?t-r<=_:n-r<=p)&&(a.push(d),a.push(m-1),a.push(1-u)),(u===0?t+r>=_:n+r>=p)&&(a.push(m+1),a.push(h),a.push(1-u))}return l}}function la(e,t,n,r,s,i){if(s-r<=n)return;const o=r+s>>1;id(e,t,o,r,s,i),la(e,t,n,r,o-1,1-i),la(e,t,n,o+1,s,1-i)}function id(e,t,n,r,s,i){for(;s>r;){if(s-r>600){const c=s-r+1,u=n-r+1,h=Math.log(c),d=.5*Math.exp(2*h/3),m=.5*Math.sqrt(h*d*(c-d)/c)*(u-c/2<0?-1:1),_=Math.max(r,Math.floor(n-u*d/c+m)),p=Math.min(s,Math.floor(n+(c-u)*d/c+m));id(e,t,n,_,p,i)}const o=t[2*n+i];let a=r,l=s;for(Yr(e,t,r,n),t[2*s+i]>o&&Yr(e,t,r,s);a<l;){for(Yr(e,t,a,l),a++,l--;t[2*a+i]<o;)a++;for(;t[2*l+i]>o;)l--}t[2*r+i]===o?Yr(e,t,r,l):(l++,Yr(e,t,l,s)),l<=n&&(r=l+1),n<=l&&(s=l-1)}}function Yr(e,t,n,r){ca(e,n,r),ca(t,2*n,2*r),ca(t,2*n+1,2*r+1)}function ca(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function od(e,t,n,r){const s=e-n,i=t-r;return s*s+i*i}class qR{constructor(t=!1){C(this,"_tree",new Map);C(this,"_oneCellCache",new Map);C(this,"_kdTree",new Map);this._enableOneCellCache=t}dispose(){this.clear()}getTree(t,n){return this._tree.has(t)||this._tree.set(t,new Map),this._tree.get(t).has(n)||this._tree.get(t).set(n,new Ns),this._tree.get(t).get(n)}_getOneCellCache(t,n,r,s){return this._oneCellCache.has(t)||this._oneCellCache.set(t,new Map),this._oneCellCache.get(t).has(n)||this._oneCellCache.get(t).set(n,new Map),this._oneCellCache.get(t).get(n).has(r)||this._oneCellCache.get(t).get(n).set(r,new Map),this._oneCellCache.get(t).get(n).get(r).has(s)||this._oneCellCache.get(t).get(n).get(r).set(s,new Set),this._oneCellCache.get(t).get(n).get(r).get(s)}_removeOneCellCache(t,n,r,s,i){const o=this._oneCellCache.get(t);if(!o)return;const a=o.get(n);if(!a)return;const l=a.get(r);if(!l)return;const c=l.get(s);c&&c.delete(i)}_removeCellCacheByRange(t){const{unitId:n,sheetId:r,range:s,id:i}=t,o=this._oneCellCache.get(n);if(!o)return;const a=o.get(r);if(!a)return;const{startRow:l,startColumn:c,endRow:u,endColumn:h}=s;for(let d=l;d<=u;d++){const m=a.get(d);if(m)for(let _=c;_<=h;_++){const p=m.get(_);p&&p.delete(i)}}}_insertOneCellCache(t,n,r,s,i){this._getOneCellCache(t,n,r,s).add(i)}_getRdTreeItems(t){const n=[];for(const[r,s]of t)for(const[i,o]of s)n.push({x:i,y:r,ids:o});return n}_searchByOneCellCache(t){var _;const{unitId:n,sheetId:r,range:s}=t,{startRow:i,startColumn:o,endRow:a,endColumn:l}=s,c=(_=this._kdTree.get(n))==null?void 0:_.get(r);if(!c)return[];const{tree:u,items:h}=c,d=u.range(o,i,l,a),m=[];for(const p of d){const I=h[p];m.push(...Array.from(I.ids))}return m}openKdTree(){var t;for(const[n,r]of this._oneCellCache){this._kdTree.has(n)||this._kdTree.set(n,new Map);for(const[s,i]of r){const o=this._getRdTreeItems(i),a=new aa(o.length);(t=this._kdTree.get(n))==null||t.set(s,{tree:a,items:o});for(const l of o)a.add(l.x,l.y);a.finish()}}}closeKdTree(){var t;for(const[n,r]of this._oneCellCache)for(const[s,i]of r)(t=this._kdTree.get(n))==null||t.set(s,void 0)}insert(t){const{unitId:n,sheetId:r,range:s,id:i}=t;if(!n||n.length===0)return;let{startRow:o,endRow:a,startColumn:l,endColumn:c}=s;if(this._enableOneCellCache&&o===a&&l===c){this._insertOneCellCache(n,r,o,l,i);return}const u=this.getTree(n,r);Number.isNaN(o)&&(o=0),Number.isNaN(l)&&(l=0),Number.isNaN(a)&&(a=Number.POSITIVE_INFINITY),Number.isNaN(c)&&(c=Number.POSITIVE_INFINITY),u.insert({minX:l,minY:o,maxX:c,maxY:a,id:i})}bulkInsert(t){for(const n of t)this.insert(n)}*searchGenerator(t){var a;const{unitId:n,sheetId:r,range:s}=t;if(this._enableOneCellCache){const l=this._searchByOneCellCache(t);for(const c of l)yield c}const i=(a=this._tree.get(n))==null?void 0:a.get(r);if(!i)return;const o=i.search({minX:s.startColumn,minY:s.startRow,maxX:s.endColumn,maxY:s.endRow});for(const l of o)yield l.id}bulkSearch(t,n){const r=new Set;for(const s of t)for(const i of this.searchGenerator(s))(n==null?void 0:n.has(i))!==!0&&r.add(i);return r}removeById(t,n){var r,s;n?((r=this._tree.get(t))==null||r.delete(n),(s=this._oneCellCache.get(t))==null||s.delete(n)):(this._tree.delete(t),this._oneCellCache.delete(t))}_removeRTreeItem(t){const{unitId:n,sheetId:r,range:s,id:i}=t,o=this.getTree(n,r),a=o.search({minX:s.startColumn,minY:s.startRow,maxX:s.endColumn,maxY:s.endRow});for(let l=0;l<a.length;l++)a[l].id===i&&o.remove(a[l])}remove(t){const{unitId:n,sheetId:r,range:s,id:i}=t,{startRow:o,startColumn:a,endRow:l,endColumn:c}=s;this._enableOneCellCache?o===l&&a===c?this._removeOneCellCache(n,r,s.startRow,s.startColumn,i):(this._removeCellCacheByRange(t),this._removeRTreeItem(t)):this._removeRTreeItem(t)}bulkRemove(t){for(const n of t)this.remove(n)}clear(){this._tree.clear(),this._oneCellCache.clear()}toJSON(){const t={};return this._tree.forEach((n,r)=>{t[r]={},n.forEach((s,i)=>{t[r][i]=s.toJSON()})}),t}fromJSON(t){this._tree.clear();for(const n in t){this._tree.set(n,new Map);for(const r in t[n]){const s=new Ns;s.fromJSON(t[n][r]),this._tree.get(n).set(r,s)}}}}function ZR(e){return new Promise(t=>setTimeout(t,e))}function JR(e=1){return new Promise(t=>{let n=0;const r=()=>{n++,n>=e?t():requestAnimationFrame(r)};requestAnimationFrame(r)})}var QR=Object.getOwnPropertyDescriptor,eI=(e,t,n,r)=>{for(var s=r>1?void 0:r?QR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},tI=(e,t)=>(n,r)=>t(n,r,e);f.Skeleton=class extends ze{constructor(n){super();C(this,"_fontLocale");C(this,"_dirty",!0);this._localeService=n,this._localeInitial()}get dirty(){return this._dirty}getFontLocale(){return this._fontLocale}makeDirty(n){this._dirty=n}dispose(){super.dispose(),this._fontLocale=null}_localeInitial(){}},f.Skeleton=eI([tI(0,Re.Inject(Sn))],f.Skeleton);var nI=Object.getOwnPropertyDescriptor,rI=(e,t,n,r)=>{for(var s=r>1?void 0:r?nI(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},Zs=(e,t)=>(n,r)=>t(n,r,e);f.SheetSkeleton=class extends f.Skeleton{constructor(n,r,s,i,o,a){super(s);C(this,"_worksheetData");C(this,"_renderRawFormula",!1);C(this,"_cellData");C(this,"_imageCacheMap");C(this,"_skipAutoHeightForMergedCells",!0);C(this,"_rowTotalHeight",0);C(this,"_columnTotalWidth",0);C(this,"_rowHeaderWidth",0);C(this,"_columnHeaderHeight",0);C(this,"_rowHeightAccumulation",[]);C(this,"_columnWidthAccumulation",[]);C(this,"_marginTop",0);C(this,"_marginLeft",0);C(this,"_scaleX");C(this,"_scaleY");C(this,"_scrollX");C(this,"_scrollY");this.worksheet=n,this._styles=r,this._contextService=i,this._configService=o,this._injector=a,this._worksheetData=this.worksheet.getConfig(),this._cellData=this.worksheet.getCellMatrix(),this._imageCacheMap=new rd(this._injector),this.initConfig()}initConfig(){var n,r;this._skipAutoHeightForMergedCells=!((n=this._configService.getConfig(Ea))!=null&&n),this.worksheet.setIsRowStylePrecedeColumnStyle((r=this._configService.getConfig(pa))!=null?r:!1)}resetCache(){}getWorksheetConfig(){return this._worksheetData}getLocation(){return[this.worksheet.getUnitId(),this.worksheet.getSheetId()]}set columnHeaderHeight(n){this._columnHeaderHeight=n,this._worksheetData.columnHeader.height=n}set rowHeaderWidth(n){this._rowHeaderWidth=n,this._worksheetData.rowHeader.width=n}get rowHeightAccumulation(){return this._rowHeightAccumulation}get rowTotalHeight(){return this._rowTotalHeight}get columnWidthAccumulation(){return this._columnWidthAccumulation}get columnTotalWidth(){return this._columnTotalWidth}get rowHeaderWidth(){return this._rowHeaderWidth}get columnHeaderHeight(){return this._columnHeaderHeight}setMarginLeft(n){this._marginLeft=n}setMarginTop(n){this._marginTop=n}setScale(n,r){this._updateLayout(),this._scaleX=n,this._scaleY=r||n,this._updateLayout()}setScroll(n,r){K.isDefine(n)&&(this._scrollX=n),K.isDefine(r)&&(this._scrollY=r)}get scrollX(){return this._scrollX}get scrollY(){return this._scrollY}get scaleX(){return this._scaleX}get scaleY(){return this._scaleY}get rowHeaderWidthAndMarginLeft(){return this.rowHeaderWidth+this._marginLeft}get columnHeaderHeightAndMarginTop(){return this.columnHeaderHeight+this._marginTop}get imageCacheMap(){return this._imageCacheMap}_generateRowMatrixCache(n,r,s){let i=0;const o=[],a=r;for(let l=0;l<n;l++){let c=s;if(this.worksheet.getRowFiltered(l))c=0;else if(a[l]!=null){const u=a[l];if(!u)continue;const{h=s,ah:d,ia:m}=u;(m==null||m===ae.TRUE)&&typeof d=="number"?c=d:c=h,u.hd===ae.TRUE&&(c=0)}i+=c,o.push(i)}return{rowTotalHeight:i,rowHeightAccumulation:o}}_generateColumnMatrixCache(n,r,s){let i=0;const o=[],a=r;for(let l=0;l<n;l++){let c=s;if(a[l]!=null){const u=a[l];if(!u)continue;u.w!=null&&(c=u.w),u.hd===ae.TRUE&&(c=0)}i+=c,o.push(i)}return{columnTotalWidth:i,columnWidthAccumulation:o}}intersectMergeRange(n,r){return!!this.worksheet.getMergedCell(n,r)}_getOverflowBound(n,r,s,i,o=St.LEFT){let a=0;if(r>s){const l=this._columnWidthAccumulation.length-1;for(let c=r;c>=s;c--){const u=c,h=this.worksheet.getCell(n,u);if(!pi(h)&&u!==r||this.intersectMergeRange(n,u))return u===r?u:u+1>l?l:u+1;const{startX:d,endX:m}=qn(n,u,this.rowHeightAccumulation,this.columnWidthAccumulation);if(o===St.CENTER&&u===r?a+=(m-d)/2:a+=m-d,i<a)return u}return r}for(let l=r;l<=s;l++){const c=l,u=this.worksheet.getCell(n,c);if(!pi(u)&&c!==r||this.intersectMergeRange(n,c))return c===r?c:c-1<0?0:c-1;const{startX:h,endX:d}=qn(n,c,this.rowHeightAccumulation,this.columnWidthAccumulation);if(o===St.CENTER&&c===r?a+=(d-h)/2:a+=d-h,i<a)return c}return s}_updateLayout(){if(!this.dirty)return;const{rowData:n,columnData:r,defaultRowHeight:s,defaultColumnWidth:i,rowCount:o,columnCount:a,rowHeader:l,columnHeader:c}=this._worksheetData,{rowTotalHeight:u,rowHeightAccumulation:h}=this._generateRowMatrixCache(o,n,s),{columnTotalWidth:d,columnWidthAccumulation:m}=this._generateColumnMatrixCache(a,r,i);this._rowHeaderWidth=l.hidden!==ae.TRUE?this._dynamicallyUpdateRowHeaderWidth(l):0,this._columnHeaderHeight=c.hidden!==ae.TRUE?c.height:0,this._rowTotalHeight=u,this._rowHeightAccumulation=h,this._columnTotalWidth=d,this._columnWidthAccumulation=m,this.makeDirty(!1)}calculate(){return this.resetCache(),this._updateLayout(),this}resetRangeCache(n){}_dynamicallyUpdateRowHeaderWidth(n){const s=`${this.worksheet.getRowCount()}`.length*8;return Math.max(n.width,s)}_hasUnMergedCellInRow(n,r,s){if(!this.worksheet.getMergeData())return!1;for(let o=r;o<=s;o++){const{isMerged:a,isMergedMainCell:l}=this.worksheet.getCellInfoInMergeData(n,o);if(!a&&!l)return!0}return!1}expandRangeByMerge(n){let{startRow:r,startColumn:s,endRow:i,endColumn:o}=n;const a=this._worksheetData.mergeData;if(!a)return{startRow:r,startColumn:s,endRow:i,endColumn:o};let l=!0;const c=new lt;for(;l;){l=!1;for(let u=0;u<a.length;u++){const{startRow:h,startColumn:d,endRow:m,endColumn:_}=a[u];if(c.getValue(h,d))continue;Hc({startColumn:s,startRow:r,endColumn:o,endRow:i},{startColumn:d,startRow:h,endColumn:_,endRow:m})&&(r=Math.min(r,h),s=Math.min(s,d),i=Math.max(i,m),o=Math.max(o,_),c.setValue(h,d,!0),l=!0)}}return{startRow:r,startColumn:s,endRow:i,endColumn:o}}getColumnCount(){return this._columnWidthAccumulation.length}getRowCount(){return this._rowHeightAccumulation.length}_getCellMergeInfo(n,r){return this.worksheet.getCellInfoInMergeData(n,r)}getNoMergeCellPositionByIndex(n,r,s=!0){return this.getNoMergeCellWithCoordByIndex(n,r,s)}getNoMergeCellWithCoordByIndex(n,r,s=!0){const{rowHeightAccumulation:i,columnWidthAccumulation:o,rowHeaderWidthAndMarginLeft:a,columnHeaderHeightAndMarginTop:l}=this;let{startY:c,endY:u,startX:h,endX:d}=qn(n,r,i,o);return s&&(c+=l,u+=l,h+=a,d+=a),{startY:c,endY:u,startX:h,endX:d}}getNoMergeCellPositionByIndexWithNoHeader(n,r){const{rowHeightAccumulation:s,columnWidthAccumulation:i}=this,{startY:o,endY:a,startX:l,endX:c}=qn(n,r,s,i);return{startY:o,endY:a,startX:l,endX:c}}getRowIndexByOffsetY(n,r,s,i){var l;const{rowHeightAccumulation:o}=this;n=ld(n,r,s,this.columnHeaderHeightAndMarginTop);let a=ir(o,n,i==null?void 0:i.firstMatch);return i!=null&&i.closeFirst&&Math.abs(o[a]-n)<Math.abs(n-((l=o[a-1])!=null?l:0))&&(a=a+1),a}getColumnIndexByOffsetX(n,r,s,i){var c;const o=ad(n,r,s,this.rowHeaderWidthAndMarginLeft),{columnWidthAccumulation:a}=this;let l=ir(a,o,i==null?void 0:i.firstMatch);return i!=null&&i.closeFirst&&Math.abs(a[l]-o)<Math.abs(o-((c=a[l-1])!=null?c:0))&&(l=l+1),l}getCellIndexByOffset(n,r,s,i,o,a){const l=this.getRowIndexByOffsetY(r,i,o,a),c=this.getColumnIndexByOffsetX(n,s,o,a);return{row:l,column:c}}getCellByOffset(n,r,s,i,o){const a=this==null?void 0:this.getCellIndexByOffset(n,r,s,i,o,{firstMatch:!0});return a?this.worksheet.getCellInfoInMergeData(a.row,a.column):null}getCellWithCoordByIndex(n,r,s=!0){const{rowHeightAccumulation:i,columnWidthAccumulation:o,rowHeaderWidthAndMarginLeft:a,columnHeaderHeightAndMarginTop:l}=this,c=qn(n,r,i,o,this.worksheet.getCellInfoInMergeData(n,r)),{isMerged:u,isMergedMainCell:h}=c;let{startY:d,endY:m,startX:_,endX:p,mergeInfo:I}=c,A=a,B=l;return s===!1&&(A=0,B=0),d+=B,m+=B,_+=A,p+=A,I.startY+=B,I.endY+=B,I.startX+=A,I.endX+=A,{actualRow:n,actualColumn:r,startX:_,startY:d,endX:p,endY:m,isMerged:u,isMergedMainCell:h,mergeInfo:I}}getCellWithCoordByOffset(n,r,s,i,o,a){const{row:l,column:c}=this.getCellIndexByOffset(n,r,s,i,o,a);return this.getCellWithCoordByIndex(l,c)}getOffsetByColumn(n){const{columnWidthAccumulation:r,rowHeaderWidthAndMarginLeft:s}=this,i=r.length-1,o=r[n];return o!=null?o+s:n<0?s:r[i]+s}getOffsetByRow(n){const{rowHeightAccumulation:r,columnHeaderHeightAndMarginTop:s}=this,i=r.length-1,o=r[n];return o!=null?o+s:n<0?s:r[i]+s}getOffsetRelativeToRowCol(n,r){const s=ir(this.columnWidthAccumulation,n);let i=0;s===0?i=n:i=n-this._columnWidthAccumulation[s-1];const o=ir(this.rowHeightAccumulation,r);let a=0;return o===0?a=r:a=r-this._rowHeightAccumulation[o-1],{row:o,column:s,columnOffset:i,rowOffset:a}}_updateConfigAndGetDocumentModel(n,r,s,i){var a,l,c,u,h;if(!i||!((a=n.body)!=null&&a.dataStream))return;n.documentStyle||(n.documentStyle={}),n.documentStyle.marginTop=(l=s.t)!=null?l:0,n.documentStyle.marginBottom=(c=s.b)!=null?c:2,n.documentStyle.marginLeft=(u=s.l)!=null?u:2,n.documentStyle.marginRight=(h=s.r)!=null?h:2,n.documentStyle.pageSize={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},n.documentStyle.renderConfig={...n.documentStyle.renderConfig,...i};const o=n.body.paragraphs||[];for(const d of o)d.paragraphStyle||(d.paragraphStyle={}),d.paragraphStyle.horizontalAlign=r;return new bt(n)}dispose(){super.dispose(),this._rowHeightAccumulation=[],this._columnWidthAccumulation=[],this._rowTotalHeight=0,this._columnTotalWidth=0,this._rowHeaderWidth=0,this._columnHeaderHeight=0,this._worksheetData=null,this._cellData=null,this._styles=null}},f.SheetSkeleton=rI([Zs(2,Re.Inject(Sn)),Zs(3,An),Zs(4,qo),Zs(5,Re.Inject(Re.Injector))],f.SheetSkeleton);function ua(e,t,n,r){const s=e-1,i=t-1,o=n[s]||0;let a=n[e];a==null&&(a=n[n.length-1]);const l=r[i]||0;let c=r[t];return c==null&&(c=r[r.length-1]),{startY:o,endY:a,startX:l,endX:c}}function sI(e,t,n,r){return ua(e,t,n,r)}function qn(e,t,n,r,s){e=K.clamp(e,0,n.length-1),t=K.clamp(t,0,r.length-1);let{startY:i,endY:o,startX:a,endX:l}=ua(e,t,n,r);if(!s)return{startY:i,endY:o,startX:a,endX:l,isMerged:!1,isMergedMainCell:!1,actualRow:e,actualColumn:t,mergeInfo:{startY:i,endY:o,startX:a,endX:l,startRow:e,startColumn:t,endRow:e,endColumn:t}};const{isMerged:c,isMergedMainCell:u,startRow:h,startColumn:d,endRow:m,endColumn:_}=s;let p={startRow:h,startColumn:d,endRow:m,endColumn:_,startY:i,endY:o,startX:a,endX:l};const I=n.length-1,A=r.length-1;if(c&&h!==-1&&d!==-1){const B=n[h-1]||0,x=n[m]||n[I],Y=r[d-1]||0,O=r[_]||r[A];p={...p,startY:B,endY:x,startX:Y,endX:O}}else if(!c&&m!==-1&&_!==-1){const B=n[m]||n[I],x=r[_]||r[A];p={...p,startY:i,endY:B,startX:a,endX:x}}return{isMerged:c,isMergedMainCell:u,actualRow:e,actualColumn:t,startY:i,endY:o,startX:a,endX:l,mergeInfo:p}}function ad(e,t,n,r){const{x:s}=n;return e/t+s-r}function ld(e,t,n,r){const{y:s}=n;return e=e/t+s-r,e}const iI=["script","style","meta","comment","link"];var cd=(e=>(e[e.INFO=0]="INFO",e[e.STOP=1]="STOP",e[e.WARNING=2]="WARNING",e))(cd||{}),ud=(e=>(e[e.DISABLED=0]="DISABLED",e[e.FULL_ALPHA=1]="FULL_ALPHA",e[e.FULL_HANGUL=2]="FULL_HANGUL",e[e.FULL_KATAKANA=3]="FULL_KATAKANA",e[e.HALF_ALPHA=4]="HALF_ALPHA",e[e.HALF_HANGUL=5]="HALF_HANGUL",e[e.HALF_KATAKANA=6]="HALF_KATAKANA",e[e.HIRAGANA=7]="HIRAGANA",e[e.NO_CONTROL=8]="NO_CONTROL",e[e.OFF=9]="OFF",e[e.ON=10]="ON",e))(ud||{}),hd=(e=>(e.BETWEEN="between",e.EQUAL="equal",e.GREATER_THAN="greaterThan",e.GREATER_THAN_OR_EQUAL="greaterThanOrEqual",e.LESS_THAN="lessThan",e.LESS_THAN_OR_EQUAL="lessThanOrEqual",e.NOT_BETWEEN="notBetween",e.NOT_EQUAL="notEqual",e))(hd||{}),dd=(e=>(e[e.TEXT=0]="TEXT",e[e.ARROW=1]="ARROW",e[e.CUSTOM=2]="CUSTOM",e))(dd||{}),fd=(e=>(e.VALID="valid",e.INVALID="invalid",e.VALIDATING="validating",e))(fd||{}),md=(e=>(e.CUSTOM="custom",e.LIST="list",e.LIST_MULTIPLE="listMultiple",e.NONE="none",e.TEXT_LENGTH="textLength",e.DATE="date",e.TIME="time",e.WHOLE="whole",e.DECIMAL="decimal",e.CHECKBOX="checkbox",e.ANY="any",e))(md||{}),oI=Object.getOwnPropertyDescriptor,aI=(e,t,n,r)=>{for(var s=r>1?void 0:r?oI(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},gd=(e,t)=>(n,r)=>t(n,r,e);let ha=class extends ze{constructor(e,t){super(),this._resourceManagerService=e,this._univerInstanceService=t,this._init()}_init(){const e=n=>{n.businesses.forEach(r=>{switch(r){case we.UNRECOGNIZED:case we.UNIVER_UNKNOWN:case we.UNIVER_SLIDE:case we.UNIVER_DOC:{this._univerInstanceService.getAllUnitsForType(we.UNIVER_DOC).forEach(s=>{const o=(s.getSnapshot().resources||[]).find(a=>a.name===n.pluginName);if(o)try{const a=n.parseJson(o.data);n.onLoad(s.getUnitId(),a)}catch{console.error(`Load Document{${s.getUnitId()}} Resources{${n.pluginName}} Data Error.`)}});break}case we.UNIVER_SHEET:this._univerInstanceService.getAllUnitsForType(we.UNIVER_SHEET).forEach(s=>{const o=(s.getSnapshot().resources||[]).find(a=>a.name===n.pluginName);if(o)try{const a=n.parseJson(o.data);n.onLoad(s.getUnitId(),a)}catch{console.error(`Load Workbook{${s.getUnitId()}} Resources{${n.pluginName}} Data Error.`)}})}})};this._resourceManagerService.getAllResourceHooks().forEach(n=>e(n)),this.disposeWithMe(this._resourceManagerService.register$.subscribe(n=>e(n))),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitAdded$(we.UNIVER_SHEET).subscribe(n=>{this._resourceManagerService.loadResources(n.getUnitId(),n.getSnapshot().resources)})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitAdded$(we.UNIVER_DOC).subscribe(n=>{const r=n.getUnitId();Ca(r)||this._resourceManagerService.loadResources(n.getUnitId(),n.getSnapshot().resources)})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(we.UNIVER_SHEET).subscribe(n=>{this._resourceManagerService.unloadResources(n.getUnitId())})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(we.UNIVER_DOC).subscribe(n=>{this._resourceManagerService.unloadResources(n.getUnitId())}))}saveUnit(e){const t=this._univerInstanceService.getUnit(e);if(!t)return null;const n=this._resourceManagerService.getResources(e,t.type),r=K.deepClone(t.getSnapshot());return r.resources=n,r}};ha=aI([gd(0,Re.Inject(Ws)),gd(1,Re.Inject(Xn))],ha);class lI{constructor(t={},n){C(this,"_startedTypes",new Set);C(this,"_injector");C(this,"_disposingCallbacks",new Zr);const r=this._injector=cI(n,t==null?void 0:t.override),{theme:s,darkMode:i,locale:o,locales:a,logLevel:l}=t;s&&this._injector.get(Xs).setTheme(s),i&&this._injector.get(Xs).setDarkMode(i),a&&this._injector.get(Sn).load(a),o&&this._injector.get(Sn).setLocale(o),l&&this._injector.get(gt).setLogLevel(l),this._init(r)}get _univerInstanceService(){return this._injector.get(Xn)}get _pluginService(){return this._injector.get(f.PluginService)}__getInjector(){return this._injector}onDispose(t){const n=this._disposingCallbacks.add(je(t));return je(()=>n.dispose(!0))}dispose(){this._disposingCallbacks.dispose(),this._injector.dispose()}setLocale(t){this._injector.get(Sn).setLocale(t)}createUnit(t,n){return this._univerInstanceService.createUnit(t,n)}createUniverSheet(t){return this._injector.get(gt).warn("[Univer]","Univer.createUniverSheet is deprecated, use createUnit instead"),this._univerInstanceService.createUnit(we.UNIVER_SHEET,t)}createUniverDoc(t){return this._injector.get(gt).warn("[Univer]","Univer.createUniverDoc is deprecated, use createUnit instead"),this._univerInstanceService.createUnit(we.UNIVER_DOC,t)}createUniverSlide(t){return this._injector.get(gt).warn("[Univer]","Univer.createUniverSlide is deprecated, use createUnit instead"),this._univerInstanceService.createUnit(we.UNIVER_SLIDE,t)}_init(t){this._univerInstanceService.registerCtorForType(we.UNIVER_SHEET,f.Workbook),this._univerInstanceService.registerCtorForType(we.UNIVER_DOC,bt),this._univerInstanceService.registerCtorForType(we.UNIVER_SLIDE,ea);const n=t.get(Xn);n.__setCreateHandler((r,s,i,o)=>{if(!this._startedTypes.has(r)){this._pluginService.startPluginsForType(r),this._startedTypes.add(r);const l=t.createInstance(i,s);return n.__addUnit(l,o),this._tryProgressToReady(),l}const a=t.createInstance(i,s);return n.__addUnit(a,o),a})}_tryProgressToReady(){this._injector.get(f.LifecycleService).stage<ke.Ready&&(this._injector.get(f.LifecycleService).stage=ke.Ready)}registerPlugin(t,n){this._pluginService.registerPlugin(t,n)}}function cI(e,t){const n=qh([[vh],[Sn],[Xs],[f.LifecycleService],[f.PluginService],[Dr],[Xn,{useClass:f.UniverInstanceService}],[Kh,{useClass:Xh}],[gt,{useClass:Ma,lazy:!0}],[sr,{useClass:f.CommandService}],[qs,{useClass:f.LocalUndoRedoService,lazy:!0}],[qo,{useClass:Ih}],[An,{useClass:ya}],[Ws,{useClass:f.ResourceManagerService,lazy:!0}],[sa,{useClass:ha,lazy:!0}],[Fu,{useClass:f.AuthzIoLocalService}],[zh,{useClass:f.MentionIOLocalService,lazy:!0}]],t),r=e?e.createChild(n):new Re.Injector(n);return Ra(r,[[Dr],[sa]]),r}Od(),f.ABCToNumber=b_,f.AUTO_HEIGHT_FOR_MERGED_CELLS=Ea,f.AbsoluteRefType=Ne,f.ActionIterator=jn,f.AlignTypeH=Tc,f.AlignTypeV=yc,f.ArrangeTypeEnum=Lc,f.ArrowsAndMarkersShapes=Xa,f.AsyncInterceptorManager=Yd,f.AsyncLock=Dd,f.AutoFillSeries=xa,f.BaselineOffset=Bt,f.BasicShapes=Ka,f.BlockType=lc,f.BooleanNumber=ae,f.BorderStyleTypes=Ue,f.BorderType=Ba,f.BuildTextUtils=Je,f.BulletAlignment=Sr,f.COLORS=hi,f.CanceledError=xd,f.CellModeEnum=Tn,f.CellValueType=Xt,f.Color=fn,f.ColorBuilder=ss,f.ColorKit=Ot,f.ColorType=_t,f.ColumnSeparatorType=hc,f.CommandType=rr,f.CommonHideTypes=$a,f.ConfigService=Ih,f.ContextService=ya,f.CopyPasteType=Ha,f.CustomCommandExecutionError=Xr,f.CustomDecorationType=_n,f.CustomRangeType=en,f.DEFAULT_CELL=n_,f.DEFAULT_DOC=yo,f.DEFAULT_DOCUMENT_SUB_COMPONENT_ID=Kp,f.DEFAULT_EMPTY_DOCUMENT_VALUE=_a,f.DEFAULT_RANGE=e_,f.DEFAULT_RANGE_ARRAY=Qg,f.DEFAULT_SELECTION=t_,f.DEFAULT_SLIDE=kc,f.DEFAULT_STYLES=rt,f.DEFAULT_WORKSHEET_COLUMN_COUNT=Uh,f.DEFAULT_WORKSHEET_COLUMN_COUNT_KEY=ER,f.DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT=xh,f.DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT_KEY=SR,f.DEFAULT_WORKSHEET_COLUMN_WIDTH=kh,f.DEFAULT_WORKSHEET_COLUMN_WIDTH_KEY=RR,f.DEFAULT_WORKSHEET_ROW_COUNT=Dh,f.DEFAULT_WORKSHEET_ROW_COUNT_KEY=pR,f.DEFAULT_WORKSHEET_ROW_HEIGHT=Ph,f.DEFAULT_WORKSHEET_ROW_HEIGHT_KEY=CR,f.DEFAULT_WORKSHEET_ROW_TITLE_WIDTH=Fh,f.DEFAULT_WORKSHEET_ROW_TITLE_WIDTH_KEY=IR,f.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY=ni,f.DOCS_NORMAL_EDITOR_UNIT_ID_KEY=ti,f.DOCS_ZEN_EDITOR_UNIT_ID_KEY=ga,f.DOC_DRAWING_PRINTING_COMPONENT_KEY=a_,f.DOC_RANGE_TYPE=ul,f.DashStyleType=pc,f.DataStreamTreeNodeType=yu,f.DataStreamTreeTokenType=at,f.DataValidationErrorStyle=cd,f.DataValidationImeMode=ud,f.DataValidationOperator=hd,f.DataValidationRenderMode=dd,f.DataValidationStatus=fd,f.DataValidationType=md,f.DeleteDirection=Wa,f.DependentOn=WR,f.DesktopLogService=Ma,f.DeveloperMetadataVisibility=ja,f.Dimension=Ya,f.Direction=Ga,f.Disposable=ze,f.DisposableCollection=Zr,f.DocStyleType=oc,f.DocumentDataModel=bt,f.DocumentFlavor=ho,f.DrawingTypeEnum=Dc,f.EDITOR_ACTIVATED=Sh,f.EXTENSION_NAMES=Fc,f.ErrorService=vh,f.EventState=Pu,f.EventSubject=Xp,f.FOCUSING_COMMON_DRAWINGS=sR,f.FOCUSING_DOC=Br,f.FOCUSING_EDITOR_BUT_HIDDEN=JC,f.FOCUSING_EDITOR_INPUT_FORMULA=QC,f.FOCUSING_EDITOR_STANDALONE=tR,f.FOCUSING_FX_BAR_EDITOR=Oh,f.FOCUSING_PANEL_EDITOR=nR,f.FOCUSING_SHEET=Kn,f.FOCUSING_SLIDE=$r,f.FOCUSING_UNIT=xr,f.FOCUSING_UNIVER_EDITOR=eR,f.FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE=rR,f.FORMULA_EDITOR_ACTIVATED=iR,f.FollowNumberWithType=ac,f.FontItalic=es,f.FontStyleType=kn,f.FontWeight=ts,f.GridType=cc,f.HLSColor=il,f.HorizontalAlign=St,f.IAuthzIoService=Fu,f.ICommandService=sr,f.IConfigService=qo,f.IContextService=An,f.IImageIoService=Jo,f.ILocalStorageService=UR,f.ILogService=gt,f.IMentionIOService=zh,f.IPermissionService=Kh,f.IResourceLoaderService=sa,f.IResourceManagerService=Ws,f.IS_ROW_STYLE_PRECEDE_COLUMN_STYLE=pa,f.IUndoRedoService=qs,f.IUniverInstanceService=Xn,f.ImageCacheMap=rd,f.ImageSourceType=Zo,f.ImageUploadStatusType=wh,f.InterceptorEffectEnum=bn,f.InterceptorManager=Hd,f.InterpolationPointType=Va,f.JSON1=B_,f.JSONX=Wt,f.LRUHelper=ur,f.LRUMap=cr,f.LifecycleStages=ke,f.LifecycleUnreachableError=Gh,f.ListGlyphType=fe,f.LocaleService=Sn,f.LocaleType=ar,f.LogLevel=Na,f.MOVE_BUFFER_VALUE=or,f.MemoryCursor=un,f.MentionType=Qr,f.NAMED_STYLE_MAP=s_,f.NAMED_STYLE_SPACE_MAP=i_,f.NamedStyleType=qe,f.NilCommand=Da,f.NumberUnitType=Ac,f.ObjectMatrix=lt,f.ObjectRelativeFromH=wc,f.ObjectRelativeFromV=bc,f.OtherShapes=qa,f.PAGE_SIZE=l_,f.PAPER_TYPES=Jg,f.PRESET_LIST_TYPE=yr,f.PRINT_CHART_COMPONENT_KEY=o_,f.PageElementType=Uc,f.PageOrientType=Mc,f.PageType=fo,f.PaperType=ht,f.ParagraphElementType=fc,f.ParagraphStyleBuilder=Lr,f.ParagraphStyleValue=Mr,f.PermissionService=Xh,f.PermissionStatus=ta,f.Plugin=ra,f.PositionedObjectLayoutType=gc,f.PresetListType=kt,f.ProtectionType=za,f.QuickListType=pu,f.QuickListTypeMap=G_,f.RANGE_DIRECTION=cl,f.RANGE_TYPE=pe,f.RBush=Ns,f.RCDisposable=lf,f.RGBA_PAREN=xf,f.RGB_PAREN=Ff,f.ROTATE_BUFFER_VALUE=Fa,f.RTree=qR,f.Range=xn,f.Rectangle=tn,f.RedoCommand=nd,f.RedoCommandId=Qh,f.RefAlias=w_,f.Registry=ii,f.RegistryAsMap=oi,f.RelativeDate=Ja,f.RelativeSlideLink=Pc,f.RgbColor=is,f.RichTextBuilder=Cn,f.RichTextValue=sn,f.RxDisposable=af,f.SHEET_EDITOR_UNITS=r_,f.SectionType=uc,f.SheetTypes=Qa,f.SheetViewModel=$h,f.SliceBodyType=Ao,f.SlideDataModel=ea,f.SpacingRule=_c,f.SpecialShapes=Za,f.Styles=bh,f.THEME_COLORS=sl,f.TabStopAlignment=Ec,f.TableAlignmentType=Rc,f.TableLayoutType=Ic,f.TableRowHeightRule=Oc,f.TableSizeType=Cc,f.TableTextWrapType=Sc,f.TextDecoration=el,f.TextDecorationBuilder=rn,f.TextDirection=lr,f.TextDirectionType=dc,f.TextStyleBuilder=nn,f.TextStyleValue=Nr,f.TextX=Me,f.TextXActionType=J,f.ThemeColor=os,f.ThemeColorType=it,f.ThemeColors=ns,f.ThemeService=Xs,f.Tools=K,f.UndoCommand=td,f.UndoCommandId=ed,f.UnitModel=Us,f.Univer=lI,f.UniverInstanceType=we,f.UpdateDocsAttributeType=Ce,f.UserManagerService=Dr,f.VerticalAlign=hn,f.VerticalAlignmentType=vc,f.Worksheet=Wr,f.WrapStrategy=dn,f.WrapTextType=mc,f.addLinkToDocumentModel=yh,f.afterInitApply=Ef,f.afterTime=_f,f.awaitTime=ZR,f.binSearchFirstGreaterThanTarget=ka,f.binarySearchArray=Cf,f.bufferDebounceTime=gf,f.cellToRange=mm,f.characterSpacingControlType=Nc,f.checkForSubstrings=_m,f.checkIfMove=If,f.checkParagraphHasBullet=Jm,f.checkParagraphHasIndent=Qm,f.checkParagraphHasIndentByStyle=vl,f.codeToBlob=Rf,f.composeBody=To,f.composeInterceptors=Sa,f.composeStyles=ci,f.concatMatrixArray=rm,f.convertBodyToHtml=kf,f.convertCellToRange=hl,f.convertObservableToBehaviorSubject=pf,f.covertCellValue=Ei,f.covertCellValues=gm,f.covertTextRunToHtml=ui,f.createAsyncInterceptorKey=Wd,f.createDefaultUser=js,f.createDocumentModelWithStyle=Hr,f.createInterceptorKey=$d,f.createInternalEditorID=kd,f.createRowColIter=po,f.dayjs=Ht,f.debounce=GC,f.dedupe=vd,f.dedupeBy=wd,f.deepCompare=Ci,f.delayAnimationFrame=JR,f.deleteContent=bl,f.extractPureTextFromCell=Wh,f.fromCallback=Ua,f.fromEventSubject=qp,f.fromObservable=of,f.generateRandomId=$t,f.get=mh,f.getArrayLength=Zt,f.getBodySlice=wt,f.getBodySliceHtml=rs,f.getBorderStyleType=hm,f.getCellCoordByIndexSimple=ua,f.getCellInfoInMergeData=tm,f.getCellPositionByIndexSimple=sI,f.getCellValueType=Jf,f.getCellWithCoordByIndexCore=qn,f.getColorStyle=Lt,f.getCustomBlockSlice=Su,f.getCustomDecorationSlice=vu,f.getCustomRangeSlice=Ou,f.getDocsUpdateBody=dm,f.getIntersectRange=Hc,f.getOriginCellValue=vR,f.getParagraphsSlice=Iu,f.getPlainText=Hs,f.getReverseDirection=Sf,f.getSectionBreakSlice=ep,f.getTableSlice=Ru,f.getTextRunSlice=$s,f.getTransformOffsetX=ad,f.getTransformOffsetY=ld,f.getWorksheetUID=TR,f.groupBy=Td,f.handleStyleToString=um,f.hashAlgorithm=tg,f.horizontalLineSegmentsSubtraction=Es,f.insertMatrixArray=mi,f.insertTextToContent=wl,f.invertColorByHSL=qd,f.invertColorByMatrix=Jd,f.isBlackColor=qf,f.isBooleanString=Pd,f.isCellCoverable=pi,f.isCellV=ll,f.isEmptyCell=dl,f.isFormulaId=cm,f.isFormulaString=fl,f.isICellData=al,f.isInternalEditorID=Ca,f.isNodeEnv=Pf,f.isNotNullOrUndefined=Nh,f.isNullCell=Qf,f.isNumeric=ba,f.isPatternEqualWithoutDecimal=Zg,f.isRangesEqual=lR,f.isRealNum=eg,f.isSafeNumeric=ef,f.isSameStyleTextRun=ml,f.isUnitRangesEqual=cR,f.isValidRange=fm,f.isWhiteColor=Zf,f.makeArray=yd,f.makeCellRangeToRangeData=lm,f.makeCellToSelection=am,f.makeCustomRangeStream=mp,f.mapObjectMatrix=nm,f.merge=Xo,f.mergeOverrideWithDependencies=qh,f.mergeSets=rf,f.mergeWith=XC,f.mergeWorksheetSnapshotWithDefault=Bh,f.mixinClass=Qd,f.moveMatrixArray=_i,f.moveRangeByOffset=g_,f.nameCharacterCheck=XR,f.normalizeBody=tp,f.normalizeTextRuns=Tr,f.numberToABC=T_,f.numberToListABC=y_,f.numfmt=qg,f.queryObjectMatrix=v_,f.registerDependencies=Fd,f.remove=tr,f.repeatStringNumTimes=Gc,f.replaceInDocumentBody=Vp,f.requestImmediateMacroTask=nf,f.rotate=Ad,f.searchArray=ir,f.searchInOrderedArray=Pa,f.selectionToArray=em,f.sequence=Ta,f.sequenceAsync=Aa,f.sequenceExecute=Jr,f.sequenceExecuteAsync=mf,f.set=ZC,f.shallowEqual=Ia,f.skipParseTagNames=iI,f.sliceMatrixArray=sm,f.sortRules=N_,f.sortRulesByDesc=M_,f.sortRulesFactory=br,f.spliceArray=gi,f.splitIntoGrid=_o,f.takeAfter=ai,f.textDiff=Mo,f.throttle=Bd,f.toDisposable=je,f.touchDependencies=Ra,f.updateAttributeByDelete=wu,f.updateAttributeByInsert=bu,f.willLoseNumericPrecision=tf,Object.keys(Re).forEach(e=>{e!=="default"&&!Object.prototype.hasOwnProperty.call(f,e)&&Object.defineProperty(f,e,{enumerable:!0,get:()=>Re[e]})}),Object.defineProperty(f,Symbol.toStringTag,{value:"Module"})});
8
+ `,customBlocks:[],customRanges:[],paragraphs:[{startIndex:0}],textRuns:[],tables:[],sectionBreaks:[]}})}static create(n){return new Cn(n!=null?n:Cn.newEmptyData())}insertText(n,r,s){var u,h;let i=((h=(u=this._data.body)==null?void 0:u.dataStream.length)!=null?h:2)-2,o,a;if(typeof n=="string"?o=n:(i=Math.min(n,i),o=r),typeof r=="object"?a=r instanceof nn?r.build():r:a=s instanceof nn?s.build():s,!o)return this;const l={dataStream:o,textRuns:a?[{ts:a,st:i,ed:i+o.length}]:[]},c=Je.selection.replace({doc:this._doc,selection:{startOffset:i,endOffset:i,collapsed:!0},body:l});if(!c)throw new Error("Insert text failed, please check.");return Me.apply(this._doc.getBody(),c.serialize()),this}insertRichText(n,r){var a,l;let s=((l=(a=this._data.body)==null?void 0:a.dataStream.length)!=null?l:2)-2,i;typeof n=="object"?i=n instanceof sn?n.getData():n:(s=Math.min(n,s),i=r instanceof sn?r.getData():r);const o=Je.selection.replace({doc:this._doc,selection:{startOffset:s,endOffset:s,collapsed:!0},body:i.body});if(!o)throw new Error("Insert text failed, please check.");return Me.apply(this._doc.getBody(),o.serialize()),this}delete(n,r){if(r!==void 0){if(!r)return this;const s=Je.selection.delete([{startOffset:n,endOffset:n+r,collapsed:!0}],this._data.body);Me.apply(this._doc.getBody(),s)}return this}setStyle(n,r,s){const i={dataStream:"",textRuns:[{ts:s instanceof nn?s.build():s,st:0,ed:r-n}]},o=Je.selection.retain([{startOffset:n,endOffset:r,collapsed:!0}],i);return Me.apply(this._doc.getBody(),o),this}setLink(n,r,s){const i=Je.customRange.add({rangeType:en.HYPERLINK,rangeId:$t(),properties:{url:s},ranges:[{startOffset:n,endOffset:r,collapsed:!1}],body:this._data.body});if(!i)throw new Error("Insert text failed, please check.");return Me.apply(this._doc.getBody(),i.serialize()),this}cancelLink(n,r){if(typeof n=="string"){const s=Je.customRange.delete({rangeId:n,documentDataModel:this._doc});if(!s)throw new Error("Insert text failed, please check.");Me.apply(this._doc.getBody(),s.serialize())}else this.slice(n,r).getLinks().forEach(i=>{const o=Je.customRange.delete({rangeId:i.rangeId,documentDataModel:this._doc});if(!o)throw new Error("Insert text failed, please check.");Me.apply(this._doc.getBody(),o.serialize())});return this}updateLink(n,r){var i,o;const s=(o=(i=this._data.body)==null?void 0:i.customRanges)==null?void 0:o.find(a=>a.rangeId===n);if(!s)throw new Error("Link not found");return s.properties.url=r,this}insertParagraph(n,r){var o,a;let s,i;return typeof n=="object"?(s={dataStream:"\r",paragraphs:[{startIndex:0,paragraphStyle:n.build()}]},i=((a=(o=this._data.body)==null?void 0:o.dataStream.length)!=null?a:2)-2):(i=n,s={dataStream:"\r",paragraphs:[{startIndex:0,paragraphStyle:r==null?void 0:r.build()}]}),this.insertRichText(i,sn.create({body:s,id:"d",documentStyle:{}})),this}insertLink(n,r,s){let i="",o="";typeof n=="string"?(i=n,o=r):(i=r,o=s);const a=Cn.createByBody({dataStream:i,customRanges:[{rangeType:en.HYPERLINK,rangeId:$t(),properties:{url:o},startIndex:0,endIndex:i.length-1}]});return typeof n=="number"?this.insertRichText(n,a):this.insertRichText(a)}}const Kp="__default_document_sub_component_id20231101__";class Pu{constructor(){C(this,"skipNextObservers",!1);C(this,"lastReturnValue");C(this,"isStopPropagation",!1)}stopPropagation(){this.isStopPropagation=!0}}class Xp extends oe.Subject{constructor(){super(...arguments);C(this,"_sortedObservers",[])}subscribe(){throw new Error("[EventSubject]: please use `subscribeEvent` instead of `subscribe` method for `EventSubject`.")}next(){throw new Error("[EventSubject]: please use `emitEvent` instead of `next` method for `EventSubject`.")}unsubscribe(){super.unsubscribe(),this._sortedObservers.length=0}complete(){super.complete(),this._sortedObservers.length=0}subscribeEvent(n){let r;typeof n=="function"?r={next:([i,o])=>n(i,o)}:r=n;const s=super.subscribe(r);return this._sortedObservers.push(r),this._sortedObservers.sort((i,o)=>{var a,l;return((a=i.priority)!=null?a:0)-((l=o.priority)!=null?l:0)}),s.add(()=>this._sortedObservers=this._sortedObservers.filter(i=>i!==r)),s}clearObservers(){this._sortedObservers.forEach(n=>{var r;return(r=n.complete)==null?void 0:r.call(n)}),this._sortedObservers.length=0}emitEvent(n){var r;if(!this.closed){const s=new Pu;s.lastReturnValue=n;for(const i of this._sortedObservers){const o=(r=i.next)==null?void 0:r.call(i,[n,s]);if(s.lastReturnValue=o,s.skipNextObservers)return{handled:!0,lastReturnValue:s.lastReturnValue,stopPropagation:s.isStopPropagation}}return{handled:this._sortedObservers.length>0,lastReturnValue:s.lastReturnValue,stopPropagation:s.isStopPropagation}}throw new Error("[EventSubject]: cannot emit event on a closed subject.")}}function qp(e){return new oe.Observable(t=>{const n=e.subscribeEvent(r=>{t.next(r)});return()=>n.unsubscribe()})}const Ws=Re.createIdentifier("core.resource-manager.service"),Po={[Pt.Editor]:"Editor",[Pt.Owner]:"Owner",[Pt.Reader]:"Reader",[Pt.UNRECOGNIZED]:"UNRECOGNIZED"},js=e=>e?{userID:`${Po[e]}_${K.generateRandomId(8)}`,name:Po[e],avatar:""}:{userID:"",name:"",avatar:"",anonymous:!0,canBindAnonymous:!1},Zp=(e,t)=>e.startsWith(Po[t]);class Dr extends ze{constructor(){super(...arguments);C(this,"_model",new Map);C(this,"_userChange$",new oe.Subject);C(this,"userChange$",this._userChange$.asObservable());C(this,"_currentUser$",new oe.BehaviorSubject(js()));C(this,"currentUser$",this._currentUser$.asObservable())}dispose(){super.dispose(),this._model.clear(),this._userChange$.complete(),this._currentUser$.complete()}getCurrentUser(){return this._currentUser$.getValue()}setCurrentUser(n){this.addUser(n),this._currentUser$.next(n)}addUser(n){this._model.set(n.userID,n),this._userChange$.next({type:"add",user:n})}getUser(n,r){const s=this._model.get(n);if(s)return s;r&&r()}delete(n){const r=this.getUser(n);this._model.delete(n),r&&this._userChange$.next({type:"delete",user:r})}clear(){this._model.clear(),this._userChange$.next({type:"clear"})}list(){return Array.from(this._model.values())}}var Jp=Object.getOwnPropertyDescriptor,Qp=(e,t,n,r)=>{for(var s=r>1?void 0:r?Jp(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},ku=(e,t)=>(n,r)=>t(n,r,e);f.AuthzIoLocalService=class{constructor(t,n){C(this,"_permissionMap",new Map([]));this._resourceManagerService=t,this._userManagerService=n,this._initSnapshot(),this._initDefaultUser()}_initDefaultUser(){const t=this._userManagerService.getCurrentUser();t&&t.userID||this._userManagerService.setCurrentUser(js(Pt.Owner))}_getRole(t){const n=this._userManagerService.getCurrentUser();return n?Zp(n.userID,t):!1}_initSnapshot(){this._resourceManagerService.registerPluginResource({toJson:t=>{const n=[...this._permissionMap.keys()].reduce((r,s)=>{const i=this._permissionMap.get(s);return r[s]=i,r},{});return JSON.stringify(n)},parseJson:t=>JSON.parse(t),pluginName:"SHEET_AuthzIoMockService_PLUGIN",businesses:[we.UNIVER_SHEET,we.UNIVER_DOC,we.UNIVER_SLIDE],onLoad:(t,n)=>{for(const r in n)this._permissionMap.set(r,n[r])},onUnLoad:()=>{this._permissionMap.clear()}})}async create(t){return $t(8)}async allowed(t){return Promise.resolve([])}async batchAllowed(t){return Promise.resolve([])}async list(t){const n=[];return t.objectIDs.forEach(r=>{const s=this._permissionMap.get(r);if(s){const i={objectID:r,unitID:t.unitID,objectType:s.objectType,name:s.name,shareOn:!1,shareRole:Pt.Owner,shareScope:-1,scope:{read:Eo.AllCollaborator,edit:Eo.AllCollaborator},creator:js(Pt.Owner),strategies:[{action:6,role:1},{action:16,role:1},{action:17,role:1},{action:18,role:1},{action:19,role:1},{action:33,role:1},{action:34,role:1},{action:35,role:1},{action:36,role:1},{action:37,role:1},{action:38,role:1},{action:39,role:1},{action:40,role:1}],actions:t.actions.map(o=>({action:o,allowed:this._getRole(Pt.Owner)||this._getRole(Pt.Editor)}))};n.push(i)}}),n}async listCollaborators(){return[]}async listRoles(){return{roles:[],actions:[]}}async deleteCollaborator(){}async update(t){}async updateCollaborator(){}async createCollaborator(){}async putCollaborators(t){}},f.AuthzIoLocalService=Qp([ku(0,Ws),ku(1,Re.Inject(Dr))],f.AuthzIoLocalService);const Fu=Re.createIdentifier("IAuthzIoIoService");var xu=typeof global=="object"&&global&&global.Object===Object&&global,eE=typeof self=="object"&&self&&self.Object===Object&&self,Rn=xu||eE||Function("return this")(),Yn=Rn.Symbol,Bu=Object.prototype,tE=Bu.hasOwnProperty,nE=Bu.toString,Ur=Yn?Yn.toStringTag:void 0;function rE(e){var t=tE.call(e,Ur),n=e[Ur];try{e[Ur]=void 0;var r=!0}catch{}var s=nE.call(e);return r&&(t?e[Ur]=n:delete e[Ur]),s}var sE=Object.prototype,iE=sE.toString;function oE(e){return iE.call(e)}var aE="[object Null]",lE="[object Undefined]",$u=Yn?Yn.toStringTag:void 0;function Pr(e){return e==null?e===void 0?lE:aE:$u&&$u in Object(e)?rE(e):oE(e)}function Gn(e){return e!=null&&typeof e=="object"}var cE="[object Symbol]";function Ys(e){return typeof e=="symbol"||Gn(e)&&Pr(e)==cE}function uE(e,t){for(var n=-1,r=e==null?0:e.length,s=Array(r);++n<r;)s[n]=t(e[n],n,e);return s}var Vn=Array.isArray,Hu=Yn?Yn.prototype:void 0,Wu=Hu?Hu.toString:void 0;function ju(e){if(typeof e=="string")return e;if(Vn(e))return uE(e,ju)+"";if(Ys(e))return Wu?Wu.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var hE=/\s/;function dE(e){for(var t=e.length;t--&&hE.test(e.charAt(t)););return t}var fE=/^\s+/;function mE(e){return e&&e.slice(0,dE(e)+1).replace(fE,"")}function Et(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Yu=NaN,gE=/^[-+]0x[0-9a-f]+$/i,_E=/^0b[01]+$/i,pE=/^0o[0-7]+$/i,EE=parseInt;function Gu(e){if(typeof e=="number")return e;if(Ys(e))return Yu;if(Et(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Et(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=mE(e);var n=_E.test(e);return n||pE.test(e)?EE(e.slice(2),n?2:8):gE.test(e)?Yu:+e}function Vu(e){return e}var CE="[object AsyncFunction]",RE="[object Function]",IE="[object GeneratorFunction]",SE="[object Proxy]";function ko(e){if(!Et(e))return!1;var t=Pr(e);return t==RE||t==IE||t==CE||t==SE}var Fo=Rn["__core-js_shared__"],zu=function(){var e=/[^.]+$/.exec(Fo&&Fo.keys&&Fo.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function OE(e){return!!zu&&zu in e}var vE=Function.prototype,wE=vE.toString;function bE(e){if(e!=null){try{return wE.call(e)}catch{}try{return e+""}catch{}}return""}var AE=/[\\^$.*+?()[\]{}|]/g,TE=/^\[object .+?Constructor\]$/,yE=Function.prototype,NE=Object.prototype,ME=yE.toString,LE=NE.hasOwnProperty,DE=RegExp("^"+ME.call(LE).replace(AE,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function UE(e){if(!Et(e)||OE(e))return!1;var t=ko(e)?DE:TE;return t.test(bE(e))}function PE(e,t){return e==null?void 0:e[t]}function xo(e,t){var n=PE(e,t);return UE(n)?n:void 0}var Ku=Object.create,kE=function(){function e(){}return function(t){if(!Et(t))return{};if(Ku)return Ku(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();function FE(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function xE(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}var BE=800,$E=16,HE=Date.now;function WE(e){var t=0,n=0;return function(){var r=HE(),s=$E-(r-n);if(n=r,s>0){if(++t>=BE)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function jE(e){return function(){return e}}var Gs=function(){try{var e=xo(Object,"defineProperty");return e({},"",{}),e}catch{}}(),YE=Gs?function(e,t){return Gs(e,"toString",{configurable:!0,enumerable:!1,value:jE(t),writable:!0})}:Vu,GE=WE(YE),VE=9007199254740991,zE=/^(?:0|[1-9]\d*)$/;function Bo(e,t){var n=typeof e;return t=t==null?VE:t,!!t&&(n=="number"||n!="symbol"&&zE.test(e))&&e>-1&&e%1==0&&e<t}function $o(e,t,n){t=="__proto__"&&Gs?Gs(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function Vs(e,t){return e===t||e!==e&&t!==t}var KE=Object.prototype,XE=KE.hasOwnProperty;function Xu(e,t,n){var r=e[t];(!(XE.call(e,t)&&Vs(r,n))||n===void 0&&!(t in e))&&$o(e,t,n)}function qE(e,t,n,r){var s=!n;n||(n={});for(var i=-1,o=t.length;++i<o;){var a=t[i],l=void 0;l===void 0&&(l=e[a]),s?$o(n,a,l):Xu(n,a,l)}return n}var qu=Math.max;function ZE(e,t,n){return t=qu(t===void 0?e.length-1:t,0),function(){for(var r=arguments,s=-1,i=qu(r.length-t,0),o=Array(i);++s<i;)o[s]=r[t+s];s=-1;for(var a=Array(t+1);++s<t;)a[s]=r[s];return a[t]=n(o),FE(e,this,a)}}function JE(e,t){return GE(ZE(e,t,Vu),e+"")}var QE=9007199254740991;function Zu(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=QE}function Ho(e){return e!=null&&Zu(e.length)&&!ko(e)}function e0(e,t,n){if(!Et(n))return!1;var r=typeof t;return(r=="number"?Ho(n)&&Bo(t,n.length):r=="string"&&t in n)?Vs(n[t],e):!1}function Ju(e){return JE(function(t,n){var r=-1,s=n.length,i=s>1?n[s-1]:void 0,o=s>2?n[2]:void 0;for(i=e.length>3&&typeof i=="function"?(s--,i):void 0,o&&e0(n[0],n[1],o)&&(i=s<3?void 0:i,s=1),t=Object(t);++r<s;){var a=n[r];a&&e(t,a,r,i)}return t})}var t0=Object.prototype;function Qu(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||t0;return e===n}function n0(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var r0="[object Arguments]";function eh(e){return Gn(e)&&Pr(e)==r0}var th=Object.prototype,s0=th.hasOwnProperty,i0=th.propertyIsEnumerable,Wo=eh(function(){return arguments}())?eh:function(e){return Gn(e)&&s0.call(e,"callee")&&!i0.call(e,"callee")};function o0(){return!1}var nh=typeof f=="object"&&f&&!f.nodeType&&f,rh=nh&&typeof module=="object"&&module&&!module.nodeType&&module,a0=rh&&rh.exports===nh,sh=a0?Rn.Buffer:void 0,l0=sh?sh.isBuffer:void 0,ih=l0||o0,c0="[object Arguments]",u0="[object Array]",h0="[object Boolean]",d0="[object Date]",f0="[object Error]",m0="[object Function]",g0="[object Map]",_0="[object Number]",p0="[object Object]",E0="[object RegExp]",C0="[object Set]",R0="[object String]",I0="[object WeakMap]",S0="[object ArrayBuffer]",O0="[object DataView]",v0="[object Float32Array]",w0="[object Float64Array]",b0="[object Int8Array]",A0="[object Int16Array]",T0="[object Int32Array]",y0="[object Uint8Array]",N0="[object Uint8ClampedArray]",M0="[object Uint16Array]",L0="[object Uint32Array]",xe={};xe[v0]=xe[w0]=xe[b0]=xe[A0]=xe[T0]=xe[y0]=xe[N0]=xe[M0]=xe[L0]=!0,xe[c0]=xe[u0]=xe[S0]=xe[h0]=xe[O0]=xe[d0]=xe[f0]=xe[m0]=xe[g0]=xe[_0]=xe[p0]=xe[E0]=xe[C0]=xe[R0]=xe[I0]=!1;function D0(e){return Gn(e)&&Zu(e.length)&&!!xe[Pr(e)]}function U0(e){return function(t){return e(t)}}var oh=typeof f=="object"&&f&&!f.nodeType&&f,kr=oh&&typeof module=="object"&&module&&!module.nodeType&&module,P0=kr&&kr.exports===oh,jo=P0&&xu.process,ah=function(){try{var e=kr&&kr.require&&kr.require("util").types;return e||jo&&jo.binding&&jo.binding("util")}catch{}}(),lh=ah&&ah.isTypedArray,ch=lh?U0(lh):D0;function k0(e,t){var n=Vn(e),r=!n&&Wo(e),s=!n&&!r&&ih(e),i=!n&&!r&&!s&&ch(e),o=n||r||s||i,a=o?n0(e.length,String):[],l=a.length;for(var c in e)o&&(c=="length"||s&&(c=="offset"||c=="parent")||i&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||Bo(c,l))||a.push(c);return a}function F0(e,t){return function(n){return e(t(n))}}function x0(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var B0=Object.prototype,$0=B0.hasOwnProperty;function H0(e){if(!Et(e))return x0(e);var t=Qu(e),n=[];for(var r in e)r=="constructor"&&(t||!$0.call(e,r))||n.push(r);return n}function uh(e){return Ho(e)?k0(e):H0(e)}var W0=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,j0=/^\w*$/;function Y0(e,t){if(Vn(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||Ys(e)?!0:j0.test(e)||!W0.test(e)||t!=null&&e in Object(t)}var Fr=xo(Object,"create");function G0(){this.__data__=Fr?Fr(null):{},this.size=0}function V0(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var z0="__lodash_hash_undefined__",K0=Object.prototype,X0=K0.hasOwnProperty;function q0(e){var t=this.__data__;if(Fr){var n=t[e];return n===z0?void 0:n}return X0.call(t,e)?t[e]:void 0}var Z0=Object.prototype,J0=Z0.hasOwnProperty;function Q0(e){var t=this.__data__;return Fr?t[e]!==void 0:J0.call(t,e)}var eC="__lodash_hash_undefined__";function tC(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Fr&&t===void 0?eC:t,this}function In(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}In.prototype.clear=G0,In.prototype.delete=V0,In.prototype.get=q0,In.prototype.has=Q0,In.prototype.set=tC;function nC(){this.__data__=[],this.size=0}function zs(e,t){for(var n=e.length;n--;)if(Vs(e[n][0],t))return n;return-1}var rC=Array.prototype,sC=rC.splice;function iC(e){var t=this.__data__,n=zs(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():sC.call(t,n,1),--this.size,!0}function oC(e){var t=this.__data__,n=zs(t,e);return n<0?void 0:t[n][1]}function aC(e){return zs(this.__data__,e)>-1}function lC(e,t){var n=this.__data__,r=zs(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function jt(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}jt.prototype.clear=nC,jt.prototype.delete=iC,jt.prototype.get=oC,jt.prototype.has=aC,jt.prototype.set=lC;var hh=xo(Rn,"Map");function cC(){this.size=0,this.__data__={hash:new In,map:new(hh||jt),string:new In}}function uC(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function Ks(e,t){var n=e.__data__;return uC(t)?n[typeof t=="string"?"string":"hash"]:n.map}function hC(e){var t=Ks(this,e).delete(e);return this.size-=t?1:0,t}function dC(e){return Ks(this,e).get(e)}function fC(e){return Ks(this,e).has(e)}function mC(e,t){var n=Ks(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}function on(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}on.prototype.clear=cC,on.prototype.delete=hC,on.prototype.get=dC,on.prototype.has=fC,on.prototype.set=mC;var gC="Expected a function";function Yo(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(gC);var n=function(){var r=arguments,s=t?t.apply(this,r):r[0],i=n.cache;if(i.has(s))return i.get(s);var o=e.apply(this,r);return n.cache=i.set(s,o)||i,o};return n.cache=new(Yo.Cache||on),n}Yo.Cache=on;var _C=500;function pC(e){var t=Yo(e,function(r){return n.size===_C&&n.clear(),r}),n=t.cache;return t}var EC=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,CC=/\\(\\)?/g,RC=pC(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(EC,function(n,r,s,i){t.push(s?i.replace(CC,"$1"):r||n)}),t});function IC(e){return e==null?"":ju(e)}function dh(e,t){return Vn(e)?e:Y0(e,t)?[e]:RC(IC(e))}function fh(e){if(typeof e=="string"||Ys(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function SC(e,t){t=dh(t,e);for(var n=0,r=t.length;e!=null&&n<r;)e=e[fh(t[n++])];return n&&n==r?e:void 0}function mh(e,t,n){var r=e==null?void 0:SC(e,t);return r===void 0?n:r}var gh=F0(Object.getPrototypeOf,Object),OC="[object Object]",vC=Function.prototype,wC=Object.prototype,_h=vC.toString,bC=wC.hasOwnProperty,AC=_h.call(Object);function TC(e){if(!Gn(e)||Pr(e)!=OC)return!1;var t=gh(e);if(t===null)return!0;var n=bC.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&_h.call(n)==AC}function yC(){this.__data__=new jt,this.size=0}function NC(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function MC(e){return this.__data__.get(e)}function LC(e){return this.__data__.has(e)}var DC=200;function UC(e,t){var n=this.__data__;if(n instanceof jt){var r=n.__data__;if(!hh||r.length<DC-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new on(r)}return n.set(e,t),this.size=n.size,this}function zn(e){var t=this.__data__=new jt(e);this.size=t.size}zn.prototype.clear=yC,zn.prototype.delete=NC,zn.prototype.get=MC,zn.prototype.has=LC,zn.prototype.set=UC;var ph=typeof f=="object"&&f&&!f.nodeType&&f,Eh=ph&&typeof module=="object"&&module&&!module.nodeType&&module,PC=Eh&&Eh.exports===ph,Ch=PC?Rn.Buffer:void 0;Ch&&Ch.allocUnsafe;function kC(e,t){return e.slice()}var Rh=Rn.Uint8Array;function FC(e){var t=new e.constructor(e.byteLength);return new Rh(t).set(new Rh(e)),t}function xC(e,t){var n=FC(e.buffer);return new e.constructor(n,e.byteOffset,e.length)}function BC(e){return typeof e.constructor=="function"&&!Qu(e)?kE(gh(e)):{}}function $C(e){return function(t,n,r){for(var s=-1,i=Object(t),o=r(t),a=o.length;a--;){var l=o[++s];if(n(i[l],l,i)===!1)break}return t}}var HC=$C(),Go=function(){return Rn.Date.now()},WC="Expected a function",jC=Math.max,YC=Math.min;function GC(e,t,n){var r,s,i,o,a,l,c=0,u=!1,h=!1,d=!0;if(typeof e!="function")throw new TypeError(WC);t=Gu(t)||0,Et(n)&&(u=!!n.leading,h="maxWait"in n,i=h?jC(Gu(n.maxWait)||0,t):i,d="trailing"in n?!!n.trailing:d);function m(R){var b=r,y=s;return r=s=void 0,c=R,o=e.apply(y,b),o}function _(R){return c=R,a=setTimeout(A,t),u?m(R):o}function p(R){var b=R-l,y=R-c,$=t-b;return h?YC($,i-y):$}function I(R){var b=R-l,y=R-c;return l===void 0||b>=t||b<0||h&&y>=i}function A(){var R=Go();if(I(R))return B(R);a=setTimeout(A,p(R))}function B(R){return a=void 0,d&&r?m(R):(r=s=void 0,o)}function x(){a!==void 0&&clearTimeout(a),c=0,r=l=s=a=void 0}function Y(){return a===void 0?o:B(Go())}function O(){var R=Go(),b=I(R);if(r=arguments,s=this,l=R,b){if(a===void 0)return _(l);if(h)return clearTimeout(a),a=setTimeout(A,t),m(l)}return a===void 0&&(a=setTimeout(A,t)),o}return O.cancel=x,O.flush=Y,O}function Vo(e,t,n){(n!==void 0&&!Vs(e[t],n)||n===void 0&&!(t in e))&&$o(e,t,n)}function VC(e){return Gn(e)&&Ho(e)}function zo(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}function zC(e){return qE(e,uh(e))}function KC(e,t,n,r,s,i,o){var a=zo(e,n),l=zo(t,n),c=o.get(l);if(c){Vo(e,n,c);return}var u=i?i(a,l,n+"",e,t,o):void 0,h=u===void 0;if(h){var d=Vn(l),m=!d&&ih(l),_=!d&&!m&&ch(l);u=l,d||m||_?Vn(a)?u=a:VC(a)?u=xE(a):m?(h=!1,u=kC(l)):_?(h=!1,u=xC(l)):u=[]:TC(l)||Wo(l)?(u=a,Wo(a)?u=zC(a):(!Et(a)||ko(a))&&(u=BC(l))):h=!1}h&&(o.set(l,u),s(u,l,r,i,o),o.delete(l)),Vo(e,n,u)}function Ko(e,t,n,r,s){e!==t&&HC(t,function(i,o){if(s||(s=new zn),Et(i))KC(e,t,o,n,Ko,r,s);else{var a=r?r(zo(e,o),i,o+"",e,t,s):void 0;a===void 0&&(a=i),Vo(e,o,a)}},uh)}var XC=Ju(function(e,t,n,r){Ko(e,t,n,r)}),Xo=Ju(function(e,t,n){Ko(e,t,n)});function qC(e,t,n,r){if(!Et(e))return e;t=dh(t,e);for(var s=-1,i=t.length,o=i-1,a=e;a!=null&&++s<i;){var l=fh(t[s]),c=n;if(l==="__proto__"||l==="constructor"||l==="prototype")return e;if(s!=o){var u=a[l];c=void 0,c===void 0&&(c=Et(u)?u:Bo(t[s+1])?[]:{})}Xu(a,l,c),a=a[l]}return e}function ZC(e,t,n){return e==null?e:qC(e,t,n)}const qo=Re.createIdentifier("univer.config-service");class Ih{constructor(){C(this,"_configChanged$",new oe.Subject);C(this,"configChanged$",this._configChanged$.asObservable());C(this,"_config",new Map)}dispose(){this._config.clear(),this._configChanged$.complete()}getConfig(t){return this._config.get(t)}setConfig(t,n,r){var o;const{merge:s=!1}=r||{};let i=(o=this._config.get(t))!=null?o:{};s?i=Xo(i,n):i=n,this._config.set(t,i),this._configChanged$.next({[t]:i})}deleteConfig(t){return this._config.delete(t)}subscribeConfigValue$(t){return new oe.Observable(n=>{Object.prototype.hasOwnProperty.call(this._config,t)&&n.next(this._config.get(t));const r=this.configChanged$.pipe(oe.filter(s=>Object.prototype.hasOwnProperty.call(s,t))).subscribe(s=>n.next(s[t]));return()=>r.unsubscribe()})}}const xr="FOCUSING_UNIT",Kn="FOCUSING_SHEET",Br="FOCUSING_DOC",$r="FOCUSING_SLIDE",JC="FOCUSING_EDITOR_BUT_HIDDEN",Sh="EDITOR_ACTIVATED",QC="FOCUSING_EDITOR_INPUT_FORMULA",Oh="FOCUSING_FX_BAR_EDITOR",eR="FOCUSING_UNIVER_EDITOR",tR="FOCUSING_EDITOR_INPUT_FORMULA",nR="FOCUSING_PANEL_EDITOR",rR="FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE",sR="FOCUSING_COMMON_DRAWINGS",iR="FORMULA_EDITOR_ACTIVATED";class vh extends ze{constructor(){super(...arguments);C(this,"_error$",new oe.Subject);C(this,"error$",this._error$.asObservable())}dispose(){this._error$.complete()}emit(n){this._error$.next({errorKey:n})}}var Zo=(e=>(e.URL="URL",e.UUID="UUID",e.BASE64="BASE64",e))(Zo||{}),wh=(e=>(e.SUCCUSS="0",e.ERROR_EXCEED_SIZE="1",e.ERROR_IMAGE_TYPE="2",e.ERROR_UPLOAD_COUNT_LIMIT="3",e.ERROR_IMAGE="4",e))(wh||{});const Jo=Re.createIdentifier("core.image-io.service"),oR={version:"0.9.1-nightly.202507051607"};function aR(e="",t=ar.ZH_CN,n=""){return{id:e,sheetOrder:[],name:n,appVersion:oR.version,locale:t,styles:{},sheets:{},resources:[]}}class bh{constructor(t={}){C(this,"_styles");C(this,"_cacheMap",new cr(1e5));this._styles=t,this._generateCacheMap()}each(t){return Object.entries(this._styles).forEach(t),this}search(t,n){if(this._cacheMap.has(n))return this._cacheMap.get(n);const r=this._getExistingStyleId(t);return r||"-1"}get(t){return typeof t!="string"?t:(t=String(t),this._styles[t])}add(t,n){const r=K.generateRandomId(6);return this._styles[r]=t,this._cacheMap.set(n,r),r}setValue(t){if(t==null)return;const n=JSON.stringify(t),r=this.search(t,n);return r!=="-1"?r:this.add(t,n)}toJSON(){return this._styles}getStyleByCell(t){let n;t&&K.isObject(t.s)?n=t.s:n=(t==null?void 0:t.s)&&this.get(t.s);const r=t==null?void 0:t.interceptorStyle;return r?{...n,...r}:n}_generateCacheMap(){const{_styles:t,_cacheMap:n}=this;for(const r in t){const s=JSON.stringify(t[r]);n.set(s,r)}}_getExistingStyleId(t){const{_styles:n}=this;for(const r in n)if(K.diffValue(n[r],t))return r;return null}}const lR=(e,t)=>t.length===e.length&&!e.some(n=>t.some(r=>!tn.equals(r,n))),cR=(e,t)=>t.length===e.length&&e.every((n,r)=>{const s=t[r];return s.unitId===n.unitId&&s.sheetId===n.sheetId&&tn.equals(n.range,s.range)}),Qo={t:0,b:2,l:2,r:2},uR=e=>({sbr:.6,sbo:e,spr:.6,spo:e}),Ah=90;function Hr(e,t,n={}){const r=e.length,{textRotation:s,paddingData:i,horizontalAlign:o=St.UNSPECIFIED,verticalAlign:a=hn.UNSPECIFIED,wrapStrategy:l=dn.UNSPECIFIED,cellValueType:c}=n,{t:u,r:h,b:d,l:m}=i||Qo,{vertexAngle:_,centerAngle:p}=Lh(s),I={id:"d",body:{dataStream:`${e}${_a}`,textRuns:[{ts:t,st:0,ed:r}],paragraphs:[{startIndex:r,paragraphStyle:{horizontalAlign:o}}],sectionBreaks:[{startIndex:r+1}]},documentStyle:{pageSize:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginTop:u,marginBottom:d,marginRight:h,marginLeft:m,renderConfig:{horizontalAlign:o,verticalAlign:a,centerAngle:p,vertexAngle:_,wrapStrategy:l,cellValueType:c,zeroWidthParagraphBreak:1}},drawings:{},drawingsOrder:[]};return new bt(I)}function hR(e){if(!e)return{};const{tr:t,td:n,ht:r,vt:s,tb:i,pd:o}=e;return{textRotation:t,textDirection:n,horizontalAlign:r,verticalAlign:s,wrapStrategy:i,paddingData:o}}function Th(e){if(!e)return{};const{ff:t,fs:n,it:r,bl:s,ul:i,st:o,ol:a,cl:l}=e,c={};return t&&(c.ff=t),n&&(c.fs=n),r&&(c.it=r),s&&(c.bl=s),i&&(c.ul=i),o&&(c.st=o),a&&(c.ol=a),l&&(c.cl=l),c}function yh(e,t,n){var i;const r=e.getBody();if((i=r.customRanges)!=null&&i.some(o=>o.rangeType===en.HYPERLINK))return;const s=Je.customRange.add({ranges:[{startOffset:0,endOffset:r.dataStream.length-1,collapsed:!1}],rangeId:n,rangeType:en.HYPERLINK,body:r,properties:{url:t,refId:n}});s&&Me.apply(r,s.serialize())}function Nh(e){return e!=null}const dR='"Helvetica Neue", Helvetica, Arial, "PingFang SC", "Hiragino Sans GB", "Heiti SC", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif';function Mh(e){const t=rt.ff,n=rt.fs;if(!e){const h=`${n}pt ${t}`;return{fontCache:h,fontString:h,fontSize:n,originFontSize:n,fontFamily:t}}let r=kn.ITALIC;(e.it===0||e.it===void 0)&&(r=kn.NORMAL);let s=kn.BOLD;(e.bl===0||e.bl===void 0)&&(s=kn.NORMAL);let i=n;e.fs&&(i=Math.ceil(e.fs));let o=t;if(e.ff){let h=e.ff;h=h.replace(/"/g,"").replace(/'/g,""),h.indexOf(" ")>-1&&(h=`"${h}"`),h==null&&(h=t),o=h}const{va:a}=e;let l=i;if(a===Bt.SUBSCRIPT||a===Bt.SUPERSCRIPT){const h=fR(o,l),{sbr:d,spr:m}=h;l*=a===Bt.SUBSCRIPT?d:m}const c=`${r} ${s} ${l}pt ${o}`,u=`${c}, ${dR} `;return{fontCache:c,fontString:u,fontSize:l,originFontSize:i,fontFamily:o}}function fR(e,t){return uR(t)}function Lh(e){const{a:t=0,v:n=ae.FALSE}=e||{a:0,v:ae.FALSE};let r=0,s=t;return n===ae.TRUE&&(r=Ah,s=Ah),{centerAngle:r,vertexAngle:s}}class mR{constructor(t,n){C(this,"_columnData",{});this._config=t,this._columnData=n}getColumnData(){return this._columnData}getColVisible(t){const{_columnData:n}=this,r=n[t];return r?r.hd!==ae.TRUE:!0}getColumnStyle(t){var n;return(n=this._columnData[t])==null?void 0:n.s}setColumnStyle(t,n){const r=this.getColumnOrCreate(t);r.s=n}getHiddenCols(t=0,n=this.getSize()-1){const r=[];let s=!1,i=-1;for(let o=t;o<=n;o++){const a=this.getColVisible(o);s&&a?(s=!1,r.push({rangeType:pe.COLUMN,startColumn:i,endColumn:o-1,startRow:0,endRow:0})):!s&&!a&&(s=!0,i=o)}return s&&r.push({startRow:0,endRow:0,startColumn:i,endColumn:n,rangeType:pe.COLUMN}),r}getVisibleCols(t=0,n=this.getSize()-1){const r=[];let s=!1,i=-1;for(let o=t;o<=n;o++){const a=this.getColVisible(o);s&&!a?(s=!1,r.push({rangeType:pe.COLUMN,startColumn:i,endColumn:o-1,startRow:0,endRow:0})):!s&&a&&(s=!0,i=o)}return s&&r.push({startRow:0,endRow:0,startColumn:i,endColumn:n,rangeType:pe.COLUMN}),r}getColumnDatas(t,n){const r={};let s=0;for(let i=t;i<t+n;i++){const o=this.getColumn(i);r[s]=o!=null?o:{w:this._config.defaultColumnWidth,hd:ae.FALSE},s++}return r}getSize(){return Zt(this._columnData)}getColumnWidth(t){var n,r;return(r=(n=this._columnData[t])==null?void 0:n.w)!=null?r:this._config.defaultColumnWidth}setColumnWidth(t,n){const r=this._columnData[t];n===this._config.defaultColumnWidth?r&&(delete r.w,Object.keys(r).length===0&&delete this._columnData[t]):this._columnData[t]=r?{...r,w:n}:{w:n}}getColumn(t){return this._columnData[t]}removeColumn(t){delete this._columnData[t]}getColumnOrCreate(t){const{_columnData:n}=this,r=n[t];if(r)return r;const s={};return this._columnData[t]=s,s}setCustomMetadata(t,n){const r=this.getColumn(t);r&&(r.custom=n)}getCustomMetadata(t){var n;return(n=this.getColumn(t))==null?void 0:n.custom}}const gR=2e3;class _R{constructor(t,n,r){C(this,"_rowData");this._config=t,this._viewModel=n,this._rowData=r}getRowData(){return this._rowData}getRowStyle(t){var n;return(n=this._rowData[t])==null?void 0:n.s}setRowStyle(t,n){const r=this.getRowOrCreate(t);r.s=n}getRowDatas(t,n){const r={};let s=0;for(let i=t;i<t+n;i++){const o=this.getRow(i);r[s]=o!=null?o:{h:this._config.defaultRowHeight,hd:ae.FALSE},s++}return r}getRowHeight(t,n=1){const{_rowData:r}=this,s=this._config;let i=0;for(let o=0;o<n;o++){const a=r[o+t]||{hd:ae.FALSE,h:s.defaultRowHeight},{ia:l,ah:c,h:u=s.defaultRowHeight}=a;i+=(l==null||l===ae.TRUE)&&typeof c=="number"?c:u}return i}setRowHeight(t,n){const r=this._rowData[t];if(n===this._config.defaultRowHeight)r&&(delete r.h,Object.keys(r).length===0&&delete this._rowData[t]);else{const s=Math.min(n,gR);this._rowData[t]=r?{...r,h:s}:{h:s}}}getRow(t){return this._rowData[t]}removeRow(t){delete this._rowData[t]}getRowOrCreate(t){const{_rowData:n}=this,r=n[t];if(r)return r;const s={};return n[t]=s,s}getHiddenRows(t=0,n=this.getSize()-1){const r=[];let s=!1,i=-1;for(let o=t;o<=n;o++){const a=this.getRowRawVisible(o);s&&a?(s=!1,r.push({startRow:i,endRow:o-1,startColumn:0,endColumn:0,rangeType:pe.ROW})):!s&&!a&&(s=!0,i=o)}return s&&r.push({startRow:i,endRow:n,startColumn:0,endColumn:0,rangeType:pe.ROW}),r}getVisibleRows(t=0,n=this.getSize()-1){const r=[];let s=!1,i=-1;for(let o=t;o<=n;o++){const a=this.getRowRawVisible(o);s&&!a?(s=!1,r.push({startRow:i,endRow:o-1,startColumn:0,endColumn:0,rangeType:pe.ROW})):!s&&a&&(s=!0,i=o)}return s&&r.push({startRow:i,endRow:n,startColumn:0,endColumn:0,rangeType:pe.ROW}),r}getRowRawVisible(t){const n=this.getRow(t);return n?n.hd!==ae.TRUE:!0}getSize(){return Zt(this._rowData)}setCustomMetadata(t,n){const r=this.getRow(t);r&&(r.custom=n)}getCustomMetadata(t){var n;return(n=this.getRow(t))==null?void 0:n.custom}}const pR="DEFAULT_WORKSHEET_ROW_COUNT",Dh=1e3,ER="DEFAULT_WORKSHEET_COLUMN_COUNT",Uh=20,CR="DEFAULT_WORKSHEET_ROW_HEIGHT",Ph=24,RR="DEFAULT_WORKSHEET_COLUMN_WIDTH",kh=88,IR="DEFAULT_WORKSHEET_ROW_TITLE_WIDTH",Fh=46,SR="DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT",xh=20;function Bh(e){const t={name:"Sheet1",id:"sheet-01",tabColor:"",hidden:ae.FALSE,rowCount:Dh,columnCount:Uh,zoomRatio:1,freeze:{xSplit:0,ySplit:0,startRow:-1,startColumn:-1},scrollTop:0,scrollLeft:0,defaultColumnWidth:kh,defaultRowHeight:Ph,mergeData:[],cellData:{},rowData:{},columnData:{},showGridlines:ae.TRUE,rowHeader:{width:Fh,hidden:ae.FALSE},columnHeader:{height:xh,hidden:ae.FALSE},rightToLeft:ae.FALSE};return Object.keys(t).forEach(n=>{const r=n;typeof e[r]>"u"&&(e[r]=t[r])}),e}class OR extends ze{constructor(n){super();C(this,"_cellCache",new Map);C(this,"_rowCache",new Map);C(this,"_columnCache",new Map);C(this,"_hasRow",!1);C(this,"_hasColumn",!1);C(this,"_hasAll",!1);C(this,"_allIndex",-1);C(this,"_mergeData");C(this,"_rangeMap",new cr(5e4));C(this,"_skeletonCache",new cr(5e4));this._init(n.concat())}_init(n){this._mergeData=n,this._createCache(n)}_clearCache(){this._cellCache.clear(),this._rowCache.clear(),this._columnCache.clear(),this._hasAll=!1,this._allIndex=-1,this._rangeMap.clear(),this._skeletonCache.clear(),this._hasColumn=!1,this._hasRow=!1}_createCache(n){let r=0;for(const s of n){const{rangeType:i}=s;i===pe.ROW?this._createRowCache(s,r):i===pe.COLUMN?this._createColumnCache(s,r):i===pe.ALL?this._createCellAllCache(r):this._createCellCache(s,r),r++}}rebuild(n){this._clearCache(),this._init(n.concat())}_createRowCache(n,r){const{startRow:s,endRow:i}=n;for(let o=s;o<=i;o++)this._rowCache.set(o,r),this._hasRow=!0}_createColumnCache(n,r){const{startColumn:s,endColumn:i}=n;for(let o=s;o<=i;o++)this._columnCache.set(o,r),this._hasColumn=!0}_createCellAllCache(n){this._hasAll=!0,this._allIndex=n}_createCellCache(n,r){for(let s=n.startRow;s<=n.endRow;s++){let i=this._cellCache.get(s);i==null&&(i=new Map,this._cellCache.set(s,i));for(let o=n.startColumn;o<=n.endColumn;o++)i.set(o,r)}}add(n){this._mergeData.push(n),this._clearCache(),this._createCache(this._mergeData)}remove(n,r){const s=this._getMergeDataIndex(n,r);s!==-1&&(this._mergeData.splice(s,1),this._clearCache(),this._createCache(this._mergeData))}getMergedCell(n,r){const s=this._getMergeDataIndex(n,r);return s!==-1?this._mergeData[s]:null}getMergeDataIndex(n,r){return this._getMergeDataIndex(n,r)}isRowContainsMergedCell(n){return this._hasAll||!K.isEmptyObject(this._columnCache)?!0:this._mergeData.some(r=>r.startRow<=n&&n<=r.endRow)}isColumnContainsMergedCell(n){return this._hasAll||!K.isEmptyObject(this._rowCache)?!0:this._mergeData.some(r=>r.startColumn<=n&&n<=r.endColumn)}getMergedCellRange(n,r,s,i){const o=[],a=`${n}-${r}-${s}-${i}`;if(this._rangeMap.has(a))return this._getRangeFromCache(a);let l=0;const c=[];for(const u of this._mergeData||[])tn.intersects(u,{startRow:n,endRow:s,startColumn:r,endColumn:i})&&(o.push({...u}),c.push(l)),l++;return this._rangeMap.set(a,c),o}getMergedCellRangeForSkeleton(n,r,s,i){const o=[],a=this._mergeData,l=`${n}-${r}-${s}-${i}`;if(this._skeletonCache.has(l))return this._getSkeletonRangeFromCache(l);const c=[];for(let u=0;u<a.length;u++){const{startRow:h,endRow:d,startColumn:m,endColumn:_}=a[u];for(let p=n;p<=s;p++){let I=!1;for(let A=r;A<=i;A++)if(p>=h&&p<=d&&A>=m&&A<=_){o.push({startRow:h,endRow:d,startColumn:m,endColumn:_}),c.push(u),I=!0;break}if(I)break}}return this._skeletonCache.set(l,c),o}_getRangeFromCache(n){const r=this._rangeMap.get(n)||[],s=[];for(const i of r)s.push({...this._mergeData[i]});return s}_getSkeletonRangeFromCache(n){const r=this._skeletonCache.get(n)||[],s=[];for(const i of r)s.push({...this._mergeData[i]});return s}_getMergeDataIndex(n,r){var i;if(this._hasAll)return this._allIndex;if(this._hasRow){const o=this._rowCache.get(n);if(o!==void 0)return o}if(this._hasColumn){const o=this._columnCache.get(r);if(o!==void 0)return o}const s=(i=this._cellCache.get(n))==null?void 0:i.get(r);return s!==void 0?s:-1}getMergeDataSnapshot(){return this._mergeData}dispose(){this._clearCache(),this._mergeData=[]}}class $h extends ze{constructor(n){super();C(this,"_cellContentInterceptor",null);C(this,"_rowFilteredInterceptor",null);this.getRawCell=n}dispose(){super.dispose(),this._cellContentInterceptor=null,this._rowFilteredInterceptor=null}getCell(n,r,s,i){return this._cellContentInterceptor?this._cellContentInterceptor.getCell(n,r,bn.Value|bn.Style,s,i):this.getRawCell(n,r)}getCellValueOnly(n,r){return this._cellContentInterceptor?this._cellContentInterceptor.getCell(n,r,bn.Value):this.getRawCell(n,r)}getCellStyleOnly(n,r){return this._cellContentInterceptor?this._cellContentInterceptor.getCell(n,r,bn.Style):this.getRawCell(n,r)}getRowFiltered(n){var r,s;return(s=(r=this._rowFilteredInterceptor)==null?void 0:r.getRowFiltered(n))!=null?s:!1}registerCellContentInterceptor(n){if(this._cellContentInterceptor)throw new Error("[SheetViewModel]: Interceptor already registered.");return this._cellContentInterceptor=n,je(()=>this._cellContentInterceptor=null)}registerRowFilteredInterceptor(n){if(this._rowFilteredInterceptor)throw new Error("[SheetViewModel]: Interceptor already registered.");return this._rowFilteredInterceptor=n,je(()=>this._rowFilteredInterceptor=null)}}const Hh={isDeepClone:!1,displayRawFormula:!1,ignoreTextRotation:!1};class Wr{constructor(t,n,r){C(this,"_sheetId");C(this,"_snapshot");C(this,"_cellData");C(this,"_rowManager");C(this,"_columnManager");C(this,"_viewModel");C(this,"_spanModel");C(this,"_isRowStylePrecedeColumnStyle",!0);C(this,"_getCellHeight");var a;this.unitId=t,this._styles=r,this._snapshot=Bh(n);const{columnData:s,rowData:i,cellData:o}=this._snapshot;this._sheetId=(a=this._snapshot.id)!=null?a:K.generateRandomId(6),this._cellData=new lt(o),this._viewModel=new $h((l,c)=>this.getCellRaw(l,c)),this._rowManager=new _R(this._snapshot,this._viewModel,i),this._columnManager=new mR(this._snapshot,s),this._spanModel=new OR(this._snapshot.mergeData)}__interceptViewModel(t){t(this._viewModel)}__registerGetCellHeight(t){return this._getCellHeight=t,je(()=>{this._getCellHeight=null})}getSnapshot(){return this._snapshot}getCellHeight(t,n){return this._getCellHeight?this._getCellHeight(t,n):this._snapshot.defaultRowHeight}setMergeData(t){this._snapshot.mergeData=t,this.getSpanModel().rebuild(t)}getSpanModel(){return this._spanModel}setIsRowStylePrecedeColumnStyle(t){this._isRowStylePrecedeColumnStyle=t}getStyleDataByHash(t){return{...this._styles.get(t)}}setStyleData(t){return this._styles.setValue(t)}getColumnStyle(t,n=!1){return n?this._columnManager.getColumnStyle(t):this._styles.get(this._columnManager.getColumnStyle(t))}setColumnStyle(t,n){this._columnManager.setColumnStyle(t,n)}getRowStyle(t,n=!1){return n?this._rowManager.getRowStyle(t):this._styles.get(this._rowManager.getRowStyle(t))}setRowStyle(t,n){this._rowManager.setRowStyle(t,n)}getDefaultCellStyle(){return this._snapshot.defaultStyle}getDefaultCellStyleInternal(){const t=this._snapshot.defaultStyle;return this._styles.get(t)}setDefaultCellStyle(t){this._snapshot.defaultStyle=t}getCellStyle(t,n){const r=this.getCell(t,n);if(r){const s=r.s;return typeof s=="string"?this._styles.get(s):s}return null}getComposedCellStyle(t,n,r){const s=this.getDefaultCellStyleInternal(),i=this.getRowStyle(t),o=this.getColumnStyle(n),a=this.getCell(t,n),l=this._styles.getStyleByCell(a);return(r!=null?r:this._isRowStylePrecedeColumnStyle)?ci(s,o,i,a==null?void 0:a.themeStyle,l):ci(s,i,o,a==null?void 0:a.themeStyle,l)}getCellMatrix(){return this._cellData}getCellMatrixPrintRange(){const t=this.getCellMatrix(),n=this.getMergeData();let r=-1,s=-1,i=-1,o=-1,a=!1,l=!1;return t.forEach((c,u)=>{Object.keys(u).forEach(h=>{const d=+h,m=t.getValue(c,d),_=m!=null&&m.s?this._styles.get(m.s):null,p=(_==null?void 0:_.bd)&&(_.bd.b||_.bd.l||_.bd.r||_.bd.t||_.bd.bc_tr||_.bd.bl_tr||_.bd.ml_tr||_.bd.tl_bc||_.bd.tl_br||_.bd.tl_mr);(m&&(m.v||m.p)||_!=null&&_.bg||p)&&(a?r=Math.min(r,c):(r=c,a=!0),s=Math.max(s,c),l?i=Math.min(i,d):(l=!0,i=d),o=Math.max(o,d))})}),n.forEach(c=>{a?r=Math.min(r,c.startRow):(r=c.startRow,a=!0),s=Math.max(s,c.endRow),l?i=Math.min(i,c.startColumn):(i=c.startColumn,a=!0),o=Math.max(o,c.endColumn)}),!a||!l?null:{startColumn:i,startRow:r,endColumn:o,endRow:s}}getRowManager(){return this._rowManager}getUnitId(){return this.unitId}getSheetId(){return this._sheetId}getColumnManager(){return this._columnManager}getName(){return this._snapshot.name}clone(){const{_snapshot:t}=this,n=K.deepClone(t);return new Wr(this.unitId,n,this._styles)}getMergeData(){return this._spanModel.getMergeDataSnapshot()}getMergedCell(t,n){return this._spanModel.getMergedCell(t,n)}getMergedCellRange(t,n,r,s){return this._spanModel.getMergedCellRange(t,n,r,s)}isRowContainsMergedCell(t){return this._spanModel.isRowContainsMergedCell(t)}isColumnContainsMergedCell(t){return this._spanModel.isColumnContainsMergedCell(t)}getCellInfoInMergeData(t,n){const r=this.getMergedCell(t,n);let s=!1,i=!1,o=t,a=n,l=t,c=n;if(r){const{startRow:u,endRow:h,startColumn:d,endColumn:m}=r;t===u&&n===d?(o=h,a=m,l=u,c=d,i=!0):t>=u&&t<=h&&n>=d&&n<=m&&(o=h,a=m,l=u,c=d,s=!0)}return{actualRow:t,actualColumn:n,isMergedMainCell:i,isMerged:s,endRow:o,endColumn:a,startRow:l,startColumn:c}}getCell(t,n){return t<0||n<0?null:this._viewModel.getCell(t,n)}getCellValueOnly(t,n){return t<0||n<0?null:this._viewModel.getCellValueOnly(t,n)}getCellStyleOnly(t,n){return t<0||n<0?null:this._viewModel.getCellStyleOnly(t,n)}getCellRaw(t,n){return this.getCellMatrix().getValue(t,n)}getCellWithFilteredInterceptors(t,n,r,s){return this._viewModel.getCell(t,n,r,s)}getRowFiltered(t){return this._viewModel.getRowFiltered(t)}getRangeFilterRows(t){const n=[];for(let r=t.startRow;r<=t.endRow;r++)this.getRowFiltered(r)&&n.push(r);return n}getMatrixWithMergedCells(t,n,r,s,i=Tn.Raw){const o=this.getCellMatrix(),a=this._spanModel.getMergedCellRange(t,n,r,s),l=new lt;return po(t,r,n,s).forEach((c,u)=>{var d;let h;if(i===Tn.Raw)h=this.getCellRaw(c,u);else if(i===Tn.Intercepted)h=this.getCell(c,u);else if(i===Tn.Both){const m=this.getCellRaw(c,u);if(m){h={...m};const _=(d=this.getCell(c,u))==null?void 0:d.v;Nh(_)&&h&&(h.displayV=String(_))}}h&&l.setValue(c,u,h)}),a.forEach(c=>{const{startColumn:u,startRow:h,endColumn:d,endRow:m}=c;po(h,m,u,d).forEach((_,p)=>{_===h&&p===u&&l.setValue(_,p,{...o.getValue(_,p),rowSpan:m-h+1,colSpan:d-u+1}),(_!==h||p!==u)&&l.realDeleteValue(_,p)})}),l}getRange(t,n,r,s){return typeof t=="object"?new xn(this,t,{getStyles:()=>this._styles}):new xn(this,{startRow:t,startColumn:n,endColumn:s||n,endRow:r||t},{getStyles:()=>this._styles})}getScrollLeftTopFromSnapshot(){return{scrollLeft:this._snapshot.scrollLeft,scrollTop:this._snapshot.scrollTop}}getZoomRatio(){return this._snapshot.zoomRatio||1}getConfig(){return this._snapshot}getFreeze(){return this._snapshot.freeze}getMaxColumns(){const{_snapshot:t}=this,{columnCount:n}=t;return n}getMaxRows(){const{_snapshot:t}=this,{rowCount:n}=t;return n}getRowCount(){return this._snapshot.rowCount}setRowCount(t){this._snapshot.rowCount=t}getColumnCount(){return this._snapshot.columnCount}setColumnCount(t){this._snapshot.columnCount=t}isSheetHidden(){return this._snapshot.hidden}hasHiddenGridlines(){const{_snapshot:t}=this,{showGridlines:n}=t;return n===0}getGridlinesColor(){return this.getConfig().gridlinesColor}getTabColor(){const{_snapshot:t}=this,{tabColor:n}=t;return n}getColumnWidth(t){return this.getColumnManager().getColumnWidth(t)}getRowHeight(t){return this._viewModel.getRowFiltered(t)?0:this.getRowManager().getRowHeight(t)}isRowFiltered(t){return this._viewModel.getRowFiltered(t)}getRowVisible(t){return!this.isRowFiltered(t)&&this.getRowRawVisible(t)}getRowRawVisible(t){return this.getRowManager().getRowRawVisible(t)}getHiddenRows(t,n){const r=this.getMaxColumns()-1,s=this._rowManager.getHiddenRows(t,n);return s.forEach(i=>i.endColumn=r),s}getColVisible(t){return this._columnManager.getColVisible(t)}getHiddenCols(t,n){const r=this.getMaxRows()-1,s=this._columnManager.getHiddenCols(t,n);return s.forEach(i=>i.endRow=r),s}getVisibleRows(){const t=this.getRowCount();return this._rowManager.getVisibleRows(0,t-1)}getVisibleCols(){const t=this.getColumnCount();return this._columnManager.getVisibleCols(0,t-1)}isRightToLeft(){const{_snapshot:t}=this,{rightToLeft:n}=t;return n}getLastRowWithContent(){return this._cellData.getLength()-1}getLastColumnWithContent(){return this._cellData.getRange().endColumn}getDataRangeScope(){return this._cellData.getStartEndScope()}cellHasValue(t){return t&&(t.v!==void 0||t.f!==void 0||t.p!==void 0)}iterateByRow(t,n=!0){const{startRow:r,startColumn:s,endRow:i,endColumn:o}=t,a=this;return{[Symbol.iterator]:()=>{let l=r,c=s;return{next(){for(;;){if(c>o&&(l+=1,c=s),l>i)return{done:!0,value:void 0};const u=a.getCell(l,c),h=!u,d=a.getMergedCell(l,c);if(d){if(l!==d.startRow||c!==d.startColumn){c=d.endColumn+1;continue}if(h&&n){c=d.endColumn+1;continue}const _={row:l,col:c,value:u};return _.colSpan=d.endColumn-d.startColumn+1,_.rowSpan=d.endRow-d.startRow+1,c=d.endColumn+1,{done:!1,value:_}}if(h&&n)c+=1;else{const m={row:l,col:c,value:u};return c+=1,{done:!1,value:m}}}}}}}}iterateByColumn(t,n=!0,r=!0){const{startRow:s,startColumn:i,endRow:o,endColumn:a}=t,l=this;return{[Symbol.iterator]:()=>{let c=s,u=i;return{next(){for(;;){if(c>o&&(u+=1,c=s),u>a)return{done:!0,value:void 0};const h=l.getMergedCell(c,u);if(h){const _=c!==h.startRow,p=_||u!==h.startColumn;if(r&&p||!r&&_){c=h.endRow+1;continue}const I=l.getCell(h.startRow,h.startColumn);if(!I&&n){c=h.endRow+1;continue}const B={row:c,col:h.startColumn,value:I};return B.colSpan=h.endColumn-h.startColumn+1,B.rowSpan=h.endRow-h.startRow+1,c=h.endRow+1,{done:!1,value:B}}const d=l.getCell(c,u);if(!d&&n)c+=1;else{const _={row:c,col:u,value:d};return c+=1,{done:!1,value:_}}}}}}}}getCellDocumentModel(t,n,r=Hh){var p;if(!t)return;const{isDeepClone:s,displayRawFormula:i,ignoreTextRotation:o}={...Hh,...r};let a,l="document";const c=hR(n),u=o?rt.tr:c.textRotation||rt.tr;let h=c.horizontalAlign||rt.ht;const d=c.verticalAlign||rt.vt,m=c.wrapStrategy||rt.tb,_=c.paddingData||Qo;if(t.f&&i)a=Hr(t.f.toString(),{},{verticalAlign:d}),h=rt.ht;else if(t.p){const{centerAngle:I,vertexAngle:A}=Lh(u);a=this._updateConfigAndGetDocumentModel(s?K.deepClone(t.p):t.p,h,_,{horizontalAlign:h,verticalAlign:d,centerAngle:I,vertexAngle:A,wrapStrategy:m,zeroWidthParagraphBreak:1})}else if(t.v!=null){const I=Th(n);l=Mh(I).fontCache;let A=Wh(t);t.t===Xt.FORCE_STRING&&i&&(A=`'${A}`),a=Hr(A,I,{...c,textRotation:u,cellValueType:t.t})}return a&&t.linkUrl&&t.linkId&&yh(a,t.linkUrl,t.linkId),{documentModel:a,fontString:l,textRotation:u,wrapStrategy:m,verticalAlign:d,horizontalAlign:h,paddingData:_,fill:(p=n==null?void 0:n.bg)==null?void 0:p.rgb}}_updateConfigAndGetDocumentModel(t,n,r,s){var o,a,l,c,u;if(!s||!((o=t.body)!=null&&o.dataStream))return;t.documentStyle||(t.documentStyle={}),t.documentStyle.marginTop=(a=r.t)!=null?a:0,t.documentStyle.marginBottom=(l=r.b)!=null?l:2,t.documentStyle.marginLeft=(c=r.l)!=null?c:2,t.documentStyle.marginRight=(u=r.r)!=null?u:2,t.documentStyle.pageSize={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},t.documentStyle.renderConfig={...t.documentStyle.renderConfig,...s};const i=t.body.paragraphs||[];for(const h of i)h.paragraphStyle||(h.paragraphStyle={}),h.paragraphStyle.horizontalAlign=n;return new bt(t)}getBlankCellDocumentModel(t,n,r){const s=this.getComposedCellStyle(n,r),i=Th(s),o=this.getCellDocumentModel(t,s,{ignoreTextRotation:!0});if(o!=null)return o.documentModel==null&&(o.documentModel=Hr("",i)),o;const a="";let l="document";const c=rt.tr,u=rt.ht,h=rt.vt,d=rt.tb,m=Qo;return l=Mh({}).fontCache,{documentModel:Hr(a,i),fontString:l,textRotation:c,wrapStrategy:d,verticalAlign:h,horizontalAlign:u,paddingData:m}}getCellDocumentModelWithFormula(t,n,r){const s=this.getComposedCellStyle(n,r);return this.getCellDocumentModel(t,s,{isDeepClone:!0,displayRawFormula:!0,ignoreTextRotation:!0})}getCustomMetadata(){return this._snapshot.custom}setCustomMetadata(t){this._snapshot.custom=t}}function Wh(e){var r,s;if(!e)return"";const t=(s=(r=e.p)==null?void 0:r.body)==null?void 0:s.dataStream;if(t)return Je.transform.getPlainText(t);const n=e.v;return typeof n=="string"?e.t===Xt.BOOLEAN?n.toUpperCase():n.replace(/[\r\n]/g,""):typeof n=="number"?e.t===Xt.BOOLEAN?n?"TRUE":"FALSE":n.toString():typeof n=="boolean"?n?"TRUE":"FALSE":""}function vR(e){if(e===null)return"";if(e!=null&&e.p){const t=e==null?void 0:e.p.body;if(t==null)return"";const n=t.dataStream;return Je.transform.getPlainText(n)}return e==null?void 0:e.v}var wR=Object.getOwnPropertyDescriptor,bR=(e,t,n,r)=>{for(var s=r>1?void 0:r?wR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},AR=(e,t)=>(n,r)=>t(n,r,e);function TR(e,t){return`${e.getUnitId()}|${t.getSheetId()}`}f.Workbook=class extends Us{constructor(n={},r){super();C(this,"type",we.UNIVER_SHEET);C(this,"_sheetCreated$",new oe.Subject);C(this,"sheetCreated$",this._sheetCreated$.asObservable());C(this,"_sheetDisposed$",new oe.Subject);C(this,"sheetDisposed$",this._sheetDisposed$.asObservable());C(this,"_activeSheet$",new oe.BehaviorSubject(null));C(this,"activeSheet$",this._activeSheet$.asObservable());C(this,"_worksheets");C(this,"_styles");C(this,"_snapshot");C(this,"_unitId");C(this,"_count");C(this,"_name$");C(this,"name$");this._logService=r;const s=aR();K.isEmptyObject(n)?this._snapshot=s:this._snapshot=K.commonExtend(s,n);const{styles:i}=this._snapshot;(this._snapshot.id==null||this._snapshot.id.length===0)&&(this._snapshot.id=K.generateRandomId(6)),this._unitId=this._snapshot.id,this._styles=new bh(i),this._count=1,this._worksheets=new Map,this._name$=new oe.BehaviorSubject(n.name||""),this.name$=this._name$.asObservable(),this._parseWorksheetSnapshots()}get _activeSheet(){return this._activeSheet$.getValue()}get name(){return this._name$.getValue()}static isIRangeType(n){return typeof n=="string"||"startRow"in n||"row"in n}dispose(){super.dispose(),this._sheetCreated$.complete(),this._sheetDisposed$.complete(),this._activeSheet$.complete(),this._name$.complete()}save(){return K.deepClone(this._snapshot)}getSnapshot(){return this._snapshot}getName(){return this._snapshot.name}setName(n){this._name$.next(n),this._snapshot.name=n}getUnitId(){return this._unitId}getRev(){var n;return(n=this._snapshot.rev)!=null?n:1}incrementRev(){this._snapshot.rev=this.getRev()+1}setRev(n){this._snapshot.rev=n}addWorksheet(n,r,s){const{sheets:i,sheetOrder:o}=this._snapshot;if(i[n])return!1;i[n]=s,o.splice(r,0,n);const a=new Wr(this._unitId,s,this._styles);return this._worksheets.set(n,a),this._sheetCreated$.next(a),!0}getSheetOrders(){return this._snapshot.sheetOrder}getWorksheets(){return this._worksheets}getActiveSpreadsheet(){return this}getStyles(){return this._styles}getConfig(){return this._snapshot}getIndexBySheetId(n){const{sheetOrder:r}=this._snapshot;return r.findIndex(s=>s===n)}getActiveSheet(n){if(!this._activeSheet&&typeof n>"u")throw new Error(`[Workbook]: no active Worksheet on Workbook ${this._unitId}!`);return this._activeSheet}ensureActiveSheet(){const n=this._activeSheet;if(n)return n;const r=this._snapshot.sheetOrder;for(let i=0,o=r.length;i<o;i++){const a=this._worksheets.get(r[i]);if(a&&a.isSheetHidden()!==ae.TRUE)return this.setActiveSheet(a),a}const s=this._worksheets.get(r[0]);return this.setActiveSheet(s),s}setActiveSheet(n){this._activeSheet$.next(n)}removeSheet(n){const r=this._worksheets.get(n);return r?(this._worksheets.delete(n),this._snapshot.sheetOrder.splice(this._snapshot.sheetOrder.indexOf(n),1),delete this._snapshot.sheets[n],this._sheetDisposed$.next(r),!0):!1}getActiveSheetIndex(){const{sheetOrder:n}=this._snapshot;return n.findIndex(r=>this._worksheets.get(r)===this._activeSheet)}getSheetSize(){return this._snapshot.sheetOrder.length}getSheets(){const{sheetOrder:n}=this._snapshot;return n.map(r=>this._worksheets.get(r))}getSheetsName(){const{sheetOrder:n}=this._snapshot,r=[];return n.forEach(s=>{const i=this._worksheets.get(s);i&&r.push(i.getName())}),r}getSheetIndex(n){const{sheetOrder:r}=this._snapshot;return r.findIndex(s=>n.getSheetId()===s)}getSheetBySheetName(n){const{sheetOrder:r}=this._snapshot,s=r.find(i=>this._worksheets.get(i).getName()===n);return this._worksheets.get(s)}getSheetBySheetId(n){return this._worksheets.get(n)}getSheetByIndex(n){const{sheetOrder:r}=this._snapshot;return this._worksheets.get(r[n])}getHiddenWorksheets(){return this.getSheets().filter(n=>n.getConfig().hidden===ae.TRUE).map(n=>n.getConfig().id)}getUnhiddenWorksheets(){return this.getSheets().filter(n=>n.getConfig().hidden!==ae.TRUE).map(n=>n.getConfig().id)}load(n){this._snapshot=n}checkSheetName(n){return this.getSheetsName().includes(n)}uniqueSheetName(n="Sheet1"){let r=n;for(;this.checkSheetName(r);)r=n+this._count,this._count++;return r}generateNewSheetName(n){let r=n+this._count;for(;this.checkSheetName(r);)r=n+this._count,this._count++;return r}_parseWorksheetSnapshots(){const{_snapshot:n,_worksheets:r}=this,{sheets:s,sheetOrder:i}=n;if(K.isEmptyObject(s)){const o=K.generateRandomId();s[o]={id:o}}for(const o in s){const a=s[o],{name:l}=a;a.name=this.uniqueSheetName(l),a.name!==l&&this._logService.debug("[Workbook]",`The worksheet name ${l} is duplicated, we changed it to ${a.name}. Please fix the problem in your snapshot.`);const c=new Wr(this._unitId,a,this._styles);r.set(o,c),i.includes(o)||i.push(o)}this.ensureActiveSheet()}getCustomMetadata(){return this._snapshot.custom}setCustomMetadata(n){this._snapshot.custom=n}},f.Workbook=bR([AR(1,gt)],f.Workbook);class ea extends Us{constructor(n){var r;super();C(this,"type",we.UNIVER_SLIDE);C(this,"_activePage$",new oe.BehaviorSubject(null));C(this,"activePage$",this._activePage$.asObservable());C(this,"_name$");C(this,"name$");C(this,"_snapshot");C(this,"_unitId");this._snapshot={...kc,...n},this._unitId=(r=this._snapshot.id)!=null?r:K.generateRandomId(6),this._name$=new oe.BehaviorSubject(this._snapshot.title),this.name$=this._name$.asObservable()}get _activePage(){var r,s;const n=this._activePage$.getValue();if(!n){const i=(r=this.getPageOrder())==null?void 0:r[0];return i?(s=this.getPages())==null?void 0:s[i]:null}return n}setName(n){var r;this._snapshot.title=n,this._name$.next(n),this._unitId=(r=this._snapshot.id)!=null?r:$t(6)}getRev(){return 0}incrementRev(){}setRev(n){}getSnapshot(){return this._snapshot}getUnitId(){return this._unitId}getPages(){var n;return(n=this._snapshot.body)==null?void 0:n.pages}getPageOrder(){var n;return(n=this._snapshot.body)==null?void 0:n.pageOrder}getPage(n){const r=this.getPages();return r==null?void 0:r[n]}getElementsByPage(n){var r;return(r=this.getPage(n))==null?void 0:r.pageElements}getElement(n,r){var s;return(s=this.getElementsByPage(n))==null?void 0:s[r]}getPageSize(){return this._snapshot.pageSize}getBlankPage(){const n=$t(6);return{id:n,pageType:fo.SLIDE,zIndex:10,title:n,description:"",pageBackgroundFill:{rgb:"rgb(255,255,255)"},pageElements:{}}}setActivePage(n){this._activePage$.next(n)}getActivePage(){return this._activePage}updatePage(n,r){this._snapshot.body&&(this._snapshot.body.pages[n]=r)}appendPage(n){var i;if(!this._snapshot.body)return;this._snapshot.body.pages[n.id]=n;const r=this._activePage,s=this._snapshot.body.pageOrder.indexOf((i=r==null?void 0:r.id)!=null?i:"");this._snapshot.body.pageOrder.splice(s+1,0,n.id)}}var yR=Object.getOwnPropertyDescriptor,NR=(e,t,n,r)=>{for(var s=r>1?void 0:r?yR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},jh=(e,t)=>(n,r)=>t(n,r,e);const Xn=Re.createIdentifier("univer.current");f.UniverInstanceService=class extends ze{constructor(n,r){super();C(this,"_unitsByType",new Map);C(this,"_createHandler");C(this,"_ctorByType",new Map);C(this,"_currentUnits",new Map);C(this,"_currentUnits$",new oe.BehaviorSubject(this._currentUnits));C(this,"currentUnits$",this._currentUnits$.asObservable());C(this,"_unitAdded$",new oe.Subject);C(this,"unitAdded$",this._unitAdded$.asObservable());C(this,"_unitDisposed$",new oe.Subject);C(this,"unitDisposed$",this._unitDisposed$.asObservable());C(this,"_focused$",new oe.BehaviorSubject(null));C(this,"focused$",this._focused$.asObservable());this._injector=n,this._contextService=r}dispose(){super.dispose(),this._focused$.complete()}__setCreateHandler(n){this._createHandler=n}createUnit(n,r,s){return this._createHandler(n,r,this._ctorByType.get(n),s)}registerCtorForType(n,r){return this._ctorByType.set(n,r),{dispose:()=>{this._ctorByType.delete(n)}}}getCurrentTypeOfUnit$(n){return this.currentUnits$.pipe(oe.map(r=>{var s;return(s=r.get(n))!=null?s:null}),oe.distinctUntilChanged())}getCurrentUnitForType(n){return this._currentUnits.get(n)}getCurrentUnitOfType(n){return this.getCurrentUnitForType(n)}setCurrentUnitForType(n){const r=this._getUnitById(n);if(!r)throw new Error(`[UniverInstanceService]: no document with unitId ${n}!`);this._currentUnits.set(r[1],r[0]),this._currentUnits$.next(this._currentUnits)}getTypeOfUnitAdded$(n){return this._unitAdded$.pipe(oe.filter(r=>r.type===n))}__addUnit(n,r){var a;const s=n.type;this._unitsByType.has(s)||this._unitsByType.set(s,[]);const i=this._unitsByType.get(s),o=n.getUnitId();if(i.findIndex(l=>l.getUnitId()===o)!==-1)throw new Error(`[UniverInstanceService]: cannot create a unit with the same unit id: ${o}.`);i.push(n),this._unitAdded$.next(n),((a=r==null?void 0:r.makeCurrent)==null||a)&&this.setCurrentUnitForType(n.getUnitId())}getTypeOfUnitDisposed$(n){return this.unitDisposed$.pipe(oe.filter(r=>r.type===n))}getUnit(n,r){var i;const s=(i=this._getUnitById(n))==null?void 0:i[0];return r&&(s==null?void 0:s.type)!==r?null:s}getCurrentUniverDocInstance(){return this.getCurrentUnitForType(we.UNIVER_DOC)}getUniverDocInstance(n){return this.getUnit(n,we.UNIVER_DOC)}getUniverSheetInstance(n){return this.getUnit(n,we.UNIVER_SHEET)}getAllUnitsForType(n){var r;return(r=this._unitsByType.get(n))!=null?r:[]}changeDoc(n,r){const s=this.getAllUnitsForType(we.UNIVER_DOC),i=s.find(o=>o.getUnitId()===n);if(i!=null){const o=s.indexOf(i);s.splice(o,1)}this.__addUnit(r)}get focused(){var r;const n=this._focused$.getValue();return n?(r=this._getUnitById(n))==null?void 0:r[0]:null}focusUnit(n){this._focused$.next(n),this.focused instanceof f.Workbook?(this._contextService.setContextValue(xr,!0),this._contextService.setContextValue(Br,!1),this._contextService.setContextValue(Kn,!0),this._contextService.setContextValue($r,!1),this.setCurrentUnitForType(n)):this.focused instanceof bt?(this._contextService.setContextValue(xr,!0),this._contextService.setContextValue(Br,!0),this._contextService.setContextValue(Kn,!1),this._contextService.setContextValue($r,!1),this.setCurrentUnitForType(n)):this.focused instanceof ea?(this._contextService.setContextValue(xr,!0),this._contextService.setContextValue(Br,!1),this._contextService.setContextValue(Kn,!1),this._contextService.setContextValue($r,!0),this.setCurrentUnitForType(n)):(this._contextService.setContextValue(xr,!1),this._contextService.setContextValue(Br,!1),this._contextService.setContextValue(Kn,!1),this._contextService.setContextValue($r,!1))}getFocusedUnit(){return this.focused}getUnitType(n){const r=this._getUnitById(n);return r?r[1]:we.UNRECOGNIZED}disposeUnit(n){const r=this._getUnitById(n);if(!r)return!1;const[s,i]=r,o=this._unitsByType.get(i),a=o.indexOf(s);return o.splice(a,1),this._tryResetCurrentOnRemoval(n,i),this._tryResetFocusOnRemoval(n),this._unitDisposed$.next(s),!0}_tryResetCurrentOnRemoval(n,r){const s=this.getCurrentUnitForType(r);(s==null?void 0:s.getUnitId())===n&&(this._currentUnits.set(r,null),this._currentUnits$.next(this._currentUnits))}_tryResetFocusOnRemoval(n){var r;((r=this.focused)==null?void 0:r.getUnitId())===n&&this._focused$.next(null)}_getUnitById(n){for(const[r,s]of this._unitsByType){const i=s.find(o=>o.getUnitId()===n);if(i)return[i,r]}}},f.UniverInstanceService=NR([jh(0,Re.Inject(Re.Injector)),jh(1,An)],f.UniverInstanceService);var ke=(e=>(e[e.Starting=0]="Starting",e[e.Ready=1]="Ready",e[e.Rendered=2]="Rendered",e[e.Steady=3]="Steady",e))(ke||{});const Yh={0:"Starting",1:"Ready",2:"Rendered",3:"Steady"};var MR=Object.getOwnPropertyDescriptor,LR=(e,t,n,r)=>{for(var s=r>1?void 0:r?MR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},DR=(e,t)=>(n,r)=>t(n,r,e);class Gh extends Error{constructor(t){super(`[LifecycleService]: lifecycle stage "${Yh[t]}" will never be reached!`),this.name="LifecycleUnreachableError"}}f.LifecycleService=class extends ze{constructor(n){super();C(this,"_lifecycle$",new oe.BehaviorSubject(ke.Starting));C(this,"lifecycle$",this._lifecycle$.asObservable());C(this,"_lock",!1);this._logService=n,this._reportProgress(ke.Starting)}get stage(){return this._lifecycle$.getValue()}set stage(n){if(this._lock)throw new Error("[LifecycleService]: cannot set new stage when related logic is all handled!");if(n<this.stage)throw new Error("[LifecycleService]: lifecycle stage cannot go backward!");n!==this.stage&&(this._lock=!0,this._reportProgress(n),this._lifecycle$.next(n),this._lock=!1)}dispose(){this._lifecycle$.complete(),super.dispose()}onStage(n){return oe.firstValueFrom(this.lifecycle$.pipe(oe.filter(r=>r>=n),ai(r=>r===n),oe.map(()=>{}))).catch(r=>r.name==="EmptyError"?Promise.reject(new Gh(n)):Promise.reject(r))}subscribeWithPrevious(){return oe.merge(Vh(this.stage),this._lifecycle$.pipe(oe.skip(1))).pipe(ai(n=>n===ke.Steady))}_reportProgress(n){this._logService.debug("[LifecycleService]",`lifecycle progressed to "${Yh[n]}".`)}},f.LifecycleService=LR([DR(0,gt)],f.LifecycleService);function Vh(e){switch(e){case ke.Starting:return oe.of(ke.Starting);case ke.Ready:return oe.of(ke.Starting,ke.Ready);case ke.Rendered:return oe.of(ke.Starting,ke.Ready,ke.Rendered);default:return oe.of(ke.Starting,ke.Ready,ke.Rendered,ke.Steady)}}const UR=Re.createIdentifier("ILocalStorageService");class Sn extends ze{constructor(){super();C(this,"_currentLocale$",new oe.BehaviorSubject(ar.ZH_CN));C(this,"currentLocale$",this._currentLocale$.asObservable());C(this,"_locales",null);C(this,"localeChanged$",new oe.Subject);C(this,"t",(n,...r)=>{if(!this._locales)throw new Error("[LocaleService]: Locale not initialized");const s=n.split("."),i=this.resolveKeyPath(this._locales[this._currentLocale],s);if(typeof i=="string"){let o=i;return r.forEach((a,l)=>{o=o.replace(`{${l}}`,a)}),o}else return n});this.disposeWithMe(je(()=>{this._locales=null,this._currentLocale$.complete(),this.localeChanged$.complete()}))}get _currentLocale(){return this._currentLocale$.value}load(n){var r;this._locales=Xo((r=this._locales)!=null?r:{},n)}setLocale(n){this._currentLocale$.next(n),this.localeChanged$.next()}getLocales(){var n;return(n=this._locales)==null?void 0:n[this._currentLocale]}getCurrentLocale(){return this._currentLocale}resolveKeyPath(n,r){const s=r.shift();if(s&&n&&s in n){const i=n[s];return r.length>0&&(typeof i=="object"||Array.isArray(i))?this.resolveKeyPath(i,r):i}return null}}var PR=Object.getOwnPropertyDescriptor,kR=(e,t,n,r)=>{for(var s=r>1?void 0:r?PR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},FR=(e,t)=>(n,r)=>t(n,r,e);f.MentionIOLocalService=class{constructor(t){this._userManagerService=t}async list(t){return{list:[{type:Qr.PERSON,mentions:[{objectType:Qr.PERSON,objectId:this._userManagerService.getCurrentUser().userID,label:this._userManagerService.getCurrentUser().name,metadata:{icon:this._userManagerService.getCurrentUser().avatar}}],metadata:{},title:"PEOPLE"}],page:t.page,size:t.size,total:1}}},f.MentionIOLocalService=kR([FR(0,Re.Inject(Dr))],f.MentionIOLocalService);const zh=Re.createIdentifier("univer.service.mention-io");var ta=(e=>(e.INIT="init",e.FETCHING="fetching",e.DONE="done",e))(ta||{});const Kh=Re.createIdentifier("univer.permission-service");class Xh extends ze{constructor(){super(...arguments);C(this,"_permissionPointMap",new Map);C(this,"_permissionPointUpdate$",new oe.Subject);C(this,"permissionPointUpdate$",this._permissionPointUpdate$.asObservable());C(this,"_showComponents",!0)}setShowComponents(n){this._showComponents=n}getShowComponents(){return this._showComponents}deletePermissionPoint(n){const r=this._permissionPointMap.get(n);r&&(r.complete(),this._permissionPointMap.delete(n))}addPermissionPoint(n){const r=n instanceof oe.BehaviorSubject,s=r?n.getValue():n;if(!s.id)return!1;if(this._permissionPointMap.get(s.id))throw new Error(`${s.id} PermissionPoint already exists`);return this._permissionPointMap.set(s.id,r?n:new oe.BehaviorSubject(s)),this._permissionPointUpdate$.next(s),!0}updatePermissionPoint(n,r){const s=this._permissionPointMap.get(n);if(!s)return;const i=s.getValue();i.value=r,i.status=ta.DONE,s.next(i),this._permissionPointUpdate$.next(i)}clearPermissionMap(){this._permissionPointMap.clear()}getPermissionPoint(n){const r=this._permissionPointMap.get(n);if(r)return r.getValue()}getPermissionPoint$(n){const r=this._permissionPointMap.get(n);if(r)return r}composePermission$(n){const r=n.map(s=>{var o;const i=(o=this._permissionPointMap)==null?void 0:o.get(s);if(!i)throw new Error(`[PermissionService]: ${s} permissionPoint does not exist!`);return i.asObservable()});return oe.combineLatest(r).pipe(zr.map(s=>s))}composePermission(n){return n.map(s=>{var o;const i=(o=this._permissionPointMap)==null?void 0:o.get(s);if(!i)throw new Error(`[PermissionService]: ${s} permissionPoint does not exist!`);return i.getValue()})}getAllPermissionPoint(){const n=new Map;return this._permissionPointMap.forEach((r,s)=>{n.set(s,r)}),n}}function qh(e,t){if(!t)return e;const n=[];for(const r of e){const s=t.find(([i])=>i===r[0]);if(s){if(s[1]===null)continue;n.push([r[0],s[1]])}else n.push(r)}return n}var xR=Object.getOwnPropertyDescriptor,BR=(e,t,n,r)=>{for(var s=r>1?void 0:r?xR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},na=(e,t)=>(n,r)=>t(n,r,e);const $R=4,Zh=Symbol("DependentOn");class ra extends ze{onStarting(){}onReady(){}onRendered(){}onSteady(){}getUnitType(){return this.constructor.type}getPluginName(){return this.constructor.pluginName}}C(ra,"pluginName"),C(ra,"type",we.UNIVER_UNKNOWN);class HR{constructor(){C(this,"_plugins",[])}addPlugin(t){this._plugins.push(t)}removePlugins(){const t=this._plugins.slice();return this._plugins.length=0,t}forEachPlugin(t){this._plugins.forEach(t)}}function WR(...e){return function(t){t[Zh]=e}}f.PluginService=class{constructor(t,n,r){C(this,"_pluginRegistry",new Map);C(this,"_pluginStore",new HR);C(this,"_seenPlugins",new Set);C(this,"_loadedPlugins",new Set);C(this,"_loadedPluginTypes",new Set([we.UNIVER_UNKNOWN]));C(this,"_flushTimerByType",new Map);this._injector=t,this._lifecycleService=n,this._logService=r}dispose(){this._pluginStore.removePlugins().forEach(t=>t.dispose()),this._flushTimerByType.forEach(t=>clearTimeout(t))}registerPlugin(t,n){this._assertPluginValid(t);const r={plugin:t,options:n};this._pluginRegistry.set(t.pluginName,r),this._logService.debug("[PluginService]",`Plugin "${t.pluginName}" registered.`);const{type:s}=t;this._loadedPluginTypes.has(s)&&(s===we.UNIVER_UNKNOWN?this._loadFromPlugins([r]):this._flushType(s))}startPluginsForType(t){this._loadedPluginTypes.has(t)||this._loadPluginsForType(t)}_loadPluginsForType(t){const n=Array.from(this._pluginRegistry.keys()),r=[];n.forEach(s=>{const i=this._pluginRegistry.get(s);i.plugin.type===t&&r.push(i)}),this._loadFromPlugins(r),this._loadedPluginTypes.add(t)}_assertPluginValid(t){const{type:n,pluginName:r}=t;if(n===we.UNRECOGNIZED)throw new Error(`[PluginService]: invalid plugin type for ${t.name}. Please assign a "type" to your plugin.`);if(!r)throw new Error(`[PluginService]: no plugin name for ${t.name}. Please assign a "pluginName" to your plugin.`);if(this._seenPlugins.has(r))throw new Error(`[PluginService]: duplicated plugin name for "${r}". Maybe a plugin that dependents on "${r} has already registered it. In that case please register "${r}" before the that plugin.`);this._seenPlugins.add(t.pluginName)}_flushType(t){this._flushTimerByType.get(t)===void 0&&this._flushTimerByType.set(t,setTimeout(()=>{this._loadPluginsForType(t),this._flushTimerByType.delete(t)},$R))}_loadFromPlugins(t){const n=[],r=new Set,s=o=>{const{plugin:a}=o,{pluginName:l}=a;if(this._loadedPlugins.has(l)||r.has(l))return;r.add(l),this._pluginRegistry.delete(l);const c=a[Zh];c&&c.forEach(u=>{const h=this._pluginRegistry.get(u.pluginName);if(h)s(h);else if(!this._seenPlugins.has(u.pluginName)&&!r.has(u.pluginName)){if(a.type===we.UNIVER_UNKNOWN&&u.type!==we.UNIVER_UNKNOWN)throw new Error(`[PluginService]: cannot register a plugin with Univer type that depends on a plugin with other type. The dependent is ${a.pluginName} and the dependency is ${u.pluginName}.`);a.type!==u.type&&u.type!==we.UNIVER_UNKNOWN&&this._logService.debug("[PluginService]",`Plugin "${l}" depends on "${u.pluginName}" which has different type.`),this._logService.debug("[PluginService]",`Plugin "${l}" depends on "${u.pluginName}" which is not registered. Univer will automatically register it with default configuration.`),this._assertPluginValid(u),s({plugin:u,options:void 0})}}),n.push(o)};t.forEach(o=>s(o));const i=n.map(o=>this._initPlugin(o.plugin,o.options));this._pluginsRunLifecycle(i)}_pluginsRunLifecycle(t){const n=this._lifecycleService.stage;if(Vh(n).subscribe(r=>this._runStage(t,r)),n!==ke.Steady){const r=this._lifecycleService.lifecycle$.pipe(oe.skip(1)).subscribe(s=>{this._runStage(t,s),s===ke.Steady&&r.unsubscribe()})}}_runStage(t,n){t.forEach(r=>{switch(n){case ke.Starting:r.onStarting();break;case ke.Ready:r.onReady();break;case ke.Rendered:r.onRendered();break;case ke.Steady:r.onSteady();break}})}_initPlugin(t,n){const r=this._injector.createInstance(t,n);return this._pluginStore.addPlugin(r),this._loadedPlugins.add(t.pluginName),this._logService.debug("[PluginService]",`Plugin "${r.getPluginName()}" loaded.`),r}},f.PluginService=BR([na(0,Re.Inject(Re.Injector)),na(1,Re.Inject(f.LifecycleService)),na(2,gt)],f.PluginService);const sa=Re.createIdentifier("resource-loader-service");var jR=Object.getOwnPropertyDescriptor,YR=(e,t,n,r)=>{for(var s=r>1?void 0:r?jR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},GR=(e,t)=>(n,r)=>t(n,r,e);f.ResourceManagerService=class extends ze{constructor(n){super();C(this,"_resourceMap",new Map);C(this,"_register$",new oe.Subject);C(this,"register$",this._register$.asObservable());this._logService=n}getAllResourceHooks(){return[...this._resourceMap.values()]}getResources(n,r){return r?this.getResourcesByType(n,r):this.getAllResourceHooks().map(o=>{const a=o.toJson(n);return{name:o.pluginName,data:a}})}getResourcesByType(n,r){return this.getAllResourceHooks().filter(o=>o.businesses.includes(r)).map(o=>{const a=o.toJson(n);return{name:o.pluginName,data:a}})}registerPluginResource(n){const r=n.pluginName;if(this._resourceMap.has(r))throw new Error(`the pluginName is registered {${r}}`);return this._resourceMap.set(r,n),this._register$.next(n),je(()=>this._resourceMap.delete(r))}disposePluginResource(n){this._resourceMap.delete(n)}loadResources(n,r){this.getAllResourceHooks().forEach(s=>{var o;const i=(o=r==null?void 0:r.find(a=>a.name===s.pluginName))==null?void 0:o.data;if(i)try{const a=s.parseJson(i);s.onLoad(n,a)}catch(a){this._logService.error("[ResourceManagerService]","loadResources error",a)}})}unloadResources(n){this.getAllResourceHooks().forEach(r=>{r.onUnLoad(n)})}dispose(){this._register$.complete(),this._resourceMap.clear()}},f.ResourceManagerService=YR([GR(0,gt)],f.ResourceManagerService);class Xs extends ze{constructor(){super();C(this,"_darkMode$",new oe.BehaviorSubject(!1));C(this,"darkMode$",this._darkMode$.asObservable());C(this,"_validColorCache",new Map);C(this,"_currentTheme",Kr.defaultTheme);C(this,"_currentTheme$",new oe.BehaviorSubject(this._currentTheme));C(this,"currentTheme$",this._currentTheme$.asObservable());this.disposeWithMe(je(()=>{this._currentTheme=Kr.defaultTheme,this._currentTheme$.complete(),this._darkMode$.complete()}))}get darkMode(){return this._darkMode$.getValue()}isValidThemeColor(n){if(this._validColorCache.has(n))return this._validColorCache.get(n);let r=!1;const s=n.split(".");if(s.length===1)r=n in Kr.defaultTheme;else if(s.length===2){const[i,o]=s;r=i in Kr.defaultTheme&&o in this._currentTheme[i]}return this._validColorCache.set(n,r),r}getCurrentTheme(){return this._currentTheme}setTheme(n){this._currentTheme=n,this._currentTheme$.next(n)}setDarkMode(n){this._darkMode$.next(n)}getColorFromTheme(n){return mh(this._currentTheme,n)}}var VR=Object.getOwnPropertyDescriptor,zR=(e,t,n,r)=>{for(var s=r>1?void 0:r?VR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},ia=(e,t)=>(n,r)=>t(n,r,e);const qs=Re.createIdentifier("univer.undo-redo.service"),KR=20;class Jh{dispose(){}async dispatchToHandlers(){return!1}}const Qh="univer.command.redo",ed="univer.command.undo",td=new class extends Jh{constructor(){super(...arguments);C(this,"type",rr.COMMAND);C(this,"id",ed)}handler(t){const n=t.get(qs),r=n.pitchTopUndoElement();if(!r)return!1;const s=t.get(sr);return Jr(r.undoMutations,s)?(n.popUndoToRedo(),!0):!1}},nd=new class extends Jh{constructor(){super(...arguments);C(this,"type",rr.COMMAND);C(this,"id",Qh)}handler(t){const n=t.get(qs),r=n.pitchTopRedoElement();if(!r)return!1;const s=t.get(sr);return Jr(r.redoMutations,s)?(n.popRedoToUndo(),!0):!1}};f.LocalUndoRedoService=class extends ze{constructor(n,r,s){super();C(this,"undoRedoStatus$");C(this,"_undoRedoStatus$",new oe.BehaviorSubject({undos:0,redos:0}));C(this,"_undoStacks",new Map);C(this,"_redoStacks",new Map);C(this,"_batchingStatus",new Map);this._univerInstanceService=n,this._commandService=r,this._contextService=s,this.undoRedoStatus$=this._undoRedoStatus$.asObservable(),this.disposeWithMe(this._commandService.registerCommand(td)),this.disposeWithMe(this._commandService.registerCommand(nd)),this.disposeWithMe(je(()=>this._undoRedoStatus$.complete())),this.disposeWithMe(je(this._univerInstanceService.focused$.subscribe(()=>this._updateStatus())))}pushUndoRedo(n){const{unitID:r}=n,s=this._getRedoStack(r,!0),i=this._getUndoStack(r,!0);if(s.length=0,this._batchingStatus.has(n.unitID)){const a=this._batchingStatus.get(n.unitID),l=this._pitchUndoElement(n.unitID);a===0||!l?(o(n),this._batchingStatus.set(n.unitID,1)):this._tryBatchingElements(l,n)}else o(n);function o(a){i.push(a),i.length>KR&&i.splice(0,1)}this._updateStatus()}clearUndoRedo(n){const r=this._getRedoStack(n);r&&(r.length=0);const s=this._getUndoStack(n);s&&(s.length=0),this._updateStatus()}pitchTopUndoElement(){const n=this._getFocusedUnitId();return this._pitchUndoElement(n)}pitchTopRedoElement(){const n=this._getFocusedUnitId();return this._pitchRedoElement(n)}_pitchUndoElement(n){const r=this._getUndoStack(n);return r!=null&&r.length?r[r.length-1]:null}_pitchRedoElement(n){const r=this._getRedoStack(n);return r!=null&&r.length?r[r.length-1]:null}popUndoToRedo(){const r=this._getUndoStackForFocused().pop();r&&(this._getRedoStackForFocused().push(r),this._updateStatus())}popRedoToUndo(){const r=this._getRedoStackForFocused().pop();r&&(this._getUndoStackForFocused().push(r),this._updateStatus())}rollback(n,r){const s=r||this._getFocusedUnitId(),i=this._getUndoStack(s),o=i==null?void 0:i[(i==null?void 0:i.length)-1];o&&o.id===n&&(i.pop(),Jr(o.undoMutations,this._commandService))}__tempBatchingUndoRedo(n){if(this._batchingStatus.has(n))throw new Error("[LocalUndoRedoService]: cannot batching undo redo twice at the same time!");return this._batchingStatus.set(n,0),je(()=>this._batchingStatus.delete(n))}_updateStatus(){var i,o;const n=this._getFocusedUnitId(),r=n&&((i=this._undoStacks.get(n))==null?void 0:i.length)||0,s=n&&((o=this._redoStacks.get(n))==null?void 0:o.length)||0;this._undoRedoStatus$.next({undos:r,redos:s})}_getUndoStack(n,r=!1){let s=this._undoStacks.get(n);return!s&&r&&(s=[],this._undoStacks.set(n,s)),s||null}_getRedoStack(n,r=!1){let s=this._redoStacks.get(n);return!s&&r&&(s=[],this._redoStacks.set(n,s)),s||null}_getUndoStackForFocused(){const n=this._getFocusedUnitId();if(!n)throw new Error("No focused univer instance!");return this._getUndoStack(n,!0)}_getRedoStackForFocused(){const n=this._getFocusedUnitId();if(!n)throw new Error("No focused univer instance!");return this._getRedoStack(n,!0)}_tryBatchingElements(n,r){n.redoMutations.push(...r.redoMutations),n.undoMutations.push(...r.undoMutations)}_getFocusedUnitId(){var o,a,l,c;let n="";const r=this._contextService.getContextValue(Kn),s=this._contextService.getContextValue(Oh),i=this._contextService.getContextValue(Sh);return r?s?n=ni:i?n=ti:n=(a=(o=this._univerInstanceService.getFocusedUnit())==null?void 0:o.getUnitId())!=null?a:"":n=(c=(l=this._univerInstanceService.getFocusedUnit())==null?void 0:l.getUnitId())!=null?c:"",n}},f.LocalUndoRedoService=zR([ia(0,Xn),ia(1,sr),ia(2,An)],f.LocalUndoRedoService);class rd{constructor(t,n=100){C(this,"_imageCacheMap");this._injector=t,this._imageCacheMap=new cr(n)}_getImageCacheKey(t,n){return`${t}-${n}`}getImage(t,n,r,s){const i=this._getImageCacheKey(t,n),o=this._imageCacheMap.get(i);return o||((async()=>{const a=new Image,l=this._injector.has(Jo)?this._injector.get(Jo):null;if(t===Zo.UUID)try{a.src=await(l==null?void 0:l.getImage(n))||""}catch(c){console.error(c)}else a.src=n;a.onload=()=>{a.removeAttribute("data-error"),r==null||r()},a.onerror=()=>{a.setAttribute("data-error","true"),s==null||s()},this._imageCacheMap.set(i,a)})(),null)}}function XR(e){return!(e.length===0||e.length>31||e.startsWith("'")||e.endsWith("'")||/[:\\\/\?\*\[\]]/.test(e))}const sd=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],oa=1,jr=8;class aa{static from(t){if(!(t instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");const[n,r]=new Uint8Array(t,0,2);if(n!==219)throw new Error("Data does not appear to be in a KDBush format.");const s=r>>4;if(s!==oa)throw new Error(`Got v${s} data when expected v${oa}.`);const i=sd[r&15];if(!i)throw new Error("Unrecognized array type.");const[o]=new Uint16Array(t,2,1),[a]=new Uint32Array(t,4,1);return new aa(a,o,i,t)}constructor(t,n=64,r=Float64Array,s){if(isNaN(t)||t<0)throw new Error(`Unpexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+n,2),65535),this.ArrayType=r,this.IndexArrayType=t<65536?Uint16Array:Uint32Array;const i=sd.indexOf(this.ArrayType),o=t*2*this.ArrayType.BYTES_PER_ELEMENT,a=t*this.IndexArrayType.BYTES_PER_ELEMENT,l=(8-a%8)%8;if(i<0)throw new Error(`Unexpected typed array class: ${r}.`);s&&s instanceof ArrayBuffer?(this.data=s,this.ids=new this.IndexArrayType(this.data,jr,t),this.coords=new this.ArrayType(this.data,jr+a+l,t*2),this._pos=t*2,this._finished=!0):(this.data=new ArrayBuffer(jr+o+a+l),this.ids=new this.IndexArrayType(this.data,jr,t),this.coords=new this.ArrayType(this.data,jr+a+l,t*2),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,(oa<<4)+i]),new Uint16Array(this.data,2,1)[0]=n,new Uint32Array(this.data,4,1)[0]=t)}add(t,n){const r=this._pos>>1;return this.ids[r]=r,this.coords[this._pos++]=t,this.coords[this._pos++]=n,r}finish(){const t=this._pos>>1;if(t!==this.numItems)throw new Error(`Added ${t} items when expected ${this.numItems}.`);return la(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(t,n,r,s){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:i,coords:o,nodeSize:a}=this,l=[0,i.length-1,0],c=[];for(;l.length;){const u=l.pop()||0,h=l.pop()||0,d=l.pop()||0;if(h-d<=a){for(let I=d;I<=h;I++){const A=o[2*I],B=o[2*I+1];A>=t&&A<=r&&B>=n&&B<=s&&c.push(i[I])}continue}const m=d+h>>1,_=o[2*m],p=o[2*m+1];_>=t&&_<=r&&p>=n&&p<=s&&c.push(i[m]),(u===0?t<=_:n<=p)&&(l.push(d),l.push(m-1),l.push(1-u)),(u===0?r>=_:s>=p)&&(l.push(m+1),l.push(h),l.push(1-u))}return c}within(t,n,r){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:s,coords:i,nodeSize:o}=this,a=[0,s.length-1,0],l=[],c=r*r;for(;a.length;){const u=a.pop()||0,h=a.pop()||0,d=a.pop()||0;if(h-d<=o){for(let I=d;I<=h;I++)od(i[2*I],i[2*I+1],t,n)<=c&&l.push(s[I]);continue}const m=d+h>>1,_=i[2*m],p=i[2*m+1];od(_,p,t,n)<=c&&l.push(s[m]),(u===0?t-r<=_:n-r<=p)&&(a.push(d),a.push(m-1),a.push(1-u)),(u===0?t+r>=_:n+r>=p)&&(a.push(m+1),a.push(h),a.push(1-u))}return l}}function la(e,t,n,r,s,i){if(s-r<=n)return;const o=r+s>>1;id(e,t,o,r,s,i),la(e,t,n,r,o-1,1-i),la(e,t,n,o+1,s,1-i)}function id(e,t,n,r,s,i){for(;s>r;){if(s-r>600){const c=s-r+1,u=n-r+1,h=Math.log(c),d=.5*Math.exp(2*h/3),m=.5*Math.sqrt(h*d*(c-d)/c)*(u-c/2<0?-1:1),_=Math.max(r,Math.floor(n-u*d/c+m)),p=Math.min(s,Math.floor(n+(c-u)*d/c+m));id(e,t,n,_,p,i)}const o=t[2*n+i];let a=r,l=s;for(Yr(e,t,r,n),t[2*s+i]>o&&Yr(e,t,r,s);a<l;){for(Yr(e,t,a,l),a++,l--;t[2*a+i]<o;)a++;for(;t[2*l+i]>o;)l--}t[2*r+i]===o?Yr(e,t,r,l):(l++,Yr(e,t,l,s)),l<=n&&(r=l+1),n<=l&&(s=l-1)}}function Yr(e,t,n,r){ca(e,n,r),ca(t,2*n,2*r),ca(t,2*n+1,2*r+1)}function ca(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function od(e,t,n,r){const s=e-n,i=t-r;return s*s+i*i}class qR{constructor(t=!1){C(this,"_tree",new Map);C(this,"_oneCellCache",new Map);C(this,"_kdTree",new Map);this._enableOneCellCache=t}dispose(){this.clear()}getTree(t,n){return this._tree.has(t)||this._tree.set(t,new Map),this._tree.get(t).has(n)||this._tree.get(t).set(n,new Ns),this._tree.get(t).get(n)}_getOneCellCache(t,n,r,s){return this._oneCellCache.has(t)||this._oneCellCache.set(t,new Map),this._oneCellCache.get(t).has(n)||this._oneCellCache.get(t).set(n,new Map),this._oneCellCache.get(t).get(n).has(r)||this._oneCellCache.get(t).get(n).set(r,new Map),this._oneCellCache.get(t).get(n).get(r).has(s)||this._oneCellCache.get(t).get(n).get(r).set(s,new Set),this._oneCellCache.get(t).get(n).get(r).get(s)}_removeOneCellCache(t,n,r,s,i){const o=this._oneCellCache.get(t);if(!o)return;const a=o.get(n);if(!a)return;const l=a.get(r);if(!l)return;const c=l.get(s);c&&c.delete(i)}_removeCellCacheByRange(t){const{unitId:n,sheetId:r,range:s,id:i}=t,o=this._oneCellCache.get(n);if(!o)return;const a=o.get(r);if(!a)return;const{startRow:l,startColumn:c,endRow:u,endColumn:h}=s;for(let d=l;d<=u;d++){const m=a.get(d);if(m)for(let _=c;_<=h;_++){const p=m.get(_);p&&p.delete(i)}}}_insertOneCellCache(t,n,r,s,i){this._getOneCellCache(t,n,r,s).add(i)}_getRdTreeItems(t){const n=[];for(const[r,s]of t)for(const[i,o]of s)n.push({x:i,y:r,ids:o});return n}_searchByOneCellCache(t){var _;const{unitId:n,sheetId:r,range:s}=t,{startRow:i,startColumn:o,endRow:a,endColumn:l}=s,c=(_=this._kdTree.get(n))==null?void 0:_.get(r);if(!c)return[];const{tree:u,items:h}=c,d=u.range(o,i,l,a),m=[];for(const p of d){const I=h[p];m.push(...Array.from(I.ids))}return m}openKdTree(){var t;for(const[n,r]of this._oneCellCache){this._kdTree.has(n)||this._kdTree.set(n,new Map);for(const[s,i]of r){const o=this._getRdTreeItems(i),a=new aa(o.length);(t=this._kdTree.get(n))==null||t.set(s,{tree:a,items:o});for(const l of o)a.add(l.x,l.y);a.finish()}}}closeKdTree(){var t;for(const[n,r]of this._oneCellCache)for(const[s,i]of r)(t=this._kdTree.get(n))==null||t.set(s,void 0)}insert(t){const{unitId:n,sheetId:r,range:s,id:i}=t;if(!n||n.length===0)return;let{startRow:o,endRow:a,startColumn:l,endColumn:c}=s;if(this._enableOneCellCache&&o===a&&l===c){this._insertOneCellCache(n,r,o,l,i);return}const u=this.getTree(n,r);Number.isNaN(o)&&(o=0),Number.isNaN(l)&&(l=0),Number.isNaN(a)&&(a=Number.POSITIVE_INFINITY),Number.isNaN(c)&&(c=Number.POSITIVE_INFINITY),u.insert({minX:l,minY:o,maxX:c,maxY:a,id:i})}bulkInsert(t){for(const n of t)this.insert(n)}*searchGenerator(t){var a;const{unitId:n,sheetId:r,range:s}=t;if(this._enableOneCellCache){const l=this._searchByOneCellCache(t);for(const c of l)yield c}const i=(a=this._tree.get(n))==null?void 0:a.get(r);if(!i)return;const o=i.search({minX:s.startColumn,minY:s.startRow,maxX:s.endColumn,maxY:s.endRow});for(const l of o)yield l.id}bulkSearch(t,n){const r=new Set;for(const s of t)for(const i of this.searchGenerator(s))(n==null?void 0:n.has(i))!==!0&&r.add(i);return r}removeById(t,n){var r,s;n?((r=this._tree.get(t))==null||r.delete(n),(s=this._oneCellCache.get(t))==null||s.delete(n)):(this._tree.delete(t),this._oneCellCache.delete(t))}_removeRTreeItem(t){const{unitId:n,sheetId:r,range:s,id:i}=t,o=this.getTree(n,r),a=o.search({minX:s.startColumn,minY:s.startRow,maxX:s.endColumn,maxY:s.endRow});for(let l=0;l<a.length;l++)a[l].id===i&&o.remove(a[l])}remove(t){const{unitId:n,sheetId:r,range:s,id:i}=t,{startRow:o,startColumn:a,endRow:l,endColumn:c}=s;this._enableOneCellCache?o===l&&a===c?this._removeOneCellCache(n,r,s.startRow,s.startColumn,i):(this._removeCellCacheByRange(t),this._removeRTreeItem(t)):this._removeRTreeItem(t)}bulkRemove(t){for(const n of t)this.remove(n)}clear(){this._tree.clear(),this._oneCellCache.clear()}toJSON(){const t={};return this._tree.forEach((n,r)=>{t[r]={},n.forEach((s,i)=>{t[r][i]=s.toJSON()})}),t}fromJSON(t){this._tree.clear();for(const n in t){this._tree.set(n,new Map);for(const r in t[n]){const s=new Ns;s.fromJSON(t[n][r]),this._tree.get(n).set(r,s)}}}}function ZR(e){return new Promise(t=>setTimeout(t,e))}function JR(e=1){return new Promise(t=>{let n=0;const r=()=>{n++,n>=e?t():requestAnimationFrame(r)};requestAnimationFrame(r)})}var QR=Object.getOwnPropertyDescriptor,eI=(e,t,n,r)=>{for(var s=r>1?void 0:r?QR(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},tI=(e,t)=>(n,r)=>t(n,r,e);f.Skeleton=class extends ze{constructor(n){super();C(this,"_fontLocale");C(this,"_dirty",!0);this._localeService=n,this._localeInitial()}get dirty(){return this._dirty}getFontLocale(){return this._fontLocale}makeDirty(n){this._dirty=n}dispose(){super.dispose(),this._fontLocale=null}_localeInitial(){}},f.Skeleton=eI([tI(0,Re.Inject(Sn))],f.Skeleton);var nI=Object.getOwnPropertyDescriptor,rI=(e,t,n,r)=>{for(var s=r>1?void 0:r?nI(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},Zs=(e,t)=>(n,r)=>t(n,r,e);f.SheetSkeleton=class extends f.Skeleton{constructor(n,r,s,i,o,a){super(s);C(this,"_worksheetData");C(this,"_renderRawFormula",!1);C(this,"_cellData");C(this,"_imageCacheMap");C(this,"_skipAutoHeightForMergedCells",!0);C(this,"_rowTotalHeight",0);C(this,"_columnTotalWidth",0);C(this,"_rowHeaderWidth",0);C(this,"_columnHeaderHeight",0);C(this,"_rowHeightAccumulation",[]);C(this,"_columnWidthAccumulation",[]);C(this,"_marginTop",0);C(this,"_marginLeft",0);C(this,"_scaleX");C(this,"_scaleY");C(this,"_scrollX");C(this,"_scrollY");this.worksheet=n,this._styles=r,this._contextService=i,this._configService=o,this._injector=a,this._worksheetData=this.worksheet.getConfig(),this._cellData=this.worksheet.getCellMatrix(),this._imageCacheMap=new rd(this._injector),this.initConfig()}initConfig(){var n,r;this._skipAutoHeightForMergedCells=!((n=this._configService.getConfig(Ea))!=null&&n),this.worksheet.setIsRowStylePrecedeColumnStyle((r=this._configService.getConfig(pa))!=null?r:!1)}resetCache(){}getWorksheetConfig(){return this._worksheetData}getLocation(){return[this.worksheet.getUnitId(),this.worksheet.getSheetId()]}set columnHeaderHeight(n){this._columnHeaderHeight=n,this._worksheetData.columnHeader.height=n}set rowHeaderWidth(n){this._rowHeaderWidth=n,this._worksheetData.rowHeader.width=n}get rowHeightAccumulation(){return this._rowHeightAccumulation}get rowTotalHeight(){return this._rowTotalHeight}get columnWidthAccumulation(){return this._columnWidthAccumulation}get columnTotalWidth(){return this._columnTotalWidth}get rowHeaderWidth(){return this._rowHeaderWidth}get columnHeaderHeight(){return this._columnHeaderHeight}setMarginLeft(n){this._marginLeft=n}setMarginTop(n){this._marginTop=n}setScale(n,r){this._updateLayout(),this._scaleX=n,this._scaleY=r||n,this._updateLayout()}setScroll(n,r){K.isDefine(n)&&(this._scrollX=n),K.isDefine(r)&&(this._scrollY=r)}get scrollX(){return this._scrollX}get scrollY(){return this._scrollY}get scaleX(){return this._scaleX}get scaleY(){return this._scaleY}get rowHeaderWidthAndMarginLeft(){return this.rowHeaderWidth+this._marginLeft}get columnHeaderHeightAndMarginTop(){return this.columnHeaderHeight+this._marginTop}get imageCacheMap(){return this._imageCacheMap}_generateRowMatrixCache(n,r,s){let i=0;const o=[],a=r;for(let l=0;l<n;l++){let c=s;if(this.worksheet.getRowFiltered(l))c=0;else if(a[l]!=null){const u=a[l];if(!u)continue;const{h=s,ah:d,ia:m}=u;(m==null||m===ae.TRUE)&&typeof d=="number"?c=d:c=h,u.hd===ae.TRUE&&(c=0)}i+=c,o.push(i)}return{rowTotalHeight:i,rowHeightAccumulation:o}}_generateColumnMatrixCache(n,r,s){let i=0;const o=[],a=r;for(let l=0;l<n;l++){let c=s;if(a[l]!=null){const u=a[l];if(!u)continue;u.w!=null&&(c=u.w),u.hd===ae.TRUE&&(c=0)}i+=c,o.push(i)}return{columnTotalWidth:i,columnWidthAccumulation:o}}intersectMergeRange(n,r){return!!this.worksheet.getMergedCell(n,r)}_getOverflowBound(n,r,s,i,o=St.LEFT){let a=0;if(r>s){const l=this._columnWidthAccumulation.length-1;for(let c=r;c>=s;c--){const u=c,h=this.worksheet.getCell(n,u);if(!pi(h)&&u!==r||this.intersectMergeRange(n,u))return u===r?u:u+1>l?l:u+1;const{startX:d,endX:m}=qn(n,u,this.rowHeightAccumulation,this.columnWidthAccumulation);if(o===St.CENTER&&u===r?a+=(m-d)/2:a+=m-d,i<a)return u}return r}for(let l=r;l<=s;l++){const c=l,u=this.worksheet.getCell(n,c);if(!pi(u)&&c!==r||this.intersectMergeRange(n,c))return c===r?c:c-1<0?0:c-1;const{startX:h,endX:d}=qn(n,c,this.rowHeightAccumulation,this.columnWidthAccumulation);if(o===St.CENTER&&c===r?a+=(d-h)/2:a+=d-h,i<a)return c}return s}_updateLayout(){if(!this.dirty)return;const{rowData:n,columnData:r,defaultRowHeight:s,defaultColumnWidth:i,rowCount:o,columnCount:a,rowHeader:l,columnHeader:c}=this._worksheetData,{rowTotalHeight:u,rowHeightAccumulation:h}=this._generateRowMatrixCache(o,n,s),{columnTotalWidth:d,columnWidthAccumulation:m}=this._generateColumnMatrixCache(a,r,i);this._rowHeaderWidth=l.hidden!==ae.TRUE?this._dynamicallyUpdateRowHeaderWidth(l):0,this._columnHeaderHeight=c.hidden!==ae.TRUE?c.height:0,this._rowTotalHeight=u,this._rowHeightAccumulation=h,this._columnTotalWidth=d,this._columnWidthAccumulation=m,this.makeDirty(!1)}calculate(){return this.resetCache(),this._updateLayout(),this}resetRangeCache(n){}_dynamicallyUpdateRowHeaderWidth(n){const s=`${this.worksheet.getRowCount()}`.length*8;return Math.max(n.width,s)}_hasUnMergedCellInRow(n,r,s){if(!this.worksheet.getMergeData())return!1;for(let o=r;o<=s;o++){const{isMerged:a,isMergedMainCell:l}=this.worksheet.getCellInfoInMergeData(n,o);if(!a&&!l)return!0}return!1}expandRangeByMerge(n){let{startRow:r,startColumn:s,endRow:i,endColumn:o}=n;const a=this._worksheetData.mergeData;if(!a)return{startRow:r,startColumn:s,endRow:i,endColumn:o};let l=!0;const c=new lt;for(;l;){l=!1;for(let u=0;u<a.length;u++){const{startRow:h,startColumn:d,endRow:m,endColumn:_}=a[u];if(c.getValue(h,d))continue;Hc({startColumn:s,startRow:r,endColumn:o,endRow:i},{startColumn:d,startRow:h,endColumn:_,endRow:m})&&(r=Math.min(r,h),s=Math.min(s,d),i=Math.max(i,m),o=Math.max(o,_),c.setValue(h,d,!0),l=!0)}}return{startRow:r,startColumn:s,endRow:i,endColumn:o}}getColumnCount(){return this._columnWidthAccumulation.length}getRowCount(){return this._rowHeightAccumulation.length}_getCellMergeInfo(n,r){return this.worksheet.getCellInfoInMergeData(n,r)}getNoMergeCellPositionByIndex(n,r,s=!0){return this.getNoMergeCellWithCoordByIndex(n,r,s)}getNoMergeCellWithCoordByIndex(n,r,s=!0){const{rowHeightAccumulation:i,columnWidthAccumulation:o,rowHeaderWidthAndMarginLeft:a,columnHeaderHeightAndMarginTop:l}=this;let{startY:c,endY:u,startX:h,endX:d}=qn(n,r,i,o);return s&&(c+=l,u+=l,h+=a,d+=a),{startY:c,endY:u,startX:h,endX:d}}getNoMergeCellPositionByIndexWithNoHeader(n,r){const{rowHeightAccumulation:s,columnWidthAccumulation:i}=this,{startY:o,endY:a,startX:l,endX:c}=qn(n,r,s,i);return{startY:o,endY:a,startX:l,endX:c}}getRowIndexByOffsetY(n,r,s,i){var l;const{rowHeightAccumulation:o}=this;n=ld(n,r,s,this.columnHeaderHeightAndMarginTop);let a=ir(o,n,i==null?void 0:i.firstMatch);return i!=null&&i.closeFirst&&Math.abs(o[a]-n)<Math.abs(n-((l=o[a-1])!=null?l:0))&&(a=a+1),a}getColumnIndexByOffsetX(n,r,s,i){var c;const o=ad(n,r,s,this.rowHeaderWidthAndMarginLeft),{columnWidthAccumulation:a}=this;let l=ir(a,o,i==null?void 0:i.firstMatch);return i!=null&&i.closeFirst&&Math.abs(a[l]-o)<Math.abs(o-((c=a[l-1])!=null?c:0))&&(l=l+1),l}getCellIndexByOffset(n,r,s,i,o,a){const l=this.getRowIndexByOffsetY(r,i,o,a),c=this.getColumnIndexByOffsetX(n,s,o,a);return{row:l,column:c}}getCellByOffset(n,r,s,i,o){const a=this==null?void 0:this.getCellIndexByOffset(n,r,s,i,o,{firstMatch:!0});return a?this.worksheet.getCellInfoInMergeData(a.row,a.column):null}getCellWithCoordByIndex(n,r,s=!0){const{rowHeightAccumulation:i,columnWidthAccumulation:o,rowHeaderWidthAndMarginLeft:a,columnHeaderHeightAndMarginTop:l}=this,c=qn(n,r,i,o,this.worksheet.getCellInfoInMergeData(n,r)),{isMerged:u,isMergedMainCell:h}=c;let{startY:d,endY:m,startX:_,endX:p,mergeInfo:I}=c,A=a,B=l;return s===!1&&(A=0,B=0),d+=B,m+=B,_+=A,p+=A,I.startY+=B,I.endY+=B,I.startX+=A,I.endX+=A,{actualRow:n,actualColumn:r,startX:_,startY:d,endX:p,endY:m,isMerged:u,isMergedMainCell:h,mergeInfo:I}}getCellWithCoordByOffset(n,r,s,i,o,a){const{row:l,column:c}=this.getCellIndexByOffset(n,r,s,i,o,a);return this.getCellWithCoordByIndex(l,c)}getOffsetByColumn(n){const{columnWidthAccumulation:r,rowHeaderWidthAndMarginLeft:s}=this,i=r.length-1,o=r[n];return o!=null?o+s:n<0?s:r[i]+s}getOffsetByRow(n){const{rowHeightAccumulation:r,columnHeaderHeightAndMarginTop:s}=this,i=r.length-1,o=r[n];return o!=null?o+s:n<0?s:r[i]+s}getOffsetRelativeToRowCol(n,r){const s=ir(this.columnWidthAccumulation,n);let i=0;s===0?i=n:i=n-this._columnWidthAccumulation[s-1];const o=ir(this.rowHeightAccumulation,r);let a=0;return o===0?a=r:a=r-this._rowHeightAccumulation[o-1],{row:o,column:s,columnOffset:i,rowOffset:a}}_updateConfigAndGetDocumentModel(n,r,s,i){var a,l,c,u,h;if(!i||!((a=n.body)!=null&&a.dataStream))return;n.documentStyle||(n.documentStyle={}),n.documentStyle.marginTop=(l=s.t)!=null?l:0,n.documentStyle.marginBottom=(c=s.b)!=null?c:2,n.documentStyle.marginLeft=(u=s.l)!=null?u:2,n.documentStyle.marginRight=(h=s.r)!=null?h:2,n.documentStyle.pageSize={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},n.documentStyle.renderConfig={...n.documentStyle.renderConfig,...i};const o=n.body.paragraphs||[];for(const d of o)d.paragraphStyle||(d.paragraphStyle={}),d.paragraphStyle.horizontalAlign=r;return new bt(n)}dispose(){super.dispose(),this._rowHeightAccumulation=[],this._columnWidthAccumulation=[],this._rowTotalHeight=0,this._columnTotalWidth=0,this._rowHeaderWidth=0,this._columnHeaderHeight=0,this._worksheetData=null,this._cellData=null,this._styles=null}},f.SheetSkeleton=rI([Zs(2,Re.Inject(Sn)),Zs(3,An),Zs(4,qo),Zs(5,Re.Inject(Re.Injector))],f.SheetSkeleton);function ua(e,t,n,r){const s=e-1,i=t-1,o=n[s]||0;let a=n[e];a==null&&(a=n[n.length-1]);const l=r[i]||0;let c=r[t];return c==null&&(c=r[r.length-1]),{startY:o,endY:a,startX:l,endX:c}}function sI(e,t,n,r){return ua(e,t,n,r)}function qn(e,t,n,r,s){e=K.clamp(e,0,n.length-1),t=K.clamp(t,0,r.length-1);let{startY:i,endY:o,startX:a,endX:l}=ua(e,t,n,r);if(!s)return{startY:i,endY:o,startX:a,endX:l,isMerged:!1,isMergedMainCell:!1,actualRow:e,actualColumn:t,mergeInfo:{startY:i,endY:o,startX:a,endX:l,startRow:e,startColumn:t,endRow:e,endColumn:t}};const{isMerged:c,isMergedMainCell:u,startRow:h,startColumn:d,endRow:m,endColumn:_}=s;let p={startRow:h,startColumn:d,endRow:m,endColumn:_,startY:i,endY:o,startX:a,endX:l};const I=n.length-1,A=r.length-1;if(c&&h!==-1&&d!==-1){const B=n[h-1]||0,x=n[m]||n[I],Y=r[d-1]||0,O=r[_]||r[A];p={...p,startY:B,endY:x,startX:Y,endX:O}}else if(!c&&m!==-1&&_!==-1){const B=n[m]||n[I],x=r[_]||r[A];p={...p,startY:i,endY:B,startX:a,endX:x}}return{isMerged:c,isMergedMainCell:u,actualRow:e,actualColumn:t,startY:i,endY:o,startX:a,endX:l,mergeInfo:p}}function ad(e,t,n,r){const{x:s}=n;return e/t+s-r}function ld(e,t,n,r){const{y:s}=n;return e=e/t+s-r,e}const iI=["script","style","meta","comment","link"];var cd=(e=>(e[e.INFO=0]="INFO",e[e.STOP=1]="STOP",e[e.WARNING=2]="WARNING",e))(cd||{}),ud=(e=>(e[e.DISABLED=0]="DISABLED",e[e.FULL_ALPHA=1]="FULL_ALPHA",e[e.FULL_HANGUL=2]="FULL_HANGUL",e[e.FULL_KATAKANA=3]="FULL_KATAKANA",e[e.HALF_ALPHA=4]="HALF_ALPHA",e[e.HALF_HANGUL=5]="HALF_HANGUL",e[e.HALF_KATAKANA=6]="HALF_KATAKANA",e[e.HIRAGANA=7]="HIRAGANA",e[e.NO_CONTROL=8]="NO_CONTROL",e[e.OFF=9]="OFF",e[e.ON=10]="ON",e))(ud||{}),hd=(e=>(e.BETWEEN="between",e.EQUAL="equal",e.GREATER_THAN="greaterThan",e.GREATER_THAN_OR_EQUAL="greaterThanOrEqual",e.LESS_THAN="lessThan",e.LESS_THAN_OR_EQUAL="lessThanOrEqual",e.NOT_BETWEEN="notBetween",e.NOT_EQUAL="notEqual",e))(hd||{}),dd=(e=>(e[e.TEXT=0]="TEXT",e[e.ARROW=1]="ARROW",e[e.CUSTOM=2]="CUSTOM",e))(dd||{}),fd=(e=>(e.VALID="valid",e.INVALID="invalid",e.VALIDATING="validating",e))(fd||{}),md=(e=>(e.CUSTOM="custom",e.LIST="list",e.LIST_MULTIPLE="listMultiple",e.NONE="none",e.TEXT_LENGTH="textLength",e.DATE="date",e.TIME="time",e.WHOLE="whole",e.DECIMAL="decimal",e.CHECKBOX="checkbox",e.ANY="any",e))(md||{}),oI=Object.getOwnPropertyDescriptor,aI=(e,t,n,r)=>{for(var s=r>1?void 0:r?oI(t,n):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=o(s)||s);return s},gd=(e,t)=>(n,r)=>t(n,r,e);let ha=class extends ze{constructor(e,t){super(),this._resourceManagerService=e,this._univerInstanceService=t,this._init()}_init(){const e=n=>{n.businesses.forEach(r=>{switch(r){case we.UNRECOGNIZED:case we.UNIVER_UNKNOWN:case we.UNIVER_SLIDE:case we.UNIVER_DOC:{this._univerInstanceService.getAllUnitsForType(we.UNIVER_DOC).forEach(s=>{const o=(s.getSnapshot().resources||[]).find(a=>a.name===n.pluginName);if(o)try{const a=n.parseJson(o.data);n.onLoad(s.getUnitId(),a)}catch{console.error(`Load Document{${s.getUnitId()}} Resources{${n.pluginName}} Data Error.`)}});break}case we.UNIVER_SHEET:this._univerInstanceService.getAllUnitsForType(we.UNIVER_SHEET).forEach(s=>{const o=(s.getSnapshot().resources||[]).find(a=>a.name===n.pluginName);if(o)try{const a=n.parseJson(o.data);n.onLoad(s.getUnitId(),a)}catch{console.error(`Load Workbook{${s.getUnitId()}} Resources{${n.pluginName}} Data Error.`)}})}})};this._resourceManagerService.getAllResourceHooks().forEach(n=>e(n)),this.disposeWithMe(this._resourceManagerService.register$.subscribe(n=>e(n))),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitAdded$(we.UNIVER_SHEET).subscribe(n=>{this._resourceManagerService.loadResources(n.getUnitId(),n.getSnapshot().resources)})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitAdded$(we.UNIVER_DOC).subscribe(n=>{const r=n.getUnitId();Ca(r)||this._resourceManagerService.loadResources(n.getUnitId(),n.getSnapshot().resources)})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(we.UNIVER_SHEET).subscribe(n=>{this._resourceManagerService.unloadResources(n.getUnitId())})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(we.UNIVER_DOC).subscribe(n=>{this._resourceManagerService.unloadResources(n.getUnitId())}))}saveUnit(e){const t=this._univerInstanceService.getUnit(e);if(!t)return null;const n=this._resourceManagerService.getResources(e,t.type),r=K.deepClone(t.getSnapshot());return r.resources=n,r}};ha=aI([gd(0,Re.Inject(Ws)),gd(1,Re.Inject(Xn))],ha);class lI{constructor(t={},n){C(this,"_startedTypes",new Set);C(this,"_injector");C(this,"_disposingCallbacks",new Zr);const r=this._injector=cI(n,t==null?void 0:t.override),{theme:s,darkMode:i,locale:o,locales:a,logLevel:l}=t;s&&this._injector.get(Xs).setTheme(s),i&&this._injector.get(Xs).setDarkMode(i),a&&this._injector.get(Sn).load(a),o&&this._injector.get(Sn).setLocale(o),l&&this._injector.get(gt).setLogLevel(l),this._init(r)}get _univerInstanceService(){return this._injector.get(Xn)}get _pluginService(){return this._injector.get(f.PluginService)}__getInjector(){return this._injector}onDispose(t){const n=this._disposingCallbacks.add(je(t));return je(()=>n.dispose(!0))}dispose(){this._disposingCallbacks.dispose(),this._injector.dispose()}setLocale(t){this._injector.get(Sn).setLocale(t)}createUnit(t,n){return this._univerInstanceService.createUnit(t,n)}createUniverSheet(t){return this._injector.get(gt).warn("[Univer]","Univer.createUniverSheet is deprecated, use createUnit instead"),this._univerInstanceService.createUnit(we.UNIVER_SHEET,t)}createUniverDoc(t){return this._injector.get(gt).warn("[Univer]","Univer.createUniverDoc is deprecated, use createUnit instead"),this._univerInstanceService.createUnit(we.UNIVER_DOC,t)}createUniverSlide(t){return this._injector.get(gt).warn("[Univer]","Univer.createUniverSlide is deprecated, use createUnit instead"),this._univerInstanceService.createUnit(we.UNIVER_SLIDE,t)}_init(t){this._univerInstanceService.registerCtorForType(we.UNIVER_SHEET,f.Workbook),this._univerInstanceService.registerCtorForType(we.UNIVER_DOC,bt),this._univerInstanceService.registerCtorForType(we.UNIVER_SLIDE,ea);const n=t.get(Xn);n.__setCreateHandler((r,s,i,o)=>{if(!this._startedTypes.has(r)){this._pluginService.startPluginsForType(r),this._startedTypes.add(r);const l=t.createInstance(i,s);return n.__addUnit(l,o),this._tryProgressToReady(),l}const a=t.createInstance(i,s);return n.__addUnit(a,o),a})}_tryProgressToReady(){this._injector.get(f.LifecycleService).stage<ke.Ready&&(this._injector.get(f.LifecycleService).stage=ke.Ready)}registerPlugin(t,n){this._pluginService.registerPlugin(t,n)}}function cI(e,t){const n=qh([[vh],[Sn],[Xs],[f.LifecycleService],[f.PluginService],[Dr],[Xn,{useClass:f.UniverInstanceService}],[Kh,{useClass:Xh}],[gt,{useClass:Ma,lazy:!0}],[sr,{useClass:f.CommandService}],[qs,{useClass:f.LocalUndoRedoService,lazy:!0}],[qo,{useClass:Ih}],[An,{useClass:ya}],[Ws,{useClass:f.ResourceManagerService,lazy:!0}],[sa,{useClass:ha,lazy:!0}],[Fu,{useClass:f.AuthzIoLocalService}],[zh,{useClass:f.MentionIOLocalService,lazy:!0}]],t),r=e?e.createChild(n):new Re.Injector(n);return Ra(r,[[Dr],[sa]]),r}Od(),f.ABCToNumber=b_,f.AUTO_HEIGHT_FOR_MERGED_CELLS=Ea,f.AbsoluteRefType=Ne,f.ActionIterator=jn,f.AlignTypeH=Tc,f.AlignTypeV=yc,f.ArrangeTypeEnum=Lc,f.ArrowsAndMarkersShapes=Xa,f.AsyncInterceptorManager=Yd,f.AsyncLock=Dd,f.AutoFillSeries=xa,f.BaselineOffset=Bt,f.BasicShapes=Ka,f.BlockType=lc,f.BooleanNumber=ae,f.BorderStyleTypes=Ue,f.BorderType=Ba,f.BuildTextUtils=Je,f.BulletAlignment=Sr,f.COLORS=hi,f.CanceledError=xd,f.CellModeEnum=Tn,f.CellValueType=Xt,f.Color=fn,f.ColorBuilder=ss,f.ColorKit=Ot,f.ColorType=_t,f.ColumnSeparatorType=hc,f.CommandType=rr,f.CommonHideTypes=$a,f.ConfigService=Ih,f.ContextService=ya,f.CopyPasteType=Ha,f.CustomCommandExecutionError=Xr,f.CustomDecorationType=_n,f.CustomRangeType=en,f.DEFAULT_CELL=n_,f.DEFAULT_DOC=yo,f.DEFAULT_DOCUMENT_SUB_COMPONENT_ID=Kp,f.DEFAULT_EMPTY_DOCUMENT_VALUE=_a,f.DEFAULT_RANGE=e_,f.DEFAULT_RANGE_ARRAY=Qg,f.DEFAULT_SELECTION=t_,f.DEFAULT_SLIDE=kc,f.DEFAULT_STYLES=rt,f.DEFAULT_WORKSHEET_COLUMN_COUNT=Uh,f.DEFAULT_WORKSHEET_COLUMN_COUNT_KEY=ER,f.DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT=xh,f.DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT_KEY=SR,f.DEFAULT_WORKSHEET_COLUMN_WIDTH=kh,f.DEFAULT_WORKSHEET_COLUMN_WIDTH_KEY=RR,f.DEFAULT_WORKSHEET_ROW_COUNT=Dh,f.DEFAULT_WORKSHEET_ROW_COUNT_KEY=pR,f.DEFAULT_WORKSHEET_ROW_HEIGHT=Ph,f.DEFAULT_WORKSHEET_ROW_HEIGHT_KEY=CR,f.DEFAULT_WORKSHEET_ROW_TITLE_WIDTH=Fh,f.DEFAULT_WORKSHEET_ROW_TITLE_WIDTH_KEY=IR,f.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY=ni,f.DOCS_NORMAL_EDITOR_UNIT_ID_KEY=ti,f.DOCS_ZEN_EDITOR_UNIT_ID_KEY=ga,f.DOC_DRAWING_PRINTING_COMPONENT_KEY=a_,f.DOC_RANGE_TYPE=ul,f.DashStyleType=pc,f.DataStreamTreeNodeType=yu,f.DataStreamTreeTokenType=at,f.DataValidationErrorStyle=cd,f.DataValidationImeMode=ud,f.DataValidationOperator=hd,f.DataValidationRenderMode=dd,f.DataValidationStatus=fd,f.DataValidationType=md,f.DeleteDirection=Wa,f.DependentOn=WR,f.DesktopLogService=Ma,f.DeveloperMetadataVisibility=ja,f.Dimension=Ya,f.Direction=Ga,f.Disposable=ze,f.DisposableCollection=Zr,f.DocStyleType=oc,f.DocumentDataModel=bt,f.DocumentFlavor=ho,f.DrawingTypeEnum=Dc,f.EDITOR_ACTIVATED=Sh,f.EXTENSION_NAMES=Fc,f.ErrorService=vh,f.EventState=Pu,f.EventSubject=Xp,f.FOCUSING_COMMON_DRAWINGS=sR,f.FOCUSING_DOC=Br,f.FOCUSING_EDITOR_BUT_HIDDEN=JC,f.FOCUSING_EDITOR_INPUT_FORMULA=QC,f.FOCUSING_EDITOR_STANDALONE=tR,f.FOCUSING_FX_BAR_EDITOR=Oh,f.FOCUSING_PANEL_EDITOR=nR,f.FOCUSING_SHEET=Kn,f.FOCUSING_SLIDE=$r,f.FOCUSING_UNIT=xr,f.FOCUSING_UNIVER_EDITOR=eR,f.FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE=rR,f.FORMULA_EDITOR_ACTIVATED=iR,f.FollowNumberWithType=ac,f.FontItalic=es,f.FontStyleType=kn,f.FontWeight=ts,f.GridType=cc,f.HLSColor=il,f.HorizontalAlign=St,f.IAuthzIoService=Fu,f.ICommandService=sr,f.IConfigService=qo,f.IContextService=An,f.IImageIoService=Jo,f.ILocalStorageService=UR,f.ILogService=gt,f.IMentionIOService=zh,f.IPermissionService=Kh,f.IResourceLoaderService=sa,f.IResourceManagerService=Ws,f.IS_ROW_STYLE_PRECEDE_COLUMN_STYLE=pa,f.IUndoRedoService=qs,f.IUniverInstanceService=Xn,f.ImageCacheMap=rd,f.ImageSourceType=Zo,f.ImageUploadStatusType=wh,f.InterceptorEffectEnum=bn,f.InterceptorManager=Hd,f.InterpolationPointType=Va,f.JSON1=B_,f.JSONX=Wt,f.LRUHelper=ur,f.LRUMap=cr,f.LifecycleStages=ke,f.LifecycleUnreachableError=Gh,f.ListGlyphType=fe,f.LocaleService=Sn,f.LocaleType=ar,f.LogLevel=Na,f.MOVE_BUFFER_VALUE=or,f.MemoryCursor=un,f.MentionType=Qr,f.NAMED_STYLE_MAP=s_,f.NAMED_STYLE_SPACE_MAP=i_,f.NamedStyleType=qe,f.NilCommand=Da,f.NumberUnitType=Ac,f.ObjectMatrix=lt,f.ObjectRelativeFromH=wc,f.ObjectRelativeFromV=bc,f.OtherShapes=qa,f.PAGE_SIZE=l_,f.PAPER_TYPES=Jg,f.PRESET_LIST_TYPE=yr,f.PRINT_CHART_COMPONENT_KEY=o_,f.PageElementType=Uc,f.PageOrientType=Mc,f.PageType=fo,f.PaperType=ht,f.ParagraphElementType=fc,f.ParagraphStyleBuilder=Lr,f.ParagraphStyleValue=Mr,f.PermissionService=Xh,f.PermissionStatus=ta,f.Plugin=ra,f.PositionedObjectLayoutType=gc,f.PresetListType=kt,f.ProtectionType=za,f.QuickListType=pu,f.QuickListTypeMap=G_,f.RANGE_DIRECTION=cl,f.RANGE_TYPE=pe,f.RBush=Ns,f.RCDisposable=lf,f.RGBA_PAREN=xf,f.RGB_PAREN=Ff,f.ROTATE_BUFFER_VALUE=Fa,f.RTree=qR,f.Range=xn,f.Rectangle=tn,f.RedoCommand=nd,f.RedoCommandId=Qh,f.RefAlias=w_,f.Registry=ii,f.RegistryAsMap=oi,f.RelativeDate=Ja,f.RelativeSlideLink=Pc,f.RgbColor=is,f.RichTextBuilder=Cn,f.RichTextValue=sn,f.RxDisposable=af,f.SHEET_EDITOR_UNITS=r_,f.SectionType=uc,f.SheetTypes=Qa,f.SheetViewModel=$h,f.SliceBodyType=Ao,f.SlideDataModel=ea,f.SpacingRule=_c,f.SpecialShapes=Za,f.Styles=bh,f.THEME_COLORS=sl,f.TabStopAlignment=Ec,f.TableAlignmentType=Rc,f.TableLayoutType=Ic,f.TableRowHeightRule=Oc,f.TableSizeType=Cc,f.TableTextWrapType=Sc,f.TextDecoration=el,f.TextDecorationBuilder=rn,f.TextDirection=lr,f.TextDirectionType=dc,f.TextStyleBuilder=nn,f.TextStyleValue=Nr,f.TextX=Me,f.TextXActionType=J,f.ThemeColor=os,f.ThemeColorType=it,f.ThemeColors=ns,f.ThemeService=Xs,f.Tools=K,f.UndoCommand=td,f.UndoCommandId=ed,f.UnitModel=Us,f.Univer=lI,f.UniverInstanceType=we,f.UpdateDocsAttributeType=Ce,f.UserManagerService=Dr,f.VerticalAlign=hn,f.VerticalAlignmentType=vc,f.Worksheet=Wr,f.WrapStrategy=dn,f.WrapTextType=mc,f.addLinkToDocumentModel=yh,f.afterInitApply=Ef,f.afterTime=_f,f.awaitTime=ZR,f.binSearchFirstGreaterThanTarget=ka,f.binarySearchArray=Cf,f.bufferDebounceTime=gf,f.cellToRange=mm,f.characterSpacingControlType=Nc,f.checkForSubstrings=_m,f.checkIfMove=If,f.checkParagraphHasBullet=Jm,f.checkParagraphHasIndent=Qm,f.checkParagraphHasIndentByStyle=vl,f.codeToBlob=Rf,f.composeBody=To,f.composeInterceptors=Sa,f.composeStyles=ci,f.concatMatrixArray=rm,f.convertBodyToHtml=kf,f.convertCellToRange=hl,f.convertObservableToBehaviorSubject=pf,f.covertCellValue=Ei,f.covertCellValues=gm,f.covertTextRunToHtml=ui,f.createAsyncInterceptorKey=Wd,f.createDefaultUser=js,f.createDocumentModelWithStyle=Hr,f.createInterceptorKey=$d,f.createInternalEditorID=kd,f.createRowColIter=po,f.dayjs=Ht,f.debounce=GC,f.dedupe=vd,f.dedupeBy=wd,f.deepCompare=Ci,f.delayAnimationFrame=JR,f.deleteContent=bl,f.extractPureTextFromCell=Wh,f.fromCallback=Ua,f.fromEventSubject=qp,f.fromObservable=of,f.generateRandomId=$t,f.get=mh,f.getArrayLength=Zt,f.getBodySlice=wt,f.getBodySliceHtml=rs,f.getBorderStyleType=hm,f.getCellCoordByIndexSimple=ua,f.getCellInfoInMergeData=tm,f.getCellPositionByIndexSimple=sI,f.getCellValueType=Jf,f.getCellWithCoordByIndexCore=qn,f.getColorStyle=Lt,f.getCustomBlockSlice=Su,f.getCustomDecorationSlice=vu,f.getCustomRangeSlice=Ou,f.getDocsUpdateBody=dm,f.getIntersectRange=Hc,f.getOriginCellValue=vR,f.getParagraphsSlice=Iu,f.getPlainText=Hs,f.getReverseDirection=Sf,f.getSectionBreakSlice=ep,f.getTableSlice=Ru,f.getTextRunSlice=$s,f.getTransformOffsetX=ad,f.getTransformOffsetY=ld,f.getWorksheetUID=TR,f.groupBy=Td,f.handleStyleToString=um,f.hashAlgorithm=tg,f.horizontalLineSegmentsSubtraction=Es,f.insertMatrixArray=mi,f.insertTextToContent=wl,f.invertColorByHSL=qd,f.invertColorByMatrix=Jd,f.isBlackColor=qf,f.isBooleanString=Pd,f.isCellCoverable=pi,f.isCellV=ll,f.isEmptyCell=dl,f.isFormulaId=cm,f.isFormulaString=fl,f.isICellData=al,f.isInternalEditorID=Ca,f.isNodeEnv=Pf,f.isNotNullOrUndefined=Nh,f.isNullCell=Qf,f.isNumeric=ba,f.isPatternEqualWithoutDecimal=Zg,f.isRangesEqual=lR,f.isRealNum=eg,f.isSafeNumeric=ef,f.isSameStyleTextRun=ml,f.isUnitRangesEqual=cR,f.isValidRange=fm,f.isWhiteColor=Zf,f.makeArray=yd,f.makeCellRangeToRangeData=lm,f.makeCellToSelection=am,f.makeCustomRangeStream=mp,f.mapObjectMatrix=nm,f.merge=Xo,f.mergeOverrideWithDependencies=qh,f.mergeSets=rf,f.mergeWith=XC,f.mergeWorksheetSnapshotWithDefault=Bh,f.mixinClass=Qd,f.moveMatrixArray=_i,f.moveRangeByOffset=g_,f.nameCharacterCheck=XR,f.normalizeBody=tp,f.normalizeTextRuns=Tr,f.numberToABC=T_,f.numberToListABC=y_,f.numfmt=qg,f.queryObjectMatrix=v_,f.registerDependencies=Fd,f.remove=tr,f.repeatStringNumTimes=Gc,f.replaceInDocumentBody=Vp,f.requestImmediateMacroTask=nf,f.rotate=Ad,f.searchArray=ir,f.searchInOrderedArray=Pa,f.selectionToArray=em,f.sequence=Ta,f.sequenceAsync=Aa,f.sequenceExecute=Jr,f.sequenceExecuteAsync=mf,f.set=ZC,f.shallowEqual=Ia,f.skipParseTagNames=iI,f.sliceMatrixArray=sm,f.sortRules=N_,f.sortRulesByDesc=M_,f.sortRulesFactory=br,f.spliceArray=gi,f.splitIntoGrid=_o,f.takeAfter=ai,f.textDiff=Mo,f.throttle=Bd,f.toDisposable=je,f.touchDependencies=Ra,f.updateAttributeByDelete=wu,f.updateAttributeByInsert=bu,f.willLoseNumericPrecision=tf,Object.keys(Re).forEach(e=>{e!=="default"&&!Object.prototype.hasOwnProperty.call(f,e)&&Object.defineProperty(f,e,{enumerable:!0,get:()=>Re[e]})}),Object.defineProperty(f,Symbol.toStringTag,{value:"Module"})});